From 8d858171da8837b50f06cb9c8222f79d303b8e13 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:10:20 +0100 Subject: [PATCH 01/25] app folder --- frontend/app/cypress/support/component.tsx | 2 +- frontend/app/src/{App.tsx => app/app.tsx} | 6 +++--- frontend/app/src/{ => app}/devtools.tsx | 0 frontend/app/src/{Root.tsx => app/root.tsx} | 2 +- frontend/app/src/{ => app}/router.tsx | 2 +- frontend/app/src/{ => app}/styles/Alert.css | 0 frontend/app/src/{ => app}/styles/DiffView.css | 0 frontend/app/src/{ => app}/styles/index.css | 0 frontend/app/src/{ => app}/styles/markdown.css | 0 frontend/app/src/components/editor/markdown-viewer.tsx | 2 +- frontend/app/src/main.tsx | 2 +- frontend/app/tests/components/render.tsx | 2 +- frontend/app/tests/integrations/screens/app-init.cy.tsx | 2 +- frontend/app/vite.config.ts | 1 + 14 files changed, 11 insertions(+), 10 deletions(-) rename frontend/app/src/{App.tsx => app/app.tsx} (92%) rename frontend/app/src/{ => app}/devtools.tsx (100%) rename frontend/app/src/{Root.tsx => app/root.tsx} (96%) rename frontend/app/src/{ => app}/router.tsx (99%) rename frontend/app/src/{ => app}/styles/Alert.css (100%) rename frontend/app/src/{ => app}/styles/DiffView.css (100%) rename frontend/app/src/{ => app}/styles/index.css (100%) rename frontend/app/src/{ => app}/styles/markdown.css (100%) diff --git a/frontend/app/cypress/support/component.tsx b/frontend/app/cypress/support/component.tsx index e603bdff7a..baf1919527 100644 --- a/frontend/app/cypress/support/component.tsx +++ b/frontend/app/cypress/support/component.tsx @@ -24,7 +24,7 @@ import { ReactRouter6Adapter } from "use-query-params/adapters/react-router-6"; // Import commands.js using ES2015 syntax: import "./commands"; -import "../../src/styles/index.css"; +import "../../src/app/styles/index.css"; // Alternatively you can use CommonJS syntax: // require('./commands') diff --git a/frontend/app/src/App.tsx b/frontend/app/src/app/app.tsx similarity index 92% rename from frontend/app/src/App.tsx rename to frontend/app/src/app/app.tsx index ea2b56b6d2..6b229dd17a 100644 --- a/frontend/app/src/App.tsx +++ b/frontend/app/src/app/app.tsx @@ -3,9 +3,9 @@ import { ErrorBoundary } from "react-error-boundary"; import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; +import { router } from "@/app/router"; import graphqlClient from "@/graphql/graphqlClientApollo"; import { AuthProvider } from "@/hooks/useAuth"; -import { router } from "@/router"; import ErrorFallback from "@/screens/errors/error-fallback"; import { store } from "@/state"; import { ApolloProvider } from "@apollo/client"; @@ -13,10 +13,10 @@ import { addCollection } from "@iconify-icon/react"; import mdiIcons from "@iconify-json/mdi/icons.json"; import { QueryClientProvider } from "@tanstack/react-query"; -import "./styles/index.css"; +import "@/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; import { queryClient } from "@/api/client"; -import { TanStackQueryDevtools } from "@/devtools"; +import { TanStackQueryDevtools } from "@/app/devtools"; addCollection(mdiIcons); diff --git a/frontend/app/src/devtools.tsx b/frontend/app/src/app/devtools.tsx similarity index 100% rename from frontend/app/src/devtools.tsx rename to frontend/app/src/app/devtools.tsx diff --git a/frontend/app/src/Root.tsx b/frontend/app/src/app/root.tsx similarity index 96% rename from frontend/app/src/Root.tsx rename to frontend/app/src/app/root.tsx index f431fe73f1..5ea3da95c3 100644 --- a/frontend/app/src/Root.tsx +++ b/frontend/app/src/app/root.tsx @@ -1,11 +1,11 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { CONFIG } from "@/config/config"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { Config, configState } from "@/state/atoms/config.atom"; import { fetchUrl } from "@/utils/fetch"; import { useSetAtom } from "jotai"; import { ReactNode, useEffect, useState } from "react"; import { toast } from "react-toastify"; -import { Config, configState } from "./state/atoms/config.atom"; export const Root = ({ children }: { children?: ReactNode }) => { const setConfig = useSetAtom(configState); diff --git a/frontend/app/src/router.tsx b/frontend/app/src/app/router.tsx similarity index 99% rename from frontend/app/src/router.tsx rename to frontend/app/src/app/router.tsx index ae7dee2ef6..946427666b 100644 --- a/frontend/app/src/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,4 +1,4 @@ -import { Root } from "@/Root"; +import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { RequireAuth } from "@/hooks/useAuth"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; diff --git a/frontend/app/src/styles/Alert.css b/frontend/app/src/app/styles/Alert.css similarity index 100% rename from frontend/app/src/styles/Alert.css rename to frontend/app/src/app/styles/Alert.css diff --git a/frontend/app/src/styles/DiffView.css b/frontend/app/src/app/styles/DiffView.css similarity index 100% rename from frontend/app/src/styles/DiffView.css rename to frontend/app/src/app/styles/DiffView.css diff --git a/frontend/app/src/styles/index.css b/frontend/app/src/app/styles/index.css similarity index 100% rename from frontend/app/src/styles/index.css rename to frontend/app/src/app/styles/index.css diff --git a/frontend/app/src/styles/markdown.css b/frontend/app/src/app/styles/markdown.css similarity index 100% rename from frontend/app/src/styles/markdown.css rename to frontend/app/src/app/styles/markdown.css diff --git a/frontend/app/src/components/editor/markdown-viewer.tsx b/frontend/app/src/components/editor/markdown-viewer.tsx index cc2b3f2ac1..28791a9a07 100644 --- a/frontend/app/src/components/editor/markdown-viewer.tsx +++ b/frontend/app/src/components/editor/markdown-viewer.tsx @@ -1,4 +1,4 @@ -import "@/styles/markdown.css"; +import "@/app/styles/markdown.css"; import { classNames } from "@/utils/common"; import { FC } from "react"; import Markdown from "react-markdown"; diff --git a/frontend/app/src/main.tsx b/frontend/app/src/main.tsx index b425c732db..cbf6b74fd3 100644 --- a/frontend/app/src/main.tsx +++ b/frontend/app/src/main.tsx @@ -1,4 +1,4 @@ -import { App } from "@/App"; +import { App } from "@/app/app"; import ReactDOM from "react-dom/client"; // https://github.com/vitejs/vite-plugin-react/tree/main/packages/plugin-react#consistent-components-exports diff --git a/frontend/app/tests/components/render.tsx b/frontend/app/tests/components/render.tsx index ab6bd9ad18..91d344f29a 100644 --- a/frontend/app/tests/components/render.tsx +++ b/frontend/app/tests/components/render.tsx @@ -6,7 +6,7 @@ import { render as renderFromVitest } from "vitest-browser-react"; import { queryClient } from "../../src/api/client"; import { store } from "../../src/state"; -import "../../src/styles/index.css"; +import "/src/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; export const render = (component: React.ReactElement, options = {}) => diff --git a/frontend/app/tests/integrations/screens/app-init.cy.tsx b/frontend/app/tests/integrations/screens/app-init.cy.tsx index 22e469d407..11031f1623 100644 --- a/frontend/app/tests/integrations/screens/app-init.cy.tsx +++ b/frontend/app/tests/integrations/screens/app-init.cy.tsx @@ -2,7 +2,7 @@ import { MockedProvider } from "@apollo/client/testing"; import { mount } from "cypress/react18"; -import { App } from "../../../src/App"; +import { App } from "../../../src/app/app"; describe("Config fetch", () => { beforeEach(function () { diff --git a/frontend/app/vite.config.ts b/frontend/app/vite.config.ts index 70e2f0e563..64b169f02e 100644 --- a/frontend/app/vite.config.ts +++ b/frontend/app/vite.config.ts @@ -1,3 +1,4 @@ +/// /// import react from "@vitejs/plugin-react"; import { defineConfig } from "vite"; From 65afce5a08578540eb58ab5aa0065f7d92e392ea Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:20:19 +0100 Subject: [PATCH 02/25] shared/api --- frontend/app/biome.json | 4 +- frontend/app/graphql.config.ts | 2 +- frontend/app/package-lock.json | 171 +++++++++ frontend/app/package.json | 15 +- frontend/app/src/app/app.tsx | 4 +- frontend/app/src/components/account-menu.tsx | 2 +- .../app/src/components/branch-selector.tsx | 4 +- .../src/components/conversations/thread.tsx | 6 +- .../display/meta-details-tooltips.tsx | 2 +- .../components/form/branch-create-form.tsx | 4 +- .../form/fields/relationship.field.tsx | 2 +- .../app/src/components/form/node-form.tsx | 10 +- .../form/object-create-form-trigger.tsx | 2 +- .../src/components/form/profiles-selector.tsx | 2 +- .../form/utils/getFieldDefaultValue.ts | 2 +- .../form/utils/getRelationshipsForForm.ts | 2 +- .../components/form/utils/isFieldDisabled.ts | 2 +- .../app/src/components/inputs/dropdown.tsx | 2 +- frontend/app/src/components/inputs/enum.tsx | 2 +- .../components/inputs/relationship-many.tsx | 2 +- .../components/inputs/relationship-one.tsx | 4 +- .../components/modals/modal-delete-object.tsx | 4 +- frontend/app/src/components/notifications.tsx | 2 +- .../src/components/search/search-nodes.tsx | 2 +- frontend/app/src/components/ui/id.tsx | 2 +- .../app/src/decorators/withSchemaContext.tsx | 2 +- frontend/app/src/hooks/useAuth.tsx | 4 +- frontend/app/src/hooks/useObjectDetails.ts | 2 +- frontend/app/src/hooks/useObjectItems.ts | 4 +- frontend/app/src/hooks/useQuery.ts | 2 +- .../graphql-query-details.tsx | 4 +- .../src/pages/proposed-changes/details.tsx | 4 +- frontend/app/src/pages/tasks/task-details.tsx | 2 +- .../object-item-details-paginated.tsx | 2 +- .../branch-actions/branch-merge-button.tsx | 6 +- .../branch-actions/branch-rebase-button.tsx | 6 +- .../branch-actions/branch-validate-button.tsx | 6 +- .../src/screens/branches/branch-details.tsx | 6 +- .../src/screens/branches/branches-items.tsx | 2 +- .../app/src/screens/branches/task-display.tsx | 2 +- .../artifact-diff/artifact-content-diff.tsx | 8 +- .../diff/artifact-diff/artifact-repo-diff.tsx | 2 +- .../app/src/screens/diff/checks/check.tsx | 2 +- .../screens/diff/checks/checks-summary.tsx | 4 +- .../app/src/screens/diff/checks/checks.tsx | 2 +- .../app/src/screens/diff/checks/conflict.tsx | 4 +- .../screens/diff/checks/validator-details.tsx | 2 +- .../diff/file-diff/file-content-diff.tsx | 8 +- .../src/screens/diff/node-diff/comments.tsx | 8 +- .../src/screens/diff/node-diff/conflict.tsx | 4 +- .../app/src/screens/diff/node-diff/index.tsx | 8 +- .../app/src/screens/diff/node-diff/thread.tsx | 2 +- .../edit-form-hook/dynamic-control-types.ts | 2 +- .../details/graphql-query-details-card.tsx | 2 +- .../app/src/screens/groups/add-group-form.tsx | 2 +- .../groups/add-group-trigger-button.tsx | 2 +- .../app/src/screens/groups/groups-manager.tsx | 2 +- .../src/screens/groups/object-groups-list.tsx | 4 +- .../ipam/ip-addresses/ip-address-summary.tsx | 4 +- .../ip-addresses/ipam-ip-address-list.tsx | 8 +- .../screens/ipam/ip-namespace-selector.tsx | 4 +- .../screens/ipam/ipam-tree/ipam-tree.state.ts | 4 +- .../src/screens/ipam/ipam-tree/ipam-tree.tsx | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 6 +- .../ipam-prefixes-summary-details.tsx | 4 +- .../prefixes/ipam-prefixes-summary-list.tsx | 6 +- .../app/src/screens/layout/app-version.tsx | 2 +- .../items/breadcrumb-branch-selector.tsx | 2 +- frontend/app/src/screens/layout/layout.tsx | 4 +- .../layout/menu-navigation/get-menu.ts | 2 +- .../screens/layout/menu-navigation/types.ts | 2 +- .../app/src/screens/layout/tasks-status.tsx | 2 +- .../action-buttons/details-buttons.tsx | 2 +- .../action-buttons/relationships-buttons.tsx | 4 +- .../object-item-details-paginated.tsx | 2 +- .../relationship-details-paginated.tsx | 4 +- .../relationships-details-paginated.tsx | 4 +- .../generateObjectEditFormQuery.ts | 2 +- .../object-item-edit-paginated.tsx | 4 +- .../object-item-meta-edit.tsx | 4 +- .../src/screens/objects/hierarchical-tree.tsx | 2 +- .../app/src/screens/objects/object-header.tsx | 2 +- .../objects/relationships/api/queries.ts | 4 +- .../action-button/pc-approve-button.tsx | 4 +- .../action-button/pc-close-button.tsx | 4 +- .../action-button/pc-merge-button.tsx | 4 +- .../screens/proposed-changes/checks-tab.tsx | 2 +- .../proposed-changes/conversations.tsx | 8 +- .../screens/proposed-changes/create-form.tsx | 2 +- .../screens/proposed-changes/diff-filter.tsx | 2 +- .../screens/proposed-changes/diff-summary.tsx | 2 +- .../form/proposed-change-edit-form.tsx | 4 +- .../src/screens/proposed-changes/items.tsx | 8 +- .../proposed-change-details.tsx | 2 +- .../proposed-change-edit-trigger.tsx | 2 +- .../repository/repository-action-menu.tsx | 2 +- .../screens/repository/repository-form.tsx | 4 +- .../resource-manager/number-pool-form.tsx | 6 +- .../screens/role-management/account-form.tsx | 6 +- .../role-management/account-group-form.tsx | 6 +- .../role-management/account-role-form.tsx | 6 +- .../src/screens/role-management/accounts.tsx | 4 +- .../global-permissions-form.tsx | 6 +- .../role-management/global-permissions.tsx | 4 +- .../src/screens/role-management/groups.tsx | 4 +- .../app/src/screens/role-management/index.tsx | 2 +- .../object-permissions-form.tsx | 6 +- .../role-management/object-permissions.tsx | 4 +- .../app/src/screens/role-management/roles.tsx | 4 +- .../src/screens/schema/attribute-display.tsx | 2 +- .../screens/schema/relationship-display.tsx | 2 +- frontend/app/src/screens/schema/types.ts | 2 +- .../src/screens/tasks/task-item-details.tsx | 2 +- frontend/app/src/screens/tasks/task-items.tsx | 2 +- .../user-profile/tab-update-password.tsx | 2 +- .../src/screens/user-profile/user-profile.tsx | 2 +- .../api}/graphql/graphqlClientApollo.tsx | 0 .../mutations/accounts/createAccountToken.ts | 0 .../accounts/updateAccountPassword.ts | 0 .../mutations/branches/createBranch.ts | 0 .../mutations/branches/deleteBranch.ts | 0 .../graphql/mutations/branches/mergeBranch.ts | 0 .../mutations/branches/rebaseBranch.ts | 0 .../mutations/branches/validateBranch.ts | 0 .../graphql/mutations/diff/resolveConflict.ts | 0 .../api}/graphql/mutations/diff/runCheck.ts | 0 .../mutations/groups/updateGroupsQuery.ts | 0 .../mutations/objects/basicMutation.ts | 0 .../graphql/mutations/objects/createObject.ts | 0 .../graphql/mutations/objects/deleteObject.ts | 0 .../mutations/objects/updateObjectWithId.ts | 0 .../proposed-changes/createProposedChange.ts | 0 .../proposed-changes/deleteProposedChange.ts | 0 .../proposed-changes/diff/diff-update.ts | 0 .../relationships/addRelationship.ts | 0 .../relationships/removeRelationship.ts | 0 .../graphql/mutations/repository/actions.ts | 0 .../api}/graphql/mutations/schema/dropdown.ts | 0 .../api}/graphql/mutations/schema/enum.ts | 0 .../queries/accounts/getAllAccounts.ts | 0 .../queries/accounts/getProfileDetails.ts | 0 .../graphql/queries/accounts/getTokens.ts | 0 .../queries/branches/getBranchDetails.ts | 0 .../graphql/queries/branches/getBranches.ts | 0 .../graphql/queries/diff/getCheckDetails.ts | 0 .../queries/diff/getValidatorDetails.ts | 0 .../graphql/queries/diff/getValidators.ts | 0 .../queries/forms/getFormRequirements.ts | 0 .../api}/graphql/queries/getArtifacts.ts | 0 .../api}/graphql/queries/groups/getGroups.ts | 0 .../api}/graphql/queries/ipam/ip-address.ts | 0 .../graphql/queries/ipam/ip-namespaces.ts | 0 .../api}/graphql/queries/ipam/prefixes.ts | 0 .../queries/notifications/subscription.ts | 0 .../queries/objects/dropdownOptions.ts | 0 .../objects/generateRelationshipListQuery.ts | 0 .../queries/objects/getObjectDetails.ts | 0 .../queries/objects/getObjectDisplayLabel.ts | 0 .../graphql/queries/objects/getObjectItems.ts | 0 .../objects/getObjectRelationshipDetails.ts | 0 .../graphql/queries/objects/getProfiles.ts | 0 .../queries/objects/getRelationshipParent.ts | 0 .../queries/objects/objectTreeQuery.tsx | 0 .../api}/graphql/queries/objects/search.ts | 0 .../proposed-changes/getProposedChanges.ts | 0 .../getProposedChangesArtifacts.ts | 0 .../getProposedChangesArtifactsThreads.ts | 0 .../getProposedChangesChecks.ts | 0 .../getProposedChangesDetails.ts | 0 .../getProposedChangesDiffSummary.ts | 0 .../getProposedChangesDiffTree.ts | 0 .../getProposedChangesFilesThreads.ts | 0 .../getProposedChangesObjectThreadComments.ts | 0 .../getProposedChangesObjectThreads.ts | 0 .../getProposedChangesTasks.ts | 0 .../getProposedChangesThreads.ts | 0 .../queries/role-management/getAccounts.ts | 0 .../queries/role-management/getCounts.ts | 0 .../role-management/getGlobalPermissions.ts | 0 .../queries/role-management/getGroups.ts | 0 .../role-management/getObjectPermissions.ts | 0 .../queries/role-management/getRoles.ts | 0 .../queries/tasks/checkTasksItemDetails.ts | 0 .../queries/tasks/getTasksItemDetails.ts | 0 .../queries/tasks/getTasksItemDetailsTitle.ts | 0 .../graphql/queries/tasks/getTasksItems.ts | 0 .../queries/tasks/getTasksItemsCount.ts | 0 .../graphql/queries/tasks/getTasksStatus.ts | 0 .../app/src/{ => shared/api}/graphql/utils.ts | 0 .../src/{ => shared/api}/graphql/websocket.ts | 2 +- .../src/{api => shared/api/rest}/client.ts | 2 +- .../api/rest/types.generated.ts} | 348 +++--------------- frontend/app/src/state/atoms/branches.atom.ts | 2 +- frontend/app/src/state/atoms/schema.atom.ts | 2 +- frontend/app/src/utils/branches.ts | 2 +- .../src/utils/getObjectItemDisplayValue.tsx | 6 +- frontend/app/tests/components/render.tsx | 2 +- .../utils/getFormFieldsFromSchema.test.ts | 2 +- ...getMutationMetaDetailsFromFormData.test.ts | 2 +- 199 files changed, 443 insertions(+), 513 deletions(-) rename frontend/app/src/{ => shared/api}/graphql/graphqlClientApollo.tsx (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/accounts/createAccountToken.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/accounts/updateAccountPassword.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/branches/createBranch.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/branches/deleteBranch.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/branches/mergeBranch.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/branches/rebaseBranch.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/branches/validateBranch.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/diff/resolveConflict.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/diff/runCheck.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/groups/updateGroupsQuery.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/objects/basicMutation.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/objects/createObject.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/objects/deleteObject.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/objects/updateObjectWithId.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/proposed-changes/createProposedChange.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/proposed-changes/deleteProposedChange.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/proposed-changes/diff/diff-update.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/relationships/addRelationship.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/relationships/removeRelationship.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/repository/actions.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/schema/dropdown.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/mutations/schema/enum.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/accounts/getAllAccounts.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/accounts/getProfileDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/accounts/getTokens.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/branches/getBranchDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/branches/getBranches.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/diff/getCheckDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/diff/getValidatorDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/diff/getValidators.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/forms/getFormRequirements.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/getArtifacts.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/groups/getGroups.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/ipam/ip-address.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/ipam/ip-namespaces.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/ipam/prefixes.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/notifications/subscription.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/dropdownOptions.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/generateRelationshipListQuery.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getObjectDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getObjectDisplayLabel.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getObjectItems.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getObjectRelationshipDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getProfiles.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/getRelationshipParent.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/objectTreeQuery.tsx (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/objects/search.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChanges.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesChecks.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesTasks.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/proposed-changes/getProposedChangesThreads.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getAccounts.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getCounts.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getGlobalPermissions.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getGroups.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getObjectPermissions.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/role-management/getRoles.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/checkTasksItemDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/getTasksItemDetails.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/getTasksItemDetailsTitle.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/getTasksItems.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/getTasksItemsCount.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/queries/tasks/getTasksStatus.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/utils.ts (100%) rename frontend/app/src/{ => shared/api}/graphql/websocket.ts (93%) rename frontend/app/src/{api => shared/api/rest}/client.ts (94%) rename frontend/app/src/{infraops.d.ts => shared/api/rest/types.generated.ts} (90%) diff --git a/frontend/app/biome.json b/frontend/app/biome.json index 6a6f2e759b..353395c52c 100644 --- a/frontend/app/biome.json +++ b/frontend/app/biome.json @@ -13,8 +13,8 @@ "./playwright-report", "./test-results", "./tests/e2e/.auth", - "./src/generated", - "./src/infraops.d.ts" + "./src/shared/api/rest/types.generated.ts", + "./src/shared/api/graphql/generated.ts" ] }, "formatter": { diff --git a/frontend/app/graphql.config.ts b/frontend/app/graphql.config.ts index f8905f0a82..3a96f010a3 100644 --- a/frontend/app/graphql.config.ts +++ b/frontend/app/graphql.config.ts @@ -5,7 +5,7 @@ const config: CodegenConfig = { documents: ["src/**/*.tsx", "src/**/*.ts"], ignoreNoDocuments: true, // for better experience with the watcher generates: { - "src/generated/": { + "src/shared/api/graphql/generated/": { config: { withHooks: true, }, diff --git a/frontend/app/package-lock.json b/frontend/app/package-lock.json index 9ca35b1694..f34ff7d143 100644 --- a/frontend/app/package-lock.json +++ b/frontend/app/package-lock.json @@ -104,6 +104,7 @@ "playwright": "^1.49.1", "postcss": "^8.4.23", "tailwindcss": "^3.4.3", + "ts-node": "^10.9.2", "typescript": "^5.5.3", "vitest": "^2.1.8", "vitest-browser-react": "^0.0.4" @@ -1564,6 +1565,30 @@ "node": ">=0.1.90" } }, + "node_modules/@cspotcode/source-map-support": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", + "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@jridgewell/trace-mapping": "0.3.9" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { + "version": "0.3.9", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", + "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@jridgewell/resolve-uri": "^3.0.3", + "@jridgewell/sourcemap-codec": "^1.4.10" + } + }, "node_modules/@cypress/request": { "version": "3.0.5", "resolved": "https://registry.npmjs.org/@cypress/request/-/request-3.0.5.tgz", @@ -5287,6 +5312,34 @@ "@testing-library/dom": ">=7.21.4" } }, + "node_modules/@tsconfig/node10": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz", + "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node12": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", + "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node14": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", + "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/@tsconfig/node16": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", + "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", + "devOptional": true, + "license": "MIT" + }, "node_modules/@types/aria-query": { "version": "5.0.4", "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz", @@ -6346,6 +6399,32 @@ "node": ">=8" } }, + "node_modules/acorn": { + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "devOptional": true, + "license": "MIT", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.3.4", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.4.tgz", + "integrity": "sha512-ueEepnujpqee2o5aIYnvHU6C0A42MNdsIDeqy5BydrkuC5R1ZuUFnm27EeFJGoEHJQgn3uleRvmTXaJgfXbt4g==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, + "engines": { + "node": ">=0.4.0" + } + }, "node_modules/agent-base": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.1.tgz", @@ -7961,6 +8040,13 @@ } } }, + "node_modules/create-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", + "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", + "devOptional": true, + "license": "MIT" + }, "node_modules/crelt": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz", @@ -11515,6 +11601,13 @@ "node": ">=10" } }, + "node_modules/make-error": { + "version": "1.3.6", + "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", + "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", + "devOptional": true, + "license": "ISC" + }, "node_modules/map-cache": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz", @@ -15647,6 +15740,67 @@ "dev": true, "license": "MIT" }, + "node_modules/ts-node": { + "version": "10.9.2", + "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", + "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "@cspotcode/source-map-support": "^0.8.0", + "@tsconfig/node10": "^1.0.7", + "@tsconfig/node12": "^1.0.7", + "@tsconfig/node14": "^1.0.0", + "@tsconfig/node16": "^1.0.2", + "acorn": "^8.4.1", + "acorn-walk": "^8.1.1", + "arg": "^4.1.0", + "create-require": "^1.1.0", + "diff": "^4.0.1", + "make-error": "^1.1.1", + "v8-compile-cache-lib": "^3.0.1", + "yn": "3.1.1" + }, + "bin": { + "ts-node": "dist/bin.js", + "ts-node-cwd": "dist/bin-cwd.js", + "ts-node-esm": "dist/bin-esm.js", + "ts-node-script": "dist/bin-script.js", + "ts-node-transpile-only": "dist/bin-transpile.js", + "ts-script": "dist/bin-script-deprecated.js" + }, + "peerDependencies": { + "@swc/core": ">=1.2.50", + "@swc/wasm": ">=1.2.50", + "@types/node": "*", + "typescript": ">=2.7" + }, + "peerDependenciesMeta": { + "@swc/core": { + "optional": true + }, + "@swc/wasm": { + "optional": true + } + } + }, + "node_modules/ts-node/node_modules/arg": { + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", + "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/ts-node/node_modules/diff": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.2.tgz", + "integrity": "sha512-58lmxKSA4BNyLz+HHMUzlOEpg09FV+ev6ZMe3vJihgdxzgcwZ8VoEEPmALCZG9LmqfVoNMMKpttIYTVG6uDY7A==", + "devOptional": true, + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.3.1" + } + }, "node_modules/ts-toolbelt": { "version": "9.6.0", "resolved": "https://registry.npmjs.org/ts-toolbelt/-/ts-toolbelt-9.6.0.tgz", @@ -16099,6 +16253,13 @@ "uuid": "dist/bin/uuid" } }, + "node_modules/v8-compile-cache-lib": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", + "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", + "devOptional": true, + "license": "MIT" + }, "node_modules/value-or-promise": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/value-or-promise/-/value-or-promise-1.0.12.tgz", @@ -16717,6 +16878,16 @@ "fd-slicer": "~1.1.0" } }, + "node_modules/yn": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", + "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", diff --git a/frontend/app/package.json b/frontend/app/package.json index 350eb2cd40..9a1edb246c 100644 --- a/frontend/app/package.json +++ b/frontend/app/package.json @@ -10,7 +10,7 @@ "serve": "vite preview", "build-serve": "npm run build && npm run serve", "codegen": "graphql-codegen --config graphql.config.ts", - "codegen:openapi": "npx openapi-typescript http://localhost:8000/api/openapi.json --output src/infraops.d.ts", + "codegen:openapi": "npx openapi-typescript http://localhost:8000/api/openapi.json --output src/shared/api/rest/types.generated.ts", "ci:test:e2e": "CI=1 DEBUG=pw:browser npm run test:e2e 2>/dev/null", "test": "vitest run", "test:watch": "vitest watch", @@ -125,6 +125,7 @@ "playwright": "^1.49.1", "postcss": "^8.4.23", "tailwindcss": "^3.4.3", + "ts-node": "^10.9.2", "typescript": "^5.5.3", "vitest": "^2.1.8", "vitest-browser-react": "^0.0.4" @@ -142,7 +143,15 @@ } }, "browserslist": { - "production": [">0.2%", "not dead", "not op_mini all"], - "development": ["last 1 chrome version", "last 1 firefox version", "last 1 safari version"] + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] } } diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index 6b229dd17a..c057b8239e 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -4,7 +4,7 @@ import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { AuthProvider } from "@/hooks/useAuth"; import ErrorFallback from "@/screens/errors/error-fallback"; import { store } from "@/state"; @@ -15,8 +15,8 @@ import { QueryClientProvider } from "@tanstack/react-query"; import "@/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; -import { queryClient } from "@/api/client"; import { TanStackQueryDevtools } from "@/app/devtools"; +import { queryClient } from "@/shared/api/rest/client"; addCollection(mdiIcons); diff --git a/frontend/app/src/components/account-menu.tsx b/frontend/app/src/components/account-menu.tsx index fd69f3d176..7780119ef3 100644 --- a/frontend/app/src/components/account-menu.tsx +++ b/frontend/app/src/components/account-menu.tsx @@ -16,7 +16,7 @@ import { INFRAHUB_SWAGGER_DOC_URL, } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; -import { getProfileDetails } from "@/graphql/queries/accounts/getProfileDetails"; +import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; import { useAuth } from "@/hooks/useAuth"; import { AppVersion } from "@/screens/layout/app-version"; import { IModelSchema, genericsState } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/components/branch-selector.tsx b/frontend/app/src/components/branch-selector.tsx index 7f09312ec1..788d227380 100644 --- a/frontend/app/src/components/branch-selector.tsx +++ b/frontend/app/src/components/branch-selector.tsx @@ -1,6 +1,6 @@ import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; import { QSP } from "@/config/qsp"; -import { Branch } from "@/generated/graphql"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; import { branchesToSelectOptions } from "@/utils/branches"; import { Icon } from "@iconify-icon/react"; @@ -16,8 +16,8 @@ import { CommandItem, CommandList, } from "@/components/ui/command"; -import graphqlClient from "@/graphql/graphqlClientApollo"; import { useAuth } from "@/hooks/useAuth"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/utils/fetch"; import { useCommandState } from "cmdk"; import { Button, ButtonWithTooltip, LinkButton } from "./buttons/button-primitive"; diff --git a/frontend/app/src/components/conversations/thread.tsx b/frontend/app/src/components/conversations/thread.tsx index d57705deca..2f7ec79924 100644 --- a/frontend/app/src/components/conversations/thread.tsx +++ b/frontend/app/src/components/conversations/thread.tsx @@ -5,9 +5,9 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Card } from "@/components/ui/card"; import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; diff --git a/frontend/app/src/components/display/meta-details-tooltips.tsx b/frontend/app/src/components/display/meta-details-tooltips.tsx index 2729db33be..a9a3aa040f 100644 --- a/frontend/app/src/components/display/meta-details-tooltips.tsx +++ b/frontend/app/src/components/display/meta-details-tooltips.tsx @@ -3,7 +3,7 @@ import { PropertyList } from "@/components/table/property-list"; import { Badge } from "@/components/ui/badge"; import { Link } from "@/components/ui/link"; import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; -import { AnyAttribute } from "@/generated/graphql"; +import { AnyAttribute } from "@/shared/api/graphql/generated/graphql"; import { formatFullDate, formatRelativeTimeFromNow } from "@/utils/date"; import { constructPath } from "@/utils/fetch"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/components/form/branch-create-form.tsx b/frontend/app/src/components/form/branch-create-form.tsx index 7c635d855c..fca9723b66 100644 --- a/frontend/app/src/components/form/branch-create-form.tsx +++ b/frontend/app/src/components/form/branch-create-form.tsx @@ -4,9 +4,9 @@ import InputField from "@/components/form/fields/input.field"; import { isMinLength, isRequired } from "@/components/form/utils/validation"; import { Form, FormSubmit } from "@/components/ui/form"; import { QSP } from "@/config/qsp"; -import { Branch } from "@/generated/graphql"; -import { BRANCH_CREATE } from "@/graphql/mutations/branches/createBranch"; import { useMutation } from "@/hooks/useQuery"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; import { branchesState } from "@/state/atoms/branches.atom"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/components/form/fields/relationship.field.tsx b/frontend/app/src/components/form/fields/relationship.field.tsx index 9243c6067c..4ca9bda59d 100644 --- a/frontend/app/src/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/components/form/fields/relationship.field.tsx @@ -12,7 +12,7 @@ import { ComboboxTrigger, } from "@/components/ui/combobox"; import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { getRelationshipParent } from "@/graphql/queries/objects/getRelationshipParent"; +import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; import useQuery from "@/hooks/useQuery"; import { store } from "@/state"; import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/components/form/node-form.tsx b/frontend/app/src/components/form/node-form.tsx index f3ced15e39..1c24a67f4f 100644 --- a/frontend/app/src/components/form/node-form.tsx +++ b/frontend/app/src/components/form/node-form.tsx @@ -5,16 +5,16 @@ import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFr import { getCreateMutationFromFormData } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { CoreNumberPool } from "@/generated/graphql"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { CREATE_ACCOUNT_TOKEN } from "@/graphql/mutations/accounts/createAccountToken"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { GET_FORM_REQUIREMENTS } from "@/graphql/queries/forms/getFormRequirements"; import { useAuth } from "@/hooks/useAuth"; import useFilters from "@/hooks/useFilters"; import useQuery from "@/hooks/useQuery"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { NUMBER_POOL_KIND } from "@/screens/resource-manager/constants"; +import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { GET_FORM_REQUIREMENTS } from "@/shared/api/graphql/queries/forms/getFormRequirements"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { IProfileSchema, iNodeSchema } from "@/state/atoms/schema.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/components/form/object-create-form-trigger.tsx b/frontend/app/src/components/form/object-create-form-trigger.tsx index e2e612e455..a39172e17f 100644 --- a/frontend/app/src/components/form/object-create-form-trigger.tsx +++ b/frontend/app/src/components/form/object-create-form-trigger.tsx @@ -1,7 +1,7 @@ import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; import ObjectForm from "@/components/form/object-form"; import { ARTIFACT_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Permission } from "@/screens/permission/types"; import { IModelSchema } from "@/state/atoms/schema.atom"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/components/form/profiles-selector.tsx b/frontend/app/src/components/form/profiles-selector.tsx index 538f1179af..8618fc8b10 100644 --- a/frontend/app/src/components/form/profiles-selector.tsx +++ b/frontend/app/src/components/form/profiles-selector.tsx @@ -1,6 +1,6 @@ import { MultiCombobox } from "@/components/ui/combobox-legacy"; import Label from "@/components/ui/label"; -import { getProfiles } from "@/graphql/queries/objects/getProfiles"; +import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; diff --git a/frontend/app/src/components/form/utils/getFieldDefaultValue.ts b/frontend/app/src/components/form/utils/getFieldDefaultValue.ts index 2781c381d3..e9cb917e1d 100644 --- a/frontend/app/src/components/form/utils/getFieldDefaultValue.ts +++ b/frontend/app/src/components/form/utils/getFieldDefaultValue.ts @@ -5,7 +5,7 @@ import { AttributeValueFromUser, FormAttributeValue, } from "@/components/form/type"; -import { LineageSource } from "@/generated/graphql"; +import { LineageSource } from "@/shared/api/graphql/generated/graphql"; import { AttributeType, FieldSchema } from "@/utils/getObjectItemDisplayValue"; import * as R from "ramda"; diff --git a/frontend/app/src/components/form/utils/getRelationshipsForForm.ts b/frontend/app/src/components/form/utils/getRelationshipsForForm.ts index d25750897d..b2215e9f53 100644 --- a/frontend/app/src/components/form/utils/getRelationshipsForForm.ts +++ b/frontend/app/src/components/form/utils/getRelationshipsForForm.ts @@ -1,6 +1,6 @@ import { relationshipKindForForm } from "@/config/constants"; -import { components } from "@/infraops"; import { RelationshipKind } from "@/screens/objects/types"; +import { components } from "@/shared/api/rest/types.generated"; export const getRelationshipsForForm = ( relationships: components["schemas"]["RelationshipSchema-Output"][], diff --git a/frontend/app/src/components/form/utils/isFieldDisabled.ts b/frontend/app/src/components/form/utils/isFieldDisabled.ts index 2e14c464d6..7a8b6938ba 100644 --- a/frontend/app/src/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/components/form/utils/isFieldDisabled.ts @@ -1,6 +1,6 @@ -import { LineageOwner } from "@/generated/graphql"; import { AuthContextType } from "@/hooks/useAuth"; import { PermissionDecisionData } from "@/screens/permission/types"; +import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; import { store } from "@/state"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; diff --git a/frontend/app/src/components/inputs/dropdown.tsx b/frontend/app/src/components/inputs/dropdown.tsx index 5eb16a2d24..7e019aec13 100644 --- a/frontend/app/src/components/inputs/dropdown.tsx +++ b/frontend/app/src/components/inputs/dropdown.tsx @@ -16,7 +16,7 @@ import { CommandItem } from "@/components/ui/command"; import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION, -} from "@/graphql/mutations/schema/dropdown"; +} from "@/shared/api/graphql/mutations/schema/dropdown"; import { useMutation } from "@/hooks/useQuery"; import { AttributeSchema } from "@/screens/schema/types"; import { IModelSchema } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/components/inputs/enum.tsx b/frontend/app/src/components/inputs/enum.tsx index 88dd284243..b7182db15f 100644 --- a/frontend/app/src/components/inputs/enum.tsx +++ b/frontend/app/src/components/inputs/enum.tsx @@ -11,7 +11,7 @@ import { ComboboxList, ComboboxTrigger, } from "@/components/ui/combobox"; -import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/graphql/mutations/schema/enum"; +import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/shared/api/graphql/mutations/schema/enum"; import { useMutation } from "@/hooks/useQuery"; import { AttributeSchema } from "@/screens/schema/types"; import { IModelSchema } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/components/inputs/relationship-many.tsx b/frontend/app/src/components/inputs/relationship-many.tsx index ad925514ce..3016f62ac3 100644 --- a/frontend/app/src/components/inputs/relationship-many.tsx +++ b/frontend/app/src/components/inputs/relationship-many.tsx @@ -10,7 +10,7 @@ import { import { PopoverTrigger } from "@/components/ui/popover"; import { Spinner } from "@/components/ui/spinner"; import { inputStyle } from "@/components/ui/style"; -import { generateRelationshipListQuery } from "@/graphql/queries/objects/generateRelationshipListQuery"; +import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { useDebounce } from "@/hooks/useDebounce"; import { useLazyQuery } from "@/hooks/useQuery"; import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; diff --git a/frontend/app/src/components/inputs/relationship-one.tsx b/frontend/app/src/components/inputs/relationship-one.tsx index fed8329692..fdac3e99fb 100644 --- a/frontend/app/src/components/inputs/relationship-one.tsx +++ b/frontend/app/src/components/inputs/relationship-one.tsx @@ -10,8 +10,8 @@ import { } from "@/components/ui/combobox"; import { PopoverTrigger } from "@/components/ui/popover"; import { Spinner } from "@/components/ui/spinner"; -import { getDropdownOptions } from "@/graphql/queries/objects/dropdownOptions"; -import { generateRelationshipListQuery } from "@/graphql/queries/objects/generateRelationshipListQuery"; +import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; +import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { useDebounce } from "@/hooks/useDebounce"; import { useLazyQuery } from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/components/modals/modal-delete-object.tsx b/frontend/app/src/components/modals/modal-delete-object.tsx index cc86c326bd..c451e601ee 100644 --- a/frontend/app/src/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/components/modals/modal-delete-object.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { stringifyWithoutQuotes } from "@/utils/string"; diff --git a/frontend/app/src/components/notifications.tsx b/frontend/app/src/components/notifications.tsx index dbb6278b2b..923a5368fc 100644 --- a/frontend/app/src/components/notifications.tsx +++ b/frontend/app/src/components/notifications.tsx @@ -1,4 +1,4 @@ -import { subscription } from "@/graphql/queries/notifications/subscription"; +import { subscription } from "@/shared/api/graphql/queries/notifications/subscription"; import { useSubscription } from "@/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/components/search/search-nodes.tsx b/frontend/app/src/components/search/search-nodes.tsx index 08bcb493eb..e324223198 100644 --- a/frontend/app/src/components/search/search-nodes.tsx +++ b/frontend/app/src/components/search/search-nodes.tsx @@ -3,7 +3,7 @@ import { SearchAnywhereItem } from "@/components/search/search-anywhere-item"; import { Skeleton } from "@/components/skeleton"; import { Badge } from "@/components/ui/badge"; import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; -import { SEARCH } from "@/graphql/queries/objects/search"; +import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; import { useDebounce } from "@/hooks/useDebounce"; import { useObjectDetails } from "@/hooks/useObjectDetails"; import useQuery from "@/hooks/useQuery"; diff --git a/frontend/app/src/components/ui/id.tsx b/frontend/app/src/components/ui/id.tsx index a4f859493c..c056ae7394 100644 --- a/frontend/app/src/components/ui/id.tsx +++ b/frontend/app/src/components/ui/id.tsx @@ -1,7 +1,7 @@ import { Clipboard } from "@/components/buttons/clipboard"; import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/components/display/badge-circle"; import { NODE_OBJECT } from "@/config/constants"; -import { getObjectDisplayLabel } from "@/graphql/queries/objects/getObjectDisplayLabel"; +import { getObjectDisplayLabel } from "@/shared/api/graphql/queries/objects/getObjectDisplayLabel"; import useQuery from "@/hooks/useQuery"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/decorators/withSchemaContext.tsx b/frontend/app/src/decorators/withSchemaContext.tsx index 03c7fb71cf..e1af561840 100644 --- a/frontend/app/src/decorators/withSchemaContext.tsx +++ b/frontend/app/src/decorators/withSchemaContext.tsx @@ -1,8 +1,8 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { Branch } from "@/generated/graphql"; import { tokenSchema } from "@/screens/user-profile/token-schema"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; import { IProfileSchema, diff --git a/frontend/app/src/hooks/useAuth.tsx b/frontend/app/src/hooks/useAuth.tsx index d982b33083..57f3e10ae4 100644 --- a/frontend/app/src/hooks/useAuth.tsx +++ b/frontend/app/src/hooks/useAuth.tsx @@ -2,8 +2,8 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { CONFIG } from "@/config/config"; import { REFRESH_TOKEN_KEY } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { components } from "@/infraops"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { components } from "@/shared/api/rest/types.generated"; import { configState } from "@/state/atoms/config.atom"; import { parseJwt } from "@/utils/common"; import { fetchUrl } from "@/utils/fetch"; diff --git a/frontend/app/src/hooks/useObjectDetails.ts b/frontend/app/src/hooks/useObjectDetails.ts index 95a2b54bce..c9c840a673 100644 --- a/frontend/app/src/hooks/useObjectDetails.ts +++ b/frontend/app/src/hooks/useObjectDetails.ts @@ -1,5 +1,5 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; -import { getObjectDetailsPaginated } from "@/graphql/queries/objects/getObjectDetails"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/hooks/useQuery"; import { getPermission } from "@/screens/permission/utils"; import { isGenericSchema } from "@/screens/schema/utils"; diff --git a/frontend/app/src/hooks/useObjectItems.ts b/frontend/app/src/hooks/useObjectItems.ts index da2be0fb2f..238fac8e08 100644 --- a/frontend/app/src/hooks/useObjectItems.ts +++ b/frontend/app/src/hooks/useObjectItems.ts @@ -1,6 +1,6 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { getTokens } from "@/graphql/queries/accounts/getTokens"; -import { getObjectItemsPaginated } from "@/graphql/queries/objects/getObjectItems"; +import { getTokens } from "@/shared/api/graphql/queries/accounts/getTokens"; +import { getObjectItemsPaginated } from "@/shared/api/graphql/queries/objects/getObjectItems"; import { Filter } from "@/hooks/useFilters"; import useQuery from "@/hooks/useQuery"; import { getPermission } from "@/screens/permission/utils"; diff --git a/frontend/app/src/hooks/useQuery.ts b/frontend/app/src/hooks/useQuery.ts index 2edb7abc08..f242cb881d 100644 --- a/frontend/app/src/hooks/useQuery.ts +++ b/frontend/app/src/hooks/useQuery.ts @@ -1,5 +1,5 @@ import { CONFIG } from "@/config/config"; -import { WSClient } from "@/graphql/websocket"; +import { WSClient } from "@/shared/api/graphql/websocket"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index 54499c226f..dbd2b51e36 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -1,6 +1,4 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; -import { CoreGraphQlQuery } from "@/generated/graphql"; -import { getObjectDetailsPaginated } from "@/graphql/queries/objects/getObjectDetails"; import useQuery from "@/hooks/useQuery"; import { useTitle } from "@/hooks/useTitle"; import NoDataFound from "@/screens/errors/no-data-found"; @@ -10,6 +8,8 @@ import GraphQLQueryDetailsPageSkeleton from "@/screens/graphql/details/graphql-q import GraphqlQueryViewerCard from "@/screens/graphql/details/graphql-query-viewer-card"; import { Permission } from "@/screens/permission/types"; import { getPermission } from "@/screens/permission/utils"; +import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index dff2429082..1dece636be 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -1,16 +1,15 @@ import { Tabs } from "@/components/tabs"; import { DIFF_TABS, PROPOSED_CHANGES_OBJECT, TASK_OBJECT, TASK_TAB } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { GET_PROPOSED_CHANGE_DETAILS } from "@/graphql/queries/proposed-changes/getProposedChangesDetails"; import useQuery from "@/hooks/useQuery"; import { useTitle } from "@/hooks/useTitle"; import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; import { Checks } from "@/screens/diff/checks/checks"; import { NodeDiff } from "@/screens/diff/node-diff"; +import { GET_PROPOSED_CHANGE_DETAILS } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails"; import { ObjectHelpButton } from "@/components/menu/object-help-button"; import { Badge } from "@/components/ui/badge"; -import { CoreProposedChange } from "@/generated/graphql"; import { useSchema } from "@/hooks/useSchema"; import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; import ErrorScreen from "@/screens/errors/error-screen"; @@ -21,6 +20,7 @@ import { ProposedChangesChecksTab } from "@/screens/proposed-changes/checks-tab" import { ProposedChangeDetails } from "@/screens/proposed-changes/proposed-change-details"; import { TaskItemDetails } from "@/screens/tasks/task-item-details"; import { TaskItems } from "@/screens/tasks/task-items"; +import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; import { constructPath } from "@/utils/fetch"; import { getObjectDetailsUrl } from "@/utils/objects"; diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index c85cbf9725..733ddc5b4a 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,6 +1,6 @@ import { Link } from "@/components/ui/link"; import { TASK_OBJECT } from "@/config/constants"; -import { getTaskItemDetailsTitle } from "@/graphql/queries/tasks/getTasksItemDetailsTitle"; +import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; import useQuery from "@/hooks/useQuery"; import { useTitle } from "@/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx index 158d0822c5..2c0a91b201 100644 --- a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx @@ -6,7 +6,7 @@ import { Tabs } from "@/components/tabs"; import { CONFIG } from "@/config/config"; import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { getObjectDetailsPaginated } from "@/graphql/queries/objects/getObjectDetails"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/hooks/useQuery"; import { useTitle } from "@/hooks/useTitle"; import { Generate } from "@/screens/artifacts/generate"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx index d203e61413..d5d4d4cb25 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx @@ -1,11 +1,11 @@ import { Button } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { Branch } from "@/generated/graphql"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { BRANCH_MERGE } from "@/graphql/mutations/branches/mergeBranch"; import { useAuth } from "@/hooks/useAuth"; import { BRANCH_MERGE_WORKFLOW } from "@/screens/tasks/constants"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_MERGE } from "@/shared/api/graphql/mutations/branches/mergeBranch"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx index 7eb4232692..32e418848f 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx @@ -1,11 +1,11 @@ import { Button } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { Branch } from "@/generated/graphql"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { BRANCH_REBASE } from "@/graphql/mutations/branches/rebaseBranch"; import { useAuth } from "@/hooks/useAuth"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx index d9e4f0dc87..9f2389bb8f 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx @@ -1,11 +1,11 @@ import { Button } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { Branch } from "@/generated/graphql"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { BRANCH_VALIDATE } from "@/graphql/mutations/branches/validateBranch"; import { useAuth } from "@/hooks/useAuth"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_VALIDATE } from "@/shared/api/graphql/mutations/branches/validateBranch"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-details.tsx b/frontend/app/src/screens/branches/branch-details.tsx index 29c133fce2..35cdee8f57 100644 --- a/frontend/app/src/screens/branches/branch-details.tsx +++ b/frontend/app/src/screens/branches/branch-details.tsx @@ -6,9 +6,9 @@ import ModalDelete from "@/components/modals/modal-delete"; import { List } from "@/components/table/list"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { BRANCH_DELETE } from "@/graphql/mutations/branches/deleteBranch"; -import { getBranchDetailsQuery } from "@/graphql/queries/branches/getBranchDetails"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; +import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/branches/branches-items.tsx b/frontend/app/src/screens/branches/branches-items.tsx index b991674bab..b9d4b6cc81 100644 --- a/frontend/app/src/screens/branches/branches-items.tsx +++ b/frontend/app/src/screens/branches/branches-items.tsx @@ -1,6 +1,6 @@ import { DateDisplay } from "@/components/display/date-display"; import { Tooltip } from "@/components/ui/tooltip"; -import GET_BRANCHES from "@/graphql/queries/branches/getBranches"; +import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import { useLazyQuery } from "@/hooks/useQuery"; import { useTitle } from "@/hooks/useTitle"; import Content from "@/screens/layout/content"; diff --git a/frontend/app/src/screens/branches/task-display.tsx b/frontend/app/src/screens/branches/task-display.tsx index 1e781bdc74..7b2b95cf92 100644 --- a/frontend/app/src/screens/branches/task-display.tsx +++ b/frontend/app/src/screens/branches/task-display.tsx @@ -2,7 +2,7 @@ import Accordion from "@/components/display/accordion"; import { DateDisplay } from "@/components/display/date-display"; import { Badge } from "@/components/ui/badge"; import { TASK_OBJECT } from "@/config/constants"; -import { TASK_DETAILS } from "@/graphql/queries/tasks/getTasksItemDetails"; +import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import useQuery from "@/hooks/useQuery"; import { classNames } from "@/utils/common"; import ErrorScreen from "../errors/error-screen"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx index 382a2b954c..ae0a2141b6 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx @@ -8,10 +8,10 @@ import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { getProposedChangesArtifactsThreads } from "@/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { getProposedChangesArtifactsThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx index 0eb0408d10..8e3d6f3d76 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,6 +1,6 @@ import Accordion from "@/components/display/accordion"; import { Badge } from "@/components/display/badge"; -import { getArtifactDetails } from "@/graphql/queries/getArtifacts"; +import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; diff --git a/frontend/app/src/screens/diff/checks/check.tsx b/frontend/app/src/screens/diff/checks/check.tsx index 25f92a94e9..103d9ef288 100644 --- a/frontend/app/src/screens/diff/checks/check.tsx +++ b/frontend/app/src/screens/diff/checks/check.tsx @@ -6,7 +6,7 @@ import { CodeEditor } from "@/components/editor/code-editor"; import { Skeleton } from "@/components/skeleton"; import { List } from "@/components/table/list"; import { Tooltip } from "@/components/ui/tooltip"; -import { GET_CHECKS } from "@/graphql/queries/diff/getCheckDetails"; +import { GET_CHECKS } from "@/shared/api/graphql/queries/diff/getCheckDetails"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { schemaKindLabelState } from "@/state/atoms/schemaKindLabel.atom"; diff --git a/frontend/app/src/screens/diff/checks/checks-summary.tsx b/frontend/app/src/screens/diff/checks/checks-summary.tsx index 40648ec6fa..60caf5bbd2 100644 --- a/frontend/app/src/screens/diff/checks/checks-summary.tsx +++ b/frontend/app/src/screens/diff/checks/checks-summary.tsx @@ -7,8 +7,8 @@ import { PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { runCheck } from "@/graphql/mutations/diff/runCheck"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { runCheck } from "@/shared/api/graphql/mutations/diff/runCheck"; import { useAuth } from "@/hooks/useAuth"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { genericsState } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/screens/diff/checks/checks.tsx b/frontend/app/src/screens/diff/checks/checks.tsx index 7ebbfc5777..1fc1f6803b 100644 --- a/frontend/app/src/screens/diff/checks/checks.tsx +++ b/frontend/app/src/screens/diff/checks/checks.tsx @@ -1,4 +1,4 @@ -import { GET_VALIDATORS } from "@/graphql/queries/diff/getValidators"; +import { GET_VALIDATORS } from "@/shared/api/graphql/queries/diff/getValidators"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { forwardRef, useImperativeHandle } from "react"; diff --git a/frontend/app/src/screens/diff/checks/conflict.tsx b/frontend/app/src/screens/diff/checks/conflict.tsx index 0c0da0dfee..7b870868ac 100644 --- a/frontend/app/src/screens/diff/checks/conflict.tsx +++ b/frontend/app/src/screens/diff/checks/conflict.tsx @@ -6,8 +6,8 @@ import { Link } from "@/components/ui/link"; import { Tooltip } from "@/components/ui/tooltip"; import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { classNames } from "@/utils/common"; diff --git a/frontend/app/src/screens/diff/checks/validator-details.tsx b/frontend/app/src/screens/diff/checks/validator-details.tsx index 932bc4d7f4..653046b24b 100644 --- a/frontend/app/src/screens/diff/checks/validator-details.tsx +++ b/frontend/app/src/screens/diff/checks/validator-details.tsx @@ -1,5 +1,5 @@ import { Pagination } from "@/components/ui/pagination"; -import { getValidatorDetails } from "@/graphql/queries/diff/getValidatorDetails"; +import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; import usePagination from "@/hooks/usePagination"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx index 073b43322b..711459d596 100644 --- a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx @@ -9,10 +9,10 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { getProposedChangesFilesThreads } from "@/graphql/queries/proposed-changes/getProposedChangesFilesThreads"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { getProposedChangesFilesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/diff/node-diff/comments.tsx b/frontend/app/src/screens/diff/node-diff/comments.tsx index 0d03995ed9..c3c6edce50 100644 --- a/frontend/app/src/screens/diff/node-diff/comments.tsx +++ b/frontend/app/src/screens/diff/node-diff/comments.tsx @@ -4,10 +4,10 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { getProposedChangesObjectThreadComments } from "@/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { getProposedChangesObjectThreadComments } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; diff --git a/frontend/app/src/screens/diff/node-diff/conflict.tsx b/frontend/app/src/screens/diff/node-diff/conflict.tsx index ed379bf317..017c738289 100644 --- a/frontend/app/src/screens/diff/node-diff/conflict.tsx +++ b/frontend/app/src/screens/diff/node-diff/conflict.tsx @@ -1,8 +1,8 @@ import { Checkbox } from "@/components/inputs/checkbox"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Badge } from "@/components/ui/badge"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { resolveConflict } from "@/graphql/mutations/diff/resolveConflict"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; import { useAuth } from "@/hooks/useAuth"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; diff --git a/frontend/app/src/screens/diff/node-diff/index.tsx b/frontend/app/src/screens/diff/node-diff/index.tsx index a8d94c5c36..3bc475dd6a 100644 --- a/frontend/app/src/screens/diff/node-diff/index.tsx +++ b/frontend/app/src/screens/diff/node-diff/index.tsx @@ -5,10 +5,10 @@ import { Badge } from "@/components/ui/badge"; import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { BRANCH_REBASE } from "@/graphql/mutations/branches/rebaseBranch"; -import { DIFF_UPDATE } from "@/graphql/mutations/proposed-changes/diff/diff-update"; -import { getProposedChangesDiffTree } from "@/graphql/queries/proposed-changes/getProposedChangesDiffTree"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; +import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; +import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import DiffTree from "@/screens/diff/diff-tree"; diff --git a/frontend/app/src/screens/diff/node-diff/thread.tsx b/frontend/app/src/screens/diff/node-diff/thread.tsx index 3e2f28a914..9e8c5a485f 100644 --- a/frontend/app/src/screens/diff/node-diff/thread.tsx +++ b/frontend/app/src/screens/diff/node-diff/thread.tsx @@ -2,7 +2,7 @@ import { SidePanelTitle } from "@/components/display/sidepanel-title"; import SlideOver from "@/components/display/slide-over"; import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; -import { getProposedChangesObjectThreads } from "@/graphql/queries/proposed-changes/getProposedChangesObjectThreads"; +import { getProposedChangesObjectThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads"; import useQuery from "@/hooks/useQuery"; import { schemaState } from "@/state/atoms/schema.atom"; import { getThreadLabel, getThreadTitle } from "@/utils/diff"; diff --git a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts index 3a1220ca7a..c6ea0d1e7f 100644 --- a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts +++ b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts @@ -1,6 +1,6 @@ import { SelectOption } from "@/components/inputs/select"; import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; import { RegisterOptions } from "react-hook-form"; import { FormFieldError } from "./form"; diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx index 366c4d0537..1e64b0ef73 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx @@ -7,8 +7,8 @@ import { Card, CardWithBorder } from "@/components/ui/card"; import { Link } from "@/components/ui/link"; import { Tooltip } from "@/components/ui/tooltip"; import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; -import { CoreGraphQlQuery } from "@/generated/graphql"; import { Permission } from "@/screens/permission/types"; +import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { iNodeSchema } from "@/state/atoms/schema.atom"; import { constructPath } from "@/utils/fetch"; import { AttributeType, ObjectAttributeValue } from "@/utils/getObjectItemDisplayValue"; diff --git a/frontend/app/src/screens/groups/add-group-form.tsx b/frontend/app/src/screens/groups/add-group-form.tsx index cd245a7559..7dbd7b2710 100644 --- a/frontend/app/src/screens/groups/add-group-form.tsx +++ b/frontend/app/src/screens/groups/add-group-form.tsx @@ -1,7 +1,7 @@ import DynamicForm, { DynamicFormProps } from "@/components/form/dynamic-form"; import { FormRelationshipValue, RelationshipManyValueFromUser } from "@/components/form/type"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { updateGroupsQuery } from "@/graphql/mutations/groups/updateGroupsQuery"; +import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; import { useMutation } from "@/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; import { iNodeSchema } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/screens/groups/add-group-trigger-button.tsx b/frontend/app/src/screens/groups/add-group-trigger-button.tsx index 25e1bd02bf..13799fcdd3 100644 --- a/frontend/app/src/screens/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/screens/groups/add-group-trigger-button.tsx @@ -1,6 +1,6 @@ import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { useObjectDetails } from "@/hooks/useObjectDetails"; import AddGroupForm from "@/screens/groups/add-group-form"; import { GroupDataFromAPI } from "@/screens/groups/types"; diff --git a/frontend/app/src/screens/groups/groups-manager.tsx b/frontend/app/src/screens/groups/groups-manager.tsx index d89abbffc3..49cfa6db87 100644 --- a/frontend/app/src/screens/groups/groups-manager.tsx +++ b/frontend/app/src/screens/groups/groups-manager.tsx @@ -1,6 +1,6 @@ import { Button } from "@/components/buttons/button-primitive"; import { SearchInput } from "@/components/ui/search-input"; -import { getGroupsQuery } from "@/graphql/queries/groups/getGroups"; +import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; diff --git a/frontend/app/src/screens/groups/object-groups-list.tsx b/frontend/app/src/screens/groups/object-groups-list.tsx index edb1ba60eb..ee12c58177 100644 --- a/frontend/app/src/screens/groups/object-groups-list.tsx +++ b/frontend/app/src/screens/groups/object-groups-list.tsx @@ -4,8 +4,8 @@ import ModalDelete from "@/components/modals/modal-delete"; import { Badge } from "@/components/ui/badge"; import { Tooltip } from "@/components/ui/tooltip"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { REMOVE_RELATIONSHIP } from "@/graphql/mutations/relationships/removeRelationship"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { useMutation } from "@/hooks/useQuery"; import { GroupDataFromAPI } from "@/screens/groups/types"; import { schemaState } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx index c80a12d173..7a95cf3011 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx @@ -1,6 +1,6 @@ import { Link } from "@/components/ui/link"; -import { GET_IP_ADDRESS_KIND } from "@/graphql/queries/ipam/ip-address"; -import { getObjectDetailsPaginated } from "@/graphql/queries/objects/getObjectDetails"; +import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx index f6325cf3cd..00a0968dad 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -5,10 +5,10 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Link } from "@/components/ui/link"; import { Pagination } from "@/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { GET_IP_ADDRESSES } from "@/graphql/queries/ipam/ip-address"; -import { GET_PREFIX_KIND } from "@/graphql/queries/ipam/prefixes"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; +import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; diff --git a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx index 7e84a58139..eb61f43030 100644 --- a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx @@ -6,9 +6,9 @@ import { ComboboxList, ComboboxTrigger, } from "@/components/ui/combobox"; -import { IpamNamespace } from "@/generated/graphql"; -import { GET_IP_NAMESPACES } from "@/graphql/queries/ipam/ip-namespaces"; import useQuery from "@/hooks/useQuery"; +import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; +import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts index baf04a70e4..ba12ccb7d9 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts @@ -1,10 +1,10 @@ import { TreeProps } from "@/components/ui/tree"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_PREFIXES_ONLY, GET_PREFIX_ANCESTORS, GET_TOP_LEVEL_PREFIXES, -} from "@/graphql/queries/ipam/prefixes"; +} from "@/shared/api/graphql/queries/ipam/prefixes"; import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx index e5d80eb490..86d1501cf9 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx @@ -8,7 +8,7 @@ import { Link, useNavigate, useParams } from "react-router-dom"; import { Badge } from "@/components/ui/badge"; import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; -import { GET_PREFIXES_ONLY } from "@/graphql/queries/ipam/prefixes"; +import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/screens/ipam/constants"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx index 55a24d3697..ab15c63bbf 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx @@ -7,9 +7,9 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Link } from "@/components/ui/link"; import { Pagination } from "@/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { GET_PREFIX } from "@/graphql/queries/ipam/prefixes"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx index 742a97677f..0573f6ef25 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -1,7 +1,7 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Link } from "@/components/ui/link"; -import { GET_PREFIX_KIND } from "@/graphql/queries/ipam/prefixes"; -import { getObjectDetailsPaginated } from "@/graphql/queries/objects/getObjectDetails"; +import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx index 0f58e1e390..43beeec78d 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -5,9 +5,9 @@ import { Table } from "@/components/table/table"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Pagination } from "@/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { GET_PREFIXES } from "@/graphql/queries/ipam/prefixes"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; diff --git a/frontend/app/src/screens/layout/app-version.tsx b/frontend/app/src/screens/layout/app-version.tsx index d52cf25d21..c9f78227be 100644 --- a/frontend/app/src/screens/layout/app-version.tsx +++ b/frontend/app/src/screens/layout/app-version.tsx @@ -1,6 +1,6 @@ import { Skeleton } from "@/components/skeleton"; import { CONFIG } from "@/config/config"; -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; import { fetchUrl } from "@/utils/fetch"; import { useEffect, useState } from "react"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx index 391b4cca22..3119bb8103 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx @@ -1,6 +1,6 @@ import { Combobox, ComboboxContent, ComboboxList, ComboboxTrigger } from "@/components/ui/combobox"; import { CommandEmpty, CommandItem } from "@/components/ui/command"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; import { branchesState } from "@/state/atoms/branches.atom"; import { classNames } from "@/utils/common"; diff --git a/frontend/app/src/screens/layout/layout.tsx b/frontend/app/src/screens/layout/layout.tsx index 8e702e95b7..ee1c8f0542 100644 --- a/frontend/app/src/screens/layout/layout.tsx +++ b/frontend/app/src/screens/layout/layout.tsx @@ -1,10 +1,10 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { QSP } from "@/config/qsp"; import { SchemaContext, withSchemaContext } from "@/decorators/withSchemaContext"; -import { Branch } from "@/generated/graphql"; -import GET_BRANCHES from "@/graphql/queries/branches/getBranches"; import Sidebar from "@/screens/layout/sidebar"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; import { findSelectedBranch } from "@/utils/branches"; import { NetworkStatus, useQuery } from "@apollo/client"; diff --git a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts index 02e8e3ff92..c556d3db7d 100644 --- a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts +++ b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts @@ -1,6 +1,6 @@ -import { apiClient } from "@/api/client"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { MenuData } from "@/screens/layout/menu-navigation/types"; +import { apiClient } from "@/shared/api/rest/client"; import { store } from "@/state"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { queryOptions } from "@tanstack/react-query"; diff --git a/frontend/app/src/screens/layout/menu-navigation/types.ts b/frontend/app/src/screens/layout/menu-navigation/types.ts index 30ec6b0576..5fd5db753f 100644 --- a/frontend/app/src/screens/layout/menu-navigation/types.ts +++ b/frontend/app/src/screens/layout/menu-navigation/types.ts @@ -1,4 +1,4 @@ -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; export type MenuItem = components["schemas"]["MenuItemList"]; diff --git a/frontend/app/src/screens/layout/tasks-status.tsx b/frontend/app/src/screens/layout/tasks-status.tsx index da2ef76b6c..03567dfc1a 100644 --- a/frontend/app/src/screens/layout/tasks-status.tsx +++ b/frontend/app/src/screens/layout/tasks-status.tsx @@ -4,7 +4,7 @@ import { Spinner } from "@/components/ui/spinner"; import { Tooltip } from "@/components/ui/tooltip"; import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { TASKS_STATUS } from "@/graphql/queries/tasks/getTasksStatus"; +import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; import useQuery from "@/hooks/useQuery"; import TasksStatusIcon from "@/images/icons/tasks-status.svg?react"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx index f7090c45f0..41a5ab9817 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx @@ -2,7 +2,7 @@ import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; import ModalDeleteObject from "@/components/modals/modal-delete-object"; import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Generate } from "@/screens/artifacts/generate"; import { GroupsManagerTriggerButton } from "@/screens/groups/groups-manager-trigger-button"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx index 9f9aac2ca2..bc72a565ac 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx @@ -4,8 +4,8 @@ import DynamicForm from "@/components/form/dynamic-form"; import { SelectOption } from "@/components/inputs/select"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { ADD_RELATIONSHIP } from "@/graphql/mutations/relationships/addRelationship"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; import { useMutation } from "@/hooks/useQuery"; import { Permission } from "@/screens/permission/types"; import { genericsState, schemaState } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx index a042e37401..bcc7097c9f 100644 --- a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx @@ -5,7 +5,7 @@ import { Tabs } from "@/components/tabs"; import { Link } from "@/components/ui/link"; import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { useTitle } from "@/hooks/useTitle"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; import { Permission } from "@/screens/permission/types"; diff --git a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx index 8671e808cb..669794c0f9 100644 --- a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx @@ -4,8 +4,8 @@ import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; import ModalDelete from "@/components/modals/modal-delete"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Link as StyledLink } from "@/components/ui/link"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import useQuery from "@/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; diff --git a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx index 2ab5373320..d92d6946d7 100644 --- a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx @@ -1,8 +1,8 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Pagination } from "@/components/ui/pagination"; import { QSP } from "@/config/qsp"; -import { REMOVE_RELATIONSHIP } from "@/graphql/mutations/relationships/removeRelationship"; -import { getObjectRelationshipsDetailsPaginated } from "@/graphql/queries/objects/getObjectRelationshipDetails"; +import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; +import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; import useQuery, { useMutation } from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; diff --git a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts index 51019f12e1..3462d9328e 100644 --- a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts +++ b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts @@ -1,5 +1,5 @@ import { getRelationshipsForForm } from "@/components/form/utils/getRelationshipsForForm"; -import { addAttributesToRequest, addRelationshipsToRequest } from "@/graphql/utils"; +import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; import { IProfileSchema, iNodeSchema } from "@/state/atoms/schema.atom"; import { jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx index 4e7667d68a..206877894d 100644 --- a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx @@ -1,8 +1,8 @@ import ObjectForm, { ObjectFormProps } from "@/components/form/object-form"; import { getUpdateMutationFromFormData } from "@/components/form/utils/mutations/getUpdateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; import { DynamicFieldData } from "@/screens/edit-form-hook/dynamic-control-types"; diff --git a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx index 304a27b0d4..63d6bb30df 100644 --- a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,8 +1,8 @@ import DynamicForm from "@/components/form/dynamic-form"; import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { iNodeSchema } from "@/state/atoms/schema.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/objects/hierarchical-tree.tsx b/frontend/app/src/screens/objects/hierarchical-tree.tsx index ee1b3a78a3..41c2f02c2f 100644 --- a/frontend/app/src/screens/objects/hierarchical-tree.tsx +++ b/frontend/app/src/screens/objects/hierarchical-tree.tsx @@ -3,7 +3,7 @@ import { objectAncestorsQuery, objectChildrenQuery, objectTopLevelTreeQuery, -} from "@/graphql/queries/objects/objectTreeQuery"; +} from "@/shared/api/graphql/queries/objects/objectTreeQuery"; import useFilters from "@/hooks/useFilters"; import { useLazyQuery } from "@/hooks/useQuery"; import { HIDE_AUTO_GENERATED_FILTER } from "@/screens/groups/groups-auto-generated-filter-button"; diff --git a/frontend/app/src/screens/objects/object-header.tsx b/frontend/app/src/screens/objects/object-header.tsx index 63cfb1907e..c02f518927 100644 --- a/frontend/app/src/screens/objects/object-header.tsx +++ b/frontend/app/src/screens/objects/object-header.tsx @@ -1,7 +1,7 @@ import { ObjectDetailsButton } from "@/components/menu/object-details-button"; import { ObjectHelpButton } from "@/components/menu/object-help-button"; import { Skeleton } from "@/components/skeleton"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useFilters from "@/hooks/useFilters"; import { useObjectDetails } from "@/hooks/useObjectDetails"; import { useObjectItems } from "@/hooks/useObjectItems"; diff --git a/frontend/app/src/screens/objects/relationships/api/queries.ts b/frontend/app/src/screens/objects/relationships/api/queries.ts index 7c5714dc03..0f8fa29433 100644 --- a/frontend/app/src/screens/objects/relationships/api/queries.ts +++ b/frontend/app/src/screens/objects/relationships/api/queries.ts @@ -1,5 +1,5 @@ -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { generateRelationshipListQuery } from "@/graphql/queries/objects/generateRelationshipListQuery"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { gql } from "@apollo/client"; export type getRelationshipsFromApiParams = { diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx index 35aeb78368..71951c9f7d 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx @@ -1,8 +1,8 @@ import { Button, ButtonProps } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useAuth } from "@/hooks/useAuth"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx index 6dbe4ed04b..5609f06335 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx @@ -1,8 +1,8 @@ import { Button, ButtonProps } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { stringifyWithoutQuotes } from "@/utils/string"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx index 05b447dd53..754e991e45 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx @@ -1,8 +1,8 @@ import { Button, ButtonProps } from "@/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { stringifyWithoutQuotes } from "@/utils/string"; diff --git a/frontend/app/src/screens/proposed-changes/checks-tab.tsx b/frontend/app/src/screens/proposed-changes/checks-tab.tsx index f2e1917d96..ce28d9185d 100644 --- a/frontend/app/src/screens/proposed-changes/checks-tab.tsx +++ b/frontend/app/src/screens/proposed-changes/checks-tab.tsx @@ -1,6 +1,6 @@ import { Pill } from "@/components/display/pill"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { getProposedChangesChecks } from "@/graphql/queries/proposed-changes/getProposedChangesChecks"; +import { getProposedChangesChecks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks"; import useQuery from "@/hooks/useQuery"; import { gql } from "@apollo/client"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/conversations.tsx b/frontend/app/src/screens/proposed-changes/conversations.tsx index 9d5b1ab308..5e029dc52a 100644 --- a/frontend/app/src/screens/proposed-changes/conversations.tsx +++ b/frontend/app/src/screens/proposed-changes/conversations.tsx @@ -8,10 +8,10 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/graphql/mutations/objects/deleteObject"; -import { getProposedChangesThreads } from "@/graphql/queries/proposed-changes/getProposedChangesThreads"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { getProposedChangesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads"; import { useAuth } from "@/hooks/useAuth"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/proposed-changes/create-form.tsx b/frontend/app/src/screens/proposed-changes/create-form.tsx index fb7e7e771e..bf6a3f7cf9 100644 --- a/frontend/app/src/screens/proposed-changes/create-form.tsx +++ b/frontend/app/src/screens/proposed-changes/create-form.tsx @@ -16,7 +16,7 @@ import { Input } from "@/components/ui/input"; import { Spinner } from "@/components/ui/spinner"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { CREATE_PROPOSED_CHANGE } from "@/graphql/mutations/proposed-changes/createProposedChange"; +import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; import { useAuth } from "@/hooks/useAuth"; import { useMutation } from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/proposed-changes/diff-filter.tsx b/frontend/app/src/screens/proposed-changes/diff-filter.tsx index e18283cd8d..18dd5f10d2 100644 --- a/frontend/app/src/screens/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-filter.tsx @@ -1,4 +1,4 @@ -import { getProposedChangesDiffSummary } from "@/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; +import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; import useQuery from "@/hooks/useQuery"; import ErrorScreen from "../errors/error-screen"; diff --git a/frontend/app/src/screens/proposed-changes/diff-summary.tsx b/frontend/app/src/screens/proposed-changes/diff-summary.tsx index 72dc583e69..9165b50a7d 100644 --- a/frontend/app/src/screens/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-summary.tsx @@ -4,7 +4,7 @@ import { toast } from "react-toastify"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { QSP } from "@/config/qsp"; -import { getProposedChangesDiffSummary } from "@/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; +import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; import useQuery from "@/hooks/useQuery"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx index 62a4a72766..b792310d9a 100644 --- a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx @@ -3,8 +3,8 @@ import { DynamicFieldProps, FormFieldValue } from "@/components/form/type"; import { getUpdateMutationFromFormData } from "@/components/form/utils/mutations/getUpdateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; import { schemaState } from "@/state/atoms/schema.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/proposed-changes/items.tsx b/frontend/app/src/screens/proposed-changes/items.tsx index b67bb4ebf5..51e3bf43d9 100644 --- a/frontend/app/src/screens/proposed-changes/items.tsx +++ b/frontend/app/src/screens/proposed-changes/items.tsx @@ -14,10 +14,10 @@ import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; import { ARTIFACT_OBJECT, PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { DELETE_PROPOSED_CHANGE } from "@/graphql/mutations/proposed-changes/deleteProposedChange"; -import { GET_PROPOSED_CHANGES } from "@/graphql/queries/proposed-changes/getProposedChanges"; -import { getProposedChangesArtifacts } from "@/graphql/queries/proposed-changes/getProposedChangesArtifacts"; -import { getProposedChangesTasks } from "@/graphql/queries/proposed-changes/getProposedChangesTasks"; +import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; +import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; +import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; +import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; import { useSchema } from "@/hooks/useSchema"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { ProposedChangesCounter } from "@/screens/proposed-changes/counter"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx index f5a04c4a17..5312f21266 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx @@ -7,7 +7,7 @@ import { Badge } from "@/components/ui/badge"; import { Card, CardWithBorder } from "@/components/ui/card"; import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { TASK_DETAILS_CHECK } from "@/graphql/queries/tasks/checkTasksItemDetails"; +import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; import useQuery from "@/hooks/useQuery"; import { PcApproveButton } from "@/screens/proposed-changes/action-button/pc-approve-button"; import { PcCloseButton } from "@/screens/proposed-changes/action-button/pc-close-button"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx index 205ec686a4..d8134f3380 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx @@ -2,7 +2,7 @@ import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; import SlideOver from "@/components/display/slide-over"; import { ObjectHelpButton } from "@/components/menu/object-help-button"; import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; import { ProposedChangeEditForm } from "@/screens/proposed-changes/form/proposed-change-edit-form"; diff --git a/frontend/app/src/screens/repository/repository-action-menu.tsx b/frontend/app/src/screens/repository/repository-action-menu.tsx index 85ed47e024..e8d79bc120 100644 --- a/frontend/app/src/screens/repository/repository-action-menu.tsx +++ b/frontend/app/src/screens/repository/repository-action-menu.tsx @@ -11,7 +11,7 @@ import { import { CHECK_REPOSITORY_CONNECTIVITY, REIMPORT_LAST_COMMIT, -} from "@/graphql/mutations/repository/actions"; +} from "@/shared/api/graphql/mutations/repository/actions"; import { useMutation } from "@/hooks/useQuery"; import { Dialog } from "@headlessui/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/repository/repository-form.tsx b/frontend/app/src/screens/repository/repository-form.tsx index b496048c9b..24bf4d7fe1 100644 --- a/frontend/app/src/screens/repository/repository-form.tsx +++ b/frontend/app/src/screens/repository/repository-form.tsx @@ -6,8 +6,8 @@ import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFr import { getCreateMutationFromFormData } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; import { Card, CardProps } from "@/components/ui/card"; import { Form, FormSubmit } from "@/components/ui/form"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { useAuth } from "@/hooks/useAuth"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/resource-manager/number-pool-form.tsx b/frontend/app/src/screens/resource-manager/number-pool-form.tsx index a1eec33fab..65b91d5a6f 100644 --- a/frontend/app/src/screens/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/screens/resource-manager/number-pool-form.tsx @@ -20,9 +20,9 @@ import { } from "@/components/ui/combobox"; import { Form, FormField, FormInput, FormMessage, FormSubmit } from "@/components/ui/form"; import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { NUMBER_POOL_NODE_ATTRIBUTE_FIELD, NUMBER_POOL_NODE_FIELD, diff --git a/frontend/app/src/screens/role-management/account-form.tsx b/frontend/app/src/screens/role-management/account-form.tsx index c7d2384eec..8946a33a10 100644 --- a/frontend/app/src/screens/role-management/account-form.tsx +++ b/frontend/app/src/screens/role-management/account-form.tsx @@ -10,9 +10,9 @@ import { isRequired } from "@/components/form/utils/validation"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Form, FormSubmit } from "@/components/ui/form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useSchema } from "@/hooks/useSchema"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/role-management/account-group-form.tsx b/frontend/app/src/screens/role-management/account-group-form.tsx index 13d105ddf9..eebbe887ea 100644 --- a/frontend/app/src/screens/role-management/account-group-form.tsx +++ b/frontend/app/src/screens/role-management/account-group-form.tsx @@ -17,9 +17,9 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useSchema } from "@/hooks/useSchema"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; diff --git a/frontend/app/src/screens/role-management/account-role-form.tsx b/frontend/app/src/screens/role-management/account-role-form.tsx index 6a1157afcb..f62c51f819 100644 --- a/frontend/app/src/screens/role-management/account-role-form.tsx +++ b/frontend/app/src/screens/role-management/account-role-form.tsx @@ -10,9 +10,9 @@ import { ACCOUNT_PERMISSION_OBJECT, ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; diff --git a/frontend/app/src/screens/role-management/accounts.tsx b/frontend/app/src/screens/role-management/accounts.tsx index 84c7e0078f..212f7e9e82 100644 --- a/frontend/app/src/screens/role-management/accounts.tsx +++ b/frontend/app/src/screens/role-management/accounts.tsx @@ -9,8 +9,8 @@ import { Badge } from "@/components/ui/badge"; import { Pagination } from "@/components/ui/pagination"; import { SearchInput } from "@/components/ui/search-input"; import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/graphql/queries/role-management/getAccounts"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/shared/api/graphql/queries/role-management/getAccounts"; import { useDebounce } from "@/hooks/useDebounce"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/role-management/global-permissions-form.tsx b/frontend/app/src/screens/role-management/global-permissions-form.tsx index 4172d63087..e87d411052 100644 --- a/frontend/app/src/screens/role-management/global-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/global-permissions-form.tsx @@ -6,9 +6,9 @@ import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutat import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Form, FormSubmit } from "@/components/ui/form"; import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; diff --git a/frontend/app/src/screens/role-management/global-permissions.tsx b/frontend/app/src/screens/role-management/global-permissions.tsx index 1b98aa35e2..c8f3d49fd8 100644 --- a/frontend/app/src/screens/role-management/global-permissions.tsx +++ b/frontend/app/src/screens/role-management/global-permissions.tsx @@ -9,8 +9,8 @@ import { BadgeCopy } from "@/components/ui/badge-copy"; import { Pagination } from "@/components/ui/pagination"; import { SearchInput } from "@/components/ui/search-input"; import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/graphql/queries/role-management/getGlobalPermissions"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getGlobalPermissions"; import { useDebounce } from "@/hooks/useDebounce"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/role-management/groups.tsx b/frontend/app/src/screens/role-management/groups.tsx index 174ed16894..748b8e6175 100644 --- a/frontend/app/src/screens/role-management/groups.tsx +++ b/frontend/app/src/screens/role-management/groups.tsx @@ -8,8 +8,8 @@ import { Badge } from "@/components/ui/badge"; import { Pagination } from "@/components/ui/pagination"; import { SearchInput } from "@/components/ui/search-input"; import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_GROUPS } from "@/graphql/queries/role-management/getGroups"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { GET_ROLE_MANAGEMENT_GROUPS } from "@/shared/api/graphql/queries/role-management/getGroups"; import { useDebounce } from "@/hooks/useDebounce"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/role-management/index.tsx b/frontend/app/src/screens/role-management/index.tsx index 766d799ce6..670fbb1ec8 100644 --- a/frontend/app/src/screens/role-management/index.tsx +++ b/frontend/app/src/screens/role-management/index.tsx @@ -6,7 +6,7 @@ import { GLOBAL_PERMISSION_OBJECT, OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; -import { GET_ROLE_MANAGEMENT_COUNTS } from "@/graphql/queries/role-management/getCounts"; +import { GET_ROLE_MANAGEMENT_COUNTS } from "@/shared/api/graphql/queries/role-management/getCounts"; import useQuery from "@/hooks/useQuery"; import { constructPath } from "@/utils/fetch"; diff --git a/frontend/app/src/screens/role-management/object-permissions-form.tsx b/frontend/app/src/screens/role-management/object-permissions-form.tsx index 2d9dea4d2d..ce86596a06 100644 --- a/frontend/app/src/screens/role-management/object-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/object-permissions-form.tsx @@ -6,9 +6,9 @@ import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutat import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Form, FormSubmit } from "@/components/ui/form"; import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { createObject } from "@/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/graphql/mutations/objects/updateObjectWithId"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { datetimeAtom } from "@/state/atoms/time.atom"; import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; diff --git a/frontend/app/src/screens/role-management/object-permissions.tsx b/frontend/app/src/screens/role-management/object-permissions.tsx index b839984c8f..a1a5788d4d 100644 --- a/frontend/app/src/screens/role-management/object-permissions.tsx +++ b/frontend/app/src/screens/role-management/object-permissions.tsx @@ -10,8 +10,8 @@ import { BadgeCopy } from "@/components/ui/badge-copy"; import { Pagination } from "@/components/ui/pagination"; import { SearchInput } from "@/components/ui/search-input"; import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/graphql/queries/role-management/getObjectPermissions"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getObjectPermissions"; import { useDebounce } from "@/hooks/useDebounce"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/role-management/roles.tsx b/frontend/app/src/screens/role-management/roles.tsx index d087002331..59a4c2cb8b 100644 --- a/frontend/app/src/screens/role-management/roles.tsx +++ b/frontend/app/src/screens/role-management/roles.tsx @@ -2,7 +2,7 @@ import ModalDeleteObject from "@/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/components/table/table"; import { Pagination } from "@/components/ui/pagination"; import { ACCOUNT_ROLE_OBJECT } from "@/config/constants"; -import { GET_ROLE_MANAGEMENT_ROLES } from "@/graphql/queries/role-management/getRoles"; +import { GET_ROLE_MANAGEMENT_ROLES } from "@/shared/api/graphql/queries/role-management/getRoles"; import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; import { useAtomValue } from "jotai"; import { useState } from "react"; @@ -15,7 +15,7 @@ import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; import ObjectForm from "@/components/form/object-form"; import { Badge } from "@/components/ui/badge"; import { SearchInput } from "@/components/ui/search-input"; -import graphqlClient from "@/graphql/graphqlClientApollo"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { useDebounce } from "@/hooks/useDebounce"; import useQuery from "@/hooks/useQuery"; import { useSchema } from "@/hooks/useSchema"; diff --git a/frontend/app/src/screens/schema/attribute-display.tsx b/frontend/app/src/screens/schema/attribute-display.tsx index 2ad7b7ea66..a3adf0fbed 100644 --- a/frontend/app/src/screens/schema/attribute-display.tsx +++ b/frontend/app/src/screens/schema/attribute-display.tsx @@ -1,5 +1,5 @@ import Accordion from "@/components/display/accordion"; -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; import { AccordionStyled, NullDisplay, PropertyRow } from "./styled"; export const AttributeDisplay = ({ diff --git a/frontend/app/src/screens/schema/relationship-display.tsx b/frontend/app/src/screens/schema/relationship-display.tsx index cfb990559f..44eca228ad 100644 --- a/frontend/app/src/screens/schema/relationship-display.tsx +++ b/frontend/app/src/screens/schema/relationship-display.tsx @@ -1,5 +1,5 @@ import { Badge } from "@/components/ui/badge"; -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; import { warnUnexpectedType } from "@/utils/common"; import { Icon } from "@iconify-icon/react"; import { AccordionStyled, ModelDisplay, PropertyRow } from "./styled"; diff --git a/frontend/app/src/screens/schema/types.ts b/frontend/app/src/screens/schema/types.ts index 39bd110fad..4303a74c5a 100644 --- a/frontend/app/src/screens/schema/types.ts +++ b/frontend/app/src/screens/schema/types.ts @@ -1,4 +1,4 @@ -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; export type RelationshipSchema = components["schemas"]["RelationshipSchema"]; diff --git a/frontend/app/src/screens/tasks/task-item-details.tsx b/frontend/app/src/screens/tasks/task-item-details.tsx index 9f63b1aa89..b74d93e46e 100644 --- a/frontend/app/src/screens/tasks/task-item-details.tsx +++ b/frontend/app/src/screens/tasks/task-item-details.tsx @@ -8,7 +8,7 @@ import { Badge } from "@/components/ui/badge"; import { Id } from "@/components/ui/id"; import { SearchInput } from "@/components/ui/search-input"; import { QSP } from "@/config/qsp"; -import { TASK_DETAILS } from "@/graphql/queries/tasks/getTasksItemDetails"; +import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { forwardRef, useImperativeHandle, useState } from "react"; diff --git a/frontend/app/src/screens/tasks/task-items.tsx b/frontend/app/src/screens/tasks/task-items.tsx index e36928027a..48689117b7 100644 --- a/frontend/app/src/screens/tasks/task-items.tsx +++ b/frontend/app/src/screens/tasks/task-items.tsx @@ -10,7 +10,7 @@ import { Filters } from "@/components/filters/filters"; import { Id } from "@/components/ui/id"; import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; import { QSP } from "@/config/qsp"; -import { GET_TASKS } from "@/graphql/queries/tasks/getTasksItems"; +import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; import useFilters, { Filter } from "@/hooks/useFilters"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; diff --git a/frontend/app/src/screens/user-profile/tab-update-password.tsx b/frontend/app/src/screens/user-profile/tab-update-password.tsx index 446c7792a2..9f657a6d95 100644 --- a/frontend/app/src/screens/user-profile/tab-update-password.tsx +++ b/frontend/app/src/screens/user-profile/tab-update-password.tsx @@ -3,7 +3,7 @@ import { isRequired } from "@/components/form/utils/validation"; import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { Card } from "@/components/ui/card"; import { Form, FormSubmit } from "@/components/ui/form"; -import { UPDATE_ACCOUNT_PASSWORD } from "@/graphql/mutations/accounts/updateAccountPassword"; +import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; import { useMutation } from "@/hooks/useQuery"; import Content from "@/screens/layout/content"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/screens/user-profile/user-profile.tsx b/frontend/app/src/screens/user-profile/user-profile.tsx index 2decbb5e48..57af479c8e 100644 --- a/frontend/app/src/screens/user-profile/user-profile.tsx +++ b/frontend/app/src/screens/user-profile/user-profile.tsx @@ -2,7 +2,7 @@ import { Avatar } from "@/components/display/avatar"; import { Tabs } from "@/components/tabs"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { getProfileDetails } from "@/graphql/queries/accounts/getProfileDetails"; +import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; import { useTitle } from "@/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; diff --git a/frontend/app/src/graphql/graphqlClientApollo.tsx b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx similarity index 100% rename from frontend/app/src/graphql/graphqlClientApollo.tsx rename to frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx diff --git a/frontend/app/src/graphql/mutations/accounts/createAccountToken.ts b/frontend/app/src/shared/api/graphql/mutations/accounts/createAccountToken.ts similarity index 100% rename from frontend/app/src/graphql/mutations/accounts/createAccountToken.ts rename to frontend/app/src/shared/api/graphql/mutations/accounts/createAccountToken.ts diff --git a/frontend/app/src/graphql/mutations/accounts/updateAccountPassword.ts b/frontend/app/src/shared/api/graphql/mutations/accounts/updateAccountPassword.ts similarity index 100% rename from frontend/app/src/graphql/mutations/accounts/updateAccountPassword.ts rename to frontend/app/src/shared/api/graphql/mutations/accounts/updateAccountPassword.ts diff --git a/frontend/app/src/graphql/mutations/branches/createBranch.ts b/frontend/app/src/shared/api/graphql/mutations/branches/createBranch.ts similarity index 100% rename from frontend/app/src/graphql/mutations/branches/createBranch.ts rename to frontend/app/src/shared/api/graphql/mutations/branches/createBranch.ts diff --git a/frontend/app/src/graphql/mutations/branches/deleteBranch.ts b/frontend/app/src/shared/api/graphql/mutations/branches/deleteBranch.ts similarity index 100% rename from frontend/app/src/graphql/mutations/branches/deleteBranch.ts rename to frontend/app/src/shared/api/graphql/mutations/branches/deleteBranch.ts diff --git a/frontend/app/src/graphql/mutations/branches/mergeBranch.ts b/frontend/app/src/shared/api/graphql/mutations/branches/mergeBranch.ts similarity index 100% rename from frontend/app/src/graphql/mutations/branches/mergeBranch.ts rename to frontend/app/src/shared/api/graphql/mutations/branches/mergeBranch.ts diff --git a/frontend/app/src/graphql/mutations/branches/rebaseBranch.ts b/frontend/app/src/shared/api/graphql/mutations/branches/rebaseBranch.ts similarity index 100% rename from frontend/app/src/graphql/mutations/branches/rebaseBranch.ts rename to frontend/app/src/shared/api/graphql/mutations/branches/rebaseBranch.ts diff --git a/frontend/app/src/graphql/mutations/branches/validateBranch.ts b/frontend/app/src/shared/api/graphql/mutations/branches/validateBranch.ts similarity index 100% rename from frontend/app/src/graphql/mutations/branches/validateBranch.ts rename to frontend/app/src/shared/api/graphql/mutations/branches/validateBranch.ts diff --git a/frontend/app/src/graphql/mutations/diff/resolveConflict.ts b/frontend/app/src/shared/api/graphql/mutations/diff/resolveConflict.ts similarity index 100% rename from frontend/app/src/graphql/mutations/diff/resolveConflict.ts rename to frontend/app/src/shared/api/graphql/mutations/diff/resolveConflict.ts diff --git a/frontend/app/src/graphql/mutations/diff/runCheck.ts b/frontend/app/src/shared/api/graphql/mutations/diff/runCheck.ts similarity index 100% rename from frontend/app/src/graphql/mutations/diff/runCheck.ts rename to frontend/app/src/shared/api/graphql/mutations/diff/runCheck.ts diff --git a/frontend/app/src/graphql/mutations/groups/updateGroupsQuery.ts b/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts similarity index 100% rename from frontend/app/src/graphql/mutations/groups/updateGroupsQuery.ts rename to frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts diff --git a/frontend/app/src/graphql/mutations/objects/basicMutation.ts b/frontend/app/src/shared/api/graphql/mutations/objects/basicMutation.ts similarity index 100% rename from frontend/app/src/graphql/mutations/objects/basicMutation.ts rename to frontend/app/src/shared/api/graphql/mutations/objects/basicMutation.ts diff --git a/frontend/app/src/graphql/mutations/objects/createObject.ts b/frontend/app/src/shared/api/graphql/mutations/objects/createObject.ts similarity index 100% rename from frontend/app/src/graphql/mutations/objects/createObject.ts rename to frontend/app/src/shared/api/graphql/mutations/objects/createObject.ts diff --git a/frontend/app/src/graphql/mutations/objects/deleteObject.ts b/frontend/app/src/shared/api/graphql/mutations/objects/deleteObject.ts similarity index 100% rename from frontend/app/src/graphql/mutations/objects/deleteObject.ts rename to frontend/app/src/shared/api/graphql/mutations/objects/deleteObject.ts diff --git a/frontend/app/src/graphql/mutations/objects/updateObjectWithId.ts b/frontend/app/src/shared/api/graphql/mutations/objects/updateObjectWithId.ts similarity index 100% rename from frontend/app/src/graphql/mutations/objects/updateObjectWithId.ts rename to frontend/app/src/shared/api/graphql/mutations/objects/updateObjectWithId.ts diff --git a/frontend/app/src/graphql/mutations/proposed-changes/createProposedChange.ts b/frontend/app/src/shared/api/graphql/mutations/proposed-changes/createProposedChange.ts similarity index 100% rename from frontend/app/src/graphql/mutations/proposed-changes/createProposedChange.ts rename to frontend/app/src/shared/api/graphql/mutations/proposed-changes/createProposedChange.ts diff --git a/frontend/app/src/graphql/mutations/proposed-changes/deleteProposedChange.ts b/frontend/app/src/shared/api/graphql/mutations/proposed-changes/deleteProposedChange.ts similarity index 100% rename from frontend/app/src/graphql/mutations/proposed-changes/deleteProposedChange.ts rename to frontend/app/src/shared/api/graphql/mutations/proposed-changes/deleteProposedChange.ts diff --git a/frontend/app/src/graphql/mutations/proposed-changes/diff/diff-update.ts b/frontend/app/src/shared/api/graphql/mutations/proposed-changes/diff/diff-update.ts similarity index 100% rename from frontend/app/src/graphql/mutations/proposed-changes/diff/diff-update.ts rename to frontend/app/src/shared/api/graphql/mutations/proposed-changes/diff/diff-update.ts diff --git a/frontend/app/src/graphql/mutations/relationships/addRelationship.ts b/frontend/app/src/shared/api/graphql/mutations/relationships/addRelationship.ts similarity index 100% rename from frontend/app/src/graphql/mutations/relationships/addRelationship.ts rename to frontend/app/src/shared/api/graphql/mutations/relationships/addRelationship.ts diff --git a/frontend/app/src/graphql/mutations/relationships/removeRelationship.ts b/frontend/app/src/shared/api/graphql/mutations/relationships/removeRelationship.ts similarity index 100% rename from frontend/app/src/graphql/mutations/relationships/removeRelationship.ts rename to frontend/app/src/shared/api/graphql/mutations/relationships/removeRelationship.ts diff --git a/frontend/app/src/graphql/mutations/repository/actions.ts b/frontend/app/src/shared/api/graphql/mutations/repository/actions.ts similarity index 100% rename from frontend/app/src/graphql/mutations/repository/actions.ts rename to frontend/app/src/shared/api/graphql/mutations/repository/actions.ts diff --git a/frontend/app/src/graphql/mutations/schema/dropdown.ts b/frontend/app/src/shared/api/graphql/mutations/schema/dropdown.ts similarity index 100% rename from frontend/app/src/graphql/mutations/schema/dropdown.ts rename to frontend/app/src/shared/api/graphql/mutations/schema/dropdown.ts diff --git a/frontend/app/src/graphql/mutations/schema/enum.ts b/frontend/app/src/shared/api/graphql/mutations/schema/enum.ts similarity index 100% rename from frontend/app/src/graphql/mutations/schema/enum.ts rename to frontend/app/src/shared/api/graphql/mutations/schema/enum.ts diff --git a/frontend/app/src/graphql/queries/accounts/getAllAccounts.ts b/frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts similarity index 100% rename from frontend/app/src/graphql/queries/accounts/getAllAccounts.ts rename to frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts diff --git a/frontend/app/src/graphql/queries/accounts/getProfileDetails.ts b/frontend/app/src/shared/api/graphql/queries/accounts/getProfileDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/accounts/getProfileDetails.ts rename to frontend/app/src/shared/api/graphql/queries/accounts/getProfileDetails.ts diff --git a/frontend/app/src/graphql/queries/accounts/getTokens.ts b/frontend/app/src/shared/api/graphql/queries/accounts/getTokens.ts similarity index 100% rename from frontend/app/src/graphql/queries/accounts/getTokens.ts rename to frontend/app/src/shared/api/graphql/queries/accounts/getTokens.ts diff --git a/frontend/app/src/graphql/queries/branches/getBranchDetails.ts b/frontend/app/src/shared/api/graphql/queries/branches/getBranchDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/branches/getBranchDetails.ts rename to frontend/app/src/shared/api/graphql/queries/branches/getBranchDetails.ts diff --git a/frontend/app/src/graphql/queries/branches/getBranches.ts b/frontend/app/src/shared/api/graphql/queries/branches/getBranches.ts similarity index 100% rename from frontend/app/src/graphql/queries/branches/getBranches.ts rename to frontend/app/src/shared/api/graphql/queries/branches/getBranches.ts diff --git a/frontend/app/src/graphql/queries/diff/getCheckDetails.ts b/frontend/app/src/shared/api/graphql/queries/diff/getCheckDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/diff/getCheckDetails.ts rename to frontend/app/src/shared/api/graphql/queries/diff/getCheckDetails.ts diff --git a/frontend/app/src/graphql/queries/diff/getValidatorDetails.ts b/frontend/app/src/shared/api/graphql/queries/diff/getValidatorDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/diff/getValidatorDetails.ts rename to frontend/app/src/shared/api/graphql/queries/diff/getValidatorDetails.ts diff --git a/frontend/app/src/graphql/queries/diff/getValidators.ts b/frontend/app/src/shared/api/graphql/queries/diff/getValidators.ts similarity index 100% rename from frontend/app/src/graphql/queries/diff/getValidators.ts rename to frontend/app/src/shared/api/graphql/queries/diff/getValidators.ts diff --git a/frontend/app/src/graphql/queries/forms/getFormRequirements.ts b/frontend/app/src/shared/api/graphql/queries/forms/getFormRequirements.ts similarity index 100% rename from frontend/app/src/graphql/queries/forms/getFormRequirements.ts rename to frontend/app/src/shared/api/graphql/queries/forms/getFormRequirements.ts diff --git a/frontend/app/src/graphql/queries/getArtifacts.ts b/frontend/app/src/shared/api/graphql/queries/getArtifacts.ts similarity index 100% rename from frontend/app/src/graphql/queries/getArtifacts.ts rename to frontend/app/src/shared/api/graphql/queries/getArtifacts.ts diff --git a/frontend/app/src/graphql/queries/groups/getGroups.ts b/frontend/app/src/shared/api/graphql/queries/groups/getGroups.ts similarity index 100% rename from frontend/app/src/graphql/queries/groups/getGroups.ts rename to frontend/app/src/shared/api/graphql/queries/groups/getGroups.ts diff --git a/frontend/app/src/graphql/queries/ipam/ip-address.ts b/frontend/app/src/shared/api/graphql/queries/ipam/ip-address.ts similarity index 100% rename from frontend/app/src/graphql/queries/ipam/ip-address.ts rename to frontend/app/src/shared/api/graphql/queries/ipam/ip-address.ts diff --git a/frontend/app/src/graphql/queries/ipam/ip-namespaces.ts b/frontend/app/src/shared/api/graphql/queries/ipam/ip-namespaces.ts similarity index 100% rename from frontend/app/src/graphql/queries/ipam/ip-namespaces.ts rename to frontend/app/src/shared/api/graphql/queries/ipam/ip-namespaces.ts diff --git a/frontend/app/src/graphql/queries/ipam/prefixes.ts b/frontend/app/src/shared/api/graphql/queries/ipam/prefixes.ts similarity index 100% rename from frontend/app/src/graphql/queries/ipam/prefixes.ts rename to frontend/app/src/shared/api/graphql/queries/ipam/prefixes.ts diff --git a/frontend/app/src/graphql/queries/notifications/subscription.ts b/frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts similarity index 100% rename from frontend/app/src/graphql/queries/notifications/subscription.ts rename to frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts diff --git a/frontend/app/src/graphql/queries/objects/dropdownOptions.ts b/frontend/app/src/shared/api/graphql/queries/objects/dropdownOptions.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/dropdownOptions.ts rename to frontend/app/src/shared/api/graphql/queries/objects/dropdownOptions.ts diff --git a/frontend/app/src/graphql/queries/objects/generateRelationshipListQuery.ts b/frontend/app/src/shared/api/graphql/queries/objects/generateRelationshipListQuery.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/generateRelationshipListQuery.ts rename to frontend/app/src/shared/api/graphql/queries/objects/generateRelationshipListQuery.ts diff --git a/frontend/app/src/graphql/queries/objects/getObjectDetails.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getObjectDetails.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts diff --git a/frontend/app/src/graphql/queries/objects/getObjectDisplayLabel.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectDisplayLabel.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getObjectDisplayLabel.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getObjectDisplayLabel.ts diff --git a/frontend/app/src/graphql/queries/objects/getObjectItems.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getObjectItems.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts diff --git a/frontend/app/src/graphql/queries/objects/getObjectRelationshipDetails.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectRelationshipDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getObjectRelationshipDetails.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getObjectRelationshipDetails.ts diff --git a/frontend/app/src/graphql/queries/objects/getProfiles.ts b/frontend/app/src/shared/api/graphql/queries/objects/getProfiles.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getProfiles.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getProfiles.ts diff --git a/frontend/app/src/graphql/queries/objects/getRelationshipParent.ts b/frontend/app/src/shared/api/graphql/queries/objects/getRelationshipParent.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/getRelationshipParent.ts rename to frontend/app/src/shared/api/graphql/queries/objects/getRelationshipParent.ts diff --git a/frontend/app/src/graphql/queries/objects/objectTreeQuery.tsx b/frontend/app/src/shared/api/graphql/queries/objects/objectTreeQuery.tsx similarity index 100% rename from frontend/app/src/graphql/queries/objects/objectTreeQuery.tsx rename to frontend/app/src/shared/api/graphql/queries/objects/objectTreeQuery.tsx diff --git a/frontend/app/src/graphql/queries/objects/search.ts b/frontend/app/src/shared/api/graphql/queries/objects/search.ts similarity index 100% rename from frontend/app/src/graphql/queries/objects/search.ts rename to frontend/app/src/shared/api/graphql/queries/objects/search.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChanges.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChanges.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChanges.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChanges.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesChecks.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesChecks.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDetails.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDetails.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesTasks.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesTasks.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks.ts diff --git a/frontend/app/src/graphql/queries/proposed-changes/getProposedChangesThreads.ts b/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads.ts similarity index 100% rename from frontend/app/src/graphql/queries/proposed-changes/getProposedChangesThreads.ts rename to frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads.ts diff --git a/frontend/app/src/graphql/queries/role-management/getAccounts.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getAccounts.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getAccounts.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getAccounts.ts diff --git a/frontend/app/src/graphql/queries/role-management/getCounts.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getCounts.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getCounts.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getCounts.ts diff --git a/frontend/app/src/graphql/queries/role-management/getGlobalPermissions.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getGlobalPermissions.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getGlobalPermissions.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getGlobalPermissions.ts diff --git a/frontend/app/src/graphql/queries/role-management/getGroups.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getGroups.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getGroups.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getGroups.ts diff --git a/frontend/app/src/graphql/queries/role-management/getObjectPermissions.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getObjectPermissions.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getObjectPermissions.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getObjectPermissions.ts diff --git a/frontend/app/src/graphql/queries/role-management/getRoles.ts b/frontend/app/src/shared/api/graphql/queries/role-management/getRoles.ts similarity index 100% rename from frontend/app/src/graphql/queries/role-management/getRoles.ts rename to frontend/app/src/shared/api/graphql/queries/role-management/getRoles.ts diff --git a/frontend/app/src/graphql/queries/tasks/checkTasksItemDetails.ts b/frontend/app/src/shared/api/graphql/queries/tasks/checkTasksItemDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/checkTasksItemDetails.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/checkTasksItemDetails.ts diff --git a/frontend/app/src/graphql/queries/tasks/getTasksItemDetails.ts b/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetails.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/getTasksItemDetails.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetails.ts diff --git a/frontend/app/src/graphql/queries/tasks/getTasksItemDetailsTitle.ts b/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/getTasksItemDetailsTitle.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle.ts diff --git a/frontend/app/src/graphql/queries/tasks/getTasksItems.ts b/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItems.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/getTasksItems.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/getTasksItems.ts diff --git a/frontend/app/src/graphql/queries/tasks/getTasksItemsCount.ts b/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemsCount.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/getTasksItemsCount.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemsCount.ts diff --git a/frontend/app/src/graphql/queries/tasks/getTasksStatus.ts b/frontend/app/src/shared/api/graphql/queries/tasks/getTasksStatus.ts similarity index 100% rename from frontend/app/src/graphql/queries/tasks/getTasksStatus.ts rename to frontend/app/src/shared/api/graphql/queries/tasks/getTasksStatus.ts diff --git a/frontend/app/src/graphql/utils.ts b/frontend/app/src/shared/api/graphql/utils.ts similarity index 100% rename from frontend/app/src/graphql/utils.ts rename to frontend/app/src/shared/api/graphql/utils.ts diff --git a/frontend/app/src/graphql/websocket.ts b/frontend/app/src/shared/api/graphql/websocket.ts similarity index 93% rename from frontend/app/src/graphql/websocket.ts rename to frontend/app/src/shared/api/graphql/websocket.ts index 35f8e2fda0..c74531ccf1 100644 --- a/frontend/app/src/graphql/websocket.ts +++ b/frontend/app/src/shared/api/graphql/websocket.ts @@ -1,5 +1,5 @@ import { CONFIG } from "@/config/config"; -import { authLink, defaultOptions, errorLink } from "@/graphql/graphqlClientApollo"; +import { authLink, defaultOptions, errorLink } from "@/shared/api/graphql/graphqlClientApollo"; import { ApolloClient, InMemoryCache, from } from "@apollo/client"; import { WebSocketLink } from "@apollo/client/link/ws"; import { SubscriptionClient } from "subscriptions-transport-ws"; diff --git a/frontend/app/src/api/client.ts b/frontend/app/src/shared/api/rest/client.ts similarity index 94% rename from frontend/app/src/api/client.ts rename to frontend/app/src/shared/api/rest/client.ts index c0341ce6d2..87d84124a1 100644 --- a/frontend/app/src/api/client.ts +++ b/frontend/app/src/shared/api/rest/client.ts @@ -5,7 +5,7 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; import { getNewToken } from "@/hooks/useAuth"; -import type { paths } from "@/infraops"; +import type { paths } from "@/shared/api/rest/types.generated"; export const queryClient = new QueryClient({ defaultOptions: { diff --git a/frontend/app/src/infraops.d.ts b/frontend/app/src/shared/api/rest/types.generated.ts similarity index 90% rename from frontend/app/src/infraops.d.ts rename to frontend/app/src/shared/api/rest/types.generated.ts index 943838d9a0..5ffaf4aded 100644 --- a/frontend/app/src/infraops.d.ts +++ b/frontend/app/src/shared/api/rest/types.generated.ts @@ -89,40 +89,6 @@ export interface paths { patch?: never; trace?: never; }; - "/api/diff/data": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get Diff Data */ - get: operations["get_diff_data_api_diff_data_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; - "/api/diff/schema": { - parameters: { - query?: never; - header?: never; - path?: never; - cookie?: never; - }; - /** Get Diff Schema */ - get: operations["get_diff_schema_api_diff_schema_get"]; - put?: never; - post?: never; - delete?: never; - options?: never; - head?: never; - patch?: never; - trace?: never; - }; "/api/diff/files": { parameters: { query?: never; @@ -910,6 +876,8 @@ export interface components { * @description Define a list of valid values for the attribute. */ enum?: unknown[] | null; + /** @description Defines how the value of this attribute will be populated. */ + computed_attribute?: components["schemas"]["ComputedAttribute-Input"] | null; /** * Choices * @description Define a list of valid choices for a dropdown attribute. @@ -981,6 +949,11 @@ export interface components { * @default any */ allow_override: components["schemas"]["AllowOverrideType"]; + /** + * Deprecation + * @description Mark attribute as deprecated and provide a user-friendly message to display + */ + deprecation?: string | null; }; /** AttributeSchema */ "AttributeSchema-Output": { @@ -1009,6 +982,8 @@ export interface components { * @description Define a list of valid values for the attribute. */ enum?: unknown[] | null; + /** @description Defines how the value of this attribute will be populated. */ + computed_attribute?: components["schemas"]["ComputedAttribute-Output"] | null; /** * Choices * @description Define a list of valid choices for a dropdown attribute. @@ -1080,6 +1055,11 @@ export interface components { * @default any */ allow_override: components["schemas"]["AllowOverrideType"]; + /** + * Deprecation + * @description Mark attribute as deprecated and provide a user-friendly message to display + */ + deprecation?: string | null; }; /** Body_upload_file_api_storage_upload_file_post */ Body_upload_file_api_storage_upload_file_post: { @@ -1089,11 +1069,6 @@ export interface components { */ file: string; }; - /** BranchDiff */ - BranchDiff: { - /** Diffs */ - diffs?: components["schemas"]["BranchDiffEntry"][]; - }; /** BranchDiffArtifact */ BranchDiffArtifact: { /** Branch */ @@ -1114,122 +1089,6 @@ export interface components { /** Checksum */ checksum: string; }; - /** BranchDiffElement */ - BranchDiffElement: { - type: components["schemas"]["DiffElementType"]; - /** Name */ - name: string; - /** Path */ - path: string; - /** Change */ - change: components["schemas"]["BranchDiffElementAttribute"] | components["schemas"]["BranchDiffElementRelationshipOne"] | components["schemas"]["BranchDiffElementRelationshipMany"]; - }; - /** BranchDiffElementAttribute */ - BranchDiffElementAttribute: { - /** @default Attribute */ - type: components["schemas"]["DiffElementType"]; - /** Branches */ - branches?: string[]; - /** - * Id - * @default - */ - id: string; - summary?: components["schemas"]["DiffSummary"]; - /** @default unchanged */ - action: components["schemas"]["DiffAction"]; - value?: components["schemas"]["BranchDiffPropertyCollection"] | null; - /** Properties */ - properties?: { - [key: string]: components["schemas"]["BranchDiffPropertyCollection"]; - }; - }; - /** BranchDiffElementRelationshipMany */ - BranchDiffElementRelationshipMany: { - /** @default RelationshipMany */ - type: components["schemas"]["DiffElementType"]; - /** - * Identifier - * @default - */ - identifier: string; - /** Branches */ - branches?: string[]; - summary?: components["schemas"]["DiffSummary"]; - /** Peers */ - peers?: { - [key: string]: components["schemas"]["BranchDiffElementRelationshipManyPeer"]; - }; - }; - /** BranchDiffElementRelationshipManyPeer */ - BranchDiffElementRelationshipManyPeer: { - /** Branches */ - branches?: string[]; - peer: components["schemas"]["BranchDiffRelationshipPeerNode"]; - /** Path */ - path: string; - /** Properties */ - properties?: { - [key: string]: components["schemas"]["BranchDiffPropertyCollection"]; - }; - /** Changed At */ - changed_at?: string | null; - /** Action */ - action?: { - [key: string]: components["schemas"]["DiffAction"]; - }; - }; - /** BranchDiffElementRelationshipOne */ - BranchDiffElementRelationshipOne: { - /** @default RelationshipOne */ - type: components["schemas"]["DiffElementType"]; - /** - * Id - * @default - */ - id: string; - /** - * Identifier - * @default - */ - identifier: string; - /** Branches */ - branches?: string[]; - summary?: components["schemas"]["DiffSummary"]; - peer?: components["schemas"]["BranchDiffRelationshipOnePeerCollection"] | null; - /** Properties */ - properties?: { - [key: string]: components["schemas"]["BranchDiffPropertyCollection"]; - }; - /** Changed At */ - changed_at?: string | null; - /** Action */ - action?: { - [key: string]: components["schemas"]["DiffAction"]; - }; - }; - /** BranchDiffEntry */ - BranchDiffEntry: { - /** Kind */ - kind: string; - /** Id */ - id: string; - /** Path */ - path: string; - /** Elements */ - elements?: { - [key: string]: components["schemas"]["BranchDiffElement"]; - }; - summary?: components["schemas"]["DiffSummary"]; - /** Action */ - action?: { - [key: string]: components["schemas"]["DiffAction"]; - }; - /** Display Label */ - display_label?: { - [key: string]: string; - }; - }; /** BranchDiffFile */ BranchDiffFile: { /** Branch */ @@ -1238,54 +1097,6 @@ export interface components { location: string; action: components["schemas"]["DiffAction"]; }; - /** BranchDiffProperty */ - BranchDiffProperty: { - /** Branch */ - branch: string; - /** Type */ - type: string; - /** Changed At */ - changed_at?: string | null; - action: components["schemas"]["DiffAction"]; - value: components["schemas"]["BranchDiffPropertyValue"]; - }; - /** BranchDiffPropertyCollection */ - BranchDiffPropertyCollection: { - /** Path */ - path: string; - /** Changes */ - changes?: components["schemas"]["BranchDiffProperty"][]; - }; - /** BranchDiffPropertyValue */ - BranchDiffPropertyValue: { - /** New */ - new?: unknown; - /** Previous */ - previous?: unknown; - }; - /** BranchDiffRelationshipOnePeer */ - BranchDiffRelationshipOnePeer: { - /** Branch */ - branch: string; - new?: components["schemas"]["BranchDiffRelationshipPeerNode"] | null; - previous?: components["schemas"]["BranchDiffRelationshipPeerNode"] | null; - }; - /** BranchDiffRelationshipOnePeerCollection */ - BranchDiffRelationshipOnePeerCollection: { - /** Path */ - path: string; - /** Changes */ - changes?: components["schemas"]["BranchDiffRelationshipOnePeer"][]; - }; - /** BranchDiffRelationshipPeerNode */ - BranchDiffRelationshipPeerNode: { - /** Id */ - id: string; - /** Kind */ - kind: string; - /** Display Label */ - display_label?: string | null; - }; /** BranchDiffRepository */ BranchDiffRepository: { /** Branch */ @@ -1306,6 +1117,31 @@ export interface components { * @enum {string} */ BranchSupportType: "aware" | "agnostic" | "local"; + /** ComputedAttribute */ + "ComputedAttribute-Input": { + /** Id */ + id?: string | null; + /** @default present */ + state: components["schemas"]["HashableModelState"]; + kind: components["schemas"]["ComputedAttributeKind"]; + /** + * Jinja2 Template + * @description The Jinja2 template in string format, required when assignment_type=jinja2 + */ + jinja2_template?: string | null; + /** + * Transform + * @description The Python Transform name or ID, required when assignment_type=transform + */ + transform?: string | null; + } & (unknown & unknown); + /** ComputedAttribute */ + "ComputedAttribute-Output": Record; + /** + * ComputedAttributeKind + * @enum {string} + */ + ComputedAttributeKind: "User" | "Jinja2" | "TransformPython"; /** ConfigAPI */ ConfigAPI: { main: components["schemas"]["MainSettings"]; @@ -1319,29 +1155,6 @@ export interface components { * @enum {string} */ DiffAction: "added" | "removed" | "updated" | "unchanged"; - /** - * DiffElementType - * @enum {string} - */ - DiffElementType: "Attribute" | "RelationshipOne" | "RelationshipMany"; - /** DiffSummary */ - DiffSummary: { - /** - * Added - * @default 0 - */ - added: number; - /** - * Removed - * @default 0 - */ - removed: number; - /** - * Updated - * @default 0 - */ - updated: number; - }; /** DropdownChoice */ DropdownChoice: { /** Id */ @@ -1569,6 +1382,7 @@ export interface components { MainSettings: { /** * Docs Index Path + * Format: path * @description Full path of saved json containing pre-indexed documentation * @default /opt/infrahub/docs/build/search-index.json */ @@ -1937,6 +1751,11 @@ export interface components { * @default false */ read_only: boolean; + /** + * Deprecation + * @description Mark relationship as deprecated and provide a user-friendly message to display + */ + deprecation?: string | null; }; /** RemoteLoggingSettings */ RemoteLoggingSettings: { @@ -2287,76 +2106,6 @@ export interface operations { }; }; }; - get_diff_data_api_diff_data_get: { - parameters: { - query?: { - time_from?: string | null; - time_to?: string | null; - branch_only?: boolean; - /** @description Name of the branch to use for the query */ - branch?: string | null; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BranchDiff"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; - get_diff_schema_api_diff_schema_get: { - parameters: { - query?: { - time_from?: string | null; - time_to?: string | null; - branch_only?: boolean; - /** @description Name of the branch to use for the query */ - branch?: string | null; - }; - header?: never; - path?: never; - cookie?: never; - }; - requestBody?: never; - responses: { - /** @description Successful Response */ - 200: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["BranchDiff"]; - }; - }; - /** @description Validation Error */ - 422: { - headers: { - [name: string]: unknown; - }; - content: { - "application/json": components["schemas"]["HTTPValidationError"]; - }; - }; - }; - }; get_diff_files_api_diff_files_get: { parameters: { query?: { @@ -2399,9 +2148,6 @@ export interface operations { get_diff_artifacts_api_diff_artifacts_get: { parameters: { query?: { - time_from?: string | null; - time_to?: string | null; - branch_only?: boolean; /** @description Name of the branch to use for the query */ branch?: string | null; }; @@ -2516,6 +2262,8 @@ export interface operations { query?: { /** @description Name of the branch to use for the query */ branch?: string | null; + /** @description Time to use for the query, in absolute or relative format */ + at?: string | null; }; header?: never; path?: never; @@ -2901,6 +2649,8 @@ export interface operations { query?: { /** @description Name of the branch to use for the query */ branch?: string | null; + /** @description Time to use for the query, in absolute or relative format */ + at?: string | null; }; header?: never; path?: never; diff --git a/frontend/app/src/state/atoms/branches.atom.ts b/frontend/app/src/state/atoms/branches.atom.ts index 9feec9935b..a2df885b81 100644 --- a/frontend/app/src/state/atoms/branches.atom.ts +++ b/frontend/app/src/state/atoms/branches.atom.ts @@ -1,4 +1,4 @@ -import { Branch } from "@/generated/graphql"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; import { atom } from "jotai"; export const branchesState = atom([]); diff --git a/frontend/app/src/state/atoms/schema.atom.ts b/frontend/app/src/state/atoms/schema.atom.ts index 642dae67b9..a4aa58abcd 100644 --- a/frontend/app/src/state/atoms/schema.atom.ts +++ b/frontend/app/src/state/atoms/schema.atom.ts @@ -1,4 +1,4 @@ -import { components } from "@/infraops"; +import { components } from "@/shared/api/rest/types.generated"; import { atom } from "jotai"; export type iNodeSchema = components["schemas"]["APINodeSchema"]; diff --git a/frontend/app/src/utils/branches.ts b/frontend/app/src/utils/branches.ts index 82be111a63..3c4a6706d5 100644 --- a/frontend/app/src/utils/branches.ts +++ b/frontend/app/src/utils/branches.ts @@ -1,4 +1,4 @@ -import { Branch } from "@/generated/graphql"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; export const findSelectedBranch = (branches: Branch[], branchName?: string | null) => { const filter = branchName ? (b: Branch) => branchName === b.name : (b: Branch) => b.is_default; diff --git a/frontend/app/src/utils/getObjectItemDisplayValue.tsx b/frontend/app/src/utils/getObjectItemDisplayValue.tsx index 568ab6aeb9..bf0f6fcd4a 100644 --- a/frontend/app/src/utils/getObjectItemDisplayValue.tsx +++ b/frontend/app/src/utils/getObjectItemDisplayValue.tsx @@ -7,6 +7,8 @@ import { CodeEditor } from "@/components/editor/code-editor"; import { MarkdownViewer } from "@/components/editor/markdown-viewer"; import { Link } from "@/components/ui/link"; import { MAX_VALUE_LENGTH_DISPLAY, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; +import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; +import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; import { AnyAttribute, CheckboxAttribute, @@ -19,9 +21,7 @@ import { NumberAttribute, RelationshipProperty, TextAttribute, -} from "@/generated/graphql"; -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +} from "@/shared/api/graphql/generated/graphql"; import { iSchemaKindNameMap } from "@/state/atoms/schemaKindName.atom"; import { CheckIcon, XMarkIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/tests/components/render.tsx b/frontend/app/tests/components/render.tsx index 91d344f29a..a69eaf949e 100644 --- a/frontend/app/tests/components/render.tsx +++ b/frontend/app/tests/components/render.tsx @@ -3,7 +3,7 @@ import { Provider } from "jotai"; import React from "react"; import { Slide, ToastContainer } from "react-toastify"; import { render as renderFromVitest } from "vitest-browser-react"; -import { queryClient } from "../../src/api/client"; +import { queryClient } from "../../src/shared/api/rest/client"; import { store } from "../../src/state"; import "/src/app/styles/index.css"; diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index e50bac0fea..30e9f89f5f 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,7 +1,7 @@ import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFromSchema"; import { AuthContextType } from "@/hooks/useAuth"; -import { components } from "@/infraops"; import { RelationshipSchema } from "@/screens/schema/types"; +import { components } from "@/shared/api/rest/types.generated"; import { store } from "@/state"; import { currentBranchAtom } from "@/state/atoms/branches.atom"; import { IModelSchema } from "@/state/atoms/schema.atom"; diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index f5bdb4fbd0..ea1dedcbd7 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,5 +1,5 @@ import { describe, expect, it } from "vitest"; -import { updateObjectWithId } from "../../../src/graphql/mutations/objects/updateObjectWithId"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import getMutationMetaDetailsFromFormData from "../../../src/utils/getMutationMetaDetailsFromFormData"; import { stringifyWithoutQuotes } from "../../../src/utils/string"; import { From 8da4202e7c84eca2074340a15e1fbed78ef8b48f Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:35:01 +0100 Subject: [PATCH 03/25] shared components/utils/hooks/store --- frontend/app/src/app/app.tsx | 4 +- frontend/app/src/app/root.tsx | 6 +-- frontend/app/src/app/router.tsx | 4 +- .../{images => assets}/Infrahub-SVG-hori.svg | 0 .../{images => assets}/Infrahub-SVG-verti.svg | 0 .../app/src/{images => assets}/Infrahub.png | Bin .../icons/proposed-change-checks-failure.svg | 0 .../icons/proposed-change-checks-success.svg | 0 .../icons/proposed-change-checks-unknown.svg | 0 .../{images => assets}/icons/tasks-status.svg | 0 .../src/{images => assets}/infrahub-logo.svg | 0 .../{state/atoms => config}/config.atom.ts | 0 frontend/app/src/pages/auth-callback.tsx | 6 +-- frontend/app/src/pages/branches/details.tsx | 12 +++--- frontend/app/src/pages/graphql/index.tsx | 4 +- .../redirect-to-graphql-sandbox-page.tsx | 2 +- frontend/app/src/pages/homepage.tsx | 2 +- frontend/app/src/pages/ipam/layout.tsx | 2 +- frontend/app/src/pages/login.tsx | 4 +- .../graphql-query-details.tsx | 8 ++-- frontend/app/src/pages/objects/layout.tsx | 8 ++-- .../app/src/pages/objects/object-details.tsx | 6 +-- .../app/src/pages/objects/object-items.tsx | 2 +- frontend/app/src/pages/profile.tsx | 4 +- .../src/pages/proposed-changes/details.tsx | 18 ++++---- .../app/src/pages/proposed-changes/new.tsx | 4 +- .../app/src/pages/resource-manager/index.tsx | 2 +- .../resource-allocation-details.tsx | 18 ++++---- .../resource-pool-details.tsx | 22 +++++----- .../app/src/pages/role-management/index.tsx | 2 +- frontend/app/src/pages/schema.tsx | 6 +-- frontend/app/src/pages/tasks/task-details.tsx | 8 ++-- .../app/src/screens/artifacts/generate.tsx | 10 ++--- .../object-item-details-paginated.tsx | 30 ++++++------- .../authentification/login-sso-buttons.tsx | 4 +- .../src/screens/authentification/login.tsx | 16 +++---- .../branch-actions/branch-merge-button.tsx | 8 ++-- .../branch-actions/branch-rebase-button.tsx | 8 ++-- .../branch-actions/branch-validate-button.tsx | 8 ++-- .../src/screens/branches/branch-details.tsx | 26 ++++++------ .../src/screens/branches/branches-items.tsx | 12 +++--- .../branches}/branches.atom.ts | 0 .../{utils => screens/branches}/branches.ts | 0 frontend/app/src/screens/branches/diff.tsx | 6 +-- .../branches/get-current-branch.test.ts | 4 +- .../screens/branches/get-current-branch.ts | 4 +- .../app/src/screens/branches/task-display.tsx | 10 ++--- .../artifact-diff/artifact-content-diff.tsx | 22 +++++----- .../diff/artifact-diff/artifact-repo-diff.tsx | 8 ++-- .../diff/artifact-diff/artifacts-diff.tsx | 6 +-- .../app/src/screens/diff/checks/check.tsx | 24 +++++------ .../screens/diff/checks/checks-summary.tsx | 20 ++++----- .../app/src/screens/diff/checks/checks.tsx | 2 +- .../app/src/screens/diff/checks/conflict.tsx | 26 ++++++------ .../screens/diff/checks/validator-details.tsx | 6 +-- .../app/src/screens/diff/checks/validator.tsx | 14 +++--- frontend/app/src/screens/diff/diff-badge.tsx | 4 +- frontend/app/src/screens/diff/diff-tree.tsx | 6 +-- .../app/src/{utils => screens/diff}/diff.tsx | 15 +++---- .../diff/file-diff/file-content-diff.tsx | 24 +++++------ .../screens/diff/file-diff/file-repo-diff.tsx | 2 +- .../src/screens/diff/file-diff/files-diff.tsx | 4 +- .../src/screens/diff/node-diff/comments.tsx | 18 ++++---- .../src/screens/diff/node-diff/conflict.tsx | 14 +++--- .../app/src/screens/diff/node-diff/index.tsx | 24 +++++------ .../screens/diff/node-diff/node-property.tsx | 4 +- .../diff/node-diff/node-relationship.tsx | 2 +- .../app/src/screens/diff/node-diff/node.tsx | 10 ++--- .../app/src/screens/diff/node-diff/thread.tsx | 14 +++--- .../app/src/screens/diff/node-diff/utils.tsx | 6 +-- .../edit-form-hook/dynamic-control-types.ts | 2 +- .../app/src/screens/errors/error-fallback.tsx | 8 ++-- .../app/src/screens/errors/error-screen.tsx | 2 +- .../screens/errors/unauthorized-screen.tsx | 4 +- .../details/graphql-query-details-card.tsx | 24 +++++------ .../graphql-query-details-page-skeleton.tsx | 2 +- .../details/graphql-query-viewer-card.tsx | 10 ++--- .../app/src/screens/groups/add-group-form.tsx | 12 +++--- .../groups/add-group-trigger-button.tsx | 8 ++-- .../groups-auto-generated-filter-button.tsx | 6 +-- .../groups/groups-manager-trigger-button.tsx | 6 +-- .../app/src/screens/groups/groups-manager.tsx | 10 ++--- .../src/screens/groups/object-groups-list.tsx | 18 ++++---- .../screens/ipam/common/ip-details-card.tsx | 20 ++++----- frontend/app/src/screens/ipam/common/utils.ts | 2 +- .../ipam/ip-addresses/ip-address-summary.tsx | 8 ++-- .../ip-addresses/ipam-ip-address-list.tsx | 20 ++++----- .../screens/ipam/ip-namespace-selector.tsx | 8 ++-- frontend/app/src/screens/ipam/ipam-router.tsx | 16 +++---- .../ipam/ipam-tree/ipam-tree-skeleton.tsx | 2 +- .../screens/ipam/ipam-tree/ipam-tree.state.ts | 6 +-- .../src/screens/ipam/ipam-tree/ipam-tree.tsx | 12 +++--- .../app/src/screens/ipam/ipam-tree/utils.ts | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 24 +++++------ .../ipam-prefixes-summary-details.tsx | 10 ++--- .../prefixes/ipam-prefixes-summary-list.tsx | 20 ++++----- .../ipam/prefixes/ipam-summary-skeleton.tsx | 4 +- .../app/src/screens/layout/app-version.tsx | 4 +- .../breadcrumb-navigation.tsx | 4 +- .../items/breadcrumb-branch-selector.tsx | 10 ++--- .../items/breadcrumb-dynamic-element.tsx | 2 +- .../items/breadcrumb-link.tsx | 2 +- .../items/breadcrumb-loading.tsx | 2 +- .../items/breadcrumb-object-selector.tsx | 8 ++-- .../items/breadcrumb-schema-selector.tsx | 8 ++-- frontend/app/src/screens/layout/content.tsx | 8 ++-- frontend/app/src/screens/layout/header.tsx | 8 ++-- frontend/app/src/screens/layout/layout.tsx | 8 ++-- .../components/collapsed-button.tsx | 4 +- .../components/menu-section-internal.tsx | 6 +-- .../components/menu-section-object.tsx | 8 ++-- .../components/object-avatar.tsx | 2 +- .../layout/menu-navigation/get-menu.ts | 4 +- .../menu-navigation/menu-navigation.tsx | 6 +-- frontend/app/src/screens/layout/sidebar.tsx | 10 ++--- .../app/src/screens/layout/tasks-status.tsx | 16 +++---- .../screens/loading-screen/loading-screen.tsx | 2 +- .../action-buttons/details-buttons.tsx | 8 ++-- .../action-buttons/relationships-buttons.tsx | 14 +++--- .../object-attribute-row.tsx | 2 +- .../object-item-details-paginated.tsx | 28 ++++++------ .../relationship-details-paginated.tsx | 36 ++++++++-------- .../relationships-details-paginated.tsx | 10 ++--- .../generateObjectEditFormQuery.ts | 4 +- .../object-item-edit-paginated.tsx | 18 ++++---- .../getMutationMetaDetailsFromFormData.ts | 2 +- .../object-item-meta-edit.tsx | 16 +++---- .../object-items}/getSchemaObjectColumns.ts | 6 +-- .../object-items/object-items-cell.tsx | 8 ++-- .../object-items/object-items-paginated.tsx | 26 ++++++------ .../objects}/getObjectItemDisplayValue.tsx | 18 ++++---- .../src/screens/objects/hierarchical-tree.tsx | 16 +++---- .../objects}/metaEditFieldDetails.atom.ts | 0 .../app/src/screens/objects/object-header.tsx | 14 +++--- .../src/{utils => screens/objects}/objects.ts | 6 +-- .../get-relationships.query.ts | 4 +- .../get-relationships.test.ts | 4 +- .../get-relationships/get-relationships.ts | 4 +- .../ui/add-relationship-action.tsx | 10 ++--- .../ui/relationship-combobox-list.tsx | 8 ++-- ...onship-hierarchical-combobox-list.test.tsx | 4 +- ...elationship-hierarchical-combobox-list.tsx | 14 +++--- .../ui/relationship-hierarchical-input.tsx | 14 +++--- .../objects/showMetaEdit.atom.ts} | 0 frontend/app/src/screens/permission/utils.ts | 6 +-- .../action-button/pc-approve-button.tsx | 12 +++--- .../action-button/pc-close-button.tsx | 10 ++--- .../action-button/pc-merge-button.tsx | 10 ++--- .../screens/proposed-changes/checks-tab.tsx | 4 +- .../proposed-changes}/checks.ts | 0 .../proposed-changes/conversations.tsx | 20 ++++----- .../src/screens/proposed-changes/counter.tsx | 4 +- .../screens/proposed-changes/create-form.tsx | 38 ++++++++--------- .../screens/proposed-changes/diff-filter.tsx | 8 ++-- .../screens/proposed-changes/diff-summary.tsx | 6 +-- .../form/proposed-change-edit-form.tsx | 18 ++++---- .../screens/proposed-changes/item-info.tsx | 10 ++--- .../src/screens/proposed-changes/items.tsx | 26 ++++++------ .../proposed-change-details.tsx | 26 ++++++------ .../proposed-change-edit-trigger.tsx | 10 ++--- .../proposed-changes}/proposed-changes.ts | 2 +- .../proposed-changes}/proposedChanges.atom.ts | 0 .../screens/proposed-changes/reviewers.tsx | 4 +- .../repository/repository-action-menu.tsx | 8 ++-- .../screens/repository/repository-form.tsx | 26 ++++++------ .../common/ResourcePoolUtilization.tsx | 8 ++-- .../resource-manager/number-pool-form.tsx | 40 +++++++++--------- .../resource-manager/resource-selector.tsx | 10 ++--- .../screens/role-management/account-form.tsx | 32 +++++++------- .../role-management/account-group-form.tsx | 36 ++++++++-------- .../role-management/account-role-form.tsx | 30 ++++++------- .../src/screens/role-management/accounts.tsx | 28 ++++++------ .../global-permissions-form.tsx | 32 +++++++------- .../role-management/global-permissions.tsx | 28 ++++++------ .../screens/role-management/group-member.tsx | 8 ++-- .../src/screens/role-management/groups.tsx | 26 ++++++------ .../app/src/screens/role-management/index.tsx | 6 +-- .../object-permissions-form.tsx | 34 +++++++-------- .../role-management/object-permissions.tsx | 30 ++++++------- .../role-management/relationship-display.tsx | 6 +-- .../app/src/screens/role-management/roles.tsx | 26 ++++++------ .../src/screens/schema/attribute-display.tsx | 2 +- .../app/src/screens/schema/get-schema.test.ts | 4 +- frontend/app/src/screens/schema/get-schema.ts | 4 +- .../screens/schema/relationship-display.tsx | 4 +- .../src/screens/schema/schema-help-menu.tsx | 8 ++-- .../src/screens/schema/schema-selector.tsx | 10 ++--- .../app/src/screens/schema/schema-viewer.tsx | 8 ++-- .../atoms => screens/schema}/schema.atom.ts | 0 .../schema}/schemaKindLabel.atom.ts | 0 .../schema}/schemaKindName.atom.ts | 0 frontend/app/src/screens/schema/styled.tsx | 6 +-- frontend/app/src/screens/schema/utils.test.ts | 4 +- frontend/app/src/screens/schema/utils.ts | 4 +- .../schema}/withSchemaContext.tsx | 22 +++++----- frontend/app/src/screens/tasks/logs.tsx | 6 +-- .../src/screens/tasks/task-item-details.tsx | 16 +++---- frontend/app/src/screens/tasks/task-items.tsx | 22 +++++----- .../src/screens/user-profile/tab-profile.tsx | 6 +-- .../src/screens/user-profile/tab-tokens.tsx | 6 +-- .../user-profile/tab-update-password.tsx | 12 +++--- .../src/screens/user-profile/user-profile.tsx | 8 ++-- .../api/graphql/graphqlClientApollo.tsx | 4 +- .../mutations/groups/updateGroupsQuery.ts | 2 +- .../queries/objects/getObjectDetails.ts | 2 +- .../graphql/queries/objects/getObjectItems.ts | 2 +- frontend/app/src/shared/api/rest/client.ts | 2 +- .../src/{utils => shared/api/rest}/fetch.ts | 0 .../{ => shared}/components/account-menu.tsx | 16 +++---- .../components/branch-selector.tsx | 16 +++---- .../components/buttons/button-primitive.tsx | 8 ++-- .../buttons/button-with-tooltip.tsx | 2 +- .../components/buttons/button.tsx | 2 +- .../components/buttons/clipboard.tsx | 4 +- .../components/buttons/copy-to-clipboard.tsx | 0 .../components/buttons/more-button.tsx | 0 .../{ => shared}/components/buttons/retry.tsx | 2 +- .../components/buttons/tabs-buttons.tsx | 0 .../components/buttons/toggle-buttons.tsx | 0 .../components/conversations/add-comment.tsx | 12 +++--- .../components/conversations/comment.tsx | 8 ++-- .../components/conversations/thread.tsx | 30 ++++++------- .../components/display/accordion.tsx | 2 +- .../components/display/avatar.tsx | 2 +- .../components/display/badge-circle.tsx | 2 +- .../{ => shared}/components/display/badge.tsx | 2 +- .../components/display/circle.tsx | 2 +- .../components/display/color-display.tsx | 2 +- .../components/display/date-display.tsx | 4 +- .../components/display/duration-display.tsx | 2 +- .../components/display/inline-display.tsx | 6 +-- .../display/meta-details-tooltips.tsx | 14 +++--- .../components/display/password-display.tsx | 2 +- .../components/display/pie-chart.tsx | 0 .../{ => shared}/components/display/pill.tsx | 2 +- .../components/display/popover.tsx | 4 +- .../components/display/properties-popover.tsx | 4 +- .../components/display/question-mark.tsx | 6 +-- .../components/display/sidepanel-title.tsx | 2 +- .../components/display/slide-over.tsx | 10 ++--- .../components/display/text-display.tsx | 2 +- .../components/display/token-input.tsx | 0 .../components/editor/code-editor.tsx | 6 +-- .../components/editor/code-viewer-limiter.tsx | 4 +- .../components/editor/commands.ts | 2 +- .../editor/graphql/graphql-viewer.tsx | 4 +- .../{ => shared}/components/editor/index.tsx | 6 +-- .../components/editor/json/json-editor.tsx | 4 +- .../editor/markdown-editor-header.tsx | 4 +- .../components/editor/markdown-viewer.tsx | 2 +- .../app/src/{ => shared}/components/file.tsx | 4 +- .../components/filters/filter-form.tsx | 18 ++++---- .../filters/filter-kind-selector.tsx | 16 +++---- .../components/filters/filters.tsx | 16 +++---- .../components/filters/tasks-filter-form.tsx | 10 ++--- .../filters/utils/getFiltersFromFormData.ts | 4 +- .../filters/utils/getObjectFromFilters.ts | 6 +-- .../components/form/branch-create-form.tsx | 14 +++--- .../{ => shared}/components/form/constants.ts | 0 .../components/form/dynamic-form.tsx | 36 ++++++++-------- .../components/form/fields/checkbox.field.tsx | 10 ++--- .../components/form/fields/color.field.tsx | 12 +++--- .../components/form/fields/common.tsx | 16 +++---- .../components/form/fields/datetime.field.tsx | 10 ++--- .../components/form/fields/dropdown.field.tsx | 12 +++--- .../components/form/fields/enum.field.tsx | 12 +++--- .../components/form/fields/input.field.tsx | 10 ++--- .../components/form/fields/json.field.tsx | 10 ++--- .../form/fields/list.field.test.tsx | 8 ++-- .../components/form/fields/list.field.tsx | 12 +++--- .../components/form/fields/number.field.tsx | 12 +++--- .../form/fields/password-input.field.tsx | 10 ++--- .../relationship-hierarchical.field.tsx | 10 ++--- .../form/fields/relationship-many.field.tsx | 16 +++---- .../form/fields/relationship.field.tsx | 22 +++++----- .../components/form/fields/textarea.field.tsx | 12 +++--- .../components/form/generic-object-form.tsx | 6 +-- .../components/form/generic-selector.tsx | 12 +++--- .../components/form/name-select.tsx | 2 +- .../components/form/node-form.tsx | 30 ++++++------- .../components/form/node-select.tsx | 2 +- .../form/node-with-profile-form.tsx | 6 +-- .../form/object-create-form-trigger.tsx | 6 +-- .../form/object-edit-slide-over-trigger.tsx | 6 +-- .../components/form/object-form.tsx | 12 +++--- .../components/form/pool-selector.tsx | 10 ++--- .../components/form/profiles-selector.tsx | 10 ++--- .../src/{ => shared}/components/form/type.ts | 10 ++--- .../form/utils/getFieldDefaultValue.ts | 6 +-- .../form/utils/getFormFieldsFromSchema.ts | 24 +++++------ .../form/utils/getRelationshipDefaultValue.ts | 8 ++-- .../form/utils/getRelationshipParent.ts | 2 +- .../form/utils/getRelationshipsForForm.ts | 0 .../components/form/utils/isFieldDisabled.ts | 6 +-- .../getCreateMutationFromFormData.ts | 4 +- .../getUpdateMutationFromFormData.ts | 2 +- .../form/utils/updateFormFieldValue.ts | 4 +- .../components/form/utils/validation.ts | 2 +- .../components/inputs/checkbox.tsx | 4 +- .../components/inputs/color-picker.tsx | 6 +-- .../components/inputs/date-picker.tsx | 6 +-- .../components/inputs/dropdown.tsx | 22 +++++----- .../{ => shared}/components/inputs/enum.tsx | 16 +++---- .../{ => shared}/components/inputs/input.tsx | 6 +-- .../components/inputs/relationship-many.tsx | 20 ++++----- .../components/inputs/relationship-one.tsx | 20 ++++----- .../{ => shared}/components/inputs/select.tsx | 0 .../components/layouts/item-group.tsx | 2 +- .../src/{ => shared}/components/list.test.tsx | 2 +- .../app/src/{ => shared}/components/list.tsx | 12 +++--- .../components/menu/object-details-button.tsx | 8 ++-- .../components/menu/object-help-button.tsx | 6 +-- .../components/modals/modal-confirm.tsx | 2 +- .../components/modals/modal-delete-object.tsx | 6 +-- .../components/modals/modal-delete.tsx | 2 +- .../components/modals/modal-success.tsx | 2 +- .../{ => shared}/components/modals/modal.tsx | 0 .../{ => shared}/components/notifications.tsx | 2 +- .../search/queries/get-doc-results.ts | 2 +- .../components/search/search-actions.tsx | 10 ++--- .../search/search-anywhere-context.ts | 0 .../search/search-anywhere-dialog.tsx | 4 +- .../search/search-anywhere-empty.tsx | 4 +- .../search/search-anywhere-group.tsx | 2 +- .../search/search-anywhere-input.tsx | 4 +- .../search/search-anywhere-item.tsx | 4 +- .../search/search-anywhere-trigger.tsx | 6 +-- .../components/search/search-anywhere.tsx | 8 ++-- .../components/search/search-docs.tsx | 8 ++-- .../components/search/search-nodes.tsx | 22 +++++----- .../src/{ => shared}/components/skeleton.tsx | 2 +- .../stats/multiple-progress-bar.tsx | 4 +- .../components/stats/progress-bar-chart.tsx | 2 +- .../{ => shared}/components/table/list.tsx | 0 .../components/table/property-list.tsx | 2 +- .../{ => shared}/components/table/table.tsx | 4 +- .../{ => shared}/components/tabs-routes.tsx | 4 +- .../app/src/{ => shared}/components/tabs.tsx | 4 +- .../{ => shared}/components/time-selector.tsx | 4 +- .../{ => shared}/components/ui/accordion.tsx | 2 +- .../src/{ => shared}/components/ui/alert.tsx | 4 +- .../{ => shared}/components/ui/badge-copy.tsx | 0 .../src/{ => shared}/components/ui/badge.tsx | 2 +- .../{ => shared}/components/ui/breadcrumb.tsx | 2 +- .../src/{ => shared}/components/ui/card.tsx | 2 +- .../components/ui/combobox-legacy.tsx | 4 +- .../{ => shared}/components/ui/combobox.tsx | 8 ++-- .../{ => shared}/components/ui/command.tsx | 2 +- .../{ => shared}/components/ui/divider.tsx | 2 +- .../components/ui/dropdown-menu.tsx | 4 +- .../src/{ => shared}/components/ui/form.tsx | 8 ++-- .../app/src/{ => shared}/components/ui/id.tsx | 6 +-- .../src/{ => shared}/components/ui/input.tsx | 4 +- .../src/{ => shared}/components/ui/kbd.tsx | 2 +- .../src/{ => shared}/components/ui/label.tsx | 2 +- .../src/{ => shared}/components/ui/link.tsx | 2 +- .../{ => shared}/components/ui/pagination.tsx | 4 +- .../components/ui/password-input.tsx | 4 +- .../{ => shared}/components/ui/popover.tsx | 2 +- .../src/{ => shared}/components/ui/pulse.tsx | 2 +- .../{ => shared}/components/ui/resizable.tsx | 2 +- .../components/ui/scroll-area.tsx | 2 +- .../components/ui/search-input.tsx | 2 +- .../{ => shared}/components/ui/spinner.tsx | 2 +- .../src/{ => shared}/components/ui/style.ts | 0 .../{ => shared}/components/ui/tooltip.tsx | 2 +- .../{ => shared}/components/ui/transition.tsx | 0 .../components/ui/tree-sheleton.tsx | 4 +- .../src/{ => shared}/components/ui/tree.tsx | 2 +- .../app/src/{ => shared}/hooks/useAuth.tsx | 8 ++-- .../src/{ => shared}/hooks/useCodeMirror.ts | 0 .../app/src/{ => shared}/hooks/useDebounce.ts | 0 .../app/src/{ => shared}/hooks/useFilters.ts | 2 +- .../src/{ => shared}/hooks/useLocalStorage.ts | 0 .../{ => shared}/hooks/useObjectDetails.ts | 6 +-- .../src/{ => shared}/hooks/useObjectItems.ts | 8 ++-- .../src/{ => shared}/hooks/usePagination.ts | 2 +- .../app/src/{ => shared}/hooks/usePrevious.ts | 0 .../app/src/{ => shared}/hooks/useQuery.ts | 4 +- .../app/src/{ => shared}/hooks/useSchema.ts | 2 +- .../app/src/{ => shared}/hooks/useTitle.ts | 0 .../app/src/{state => shared/stores}/index.ts | 0 .../atoms => shared/stores}/state.atom.ts | 0 .../atoms => shared/stores}/time.atom.ts | 0 frontend/app/src/{ => shared}/utils/array.ts | 0 frontend/app/src/{ => shared}/utils/common.ts | 0 frontend/app/src/{ => shared}/utils/date.ts | 0 .../app/src/{ => shared}/utils/handlebars.ts | 0 frontend/app/src/{ => shared}/utils/number.ts | 0 .../app/src/{ => shared}/utils/string.tsx | 0 frontend/app/tests/components/form.story.tsx | 2 +- frontend/app/tests/components/render.tsx | 2 +- frontend/app/tests/fake/schema.ts | 2 +- .../tests/integrations/screens/account.cy.tsx | 8 ++-- .../integrations/screens/artifact-diff.cy.tsx | 10 ++--- .../integrations/screens/branche-items.cy.tsx | 2 +- .../integrations/screens/conversations.cy.tsx | 4 +- .../object-details-relationships.cy.tsx | 2 +- .../screens/object-details.cy.tsx | 2 +- .../integrations/screens/object-fields.cy.tsx | 6 +-- .../screens/object-items-deletion.cy.tsx | 6 +-- .../integrations/screens/object-items.cy.tsx | 2 +- .../filters/getFiltersFromFormData.test.ts | 4 +- .../filters/getObjectFromFilters.test.ts | 6 +-- .../getCreateMutationFromFormData.test.ts | 4 +- .../form/utils/getFieldDefaultValue.test.ts | 6 +-- .../utils/getFormFieldsFromSchema.test.ts | 12 +++--- .../utils/getRelationshipDefaultValue.test.ts | 8 ++-- .../utils/getRelationshipsForForm.test.ts | 2 +- .../getUpdateMutationFromFormData.test.ts | 4 +- .../form/utils/isFieldDisabled.test.ts | 2 +- .../components/tree/addItemsToTree.test.ts | 2 +- ...enerateRootCategoryNodeForDiffTree.test.ts | 2 +- ...getMutationMetaDetailsFromFormData.test.ts | 4 +- .../unit/utils/getSchemaObjectColumns.test.ts | 2 +- .../utils/getStringJSONWithoutQuotes.test.ts | 2 +- 416 files changed, 1603 insertions(+), 1604 deletions(-) rename frontend/app/src/{images => assets}/Infrahub-SVG-hori.svg (100%) rename frontend/app/src/{images => assets}/Infrahub-SVG-verti.svg (100%) rename frontend/app/src/{images => assets}/Infrahub.png (100%) rename frontend/app/src/{images => assets}/icons/proposed-change-checks-failure.svg (100%) rename frontend/app/src/{images => assets}/icons/proposed-change-checks-success.svg (100%) rename frontend/app/src/{images => assets}/icons/proposed-change-checks-unknown.svg (100%) rename frontend/app/src/{images => assets}/icons/tasks-status.svg (100%) rename frontend/app/src/{images => assets}/infrahub-logo.svg (100%) rename frontend/app/src/{state/atoms => config}/config.atom.ts (100%) rename frontend/app/src/{state/atoms => screens/branches}/branches.atom.ts (100%) rename frontend/app/src/{utils => screens/branches}/branches.ts (100%) rename frontend/app/src/{utils => screens/diff}/diff.tsx (90%) rename frontend/app/src/{utils => screens/object-item-meta-edit}/getMutationMetaDetailsFromFormData.ts (96%) rename frontend/app/src/{utils => screens/object-items}/getSchemaObjectColumns.ts (96%) rename frontend/app/src/{utils => screens/objects}/getObjectItemDisplayValue.tsx (92%) rename frontend/app/src/{state/atoms => screens/objects}/metaEditFieldDetails.atom.ts (100%) rename frontend/app/src/{utils => screens/objects}/objects.ts (90%) rename frontend/app/src/{state/atoms/showMetaEdit.atom copy.ts => screens/objects/showMetaEdit.atom.ts} (100%) rename frontend/app/src/{utils => screens/proposed-changes}/checks.ts (100%) rename frontend/app/src/{utils => screens/proposed-changes}/proposed-changes.ts (86%) rename frontend/app/src/{state/atoms => screens/proposed-changes}/proposedChanges.atom.ts (100%) rename frontend/app/src/{state/atoms => screens/schema}/schema.atom.ts (100%) rename frontend/app/src/{state/atoms => screens/schema}/schemaKindLabel.atom.ts (100%) rename frontend/app/src/{state/atoms => screens/schema}/schemaKindName.atom.ts (100%) rename frontend/app/src/{decorators => screens/schema}/withSchemaContext.tsx (88%) rename frontend/app/src/{utils => shared/api/rest}/fetch.ts (100%) rename frontend/app/src/{ => shared}/components/account-menu.tsx (93%) rename frontend/app/src/{ => shared}/components/branch-selector.tsx (93%) rename frontend/app/src/{ => shared}/components/buttons/button-primitive.tsx (92%) rename frontend/app/src/{ => shared}/components/buttons/button-with-tooltip.tsx (85%) rename frontend/app/src/{ => shared}/components/buttons/button.tsx (98%) rename frontend/app/src/{ => shared}/components/buttons/clipboard.tsx (89%) rename frontend/app/src/{ => shared}/components/buttons/copy-to-clipboard.tsx (100%) rename frontend/app/src/{ => shared}/components/buttons/more-button.tsx (100%) rename frontend/app/src/{ => shared}/components/buttons/retry.tsx (94%) rename frontend/app/src/{ => shared}/components/buttons/tabs-buttons.tsx (100%) rename frontend/app/src/{ => shared}/components/buttons/toggle-buttons.tsx (100%) rename frontend/app/src/{ => shared}/components/conversations/add-comment.tsx (78%) rename frontend/app/src/{ => shared}/components/conversations/comment.tsx (77%) rename frontend/app/src/{ => shared}/components/conversations/thread.tsx (88%) rename frontend/app/src/{ => shared}/components/display/accordion.tsx (95%) rename frontend/app/src/{ => shared}/components/display/avatar.tsx (96%) rename frontend/app/src/{ => shared}/components/display/badge-circle.tsx (98%) rename frontend/app/src/{ => shared}/components/display/badge.tsx (98%) rename frontend/app/src/{ => shared}/components/display/circle.tsx (88%) rename frontend/app/src/{ => shared}/components/display/color-display.tsx (94%) rename frontend/app/src/{ => shared}/components/display/date-display.tsx (91%) rename frontend/app/src/{ => shared}/components/display/duration-display.tsx (94%) rename frontend/app/src/{ => shared}/components/display/inline-display.tsx (89%) rename frontend/app/src/{ => shared}/components/display/meta-details-tooltips.tsx (82%) rename frontend/app/src/{ => shared}/components/display/password-display.tsx (94%) rename frontend/app/src/{ => shared}/components/display/pie-chart.tsx (100%) rename frontend/app/src/{ => shared}/components/display/pill.tsx (96%) rename frontend/app/src/{ => shared}/components/display/popover.tsx (96%) rename frontend/app/src/{ => shared}/components/display/properties-popover.tsx (95%) rename frontend/app/src/{ => shared}/components/display/question-mark.tsx (70%) rename frontend/app/src/{ => shared}/components/display/sidepanel-title.tsx (92%) rename frontend/app/src/{ => shared}/components/display/slide-over.tsx (94%) rename frontend/app/src/{ => shared}/components/display/text-display.tsx (96%) rename frontend/app/src/{ => shared}/components/display/token-input.tsx (100%) rename frontend/app/src/{ => shared}/components/editor/code-editor.tsx (92%) rename frontend/app/src/{ => shared}/components/editor/code-viewer-limiter.tsx (90%) rename frontend/app/src/{ => shared}/components/editor/commands.ts (98%) rename frontend/app/src/{ => shared}/components/editor/graphql/graphql-viewer.tsx (78%) rename frontend/app/src/{ => shared}/components/editor/index.tsx (92%) rename frontend/app/src/{ => shared}/components/editor/json/json-editor.tsx (91%) rename frontend/app/src/{ => shared}/components/editor/markdown-editor-header.tsx (92%) rename frontend/app/src/{ => shared}/components/editor/markdown-viewer.tsx (89%) rename frontend/app/src/{ => shared}/components/file.tsx (90%) rename frontend/app/src/{ => shared}/components/filters/filter-form.tsx (65%) rename frontend/app/src/{ => shared}/components/filters/filter-kind-selector.tsx (84%) rename frontend/app/src/{ => shared}/components/filters/filters.tsx (81%) rename frontend/app/src/{ => shared}/components/filters/tasks-filter-form.tsx (83%) rename frontend/app/src/{ => shared}/components/filters/utils/getFiltersFromFormData.ts (91%) rename frontend/app/src/{ => shared}/components/filters/utils/getObjectFromFilters.ts (91%) rename frontend/app/src/{ => shared}/components/form/branch-create-form.tsx (83%) rename frontend/app/src/{ => shared}/components/form/constants.ts (100%) rename frontend/app/src/{ => shared}/components/form/dynamic-form.tsx (72%) rename frontend/app/src/{ => shared}/components/form/fields/checkbox.field.tsx (79%) rename frontend/app/src/{ => shared}/components/form/fields/color.field.tsx (71%) rename frontend/app/src/{ => shared}/components/form/fields/common.tsx (87%) rename frontend/app/src/{ => shared}/components/form/fields/datetime.field.tsx (77%) rename frontend/app/src/{ => shared}/components/form/fields/dropdown.field.tsx (75%) rename frontend/app/src/{ => shared}/components/form/fields/enum.field.tsx (74%) rename frontend/app/src/{ => shared}/components/form/fields/input.field.tsx (75%) rename frontend/app/src/{ => shared}/components/form/fields/json.field.tsx (80%) rename frontend/app/src/{ => shared}/components/form/fields/list.field.test.tsx (94%) rename frontend/app/src/{ => shared}/components/form/fields/list.field.tsx (74%) rename frontend/app/src/{ => shared}/components/form/fields/number.field.tsx (81%) rename frontend/app/src/{ => shared}/components/form/fields/password-input.field.tsx (73%) rename frontend/app/src/{ => shared}/components/form/fields/relationship-hierarchical.field.tsx (84%) rename frontend/app/src/{ => shared}/components/form/fields/relationship-many.field.tsx (73%) rename frontend/app/src/{ => shared}/components/form/fields/relationship.field.tsx (94%) rename frontend/app/src/{ => shared}/components/form/fields/textarea.field.tsx (73%) rename frontend/app/src/{ => shared}/components/form/generic-object-form.tsx (82%) rename frontend/app/src/{ => shared}/components/form/generic-selector.tsx (92%) rename frontend/app/src/{ => shared}/components/form/name-select.tsx (97%) rename frontend/app/src/{ => shared}/components/form/node-form.tsx (81%) rename frontend/app/src/{ => shared}/components/form/node-select.tsx (97%) rename frontend/app/src/{ => shared}/components/form/node-with-profile-form.tsx (68%) rename frontend/app/src/{ => shared}/components/form/object-create-form-trigger.tsx (90%) rename frontend/app/src/{ => shared}/components/form/object-edit-slide-over-trigger.tsx (87%) rename frontend/app/src/{ => shared}/components/form/object-form.tsx (86%) rename frontend/app/src/{ => shared}/components/form/pool-selector.tsx (86%) rename frontend/app/src/{ => shared}/components/form/profiles-selector.tsx (91%) rename frontend/app/src/{ => shared}/components/form/type.ts (91%) rename frontend/app/src/{ => shared}/components/form/utils/getFieldDefaultValue.ts (94%) rename frontend/app/src/{ => shared}/components/form/utils/getFormFieldsFromSchema.ts (82%) rename frontend/app/src/{ => shared}/components/form/utils/getRelationshipDefaultValue.ts (88%) rename frontend/app/src/{ => shared}/components/form/utils/getRelationshipParent.ts (74%) rename frontend/app/src/{ => shared}/components/form/utils/getRelationshipsForForm.ts (100%) rename frontend/app/src/{ => shared}/components/form/utils/isFieldDisabled.ts (86%) rename frontend/app/src/{ => shared}/components/form/utils/mutations/getCreateMutationFromFormData.ts (95%) rename frontend/app/src/{ => shared}/components/form/utils/mutations/getUpdateMutationFromFormData.ts (98%) rename frontend/app/src/{ => shared}/components/form/utils/updateFormFieldValue.ts (94%) rename frontend/app/src/{ => shared}/components/form/utils/validation.ts (86%) rename frontend/app/src/{ => shared}/components/inputs/checkbox.tsx (86%) rename frontend/app/src/{ => shared}/components/inputs/color-picker.tsx (90%) rename frontend/app/src/{ => shared}/components/inputs/date-picker.tsx (91%) rename frontend/app/src/{ => shared}/components/inputs/dropdown.tsx (92%) rename frontend/app/src/{ => shared}/components/inputs/enum.tsx (91%) rename frontend/app/src/{ => shared}/components/inputs/input.tsx (92%) rename frontend/app/src/{ => shared}/components/inputs/relationship-many.tsx (90%) rename frontend/app/src/{ => shared}/components/inputs/relationship-one.tsx (93%) rename frontend/app/src/{ => shared}/components/inputs/select.tsx (100%) rename frontend/app/src/{ => shared}/components/layouts/item-group.tsx (83%) rename frontend/app/src/{ => shared}/components/list.test.tsx (99%) rename frontend/app/src/{ => shared}/components/list.tsx (88%) rename frontend/app/src/{ => shared}/components/menu/object-details-button.tsx (87%) rename frontend/app/src/{ => shared}/components/menu/object-help-button.tsx (88%) rename frontend/app/src/{ => shared}/components/modals/modal-confirm.tsx (97%) rename frontend/app/src/{ => shared}/components/modals/modal-delete-object.tsx (93%) rename frontend/app/src/{ => shared}/components/modals/modal-delete.tsx (98%) rename frontend/app/src/{ => shared}/components/modals/modal-success.tsx (97%) rename frontend/app/src/{ => shared}/components/modals/modal.tsx (100%) rename frontend/app/src/{ => shared}/components/notifications.tsx (89%) rename frontend/app/src/{ => shared}/components/search/queries/get-doc-results.ts (90%) rename frontend/app/src/{ => shared}/components/search/search-actions.tsx (90%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-context.ts (100%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-dialog.tsx (89%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-empty.tsx (80%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-group.tsx (90%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-input.tsx (86%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-item.tsx (80%) rename frontend/app/src/{ => shared}/components/search/search-anywhere-trigger.tsx (88%) rename frontend/app/src/{ => shared}/components/search/search-anywhere.tsx (80%) rename frontend/app/src/{ => shared}/components/search/search-docs.tsx (79%) rename frontend/app/src/{ => shared}/components/search/search-nodes.tsx (89%) rename frontend/app/src/{ => shared}/components/skeleton.tsx (86%) rename frontend/app/src/{ => shared}/components/stats/multiple-progress-bar.tsx (91%) rename frontend/app/src/{ => shared}/components/stats/progress-bar-chart.tsx (95%) rename frontend/app/src/{ => shared}/components/table/list.tsx (100%) rename frontend/app/src/{ => shared}/components/table/property-list.tsx (96%) rename frontend/app/src/{ => shared}/components/table/table.tsx (97%) rename frontend/app/src/{ => shared}/components/tabs-routes.tsx (93%) rename frontend/app/src/{ => shared}/components/tabs.tsx (94%) rename frontend/app/src/{ => shared}/components/time-selector.tsx (95%) rename frontend/app/src/{ => shared}/components/ui/accordion.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/alert.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/badge-copy.tsx (100%) rename frontend/app/src/{ => shared}/components/ui/badge.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/breadcrumb.tsx (95%) rename frontend/app/src/{ => shared}/components/ui/card.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/combobox-legacy.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/combobox.tsx (91%) rename frontend/app/src/{ => shared}/components/ui/command.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/divider.tsx (89%) rename frontend/app/src/{ => shared}/components/ui/dropdown-menu.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/form.tsx (94%) rename frontend/app/src/{ => shared}/components/ui/id.tsx (85%) rename frontend/app/src/{ => shared}/components/ui/input.tsx (74%) rename frontend/app/src/{ => shared}/components/ui/kbd.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/label.tsx (94%) rename frontend/app/src/{ => shared}/components/ui/link.tsx (87%) rename frontend/app/src/{ => shared}/components/ui/pagination.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/password-input.tsx (88%) rename frontend/app/src/{ => shared}/components/ui/popover.tsx (98%) rename frontend/app/src/{ => shared}/components/ui/pulse.tsx (88%) rename frontend/app/src/{ => shared}/components/ui/resizable.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/scroll-area.tsx (97%) rename frontend/app/src/{ => shared}/components/ui/search-input.tsx (94%) rename frontend/app/src/{ => shared}/components/ui/spinner.tsx (96%) rename frontend/app/src/{ => shared}/components/ui/style.ts (100%) rename frontend/app/src/{ => shared}/components/ui/tooltip.tsx (95%) rename frontend/app/src/{ => shared}/components/ui/transition.tsx (100%) rename frontend/app/src/{ => shared}/components/ui/tree-sheleton.tsx (83%) rename frontend/app/src/{ => shared}/components/ui/tree.tsx (98%) rename frontend/app/src/{ => shared}/hooks/useAuth.tsx (95%) rename frontend/app/src/{ => shared}/hooks/useCodeMirror.ts (100%) rename frontend/app/src/{ => shared}/hooks/useDebounce.ts (100%) rename frontend/app/src/{ => shared}/hooks/useFilters.ts (94%) rename frontend/app/src/{ => shared}/hooks/useLocalStorage.ts (100%) rename frontend/app/src/{ => shared}/hooks/useObjectDetails.ts (89%) rename frontend/app/src/{ => shared}/hooks/useObjectItems.ts (91%) rename frontend/app/src/{ => shared}/hooks/usePagination.ts (96%) rename frontend/app/src/{ => shared}/hooks/usePrevious.ts (100%) rename frontend/app/src/{ => shared}/hooks/useQuery.ts (94%) rename frontend/app/src/{ => shared}/hooks/useSchema.ts (97%) rename frontend/app/src/{ => shared}/hooks/useTitle.ts (100%) rename frontend/app/src/{state => shared/stores}/index.ts (100%) rename frontend/app/src/{state/atoms => shared/stores}/state.atom.ts (100%) rename frontend/app/src/{state/atoms => shared/stores}/time.atom.ts (100%) rename frontend/app/src/{ => shared}/utils/array.ts (100%) rename frontend/app/src/{ => shared}/utils/common.ts (100%) rename frontend/app/src/{ => shared}/utils/date.ts (100%) rename frontend/app/src/{ => shared}/utils/handlebars.ts (100%) rename frontend/app/src/{ => shared}/utils/number.ts (100%) rename frontend/app/src/{ => shared}/utils/string.tsx (100%) diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index c057b8239e..8e7464f183 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -5,9 +5,9 @@ import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { AuthProvider } from "@/hooks/useAuth"; +import { AuthProvider } from "@/shared/hooks/useAuth"; import ErrorFallback from "@/screens/errors/error-fallback"; -import { store } from "@/state"; +import { store } from "@/shared/stores"; import { ApolloProvider } from "@apollo/client"; import { addCollection } from "@iconify-icon/react"; import mdiIcons from "@iconify-json/mdi/icons.json"; diff --git a/frontend/app/src/app/root.tsx b/frontend/app/src/app/root.tsx index 5ea3da95c3..f49587c7d3 100644 --- a/frontend/app/src/app/root.tsx +++ b/frontend/app/src/app/root.tsx @@ -1,8 +1,8 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { Config, configState } from "@/state/atoms/config.atom"; -import { fetchUrl } from "@/utils/fetch"; +import { Config, configState } from "@/config/config.atom"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { useSetAtom } from "jotai"; import { ReactNode, useEffect, useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index 946427666b..868dacc766 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,10 +1,10 @@ import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { RequireAuth } from "@/hooks/useAuth"; +import { RequireAuth } from "@/shared/hooks/useAuth"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import queryString from "query-string"; import { Navigate, Outlet, UIMatch, createBrowserRouter } from "react-router-dom"; import { QueryParamProvider } from "use-query-params"; diff --git a/frontend/app/src/images/Infrahub-SVG-hori.svg b/frontend/app/src/assets/Infrahub-SVG-hori.svg similarity index 100% rename from frontend/app/src/images/Infrahub-SVG-hori.svg rename to frontend/app/src/assets/Infrahub-SVG-hori.svg diff --git a/frontend/app/src/images/Infrahub-SVG-verti.svg b/frontend/app/src/assets/Infrahub-SVG-verti.svg similarity index 100% rename from frontend/app/src/images/Infrahub-SVG-verti.svg rename to frontend/app/src/assets/Infrahub-SVG-verti.svg diff --git a/frontend/app/src/images/Infrahub.png b/frontend/app/src/assets/Infrahub.png similarity index 100% rename from frontend/app/src/images/Infrahub.png rename to frontend/app/src/assets/Infrahub.png diff --git a/frontend/app/src/images/icons/proposed-change-checks-failure.svg b/frontend/app/src/assets/icons/proposed-change-checks-failure.svg similarity index 100% rename from frontend/app/src/images/icons/proposed-change-checks-failure.svg rename to frontend/app/src/assets/icons/proposed-change-checks-failure.svg diff --git a/frontend/app/src/images/icons/proposed-change-checks-success.svg b/frontend/app/src/assets/icons/proposed-change-checks-success.svg similarity index 100% rename from frontend/app/src/images/icons/proposed-change-checks-success.svg rename to frontend/app/src/assets/icons/proposed-change-checks-success.svg diff --git a/frontend/app/src/images/icons/proposed-change-checks-unknown.svg b/frontend/app/src/assets/icons/proposed-change-checks-unknown.svg similarity index 100% rename from frontend/app/src/images/icons/proposed-change-checks-unknown.svg rename to frontend/app/src/assets/icons/proposed-change-checks-unknown.svg diff --git a/frontend/app/src/images/icons/tasks-status.svg b/frontend/app/src/assets/icons/tasks-status.svg similarity index 100% rename from frontend/app/src/images/icons/tasks-status.svg rename to frontend/app/src/assets/icons/tasks-status.svg diff --git a/frontend/app/src/images/infrahub-logo.svg b/frontend/app/src/assets/infrahub-logo.svg similarity index 100% rename from frontend/app/src/images/infrahub-logo.svg rename to frontend/app/src/assets/infrahub-logo.svg diff --git a/frontend/app/src/state/atoms/config.atom.ts b/frontend/app/src/config/config.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/config.atom.ts rename to frontend/app/src/config/config.atom.ts diff --git a/frontend/app/src/pages/auth-callback.tsx b/frontend/app/src/pages/auth-callback.tsx index ececbaddb2..af1318cd5c 100644 --- a/frontend/app/src/pages/auth-callback.tsx +++ b/frontend/app/src/pages/auth-callback.tsx @@ -1,8 +1,8 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { configState } from "@/state/atoms/config.atom"; -import { fetchUrl } from "@/utils/fetch"; +import { configState } from "@/config/config.atom"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; import { Navigate, useParams, useSearchParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/branches/details.tsx b/frontend/app/src/pages/branches/details.tsx index b37dcbc855..0288fb05b8 100644 --- a/frontend/app/src/pages/branches/details.tsx +++ b/frontend/app/src/pages/branches/details.tsx @@ -1,17 +1,17 @@ -import { Tabs } from "@/components/tabs"; +import { Tabs } from "@/shared/components/tabs"; import { DIFF_TABS } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; import { NodeDiff } from "@/screens/diff/node-diff"; -import { Badge } from "@/components/ui/badge"; -import { Spinner } from "@/components/ui/spinner"; -import { useTitle } from "@/hooks/useTitle"; +import { Badge } from "@/shared/components/ui/badge"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useTitle } from "@/shared/hooks/useTitle"; import { BranchDetails } from "@/screens/branches/branch-details"; import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; import Content from "@/screens/layout/content"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { constructPath } from "@/utils/fetch"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { useAtomValue } from "jotai"; import { Navigate, useParams } from "react-router-dom"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/pages/graphql/index.tsx b/frontend/app/src/pages/graphql/index.tsx index 2b2f405c9f..da1ccdcd46 100644 --- a/frontend/app/src/pages/graphql/index.tsx +++ b/frontend/app/src/pages/graphql/index.tsx @@ -5,8 +5,8 @@ import { useAtomValue } from "jotai"; import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { QSP } from "@/config/qsp"; import "@graphiql/plugin-explorer/dist/style.css"; diff --git a/frontend/app/src/pages/graphql/redirect-to-graphql-sandbox-page.tsx b/frontend/app/src/pages/graphql/redirect-to-graphql-sandbox-page.tsx index 7c859144fb..0d5c249d56 100644 --- a/frontend/app/src/pages/graphql/redirect-to-graphql-sandbox-page.tsx +++ b/frontend/app/src/pages/graphql/redirect-to-graphql-sandbox-page.tsx @@ -1,4 +1,4 @@ -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Navigate, useLocation, useParams } from "react-router-dom"; const RedirectToGraphqlSandboxPage = () => { diff --git a/frontend/app/src/pages/homepage.tsx b/frontend/app/src/pages/homepage.tsx index 85687266d4..e763e0c503 100644 --- a/frontend/app/src/pages/homepage.tsx +++ b/frontend/app/src/pages/homepage.tsx @@ -1,4 +1,4 @@ -import { Card } from "@/components/ui/card"; +import { Card } from "@/shared/components/ui/card"; import Content from "@/screens/layout/content"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/pages/ipam/layout.tsx b/frontend/app/src/pages/ipam/layout.tsx index f408cbc9fe..fa30dc1559 100644 --- a/frontend/app/src/pages/ipam/layout.tsx +++ b/frontend/app/src/pages/ipam/layout.tsx @@ -1,4 +1,4 @@ -import { ScrollArea } from "@/components/ui/scroll-area"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; import Content from "@/screens/layout/content"; import { Outlet } from "react-router-dom"; import IpNamespaceSelector from "../../screens/ipam/ip-namespace-selector"; diff --git a/frontend/app/src/pages/login.tsx b/frontend/app/src/pages/login.tsx index c108b17490..738a65220f 100644 --- a/frontend/app/src/pages/login.tsx +++ b/frontend/app/src/pages/login.tsx @@ -1,5 +1,5 @@ -import { useAuth } from "@/hooks/useAuth"; -import InfrahubLogo from "@/images/Infrahub-SVG-hori.svg?react"; +import { useAuth } from "@/shared/hooks/useAuth"; +import InfrahubLogo from "@/assets/Infrahub-SVG-hori.svg?react"; import { Login } from "@/screens/authentification/login"; import { Navigate, useLocation } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index dbd2b51e36..174fa60808 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -1,6 +1,6 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import NoDataFound from "@/screens/errors/no-data-found"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import GraphqlQueryDetailsCard from "@/screens/graphql/details/graphql-query-details-card"; @@ -10,8 +10,8 @@ import { Permission } from "@/screens/permission/types"; import { getPermission } from "@/screens/permission/utils"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/pages/objects/layout.tsx b/frontend/app/src/pages/objects/layout.tsx index c961002e67..b4ba4ec238 100644 --- a/frontend/app/src/pages/objects/layout.tsx +++ b/frontend/app/src/pages/objects/layout.tsx @@ -1,12 +1,12 @@ -import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/components/ui/resizable"; -import { ScrollArea } from "@/components/ui/scroll-area"; +import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/shared/components/ui/resizable"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; import NoDataFound from "@/screens/errors/no-data-found"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { HierarchicalTree } from "@/screens/objects/hierarchical-tree"; import ObjectHeader from "@/screens/objects/object-header"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { stateAtom } from "@/state/atoms/state.atom"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { stateAtom } from "@/shared/stores/state.atom"; import { useAtomValue } from "jotai"; import { Outlet, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/object-details.tsx b/frontend/app/src/pages/objects/object-details.tsx index da0fd2eb82..bafbcd2fe4 100644 --- a/frontend/app/src/pages/objects/object-details.tsx +++ b/frontend/app/src/pages/objects/object-details.tsx @@ -1,5 +1,5 @@ import { ARTIFACT_OBJECT, GRAPHQL_QUERY_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ArtifactsDetails from "@/screens/artifacts/object-item-details-paginated"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; @@ -7,8 +7,8 @@ import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemDetails from "@/screens/object-item-details/object-item-details-paginated"; import ObjectItems from "@/screens/object-items/object-items-paginated"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Navigate, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/object-items.tsx b/frontend/app/src/pages/objects/object-items.tsx index 0f963658c1..b90730bbd3 100644 --- a/frontend/app/src/pages/objects/object-items.tsx +++ b/frontend/app/src/pages/objects/object-items.tsx @@ -1,6 +1,6 @@ import ErrorScreen from "@/screens/errors/error-screen"; import ObjectItems from "@/screens/object-items/object-items-paginated"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/profile.tsx b/frontend/app/src/pages/profile.tsx index d48642bdab..a649c6539d 100644 --- a/frontend/app/src/pages/profile.tsx +++ b/frontend/app/src/pages/profile.tsx @@ -1,6 +1,6 @@ -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import { UserProfilePage } from "@/screens/user-profile/user-profile"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Navigate } from "react-router-dom"; export function Component() { diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index 1dece636be..9872ca58ee 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -1,16 +1,16 @@ -import { Tabs } from "@/components/tabs"; +import { Tabs } from "@/shared/components/tabs"; import { DIFF_TABS, PROPOSED_CHANGES_OBJECT, TASK_OBJECT, TASK_TAB } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import useQuery from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; import { Checks } from "@/screens/diff/checks/checks"; import { NodeDiff } from "@/screens/diff/node-diff"; import { GET_PROPOSED_CHANGE_DETAILS } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails"; -import { ObjectHelpButton } from "@/components/menu/object-help-button"; -import { Badge } from "@/components/ui/badge"; -import { useSchema } from "@/hooks/useSchema"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Badge } from "@/shared/components/ui/badge"; +import { useSchema } from "@/shared/hooks/useSchema"; import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; @@ -21,9 +21,9 @@ import { ProposedChangeDetails } from "@/screens/proposed-changes/proposed-chang import { TaskItemDetails } from "@/screens/tasks/task-item-details"; import { TaskItems } from "@/screens/tasks/task-items"; import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { constructPath } from "@/utils/fetch"; -import { getObjectDetailsUrl } from "@/utils/objects"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { Link, useLocation, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/proposed-changes/new.tsx b/frontend/app/src/pages/proposed-changes/new.tsx index df2af24aa7..b23d1bd6c6 100644 --- a/frontend/app/src/pages/proposed-changes/new.tsx +++ b/frontend/app/src/pages/proposed-changes/new.tsx @@ -1,6 +1,6 @@ -import { Card } from "@/components/ui/card"; +import { Card } from "@/shared/components/ui/card"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import Content from "@/screens/layout/content"; diff --git a/frontend/app/src/pages/resource-manager/index.tsx b/frontend/app/src/pages/resource-manager/index.tsx index 2f37b75dea..b433f9eee2 100644 --- a/frontend/app/src/pages/resource-manager/index.tsx +++ b/frontend/app/src/pages/resource-manager/index.tsx @@ -3,7 +3,7 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItems from "@/screens/object-items/object-items-paginated"; import ObjectHeader from "@/screens/objects/object-header"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { genericsState } from "@/state/atoms/schema.atom"; +import { genericsState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai/index"; const ResourceManagerPage = () => { diff --git a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx index c25fa9a2c1..d6735a99ff 100644 --- a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx @@ -1,15 +1,15 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Skeleton } from "@/components/skeleton"; -import { Table } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import { Card } from "@/components/ui/card"; -import { Pagination } from "@/components/ui/pagination"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Skeleton } from "@/shared/components/skeleton"; +import { Table } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card } from "@/shared/components/ui/card"; +import { Pagination } from "@/shared/components/ui/pagination"; import { QSP } from "@/config/qsp"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { RESOURCE_POOL_ALLOCATED_KIND } from "@/screens/resource-manager/constants"; import { GET_RESOURCE_POOL_ALLOCATED } from "@/screens/resource-manager/graphql/resource-pool"; -import { constructPath } from "@/utils/fetch"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx index 0173a920e7..d55121afcc 100644 --- a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx @@ -1,10 +1,10 @@ -import ObjectEditSlideOverTrigger from "@/components/form/object-edit-slide-over-trigger"; -import { ObjectHelpButton } from "@/components/menu/object-help-button"; -import { Property, PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { Card, CardWithBorder } from "@/components/ui/card"; -import { Link } from "@/components/ui/link"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; +import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Property, PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { Link } from "@/shared/components/ui/link"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; @@ -20,10 +20,10 @@ import { GET_RESOURCE_POOL_UTILIZATION, } from "@/screens/resource-manager/graphql/resource-pool"; import ResourceSelector, { ResourceProps } from "@/screens/resource-manager/resource-selector"; -import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; -import { ObjectAttributeValue } from "@/utils/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/utils/objects"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Outlet, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index 82b3e28e63..e67b2b02b8 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -1,5 +1,5 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import Content from "@/screens/layout/content"; diff --git a/frontend/app/src/pages/schema.tsx b/frontend/app/src/pages/schema.tsx index 6f5cb04938..f06b5dac57 100644 --- a/frontend/app/src/pages/schema.tsx +++ b/frontend/app/src/pages/schema.tsx @@ -1,9 +1,9 @@ -import { ScrollArea } from "@/components/ui/scroll-area"; -import { useTitle } from "@/hooks/useTitle"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; +import { useTitle } from "@/shared/hooks/useTitle"; import Content from "@/screens/layout/content"; import { SchemaSelector } from "@/screens/schema/schema-selector"; import { SchemaViewerStack } from "@/screens/schema/schema-viewer"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai"; function SchemaPage() { diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index 733ddc5b4a..368df000b3 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,13 +1,13 @@ -import { Link } from "@/components/ui/link"; +import { Link } from "@/shared/components/ui/link"; import { TASK_OBJECT } from "@/config/constants"; import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; -import useQuery from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { TaskItemDetails } from "@/screens/tasks/task-item-details"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/artifacts/generate.tsx b/frontend/app/src/screens/artifacts/generate.tsx index 3db7f541e4..d14fd11848 100644 --- a/frontend/app/src/screens/artifacts/generate.tsx +++ b/frontend/app/src/screens/artifacts/generate.tsx @@ -1,10 +1,10 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { useAuth } from "@/hooks/useAuth"; -import { classNames } from "@/utils/common"; -import { fetchUrl, getUrlWithQsp } from "@/utils/fetch"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { classNames } from "@/shared/utils/common"; +import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { ArrowPathIcon } from "@heroicons/react/24/outline"; import { useState } from "react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx index 2c0a91b201..a188c66fa2 100644 --- a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx @@ -1,14 +1,6 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; -import MetaDetailsTooltip from "@/components/display/meta-details-tooltips"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import { File } from "@/components/file"; -import { Tabs } from "@/components/tabs"; import { CONFIG } from "@/config/config"; import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; import { Generate } from "@/screens/artifacts/generate"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; @@ -17,19 +9,27 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; import RelationshipDetails from "@/screens/object-item-details/relationship-details-paginated"; import { RelationshipsDetails } from "@/screens/object-item-details/relationships-details-paginated"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { getPermission } from "@/screens/permission/utils"; -import { showMetaEditState } from "@/state/atoms/metaEditFieldDetails.atom"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; -import { metaEditFieldDetailsState } from "@/state/atoms/showMetaEdit.atom copy"; -import { classNames } from "@/utils/common"; -import { getObjectItemDisplayValue } from "@/utils/getObjectItemDisplayValue"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; +import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import { File } from "@/shared/components/file"; +import { Tabs } from "@/shared/components/tabs"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; +import { classNames } from "@/shared/utils/common"; +import { getObjectItemDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, getTabs, -} from "@/utils/getSchemaObjectColumns"; +} from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { LockClosedIcon, RectangleGroupIcon } from "@heroicons/react/24/outline"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/authentification/login-sso-buttons.tsx b/frontend/app/src/screens/authentification/login-sso-buttons.tsx index 0a9225a572..df31ca3477 100644 --- a/frontend/app/src/screens/authentification/login-sso-buttons.tsx +++ b/frontend/app/src/screens/authentification/login-sso-buttons.tsx @@ -1,6 +1,6 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; -import { Provider } from "@/state/atoms/config.atom"; -import { classNames } from "@/utils/common"; +import { Provider } from "@/config/config.atom"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useLocation } from "react-router-dom"; diff --git a/frontend/app/src/screens/authentification/login.tsx b/frontend/app/src/screens/authentification/login.tsx index d595bb1431..041d805783 100644 --- a/frontend/app/src/screens/authentification/login.tsx +++ b/frontend/app/src/screens/authentification/login.tsx @@ -1,12 +1,12 @@ -import { Button } from "@/components/buttons/button-primitive"; -import InputField from "@/components/form/fields/input.field"; -import PasswordInputField from "@/components/form/fields/password-input.field"; -import { isRequired } from "@/components/form/utils/validation"; -import { Form, FormSubmit } from "@/components/ui/form"; -import { useAuth } from "@/hooks/useAuth"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import InputField from "@/shared/components/form/fields/input.field"; +import PasswordInputField from "@/shared/components/form/fields/password-input.field"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; +import { useAuth } from "@/shared/hooks/useAuth"; import { LoginWithSSOButtons } from "@/screens/authentification/login-sso-buttons"; -import { configState } from "@/state/atoms/config.atom"; -import { classNames } from "@/utils/common"; +import { configState } from "@/config/config.atom"; +import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx index d5d4d4cb25..d98f343157 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx @@ -1,12 +1,12 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_MERGE_WORKFLOW } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_MERGE } from "@/shared/api/graphql/mutations/branches/mergeBranch"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx index 32e418848f..f39c238b3f 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx @@ -1,12 +1,12 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx index 9f2389bb8f..606721d3d0 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx @@ -1,12 +1,12 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_VALIDATE } from "@/shared/api/graphql/mutations/branches/validateBranch"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/branches/branch-details.tsx b/frontend/app/src/screens/branches/branch-details.tsx index 35cdee8f57..e863c582f9 100644 --- a/frontend/app/src/screens/branches/branch-details.tsx +++ b/frontend/app/src/screens/branches/branch-details.tsx @@ -1,23 +1,23 @@ -import { Button, LinkButton } from "@/components/buttons/button-primitive"; -import Accordion from "@/components/display/accordion"; -import { Badge } from "@/components/display/badge"; -import { DateDisplay } from "@/components/display/date-display"; -import ModalDelete from "@/components/modals/modal-delete"; -import { List } from "@/components/table/list"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; +import Accordion from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/display/badge"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { List } from "@/shared/components/table/list"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { constructPath, getCurrentQsp } from "@/utils/fetch"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; import { PlusIcon, TrashIcon } from "@heroicons/react/24/outline"; import { useAtom } from "jotai"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/branches/branches-items.tsx b/frontend/app/src/screens/branches/branches-items.tsx index b9d4b6cc81..ef3328d66f 100644 --- a/frontend/app/src/screens/branches/branches-items.tsx +++ b/frontend/app/src/screens/branches/branches-items.tsx @@ -1,11 +1,11 @@ -import { DateDisplay } from "@/components/display/date-display"; -import { Tooltip } from "@/components/ui/tooltip"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; -import { useLazyQuery } from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; +import { useLazyQuery } from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import Content from "@/screens/layout/content"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { constructPath } from "@/utils/fetch"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import * as R from "ramda"; diff --git a/frontend/app/src/state/atoms/branches.atom.ts b/frontend/app/src/screens/branches/branches.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/branches.atom.ts rename to frontend/app/src/screens/branches/branches.atom.ts diff --git a/frontend/app/src/utils/branches.ts b/frontend/app/src/screens/branches/branches.ts similarity index 100% rename from frontend/app/src/utils/branches.ts rename to frontend/app/src/screens/branches/branches.ts diff --git a/frontend/app/src/screens/branches/diff.tsx b/frontend/app/src/screens/branches/diff.tsx index 0ad6ad100b..7b4e2f9ccd 100644 --- a/frontend/app/src/screens/branches/diff.tsx +++ b/frontend/app/src/screens/branches/diff.tsx @@ -1,6 +1,6 @@ -import DatetimeField from "@/components/form/fields/datetime.field"; -import { Tabs } from "@/components/tabs"; -import { Form, FormSubmit } from "@/components/ui/form"; +import DatetimeField from "@/shared/components/form/fields/datetime.field"; +import { Tabs } from "@/shared/components/tabs"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { DIFF_TABS } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { DateTimeParam, StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/screens/branches/get-current-branch.test.ts b/frontend/app/src/screens/branches/get-current-branch.test.ts index 3d4a3d61b7..a65adcd1d8 100644 --- a/frontend/app/src/screens/branches/get-current-branch.test.ts +++ b/frontend/app/src/screens/branches/get-current-branch.test.ts @@ -1,6 +1,6 @@ import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; -import { store } from "@/state"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { store } from "@/shared/stores"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateBranch } from "../../../tests/fake/branch"; diff --git a/frontend/app/src/screens/branches/get-current-branch.ts b/frontend/app/src/screens/branches/get-current-branch.ts index a0d1fc3c82..d4f3b0944c 100644 --- a/frontend/app/src/screens/branches/get-current-branch.ts +++ b/frontend/app/src/screens/branches/get-current-branch.ts @@ -1,6 +1,6 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { store } from "@/state"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { store } from "@/shared/stores"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; export const getCurrentBranchName = () => { const currentBranch = store.get(currentBranchAtom); diff --git a/frontend/app/src/screens/branches/task-display.tsx b/frontend/app/src/screens/branches/task-display.tsx index 7b2b95cf92..f552c0e640 100644 --- a/frontend/app/src/screens/branches/task-display.tsx +++ b/frontend/app/src/screens/branches/task-display.tsx @@ -1,10 +1,10 @@ -import Accordion from "@/components/display/accordion"; -import { DateDisplay } from "@/components/display/date-display"; -import { Badge } from "@/components/ui/badge"; +import Accordion from "@/shared/components/display/accordion"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { Badge } from "@/shared/components/ui/badge"; import { TASK_OBJECT } from "@/config/constants"; import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; -import useQuery from "@/hooks/useQuery"; -import { classNames } from "@/utils/common"; +import useQuery from "@/shared/hooks/useQuery"; +import { classNames } from "@/shared/utils/common"; import ErrorScreen from "../errors/error-screen"; import LoadingScreen from "../loading-screen/loading-screen"; import { getSeverityBadge, tLog } from "../tasks/logs"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx index ae0a2141b6..6a5eec1527 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx @@ -1,7 +1,7 @@ -import { Button } from "@/components/buttons/button"; -import { AddComment } from "@/components/conversations/add-comment"; -import { Thread } from "@/components/conversations/thread"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { PROPOSED_CHANGES_ARTIFACT_THREAD_OBJECT, @@ -12,15 +12,15 @@ import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesArtifactsThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { fetchStream } from "@/utils/fetch"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { fetchStream } from "@/shared/api/rest/fetch"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { PencilIcon } from "@heroicons/react/24/outline"; import { formatISO } from "date-fns"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx index 8e3d6f3d76..5029dc53bf 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,11 +1,11 @@ -import Accordion from "@/components/display/accordion"; -import { Badge } from "@/components/display/badge"; +import Accordion from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/display/badge"; import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { schemaState } from "@/state/atoms/schema.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx index 5c2ca897f8..fd2e9465fb 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx @@ -1,10 +1,10 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { fetchUrl, getUrlWithQsp } from "@/utils/fetch"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { useAtom } from "jotai"; import { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from "react"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/checks/check.tsx b/frontend/app/src/screens/diff/checks/check.tsx index 103d9ef288..337047ea9b 100644 --- a/frontend/app/src/screens/diff/checks/check.tsx +++ b/frontend/app/src/screens/diff/checks/check.tsx @@ -1,16 +1,16 @@ -import { MoreButton } from "@/components/buttons/more-button"; -import Accordion from "@/components/display/accordion"; -import { DateDisplay } from "@/components/display/date-display"; -import { PopOver } from "@/components/display/popover"; -import { CodeEditor } from "@/components/editor/code-editor"; -import { Skeleton } from "@/components/skeleton"; -import { List } from "@/components/table/list"; -import { Tooltip } from "@/components/ui/tooltip"; -import { GET_CHECKS } from "@/shared/api/graphql/queries/diff/getCheckDetails"; -import useQuery from "@/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; -import { schemaKindLabelState } from "@/state/atoms/schemaKindLabel.atom"; -import { classNames } from "@/utils/common"; +import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; +import { GET_CHECKS } from "@/shared/api/graphql/queries/diff/getCheckDetails"; +import { MoreButton } from "@/shared/components/buttons/more-button"; +import Accordion from "@/shared/components/display/accordion"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { PopOver } from "@/shared/components/display/popover"; +import { CodeEditor } from "@/shared/components/editor/code-editor"; +import { Skeleton } from "@/shared/components/skeleton"; +import { List } from "@/shared/components/table/list"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import useQuery from "@/shared/hooks/useQuery"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { Conflict } from "./conflict"; diff --git a/frontend/app/src/screens/diff/checks/checks-summary.tsx b/frontend/app/src/screens/diff/checks/checks-summary.tsx index 60caf5bbd2..58a2b585db 100644 --- a/frontend/app/src/screens/diff/checks/checks-summary.tsx +++ b/frontend/app/src/screens/diff/checks/checks-summary.tsx @@ -1,20 +1,20 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Retry } from "@/components/buttons/retry"; -import { PieChart } from "@/components/display/pie-chart"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { CHECKS_LABEL, PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getValidatorsStats } from "@/screens/proposed-changes/checks"; +import { genericsState } from "@/screens/schema/schema.atom"; +import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { runCheck } from "@/shared/api/graphql/mutations/diff/runCheck"; -import { useAuth } from "@/hooks/useAuth"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState } from "@/state/atoms/schema.atom"; -import { schemaKindLabelState } from "@/state/atoms/schemaKindLabel.atom"; -import { getValidatorsStats } from "@/utils/checks"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Retry } from "@/shared/components/buttons/retry"; +import { PieChart } from "@/shared/components/display/pie-chart"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/diff/checks/checks.tsx b/frontend/app/src/screens/diff/checks/checks.tsx index 1fc1f6803b..40db147355 100644 --- a/frontend/app/src/screens/diff/checks/checks.tsx +++ b/frontend/app/src/screens/diff/checks/checks.tsx @@ -1,5 +1,5 @@ import { GET_VALIDATORS } from "@/shared/api/graphql/queries/diff/getValidators"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { forwardRef, useImperativeHandle } from "react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/diff/checks/conflict.tsx b/frontend/app/src/screens/diff/checks/conflict.tsx index 7b870868ac..f0e23f2e1e 100644 --- a/frontend/app/src/screens/diff/checks/conflict.tsx +++ b/frontend/app/src/screens/diff/checks/conflict.tsx @@ -1,20 +1,20 @@ -import { ToggleButtons } from "@/components/buttons/toggle-buttons"; -import { Badge } from "@/components/display/badge"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Id } from "@/components/ui/id"; -import { Link } from "@/components/ui/link"; -import { Tooltip } from "@/components/ui/tooltip"; import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { diffContent, getBadgeType } from "@/screens/diff/diff"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { diffContent, getBadgeType } from "@/utils/diff"; -import { constructPath } from "@/utils/fetch"; -import { getObjectDetailsUrl } from "@/utils/objects"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { ToggleButtons } from "@/shared/components/buttons/toggle-buttons"; +import { Badge } from "@/shared/components/display/badge"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Id } from "@/shared/components/ui/id"; +import { Link } from "@/shared/components/ui/link"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { ArrowTopRightOnSquareIcon, ChevronRightIcon } from "@heroicons/react/24/outline"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/diff/checks/validator-details.tsx b/frontend/app/src/screens/diff/checks/validator-details.tsx index 653046b24b..f1a8ad2e88 100644 --- a/frontend/app/src/screens/diff/checks/validator-details.tsx +++ b/frontend/app/src/screens/diff/checks/validator-details.tsx @@ -1,7 +1,7 @@ -import { Pagination } from "@/components/ui/pagination"; +import { Pagination } from "@/shared/components/ui/pagination"; import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; -import usePagination from "@/hooks/usePagination"; -import useQuery from "@/hooks/useQuery"; +import usePagination from "@/shared/hooks/usePagination"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; diff --git a/frontend/app/src/screens/diff/checks/validator.tsx b/frontend/app/src/screens/diff/checks/validator.tsx index afb13f3914..dd7f083aee 100644 --- a/frontend/app/src/screens/diff/checks/validator.tsx +++ b/frontend/app/src/screens/diff/checks/validator.tsx @@ -1,10 +1,10 @@ -import { MoreButton } from "@/components/buttons/more-button"; -import Accordion from "@/components/display/accordion"; -import { DateDisplay } from "@/components/display/date-display"; -import { DurationDisplay } from "@/components/display/duration-display"; -import { PopOver } from "@/components/display/popover"; -import { List } from "@/components/table/list"; -import { Tooltip } from "@/components/ui/tooltip"; +import { MoreButton } from "@/shared/components/buttons/more-button"; +import Accordion from "@/shared/components/display/accordion"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { DurationDisplay } from "@/shared/components/display/duration-display"; +import { PopOver } from "@/shared/components/display/popover"; +import { List } from "@/shared/components/table/list"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { Icon } from "@iconify-icon/react"; import { ValidatorDetails } from "./validator-details"; diff --git a/frontend/app/src/screens/diff/diff-badge.tsx b/frontend/app/src/screens/diff/diff-badge.tsx index 8b45446b0d..c738c59ca7 100644 --- a/frontend/app/src/screens/diff/diff-badge.tsx +++ b/frontend/app/src/screens/diff/diff-badge.tsx @@ -1,5 +1,5 @@ -import { Badge, BadgeProps } from "@/components/ui/badge"; -import { classNames } from "@/utils/common"; +import { Badge, BadgeProps } from "@/shared/components/ui/badge"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; export interface DiffBadgeProps extends BadgeProps { diff --git a/frontend/app/src/screens/diff/diff-tree.tsx b/frontend/app/src/screens/diff/diff-tree.tsx index 837c94ea6d..106a955891 100644 --- a/frontend/app/src/screens/diff/diff-tree.tsx +++ b/frontend/app/src/screens/diff/diff-tree.tsx @@ -1,6 +1,6 @@ -import { Tooltip } from "@/components/ui/tooltip"; -import { Tree, TreeItemProps, TreeProps } from "@/components/ui/tree"; -import { useSchema } from "@/hooks/useSchema"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; +import { useSchema } from "@/shared/hooks/useSchema"; import { DiffNode } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import { TREE_ROOT_ID } from "@/screens/ipam/constants"; diff --git a/frontend/app/src/utils/diff.tsx b/frontend/app/src/screens/diff/diff.tsx similarity index 90% rename from frontend/app/src/utils/diff.tsx rename to frontend/app/src/screens/diff/diff.tsx index b45ad478ae..df54c31a46 100644 --- a/frontend/app/src/utils/diff.tsx +++ b/frontend/app/src/screens/diff/diff.tsx @@ -1,7 +1,6 @@ -import { Badge } from "@/components/ui/badge"; -import { Tooltip } from "@/components/ui/tooltip"; import { NODE_PATH_EXCLUDELIST } from "@/config/constants"; -import { tDataDiffNode, tDataDiffNodePropertyChange } from "@/screens/diff/data-diff-node"; +import { Badge } from "@/shared/components/ui/badge"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { Icon } from "@iconify-icon/react"; export const displayValue = (value: any) => { @@ -31,7 +30,7 @@ const getValueTooltip = (value: any) => { // Display the values // (only new one for "added", only old ones for "deleted", and previous + new for "updated") export const diffContent: { [key: string]: any } = { - added: (property: tDataDiffNodePropertyChange) => { + added: (property: any) => { const { value } = property; const { new: newValue } = value; @@ -50,7 +49,7 @@ export const diffContent: { [key: string]: any } = { ); }, - removed: (property: tDataDiffNodePropertyChange) => { + removed: (property: any) => { const { value } = property; const { previous: previousValue } = value; @@ -69,7 +68,7 @@ export const diffContent: { [key: string]: any } = { ); }, - updated: (property: tDataDiffNodePropertyChange) => { + updated: (property: any) => { const { value } = property; const { new: newValue, previous: previousValue } = value; @@ -105,7 +104,7 @@ export const diffContent: { [key: string]: any } = { ); }, - conflict: (property: tDataDiffNodePropertyChange) => { + conflict: (property: any) => { const { value } = property; const { new: newValue, previous: previousValue } = value; @@ -144,7 +143,7 @@ export const diffContent: { [key: string]: any } = { }, }; -export const getThreadLabel = (node?: tDataDiffNode, currentBranch?: string, path?: string) => { +export const getThreadLabel = (node?: any, currentBranch?: string, path?: string) => { // Get main object name const objectName = node?.display_label && currentBranch && node?.display_label[currentBranch]; diff --git a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx index 711459d596..968a7e03df 100644 --- a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx @@ -1,8 +1,8 @@ -import { Button } from "@/components/buttons/button"; -import { AddComment } from "@/components/conversations/add-comment"; -import { Thread } from "@/components/conversations/thread"; -import Accordion from "@/components/display/accordion"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import Accordion from "@/shared/components/display/accordion"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, @@ -13,15 +13,15 @@ import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesFilesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { fetchStream } from "@/utils/fetch"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { fetchStream } from "@/shared/api/rest/fetch"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { PencilIcon } from "@heroicons/react/24/outline"; import { formatISO } from "date-fns"; diff --git a/frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx b/frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx index 1e1e9f5ebc..a11b8231ba 100644 --- a/frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx +++ b/frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx @@ -1,4 +1,4 @@ -import Accordion from "@/components/display/accordion"; +import Accordion from "@/shared/components/display/accordion"; import "react-diff-view/style/index.css"; import { FileContentDiff } from "./file-content-diff"; diff --git a/frontend/app/src/screens/diff/file-diff/files-diff.tsx b/frontend/app/src/screens/diff/file-diff/files-diff.tsx index cb0ba47ae1..cf2c64bb4c 100644 --- a/frontend/app/src/screens/diff/file-diff/files-diff.tsx +++ b/frontend/app/src/screens/diff/file-diff/files-diff.tsx @@ -3,8 +3,8 @@ import { QSP } from "@/config/qsp"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { fetchUrl, getUrlWithQsp } from "@/utils/fetch"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { useAtom } from "jotai"; import { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from "react"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/node-diff/comments.tsx b/frontend/app/src/screens/diff/node-diff/comments.tsx index c3c6edce50..d33ffa1235 100644 --- a/frontend/app/src/screens/diff/node-diff/comments.tsx +++ b/frontend/app/src/screens/diff/node-diff/comments.tsx @@ -1,20 +1,20 @@ -import { AddComment } from "@/components/conversations/add-comment"; -import { Thread } from "@/components/conversations/thread"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { getThreadLabel } from "@/screens/diff/diff"; +import { schemaState } from "@/screens/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesObjectThreadComments } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { getThreadLabel } from "@/utils/diff"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { formatISO } from "date-fns"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/diff/node-diff/conflict.tsx b/frontend/app/src/screens/diff/node-diff/conflict.tsx index 017c738289..ad4c7a4de6 100644 --- a/frontend/app/src/screens/diff/node-diff/conflict.tsx +++ b/frontend/app/src/screens/diff/node-diff/conflict.tsx @@ -1,13 +1,13 @@ -import { Checkbox } from "@/components/inputs/checkbox"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Badge } from "@/components/ui/badge"; +import { Checkbox } from "@/shared/components/inputs/checkbox"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Badge } from "@/shared/components/ui/badge"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/diff/node-diff/index.tsx b/frontend/app/src/screens/diff/node-diff/index.tsx index 3bc475dd6a..f7f3defa86 100644 --- a/frontend/app/src/screens/diff/node-diff/index.tsx +++ b/frontend/app/src/screens/diff/node-diff/index.tsx @@ -1,26 +1,26 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { DateDisplay } from "@/components/display/date-display"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Badge } from "@/components/ui/badge"; -import { Tooltip } from "@/components/ui/tooltip"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Badge } from "@/shared/components/ui/badge"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import DiffTree from "@/screens/diff/diff-tree"; import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { formatFullDate, formatRelativeTimeFromNow } from "@/utils/date"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { formatFullDate, formatRelativeTimeFromNow } from "@/shared/utils/date"; import { NetworkStatus, useMutation } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/diff/node-diff/node-property.tsx b/frontend/app/src/screens/diff/node-diff/node-property.tsx index b81181307c..6797c8fd83 100644 --- a/frontend/app/src/screens/diff/node-diff/node-property.tsx +++ b/frontend/app/src/screens/diff/node-diff/node-property.tsx @@ -1,8 +1,8 @@ -import { Badge } from "@/components/ui/badge"; +import { Badge } from "@/shared/components/ui/badge"; import { BadgeConflict } from "@/screens/diff/diff-badge"; import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; import { DiffRow, formatPropertyName, formatValue } from "@/screens/diff/node-diff/utils"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; import { Conflict } from "./conflict"; diff --git a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx b/frontend/app/src/screens/diff/node-diff/node-relationship.tsx index 7b6b983603..ec31e71006 100644 --- a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx +++ b/frontend/app/src/screens/diff/node-diff/node-relationship.tsx @@ -1,4 +1,4 @@ -import { Badge } from "@/components/ui/badge"; +import { Badge } from "@/shared/components/ui/badge"; import { DiffThread } from "@/screens/diff/node-diff/thread"; import { DiffRelationship, DiffStatus } from "@/screens/diff/node-diff/types"; import { DiffRow } from "@/screens/diff/node-diff/utils"; diff --git a/frontend/app/src/screens/diff/node-diff/node.tsx b/frontend/app/src/screens/diff/node-diff/node.tsx index a95d6c899a..52879634d6 100644 --- a/frontend/app/src/screens/diff/node-diff/node.tsx +++ b/frontend/app/src/screens/diff/node-diff/node.tsx @@ -1,10 +1,10 @@ -import Accordion from "@/components/display/accordion"; -import { Badge } from "@/components/ui/badge"; -import { Card } from "@/components/ui/card"; import type { DiffNode as DiffNodeType, PropertyType } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; -import { classNames } from "@/utils/common"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import Accordion from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card } from "@/shared/components/ui/card"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useEffect, useRef } from "react"; diff --git a/frontend/app/src/screens/diff/node-diff/thread.tsx b/frontend/app/src/screens/diff/node-diff/thread.tsx index 9e8c5a485f..8d89cd8190 100644 --- a/frontend/app/src/screens/diff/node-diff/thread.tsx +++ b/frontend/app/src/screens/diff/node-diff/thread.tsx @@ -1,18 +1,18 @@ -import { SidePanelTitle } from "@/components/display/sidepanel-title"; -import SlideOver from "@/components/display/slide-over"; -import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; +import { getThreadLabel, getThreadTitle } from "@/screens/diff/diff"; +import { schemaState } from "@/screens/schema/schema.atom"; import { getProposedChangesObjectThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads"; -import useQuery from "@/hooks/useQuery"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { getThreadLabel, getThreadTitle } from "@/utils/diff"; +import { SidePanelTitle } from "@/shared/components/display/sidepanel-title"; +import SlideOver from "@/shared/components/display/slide-over"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import { useContext, useState } from "react"; import { useParams } from "react-router-dom"; -import { Button } from "@/components/buttons/button-primitive"; import { getPermission } from "@/screens/permission/utils"; +import { Button } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; import { DiffContext } from "."; import { DiffComments } from "./comments"; diff --git a/frontend/app/src/screens/diff/node-diff/utils.tsx b/frontend/app/src/screens/diff/node-diff/utils.tsx index 87616fb54c..8d5348a244 100644 --- a/frontend/app/src/screens/diff/node-diff/utils.tsx +++ b/frontend/app/src/screens/diff/node-diff/utils.tsx @@ -1,7 +1,7 @@ -import Accordion from "@/components/display/accordion"; +import Accordion from "@/shared/components/display/accordion"; import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; -import { classNames, warnUnexpectedType } from "@/utils/common"; -import { capitalizeFirstLetter } from "@/utils/string"; +import { classNames, warnUnexpectedType } from "@/shared/utils/common"; +import { capitalizeFirstLetter } from "@/shared/utils/string"; import { ReactNode } from "react"; import { BadgeAdded, diff --git a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts index c6ea0d1e7f..4d95d1809f 100644 --- a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts +++ b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts @@ -1,4 +1,4 @@ -import { SelectOption } from "@/components/inputs/select"; +import { SelectOption } from "@/shared/components/inputs/select"; import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { components } from "@/shared/api/rest/types.generated"; import { RegisterOptions } from "react-hook-form"; diff --git a/frontend/app/src/screens/errors/error-fallback.tsx b/frontend/app/src/screens/errors/error-fallback.tsx index 216f32afb3..c41edf0c04 100644 --- a/frontend/app/src/screens/errors/error-fallback.tsx +++ b/frontend/app/src/screens/errors/error-fallback.tsx @@ -1,7 +1,7 @@ -import { Button } from "@/components/buttons/button-primitive"; -import Accordion from "@/components/display/accordion"; -import { Card } from "@/components/ui/card"; -import Kbd from "@/components/ui/kbd"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import Accordion from "@/shared/components/display/accordion"; +import { Card } from "@/shared/components/ui/card"; +import Kbd from "@/shared/components/ui/kbd"; import { Icon } from "@iconify-icon/react"; import { useEffect, useState } from "react"; import { useErrorBoundary } from "react-error-boundary"; diff --git a/frontend/app/src/screens/errors/error-screen.tsx b/frontend/app/src/screens/errors/error-screen.tsx index 87c7e4d7f5..b47ef0febb 100644 --- a/frontend/app/src/screens/errors/error-screen.tsx +++ b/frontend/app/src/screens/errors/error-screen.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { ReactElement } from "react"; diff --git a/frontend/app/src/screens/errors/unauthorized-screen.tsx b/frontend/app/src/screens/errors/unauthorized-screen.tsx index eddd97227f..8f4c970766 100644 --- a/frontend/app/src/screens/errors/unauthorized-screen.tsx +++ b/frontend/app/src/screens/errors/unauthorized-screen.tsx @@ -1,5 +1,5 @@ -import Accordion from "@/components/display/accordion"; -import { classNames } from "@/utils/common"; +import Accordion from "@/shared/components/display/accordion"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { ReactElement } from "react"; diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx index 1e64b0ef73..91cfcd52e9 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx @@ -1,18 +1,18 @@ -import { CopyToClipboard } from "@/components/buttons/copy-to-clipboard"; -import PropertiesPopover from "@/components/display/properties-popover"; -import ObjectEditSlideOverTrigger from "@/components/form/object-edit-slide-over-trigger"; -import { Property, PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { Card, CardWithBorder } from "@/components/ui/card"; -import { Link } from "@/components/ui/link"; -import { Tooltip } from "@/components/ui/tooltip"; +import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; +import PropertiesPopover from "@/shared/components/display/properties-popover"; +import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; +import { Property, PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { Link } from "@/shared/components/ui/link"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; import { Permission } from "@/screens/permission/types"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; -import { iNodeSchema } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; -import { AttributeType, ObjectAttributeValue } from "@/utils/getObjectItemDisplayValue"; -import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/utils/objects"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; type GraphqlQueryDetailsCardProps = { diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx b/frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx index 3a8c46fc17..7868d14532 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx @@ -1,4 +1,4 @@ -import { Skeleton } from "@/components/skeleton"; +import { Skeleton } from "@/shared/components/skeleton"; const GraphQLQueryDetailsPageSkeleton = () => { return ( diff --git a/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx b/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx index a8b5fc5b55..285c3144bd 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx @@ -1,8 +1,8 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { CopyToClipboard } from "@/components/buttons/copy-to-clipboard"; -import { GraphqlViewer } from "@/components/editor/graphql/graphql-viewer"; -import { Card, CardWithBorder } from "@/components/ui/card"; -import { constructPath } from "@/utils/fetch"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; +import { GraphqlViewer } from "@/shared/components/editor/graphql/graphql-viewer"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/groups/add-group-form.tsx b/frontend/app/src/screens/groups/add-group-form.tsx index 7dbd7b2710..d93fc7dea1 100644 --- a/frontend/app/src/screens/groups/add-group-form.tsx +++ b/frontend/app/src/screens/groups/add-group-form.tsx @@ -1,11 +1,11 @@ -import DynamicForm, { DynamicFormProps } from "@/components/form/dynamic-form"; -import { FormRelationshipValue, RelationshipManyValueFromUser } from "@/components/form/type"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; +import { FormRelationshipValue, RelationshipManyValueFromUser } from "@/shared/components/form/type"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; -import { iNodeSchema } from "@/state/atoms/schema.atom"; -import { pluralize } from "@/utils/string"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { pluralize } from "@/shared/utils/string"; import { toast } from "react-toastify"; interface AddGroupFormProps extends Omit { diff --git a/frontend/app/src/screens/groups/add-group-trigger-button.tsx b/frontend/app/src/screens/groups/add-group-trigger-button.tsx index 13799fcdd3..538721cf8b 100644 --- a/frontend/app/src/screens/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/screens/groups/add-group-trigger-button.tsx @@ -1,10 +1,10 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import AddGroupForm from "@/screens/groups/add-group-form"; import { GroupDataFromAPI } from "@/screens/groups/types"; -import { iNodeSchema } from "@/state/atoms/schema.atom"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Permission } from "../permission/types"; diff --git a/frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx b/frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx index f9d677b35b..516112ef14 100644 --- a/frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx +++ b/frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx @@ -1,6 +1,6 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import useFilters, { Filter } from "@/hooks/useFilters"; -import { classNames } from "@/utils/common"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import useFilters, { Filter } from "@/shared/hooks/useFilters"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useEffect, useRef } from "react"; diff --git a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx b/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx index c96fd74855..b3b58eae18 100644 --- a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx +++ b/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx @@ -1,6 +1,6 @@ -import { ButtonProps, ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; +import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { GroupsManager, GroupsManagerProps } from "@/screens/groups/groups-manager"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/groups/groups-manager.tsx b/frontend/app/src/screens/groups/groups-manager.tsx index 49cfa6db87..6dbcecd42f 100644 --- a/frontend/app/src/screens/groups/groups-manager.tsx +++ b/frontend/app/src/screens/groups/groups-manager.tsx @@ -1,7 +1,7 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { SearchInput } from "@/components/ui/search-input"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { SearchInput } from "@/shared/components/ui/search-input"; import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import AddGroupTriggerButton from "@/screens/groups/add-group-trigger-button"; @@ -9,8 +9,8 @@ import ObjectGroupsList from "@/screens/groups/object-groups-list"; import { GroupDataFromAPI } from "@/screens/groups/types"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { classNames } from "@/utils/common"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/groups/object-groups-list.tsx b/frontend/app/src/screens/groups/object-groups-list.tsx index ee12c58177..835e18d2c1 100644 --- a/frontend/app/src/screens/groups/object-groups-list.tsx +++ b/frontend/app/src/screens/groups/object-groups-list.tsx @@ -1,16 +1,16 @@ -import { Button } from "@/components/buttons/button-primitive"; -import ItemGroup from "@/components/layouts/item-group"; -import ModalDelete from "@/components/modals/modal-delete"; -import { Badge } from "@/components/ui/badge"; -import { Tooltip } from "@/components/ui/tooltip"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import ItemGroup from "@/shared/components/layouts/item-group"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { Badge } from "@/shared/components/ui/badge"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { QSP } from "@/config/qsp"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { GroupDataFromAPI } from "@/screens/groups/types"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; -import { pluralize } from "@/utils/string"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { pluralize } from "@/shared/utils/string"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/ipam/common/ip-details-card.tsx b/frontend/app/src/screens/ipam/common/ip-details-card.tsx index 6dffaf1922..a446310c09 100644 --- a/frontend/app/src/screens/ipam/common/ip-details-card.tsx +++ b/frontend/app/src/screens/ipam/common/ip-details-card.tsx @@ -1,15 +1,15 @@ -import ObjectEditSlideOverTrigger from "@/components/form/object-edit-slide-over-trigger"; -import ProgressBarChart from "@/components/stats/progress-bar-chart"; -import { Property, PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { CardWithBorder } from "@/components/ui/card"; -import { Link } from "@/components/ui/link"; +import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; +import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; +import { Property, PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { CardWithBorder } from "@/shared/components/ui/card"; +import { Link } from "@/shared/components/ui/link"; import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; -import { AttributeType, ObjectAttributeValue } from "@/utils/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/utils/objects"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; type tIpDetailsCard = { schema: IModelSchema; diff --git a/frontend/app/src/screens/ipam/common/utils.ts b/frontend/app/src/screens/ipam/common/utils.ts index 9d8d64366f..b238527ea4 100644 --- a/frontend/app/src/screens/ipam/common/utils.ts +++ b/frontend/app/src/screens/ipam/common/utils.ts @@ -1,5 +1,5 @@ import { IPAM_QSP } from "@/screens/ipam/constants"; -import { constructPath, overrideQueryParams } from "@/utils/fetch"; +import { constructPath, overrideQueryParams } from "@/shared/api/rest/fetch"; export const constructPathForIpam = (path: string, overrideParams?: overrideQueryParams[]) => constructPath(path, overrideParams, [IPAM_QSP.TAB, IPAM_QSP.NAMESPACE]); diff --git a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx index 7a95cf3011..38a48f171c 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx @@ -1,7 +1,7 @@ -import { Link } from "@/components/ui/link"; +import { Link } from "@/shared/components/ui/link"; import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; @@ -10,8 +10,8 @@ import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/screens/ipam/constants"; import { IpamSummarySkeleton } from "@/screens/ipam/prefixes/ipam-summary-skeleton"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx index 00a0968dad..9f11c008da 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -1,15 +1,15 @@ -import SlideOver from "@/components/display/slide-over"; -import ModalDelete from "@/components/modals/modal-delete"; -import { Table } from "@/components/table/table"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Link } from "@/components/ui/link"; -import { Pagination } from "@/components/ui/pagination"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; +import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -23,9 +23,9 @@ import { import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx index eb61f43030..1dbd1f57c4 100644 --- a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx @@ -1,15 +1,15 @@ -import { Skeleton } from "@/components/skeleton"; +import { Skeleton } from "@/shared/components/skeleton"; import { Combobox, ComboboxContent, ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import useQuery from "@/hooks/useQuery"; +} from "@/shared/components/ui/combobox"; +import useQuery from "@/shared/hooks/useQuery"; import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useId } from "react"; diff --git a/frontend/app/src/screens/ipam/ipam-router.tsx b/frontend/app/src/screens/ipam/ipam-router.tsx index 08af7cae57..02fe1f52a1 100644 --- a/frontend/app/src/screens/ipam/ipam-router.tsx +++ b/frontend/app/src/screens/ipam/ipam-router.tsx @@ -1,13 +1,13 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-with-tooltip"; -import SlideOver from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import { Tabs } from "@/components/tabs"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-with-tooltip"; +import SlideOver from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import { Tabs } from "@/shared/components/tabs"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx index b19c966594..8ee55afb3e 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx @@ -1,4 +1,4 @@ -import { Skeleton } from "@/components/skeleton"; +import { Skeleton } from "@/shared/components/skeleton"; export const IpamTreeSkeleton = () => { return ( diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts index ba12ccb7d9..8b7d707418 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts @@ -1,4 +1,4 @@ -import { TreeProps } from "@/components/ui/tree"; +import { TreeProps } from "@/shared/components/ui/tree"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_PREFIXES_ONLY, @@ -6,8 +6,8 @@ import { GET_TOP_LEVEL_PREFIXES, } from "@/shared/api/graphql/queries/ipam/prefixes"; import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { atom } from "jotai"; import * as R from "ramda"; import { diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx index 86d1501cf9..f1aee774da 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx @@ -1,19 +1,19 @@ -import { Tree, TreeItemProps } from "@/components/ui/tree"; -import { useLazyQuery } from "@/hooks/useQuery"; +import { Tree, TreeItemProps } from "@/shared/components/ui/tree"; +import { useLazyQuery } from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; import { ITreeViewOnLoadDataProps, NodeId } from "react-accessible-treeview"; import { Link, useNavigate, useParams } from "react-router-dom"; -import { Badge } from "@/components/ui/badge"; -import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; +import { Badge } from "@/shared/components/ui/badge"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { debounce } from "@/utils/common"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { debounce } from "@/shared/utils/common"; import { StringParam, useQueryParam } from "use-query-params"; import { ipamTreeAtom, reloadIpamTreeAtom } from "./ipam-tree.state"; import { diff --git a/frontend/app/src/screens/ipam/ipam-tree/utils.ts b/frontend/app/src/screens/ipam/ipam-tree/utils.ts index 23e0044512..93289cedda 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/utils.ts +++ b/frontend/app/src/screens/ipam/ipam-tree/utils.ts @@ -1,4 +1,4 @@ -import { TreeItemProps, TreeProps } from "@/components/ui/tree"; +import { TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; export type PrefixNode = { diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx index ab15c63bbf..a62c2068c1 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx @@ -1,16 +1,16 @@ -import { ColorDisplay } from "@/components/display/color-display"; -import SlideOver from "@/components/display/slide-over"; -import ModalDelete from "@/components/modals/modal-delete"; -import ProgressBarChart from "@/components/stats/progress-bar-chart"; -import { Table } from "@/components/table/table"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Link } from "@/components/ui/link"; -import { Pagination } from "@/components/ui/pagination"; +import { ColorDisplay } from "@/shared/components/display/color-display"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; +import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -19,9 +19,9 @@ import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx index 0573f6ef25..89e0b1baad 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -1,15 +1,15 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Link } from "@/components/ui/link"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx index 43beeec78d..741e85f40d 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -1,14 +1,14 @@ -import SlideOver from "@/components/display/slide-over"; -import ModalDelete from "@/components/modals/modal-delete"; -import ProgressBarChart from "@/components/stats/progress-bar-chart"; -import { Table } from "@/components/table/table"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Pagination } from "@/components/ui/pagination"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -17,9 +17,9 @@ import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx index 2ea584bfc1..4da684b2cf 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx @@ -1,5 +1,5 @@ -import { Skeleton } from "@/components/skeleton"; -import { CardWithBorder } from "@/components/ui/card"; +import { Skeleton } from "@/shared/components/skeleton"; +import { CardWithBorder } from "@/shared/components/ui/card"; export const IpamSummarySkeleton = () => { return ( diff --git a/frontend/app/src/screens/layout/app-version.tsx b/frontend/app/src/screens/layout/app-version.tsx index c9f78227be..88dd49d282 100644 --- a/frontend/app/src/screens/layout/app-version.tsx +++ b/frontend/app/src/screens/layout/app-version.tsx @@ -1,7 +1,7 @@ -import { Skeleton } from "@/components/skeleton"; +import { Skeleton } from "@/shared/components/skeleton"; import { CONFIG } from "@/config/config"; import { components } from "@/shared/api/rest/types.generated"; -import { fetchUrl } from "@/utils/fetch"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { useEffect, useState } from "react"; export const AppVersion = () => { diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx index d8c671c685..63263c7aa8 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx @@ -1,10 +1,10 @@ -import { Breadcrumb, BreadcrumbSeparator } from "@/components/ui/breadcrumb"; +import { Breadcrumb, BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { BreadcrumbDynamicElement, BreadcrumbDynamicElementProps, } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element"; import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import React from "react"; import { UIMatch, useMatches } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx index 3119bb8103..48a943434d 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx @@ -1,10 +1,10 @@ -import { Combobox, ComboboxContent, ComboboxList, ComboboxTrigger } from "@/components/ui/combobox"; -import { CommandEmpty, CommandItem } from "@/components/ui/command"; +import { Combobox, ComboboxContent, ComboboxList, ComboboxTrigger } from "@/shared/components/ui/combobox"; +import { CommandEmpty, CommandItem } from "@/shared/components/ui/command"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { classNames } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { classNames } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; import { Link, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx index ddabdd1775..17bba2e9c5 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx @@ -3,7 +3,7 @@ import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/bre import BreadcrumbObjectSelector from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector"; import BreadcrumbSchemaSelector from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector"; import { BreadcrumbItem } from "@/screens/layout/breadcrumb-navigation/type"; -import { warnUnexpectedType } from "@/utils/common"; +import { warnUnexpectedType } from "@/shared/utils/common"; export type BreadcrumbDynamicElementProps = BreadcrumbItem & { isLast?: boolean; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx index 40ba89074d..0daf30c342 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx @@ -1,5 +1,5 @@ import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Slot } from "@radix-ui/react-slot"; import React from "react"; import { Link, LinkProps } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx index 213efe3d6a..6436452591 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx @@ -1,4 +1,4 @@ -import { Spinner } from "@/components/ui/spinner"; +import { Spinner } from "@/shared/components/ui/spinner"; export default function BreadcrumbLoading() { return ; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx index 4efc36628a..c7c777d3fc 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx @@ -1,9 +1,9 @@ -import { useObjectDetails } from "@/hooks/useObjectDetails"; -import { useSchema } from "@/hooks/useSchema"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; +import { useSchema } from "@/shared/hooks/useSchema"; import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { NetworkStatus } from "@apollo/client"; export default function BreadcrumbObjectSelector({ diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx index 5ba83e2207..3d10d750b4 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx @@ -1,11 +1,11 @@ -import { BreadcrumbSeparator } from "@/components/ui/breadcrumb"; +import { BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { PROFILE_KIND } from "@/config/constants"; -import { useSchema } from "@/hooks/useSchema"; +import { useSchema } from "@/shared/hooks/useSchema"; import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { classNames } from "@/utils/common"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +import { classNames } from "@/shared/utils/common"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; interface BreadcrumbSchemaSelectorProps { kind: string; diff --git a/frontend/app/src/screens/layout/content.tsx b/frontend/app/src/screens/layout/content.tsx index b6b67bd43b..cf4dbaeace 100644 --- a/frontend/app/src/screens/layout/content.tsx +++ b/frontend/app/src/screens/layout/content.tsx @@ -1,7 +1,7 @@ -import { Retry } from "@/components/buttons/retry"; -import { Badge } from "@/components/ui/badge"; -import { Card, CardProps } from "@/components/ui/card"; -import { classNames } from "@/utils/common"; +import { Retry } from "@/shared/components/buttons/retry"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardProps } from "@/shared/components/ui/card"; +import { classNames } from "@/shared/utils/common"; import { HTMLAttributes, ReactNode } from "react"; const ContentRoot = ({ className, ...props }: HTMLAttributes) => { diff --git a/frontend/app/src/screens/layout/header.tsx b/frontend/app/src/screens/layout/header.tsx index 0113ab4adb..3f94ba48a0 100644 --- a/frontend/app/src/screens/layout/header.tsx +++ b/frontend/app/src/screens/layout/header.tsx @@ -1,8 +1,8 @@ -import BranchSelector from "@/components/branch-selector"; -import { TimeFrameSelector } from "@/components/time-selector"; -import InfrahubLogo from "@/images/infrahub-logo.svg"; +import BranchSelector from "@/shared/components/branch-selector"; +import { TimeFrameSelector } from "@/shared/components/time-selector"; +import InfrahubLogo from "@/assets/infrahub-logo.svg"; import BreadcrumbNavigation from "@/screens/layout/breadcrumb-navigation/breadcrumb-navigation"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Link } from "react-router-dom"; import { TaskStatus } from "./tasks-status"; diff --git a/frontend/app/src/screens/layout/layout.tsx b/frontend/app/src/screens/layout/layout.tsx index ee1c8f0542..36eb837a8f 100644 --- a/frontend/app/src/screens/layout/layout.tsx +++ b/frontend/app/src/screens/layout/layout.tsx @@ -1,12 +1,12 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { QSP } from "@/config/qsp"; -import { SchemaContext, withSchemaContext } from "@/decorators/withSchemaContext"; +import { findSelectedBranch } from "@/screens/branches/branches"; +import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; import Sidebar from "@/screens/layout/sidebar"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { SchemaContext, withSchemaContext } from "@/screens/schema/withSchemaContext"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; -import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; -import { findSelectedBranch } from "@/utils/branches"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { NetworkStatus, useQuery } from "@apollo/client"; import { useSetAtom } from "jotai"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx b/frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx index 3359fa3a89..0b34d8614b 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx @@ -1,5 +1,5 @@ -import { ButtonProps, ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import { classNames } from "@/utils/common"; +import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { forwardRef } from "react"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx index 89ccf6a9cd..43367b3320 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx @@ -6,12 +6,12 @@ import { DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; import type { MenuItem } from "@/screens/layout/menu-navigation/types"; -import { classNames } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; +import { classNames } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx index 74bcd50596..a250a8343b 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx @@ -6,13 +6,13 @@ import { DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; -import { Tooltip } from "@/components/ui/tooltip"; +} from "@/shared/components/ui/dropdown-menu"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { ObjectAvatar } from "@/screens/layout/menu-navigation/components/object-avatar"; import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; import { MenuItem } from "@/screens/layout/menu-navigation/types"; -import { classNames } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; +import { classNames } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx b/frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx index 7a5da232bc..0c4748ec95 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; const STYLES = [ "bg-green-50 text-green-600", diff --git a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts index c556d3db7d..f48035f3cc 100644 --- a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts +++ b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts @@ -1,8 +1,8 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { MenuData } from "@/screens/layout/menu-navigation/types"; import { apiClient } from "@/shared/api/rest/client"; -import { store } from "@/state"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { store } from "@/shared/stores"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { queryOptions } from "@tanstack/react-query"; type GetMenu = ({ branchName }: { branchName: string }) => Promise; diff --git a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx b/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx index dd73d4d7b1..e87d412ef3 100644 --- a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx @@ -1,6 +1,6 @@ -import { Divider } from "@/components/ui/divider"; -import { ScrollArea } from "@/components/ui/scroll-area"; -import { Spinner } from "@/components/ui/spinner"; +import { Divider } from "@/shared/components/ui/divider"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; +import { Spinner } from "@/shared/components/ui/spinner"; import ErrorScreen from "@/screens/errors/error-screen"; import { MenuSectionInternal } from "@/screens/layout/menu-navigation/components/menu-section-internal"; import { MenuSectionObject } from "@/screens/layout/menu-navigation/components/menu-section-object"; diff --git a/frontend/app/src/screens/layout/sidebar.tsx b/frontend/app/src/screens/layout/sidebar.tsx index 9b574812cf..50d3ce4099 100644 --- a/frontend/app/src/screens/layout/sidebar.tsx +++ b/frontend/app/src/screens/layout/sidebar.tsx @@ -1,10 +1,10 @@ -import { AccountMenu } from "@/components/account-menu"; -import { Button } from "@/components/buttons/button-primitive"; -import { SearchAnywhere } from "@/components/search/search-anywhere"; +import { AccountMenu } from "@/shared/components/account-menu"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { SearchAnywhere } from "@/shared/components/search/search-anywhere"; import { SIDEBAR_COLLAPSED_KEY } from "@/config/localStorage"; -import { useLocalStorage } from "@/hooks/useLocalStorage"; +import { useLocalStorage } from "@/shared/hooks/useLocalStorage"; import MenuNavigation from "@/screens/layout/menu-navigation/menu-navigation"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; export default function Sidebar() { diff --git a/frontend/app/src/screens/layout/tasks-status.tsx b/frontend/app/src/screens/layout/tasks-status.tsx index 03567dfc1a..ba290d5810 100644 --- a/frontend/app/src/screens/layout/tasks-status.tsx +++ b/frontend/app/src/screens/layout/tasks-status.tsx @@ -1,14 +1,14 @@ -import { LinkButton } from "@/components/buttons/button-primitive"; -import { Pulse } from "@/components/ui/pulse"; -import { Spinner } from "@/components/ui/spinner"; -import { Tooltip } from "@/components/ui/tooltip"; +import { LinkButton } from "@/shared/components/buttons/button-primitive"; +import { Pulse } from "@/shared/components/ui/pulse"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; -import useQuery from "@/hooks/useQuery"; -import TasksStatusIcon from "@/images/icons/tasks-status.svg?react"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { constructPath } from "@/utils/fetch"; +import useQuery from "@/shared/hooks/useQuery"; +import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/loading-screen/loading-screen.tsx b/frontend/app/src/screens/loading-screen/loading-screen.tsx index 3cb49ef7c9..8f1f85f075 100644 --- a/frontend/app/src/screens/loading-screen/loading-screen.tsx +++ b/frontend/app/src/screens/loading-screen/loading-screen.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import ReactLoading, { LoadingType } from "react-loading"; interface Props { diff --git a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx index 41a5ab9817..e6cf3a8a1e 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx @@ -1,6 +1,6 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Generate } from "@/screens/artifacts/generate"; @@ -8,7 +8,7 @@ import { GroupsManagerTriggerButton } from "@/screens/groups/groups-manager-trig import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import RepositoryActionMenu from "@/screens/repository/repository-action-menu"; import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { useLocation, useNavigate, useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx index bc72a565ac..7f0df7f90f 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,14 +1,14 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import DynamicForm from "@/components/form/dynamic-form"; -import { SelectOption } from "@/components/inputs/select"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { SelectOption } from "@/shared/components/inputs/select"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { Permission } from "@/screens/permission/types"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/object-item-details/object-attribute-row.tsx b/frontend/app/src/screens/object-item-details/object-attribute-row.tsx index 13e40b174a..a3e1dbeb07 100644 --- a/frontend/app/src/screens/object-item-details/object-attribute-row.tsx +++ b/frontend/app/src/screens/object-item-details/object-attribute-row.tsx @@ -1,4 +1,4 @@ -import { CopyToClipboard } from "@/components/buttons/copy-to-clipboard"; +import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; import { ReactElement } from "react"; type ObjectAttributeRowProps = { diff --git a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx index bcc7097c9f..927655fafc 100644 --- a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx @@ -1,28 +1,28 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import MetaDetailsTooltip from "@/components/display/meta-details-tooltips"; -import SlideOver from "@/components/display/slide-over"; -import { Tabs } from "@/components/tabs"; -import { Link } from "@/components/ui/link"; import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { useTitle } from "@/hooks/useTitle"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { Permission } from "@/screens/permission/types"; +import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; import { TaskItemDetails } from "@/screens/tasks/task-item-details"; import { TaskItems } from "@/screens/tasks/task-items"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { showMetaEditState } from "@/state/atoms/metaEditFieldDetails.atom"; -import { IModelSchema, genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { metaEditFieldDetailsState } from "@/state/atoms/showMetaEdit.atom copy"; -import { constructPath } from "@/utils/fetch"; -import { ObjectAttributeValue } from "@/utils/getObjectItemDisplayValue"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; +import SlideOver from "@/shared/components/display/slide-over"; +import { Tabs } from "@/shared/components/tabs"; +import { Link } from "@/shared/components/ui/link"; +import { useTitle } from "@/shared/hooks/useTitle"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; import { getObjectAttributes, getObjectRelationships, getObjectTabs, getTabs, -} from "@/utils/getSchemaObjectColumns"; +} from "@/screens/object-items/getSchemaObjectColumns"; import { LockClosedIcon } from "@heroicons/react/24/outline"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx index 669794c0f9..18744571e9 100644 --- a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx @@ -1,25 +1,25 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import MetaDetailsTooltip from "@/components/display/meta-details-tooltips"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ModalDelete from "@/components/modals/modal-delete"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Link as StyledLink } from "@/components/ui/link"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import useQuery from "@/hooks/useQuery"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import NoDataFound from "@/screens/errors/no-data-found"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; +import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { showMetaEditState } from "@/state/atoms/metaEditFieldDetails.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { metaEditFieldDetailsState } from "@/state/atoms/showMetaEdit.atom copy"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { constructPath } from "@/utils/fetch"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/utils/objects"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { schemaState } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link as StyledLink } from "@/shared/components/ui/link"; +import useQuery from "@/shared/hooks/useQuery"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { EyeSlashIcon, LockClosedIcon } from "@heroicons/react/24/outline"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx index d92d6946d7..e2724a7f99 100644 --- a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx @@ -1,13 +1,13 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Pagination } from "@/components/ui/pagination"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Pagination } from "@/shared/components/ui/pagination"; import { QSP } from "@/config/qsp"; import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; -import useQuery, { useMutation } from "@/hooks/useQuery"; +import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState, iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import { forwardRef, useEffect, useImperativeHandle } from "react"; diff --git a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts index 3462d9328e..2545555e65 100644 --- a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts +++ b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts @@ -1,6 +1,6 @@ -import { getRelationshipsForForm } from "@/components/form/utils/getRelationshipsForForm"; +import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; -import { IProfileSchema, iNodeSchema } from "@/state/atoms/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; import { jsonToGraphQLQuery } from "json-to-graphql-query"; export const generateObjectEditFormQuery = ({ diff --git a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx index 206877894d..c493dfcdea 100644 --- a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx @@ -1,19 +1,19 @@ -import ObjectForm, { ObjectFormProps } from "@/components/form/object-form"; -import { getUpdateMutationFromFormData } from "@/components/form/utils/mutations/getUpdateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; +import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { DynamicFieldData } from "@/screens/edit-form-hook/dynamic-control-types"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { generateObjectEditFormQuery } from "@/screens/object-item-edit/generateObjectEditFormQuery"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { areObjectArraysEqualById } from "@/utils/array"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { areObjectArraysEqualById } from "@/shared/utils/array"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/utils/getMutationMetaDetailsFromFormData.ts b/frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts similarity index 96% rename from frontend/app/src/utils/getMutationMetaDetailsFromFormData.ts rename to frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts index e4fb7ea1b5..aa2619c0bb 100644 --- a/frontend/app/src/utils/getMutationMetaDetailsFromFormData.ts +++ b/frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts @@ -1,4 +1,4 @@ -import { iNodeSchema } from "@/state/atoms/schema.atom"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; const metadataFields = ["source", "owner", "is_visible", "is_protected"]; diff --git a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx index 63d6bb30df..c2f64fb05b 100644 --- a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,13 +1,13 @@ -import DynamicForm from "@/components/form/dynamic-form"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { iNodeSchema } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import getMutationMetaDetailsFromFormData from "@/utils/getMutationMetaDetailsFromFormData"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/utils/getSchemaObjectColumns.ts b/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts similarity index 96% rename from frontend/app/src/utils/getSchemaObjectColumns.ts rename to frontend/app/src/screens/object-items/getSchemaObjectColumns.ts index a829cd70d7..ed6e9035ef 100644 --- a/frontend/app/src/utils/getSchemaObjectColumns.ts +++ b/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts @@ -6,10 +6,10 @@ import { relationshipsForTabs, } from "@/config/constants"; import { isGenericSchema } from "@/screens/schema/utils"; -import { store } from "@/state"; -import { iGenericSchema, iNodeSchema, profilesAtom } from "@/state/atoms/schema.atom"; +import { store } from "@/shared/stores"; +import { iGenericSchema, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; import * as R from "ramda"; -import { sortByOrderWeight } from "./common"; +import { sortByOrderWeight } from "@/shared/utils/common"; type tgetObjectAttributes = { schema: iNodeSchema | iGenericSchema | undefined; diff --git a/frontend/app/src/screens/object-items/object-items-cell.tsx b/frontend/app/src/screens/object-items/object-items-cell.tsx index 4ad9bae94b..860b5e3214 100644 --- a/frontend/app/src/screens/object-items/object-items-cell.tsx +++ b/frontend/app/src/screens/object-items/object-items-cell.tsx @@ -1,12 +1,12 @@ -import { Badge } from "@/components/ui/badge"; +import { Badge } from "@/shared/components/ui/badge"; import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { RelationshipManyType, RelationshipOneType, getDisplayValue, -} from "@/utils/getObjectItemDisplayValue"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +} from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { HTMLAttributes } from "react"; import { Link, LinkProps } from "react-router-dom"; diff --git a/frontend/app/src/screens/object-items/object-items-paginated.tsx b/frontend/app/src/screens/object-items/object-items-paginated.tsx index 7b8aa8e45b..55272845d1 100644 --- a/frontend/app/src/screens/object-items/object-items-paginated.tsx +++ b/frontend/app/src/screens/object-items/object-items-paginated.tsx @@ -1,28 +1,28 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import { Filters } from "@/components/filters/filters"; -import { ObjectCreateFormTrigger } from "@/components/form/object-create-form-trigger"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Pagination } from "@/components/ui/pagination"; -import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import { Filters } from "@/shared/components/filters/filters"; +import { ObjectCreateFormTrigger } from "@/shared/components/form/object-create-form-trigger"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { MENU_EXCLUDELIST, SEARCH_ANY_FILTER, SEARCH_FILTERS, SEARCH_PARTIAL_MATCH, } from "@/config/constants"; -import useFilters, { Filter } from "@/hooks/useFilters"; -import { useObjectItems } from "@/hooks/useObjectItems"; -import { useTitle } from "@/hooks/useTitle"; +import useFilters, { Filter } from "@/shared/hooks/useFilters"; +import { useObjectItems } from "@/shared/hooks/useObjectItems"; +import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import { GroupsAutoGeneratedFilterButton } from "@/screens/groups/groups-auto-generated-filter-button"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; import { isOfKind } from "@/screens/schema/utils"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { classNames, debounce } from "@/utils/common"; -import { getDisplayValue } from "@/utils/getObjectItemDisplayValue"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { classNames, debounce } from "@/shared/utils/common"; +import { getDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Navigate } from "react-router-dom"; diff --git a/frontend/app/src/utils/getObjectItemDisplayValue.tsx b/frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx similarity index 92% rename from frontend/app/src/utils/getObjectItemDisplayValue.tsx rename to frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx index bf0f6fcd4a..c0ab530d54 100644 --- a/frontend/app/src/utils/getObjectItemDisplayValue.tsx +++ b/frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx @@ -1,13 +1,6 @@ -import { Badge } from "@/components/display/badge"; -import { ColorDisplay } from "@/components/display/color-display"; -import { DateDisplay } from "@/components/display/date-display"; -import { PasswordDisplay } from "@/components/display/password-display"; -import { TextDisplay } from "@/components/display/text-display"; -import { CodeEditor } from "@/components/editor/code-editor"; -import { MarkdownViewer } from "@/components/editor/markdown-viewer"; -import { Link } from "@/components/ui/link"; import { MAX_VALUE_LENGTH_DISPLAY, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; +import { iSchemaKindNameMap } from "@/screens/schema/schemaKindName.atom"; import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; import { AnyAttribute, @@ -22,7 +15,14 @@ import { RelationshipProperty, TextAttribute, } from "@/shared/api/graphql/generated/graphql"; -import { iSchemaKindNameMap } from "@/state/atoms/schemaKindName.atom"; +import { Badge } from "@/shared/components/display/badge"; +import { ColorDisplay } from "@/shared/components/display/color-display"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { PasswordDisplay } from "@/shared/components/display/password-display"; +import { TextDisplay } from "@/shared/components/display/text-display"; +import { CodeEditor } from "@/shared/components/editor/code-editor"; +import { MarkdownViewer } from "@/shared/components/editor/markdown-viewer"; +import { Link } from "@/shared/components/ui/link"; import { CheckIcon, XMarkIcon } from "@heroicons/react/24/outline"; const getTextValue = (data: any) => { diff --git a/frontend/app/src/screens/objects/hierarchical-tree.tsx b/frontend/app/src/screens/objects/hierarchical-tree.tsx index 41c2f02c2f..29e28d9713 100644 --- a/frontend/app/src/screens/objects/hierarchical-tree.tsx +++ b/frontend/app/src/screens/objects/hierarchical-tree.tsx @@ -1,19 +1,19 @@ -import { Tree, TreeItemProps, TreeProps } from "@/components/ui/tree"; +import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import { objectAncestorsQuery, objectChildrenQuery, objectTopLevelTreeQuery, } from "@/shared/api/graphql/queries/objects/objectTreeQuery"; -import useFilters from "@/hooks/useFilters"; -import { useLazyQuery } from "@/hooks/useQuery"; +import useFilters from "@/shared/hooks/useFilters"; +import { useLazyQuery } from "@/shared/hooks/useQuery"; import { HIDE_AUTO_GENERATED_FILTER } from "@/screens/groups/groups-auto-generated-filter-button"; import { TREE_ROOT_ID } from "@/screens/ipam/constants"; import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/screens/ipam/ipam-tree/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { IModelSchema, genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { constructPath } from "@/utils/fetch"; -import { getObjectDetailsUrl } from "@/utils/objects"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/state/atoms/metaEditFieldDetails.atom.ts b/frontend/app/src/screens/objects/metaEditFieldDetails.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/metaEditFieldDetails.atom.ts rename to frontend/app/src/screens/objects/metaEditFieldDetails.atom.ts diff --git a/frontend/app/src/screens/objects/object-header.tsx b/frontend/app/src/screens/objects/object-header.tsx index c02f518927..8cfbb593c4 100644 --- a/frontend/app/src/screens/objects/object-header.tsx +++ b/frontend/app/src/screens/objects/object-header.tsx @@ -1,13 +1,13 @@ -import { ObjectDetailsButton } from "@/components/menu/object-details-button"; -import { ObjectHelpButton } from "@/components/menu/object-help-button"; -import { Skeleton } from "@/components/skeleton"; +import { ObjectDetailsButton } from "@/shared/components/menu/object-details-button"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Skeleton } from "@/shared/components/skeleton"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import useFilters from "@/hooks/useFilters"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; -import { useObjectItems } from "@/hooks/useObjectItems"; +import useFilters from "@/shared/hooks/useFilters"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; +import { useObjectItems } from "@/shared/hooks/useObjectItems"; import Content from "@/screens/layout/content"; import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; type ObjectHeaderProps = { schema: IModelSchema; diff --git a/frontend/app/src/utils/objects.ts b/frontend/app/src/screens/objects/objects.ts similarity index 90% rename from frontend/app/src/utils/objects.ts rename to frontend/app/src/screens/objects/objects.ts index b8bf36f8da..256783ca37 100644 --- a/frontend/app/src/utils/objects.ts +++ b/frontend/app/src/screens/objects/objects.ts @@ -7,9 +7,9 @@ import { } from "@/screens/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; import { isGenericSchema } from "@/screens/schema/utils"; -import { store } from "@/state"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { constructPath, overrideQueryParams } from "./fetch"; +import { store } from "@/shared/stores"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath, overrideQueryParams } from "../../shared/api/rest/fetch"; const regex = /^Related/; // starts with Related diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts index 8b02a674c3..14848be759 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts +++ b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts @@ -4,8 +4,8 @@ import { RELATIONSHIPS_PER_PAGE, getRelationships, } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; -import { store } from "@/state"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { store } from "@/shared/stores"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { infiniteQueryOptions } from "@tanstack/react-query"; export function relationshipsInfiniteQueryOptions({ diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts index cc530b7888..125a4d05fb 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts @@ -1,8 +1,8 @@ import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; import { getRelationshipsFromApi } from "@/screens/objects/relationships/api/queries"; import { getRelationships } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; -import { store } from "@/state"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { store } from "@/shared/stores"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; vi.mock("@/screens/branches/get-current-branch"); diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts index c7f939813c..8ea941c5ac 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts +++ b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts @@ -1,8 +1,8 @@ import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; import { getRelationshipsFromApi } from "@/screens/objects/relationships/api/queries"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { store } from "@/state"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { store } from "@/shared/stores"; +import { datetimeAtom } from "@/shared/stores/time.atom"; //////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx b/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx index fafe66af3d..a408bca27c 100644 --- a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx @@ -1,8 +1,8 @@ -import { Button } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import { useSchema } from "@/hooks/useSchema"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import React, { useState } from "react"; export interface AddRelationshipActionProps { diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx index 3d7aecae88..b64baadfb1 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx @@ -1,11 +1,11 @@ -import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/components/ui/combobox"; -import { Spinner } from "@/components/ui/spinner"; -import { useSchema } from "@/hooks/useSchema"; +import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useSchema } from "@/shared/hooks/useSchema"; import ErrorScreen from "@/screens/errors/error-screen"; import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; -import { debounce } from "@/utils/common"; +import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import React, { forwardRef } from "react"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx index 58eec87bf6..9e1a7696b5 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx @@ -1,8 +1,8 @@ import { getRelationships } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; -import { store } from "@/state"; -import { genericsState, schemaState } from "@/state/atoms/schema.atom"; +import { store } from "@/shared/stores"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; import { describe, expect, it, vi } from "vitest"; import { render } from "../../../../../tests/components/render"; import { generateGenericSchema, generateNodeSchema } from "../../../../../tests/fake/schema"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx index 9dad8d8df5..acbb4eee52 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx @@ -1,14 +1,14 @@ -import { Badge } from "@/components/ui/badge"; -import { ComboboxEmpty, ComboboxItem } from "@/components/ui/combobox"; -import { Command, CommandInput, CommandList } from "@/components/ui/command"; -import { Spinner } from "@/components/ui/spinner"; -import { useSchema } from "@/hooks/useSchema"; +import { Badge } from "@/shared/components/ui/badge"; +import { ComboboxEmpty, ComboboxItem } from "@/shared/components/ui/combobox"; +import { Command, CommandInput, CommandList } from "@/shared/components/ui/command"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useSchema } from "@/shared/hooks/useSchema"; import ErrorScreen from "@/screens/errors/error-screen"; import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/screens/schema/utils"; -import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { debounce } from "@/utils/common"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import { useAtomValue } from "jotai"; import React, { useState } from "react"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx index 3cdedd7311..0c8813f4f6 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx @@ -1,27 +1,27 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Badge } from "@/components/ui/badge"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, ComboboxTrigger, ComboboxTriggerProps, -} from "@/components/ui/combobox"; +} from "@/shared/components/ui/combobox"; import { PopoverTabs, PopoverTabsContent, PopoverTabsList, PopoverTabsTrigger, PopoverTrigger, -} from "@/components/ui/popover"; -import { inputStyle } from "@/components/ui/style"; +} from "@/shared/components/ui/popover"; +import { inputStyle } from "@/shared/components/ui/style"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { RelationshipComboboxList, RelationshipComboboxListProps, } from "@/screens/objects/relationships/ui/relationship-combobox-list"; import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; -import { classNames } from "@/utils/common"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +import { classNames } from "@/shared/utils/common"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { Icon } from "@iconify-icon/react"; import { forwardRef, useState } from "react"; diff --git a/frontend/app/src/state/atoms/showMetaEdit.atom copy.ts b/frontend/app/src/screens/objects/showMetaEdit.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/showMetaEdit.atom copy.ts rename to frontend/app/src/screens/objects/showMetaEdit.atom.ts diff --git a/frontend/app/src/screens/permission/utils.ts b/frontend/app/src/screens/permission/utils.ts index a906f681be..b8dbaa3d44 100644 --- a/frontend/app/src/screens/permission/utils.ts +++ b/frontend/app/src/screens/permission/utils.ts @@ -5,9 +5,9 @@ import { PermissionDecision, PermissionDecisionData, } from "@/screens/permission/types"; -import { store } from "@/state"; -import { configState } from "@/state/atoms/config.atom"; -import { warnUnexpectedType } from "@/utils/common"; +import { store } from "@/shared/stores"; +import { configState } from "@/config/config.atom"; +import { warnUnexpectedType } from "@/shared/utils/common"; const getMessage = (action: string, decision?: PermissionDecisionData): string => { if (!decision) diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx index 71951c9f7d..dfc84d6aa9 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx @@ -1,12 +1,12 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { useAuth } from "@/hooks/useAuth"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx index 5609f06335..a2f03d8966 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx @@ -1,11 +1,11 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx index 754e991e45..e0e3e9d429 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx @@ -1,11 +1,11 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/screens/proposed-changes/checks-tab.tsx b/frontend/app/src/screens/proposed-changes/checks-tab.tsx index ce28d9185d..ba1c1ebcfb 100644 --- a/frontend/app/src/screens/proposed-changes/checks-tab.tsx +++ b/frontend/app/src/screens/proposed-changes/checks-tab.tsx @@ -1,7 +1,7 @@ -import { Pill } from "@/components/display/pill"; +import { Pill } from "@/shared/components/display/pill"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { getProposedChangesChecks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/utils/checks.ts b/frontend/app/src/screens/proposed-changes/checks.ts similarity index 100% rename from frontend/app/src/utils/checks.ts rename to frontend/app/src/screens/proposed-changes/checks.ts diff --git a/frontend/app/src/screens/proposed-changes/conversations.tsx b/frontend/app/src/screens/proposed-changes/conversations.tsx index 5e029dc52a..e716c25a25 100644 --- a/frontend/app/src/screens/proposed-changes/conversations.tsx +++ b/frontend/app/src/screens/proposed-changes/conversations.tsx @@ -1,7 +1,7 @@ -import { AddComment } from "@/components/conversations/add-comment"; -import { Thread } from "@/components/conversations/thread"; -import { Card } from "@/components/ui/card"; -import { FormRef } from "@/components/ui/form"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import { Card } from "@/shared/components/ui/card"; +import { FormRef } from "@/shared/components/ui/form"; import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_CHANGE_THREAD_OBJECT, @@ -12,14 +12,14 @@ import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { NetworkStatus, gql } from "@apollo/client"; import { formatISO } from "date-fns"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/proposed-changes/counter.tsx b/frontend/app/src/screens/proposed-changes/counter.tsx index 43e44757c6..460c6464f3 100644 --- a/frontend/app/src/screens/proposed-changes/counter.tsx +++ b/frontend/app/src/screens/proposed-changes/counter.tsx @@ -1,5 +1,5 @@ -import { Badge } from "@/components/ui/badge"; -import useQuery from "@/hooks/useQuery"; +import { Badge } from "@/shared/components/ui/badge"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import LoadingScreen from "../loading-screen/loading-screen"; diff --git a/frontend/app/src/screens/proposed-changes/create-form.tsx b/frontend/app/src/screens/proposed-changes/create-form.tsx index bf6a3f7cf9..e814ed509b 100644 --- a/frontend/app/src/screens/proposed-changes/create-form.tsx +++ b/frontend/app/src/screens/proposed-changes/create-form.tsx @@ -1,9 +1,14 @@ -import { LinkButton } from "@/components/buttons/button-primitive"; -import { MarkdownEditor } from "@/components/editor"; -import { RelationshipManyInput } from "@/components/inputs/relationship-many"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Card } from "@/components/ui/card"; -import { Combobox } from "@/components/ui/combobox-legacy"; +import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { QSP } from "@/config/qsp"; +import { branchesToSelectOptions } from "@/screens/branches/branches"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; +import { LinkButton } from "@/shared/components/buttons/button-primitive"; +import { MarkdownEditor } from "@/shared/components/editor"; +import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Card } from "@/shared/components/ui/card"; +import { Combobox } from "@/shared/components/ui/combobox-legacy"; import { Form, FormField, @@ -11,19 +16,14 @@ import { FormLabel, FormMessage, FormSubmit, -} from "@/components/ui/form"; -import { Input } from "@/components/ui/input"; -import { Spinner } from "@/components/ui/spinner"; -import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { QSP } from "@/config/qsp"; -import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; -import { useAuth } from "@/hooks/useAuth"; -import { useMutation } from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { branchesToSelectOptions } from "@/utils/branches"; -import { constructPath } from "@/utils/fetch"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +} from "@/shared/components/ui/form"; +import { Input } from "@/shared/components/ui/input"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { useMutation } from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/diff-filter.tsx b/frontend/app/src/screens/proposed-changes/diff-filter.tsx index 18dd5f10d2..bd08d34f5b 100644 --- a/frontend/app/src/screens/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-filter.tsx @@ -1,9 +1,9 @@ import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "../errors/error-screen"; -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; import { CloseBadgeAdded, @@ -13,7 +13,7 @@ import { } from "@/screens/diff/diff-badge"; import { DIFF_STATUS } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { toast } from "react-toastify"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/screens/proposed-changes/diff-summary.tsx b/frontend/app/src/screens/proposed-changes/diff-summary.tsx index 9165b50a7d..11cbb067bf 100644 --- a/frontend/app/src/screens/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-summary.tsx @@ -2,13 +2,13 @@ import React from "react"; import { Link } from "react-router-dom"; import { toast } from "react-toastify"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import ErrorScreen from "@/screens/errors/error-screen"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { DIFF_STATUS, DiffStatus } from "../diff/node-diff/types"; interface DiffTreeSummary { diff --git a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx index b792310d9a..120c79d1e4 100644 --- a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx @@ -1,15 +1,15 @@ -import DynamicForm from "@/components/form/dynamic-form"; -import { DynamicFieldProps, FormFieldValue } from "@/components/form/type"; -import { getUpdateMutationFromFormData } from "@/components/form/utils/mutations/getUpdateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; +import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/screens/proposed-changes/item-info.tsx b/frontend/app/src/screens/proposed-changes/item-info.tsx index c7abf3305c..bb1ae5caf9 100644 --- a/frontend/app/src/screens/proposed-changes/item-info.tsx +++ b/frontend/app/src/screens/proposed-changes/item-info.tsx @@ -1,8 +1,8 @@ -import { DateDisplay } from "@/components/display/date-display"; -import { Badge } from "@/components/ui/badge"; -import PcCheckFailure from "@/images/icons/proposed-change-checks-failure.svg?react"; -import PcCheckSuccess from "@/images/icons/proposed-change-checks-success.svg?react"; -import PcCheckUnknown from "@/images/icons/proposed-change-checks-unknown.svg?react"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { Badge } from "@/shared/components/ui/badge"; +import PcCheckFailure from "@/assets/icons/proposed-change-checks-failure.svg?react"; +import PcCheckSuccess from "@/assets/icons/proposed-change-checks-success.svg?react"; +import PcCheckUnknown from "@/assets/icons/proposed-change-checks-unknown.svg?react"; import { Icon } from "@iconify-icon/react"; type ProposedChangesInfoProps = { diff --git a/frontend/app/src/screens/proposed-changes/items.tsx b/frontend/app/src/screens/proposed-changes/items.tsx index 51e3bf43d9..69f8430926 100644 --- a/frontend/app/src/screens/proposed-changes/items.tsx +++ b/frontend/app/src/screens/proposed-changes/items.tsx @@ -1,31 +1,31 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import { Table, tRow } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import useQuery, { useMutation } from "@/hooks/useQuery"; -import { useTitle } from "@/hooks/useTitle"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import { Table, tRow } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import useQuery, { useMutation } from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; import { Icon } from "@iconify-icon/react"; -import { TabsButtons } from "@/components/buttons/tabs-buttons"; -import { ObjectHelpButton } from "@/components/menu/object-help-button"; -import ModalDelete from "@/components/modals/modal-delete"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; +import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { ARTIFACT_OBJECT, PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; -import { useSchema } from "@/hooks/useSchema"; +import { useSchema } from "@/shared/hooks/useSchema"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { ProposedChangesCounter } from "@/screens/proposed-changes/counter"; import { ProposedChangeDiffSummary } from "@/screens/proposed-changes/diff-summary"; import { ProposedChangesInfo } from "@/screens/proposed-changes/item-info"; import { ProposedChangesReviewers } from "@/screens/proposed-changes/reviewers"; -import { classNames, debounce } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; +import { classNames, debounce } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; import { NetworkStatus } from "@apollo/client"; import { useState } from "react"; import { Link, LinkProps, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx index 5312f21266..a1a01c5e75 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx @@ -1,23 +1,23 @@ -import Accordion from "@/components/display/accordion"; -import { Avatar } from "@/components/display/avatar"; -import { DateDisplay } from "@/components/display/date-display"; -import { MarkdownViewer } from "@/components/editor/markdown-viewer"; -import { Property, PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { Card, CardWithBorder } from "@/components/ui/card"; -import { Tooltip } from "@/components/ui/tooltip"; +import Accordion from "@/shared/components/display/accordion"; +import { Avatar } from "@/shared/components/display/avatar"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { MarkdownViewer } from "@/shared/components/editor/markdown-viewer"; +import { Property, PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { PcApproveButton } from "@/screens/proposed-changes/action-button/pc-approve-button"; import { PcCloseButton } from "@/screens/proposed-changes/action-button/pc-close-button"; import { PcMergeButton } from "@/screens/proposed-changes/action-button/pc-merge-button"; import { Conversations } from "@/screens/proposed-changes/conversations"; import { ProposedChangeEditTrigger } from "@/screens/proposed-changes/proposed-change-edit-trigger"; -import { proposedChangedState } from "@/state/atoms/proposedChanges.atom"; -import { classNames } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; -import { getProposedChangesStateBadgeType } from "@/utils/proposed-changes"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { classNames } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getProposedChangesStateBadgeType } from "@/screens/proposed-changes/proposed-changes"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx index d8134f3380..78c6b12cd8 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx @@ -1,10 +1,10 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver from "@/components/display/slide-over"; -import { ObjectHelpButton } from "@/components/menu/object-help-button"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver from "@/shared/components/display/slide-over"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { ProposedChangeEditForm } from "@/screens/proposed-changes/form/proposed-change-edit-form"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/utils/proposed-changes.ts b/frontend/app/src/screens/proposed-changes/proposed-changes.ts similarity index 86% rename from frontend/app/src/utils/proposed-changes.ts rename to frontend/app/src/screens/proposed-changes/proposed-changes.ts index b3955aa3b1..7ff180e7d3 100644 --- a/frontend/app/src/utils/proposed-changes.ts +++ b/frontend/app/src/screens/proposed-changes/proposed-changes.ts @@ -1,4 +1,4 @@ -import { BadgeProps } from "@/components/ui/badge"; +import { BadgeProps } from "@/shared/components/ui/badge"; export const getProposedChangesStateBadgeType = ( state: string diff --git a/frontend/app/src/state/atoms/proposedChanges.atom.ts b/frontend/app/src/screens/proposed-changes/proposedChanges.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/proposedChanges.atom.ts rename to frontend/app/src/screens/proposed-changes/proposedChanges.atom.ts diff --git a/frontend/app/src/screens/proposed-changes/reviewers.tsx b/frontend/app/src/screens/proposed-changes/reviewers.tsx index 6b120c6d2c..bacb22d68f 100644 --- a/frontend/app/src/screens/proposed-changes/reviewers.tsx +++ b/frontend/app/src/screens/proposed-changes/reviewers.tsx @@ -1,5 +1,5 @@ -import { Avatar } from "@/components/display/avatar"; -import { Tooltip } from "@/components/ui/tooltip"; +import { Avatar } from "@/shared/components/display/avatar"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { Icon } from "@iconify-icon/react"; type ProposedChangesReviewersProps = { diff --git a/frontend/app/src/screens/repository/repository-action-menu.tsx b/frontend/app/src/screens/repository/repository-action-menu.tsx index e8d79bc120..57d89321f0 100644 --- a/frontend/app/src/screens/repository/repository-action-menu.tsx +++ b/frontend/app/src/screens/repository/repository-action-menu.tsx @@ -1,18 +1,18 @@ import { Icon } from "@iconify-icon/react"; -import { Button, ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { CHECK_REPOSITORY_CONNECTIVITY, REIMPORT_LAST_COMMIT, } from "@/shared/api/graphql/mutations/repository/actions"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { Dialog } from "@headlessui/react"; import { useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/screens/repository/repository-form.tsx b/frontend/app/src/screens/repository/repository-form.tsx index 24bf4d7fe1..e9e7734d40 100644 --- a/frontend/app/src/screens/repository/repository-form.tsx +++ b/frontend/app/src/screens/repository/repository-form.tsx @@ -1,18 +1,18 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { DynamicInput } from "@/components/form/dynamic-form"; -import RelationshipField from "@/components/form/fields/relationship.field"; -import { NodeFormProps } from "@/components/form/node-form"; -import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFromSchema"; -import { getCreateMutationFromFormData } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { Card, CardProps } from "@/components/ui/card"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { DynamicInput } from "@/shared/components/form/dynamic-form"; +import RelationshipField from "@/shared/components/form/fields/relationship.field"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; +import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { Card, CardProps } from "@/shared/components/ui/card"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { useAuth } from "@/hooks/useAuth"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx b/frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx index c2d889a216..cefbe89128 100644 --- a/frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx +++ b/frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx @@ -1,9 +1,9 @@ import MultipleProgressBar, { MultipleProgressBarProps, -} from "@/components/stats/multiple-progress-bar"; -import { Tooltip } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; -import { roundNumber } from "@/utils/number"; +} from "@/shared/components/stats/multiple-progress-bar"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; +import { roundNumber } from "@/shared/utils/number"; interface ResourcePoolUtilizationProps extends Omit { utilizationOverall: number; diff --git a/frontend/app/src/screens/resource-manager/number-pool-form.tsx b/frontend/app/src/screens/resource-manager/number-pool-form.tsx index 65b91d5a6f..0f1f319a11 100644 --- a/frontend/app/src/screens/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/screens/resource-manager/number-pool-form.tsx @@ -1,24 +1,24 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { LabelFormField } from "@/components/form/fields/common"; -import InputField from "@/components/form/fields/input.field"; -import NumberField from "@/components/form/fields/number.field"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormAttributeValue, FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { isRequired } from "@/components/form/utils/validation"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Badge } from "@/components/ui/badge"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import InputField from "@/shared/components/form/fields/input.field"; +import NumberField from "@/shared/components/form/fields/number.field"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormAttributeValue, FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import { Form, FormField, FormInput, FormMessage, FormSubmit } from "@/components/ui/form"; +} from "@/shared/components/ui/combobox"; +import { Form, FormField, FormInput, FormMessage, FormSubmit } from "@/shared/components/ui/form"; import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; @@ -28,11 +28,11 @@ import { NUMBER_POOL_NODE_FIELD, } from "@/screens/resource-manager/constants"; import { AttributeSchema } from "@/screens/schema/types"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; diff --git a/frontend/app/src/screens/resource-manager/resource-selector.tsx b/frontend/app/src/screens/resource-manager/resource-selector.tsx index c52af4b6fc..f124ddadf0 100644 --- a/frontend/app/src/screens/resource-manager/resource-selector.tsx +++ b/frontend/app/src/screens/resource-manager/resource-selector.tsx @@ -1,8 +1,8 @@ -import { PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { Card, CardWithBorder } from "@/components/ui/card"; -import { constructPath } from "@/utils/fetch"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +import { PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { HTMLAttributes } from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/role-management/account-form.tsx b/frontend/app/src/screens/role-management/account-form.tsx index 8946a33a10..be2efeab90 100644 --- a/frontend/app/src/screens/role-management/account-form.tsx +++ b/frontend/app/src/screens/role-management/account-form.tsx @@ -1,23 +1,23 @@ -import { Button } from "@/components/buttons/button-primitive"; -import InputField from "@/components/form/fields/input.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { isRequired } from "@/components/form/utils/validation"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import InputField from "@/shared/components/form/fields/input.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { useSchema } from "@/hooks/useSchema"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; diff --git a/frontend/app/src/screens/role-management/account-group-form.tsx b/frontend/app/src/screens/role-management/account-group-form.tsx index eebbe887ea..bfd5e82e63 100644 --- a/frontend/app/src/screens/role-management/account-group-form.tsx +++ b/frontend/app/src/screens/role-management/account-group-form.tsx @@ -1,16 +1,16 @@ -import { Button } from "@/components/buttons/button-primitive"; -import DropdownField from "@/components/form/fields/dropdown.field"; -import InputField from "@/components/form/fields/input.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { isRequired } from "@/components/form/utils/validation"; -import { DropdownOption } from "@/components/inputs/dropdown"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import DropdownField from "@/shared/components/form/fields/dropdown.field"; +import InputField from "@/shared/components/form/fields/input.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { DropdownOption } from "@/shared/components/inputs/dropdown"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, @@ -20,11 +20,11 @@ import { import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { useSchema } from "@/hooks/useSchema"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; diff --git a/frontend/app/src/screens/role-management/account-role-form.tsx b/frontend/app/src/screens/role-management/account-role-form.tsx index f62c51f819..0823a5b762 100644 --- a/frontend/app/src/screens/role-management/account-role-form.tsx +++ b/frontend/app/src/screens/role-management/account-role-form.tsx @@ -1,10 +1,10 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_PERMISSION_OBJECT, @@ -13,19 +13,19 @@ import { import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; -import InputField from "@/components/form/fields/input.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { isRequired } from "@/components/form/utils/validation"; +import InputField from "@/shared/components/form/fields/input.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { isRequired } from "@/shared/components/form/utils/validation"; interface NumberPoolFormProps extends Pick { currentObject?: Record; diff --git a/frontend/app/src/screens/role-management/accounts.tsx b/frontend/app/src/screens/role-management/accounts.tsx index 212f7e9e82..47e0e62d69 100644 --- a/frontend/app/src/screens/role-management/accounts.tsx +++ b/frontend/app/src/screens/role-management/accounts.tsx @@ -1,20 +1,20 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { ColorDisplay } from "@/components/display/color-display"; -import { InlineDisplay } from "@/components/display/inline-display"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Table, tRowValue } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import { Pagination } from "@/components/ui/pagination"; -import { SearchInput } from "@/components/ui/search-input"; import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/shared/api/graphql/queries/role-management/getAccounts"; -import { useDebounce } from "@/hooks/useDebounce"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ColorDisplay } from "@/shared/components/display/color-display"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Table, tRowValue } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/role-management/global-permissions-form.tsx b/frontend/app/src/screens/role-management/global-permissions-form.tsx index e87d411052..9a4d8e0352 100644 --- a/frontend/app/src/screens/role-management/global-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/global-permissions-form.tsx @@ -1,28 +1,28 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; -import DropdownField from "@/components/form/fields/dropdown.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { isRequired } from "@/components/form/utils/validation"; -import { useSchema } from "@/hooks/useSchema"; +import DropdownField from "@/shared/components/form/fields/dropdown.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { useSchema } from "@/shared/hooks/useSchema"; import { globalDecisionOptions } from "./constants"; interface NumberPoolFormProps extends Pick { diff --git a/frontend/app/src/screens/role-management/global-permissions.tsx b/frontend/app/src/screens/role-management/global-permissions.tsx index c8f3d49fd8..83b9dcdf58 100644 --- a/frontend/app/src/screens/role-management/global-permissions.tsx +++ b/frontend/app/src/screens/role-management/global-permissions.tsx @@ -1,20 +1,20 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { InlineDisplay } from "@/components/display/inline-display"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Table, tRowValue } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import { BadgeCopy } from "@/components/ui/badge-copy"; -import { Pagination } from "@/components/ui/pagination"; -import { SearchInput } from "@/components/ui/search-input"; import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getGlobalPermissions"; -import { useDebounce } from "@/hooks/useDebounce"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Table, tRowValue } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import { BadgeCopy } from "@/shared/components/ui/badge-copy"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/role-management/group-member.tsx b/frontend/app/src/screens/role-management/group-member.tsx index 79968a9660..c3a89179c0 100644 --- a/frontend/app/src/screens/role-management/group-member.tsx +++ b/frontend/app/src/screens/role-management/group-member.tsx @@ -1,7 +1,7 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Avatar } from "@/components/display/avatar"; -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; -import { Tooltip } from "@/components/ui/tooltip"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Avatar } from "@/shared/components/display/avatar"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; +import { Tooltip } from "@/shared/components/ui/tooltip"; interface GroupMembersProps { members: Array; diff --git a/frontend/app/src/screens/role-management/groups.tsx b/frontend/app/src/screens/role-management/groups.tsx index 748b8e6175..acebe0cb91 100644 --- a/frontend/app/src/screens/role-management/groups.tsx +++ b/frontend/app/src/screens/role-management/groups.tsx @@ -1,19 +1,19 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { InlineDisplay } from "@/components/display/inline-display"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Table, tRowValue } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import { Pagination } from "@/components/ui/pagination"; -import { SearchInput } from "@/components/ui/search-input"; import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_GROUPS } from "@/shared/api/graphql/queries/role-management/getGroups"; -import { useDebounce } from "@/hooks/useDebounce"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Table, tRowValue } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/role-management/index.tsx b/frontend/app/src/screens/role-management/index.tsx index 670fbb1ec8..c6f31c22de 100644 --- a/frontend/app/src/screens/role-management/index.tsx +++ b/frontend/app/src/screens/role-management/index.tsx @@ -1,4 +1,4 @@ -import { Tabs } from "@/components/tabs-routes"; +import { Tabs } from "@/shared/components/tabs-routes"; import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_GROUP_OBJECT, @@ -7,9 +7,9 @@ import { OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_COUNTS } from "@/shared/api/graphql/queries/role-management/getCounts"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; export function RoleManagementNavigation() { diff --git a/frontend/app/src/screens/role-management/object-permissions-form.tsx b/frontend/app/src/screens/role-management/object-permissions-form.tsx index ce86596a06..6208381784 100644 --- a/frontend/app/src/screens/role-management/object-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/object-permissions-form.tsx @@ -1,29 +1,29 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { NodeFormProps } from "@/components/form/node-form"; -import { FormFieldValue } from "@/components/form/type"; -import { getCurrentFieldValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; -import DropdownField from "@/components/form/fields/dropdown.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import { NameSelect } from "@/components/form/name-select"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { isRequired } from "@/components/form/utils/validation"; -import { useSchema } from "@/hooks/useSchema"; +import DropdownField from "@/shared/components/form/fields/dropdown.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import { NameSelect } from "@/shared/components/form/name-select"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { useSchema } from "@/shared/hooks/useSchema"; import { objectDecisionOptions } from "./constants"; interface NumberPoolFormProps extends Pick { diff --git a/frontend/app/src/screens/role-management/object-permissions.tsx b/frontend/app/src/screens/role-management/object-permissions.tsx index a1a5788d4d..e0ab3963a9 100644 --- a/frontend/app/src/screens/role-management/object-permissions.tsx +++ b/frontend/app/src/screens/role-management/object-permissions.tsx @@ -1,21 +1,21 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { InlineDisplay } from "@/components/display/inline-display"; -import { Pill } from "@/components/display/pill"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Table, tRowValue } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; -import { BadgeCopy } from "@/components/ui/badge-copy"; -import { Pagination } from "@/components/ui/pagination"; -import { SearchInput } from "@/components/ui/search-input"; import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getObjectPermissions"; -import { useDebounce } from "@/hooks/useDebounce"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import { Pill } from "@/shared/components/display/pill"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Table, tRowValue } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; +import { BadgeCopy } from "@/shared/components/ui/badge-copy"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/role-management/relationship-display.tsx b/frontend/app/src/screens/role-management/relationship-display.tsx index 2723303906..aca3da92f1 100644 --- a/frontend/app/src/screens/role-management/relationship-display.tsx +++ b/frontend/app/src/screens/role-management/relationship-display.tsx @@ -1,6 +1,6 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Badge } from "@/components/ui/badge"; -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Badge } from "@/shared/components/ui/badge"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; interface RelationshipDisplayProps { items: Array; diff --git a/frontend/app/src/screens/role-management/roles.tsx b/frontend/app/src/screens/role-management/roles.tsx index 59a4c2cb8b..1e5d494f9b 100644 --- a/frontend/app/src/screens/role-management/roles.tsx +++ b/frontend/app/src/screens/role-management/roles.tsx @@ -1,24 +1,24 @@ -import ModalDeleteObject from "@/components/modals/modal-delete-object"; -import { Table, tRowValue } from "@/components/table/table"; -import { Pagination } from "@/components/ui/pagination"; import { ACCOUNT_ROLE_OBJECT } from "@/config/constants"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import { GET_ROLE_MANAGEMENT_ROLES } from "@/shared/api/graphql/queries/role-management/getRoles"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Table, tRowValue } from "@/shared/components/table/table"; +import { Pagination } from "@/shared/components/ui/pagination"; import { useAtomValue } from "jotai"; import { useState } from "react"; import ErrorScreen from "../errors/error-screen"; import LoadingScreen from "../loading-screen/loading-screen"; -import { Button } from "@/components/buttons/button-primitive"; -import { InlineDisplay } from "@/components/display/inline-display"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; -import { Badge } from "@/components/ui/badge"; -import { SearchInput } from "@/components/ui/search-input"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { useDebounce } from "@/hooks/useDebounce"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; +import { Badge } from "@/shared/components/ui/badge"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import UnauthorizedScreen from "../errors/unauthorized-screen"; import { getPermission } from "../permission/utils"; diff --git a/frontend/app/src/screens/schema/attribute-display.tsx b/frontend/app/src/screens/schema/attribute-display.tsx index a3adf0fbed..8d3c7ac331 100644 --- a/frontend/app/src/screens/schema/attribute-display.tsx +++ b/frontend/app/src/screens/schema/attribute-display.tsx @@ -1,4 +1,4 @@ -import Accordion from "@/components/display/accordion"; +import Accordion from "@/shared/components/display/accordion"; import { components } from "@/shared/api/rest/types.generated"; import { AccordionStyled, NullDisplay, PropertyRow } from "./styled"; diff --git a/frontend/app/src/screens/schema/get-schema.test.ts b/frontend/app/src/screens/schema/get-schema.test.ts index fb15a91881..a91c5e39f0 100644 --- a/frontend/app/src/screens/schema/get-schema.test.ts +++ b/frontend/app/src/screens/schema/get-schema.test.ts @@ -1,5 +1,5 @@ -import { store } from "@/state"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; +import { store } from "@/shared/stores"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { beforeEach, describe, expect, it } from "vitest"; import { generateGenericSchema, diff --git a/frontend/app/src/screens/schema/get-schema.ts b/frontend/app/src/screens/schema/get-schema.ts index e5fa646fae..7ae248d221 100644 --- a/frontend/app/src/screens/schema/get-schema.ts +++ b/frontend/app/src/screens/schema/get-schema.ts @@ -1,4 +1,4 @@ -import { store } from "@/state"; +import { store } from "@/shared/stores"; import { IProfileSchema, genericsState, @@ -6,7 +6,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/state/atoms/schema.atom"; +} from "@/screens/schema/schema.atom"; type GetSchema = (kind?: string | null) => | { diff --git a/frontend/app/src/screens/schema/relationship-display.tsx b/frontend/app/src/screens/schema/relationship-display.tsx index 44eca228ad..c60bb818fe 100644 --- a/frontend/app/src/screens/schema/relationship-display.tsx +++ b/frontend/app/src/screens/schema/relationship-display.tsx @@ -1,6 +1,6 @@ -import { Badge } from "@/components/ui/badge"; +import { Badge } from "@/shared/components/ui/badge"; import { components } from "@/shared/api/rest/types.generated"; -import { warnUnexpectedType } from "@/utils/common"; +import { warnUnexpectedType } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { AccordionStyled, ModelDisplay, PropertyRow } from "./styled"; diff --git a/frontend/app/src/screens/schema/schema-help-menu.tsx b/frontend/app/src/screens/schema/schema-help-menu.tsx index 296691d950..d721f0c8c7 100644 --- a/frontend/app/src/screens/schema/schema-help-menu.tsx +++ b/frontend/app/src/screens/schema/schema-help-menu.tsx @@ -1,14 +1,14 @@ -import { Button } from "@/components/buttons/button-primitive"; +import { Button } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { INFRAHUB_DOC_LOCAL } from "@/config/config"; import { MENU_EXCLUDELIST } from "@/config/constants"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/schema/schema-selector.tsx b/frontend/app/src/screens/schema/schema-selector.tsx index 560d1b347a..3096087d12 100644 --- a/frontend/app/src/screens/schema/schema-selector.tsx +++ b/frontend/app/src/screens/schema/schema-selector.tsx @@ -1,10 +1,10 @@ -import Accordion from "@/components/display/accordion"; -import { Badge } from "@/components/ui/badge"; -import { SearchInput } from "@/components/ui/search-input"; +import Accordion from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/ui/badge"; +import { SearchInput } from "@/shared/components/ui/search-input"; import { QSP } from "@/config/qsp"; import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { classNames } from "@/utils/common"; +import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import * as R from "ramda"; diff --git a/frontend/app/src/screens/schema/schema-viewer.tsx b/frontend/app/src/screens/schema/schema-viewer.tsx index 696db42ec6..4655352f64 100644 --- a/frontend/app/src/screens/schema/schema-viewer.tsx +++ b/frontend/app/src/screens/schema/schema-viewer.tsx @@ -1,9 +1,9 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Badge } from "@/components/ui/badge"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Badge } from "@/shared/components/ui/badge"; import { QSP } from "@/config/qsp"; import { isGenericSchema, isNodeSchema, isProfileSchema } from "@/screens/schema/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { classNames } from "@/utils/common"; +import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { classNames } from "@/shared/utils/common"; import { Tab } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/state/atoms/schema.atom.ts b/frontend/app/src/screens/schema/schema.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/schema.atom.ts rename to frontend/app/src/screens/schema/schema.atom.ts diff --git a/frontend/app/src/state/atoms/schemaKindLabel.atom.ts b/frontend/app/src/screens/schema/schemaKindLabel.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/schemaKindLabel.atom.ts rename to frontend/app/src/screens/schema/schemaKindLabel.atom.ts diff --git a/frontend/app/src/state/atoms/schemaKindName.atom.ts b/frontend/app/src/screens/schema/schemaKindName.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/schemaKindName.atom.ts rename to frontend/app/src/screens/schema/schemaKindName.atom.ts diff --git a/frontend/app/src/screens/schema/styled.tsx b/frontend/app/src/screens/schema/styled.tsx index 121bf2fe2a..52816ff2f0 100644 --- a/frontend/app/src/screens/schema/styled.tsx +++ b/frontend/app/src/screens/schema/styled.tsx @@ -1,7 +1,7 @@ -import Accordion, { AccordionProps } from "@/components/display/accordion"; -import { Badge } from "@/components/ui/badge"; +import Accordion, { AccordionProps } from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/ui/badge"; import { QSP } from "@/config/qsp"; -import { classNames, warnUnexpectedType } from "@/utils/common"; +import { classNames, warnUnexpectedType } from "@/shared/utils/common"; import { Tab } from "@headlessui/react"; import { ReactElement } from "react"; import { ArrayParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/screens/schema/utils.test.ts b/frontend/app/src/screens/schema/utils.test.ts index dff6ff0c58..a2f766cd50 100644 --- a/frontend/app/src/screens/schema/utils.test.ts +++ b/frontend/app/src/screens/schema/utils.test.ts @@ -1,5 +1,5 @@ -import { store } from "@/state"; -import { schemaState } from "@/state/atoms/schema.atom"; +import { store } from "@/shared/stores"; +import { schemaState } from "@/screens/schema/schema.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateGenericSchema, diff --git a/frontend/app/src/screens/schema/utils.ts b/frontend/app/src/screens/schema/utils.ts index b7e1189110..1de1b3b5f1 100644 --- a/frontend/app/src/screens/schema/utils.ts +++ b/frontend/app/src/screens/schema/utils.ts @@ -1,11 +1,11 @@ -import { store } from "@/state"; +import { store } from "@/shared/stores"; import { IModelSchema, IProfileSchema, iGenericSchema, iNodeSchema, schemaState, -} from "@/state/atoms/schema.atom"; +} from "@/screens/schema/schema.atom"; export const isOfKind = (kind: string, schema: IModelSchema) => { if (schema.kind === kind) return true; diff --git a/frontend/app/src/decorators/withSchemaContext.tsx b/frontend/app/src/screens/schema/withSchemaContext.tsx similarity index 88% rename from frontend/app/src/decorators/withSchemaContext.tsx rename to frontend/app/src/screens/schema/withSchemaContext.tsx index e1af561840..20d681b6a7 100644 --- a/frontend/app/src/decorators/withSchemaContext.tsx +++ b/frontend/app/src/screens/schema/withSchemaContext.tsx @@ -1,9 +1,7 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { tokenSchema } from "@/screens/user-profile/token-schema"; -import { Branch } from "@/shared/api/graphql/generated/graphql"; -import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; +import { findSelectedBranch } from "@/screens/branches/branches"; +import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; import { IProfileSchema, currentSchemaHashAtom, @@ -14,13 +12,15 @@ import { namespacesState, profilesAtom, schemaState, -} from "@/state/atoms/schema.atom"; -import { schemaKindLabelState } from "@/state/atoms/schemaKindLabel.atom"; -import { schemaKindNameState } from "@/state/atoms/schemaKindName.atom"; -import { stateAtom } from "@/state/atoms/state.atom"; -import { findSelectedBranch } from "@/utils/branches"; -import { sortByName, sortByOrderWeight } from "@/utils/common"; -import { fetchUrl } from "@/utils/fetch"; +} from "@/screens/schema/schema.atom"; +import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; +import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { tokenSchema } from "@/screens/user-profile/token-schema"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { stateAtom } from "@/shared/stores/state.atom"; +import { sortByName, sortByOrderWeight } from "@/shared/utils/common"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; import * as R from "ramda"; import { createContext } from "react"; diff --git a/frontend/app/src/screens/tasks/logs.tsx b/frontend/app/src/screens/tasks/logs.tsx index 23bb26b35f..17a7e7c61e 100644 --- a/frontend/app/src/screens/tasks/logs.tsx +++ b/frontend/app/src/screens/tasks/logs.tsx @@ -1,6 +1,6 @@ -import { DateDisplay } from "@/components/display/date-display"; -import { Table } from "@/components/table/table"; -import { Badge } from "@/components/ui/badge"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { Table } from "@/shared/components/table/table"; +import { Badge } from "@/shared/components/ui/badge"; export type tLog = { id: string; diff --git a/frontend/app/src/screens/tasks/task-item-details.tsx b/frontend/app/src/screens/tasks/task-item-details.tsx index b74d93e46e..9d364b24f1 100644 --- a/frontend/app/src/screens/tasks/task-item-details.tsx +++ b/frontend/app/src/screens/tasks/task-item-details.tsx @@ -1,12 +1,12 @@ import { TASK_OBJECT } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; - -import { DateDisplay } from "@/components/display/date-display"; -import { InlineDisplay } from "@/components/display/inline-display"; -import { List } from "@/components/table/list"; -import { Badge } from "@/components/ui/badge"; -import { Id } from "@/components/ui/id"; -import { SearchInput } from "@/components/ui/search-input"; +import useQuery from "@/shared/hooks/useQuery"; + +import { DateDisplay } from "@/shared/components/display/date-display"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import { List } from "@/shared/components/table/list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Id } from "@/shared/components/ui/id"; +import { SearchInput } from "@/shared/components/ui/search-input"; import { QSP } from "@/config/qsp"; import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import ErrorScreen from "@/screens/errors/error-screen"; diff --git a/frontend/app/src/screens/tasks/task-items.tsx b/frontend/app/src/screens/tasks/task-items.tsx index 48689117b7..0e6d6a825b 100644 --- a/frontend/app/src/screens/tasks/task-items.tsx +++ b/frontend/app/src/screens/tasks/task-items.tsx @@ -1,21 +1,21 @@ -import { Table, tColumn } from "@/components/table/table"; -import { Pagination } from "@/components/ui/pagination"; +import { Table, tColumn } from "@/shared/components/table/table"; +import { Pagination } from "@/shared/components/ui/pagination"; import { SEARCH_ANY_FILTER, SEARCH_FILTERS, TASK_OBJECT, TASK_TAB } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import Content from "@/screens/layout/content"; -import { DateDisplay } from "@/components/display/date-display"; -import { InlineDisplay } from "@/components/display/inline-display"; -import { Filters } from "@/components/filters/filters"; -import { Id } from "@/components/ui/id"; -import { SearchInput, SearchInputProps } from "@/components/ui/search-input"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { InlineDisplay } from "@/shared/components/display/inline-display"; +import { Filters } from "@/shared/components/filters/filters"; +import { Id } from "@/shared/components/ui/id"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { QSP } from "@/config/qsp"; import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; -import useFilters, { Filter } from "@/hooks/useFilters"; +import useFilters, { Filter } from "@/shared/hooks/useFilters"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { debounce } from "@/utils/common"; -import { constructPath } from "@/utils/fetch"; +import { debounce } from "@/shared/utils/common"; +import { constructPath } from "@/shared/api/rest/fetch"; import { forwardRef, useImperativeHandle } from "react"; import { useLocation, useParams } from "react-router-dom"; import { getStateBadge } from "./task-item-details"; diff --git a/frontend/app/src/screens/user-profile/tab-profile.tsx b/frontend/app/src/screens/user-profile/tab-profile.tsx index 6fad37d6db..a91c26e650 100644 --- a/frontend/app/src/screens/user-profile/tab-profile.tsx +++ b/frontend/app/src/screens/user-profile/tab-profile.tsx @@ -1,12 +1,12 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemDetails from "@/screens/object-item-details/object-item-details-paginated"; -import { genericsState } from "@/state/atoms/schema.atom"; -import { parseJwt } from "@/utils/common"; +import { genericsState } from "@/screens/schema/schema.atom"; +import { parseJwt } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/user-profile/tab-tokens.tsx b/frontend/app/src/screens/user-profile/tab-tokens.tsx index a51aaa0fb4..a824735932 100644 --- a/frontend/app/src/screens/user-profile/tab-tokens.tsx +++ b/frontend/app/src/screens/user-profile/tab-tokens.tsx @@ -1,12 +1,12 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { schemaState } from "@/state/atoms/schema.atom"; +import { schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useState } from "react"; import LoadingScreen from "../loading-screen/loading-screen"; import ObjectItems from "../object-items/object-items-paginated"; -import { TokenInput } from "@/components/display/token-input"; -import ModalSuccess from "@/components/modals/modal-success"; +import { TokenInput } from "@/shared/components/display/token-input"; +import ModalSuccess from "@/shared/components/modals/modal-success"; export default function TabTokens() { const [open, setOpen] = useState(false); diff --git a/frontend/app/src/screens/user-profile/tab-update-password.tsx b/frontend/app/src/screens/user-profile/tab-update-password.tsx index 9f657a6d95..0930d13674 100644 --- a/frontend/app/src/screens/user-profile/tab-update-password.tsx +++ b/frontend/app/src/screens/user-profile/tab-update-password.tsx @@ -1,10 +1,10 @@ -import PasswordInputField from "@/components/form/fields/password-input.field"; -import { isRequired } from "@/components/form/utils/validation"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Card } from "@/components/ui/card"; -import { Form, FormSubmit } from "@/components/ui/form"; +import PasswordInputField from "@/shared/components/form/fields/password-input.field"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Card } from "@/shared/components/ui/card"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import Content from "@/screens/layout/content"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/screens/user-profile/user-profile.tsx b/frontend/app/src/screens/user-profile/user-profile.tsx index 57af479c8e..cc2deeda8d 100644 --- a/frontend/app/src/screens/user-profile/user-profile.tsx +++ b/frontend/app/src/screens/user-profile/user-profile.tsx @@ -1,13 +1,13 @@ -import { Avatar } from "@/components/display/avatar"; -import { Tabs } from "@/components/tabs"; +import { Avatar } from "@/shared/components/display/avatar"; +import { Tabs } from "@/shared/components/tabs"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; -import { useTitle } from "@/hooks/useTitle"; +import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState } from "@/state/atoms/schema.atom"; +import { genericsState } from "@/screens/schema/schema.atom"; import { gql, useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx index 99441dcfab..778dd14b17 100644 --- a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx +++ b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx @@ -1,7 +1,7 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { getNewToken } from "@/hooks/useAuth"; +import { getNewToken } from "@/shared/hooks/useAuth"; import { ApolloClient, DefaultOptions, diff --git a/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts b/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts index fcc7ed0a73..0c6d024087 100644 --- a/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts +++ b/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iNodeSchema } from "@/state/atoms/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; import { gql } from "@apollo/client"; import { VariableType, jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts index ee152b03da..4c202f1aad 100644 --- a/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts +++ b/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts @@ -1,4 +1,4 @@ -import "@/utils/handlebars"; // Import handlebars utils +import "@/shared/utils/handlebars"; // Import handlebars utils import Handlebars from "handlebars"; export const getObjectDetailsPaginated = Handlebars.compile(` diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts b/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts index 48cc43a16f..26b839b648 100644 --- a/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts +++ b/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts @@ -1,4 +1,4 @@ -import "@/utils/handlebars"; // Import handlebars utils +import "@/shared/utils/handlebars"; // Import handlebars utils import Handlebars from "handlebars"; export const getObjectItemsPaginated = Handlebars.compile(` diff --git a/frontend/app/src/shared/api/rest/client.ts b/frontend/app/src/shared/api/rest/client.ts index 87d84124a1..c4339d2a9c 100644 --- a/frontend/app/src/shared/api/rest/client.ts +++ b/frontend/app/src/shared/api/rest/client.ts @@ -4,7 +4,7 @@ import createClient, { Middleware } from "openapi-fetch"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { getNewToken } from "@/hooks/useAuth"; +import { getNewToken } from "@/shared/hooks/useAuth"; import type { paths } from "@/shared/api/rest/types.generated"; export const queryClient = new QueryClient({ diff --git a/frontend/app/src/utils/fetch.ts b/frontend/app/src/shared/api/rest/fetch.ts similarity index 100% rename from frontend/app/src/utils/fetch.ts rename to frontend/app/src/shared/api/rest/fetch.ts diff --git a/frontend/app/src/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx similarity index 93% rename from frontend/app/src/components/account-menu.tsx rename to frontend/app/src/shared/components/account-menu.tsx index 7780119ef3..e3ce536292 100644 --- a/frontend/app/src/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -1,14 +1,14 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Avatar } from "@/components/display/avatar"; -import { Skeleton } from "@/components/skeleton"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Avatar } from "@/shared/components/display/avatar"; +import { Skeleton } from "@/shared/components/skeleton"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { DropdownMenu, DropdownMenuContent, DropdownMenuDivider, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { INFRAHUB_DISCORD_URL, INFRAHUB_DOC_LOCAL, @@ -17,10 +17,10 @@ import { } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; -import { useAuth } from "@/hooks/useAuth"; +import { useAuth } from "@/shared/hooks/useAuth"; import { AppVersion } from "@/screens/layout/app-version"; -import { IModelSchema, genericsState } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; +import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { gql, useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx similarity index 93% rename from frontend/app/src/components/branch-selector.tsx rename to frontend/app/src/shared/components/branch-selector.tsx index 788d227380..c6173ad630 100644 --- a/frontend/app/src/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -1,24 +1,24 @@ -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; import { QSP } from "@/config/qsp"; +import { branchesToSelectOptions } from "@/screens/branches/branches"; +import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; import { Branch } from "@/shared/api/graphql/generated/graphql"; -import { branchesState, currentBranchAtom } from "@/state/atoms/branches.atom"; -import { branchesToSelectOptions } from "@/utils/branches"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; import { StringParam, useQueryParam } from "use-query-params"; -import { ComboboxItem } from "@/components/ui/combobox"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ComboboxItem } from "@/shared/components/ui/combobox"; import { Command, CommandEmpty, CommandInput, CommandItem, CommandList, -} from "@/components/ui/command"; -import { useAuth } from "@/hooks/useAuth"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { constructPath } from "@/utils/fetch"; +} from "@/shared/components/ui/command"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { constructPath } from "@/shared/api/rest/fetch"; import { useCommandState } from "cmdk"; import { Button, ButtonWithTooltip, LinkButton } from "./buttons/button-primitive"; import BranchCreateForm from "./form/branch-create-form"; diff --git a/frontend/app/src/components/buttons/button-primitive.tsx b/frontend/app/src/shared/components/buttons/button-primitive.tsx similarity index 92% rename from frontend/app/src/components/buttons/button-primitive.tsx rename to frontend/app/src/shared/components/buttons/button-primitive.tsx index 95e0e53e43..e22e314aef 100644 --- a/frontend/app/src/components/buttons/button-primitive.tsx +++ b/frontend/app/src/shared/components/buttons/button-primitive.tsx @@ -1,7 +1,7 @@ -import { Spinner } from "@/components/ui/spinner"; -import { focusStyle } from "@/components/ui/style"; -import { Tooltip, TooltipProps } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { focusStyle } from "@/shared/components/ui/style"; +import { Tooltip, TooltipProps } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; import { type VariantProps, cva } from "class-variance-authority"; import { ButtonHTMLAttributes, forwardRef } from "react"; import { Link, LinkProps } from "react-router-dom"; diff --git a/frontend/app/src/components/buttons/button-with-tooltip.tsx b/frontend/app/src/shared/components/buttons/button-with-tooltip.tsx similarity index 85% rename from frontend/app/src/components/buttons/button-with-tooltip.tsx rename to frontend/app/src/shared/components/buttons/button-with-tooltip.tsx index 2e43b22d00..6e6c9f688a 100644 --- a/frontend/app/src/components/buttons/button-with-tooltip.tsx +++ b/frontend/app/src/shared/components/buttons/button-with-tooltip.tsx @@ -1,4 +1,4 @@ -import { Tooltip, TooltipProps } from "@/components/ui/tooltip"; +import { Tooltip, TooltipProps } from "@/shared/components/ui/tooltip"; import { Button, ButtonProps } from "./button"; interface ButtonWithTooltipProps extends ButtonProps { diff --git a/frontend/app/src/components/buttons/button.tsx b/frontend/app/src/shared/components/buttons/button.tsx similarity index 98% rename from frontend/app/src/components/buttons/button.tsx rename to frontend/app/src/shared/components/buttons/button.tsx index d25b4f4002..7f17ee1f7c 100644 --- a/frontend/app/src/components/buttons/button.tsx +++ b/frontend/app/src/shared/components/buttons/button.tsx @@ -1,5 +1,5 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { ButtonHTMLAttributes, forwardRef } from "react"; export type ButtonProps = ButtonHTMLAttributes & { diff --git a/frontend/app/src/components/buttons/clipboard.tsx b/frontend/app/src/shared/components/buttons/clipboard.tsx similarity index 89% rename from frontend/app/src/components/buttons/clipboard.tsx rename to frontend/app/src/shared/components/buttons/clipboard.tsx index d651000fec..4255efaac0 100644 --- a/frontend/app/src/components/buttons/clipboard.tsx +++ b/frontend/app/src/shared/components/buttons/clipboard.tsx @@ -1,5 +1,5 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Tooltip } from "@/components/ui/tooltip"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { ClipboardDocumentCheckIcon, ClipboardDocumentIcon } from "@heroicons/react/24/outline"; import { useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/components/buttons/copy-to-clipboard.tsx b/frontend/app/src/shared/components/buttons/copy-to-clipboard.tsx similarity index 100% rename from frontend/app/src/components/buttons/copy-to-clipboard.tsx rename to frontend/app/src/shared/components/buttons/copy-to-clipboard.tsx diff --git a/frontend/app/src/components/buttons/more-button.tsx b/frontend/app/src/shared/components/buttons/more-button.tsx similarity index 100% rename from frontend/app/src/components/buttons/more-button.tsx rename to frontend/app/src/shared/components/buttons/more-button.tsx diff --git a/frontend/app/src/components/buttons/retry.tsx b/frontend/app/src/shared/components/buttons/retry.tsx similarity index 94% rename from frontend/app/src/components/buttons/retry.tsx rename to frontend/app/src/shared/components/buttons/retry.tsx index 15bd14e18f..1c758b40e9 100644 --- a/frontend/app/src/components/buttons/retry.tsx +++ b/frontend/app/src/shared/components/buttons/retry.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; type tRetryProps = { diff --git a/frontend/app/src/components/buttons/tabs-buttons.tsx b/frontend/app/src/shared/components/buttons/tabs-buttons.tsx similarity index 100% rename from frontend/app/src/components/buttons/tabs-buttons.tsx rename to frontend/app/src/shared/components/buttons/tabs-buttons.tsx diff --git a/frontend/app/src/components/buttons/toggle-buttons.tsx b/frontend/app/src/shared/components/buttons/toggle-buttons.tsx similarity index 100% rename from frontend/app/src/components/buttons/toggle-buttons.tsx rename to frontend/app/src/shared/components/buttons/toggle-buttons.tsx diff --git a/frontend/app/src/components/conversations/add-comment.tsx b/frontend/app/src/shared/components/conversations/add-comment.tsx similarity index 78% rename from frontend/app/src/components/conversations/add-comment.tsx rename to frontend/app/src/shared/components/conversations/add-comment.tsx index 750b47c2e8..df514b67ea 100644 --- a/frontend/app/src/components/conversations/add-comment.tsx +++ b/frontend/app/src/shared/components/conversations/add-comment.tsx @@ -1,9 +1,9 @@ -import { Button, LinkButton } from "@/components/buttons/button-primitive"; -import TextareaField from "@/components/form/fields/textarea.field"; -import { isRequired } from "@/components/form/utils/validation"; -import { Form, FormRef, FormSubmit } from "@/components/ui/form"; -import { useAuth } from "@/hooks/useAuth"; -import { constructPath } from "@/utils/fetch"; +import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; +import TextareaField from "@/shared/components/form/fields/textarea.field"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import { Form, FormRef, FormSubmit } from "@/shared/components/ui/form"; +import { useAuth } from "@/shared/hooks/useAuth"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ReactElement, forwardRef } from "react"; import { useLocation } from "react-router-dom"; diff --git a/frontend/app/src/components/conversations/comment.tsx b/frontend/app/src/shared/components/conversations/comment.tsx similarity index 77% rename from frontend/app/src/components/conversations/comment.tsx rename to frontend/app/src/shared/components/conversations/comment.tsx index 600fae51d2..f9533448a2 100644 --- a/frontend/app/src/components/conversations/comment.tsx +++ b/frontend/app/src/shared/components/conversations/comment.tsx @@ -1,7 +1,7 @@ -import { Avatar } from "@/components/display/avatar"; -import { DateDisplay } from "@/components/display/date-display"; -import { MarkdownViewer } from "@/components/editor/markdown-viewer"; -import { classNames } from "@/utils/common"; +import { Avatar } from "@/shared/components/display/avatar"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { MarkdownViewer } from "@/shared/components/editor/markdown-viewer"; +import { classNames } from "@/shared/utils/common"; import React from "react"; type CommentProps = { diff --git a/frontend/app/src/components/conversations/thread.tsx b/frontend/app/src/shared/components/conversations/thread.tsx similarity index 88% rename from frontend/app/src/components/conversations/thread.tsx rename to frontend/app/src/shared/components/conversations/thread.tsx index 2f7ec79924..c4a8535d31 100644 --- a/frontend/app/src/components/conversations/thread.tsx +++ b/frontend/app/src/shared/components/conversations/thread.tsx @@ -1,22 +1,22 @@ -import { Button } from "@/components/buttons/button"; -import { Checkbox } from "@/components/inputs/checkbox"; -import ModalConfirm from "@/components/modals/modal-confirm"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Card } from "@/components/ui/card"; -import { Tooltip } from "@/components/ui/tooltip"; import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { getThreadTitle } from "@/screens/diff/diff"; +import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; +import { getPermission } from "@/screens/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { useAuth } from "@/hooks/useAuth"; -import useQuery from "@/hooks/useQuery"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { getThreadTitle } from "@/utils/diff"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { Button } from "@/shared/components/buttons/button"; +import { Checkbox } from "@/shared/components/inputs/checkbox"; +import ModalConfirm from "@/shared/components/modals/modal-confirm"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Card } from "@/shared/components/ui/card"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { formatISO, isBefore, parseISO } from "date-fns"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/components/display/accordion.tsx b/frontend/app/src/shared/components/display/accordion.tsx similarity index 95% rename from frontend/app/src/components/display/accordion.tsx rename to frontend/app/src/shared/components/display/accordion.tsx index 41321f5521..783164d04d 100644 --- a/frontend/app/src/components/display/accordion.tsx +++ b/frontend/app/src/shared/components/display/accordion.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { CSSProperties, useState } from "react"; diff --git a/frontend/app/src/components/display/avatar.tsx b/frontend/app/src/shared/components/display/avatar.tsx similarity index 96% rename from frontend/app/src/components/display/avatar.tsx rename to frontend/app/src/shared/components/display/avatar.tsx index 6978e06016..5555828a3d 100644 --- a/frontend/app/src/components/display/avatar.tsx +++ b/frontend/app/src/shared/components/display/avatar.tsx @@ -1,5 +1,5 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { type VariantProps, cva } from "class-variance-authority"; import { HTMLAttributes, forwardRef } from "react"; diff --git a/frontend/app/src/components/display/badge-circle.tsx b/frontend/app/src/shared/components/display/badge-circle.tsx similarity index 98% rename from frontend/app/src/components/display/badge-circle.tsx rename to frontend/app/src/shared/components/display/badge-circle.tsx index 18d5392de2..44a1708801 100644 --- a/frontend/app/src/components/display/badge-circle.tsx +++ b/frontend/app/src/shared/components/display/badge-circle.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { XMarkIcon } from "@heroicons/react/24/outline"; import { Circle } from "./circle"; diff --git a/frontend/app/src/components/display/badge.tsx b/frontend/app/src/shared/components/display/badge.tsx similarity index 98% rename from frontend/app/src/components/display/badge.tsx rename to frontend/app/src/shared/components/display/badge.tsx index c08178c66a..c29dcbb35d 100644 --- a/frontend/app/src/components/display/badge.tsx +++ b/frontend/app/src/shared/components/display/badge.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { XMarkIcon } from "@heroicons/react/24/outline"; export enum BADGE_TYPES { diff --git a/frontend/app/src/components/display/circle.tsx b/frontend/app/src/shared/components/display/circle.tsx similarity index 88% rename from frontend/app/src/components/display/circle.tsx rename to frontend/app/src/shared/components/display/circle.tsx index 97ef41eabb..c0ec6d7887 100644 --- a/frontend/app/src/components/display/circle.tsx +++ b/frontend/app/src/shared/components/display/circle.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; const DEFAULT_CIRCLE_CLASS = "h-1.5 w-1.5 mr-1 fill-gray-400"; diff --git a/frontend/app/src/components/display/color-display.tsx b/frontend/app/src/shared/components/display/color-display.tsx similarity index 94% rename from frontend/app/src/components/display/color-display.tsx rename to frontend/app/src/shared/components/display/color-display.tsx index 8f1d4d703c..eba7b4cea9 100644 --- a/frontend/app/src/components/display/color-display.tsx +++ b/frontend/app/src/shared/components/display/color-display.tsx @@ -1,4 +1,4 @@ -import { getTextColor } from "@/utils/common"; +import { getTextColor } from "@/shared/utils/common"; import { Tooltip } from "../ui/tooltip"; type tColorDisplay = { diff --git a/frontend/app/src/components/display/date-display.tsx b/frontend/app/src/shared/components/display/date-display.tsx similarity index 91% rename from frontend/app/src/components/display/date-display.tsx rename to frontend/app/src/shared/components/display/date-display.tsx index 9937182466..1131333f1d 100644 --- a/frontend/app/src/components/display/date-display.tsx +++ b/frontend/app/src/shared/components/display/date-display.tsx @@ -1,5 +1,5 @@ -import { Tooltip } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; import { differenceInDays, format, formatDistanceToNow } from "date-fns"; type DateDisplayProps = { diff --git a/frontend/app/src/components/display/duration-display.tsx b/frontend/app/src/shared/components/display/duration-display.tsx similarity index 94% rename from frontend/app/src/components/display/duration-display.tsx rename to frontend/app/src/shared/components/display/duration-display.tsx index d3aa178c69..8bff4eaf05 100644 --- a/frontend/app/src/components/display/duration-display.tsx +++ b/frontend/app/src/shared/components/display/duration-display.tsx @@ -1,4 +1,4 @@ -import { Tooltip } from "@/components/ui/tooltip"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { Icon } from "@iconify-icon/react"; import { format, formatDistanceStrict } from "date-fns"; diff --git a/frontend/app/src/components/display/inline-display.tsx b/frontend/app/src/shared/components/display/inline-display.tsx similarity index 89% rename from frontend/app/src/components/display/inline-display.tsx rename to frontend/app/src/shared/components/display/inline-display.tsx index 33384598c5..1e4cab2c16 100644 --- a/frontend/app/src/components/display/inline-display.tsx +++ b/frontend/app/src/shared/components/display/inline-display.tsx @@ -1,6 +1,6 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; -import { debounce } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; +import { debounce } from "@/shared/utils/common"; import { ReactElement, useState } from "react"; type Item = string | Record; diff --git a/frontend/app/src/components/display/meta-details-tooltips.tsx b/frontend/app/src/shared/components/display/meta-details-tooltips.tsx similarity index 82% rename from frontend/app/src/components/display/meta-details-tooltips.tsx rename to frontend/app/src/shared/components/display/meta-details-tooltips.tsx index a9a3aa040f..e4b9feb825 100644 --- a/frontend/app/src/components/display/meta-details-tooltips.tsx +++ b/frontend/app/src/shared/components/display/meta-details-tooltips.tsx @@ -1,11 +1,11 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { PropertyList } from "@/components/table/property-list"; -import { Badge } from "@/components/ui/badge"; -import { Link } from "@/components/ui/link"; -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Link } from "@/shared/components/ui/link"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; import { AnyAttribute } from "@/shared/api/graphql/generated/graphql"; -import { formatFullDate, formatRelativeTimeFromNow } from "@/utils/date"; -import { constructPath } from "@/utils/fetch"; +import { formatFullDate, formatRelativeTimeFromNow } from "@/shared/utils/date"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; diff --git a/frontend/app/src/components/display/password-display.tsx b/frontend/app/src/shared/components/display/password-display.tsx similarity index 94% rename from frontend/app/src/components/display/password-display.tsx rename to frontend/app/src/shared/components/display/password-display.tsx index 953296a11c..49b49eb6e8 100644 --- a/frontend/app/src/components/display/password-display.tsx +++ b/frontend/app/src/shared/components/display/password-display.tsx @@ -1,4 +1,4 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { MAX_PASSWORD_DOTS_DISPLAY, MAX_VALUE_LENGTH_DISPLAY } from "@/config/constants"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/components/display/pie-chart.tsx b/frontend/app/src/shared/components/display/pie-chart.tsx similarity index 100% rename from frontend/app/src/components/display/pie-chart.tsx rename to frontend/app/src/shared/components/display/pie-chart.tsx diff --git a/frontend/app/src/components/display/pill.tsx b/frontend/app/src/shared/components/display/pill.tsx similarity index 96% rename from frontend/app/src/components/display/pill.tsx rename to frontend/app/src/shared/components/display/pill.tsx index e688fda736..681347f2df 100644 --- a/frontend/app/src/components/display/pill.tsx +++ b/frontend/app/src/shared/components/display/pill.tsx @@ -1,5 +1,5 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { ReactNode } from "react"; diff --git a/frontend/app/src/components/display/popover.tsx b/frontend/app/src/shared/components/display/popover.tsx similarity index 96% rename from frontend/app/src/components/display/popover.tsx rename to frontend/app/src/shared/components/display/popover.tsx index 600ad15b99..9ed158d0db 100644 --- a/frontend/app/src/components/display/popover.tsx +++ b/frontend/app/src/shared/components/display/popover.tsx @@ -1,7 +1,7 @@ // type PopOver = {} -import Transition from "@/components/ui/transition"; -import { classNames } from "@/utils/common"; +import Transition from "@/shared/components/ui/transition"; +import { classNames } from "@/shared/utils/common"; import { Popover } from "@headlessui/react"; import { CSSProperties, forwardRef, useState } from "react"; import { usePopper } from "react-popper"; diff --git a/frontend/app/src/components/display/properties-popover.tsx b/frontend/app/src/shared/components/display/properties-popover.tsx similarity index 95% rename from frontend/app/src/components/display/properties-popover.tsx rename to frontend/app/src/shared/components/display/properties-popover.tsx index d0bc8d1159..97ca4984f3 100644 --- a/frontend/app/src/components/display/properties-popover.tsx +++ b/frontend/app/src/shared/components/display/properties-popover.tsx @@ -1,7 +1,7 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { Permission } from "@/screens/permission/types"; -import { metaEditFieldDetailsState } from "@/state/atoms/showMetaEdit.atom copy"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/components/display/question-mark.tsx b/frontend/app/src/shared/components/display/question-mark.tsx similarity index 70% rename from frontend/app/src/components/display/question-mark.tsx rename to frontend/app/src/shared/components/display/question-mark.tsx index e9287731a9..4c92ec5009 100644 --- a/frontend/app/src/components/display/question-mark.tsx +++ b/frontend/app/src/shared/components/display/question-mark.tsx @@ -1,6 +1,6 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Tooltip } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; type tQuestionMark = { className?: string; diff --git a/frontend/app/src/components/display/sidepanel-title.tsx b/frontend/app/src/shared/components/display/sidepanel-title.tsx similarity index 92% rename from frontend/app/src/components/display/sidepanel-title.tsx rename to frontend/app/src/shared/components/display/sidepanel-title.tsx index dd8f6f3d9c..41096dd3ad 100644 --- a/frontend/app/src/components/display/sidepanel-title.tsx +++ b/frontend/app/src/shared/components/display/sidepanel-title.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/components/display/slide-over.tsx b/frontend/app/src/shared/components/display/slide-over.tsx similarity index 94% rename from frontend/app/src/components/display/slide-over.tsx rename to frontend/app/src/shared/components/display/slide-over.tsx index 3a05544b30..bfd0c49736 100644 --- a/frontend/app/src/components/display/slide-over.tsx +++ b/frontend/app/src/shared/components/display/slide-over.tsx @@ -1,8 +1,8 @@ -import { ObjectHelpButton } from "@/components/menu/object-help-button"; -import { Badge } from "@/components/ui/badge"; -import usePrevious from "@/hooks/usePrevious"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Badge } from "@/shared/components/ui/badge"; +import usePrevious from "@/shared/hooks/usePrevious"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Dialog, Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/components/display/text-display.tsx b/frontend/app/src/shared/components/display/text-display.tsx similarity index 96% rename from frontend/app/src/components/display/text-display.tsx rename to frontend/app/src/shared/components/display/text-display.tsx index ffc187572f..306e2b2349 100644 --- a/frontend/app/src/components/display/text-display.tsx +++ b/frontend/app/src/shared/components/display/text-display.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { HTMLAttributes, forwardRef, useState } from "react"; diff --git a/frontend/app/src/components/display/token-input.tsx b/frontend/app/src/shared/components/display/token-input.tsx similarity index 100% rename from frontend/app/src/components/display/token-input.tsx rename to frontend/app/src/shared/components/display/token-input.tsx diff --git a/frontend/app/src/components/editor/code-editor.tsx b/frontend/app/src/shared/components/editor/code-editor.tsx similarity index 92% rename from frontend/app/src/components/editor/code-editor.tsx rename to frontend/app/src/shared/components/editor/code-editor.tsx index 1e70337049..05c4f05f10 100644 --- a/frontend/app/src/components/editor/code-editor.tsx +++ b/frontend/app/src/shared/components/editor/code-editor.tsx @@ -5,9 +5,9 @@ import Prism from "prismjs"; import "prismjs/components/prism-json"; // need this import "prismjs/themes/prism.css"; //Example style, you can use another -import { Button } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { classNames } from "@/shared/utils/common"; import { useState } from "react"; import Editor from "react-simple-code-editor"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/components/editor/code-viewer-limiter.tsx b/frontend/app/src/shared/components/editor/code-viewer-limiter.tsx similarity index 90% rename from frontend/app/src/components/editor/code-viewer-limiter.tsx rename to frontend/app/src/shared/components/editor/code-viewer-limiter.tsx index bcf3a02e2e..6ab8764bc3 100644 --- a/frontend/app/src/components/editor/code-viewer-limiter.tsx +++ b/frontend/app/src/shared/components/editor/code-viewer-limiter.tsx @@ -1,5 +1,5 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { HTMLAttributes, useState } from "react"; diff --git a/frontend/app/src/components/editor/commands.ts b/frontend/app/src/shared/components/editor/commands.ts similarity index 98% rename from frontend/app/src/components/editor/commands.ts rename to frontend/app/src/shared/components/editor/commands.ts index 2e00980cd6..31fc492f57 100644 --- a/frontend/app/src/components/editor/commands.ts +++ b/frontend/app/src/shared/components/editor/commands.ts @@ -1,4 +1,4 @@ -import { UseCodeMirror } from "@/hooks/useCodeMirror"; +import { UseCodeMirror } from "@/shared/hooks/useCodeMirror"; import { EditorSelection } from "@codemirror/state"; export type EditorCommand = { diff --git a/frontend/app/src/components/editor/graphql/graphql-viewer.tsx b/frontend/app/src/shared/components/editor/graphql/graphql-viewer.tsx similarity index 78% rename from frontend/app/src/components/editor/graphql/graphql-viewer.tsx rename to frontend/app/src/shared/components/editor/graphql/graphql-viewer.tsx index d08658c962..5d39b490d7 100644 --- a/frontend/app/src/components/editor/graphql/graphql-viewer.tsx +++ b/frontend/app/src/shared/components/editor/graphql/graphql-viewer.tsx @@ -1,5 +1,5 @@ -import { CodeViewerLimiter } from "@/components/editor/code-viewer-limiter"; -import { useCodeMirror } from "@/hooks/useCodeMirror"; +import { CodeViewerLimiter } from "@/shared/components/editor/code-viewer-limiter"; +import { useCodeMirror } from "@/shared/hooks/useCodeMirror"; import { useRef } from "react"; type GraphqlViewerProps = { diff --git a/frontend/app/src/components/editor/index.tsx b/frontend/app/src/shared/components/editor/index.tsx similarity index 92% rename from frontend/app/src/components/editor/index.tsx rename to frontend/app/src/shared/components/editor/index.tsx index 93e2a609ce..25361303a0 100644 --- a/frontend/app/src/components/editor/index.tsx +++ b/frontend/app/src/shared/components/editor/index.tsx @@ -1,6 +1,6 @@ -import { focusWithinStyle } from "@/components/ui/style"; -import { useCodeMirror } from "@/hooks/useCodeMirror"; -import { classNames } from "@/utils/common"; +import { focusWithinStyle } from "@/shared/components/ui/style"; +import { useCodeMirror } from "@/shared/hooks/useCodeMirror"; +import { classNames } from "@/shared/utils/common"; import { FC, forwardRef, useRef, useState } from "react"; import { MarkdownEditorHeader } from "./markdown-editor-header"; import { MarkdownViewer } from "./markdown-viewer"; diff --git a/frontend/app/src/components/editor/json/json-editor.tsx b/frontend/app/src/shared/components/editor/json/json-editor.tsx similarity index 91% rename from frontend/app/src/components/editor/json/json-editor.tsx rename to frontend/app/src/shared/components/editor/json/json-editor.tsx index c63a32492e..818844750e 100644 --- a/frontend/app/src/components/editor/json/json-editor.tsx +++ b/frontend/app/src/shared/components/editor/json/json-editor.tsx @@ -1,5 +1,5 @@ -import { focusWithinStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { focusWithinStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import Prism from "prismjs"; import { ElementRef, forwardRef } from "react"; import Editor from "react-simple-code-editor"; diff --git a/frontend/app/src/components/editor/markdown-editor-header.tsx b/frontend/app/src/shared/components/editor/markdown-editor-header.tsx similarity index 92% rename from frontend/app/src/components/editor/markdown-editor-header.tsx rename to frontend/app/src/shared/components/editor/markdown-editor-header.tsx index 7fd8e868c5..823044e90d 100644 --- a/frontend/app/src/components/editor/markdown-editor-header.tsx +++ b/frontend/app/src/shared/components/editor/markdown-editor-header.tsx @@ -1,5 +1,5 @@ -import { Button } from "@/components/buttons/button"; -import { UseCodeMirror } from "@/hooks/useCodeMirror"; +import { Button } from "@/shared/components/buttons/button"; +import { UseCodeMirror } from "@/shared/hooks/useCodeMirror"; import { Icon } from "@iconify-icon/react"; import React, { FC } from "react"; import { EditorCommand, boldCommand, italicCommand, strikethroughCommand } from "./commands"; diff --git a/frontend/app/src/components/editor/markdown-viewer.tsx b/frontend/app/src/shared/components/editor/markdown-viewer.tsx similarity index 89% rename from frontend/app/src/components/editor/markdown-viewer.tsx rename to frontend/app/src/shared/components/editor/markdown-viewer.tsx index 28791a9a07..8878699df9 100644 --- a/frontend/app/src/components/editor/markdown-viewer.tsx +++ b/frontend/app/src/shared/components/editor/markdown-viewer.tsx @@ -1,5 +1,5 @@ import "@/app/styles/markdown.css"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { FC } from "react"; import Markdown from "react-markdown"; import remarkGfm from "remark-gfm"; diff --git a/frontend/app/src/components/file.tsx b/frontend/app/src/shared/components/file.tsx similarity index 90% rename from frontend/app/src/components/file.tsx rename to frontend/app/src/shared/components/file.tsx index ab0c4987c9..d34463eac2 100644 --- a/frontend/app/src/components/file.tsx +++ b/frontend/app/src/shared/components/file.tsx @@ -1,7 +1,7 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { fetchStream } from "@/utils/fetch"; +import { fetchStream } from "@/shared/api/rest/fetch"; import { useCallback, useEffect, useState } from "react"; import { toast } from "react-toastify"; import { CodeEditor } from "./editor/code-editor"; diff --git a/frontend/app/src/components/filters/filter-form.tsx b/frontend/app/src/shared/components/filters/filter-form.tsx similarity index 65% rename from frontend/app/src/components/filters/filter-form.tsx rename to frontend/app/src/shared/components/filters/filter-form.tsx index 93be3cedf2..59297f860d 100644 --- a/frontend/app/src/components/filters/filter-form.tsx +++ b/frontend/app/src/shared/components/filters/filter-form.tsx @@ -1,13 +1,13 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { FilterKindSelector } from "@/components/filters/filter-kind-selector"; -import { getObjectFromFilters } from "@/components/filters/utils/getObjectFromFilters"; -import { DynamicInput } from "@/components/form/dynamic-form"; -import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFromSchema"; -import { Form, FormProps, FormRef, FormSubmit } from "@/components/ui/form"; -import { Filter } from "@/hooks/useFilters"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { FilterKindSelector } from "@/shared/components/filters/filter-kind-selector"; +import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; +import { DynamicInput } from "@/shared/components/form/dynamic-form"; +import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; +import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; +import { Filter } from "@/shared/hooks/useFilters"; import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { classNames } from "@/utils/common"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { classNames } from "@/shared/utils/common"; import { forwardRef } from "react"; export interface FilterFormProps extends FormProps { diff --git a/frontend/app/src/components/filters/filter-kind-selector.tsx b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx similarity index 84% rename from frontend/app/src/components/filters/filter-kind-selector.tsx rename to frontend/app/src/shared/components/filters/filter-kind-selector.tsx index c027eb5a0b..3754b43d5c 100644 --- a/frontend/app/src/components/filters/filter-kind-selector.tsx +++ b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx @@ -1,17 +1,17 @@ -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { LabelFormField } from "@/components/form/fields/common"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { Badge } from "@/components/ui/badge"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import useFilters from "@/hooks/useFilters"; -import { iGenericSchema, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; +} from "@/shared/components/ui/combobox"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import useFilters from "@/shared/hooks/useFilters"; +import { iGenericSchema, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/components/filters/filters.tsx b/frontend/app/src/shared/components/filters/filters.tsx similarity index 81% rename from frontend/app/src/components/filters/filters.tsx rename to frontend/app/src/shared/components/filters/filters.tsx index be211ff319..d8cbdf6a38 100644 --- a/frontend/app/src/components/filters/filters.tsx +++ b/frontend/app/src/shared/components/filters/filters.tsx @@ -1,12 +1,12 @@ -import { Button, ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import { FilterForm } from "@/components/filters/filter-form"; -import { getFiltersFromFormData } from "@/components/filters/utils/getFiltersFromFormData"; -import { FormFieldValue } from "@/components/form/type"; +import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import { FilterForm } from "@/shared/components/filters/filter-form"; +import { getFiltersFromFormData } from "@/shared/components/filters/utils/getFiltersFromFormData"; +import { FormFieldValue } from "@/shared/components/form/type"; import { SEARCH_FILTERS, TASK_OBJECT } from "@/config/constants"; -import useFilters from "@/hooks/useFilters"; -import usePagination from "@/hooks/usePagination"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import useFilters from "@/shared/hooks/useFilters"; +import usePagination from "@/shared/hooks/usePagination"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { TasksFilterForm } from "./tasks-filter-form"; diff --git a/frontend/app/src/components/filters/tasks-filter-form.tsx b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx similarity index 83% rename from frontend/app/src/components/filters/tasks-filter-form.tsx rename to frontend/app/src/shared/components/filters/tasks-filter-form.tsx index b07f87d0dc..cd8d1b6738 100644 --- a/frontend/app/src/components/filters/tasks-filter-form.tsx +++ b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx @@ -1,9 +1,9 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Form, FormProps, FormRef, FormSubmit } from "@/components/ui/form"; -import { Filter } from "@/hooks/useFilters"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; +import { Filter } from "@/shared/hooks/useFilters"; import { TASK_STATES } from "@/screens/tasks/constants"; -import { branchesState } from "@/state/atoms/branches.atom"; -import { classNames } from "@/utils/common"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { forwardRef } from "react"; import DropdownField from "../form/fields/dropdown.field"; diff --git a/frontend/app/src/components/filters/utils/getFiltersFromFormData.ts b/frontend/app/src/shared/components/filters/utils/getFiltersFromFormData.ts similarity index 91% rename from frontend/app/src/components/filters/utils/getFiltersFromFormData.ts rename to frontend/app/src/shared/components/filters/utils/getFiltersFromFormData.ts index 500a7f024e..18148876d5 100644 --- a/frontend/app/src/components/filters/utils/getFiltersFromFormData.ts +++ b/frontend/app/src/shared/components/filters/utils/getFiltersFromFormData.ts @@ -1,5 +1,5 @@ -import { FormFieldValue } from "@/components/form/type"; -import { Filter } from "@/hooks/useFilters"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { Filter } from "@/shared/hooks/useFilters"; export const getFiltersFromFormData = (formData: Record): Filter[] => { return Object.entries(formData).reduce((acc, [fieldName, fieldData]) => { diff --git a/frontend/app/src/components/filters/utils/getObjectFromFilters.ts b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts similarity index 91% rename from frontend/app/src/components/filters/utils/getObjectFromFilters.ts rename to frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts index 36d69bd913..f64bab8037 100644 --- a/frontend/app/src/components/filters/utils/getObjectFromFilters.ts +++ b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts @@ -1,12 +1,12 @@ -import { Filter } from "@/hooks/useFilters"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { Filter } from "@/shared/hooks/useFilters"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { AttributeType, Node, RelationshipManyType, RelationshipOneType, RelationshipType, -} from "@/utils/getObjectItemDisplayValue"; +} from "@/screens/objects/getObjectItemDisplayValue"; export const getObjectFromFilters = ( schema: IModelSchema | null, diff --git a/frontend/app/src/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx similarity index 83% rename from frontend/app/src/components/form/branch-create-form.tsx rename to frontend/app/src/shared/components/form/branch-create-form.tsx index fca9723b66..9c5e53be14 100644 --- a/frontend/app/src/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -1,13 +1,13 @@ -import { Button } from "@/components/buttons/button-primitive"; -import CheckboxField from "@/components/form/fields/checkbox.field"; -import InputField from "@/components/form/fields/input.field"; -import { isMinLength, isRequired } from "@/components/form/utils/validation"; -import { Form, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import CheckboxField from "@/shared/components/form/fields/checkbox.field"; +import InputField from "@/shared/components/form/fields/input.field"; +import { isMinLength, isRequired } from "@/shared/components/form/utils/validation"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { QSP } from "@/config/qsp"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; -import { branchesState } from "@/state/atoms/branches.atom"; +import { branchesState } from "@/screens/branches/branches.atom"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/components/form/constants.ts b/frontend/app/src/shared/components/form/constants.ts similarity index 100% rename from frontend/app/src/components/form/constants.ts rename to frontend/app/src/shared/components/form/constants.ts diff --git a/frontend/app/src/components/form/dynamic-form.tsx b/frontend/app/src/shared/components/form/dynamic-form.tsx similarity index 72% rename from frontend/app/src/components/form/dynamic-form.tsx rename to frontend/app/src/shared/components/form/dynamic-form.tsx index 351592f81f..047b6fabb6 100644 --- a/frontend/app/src/components/form/dynamic-form.tsx +++ b/frontend/app/src/shared/components/form/dynamic-form.tsx @@ -1,24 +1,24 @@ -import { Button } from "@/components/buttons/button-primitive"; -import CheckboxField from "@/components/form/fields/checkbox.field"; -import ColorField from "@/components/form/fields/color.field"; -import DatetimeField from "@/components/form/fields/datetime.field"; -import DropdownField from "@/components/form/fields/dropdown.field"; -import EnumField from "@/components/form/fields/enum.field"; -import InputField from "@/components/form/fields/input.field"; -import JsonField from "@/components/form/fields/json.field"; -import ListField from "@/components/form/fields/list.field"; -import NumberField from "@/components/form/fields/number.field"; -import PasswordInputField from "@/components/form/fields/password-input.field"; -import RelationshipHierarchicalField from "@/components/form/fields/relationship-hierarchical.field"; -import RelationshipManyField from "@/components/form/fields/relationship-many.field"; -import RelationshipField from "@/components/form/fields/relationship.field"; -import TextareaField from "@/components/form/fields/textarea.field"; -import { DynamicFieldProps, FormFieldValue } from "@/components/form/type"; -import { Form, FormProps, FormRef, FormSubmit } from "@/components/ui/form"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import CheckboxField from "@/shared/components/form/fields/checkbox.field"; +import ColorField from "@/shared/components/form/fields/color.field"; +import DatetimeField from "@/shared/components/form/fields/datetime.field"; +import DropdownField from "@/shared/components/form/fields/dropdown.field"; +import EnumField from "@/shared/components/form/fields/enum.field"; +import InputField from "@/shared/components/form/fields/input.field"; +import JsonField from "@/shared/components/form/fields/json.field"; +import ListField from "@/shared/components/form/fields/list.field"; +import NumberField from "@/shared/components/form/fields/number.field"; +import PasswordInputField from "@/shared/components/form/fields/password-input.field"; +import RelationshipHierarchicalField from "@/shared/components/form/fields/relationship-hierarchical.field"; +import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; +import RelationshipField from "@/shared/components/form/fields/relationship.field"; +import TextareaField from "@/shared/components/form/fields/textarea.field"; +import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; +import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { getSchema } from "@/screens/schema/get-schema"; import { isHierarchicalSchema } from "@/screens/schema/utils"; -import { warnUnexpectedType } from "@/utils/common"; +import { warnUnexpectedType } from "@/shared/utils/common"; import { forwardRef } from "react"; export interface DynamicFormProps extends Omit { diff --git a/frontend/app/src/components/form/fields/checkbox.field.tsx b/frontend/app/src/shared/components/form/fields/checkbox.field.tsx similarity index 79% rename from frontend/app/src/components/form/fields/checkbox.field.tsx rename to frontend/app/src/shared/components/form/fields/checkbox.field.tsx index dae988a300..3d5d2e582f 100644 --- a/frontend/app/src/components/form/fields/checkbox.field.tsx +++ b/frontend/app/src/shared/components/form/fields/checkbox.field.tsx @@ -1,8 +1,8 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { Checkbox } from "@/components/inputs/checkbox"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { Checkbox } from "@/shared/components/inputs/checkbox"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; export interface CheckboxFieldProps extends FormFieldProps {} diff --git a/frontend/app/src/components/form/fields/color.field.tsx b/frontend/app/src/shared/components/form/fields/color.field.tsx similarity index 71% rename from frontend/app/src/components/form/fields/color.field.tsx rename to frontend/app/src/shared/components/form/fields/color.field.tsx index 34c87f74a3..3d3fc73ada 100644 --- a/frontend/app/src/components/form/fields/color.field.tsx +++ b/frontend/app/src/shared/components/form/fields/color.field.tsx @@ -1,9 +1,9 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { ColorPicker } from "@/components/inputs/color-picker"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { InputProps } from "@/components/ui/input"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { ColorPicker } from "@/shared/components/inputs/color-picker"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { InputProps } from "@/shared/components/ui/input"; export interface InputFieldProps extends FormFieldProps, diff --git a/frontend/app/src/components/form/fields/common.tsx b/frontend/app/src/shared/components/form/fields/common.tsx similarity index 87% rename from frontend/app/src/components/form/fields/common.tsx rename to frontend/app/src/shared/components/form/fields/common.tsx index f4b7e9c7ae..bf568882ff 100644 --- a/frontend/app/src/components/form/fields/common.tsx +++ b/frontend/app/src/shared/components/form/fields/common.tsx @@ -1,15 +1,15 @@ -import { QuestionMark } from "@/components/display/question-mark"; +import { QuestionMark } from "@/shared/components/display/question-mark"; import { AttributeValueFromProfile, FormFieldValue, RelationshipValueFromPool, -} from "@/components/form/type"; -import { Badge } from "@/components/ui/badge"; -import { FormLabel } from "@/components/ui/form"; -import { LabelProps } from "@/components/ui/label"; -import { Tooltip } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; -import { getObjectDetailsUrl2 } from "@/utils/objects"; +} from "@/shared/components/form/type"; +import { Badge } from "@/shared/components/ui/badge"; +import { FormLabel } from "@/shared/components/ui/form"; +import { LabelProps } from "@/shared/components/ui/label"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/components/form/fields/datetime.field.tsx b/frontend/app/src/shared/components/form/fields/datetime.field.tsx similarity index 77% rename from frontend/app/src/components/form/fields/datetime.field.tsx rename to frontend/app/src/shared/components/form/fields/datetime.field.tsx index b6b5e5ecba..f8dac45ed3 100644 --- a/frontend/app/src/components/form/fields/datetime.field.tsx +++ b/frontend/app/src/shared/components/form/fields/datetime.field.tsx @@ -1,8 +1,8 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { DatePicker } from "@/components/inputs/date-picker"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { DatePicker } from "@/shared/components/inputs/date-picker"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; import { formatISO } from "date-fns"; import { ComponentProps } from "react"; diff --git a/frontend/app/src/components/form/fields/dropdown.field.tsx b/frontend/app/src/shared/components/form/fields/dropdown.field.tsx similarity index 75% rename from frontend/app/src/components/form/fields/dropdown.field.tsx rename to frontend/app/src/shared/components/form/fields/dropdown.field.tsx index e2546d9f25..2d6a272013 100644 --- a/frontend/app/src/components/form/fields/dropdown.field.tsx +++ b/frontend/app/src/shared/components/form/fields/dropdown.field.tsx @@ -1,9 +1,9 @@ -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { LabelFormField } from "@/components/form/fields/common"; -import { DynamicDropdownFieldProps, FormAttributeValue } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { Dropdown, DropdownProps } from "@/components/inputs/dropdown"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { DynamicDropdownFieldProps, FormAttributeValue } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { Dropdown, DropdownProps } from "@/shared/components/inputs/dropdown"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; export interface DropdownFieldProps extends Omit, diff --git a/frontend/app/src/components/form/fields/enum.field.tsx b/frontend/app/src/shared/components/form/fields/enum.field.tsx similarity index 74% rename from frontend/app/src/components/form/fields/enum.field.tsx rename to frontend/app/src/shared/components/form/fields/enum.field.tsx index bf77d66b89..bf22eac300 100644 --- a/frontend/app/src/components/form/fields/enum.field.tsx +++ b/frontend/app/src/shared/components/form/fields/enum.field.tsx @@ -1,10 +1,10 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { DynamicEnumFieldProps, FormAttributeValue } from "@/components/form/type"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { DynamicEnumFieldProps, FormAttributeValue } from "@/shared/components/form/type"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { Enum, EnumProps } from "@/components/inputs/enum"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { Enum, EnumProps } from "@/shared/components/inputs/enum"; export interface EnumFieldProps extends Omit, diff --git a/frontend/app/src/components/form/fields/input.field.tsx b/frontend/app/src/shared/components/form/fields/input.field.tsx similarity index 75% rename from frontend/app/src/components/form/fields/input.field.tsx rename to frontend/app/src/shared/components/form/fields/input.field.tsx index c67d223562..5931b16b6d 100644 --- a/frontend/app/src/components/form/fields/input.field.tsx +++ b/frontend/app/src/shared/components/form/fields/input.field.tsx @@ -1,8 +1,8 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { Input, InputProps } from "@/components/ui/input"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { Input, InputProps } from "@/shared/components/ui/input"; export interface InputFieldProps extends FormFieldProps, diff --git a/frontend/app/src/components/form/fields/json.field.tsx b/frontend/app/src/shared/components/form/fields/json.field.tsx similarity index 80% rename from frontend/app/src/components/form/fields/json.field.tsx rename to frontend/app/src/shared/components/form/fields/json.field.tsx index 0ddee011f4..e87930f689 100644 --- a/frontend/app/src/components/form/fields/json.field.tsx +++ b/frontend/app/src/shared/components/form/fields/json.field.tsx @@ -1,8 +1,8 @@ -import { JsonEditor } from "@/components/editor/json/json-editor"; -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { JsonEditor } from "@/shared/components/editor/json/json-editor"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; const JsonField = ({ defaultValue, diff --git a/frontend/app/src/components/form/fields/list.field.test.tsx b/frontend/app/src/shared/components/form/fields/list.field.test.tsx similarity index 94% rename from frontend/app/src/components/form/fields/list.field.test.tsx rename to frontend/app/src/shared/components/form/fields/list.field.test.tsx index 990073de02..75beb8f247 100644 --- a/frontend/app/src/components/form/fields/list.field.test.tsx +++ b/frontend/app/src/shared/components/form/fields/list.field.test.tsx @@ -1,9 +1,9 @@ -import ListField from "@/components/form/fields/list.field"; -import { FormAttributeValue } from "@/components/form/type"; +import ListField from "@/shared/components/form/fields/list.field"; +import { FormAttributeValue } from "@/shared/components/form/type"; import { userEvent } from "@vitest/browser/context"; import { describe, expect, test } from "vitest"; -import { TestForm } from "../../../../tests/components/form.story"; -import { render } from "../../../../tests/components/render"; +import { TestForm } from "../../../../../tests/components/form.story"; +import { render } from "../../../../../tests/components/render"; describe("List Field Component", () => { test("renders empty list field correctly", async () => { diff --git a/frontend/app/src/components/form/fields/list.field.tsx b/frontend/app/src/shared/components/form/fields/list.field.tsx similarity index 74% rename from frontend/app/src/components/form/fields/list.field.tsx rename to frontend/app/src/shared/components/form/fields/list.field.tsx index 944edcde9e..60f6de05c7 100644 --- a/frontend/app/src/components/form/fields/list.field.tsx +++ b/frontend/app/src/shared/components/form/fields/list.field.tsx @@ -1,9 +1,9 @@ -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { List } from "@/components/list"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { List } from "@/shared/components/list"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; const ListField = ({ defaultValue = DEFAULT_FORM_FIELD_VALUE, diff --git a/frontend/app/src/components/form/fields/number.field.tsx b/frontend/app/src/shared/components/form/fields/number.field.tsx similarity index 81% rename from frontend/app/src/components/form/fields/number.field.tsx rename to frontend/app/src/shared/components/form/fields/number.field.tsx index 0677a838fc..177a1f2c73 100644 --- a/frontend/app/src/components/form/fields/number.field.tsx +++ b/frontend/app/src/shared/components/form/fields/number.field.tsx @@ -1,12 +1,12 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { PoolSelector } from "@/components/form/pool-selector"; -import { DynamicNumberFieldProps, FormAttributeValue } from "@/components/form/type"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { PoolSelector } from "@/shared/components/form/pool-selector"; +import { DynamicNumberFieldProps, FormAttributeValue } from "@/shared/components/form/type"; import { updateAttributeFieldValue, updateFormFieldValue, -} from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { Input, InputProps } from "@/components/ui/input"; +} from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { Input, InputProps } from "@/shared/components/ui/input"; export interface NumberFieldProps extends Omit, diff --git a/frontend/app/src/components/form/fields/password-input.field.tsx b/frontend/app/src/shared/components/form/fields/password-input.field.tsx similarity index 73% rename from frontend/app/src/components/form/fields/password-input.field.tsx rename to frontend/app/src/shared/components/form/fields/password-input.field.tsx index d6a2cbcf8e..a7a41b99af 100644 --- a/frontend/app/src/components/form/fields/password-input.field.tsx +++ b/frontend/app/src/shared/components/form/fields/password-input.field.tsx @@ -1,8 +1,8 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { PasswordInput } from "@/components/ui/password-input"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { PasswordInput } from "@/shared/components/ui/password-input"; const PasswordInputField = ({ defaultValue = { source: null, value: null }, diff --git a/frontend/app/src/components/form/fields/relationship-hierarchical.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx similarity index 84% rename from frontend/app/src/components/form/fields/relationship-hierarchical.field.tsx rename to frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx index 923df0feb1..aea80a842b 100644 --- a/frontend/app/src/components/form/fields/relationship-hierarchical.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx @@ -1,8 +1,8 @@ -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { LabelFormField } from "@/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/components/form/type"; -import { updateRelationshipFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; +import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { RelationshipHierarchicalInput, diff --git a/frontend/app/src/components/form/fields/relationship-many.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx similarity index 73% rename from frontend/app/src/components/form/fields/relationship-many.field.tsx rename to frontend/app/src/shared/components/form/fields/relationship-many.field.tsx index 5c80206078..30054e67f0 100644 --- a/frontend/app/src/components/form/fields/relationship-many.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx @@ -1,12 +1,12 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/components/form/type"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import { DEFAULT_FORM_FIELD_VALUE } from "@/components/form/constants"; -import { updateRelationshipFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { RelationshipManyInput } from "@/components/inputs/relationship-many"; -import { classNames } from "@/utils/common"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; +import { classNames } from "@/shared/utils/common"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; export interface RelationshipManyInputProps extends Omit {} diff --git a/frontend/app/src/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx similarity index 94% rename from frontend/app/src/components/form/fields/relationship.field.tsx rename to frontend/app/src/shared/components/form/fields/relationship.field.tsx index 4ca9bda59d..a549f06945 100644 --- a/frontend/app/src/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,8 +1,8 @@ -import { LabelFormField } from "@/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/components/form/type"; -import { updateRelationshipFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { RelationshipInput } from "@/components/inputs/relationship-one"; -import { Badge } from "@/components/ui/badge"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; +import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { RelationshipInput } from "@/shared/components/inputs/relationship-one"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, @@ -10,13 +10,13 @@ import { ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; +} from "@/shared/components/ui/combobox"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; -import useQuery from "@/hooks/useQuery"; -import { store } from "@/state"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +import useQuery from "@/shared/hooks/useQuery"; +import { store } from "@/shared/stores"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/components/form/fields/textarea.field.tsx b/frontend/app/src/shared/components/form/fields/textarea.field.tsx similarity index 73% rename from frontend/app/src/components/form/fields/textarea.field.tsx rename to frontend/app/src/shared/components/form/fields/textarea.field.tsx index 265e396d72..68b4c7be57 100644 --- a/frontend/app/src/components/form/fields/textarea.field.tsx +++ b/frontend/app/src/shared/components/form/fields/textarea.field.tsx @@ -1,9 +1,9 @@ -import { MarkdownEditor } from "@/components/editor"; -import { LabelFormField } from "@/components/form/fields/common"; -import { FormAttributeValue, FormFieldProps } from "@/components/form/type"; -import { updateFormFieldValue } from "@/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/components/ui/form"; -import { classNames } from "@/utils/common"; +import { MarkdownEditor } from "@/shared/components/editor"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { FormAttributeValue, FormFieldProps } from "@/shared/components/form/type"; +import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { classNames } from "@/shared/utils/common"; const TextareaField = ({ defaultValue = { source: null, value: null }, diff --git a/frontend/app/src/components/form/generic-object-form.tsx b/frontend/app/src/shared/components/form/generic-object-form.tsx similarity index 82% rename from frontend/app/src/components/form/generic-object-form.tsx rename to frontend/app/src/shared/components/form/generic-object-form.tsx index af6c512566..a274801852 100644 --- a/frontend/app/src/components/form/generic-object-form.tsx +++ b/frontend/app/src/shared/components/form/generic-object-form.tsx @@ -1,7 +1,7 @@ -import { GenericSelector } from "@/components/form/generic-selector"; -import ObjectForm, { ObjectFormProps } from "@/components/form/object-form"; +import { GenericSelector } from "@/shared/components/form/generic-selector"; +import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import NoDataFound from "@/screens/errors/no-data-found"; -import { iGenericSchema } from "@/state/atoms/schema.atom"; +import { iGenericSchema } from "@/screens/schema/schema.atom"; import { useState } from "react"; interface GenericObjectFormProps extends Omit { diff --git a/frontend/app/src/components/form/generic-selector.tsx b/frontend/app/src/shared/components/form/generic-selector.tsx similarity index 92% rename from frontend/app/src/components/form/generic-selector.tsx rename to frontend/app/src/shared/components/form/generic-selector.tsx index 61522c392b..97e747ac4c 100644 --- a/frontend/app/src/components/form/generic-selector.tsx +++ b/frontend/app/src/shared/components/form/generic-selector.tsx @@ -1,4 +1,4 @@ -import { Badge } from "@/components/ui/badge"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, @@ -6,16 +6,16 @@ import { ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import Label from "@/components/ui/label"; +} from "@/shared/components/ui/combobox"; +import Label from "@/shared/components/ui/label"; import { PROFILE_KIND } from "@/config/constants"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; import { PermissionData } from "@/screens/permission/types"; import { getPermission } from "@/screens/permission/utils"; -import { genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId, useState } from "react"; diff --git a/frontend/app/src/components/form/name-select.tsx b/frontend/app/src/shared/components/form/name-select.tsx similarity index 97% rename from frontend/app/src/components/form/name-select.tsx rename to frontend/app/src/shared/components/form/name-select.tsx index 8345bb7b62..b4fa0c9636 100644 --- a/frontend/app/src/components/form/name-select.tsx +++ b/frontend/app/src/shared/components/form/name-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/state/atoms/schema.atom"; +import { namespacesState, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx similarity index 81% rename from frontend/app/src/components/form/node-form.tsx rename to frontend/app/src/shared/components/form/node-form.tsx index 1c24a67f4f..7e9ee01a41 100644 --- a/frontend/app/src/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,13 +1,13 @@ -import DynamicForm from "@/components/form/dynamic-form"; -import { ProfileData } from "@/components/form/object-form"; -import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/components/form/type"; -import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFromSchema"; -import { getCreateMutationFromFormData } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { ProfileData } from "@/shared/components/form/object-form"; +import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; +import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; +import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { useAuth } from "@/hooks/useAuth"; -import useFilters from "@/hooks/useFilters"; -import useQuery from "@/hooks/useQuery"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useFilters from "@/shared/hooks/useFilters"; +import useQuery from "@/shared/hooks/useQuery"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { NUMBER_POOL_KIND } from "@/screens/resource-manager/constants"; import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; @@ -15,12 +15,12 @@ import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { GET_FORM_REQUIREMENTS } from "@/shared/api/graphql/queries/forms/getFormRequirements"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { IProfileSchema, iNodeSchema } from "@/state/atoms/schema.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/components/form/node-select.tsx b/frontend/app/src/shared/components/form/node-select.tsx similarity index 97% rename from frontend/app/src/components/form/node-select.tsx rename to frontend/app/src/shared/components/form/node-select.tsx index badcd4aab7..6fa1874b84 100644 --- a/frontend/app/src/components/form/node-select.tsx +++ b/frontend/app/src/shared/components/form/node-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/state/atoms/schema.atom"; +import { namespacesState, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/components/form/node-with-profile-form.tsx b/frontend/app/src/shared/components/form/node-with-profile-form.tsx similarity index 68% rename from frontend/app/src/components/form/node-with-profile-form.tsx rename to frontend/app/src/shared/components/form/node-with-profile-form.tsx index 5a5e1115dc..2c22c60ea6 100644 --- a/frontend/app/src/components/form/node-with-profile-form.tsx +++ b/frontend/app/src/shared/components/form/node-with-profile-form.tsx @@ -1,6 +1,6 @@ -import { NodeForm, NodeFormProps } from "@/components/form/node-form"; -import { ProfileData } from "@/components/form/object-form"; -import { ProfilesSelector } from "@/components/form/profiles-selector"; +import { NodeForm, NodeFormProps } from "@/shared/components/form/node-form"; +import { ProfileData } from "@/shared/components/form/object-form"; +import { ProfilesSelector } from "@/shared/components/form/profiles-selector"; import { useState } from "react"; export const NodeWithProfileForm = ({ schema, profiles, ...props }: NodeFormProps) => { diff --git a/frontend/app/src/components/form/object-create-form-trigger.tsx b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx similarity index 90% rename from frontend/app/src/components/form/object-create-form-trigger.tsx rename to frontend/app/src/shared/components/form/object-create-form-trigger.tsx index a39172e17f..fa845182af 100644 --- a/frontend/app/src/components/form/object-create-form-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx @@ -1,9 +1,9 @@ -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import ObjectForm from "@/components/form/object-form"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; import { ARTIFACT_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Button, ButtonProps } from "../buttons/button-primitive"; diff --git a/frontend/app/src/components/form/object-edit-slide-over-trigger.tsx b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx similarity index 87% rename from frontend/app/src/components/form/object-edit-slide-over-trigger.tsx rename to frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx index 0984ff7803..2893a51ab0 100644 --- a/frontend/app/src/components/form/object-edit-slide-over-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx @@ -1,8 +1,8 @@ -import { ButtonProps, ButtonWithTooltip } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; +import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/components/form/object-form.tsx b/frontend/app/src/shared/components/form/object-form.tsx similarity index 86% rename from frontend/app/src/components/form/object-form.tsx rename to frontend/app/src/shared/components/form/object-form.tsx index e3a5fff850..cc66548d51 100644 --- a/frontend/app/src/components/form/object-form.tsx +++ b/frontend/app/src/shared/components/form/object-form.tsx @@ -1,7 +1,7 @@ -import { DynamicFormProps } from "@/components/form/dynamic-form"; -import { GenericObjectForm } from "@/components/form/generic-object-form"; -import { NodeForm, NodeFormSubmitParams } from "@/components/form/node-form"; -import { NodeWithProfileForm } from "@/components/form/node-with-profile-form"; +import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; +import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; +import { NodeForm, NodeFormSubmitParams } from "@/shared/components/form/node-form"; +import { NodeWithProfileForm } from "@/shared/components/form/node-with-profile-form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, @@ -12,7 +12,7 @@ import { READONLY_REPOSITORY_KIND, REPOSITORY_KIND, } from "@/config/constants"; -import { useSchema } from "@/hooks/useSchema"; +import { useSchema } from "@/shared/hooks/useSchema"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { NumberPoolForm } from "@/screens/resource-manager/number-pool-form"; @@ -21,7 +21,7 @@ import { AccountGroupForm } from "@/screens/role-management/account-group-form"; import { AccountRoleForm } from "@/screens/role-management/account-role-form"; import { GlobalPermissionForm } from "@/screens/role-management/global-permissions-form"; import { ObjectPermissionForm } from "@/screens/role-management/object-permissions-form"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { Suspense, lazy } from "react"; export type ProfileData = { diff --git a/frontend/app/src/components/form/pool-selector.tsx b/frontend/app/src/shared/components/form/pool-selector.tsx similarity index 86% rename from frontend/app/src/components/form/pool-selector.tsx rename to frontend/app/src/shared/components/form/pool-selector.tsx index d0ebb8b0b6..5a1244cc82 100644 --- a/frontend/app/src/components/form/pool-selector.tsx +++ b/frontend/app/src/shared/components/form/pool-selector.tsx @@ -1,8 +1,8 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { FormFieldValue, NumberPoolData } from "@/components/form/type"; -import { ComboboxList, tComboboxItem } from "@/components/ui/combobox-legacy"; -import { Popover, PopoverAnchor, PopoverTrigger } from "@/components/ui/popover"; -import { Tooltip } from "@/components/ui/tooltip"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; +import { ComboboxList, tComboboxItem } from "@/shared/components/ui/combobox-legacy"; +import { Popover, PopoverAnchor, PopoverTrigger } from "@/shared/components/ui/popover"; +import { Tooltip } from "@/shared/components/ui/tooltip"; import { Combobox as ComboboxPrimitive } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { Slot } from "@radix-ui/react-slot"; diff --git a/frontend/app/src/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx similarity index 91% rename from frontend/app/src/components/form/profiles-selector.tsx rename to frontend/app/src/shared/components/form/profiles-selector.tsx index 8618fc8b10..db4f0ccf55 100644 --- a/frontend/app/src/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,11 +1,11 @@ -import { MultiCombobox } from "@/components/ui/combobox-legacy"; -import Label from "@/components/ui/label"; +import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; +import Label from "@/shared/components/ui/label"; import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState, iNodeSchema, profilesAtom } from "@/state/atoms/schema.atom"; -import { getObjectAttributes } from "@/utils/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; +import { getObjectAttributes } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId } from "react"; diff --git a/frontend/app/src/components/form/type.ts b/frontend/app/src/shared/components/form/type.ts similarity index 91% rename from frontend/app/src/components/form/type.ts rename to frontend/app/src/shared/components/form/type.ts index 05572a8061..f454e8fc63 100644 --- a/frontend/app/src/components/form/type.ts +++ b/frontend/app/src/shared/components/form/type.ts @@ -1,10 +1,10 @@ -import { DropdownOption } from "@/components/inputs/dropdown"; -import { SelectOption } from "@/components/inputs/select"; -import { FormField } from "@/components/ui/form"; +import { DropdownOption } from "@/shared/components/inputs/dropdown"; +import { SelectOption } from "@/shared/components/inputs/select"; +import { FormField } from "@/shared/components/ui/form"; import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { Node } from "@/utils/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { ComponentProps } from "react"; type SourceType = "schema" | "user"; diff --git a/frontend/app/src/components/form/utils/getFieldDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts similarity index 94% rename from frontend/app/src/components/form/utils/getFieldDefaultValue.ts rename to frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts index e9cb917e1d..2bb728688a 100644 --- a/frontend/app/src/components/form/utils/getFieldDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts @@ -1,12 +1,12 @@ -import { ProfileData } from "@/components/form/object-form"; +import { ProfileData } from "@/shared/components/form/object-form"; import { AttributeValueFromPool, AttributeValueFromProfile, AttributeValueFromUser, FormAttributeValue, -} from "@/components/form/type"; +} from "@/shared/components/form/type"; import { LineageSource } from "@/shared/api/graphql/generated/graphql"; -import { AttributeType, FieldSchema } from "@/utils/getObjectItemDisplayValue"; +import { AttributeType, FieldSchema } from "@/screens/objects/getObjectItemDisplayValue"; import * as R from "ramda"; export type GetFieldDefaultValue = { diff --git a/frontend/app/src/components/form/utils/getFormFieldsFromSchema.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts similarity index 82% rename from frontend/app/src/components/form/utils/getFormFieldsFromSchema.ts rename to frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts index 76f8cc07d0..f5ad71803d 100644 --- a/frontend/app/src/components/form/utils/getFormFieldsFromSchema.ts +++ b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts @@ -1,4 +1,4 @@ -import { ProfileData } from "@/components/form/object-form"; +import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicDropdownFieldProps, DynamicEnumFieldProps, @@ -8,19 +8,19 @@ import { DynamicRelationshipFieldProps, FormFieldValue, NumberPoolData, -} from "@/components/form/type"; -import { getFieldDefaultValue } from "@/components/form/utils/getFieldDefaultValue"; -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; -import { getRelationshipParent } from "@/components/form/utils/getRelationshipParent"; -import { getRelationshipsForForm } from "@/components/form/utils/getRelationshipsForForm"; -import { isFieldDisabled } from "@/components/form/utils/isFieldDisabled"; -import { isRequired } from "@/components/form/utils/validation"; +} from "@/shared/components/form/type"; +import { getFieldDefaultValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { getRelationshipParent } from "@/shared/components/form/utils/getRelationshipParent"; +import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; +import { isFieldDisabled } from "@/shared/components/form/utils/isFieldDisabled"; +import { isRequired } from "@/shared/components/form/utils/validation"; import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { AuthContextType } from "@/hooks/useAuth"; +import { AuthContextType } from "@/shared/hooks/useAuth"; import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { sortByOrderWeight } from "@/utils/common"; -import { AttributeType, RelationshipType } from "@/utils/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { sortByOrderWeight } from "@/shared/utils/common"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; type GetFormFieldsFromSchema = { schema: IModelSchema; diff --git a/frontend/app/src/components/form/utils/getRelationshipDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts similarity index 88% rename from frontend/app/src/components/form/utils/getRelationshipDefaultValue.ts rename to frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts index 39678a6ce9..449532800e 100644 --- a/frontend/app/src/components/form/utils/getRelationshipDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts @@ -1,8 +1,8 @@ -import { FormRelationshipValue } from "@/components/form/type"; +import { FormRelationshipValue } from "@/shared/components/form/type"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { store } from "@/state"; -import { schemaState } from "@/state/atoms/schema.atom"; -import { RelationshipType } from "@/utils/getObjectItemDisplayValue"; +import { store } from "@/shared/stores"; +import { schemaState } from "@/screens/schema/schema.atom"; +import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; type GetRelationshipDefaultValueParams = { relationshipData: RelationshipType | undefined; diff --git a/frontend/app/src/components/form/utils/getRelationshipParent.ts b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts similarity index 74% rename from frontend/app/src/components/form/utils/getRelationshipParent.ts rename to frontend/app/src/shared/components/form/utils/getRelationshipParent.ts index 4abe158184..c6df5e30cd 100644 --- a/frontend/app/src/components/form/utils/getRelationshipParent.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts @@ -1,4 +1,4 @@ -import { RelationshipType } from "@/utils/getObjectItemDisplayValue"; +import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; export const getRelationshipParent = (relationshipData: RelationshipType | undefined) => { if (!relationshipData) return undefined; diff --git a/frontend/app/src/components/form/utils/getRelationshipsForForm.ts b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts similarity index 100% rename from frontend/app/src/components/form/utils/getRelationshipsForForm.ts rename to frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts diff --git a/frontend/app/src/components/form/utils/isFieldDisabled.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts similarity index 86% rename from frontend/app/src/components/form/utils/isFieldDisabled.ts rename to frontend/app/src/shared/components/form/utils/isFieldDisabled.ts index 7a8b6938ba..2c58141df1 100644 --- a/frontend/app/src/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts @@ -1,8 +1,8 @@ -import { AuthContextType } from "@/hooks/useAuth"; +import { AuthContextType } from "@/shared/hooks/useAuth"; import { PermissionDecisionData } from "@/screens/permission/types"; import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; -import { store } from "@/state"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; +import { store } from "@/shared/stores"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; export type IsFieldDisabledParams = { owner?: LineageOwner | null; diff --git a/frontend/app/src/components/form/utils/mutations/getCreateMutationFromFormData.ts b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts similarity index 95% rename from frontend/app/src/components/form/utils/mutations/getCreateMutationFromFormData.ts rename to frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts index d27a7cbe47..d9943cb26a 100644 --- a/frontend/app/src/components/form/utils/mutations/getCreateMutationFromFormData.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts @@ -2,8 +2,8 @@ import { DynamicFieldProps, FormFieldValue, isFormFieldValueFromPool, -} from "@/components/form/type"; -import { AttributeType } from "@/utils/getObjectItemDisplayValue"; +} from "@/shared/components/form/type"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; export const getCreateMutationFromFormData = ( fields: Array, diff --git a/frontend/app/src/components/form/utils/mutations/getUpdateMutationFromFormData.ts b/frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.ts similarity index 98% rename from frontend/app/src/components/form/utils/mutations/getUpdateMutationFromFormData.ts rename to frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.ts index 80288fe3c5..27e59a3568 100644 --- a/frontend/app/src/components/form/utils/mutations/getUpdateMutationFromFormData.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.ts @@ -3,7 +3,7 @@ import { DynamicFieldProps, FormFieldValue, RelationshipValueFromPool, -} from "@/components/form/type"; +} from "@/shared/components/form/type"; import { isDeepEqual } from "remeda"; type GetUpdateMutationFromFormDataParams = { diff --git a/frontend/app/src/components/form/utils/updateFormFieldValue.ts b/frontend/app/src/shared/components/form/utils/updateFormFieldValue.ts similarity index 94% rename from frontend/app/src/components/form/utils/updateFormFieldValue.ts rename to frontend/app/src/shared/components/form/utils/updateFormFieldValue.ts index 62c140cc19..28c59e40a2 100644 --- a/frontend/app/src/components/form/utils/updateFormFieldValue.ts +++ b/frontend/app/src/shared/components/form/utils/updateFormFieldValue.ts @@ -1,11 +1,11 @@ -import { PoolValue } from "@/components/form/pool-selector"; +import { PoolValue } from "@/shared/components/form/pool-selector"; import { AttributeValueFromPool, FormAttributeValue, FormFieldValue, FormRelationshipValue, RelationshipValueFromPool, -} from "@/components/form/type"; +} from "@/shared/components/form/type"; import { isDeepEqual } from "remeda"; export const updateFormFieldValue = ( diff --git a/frontend/app/src/components/form/utils/validation.ts b/frontend/app/src/shared/components/form/utils/validation.ts similarity index 86% rename from frontend/app/src/components/form/utils/validation.ts rename to frontend/app/src/shared/components/form/utils/validation.ts index 334348ee96..1ea612400c 100644 --- a/frontend/app/src/components/form/utils/validation.ts +++ b/frontend/app/src/shared/components/form/utils/validation.ts @@ -1,4 +1,4 @@ -import { FormFieldValue } from "@/components/form/type"; +import { FormFieldValue } from "@/shared/components/form/type"; export const isRequired = ({ value }: FormFieldValue) => { return (value !== null && value !== undefined && value !== "") || "Required"; diff --git a/frontend/app/src/components/inputs/checkbox.tsx b/frontend/app/src/shared/components/inputs/checkbox.tsx similarity index 86% rename from frontend/app/src/components/inputs/checkbox.tsx rename to frontend/app/src/shared/components/inputs/checkbox.tsx index 5883299440..52817fa993 100644 --- a/frontend/app/src/components/inputs/checkbox.tsx +++ b/frontend/app/src/shared/components/inputs/checkbox.tsx @@ -1,5 +1,5 @@ -import { focusStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { focusStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import { InputHTMLAttributes, forwardRef } from "react"; interface CheckboxProps extends InputHTMLAttributes {} diff --git a/frontend/app/src/components/inputs/color-picker.tsx b/frontend/app/src/shared/components/inputs/color-picker.tsx similarity index 90% rename from frontend/app/src/components/inputs/color-picker.tsx rename to frontend/app/src/shared/components/inputs/color-picker.tsx index 4330f091b3..abac20b55d 100644 --- a/frontend/app/src/components/inputs/color-picker.tsx +++ b/frontend/app/src/shared/components/inputs/color-picker.tsx @@ -1,6 +1,6 @@ -import { POPOVER_SIZE, PopOver } from "@/components/display/popover"; -import { Input } from "@/components/ui/input"; -import { classNames, getTextColor } from "@/utils/common"; +import { POPOVER_SIZE, PopOver } from "@/shared/components/display/popover"; +import { Input } from "@/shared/components/ui/input"; +import { classNames, getTextColor } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { ColorResult, Colorful, HsvaColor } from "@uiw/react-color/src/index"; import { forwardRef, useState } from "react"; diff --git a/frontend/app/src/components/inputs/date-picker.tsx b/frontend/app/src/shared/components/inputs/date-picker.tsx similarity index 91% rename from frontend/app/src/components/inputs/date-picker.tsx rename to frontend/app/src/shared/components/inputs/date-picker.tsx index a5eee4f23a..23beadd142 100644 --- a/frontend/app/src/components/inputs/date-picker.tsx +++ b/frontend/app/src/shared/components/inputs/date-picker.tsx @@ -1,9 +1,9 @@ import DateTimePicker from "react-datepicker"; import "react-datepicker/dist/react-datepicker.css"; -import { Button } from "@/components/buttons/button"; -import { Input } from "@/components/inputs/input"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button"; +import { Input } from "@/shared/components/inputs/input"; +import { classNames } from "@/shared/utils/common"; import { format, isValid } from "date-fns"; import { forwardRef, useEffect, useRef, useState } from "react"; diff --git a/frontend/app/src/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx similarity index 92% rename from frontend/app/src/components/inputs/dropdown.tsx rename to frontend/app/src/shared/components/inputs/dropdown.tsx index 7e019aec13..e10b4320d9 100644 --- a/frontend/app/src/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,9 +1,9 @@ -import { Button } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import DynamicForm from "@/components/form/dynamic-form"; -import { isRequired } from "@/components/form/utils/validation"; -import ModalDelete from "@/components/modals/modal-delete"; -import { Badge } from "@/components/ui/badge"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, @@ -11,16 +11,16 @@ import { ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import { CommandItem } from "@/components/ui/command"; +} from "@/shared/components/ui/combobox"; +import { CommandItem } from "@/shared/components/ui/command"; import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION, } from "@/shared/api/graphql/mutations/schema/dropdown"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { AttributeSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { classNames, getTextColor } from "@/utils/common"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { classNames, getTextColor } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, HTMLAttributes, useState } from "react"; diff --git a/frontend/app/src/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx similarity index 91% rename from frontend/app/src/components/inputs/enum.tsx rename to frontend/app/src/shared/components/inputs/enum.tsx index b7182db15f..4c5d9dcdfc 100644 --- a/frontend/app/src/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,8 +1,8 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/components/display/slide-over"; -import DynamicForm from "@/components/form/dynamic-form"; -import { isRequired } from "@/components/form/utils/validation"; -import ModalDelete from "@/components/modals/modal-delete"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import DynamicForm from "@/shared/components/form/dynamic-form"; +import { isRequired } from "@/shared/components/form/utils/validation"; +import ModalDelete from "@/shared/components/modals/modal-delete"; import { Combobox, ComboboxContent, @@ -10,11 +10,11 @@ import { ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; +} from "@/shared/components/ui/combobox"; import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/shared/api/graphql/mutations/schema/enum"; -import { useMutation } from "@/hooks/useQuery"; +import { useMutation } from "@/shared/hooks/useQuery"; import { AttributeSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, useState } from "react"; diff --git a/frontend/app/src/components/inputs/input.tsx b/frontend/app/src/shared/components/inputs/input.tsx similarity index 92% rename from frontend/app/src/components/inputs/input.tsx rename to frontend/app/src/shared/components/inputs/input.tsx index b2a00cc8e1..54b41971b2 100644 --- a/frontend/app/src/components/inputs/input.tsx +++ b/frontend/app/src/shared/components/inputs/input.tsx @@ -1,6 +1,6 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; -import { inputStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; +import { inputStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { forwardRef, useState } from "react"; diff --git a/frontend/app/src/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx similarity index 90% rename from frontend/app/src/components/inputs/relationship-many.tsx rename to frontend/app/src/shared/components/inputs/relationship-many.tsx index 3016f62ac3..a441418478 100644 --- a/frontend/app/src/components/inputs/relationship-many.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx @@ -1,21 +1,21 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { Badge } from "@/components/ui/badge"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Badge } from "@/shared/components/ui/badge"; import { Combobox, ComboboxContent, ComboboxEmpty, ComboboxItem, ComboboxList, -} from "@/components/ui/combobox"; -import { PopoverTrigger } from "@/components/ui/popover"; -import { Spinner } from "@/components/ui/spinner"; -import { inputStyle } from "@/components/ui/style"; +} from "@/shared/components/ui/combobox"; +import { PopoverTrigger } from "@/shared/components/ui/popover"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { inputStyle } from "@/shared/components/ui/style"; import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; -import { useDebounce } from "@/hooks/useDebounce"; -import { useLazyQuery } from "@/hooks/useQuery"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import { useLazyQuery } from "@/shared/hooks/useQuery"; import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; -import { classNames } from "@/utils/common"; -import { Node, RelationshipManyType } from "@/utils/getObjectItemDisplayValue"; +import { classNames } from "@/shared/utils/common"; +import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; diff --git a/frontend/app/src/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx similarity index 93% rename from frontend/app/src/components/inputs/relationship-one.tsx rename to frontend/app/src/shared/components/inputs/relationship-one.tsx index fdac3e99fb..1ec13b774d 100644 --- a/frontend/app/src/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -1,5 +1,5 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { PoolValue } from "@/components/form/pool-selector"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { PoolValue } from "@/shared/components/form/pool-selector"; import { Combobox, ComboboxContent, @@ -7,18 +7,18 @@ import { ComboboxItem, ComboboxList, ComboboxTrigger, -} from "@/components/ui/combobox"; -import { PopoverTrigger } from "@/components/ui/popover"; -import { Spinner } from "@/components/ui/spinner"; +} from "@/shared/components/ui/combobox"; +import { PopoverTrigger } from "@/shared/components/ui/popover"; +import { Spinner } from "@/shared/components/ui/spinner"; import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; -import { useDebounce } from "@/hooks/useDebounce"; -import { useLazyQuery } from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import { useLazyQuery } from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { POOLS_DICTIONNARY, POOLS_PEER } from "@/screens/ipam/constants"; import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; -import { classNames } from "@/utils/common"; -import { Node, RelationshipManyType } from "@/utils/getObjectItemDisplayValue"; +import { classNames } from "@/shared/utils/common"; +import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; diff --git a/frontend/app/src/components/inputs/select.tsx b/frontend/app/src/shared/components/inputs/select.tsx similarity index 100% rename from frontend/app/src/components/inputs/select.tsx rename to frontend/app/src/shared/components/inputs/select.tsx diff --git a/frontend/app/src/components/layouts/item-group.tsx b/frontend/app/src/shared/components/layouts/item-group.tsx similarity index 83% rename from frontend/app/src/components/layouts/item-group.tsx rename to frontend/app/src/shared/components/layouts/item-group.tsx index 77ecf77a0e..a19729da73 100644 --- a/frontend/app/src/components/layouts/item-group.tsx +++ b/frontend/app/src/shared/components/layouts/item-group.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import React from "react"; interface ItemGroupProps extends React.HTMLAttributes {} diff --git a/frontend/app/src/components/list.test.tsx b/frontend/app/src/shared/components/list.test.tsx similarity index 99% rename from frontend/app/src/components/list.test.tsx rename to frontend/app/src/shared/components/list.test.tsx index c204eccde6..832aac8ade 100644 --- a/frontend/app/src/components/list.test.tsx +++ b/frontend/app/src/shared/components/list.test.tsx @@ -1,6 +1,6 @@ import { userEvent } from "@vitest/browser/context"; import { describe, expect, test } from "vitest"; -import { render } from "../../tests/components/render"; +import { render } from "../../../tests/components/render"; import { List } from "./list"; describe("List Component", () => { diff --git a/frontend/app/src/components/list.tsx b/frontend/app/src/shared/components/list.tsx similarity index 88% rename from frontend/app/src/components/list.tsx rename to frontend/app/src/shared/components/list.tsx index 0d7fdbd9a2..e47061c4ab 100644 --- a/frontend/app/src/components/list.tsx +++ b/frontend/app/src/shared/components/list.tsx @@ -1,12 +1,12 @@ import React, { useState } from "react"; import { toast } from "react-toastify"; -import { Button } from "@/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; -import { Badge } from "@/components/ui/badge"; -import { Input } from "@/components/ui/input"; -import { inputStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Badge } from "@/shared/components/ui/badge"; +import { Input } from "@/shared/components/ui/input"; +import { inputStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; export interface ListProps extends Omit, "onChange" | "value"> { diff --git a/frontend/app/src/components/menu/object-details-button.tsx b/frontend/app/src/shared/components/menu/object-details-button.tsx similarity index 87% rename from frontend/app/src/components/menu/object-details-button.tsx rename to frontend/app/src/shared/components/menu/object-details-button.tsx index 3caaa31ff6..c641ccbd89 100644 --- a/frontend/app/src/components/menu/object-details-button.tsx +++ b/frontend/app/src/shared/components/menu/object-details-button.tsx @@ -1,13 +1,13 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { QSP } from "@/config/qsp"; -import TasksStatusIcon from "@/images/icons/tasks-status.svg?react"; -import { constructPath } from "@/utils/fetch"; +import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; import { CopyToClipboard } from "../buttons/copy-to-clipboard"; diff --git a/frontend/app/src/components/menu/object-help-button.tsx b/frontend/app/src/shared/components/menu/object-help-button.tsx similarity index 88% rename from frontend/app/src/components/menu/object-help-button.tsx rename to frontend/app/src/shared/components/menu/object-help-button.tsx index 30c7be804f..822269bdf4 100644 --- a/frontend/app/src/components/menu/object-help-button.tsx +++ b/frontend/app/src/shared/components/menu/object-help-button.tsx @@ -1,12 +1,12 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuTrigger, -} from "@/components/ui/dropdown-menu"; +} from "@/shared/components/ui/dropdown-menu"; import { INFRAHUB_DOC_LOCAL } from "@/config/config"; -import { constructPath } from "@/utils/fetch"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/components/modals/modal-confirm.tsx b/frontend/app/src/shared/components/modals/modal-confirm.tsx similarity index 97% rename from frontend/app/src/components/modals/modal-confirm.tsx rename to frontend/app/src/shared/components/modals/modal-confirm.tsx index 52318e0d0f..6025c752bb 100644 --- a/frontend/app/src/components/modals/modal-confirm.tsx +++ b/frontend/app/src/shared/components/modals/modal-confirm.tsx @@ -1,4 +1,4 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { Dialog, Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import React, { Fragment, ReactNode, useRef } from "react"; diff --git a/frontend/app/src/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx similarity index 93% rename from frontend/app/src/components/modals/modal-delete-object.tsx rename to frontend/app/src/shared/components/modals/modal-delete-object.tsx index c451e601ee..814bc9710c 100644 --- a/frontend/app/src/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { stringifyWithoutQuotes } from "@/utils/string"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/components/modals/modal-delete.tsx b/frontend/app/src/shared/components/modals/modal-delete.tsx similarity index 98% rename from frontend/app/src/components/modals/modal-delete.tsx rename to frontend/app/src/shared/components/modals/modal-delete.tsx index 39b579900d..daedb54b43 100644 --- a/frontend/app/src/components/modals/modal-delete.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete.tsx @@ -1,4 +1,4 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { Dialog, Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import React, { Fragment, ReactNode, useRef } from "react"; diff --git a/frontend/app/src/components/modals/modal-success.tsx b/frontend/app/src/shared/components/modals/modal-success.tsx similarity index 97% rename from frontend/app/src/components/modals/modal-success.tsx rename to frontend/app/src/shared/components/modals/modal-success.tsx index de15a449fc..350168b78b 100644 --- a/frontend/app/src/components/modals/modal-success.tsx +++ b/frontend/app/src/shared/components/modals/modal-success.tsx @@ -1,4 +1,4 @@ -import { BUTTON_TYPES, Button } from "@/components/buttons/button"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { Dialog, Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import React, { Fragment, ReactNode, useRef } from "react"; diff --git a/frontend/app/src/components/modals/modal.tsx b/frontend/app/src/shared/components/modals/modal.tsx similarity index 100% rename from frontend/app/src/components/modals/modal.tsx rename to frontend/app/src/shared/components/modals/modal.tsx diff --git a/frontend/app/src/components/notifications.tsx b/frontend/app/src/shared/components/notifications.tsx similarity index 89% rename from frontend/app/src/components/notifications.tsx rename to frontend/app/src/shared/components/notifications.tsx index 923a5368fc..94f220e3e1 100644 --- a/frontend/app/src/components/notifications.tsx +++ b/frontend/app/src/shared/components/notifications.tsx @@ -1,5 +1,5 @@ import { subscription } from "@/shared/api/graphql/queries/notifications/subscription"; -import { useSubscription } from "@/hooks/useQuery"; +import { useSubscription } from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; export const Notifications = (props: any) => { diff --git a/frontend/app/src/components/search/queries/get-doc-results.ts b/frontend/app/src/shared/components/search/queries/get-doc-results.ts similarity index 90% rename from frontend/app/src/components/search/queries/get-doc-results.ts rename to frontend/app/src/shared/components/search/queries/get-doc-results.ts index dd9a251f44..2f7c297703 100644 --- a/frontend/app/src/components/search/queries/get-doc-results.ts +++ b/frontend/app/src/shared/components/search/queries/get-doc-results.ts @@ -1,5 +1,5 @@ import { CONFIG } from "@/config/config"; -import { fetchUrl } from "@/utils/fetch"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { queryOptions } from "@tanstack/react-query"; export type DocResult = { diff --git a/frontend/app/src/components/search/search-actions.tsx b/frontend/app/src/shared/components/search/search-actions.tsx similarity index 90% rename from frontend/app/src/components/search/search-actions.tsx rename to frontend/app/src/shared/components/search/search-actions.tsx index f4760b33ed..cb44015784 100644 --- a/frontend/app/src/components/search/search-actions.tsx +++ b/frontend/app/src/shared/components/search/search-actions.tsx @@ -1,10 +1,10 @@ -import { SearchAnywhereGroup } from "@/components/search/search-anywhere-group"; -import { SearchAnywhereItem } from "@/components/search/search-anywhere-item"; -import { Badge } from "@/components/ui/badge"; +import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; +import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; +import { Badge } from "@/shared/components/ui/badge"; import { menuQueryOptions } from "@/screens/layout/menu-navigation/get-menu"; import { MenuItem } from "@/screens/layout/menu-navigation/types"; -import { IModelSchema, genericsState, schemaState } from "@/state/atoms/schema.atom"; -import { constructPath } from "@/utils/fetch"; +import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { useQuery } from "@tanstack/react-query"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/components/search/search-anywhere-context.ts b/frontend/app/src/shared/components/search/search-anywhere-context.ts similarity index 100% rename from frontend/app/src/components/search/search-anywhere-context.ts rename to frontend/app/src/shared/components/search/search-anywhere-context.ts diff --git a/frontend/app/src/components/search/search-anywhere-dialog.tsx b/frontend/app/src/shared/components/search/search-anywhere-dialog.tsx similarity index 89% rename from frontend/app/src/components/search/search-anywhere-dialog.tsx rename to frontend/app/src/shared/components/search/search-anywhere-dialog.tsx index b5788ecf8b..829d34ea77 100644 --- a/frontend/app/src/components/search/search-anywhere-dialog.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-dialog.tsx @@ -1,5 +1,5 @@ -import { useSearchAnywhereContext } from "@/components/search/search-anywhere-context"; -import { classNames } from "@/utils/common"; +import { useSearchAnywhereContext } from "@/shared/components/search/search-anywhere-context"; +import { classNames } from "@/shared/utils/common"; import { Command } from "cmdk"; import React from "react"; diff --git a/frontend/app/src/components/search/search-anywhere-empty.tsx b/frontend/app/src/shared/components/search/search-anywhere-empty.tsx similarity index 80% rename from frontend/app/src/components/search/search-anywhere-empty.tsx rename to frontend/app/src/shared/components/search/search-anywhere-empty.tsx index 2f172d887e..847bcfcf29 100644 --- a/frontend/app/src/components/search/search-anywhere-empty.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-empty.tsx @@ -1,5 +1,5 @@ -import { SearchAnywhereGroup } from "@/components/search/search-anywhere-group"; -import { SearchAnywhereItem } from "@/components/search/search-anywhere-item"; +import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; +import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { Icon } from "@iconify-icon/react"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/components/search/search-anywhere-group.tsx b/frontend/app/src/shared/components/search/search-anywhere-group.tsx similarity index 90% rename from frontend/app/src/components/search/search-anywhere-group.tsx rename to frontend/app/src/shared/components/search/search-anywhere-group.tsx index 32e2d06602..d0a1273ef8 100644 --- a/frontend/app/src/components/search/search-anywhere-group.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-group.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Command } from "cmdk"; import React from "react"; diff --git a/frontend/app/src/components/search/search-anywhere-input.tsx b/frontend/app/src/shared/components/search/search-anywhere-input.tsx similarity index 86% rename from frontend/app/src/components/search/search-anywhere-input.tsx rename to frontend/app/src/shared/components/search/search-anywhere-input.tsx index ea02dfd99c..8fd856c455 100644 --- a/frontend/app/src/components/search/search-anywhere-input.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-input.tsx @@ -1,5 +1,5 @@ -import { inputStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { inputStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { Command, Command as CommandPrimitive } from "cmdk"; import * as React from "react"; diff --git a/frontend/app/src/components/search/search-anywhere-item.tsx b/frontend/app/src/shared/components/search/search-anywhere-item.tsx similarity index 80% rename from frontend/app/src/components/search/search-anywhere-item.tsx rename to frontend/app/src/shared/components/search/search-anywhere-item.tsx index 31eb158bc7..43ba12f91a 100644 --- a/frontend/app/src/components/search/search-anywhere-item.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-item.tsx @@ -1,5 +1,5 @@ -import { useSearchAnywhereContext } from "@/components/search/search-anywhere-context"; -import { CommandItem } from "@/components/ui/command"; +import { useSearchAnywhereContext } from "@/shared/components/search/search-anywhere-context"; +import { CommandItem } from "@/shared/components/ui/command"; import React from "react"; import { useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/components/search/search-anywhere-trigger.tsx b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx similarity index 88% rename from frontend/app/src/components/search/search-anywhere-trigger.tsx rename to frontend/app/src/shared/components/search/search-anywhere-trigger.tsx index d55d57a208..9e5996d94f 100644 --- a/frontend/app/src/components/search/search-anywhere-trigger.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx @@ -1,7 +1,7 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import Kbd from "@/components/ui/kbd"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import Kbd from "@/shared/components/ui/kbd"; import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; export interface SearchAnywhereTriggerButtonProps extends ButtonProps { diff --git a/frontend/app/src/components/search/search-anywhere.tsx b/frontend/app/src/shared/components/search/search-anywhere.tsx similarity index 80% rename from frontend/app/src/components/search/search-anywhere.tsx rename to frontend/app/src/shared/components/search/search-anywhere.tsx index 5df66add15..85a4be4039 100644 --- a/frontend/app/src/components/search/search-anywhere.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere.tsx @@ -1,7 +1,7 @@ -import { SearchAnywhereDialog } from "@/components/search/search-anywhere-dialog"; -import { SearchAnywhereEmpty } from "@/components/search/search-anywhere-empty"; -import { SearchAnywhereInput } from "@/components/search/search-anywhere-input"; -import { SearchAnywhereTrigger } from "@/components/search/search-anywhere-trigger"; +import { SearchAnywhereDialog } from "@/shared/components/search/search-anywhere-dialog"; +import { SearchAnywhereEmpty } from "@/shared/components/search/search-anywhere-empty"; +import { SearchAnywhereInput } from "@/shared/components/search/search-anywhere-input"; +import { SearchAnywhereTrigger } from "@/shared/components/search/search-anywhere-trigger"; import { Command } from "cmdk"; import { useEffect, useState } from "react"; import { SearchActions } from "./search-actions"; diff --git a/frontend/app/src/components/search/search-docs.tsx b/frontend/app/src/shared/components/search/search-docs.tsx similarity index 79% rename from frontend/app/src/components/search/search-docs.tsx rename to frontend/app/src/shared/components/search/search-docs.tsx index 9069f7a486..fc49a088b2 100644 --- a/frontend/app/src/components/search/search-docs.tsx +++ b/frontend/app/src/shared/components/search/search-docs.tsx @@ -1,8 +1,8 @@ -import { searchDocsQueryOptions } from "@/components/search/queries/get-doc-results"; -import { SearchAnywhereGroup } from "@/components/search/search-anywhere-group"; -import { SearchAnywhereItem } from "@/components/search/search-anywhere-item"; +import { searchDocsQueryOptions } from "@/shared/components/search/queries/get-doc-results"; +import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; +import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; -import { useDebounce } from "@/hooks/useDebounce"; +import { useDebounce } from "@/shared/hooks/useDebounce"; import { useQuery } from "@tanstack/react-query"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx similarity index 89% rename from frontend/app/src/components/search/search-nodes.tsx rename to frontend/app/src/shared/components/search/search-nodes.tsx index e324223198..342e611f1d 100644 --- a/frontend/app/src/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,17 +1,17 @@ -import { SearchAnywhereGroup } from "@/components/search/search-anywhere-group"; -import { SearchAnywhereItem } from "@/components/search/search-anywhere-item"; -import { Skeleton } from "@/components/skeleton"; -import { Badge } from "@/components/ui/badge"; +import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; +import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; +import { Skeleton } from "@/shared/components/skeleton"; +import { Badge } from "@/shared/components/ui/badge"; import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; -import { useDebounce } from "@/hooks/useDebounce"; -import { useObjectDetails } from "@/hooks/useObjectDetails"; -import useQuery from "@/hooks/useQuery"; -import { useSchema } from "@/hooks/useSchema"; +import { useDebounce } from "@/shared/hooks/useDebounce"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { POOLS_PEER } from "@/screens/ipam/constants"; -import { constructPath } from "@/utils/fetch"; -import { getSchemaObjectColumns } from "@/utils/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/utils/objects"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Command, useCommandState } from "cmdk"; import { format } from "date-fns"; diff --git a/frontend/app/src/components/skeleton.tsx b/frontend/app/src/shared/components/skeleton.tsx similarity index 86% rename from frontend/app/src/components/skeleton.tsx rename to frontend/app/src/shared/components/skeleton.tsx index 59d033afb1..1fcae6a0fc 100644 --- a/frontend/app/src/components/skeleton.tsx +++ b/frontend/app/src/shared/components/skeleton.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { HTMLAttributes } from "react"; export const Skeleton = ({ className = "", ...props }: HTMLAttributes) => { diff --git a/frontend/app/src/components/stats/multiple-progress-bar.tsx b/frontend/app/src/shared/components/stats/multiple-progress-bar.tsx similarity index 91% rename from frontend/app/src/components/stats/multiple-progress-bar.tsx rename to frontend/app/src/shared/components/stats/multiple-progress-bar.tsx index 647f07d779..1f2f8f712d 100644 --- a/frontend/app/src/components/stats/multiple-progress-bar.tsx +++ b/frontend/app/src/shared/components/stats/multiple-progress-bar.tsx @@ -1,5 +1,5 @@ -import { Tooltip, TooltipProps } from "@/components/ui/tooltip"; -import { classNames } from "@/utils/common"; +import { Tooltip, TooltipProps } from "@/shared/components/ui/tooltip"; +import { classNames } from "@/shared/utils/common"; import * as ProgressPrimitive from "@radix-ui/react-progress"; interface ProgressBarItemProps extends ProgressPrimitive.ProgressIndicatorProps { diff --git a/frontend/app/src/components/stats/progress-bar-chart.tsx b/frontend/app/src/shared/components/stats/progress-bar-chart.tsx similarity index 95% rename from frontend/app/src/components/stats/progress-bar-chart.tsx rename to frontend/app/src/shared/components/stats/progress-bar-chart.tsx index 56b39311de..3b6f1b3f0b 100644 --- a/frontend/app/src/components/stats/progress-bar-chart.tsx +++ b/frontend/app/src/shared/components/stats/progress-bar-chart.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import * as ProgressPrimitive from "@radix-ui/react-progress"; import { HTMLAttributes } from "react"; diff --git a/frontend/app/src/components/table/list.tsx b/frontend/app/src/shared/components/table/list.tsx similarity index 100% rename from frontend/app/src/components/table/list.tsx rename to frontend/app/src/shared/components/table/list.tsx diff --git a/frontend/app/src/components/table/property-list.tsx b/frontend/app/src/shared/components/table/property-list.tsx similarity index 96% rename from frontend/app/src/components/table/property-list.tsx rename to frontend/app/src/shared/components/table/property-list.tsx index 898e2399d2..e46313a030 100644 --- a/frontend/app/src/components/table/property-list.tsx +++ b/frontend/app/src/shared/components/table/property-list.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import React from "react"; export type Property = { diff --git a/frontend/app/src/components/table/table.tsx b/frontend/app/src/shared/components/table/table.tsx similarity index 97% rename from frontend/app/src/components/table/table.tsx rename to frontend/app/src/shared/components/table/table.tsx index cfd9ad24c9..de825ce708 100644 --- a/frontend/app/src/components/table/table.tsx +++ b/frontend/app/src/shared/components/table/table.tsx @@ -1,6 +1,6 @@ -import { ButtonWithTooltip } from "@/components/buttons/button-primitive"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import NoDataFound from "@/screens/errors/no-data-found"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/components/tabs-routes.tsx b/frontend/app/src/shared/components/tabs-routes.tsx similarity index 93% rename from frontend/app/src/components/tabs-routes.tsx rename to frontend/app/src/shared/components/tabs-routes.tsx index 5adcb1f07d..4a6c48d997 100644 --- a/frontend/app/src/components/tabs-routes.tsx +++ b/frontend/app/src/shared/components/tabs-routes.tsx @@ -1,5 +1,5 @@ -import { Pill } from "@/components/display/pill"; -import { classNames } from "@/utils/common"; +import { Pill } from "@/shared/components/display/pill"; +import { classNames } from "@/shared/utils/common"; import { ReactNode } from "react"; import { Link, useMatch } from "react-router-dom"; diff --git a/frontend/app/src/components/tabs.tsx b/frontend/app/src/shared/components/tabs.tsx similarity index 94% rename from frontend/app/src/components/tabs.tsx rename to frontend/app/src/shared/components/tabs.tsx index e2269f1335..91d84d398e 100644 --- a/frontend/app/src/components/tabs.tsx +++ b/frontend/app/src/shared/components/tabs.tsx @@ -1,6 +1,6 @@ -import { Pill } from "@/components/display/pill"; +import { Pill } from "@/shared/components/display/pill"; import { QSP } from "@/config/qsp"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { StringParam, useQueryParam } from "use-query-params"; type Tab = { diff --git a/frontend/app/src/components/time-selector.tsx b/frontend/app/src/shared/components/time-selector.tsx similarity index 95% rename from frontend/app/src/components/time-selector.tsx rename to frontend/app/src/shared/components/time-selector.tsx index 4095c365b0..5594a494ca 100644 --- a/frontend/app/src/components/time-selector.tsx +++ b/frontend/app/src/shared/components/time-selector.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; -import { datetimeAtom } from "@/state/atoms/time.atom"; -import { classNames } from "@/utils/common"; +import { datetimeAtom } from "@/shared/stores/time.atom"; +import { classNames } from "@/shared/utils/common"; import { Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { format, isPast } from "date-fns"; diff --git a/frontend/app/src/components/ui/accordion.tsx b/frontend/app/src/shared/components/ui/accordion.tsx similarity index 96% rename from frontend/app/src/components/ui/accordion.tsx rename to frontend/app/src/shared/components/ui/accordion.tsx index 5c8fcb248c..27603d0c5f 100644 --- a/frontend/app/src/components/ui/accordion.tsx +++ b/frontend/app/src/shared/components/ui/accordion.tsx @@ -1,6 +1,6 @@ "use client"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import * as AccordionPrimitive from "@radix-ui/react-accordion"; import * as React from "react"; diff --git a/frontend/app/src/components/ui/alert.tsx b/frontend/app/src/shared/components/ui/alert.tsx similarity index 97% rename from frontend/app/src/components/ui/alert.tsx rename to frontend/app/src/shared/components/ui/alert.tsx index fae5489db2..edcbc3f0f7 100644 --- a/frontend/app/src/components/ui/alert.tsx +++ b/frontend/app/src/shared/components/ui/alert.tsx @@ -1,7 +1,7 @@ // type AlertProps = {}; -import Accordion from "@/components/display/accordion"; -import { classNames } from "@/utils/common"; +import Accordion from "@/shared/components/display/accordion"; +import { classNames } from "@/shared/utils/common"; import { CheckCircleIcon, ExclamationTriangleIcon, diff --git a/frontend/app/src/components/ui/badge-copy.tsx b/frontend/app/src/shared/components/ui/badge-copy.tsx similarity index 100% rename from frontend/app/src/components/ui/badge-copy.tsx rename to frontend/app/src/shared/components/ui/badge-copy.tsx diff --git a/frontend/app/src/components/ui/badge.tsx b/frontend/app/src/shared/components/ui/badge.tsx similarity index 96% rename from frontend/app/src/components/ui/badge.tsx rename to frontend/app/src/shared/components/ui/badge.tsx index 5dccf77aab..d999ed028c 100644 --- a/frontend/app/src/components/ui/badge.tsx +++ b/frontend/app/src/shared/components/ui/badge.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { VariantProps, cva } from "class-variance-authority"; import React from "react"; diff --git a/frontend/app/src/components/ui/breadcrumb.tsx b/frontend/app/src/shared/components/ui/breadcrumb.tsx similarity index 95% rename from frontend/app/src/components/ui/breadcrumb.tsx rename to frontend/app/src/shared/components/ui/breadcrumb.tsx index 26fe47e444..9ddf8f32c9 100644 --- a/frontend/app/src/components/ui/breadcrumb.tsx +++ b/frontend/app/src/shared/components/ui/breadcrumb.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import React from "react"; diff --git a/frontend/app/src/components/ui/card.tsx b/frontend/app/src/shared/components/ui/card.tsx similarity index 96% rename from frontend/app/src/components/ui/card.tsx rename to frontend/app/src/shared/components/ui/card.tsx index eaa6b5b16e..19294e4c2b 100644 --- a/frontend/app/src/components/ui/card.tsx +++ b/frontend/app/src/shared/components/ui/card.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { HTMLAttributes, forwardRef } from "react"; export interface CardProps extends HTMLAttributes {} diff --git a/frontend/app/src/components/ui/combobox-legacy.tsx b/frontend/app/src/shared/components/ui/combobox-legacy.tsx similarity index 97% rename from frontend/app/src/components/ui/combobox-legacy.tsx rename to frontend/app/src/shared/components/ui/combobox-legacy.tsx index 19a253cc9e..3c35095431 100644 --- a/frontend/app/src/components/ui/combobox-legacy.tsx +++ b/frontend/app/src/shared/components/ui/combobox-legacy.tsx @@ -1,5 +1,5 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import { classNames } from "@/utils/common"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { classNames } from "@/shared/utils/common"; import { Combobox as ComboboxPrimitive } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; diff --git a/frontend/app/src/components/ui/combobox.tsx b/frontend/app/src/shared/components/ui/combobox.tsx similarity index 91% rename from frontend/app/src/components/ui/combobox.tsx rename to frontend/app/src/shared/components/ui/combobox.tsx index 3402fc13ba..8a215c5646 100644 --- a/frontend/app/src/components/ui/combobox.tsx +++ b/frontend/app/src/shared/components/ui/combobox.tsx @@ -4,10 +4,10 @@ import { CommandInput, CommandItem, CommandList, -} from "@/components/ui/command"; -import { Popover, PopoverContent, PopoverTrigger } from "@/components/ui/popover"; -import { inputStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +} from "@/shared/components/ui/command"; +import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; +import { inputStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; import React from "react"; diff --git a/frontend/app/src/components/ui/command.tsx b/frontend/app/src/shared/components/ui/command.tsx similarity index 97% rename from frontend/app/src/components/ui/command.tsx rename to frontend/app/src/shared/components/ui/command.tsx index 031e355ba8..ba119a93fd 100644 --- a/frontend/app/src/components/ui/command.tsx +++ b/frontend/app/src/shared/components/ui/command.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { Command as CommandPrimitive } from "cmdk"; import * as React from "react"; diff --git a/frontend/app/src/components/ui/divider.tsx b/frontend/app/src/shared/components/ui/divider.tsx similarity index 89% rename from frontend/app/src/components/ui/divider.tsx rename to frontend/app/src/shared/components/ui/divider.tsx index 396d3e8f67..fce5cfcaa4 100644 --- a/frontend/app/src/components/ui/divider.tsx +++ b/frontend/app/src/shared/components/ui/divider.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import React from "react"; export const Divider = ({ className, ...props }: React.HTMLAttributes) => { diff --git a/frontend/app/src/components/ui/dropdown-menu.tsx b/frontend/app/src/shared/components/ui/dropdown-menu.tsx similarity index 97% rename from frontend/app/src/components/ui/dropdown-menu.tsx rename to frontend/app/src/shared/components/ui/dropdown-menu.tsx index dd7764a15f..a2573225d9 100644 --- a/frontend/app/src/components/ui/dropdown-menu.tsx +++ b/frontend/app/src/shared/components/ui/dropdown-menu.tsx @@ -3,8 +3,8 @@ import { AccordionContent, AccordionItem, AccordionTrigger, -} from "@/components/ui/accordion"; -import { classNames } from "@/utils/common"; +} from "@/shared/components/ui/accordion"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu"; import { ComponentPropsWithoutRef, ElementRef, forwardRef } from "react"; diff --git a/frontend/app/src/components/ui/form.tsx b/frontend/app/src/shared/components/ui/form.tsx similarity index 94% rename from frontend/app/src/components/ui/form.tsx rename to frontend/app/src/shared/components/ui/form.tsx index 815c439acc..5588395274 100644 --- a/frontend/app/src/components/ui/form.tsx +++ b/frontend/app/src/shared/components/ui/form.tsx @@ -1,7 +1,7 @@ -import { Button, ButtonProps } from "@/components/buttons/button-primitive"; -import Label, { LabelProps } from "@/components/ui/label"; -import { Spinner } from "@/components/ui/spinner"; -import { classNames } from "@/utils/common"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import Label, { LabelProps } from "@/shared/components/ui/label"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { classNames } from "@/shared/utils/common"; import { Slot } from "@radix-ui/react-slot"; import React, { createContext, diff --git a/frontend/app/src/components/ui/id.tsx b/frontend/app/src/shared/components/ui/id.tsx similarity index 85% rename from frontend/app/src/components/ui/id.tsx rename to frontend/app/src/shared/components/ui/id.tsx index c056ae7394..3441e24d36 100644 --- a/frontend/app/src/components/ui/id.tsx +++ b/frontend/app/src/shared/components/ui/id.tsx @@ -1,8 +1,8 @@ -import { Clipboard } from "@/components/buttons/clipboard"; -import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/components/display/badge-circle"; +import { Clipboard } from "@/shared/components/buttons/clipboard"; +import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; import { NODE_OBJECT } from "@/config/constants"; import { getObjectDisplayLabel } from "@/shared/api/graphql/queries/objects/getObjectDisplayLabel"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/components/ui/input.tsx b/frontend/app/src/shared/components/ui/input.tsx similarity index 74% rename from frontend/app/src/components/ui/input.tsx rename to frontend/app/src/shared/components/ui/input.tsx index b0d8c6d038..446b5e0210 100644 --- a/frontend/app/src/components/ui/input.tsx +++ b/frontend/app/src/shared/components/ui/input.tsx @@ -1,5 +1,5 @@ -import { inputStyle } from "@/components/ui/style"; -import { classNames } from "@/utils/common"; +import { inputStyle } from "@/shared/components/ui/style"; +import { classNames } from "@/shared/utils/common"; import { InputHTMLAttributes, forwardRef } from "react"; export interface InputProps extends InputHTMLAttributes {} diff --git a/frontend/app/src/components/ui/kbd.tsx b/frontend/app/src/shared/components/ui/kbd.tsx similarity index 96% rename from frontend/app/src/components/ui/kbd.tsx rename to frontend/app/src/shared/components/ui/kbd.tsx index d3f82c4d80..911ddfb6f5 100644 --- a/frontend/app/src/components/ui/kbd.tsx +++ b/frontend/app/src/shared/components/ui/kbd.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { HTMLAttributes, forwardRef, useMemo } from "react"; export type KbdKey = diff --git a/frontend/app/src/components/ui/label.tsx b/frontend/app/src/shared/components/ui/label.tsx similarity index 94% rename from frontend/app/src/components/ui/label.tsx rename to frontend/app/src/shared/components/ui/label.tsx index eb557b36bf..c8d5a28b88 100644 --- a/frontend/app/src/components/ui/label.tsx +++ b/frontend/app/src/shared/components/ui/label.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import * as LabelPrimitive from "@radix-ui/react-label"; import { type VariantProps, cva } from "class-variance-authority"; import * as React from "react"; diff --git a/frontend/app/src/components/ui/link.tsx b/frontend/app/src/shared/components/ui/link.tsx similarity index 87% rename from frontend/app/src/components/ui/link.tsx rename to frontend/app/src/shared/components/ui/link.tsx index da011fdba7..51ce876d02 100644 --- a/frontend/app/src/components/ui/link.tsx +++ b/frontend/app/src/shared/components/ui/link.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { LinkProps, Link as RouterLink } from "react-router-dom"; export const Link = (props: LinkProps) => { diff --git a/frontend/app/src/components/ui/pagination.tsx b/frontend/app/src/shared/components/ui/pagination.tsx similarity index 97% rename from frontend/app/src/components/ui/pagination.tsx rename to frontend/app/src/shared/components/ui/pagination.tsx index 7691e0be68..6a020d1299 100644 --- a/frontend/app/src/components/ui/pagination.tsx +++ b/frontend/app/src/shared/components/ui/pagination.tsx @@ -1,5 +1,5 @@ -import usePagination from "@/hooks/usePagination"; -import { classNames } from "@/utils/common"; +import usePagination from "@/shared/hooks/usePagination"; +import { classNames } from "@/shared/utils/common"; import ReactPaginate from "react-paginate"; import { Combobox, ComboboxContent, ComboboxItem, ComboboxTrigger } from "./combobox"; import { Command, CommandList } from "./command"; diff --git a/frontend/app/src/components/ui/password-input.tsx b/frontend/app/src/shared/components/ui/password-input.tsx similarity index 88% rename from frontend/app/src/components/ui/password-input.tsx rename to frontend/app/src/shared/components/ui/password-input.tsx index d62515b2e3..dddd9bee6b 100644 --- a/frontend/app/src/components/ui/password-input.tsx +++ b/frontend/app/src/shared/components/ui/password-input.tsx @@ -1,5 +1,5 @@ -import { Button } from "@/components/buttons/button-primitive"; -import { classNames } from "@/utils/common"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { forwardRef, useState } from "react"; import { Input, InputProps } from "./input"; diff --git a/frontend/app/src/components/ui/popover.tsx b/frontend/app/src/shared/components/ui/popover.tsx similarity index 98% rename from frontend/app/src/components/ui/popover.tsx rename to frontend/app/src/shared/components/ui/popover.tsx index dabb9cfe37..2c78bf3ee6 100644 --- a/frontend/app/src/components/ui/popover.tsx +++ b/frontend/app/src/shared/components/ui/popover.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import * as PopoverPrimitive from "@radix-ui/react-popover"; import * as TabsPrimitive from "@radix-ui/react-tabs"; import * as React from "react"; diff --git a/frontend/app/src/components/ui/pulse.tsx b/frontend/app/src/shared/components/ui/pulse.tsx similarity index 88% rename from frontend/app/src/components/ui/pulse.tsx rename to frontend/app/src/shared/components/ui/pulse.tsx index 3ce5c88ff0..aa9a118900 100644 --- a/frontend/app/src/components/ui/pulse.tsx +++ b/frontend/app/src/shared/components/ui/pulse.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; interface PulseProps { className?: string; diff --git a/frontend/app/src/components/ui/resizable.tsx b/frontend/app/src/shared/components/ui/resizable.tsx similarity index 96% rename from frontend/app/src/components/ui/resizable.tsx rename to frontend/app/src/shared/components/ui/resizable.tsx index 5dab999b9d..54ace1bf05 100644 --- a/frontend/app/src/components/ui/resizable.tsx +++ b/frontend/app/src/shared/components/ui/resizable.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import React from "react"; import * as ResizablePrimitive from "react-resizable-panels"; diff --git a/frontend/app/src/components/ui/scroll-area.tsx b/frontend/app/src/shared/components/ui/scroll-area.tsx similarity index 97% rename from frontend/app/src/components/ui/scroll-area.tsx rename to frontend/app/src/shared/components/ui/scroll-area.tsx index e507689571..4e8e9f6ca2 100644 --- a/frontend/app/src/components/ui/scroll-area.tsx +++ b/frontend/app/src/shared/components/ui/scroll-area.tsx @@ -1,6 +1,6 @@ "use client"; -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import * as ScrollAreaPrimitive from "@radix-ui/react-scroll-area"; import * as React from "react"; diff --git a/frontend/app/src/components/ui/search-input.tsx b/frontend/app/src/shared/components/ui/search-input.tsx similarity index 94% rename from frontend/app/src/components/ui/search-input.tsx rename to frontend/app/src/shared/components/ui/search-input.tsx index c19145a42d..e266720f1d 100644 --- a/frontend/app/src/components/ui/search-input.tsx +++ b/frontend/app/src/shared/components/ui/search-input.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { forwardRef } from "react"; import { Input, InputProps } from "./input"; diff --git a/frontend/app/src/components/ui/spinner.tsx b/frontend/app/src/shared/components/ui/spinner.tsx similarity index 96% rename from frontend/app/src/components/ui/spinner.tsx rename to frontend/app/src/shared/components/ui/spinner.tsx index 6b7e4d7ef1..5cf77e1b01 100644 --- a/frontend/app/src/components/ui/spinner.tsx +++ b/frontend/app/src/shared/components/ui/spinner.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { InputHTMLAttributes } from "react"; interface SpinnerProps extends InputHTMLAttributes {} diff --git a/frontend/app/src/components/ui/style.ts b/frontend/app/src/shared/components/ui/style.ts similarity index 100% rename from frontend/app/src/components/ui/style.ts rename to frontend/app/src/shared/components/ui/style.ts diff --git a/frontend/app/src/components/ui/tooltip.tsx b/frontend/app/src/shared/components/ui/tooltip.tsx similarity index 95% rename from frontend/app/src/components/ui/tooltip.tsx rename to frontend/app/src/shared/components/ui/tooltip.tsx index d4007894c7..a2296b7e52 100644 --- a/frontend/app/src/components/ui/tooltip.tsx +++ b/frontend/app/src/shared/components/ui/tooltip.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import * as TooltipPrimitives from "@radix-ui/react-tooltip"; import { ComponentPropsWithoutRef, ReactNode } from "react"; diff --git a/frontend/app/src/components/ui/transition.tsx b/frontend/app/src/shared/components/ui/transition.tsx similarity index 100% rename from frontend/app/src/components/ui/transition.tsx rename to frontend/app/src/shared/components/ui/transition.tsx diff --git a/frontend/app/src/components/ui/tree-sheleton.tsx b/frontend/app/src/shared/components/ui/tree-sheleton.tsx similarity index 83% rename from frontend/app/src/components/ui/tree-sheleton.tsx rename to frontend/app/src/shared/components/ui/tree-sheleton.tsx index 171494538b..2ed1e5438c 100644 --- a/frontend/app/src/components/ui/tree-sheleton.tsx +++ b/frontend/app/src/shared/components/ui/tree-sheleton.tsx @@ -1,5 +1,5 @@ -import { Skeleton } from "@/components/skeleton"; -import { classNames } from "@/utils/common"; +import { Skeleton } from "@/shared/components/skeleton"; +import { classNames } from "@/shared/utils/common"; export const TreeSkeleton = ({ className }: { className?: string }) => { return ( diff --git a/frontend/app/src/components/ui/tree.tsx b/frontend/app/src/shared/components/ui/tree.tsx similarity index 98% rename from frontend/app/src/components/ui/tree.tsx rename to frontend/app/src/shared/components/ui/tree.tsx index 245c58eafa..62b5bfcdee 100644 --- a/frontend/app/src/components/ui/tree.tsx +++ b/frontend/app/src/shared/components/ui/tree.tsx @@ -1,4 +1,4 @@ -import { classNames } from "@/utils/common"; +import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import React from "react"; import TreeViewPrimitive, { INodeRendererProps, ITreeViewProps } from "react-accessible-treeview"; diff --git a/frontend/app/src/hooks/useAuth.tsx b/frontend/app/src/shared/hooks/useAuth.tsx similarity index 95% rename from frontend/app/src/hooks/useAuth.tsx rename to frontend/app/src/shared/hooks/useAuth.tsx index 57f3e10ae4..9a81862641 100644 --- a/frontend/app/src/hooks/useAuth.tsx +++ b/frontend/app/src/shared/hooks/useAuth.tsx @@ -1,12 +1,12 @@ -import { ALERT_TYPES, Alert } from "@/components/ui/alert"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { REFRESH_TOKEN_KEY } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { components } from "@/shared/api/rest/types.generated"; -import { configState } from "@/state/atoms/config.atom"; -import { parseJwt } from "@/utils/common"; -import { fetchUrl } from "@/utils/fetch"; +import { configState } from "@/config/config.atom"; +import { parseJwt } from "@/shared/utils/common"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { ObservableQuery } from "@apollo/client"; import { useAtom } from "jotai/index"; import { ReactElement, ReactNode, createContext, useContext, useState } from "react"; diff --git a/frontend/app/src/hooks/useCodeMirror.ts b/frontend/app/src/shared/hooks/useCodeMirror.ts similarity index 100% rename from frontend/app/src/hooks/useCodeMirror.ts rename to frontend/app/src/shared/hooks/useCodeMirror.ts diff --git a/frontend/app/src/hooks/useDebounce.ts b/frontend/app/src/shared/hooks/useDebounce.ts similarity index 100% rename from frontend/app/src/hooks/useDebounce.ts rename to frontend/app/src/shared/hooks/useDebounce.ts diff --git a/frontend/app/src/hooks/useFilters.ts b/frontend/app/src/shared/hooks/useFilters.ts similarity index 94% rename from frontend/app/src/hooks/useFilters.ts rename to frontend/app/src/shared/hooks/useFilters.ts index 12772ba1e2..591bad257e 100644 --- a/frontend/app/src/hooks/useFilters.ts +++ b/frontend/app/src/shared/hooks/useFilters.ts @@ -1,5 +1,5 @@ import { QSP } from "@/config/qsp"; -import { uniqueItemsArray } from "@/utils/array"; +import { uniqueItemsArray } from "@/shared/utils/array"; import { StringParam, useQueryParam } from "use-query-params"; export type Filter = { diff --git a/frontend/app/src/hooks/useLocalStorage.ts b/frontend/app/src/shared/hooks/useLocalStorage.ts similarity index 100% rename from frontend/app/src/hooks/useLocalStorage.ts rename to frontend/app/src/shared/hooks/useLocalStorage.ts diff --git a/frontend/app/src/hooks/useObjectDetails.ts b/frontend/app/src/shared/hooks/useObjectDetails.ts similarity index 89% rename from frontend/app/src/hooks/useObjectDetails.ts rename to frontend/app/src/shared/hooks/useObjectDetails.ts index c9c840a673..8d9c405639 100644 --- a/frontend/app/src/hooks/useObjectDetails.ts +++ b/frontend/app/src/shared/hooks/useObjectDetails.ts @@ -1,10 +1,10 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/hooks/useQuery"; +import useQuery from "@/shared/hooks/useQuery"; import { getPermission } from "@/screens/permission/utils"; import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema, genericsState } from "@/state/atoms/schema.atom"; -import { getSchemaObjectColumns, getTabs } from "@/utils/getSchemaObjectColumns"; +import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns, getTabs } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/hooks/useObjectItems.ts b/frontend/app/src/shared/hooks/useObjectItems.ts similarity index 91% rename from frontend/app/src/hooks/useObjectItems.ts rename to frontend/app/src/shared/hooks/useObjectItems.ts index 238fac8e08..3bc51da308 100644 --- a/frontend/app/src/hooks/useObjectItems.ts +++ b/frontend/app/src/shared/hooks/useObjectItems.ts @@ -1,11 +1,11 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { getTokens } from "@/shared/api/graphql/queries/accounts/getTokens"; import { getObjectItemsPaginated } from "@/shared/api/graphql/queries/objects/getObjectItems"; -import { Filter } from "@/hooks/useFilters"; -import useQuery from "@/hooks/useQuery"; +import { Filter } from "@/shared/hooks/useFilters"; +import useQuery from "@/shared/hooks/useQuery"; import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/state/atoms/schema.atom"; -import { getObjectAttributes, getObjectRelationships } from "@/utils/getSchemaObjectColumns"; +import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { getObjectAttributes, getObjectRelationships } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/hooks/usePagination.ts b/frontend/app/src/shared/hooks/usePagination.ts similarity index 96% rename from frontend/app/src/hooks/usePagination.ts rename to frontend/app/src/shared/hooks/usePagination.ts index f646c4f0f4..767dd4b142 100644 --- a/frontend/app/src/hooks/usePagination.ts +++ b/frontend/app/src/shared/hooks/usePagination.ts @@ -1,5 +1,5 @@ import { QSP } from "@/config/qsp"; -import { configState } from "@/state/atoms/config.atom"; +import { configState } from "@/config/config.atom"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/hooks/usePrevious.ts b/frontend/app/src/shared/hooks/usePrevious.ts similarity index 100% rename from frontend/app/src/hooks/usePrevious.ts rename to frontend/app/src/shared/hooks/usePrevious.ts diff --git a/frontend/app/src/hooks/useQuery.ts b/frontend/app/src/shared/hooks/useQuery.ts similarity index 94% rename from frontend/app/src/hooks/useQuery.ts rename to frontend/app/src/shared/hooks/useQuery.ts index f242cb881d..fb7809fc3f 100644 --- a/frontend/app/src/hooks/useQuery.ts +++ b/frontend/app/src/shared/hooks/useQuery.ts @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { WSClient } from "@/shared/api/graphql/websocket"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { datetimeAtom } from "@/state/atoms/time.atom"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { datetimeAtom } from "@/shared/stores/time.atom"; import { OperationVariables, useLazyQuery as useApolloLazyQuery, diff --git a/frontend/app/src/hooks/useSchema.ts b/frontend/app/src/shared/hooks/useSchema.ts similarity index 97% rename from frontend/app/src/hooks/useSchema.ts rename to frontend/app/src/shared/hooks/useSchema.ts index 3db96f4b92..c2b3cd167d 100644 --- a/frontend/app/src/hooks/useSchema.ts +++ b/frontend/app/src/shared/hooks/useSchema.ts @@ -5,7 +5,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/state/atoms/schema.atom"; +} from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai/index"; type UseSchema = (kind?: string | null) => diff --git a/frontend/app/src/hooks/useTitle.ts b/frontend/app/src/shared/hooks/useTitle.ts similarity index 100% rename from frontend/app/src/hooks/useTitle.ts rename to frontend/app/src/shared/hooks/useTitle.ts diff --git a/frontend/app/src/state/index.ts b/frontend/app/src/shared/stores/index.ts similarity index 100% rename from frontend/app/src/state/index.ts rename to frontend/app/src/shared/stores/index.ts diff --git a/frontend/app/src/state/atoms/state.atom.ts b/frontend/app/src/shared/stores/state.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/state.atom.ts rename to frontend/app/src/shared/stores/state.atom.ts diff --git a/frontend/app/src/state/atoms/time.atom.ts b/frontend/app/src/shared/stores/time.atom.ts similarity index 100% rename from frontend/app/src/state/atoms/time.atom.ts rename to frontend/app/src/shared/stores/time.atom.ts diff --git a/frontend/app/src/utils/array.ts b/frontend/app/src/shared/utils/array.ts similarity index 100% rename from frontend/app/src/utils/array.ts rename to frontend/app/src/shared/utils/array.ts diff --git a/frontend/app/src/utils/common.ts b/frontend/app/src/shared/utils/common.ts similarity index 100% rename from frontend/app/src/utils/common.ts rename to frontend/app/src/shared/utils/common.ts diff --git a/frontend/app/src/utils/date.ts b/frontend/app/src/shared/utils/date.ts similarity index 100% rename from frontend/app/src/utils/date.ts rename to frontend/app/src/shared/utils/date.ts diff --git a/frontend/app/src/utils/handlebars.ts b/frontend/app/src/shared/utils/handlebars.ts similarity index 100% rename from frontend/app/src/utils/handlebars.ts rename to frontend/app/src/shared/utils/handlebars.ts diff --git a/frontend/app/src/utils/number.ts b/frontend/app/src/shared/utils/number.ts similarity index 100% rename from frontend/app/src/utils/number.ts rename to frontend/app/src/shared/utils/number.ts diff --git a/frontend/app/src/utils/string.tsx b/frontend/app/src/shared/utils/string.tsx similarity index 100% rename from frontend/app/src/utils/string.tsx rename to frontend/app/src/shared/utils/string.tsx diff --git a/frontend/app/tests/components/form.story.tsx b/frontend/app/tests/components/form.story.tsx index 959fd9b53b..c14c5a3ba2 100644 --- a/frontend/app/tests/components/form.story.tsx +++ b/frontend/app/tests/components/form.story.tsx @@ -1,4 +1,4 @@ -import { Form, FormProps, FormSubmit } from "../../src/components/ui/form"; +import { Form, FormProps, FormSubmit } from "@/shared/components/ui/form"; export const TestForm = ({ children, onSubmit = () => {}, ...props }: FormProps) => (
diff --git a/frontend/app/tests/components/render.tsx b/frontend/app/tests/components/render.tsx index a69eaf949e..a1ac328115 100644 --- a/frontend/app/tests/components/render.tsx +++ b/frontend/app/tests/components/render.tsx @@ -4,7 +4,7 @@ import React from "react"; import { Slide, ToastContainer } from "react-toastify"; import { render as renderFromVitest } from "vitest-browser-react"; import { queryClient } from "../../src/shared/api/rest/client"; -import { store } from "../../src/state"; +import { store } from "@/shared/stores"; import "/src/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; diff --git a/frontend/app/tests/fake/schema.ts b/frontend/app/tests/fake/schema.ts index fd56df1fcf..61681c0012 100644 --- a/frontend/app/tests/fake/schema.ts +++ b/frontend/app/tests/fake/schema.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/state/atoms/schema.atom"; +import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/screens/schema/schema.atom"; export const generateNodeSchema = ( overrides?: Partial diff --git a/frontend/app/tests/integrations/screens/account.cy.tsx b/frontend/app/tests/integrations/screens/account.cy.tsx index 9493e6b13e..a391bf10a2 100644 --- a/frontend/app/tests/integrations/screens/account.cy.tsx +++ b/frontend/app/tests/integrations/screens/account.cy.tsx @@ -1,11 +1,11 @@ /// import { MockedProvider } from "@apollo/client/testing"; -import { AccountMenu } from "../../../src/components/account-menu"; +import { AccountMenu } from "../../../src/shared/components/account-menu"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/hooks/useAuth"; -import { genericsState } from "../../../src/state/atoms/schema.atom"; -import { encodeJwt } from "../../../src/utils/common"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; +import { genericsState } from "../../../src/screens/schema/schema.atom"; +import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { profileDetailsMocksData, diff --git a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx index 9eee02f5d5..4343a471af 100644 --- a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx +++ b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx @@ -4,12 +4,12 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { withSchemaContext } from "../../../src/decorators/withSchemaContext"; -import { AuthProvider } from "../../../src/hooks/useAuth"; +import { withSchemaContext } from "../../../src/screens/schema/withSchemaContext"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { ArtifactsDiff } from "../../../src/screens/diff/artifact-diff/artifacts-diff"; -import { proposedChangedState } from "../../../src/state/atoms/proposedChanges.atom"; -import { schemaState } from "../../../src/state/atoms/schema.atom"; -import { encodeJwt } from "../../../src/utils/common"; +import { proposedChangedState } from "../../../src/screens/proposed-changes/proposedChanges.atom"; +import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { artifactPermissionsData, diff --git a/frontend/app/tests/integrations/screens/branche-items.cy.tsx b/frontend/app/tests/integrations/screens/branche-items.cy.tsx index 380ba4d53b..98eb91f2e1 100644 --- a/frontend/app/tests/integrations/screens/branche-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/branche-items.cy.tsx @@ -3,7 +3,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import BranchesItems from "../../../src/screens/branches/branches-items"; -import { branchesState } from "../../../src/state/atoms/branches.atom"; +import { branchesState } from "../../../src/screens/branches/branches.atom"; import { branchesMocks, branchesQuery } from "../../mocks/data/branches"; import { TestProvider } from "../../mocks/jotai/atom"; diff --git a/frontend/app/tests/integrations/screens/conversations.cy.tsx b/frontend/app/tests/integrations/screens/conversations.cy.tsx index e4179ad304..39029496dd 100644 --- a/frontend/app/tests/integrations/screens/conversations.cy.tsx +++ b/frontend/app/tests/integrations/screens/conversations.cy.tsx @@ -4,8 +4,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { Conversations } from "../../../src/screens/proposed-changes/conversations"; -import { proposedChangedState } from "../../../src/state/atoms/proposedChanges.atom"; -import { schemaState } from "../../../src/state/atoms/schema.atom"; +import { proposedChangedState } from "../../../src/screens/proposed-changes/proposedChanges.atom"; +import { schemaState } from "../../../src/screens/schema/schema.atom"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { conversationMocksData, diff --git a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx index 3a42039e3c..dee5777ca9 100644 --- a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; -import { genericsState, schemaState } from "../../../src/state/atoms/schema.atom"; +import { genericsState, schemaState } from "../../../src/screens/schema/schema.atom"; import { deviceDetailsInterfacesMocksData, deviceDetailsInterfacesMocksQuery, diff --git a/frontend/app/tests/integrations/screens/object-details.cy.tsx b/frontend/app/tests/integrations/screens/object-details.cy.tsx index 3e9d3fd37b..2b48427ebf 100644 --- a/frontend/app/tests/integrations/screens/object-details.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; -import { schemaState } from "../../../src/state/atoms/schema.atom"; +import { schemaState } from "../../../src/screens/schema/schema.atom"; import { deviceDetailsMocksASNName, deviceDetailsMocksData, diff --git a/frontend/app/tests/integrations/screens/object-fields.cy.tsx b/frontend/app/tests/integrations/screens/object-fields.cy.tsx index 353442330c..ff22dfc397 100644 --- a/frontend/app/tests/integrations/screens/object-fields.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-fields.cy.tsx @@ -2,12 +2,12 @@ import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { schemaState } from "../../../src/state/atoms/schema.atom"; +import { schemaState } from "../../../src/screens/schema/schema.atom"; import { gql } from "@apollo/client"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/hooks/useAuth"; -import { encodeJwt } from "../../../src/utils/common"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; +import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { profileDetailsMocksData, diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index b516e973bc..284fa74cf6 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -4,10 +4,10 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/hooks/useAuth"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; -import { configState } from "../../../src/state/atoms/config.atom"; -import { schemaState } from "../../../src/state/atoms/schema.atom"; +import { configState } from "../../../src/config/config.atom"; +import { schemaState } from "../../../src/screens/schema/schema.atom"; import { mockedToken } from "../../fixtures/auth"; import { configMocks } from "../../mocks/data/config"; import { diff --git a/frontend/app/tests/integrations/screens/object-items.cy.tsx b/frontend/app/tests/integrations/screens/object-items.cy.tsx index 0dab9913ab..2ce5c39e83 100644 --- a/frontend/app/tests/integrations/screens/object-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; -import { genericsState, schemaState } from "../../../src/state/atoms/schema.atom"; +import { genericsState, schemaState } from "../../../src/screens/schema/schema.atom"; import { graphqlQueriesMocksData, graphqlQueriesMocksQuery, diff --git a/frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts b/frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts index 126b1981de..be1e0ffcca 100644 --- a/frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts +++ b/frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts @@ -1,5 +1,5 @@ -import { getFiltersFromFormData } from "@/components/filters/utils/getFiltersFromFormData"; -import { FormFieldValue } from "@/components/form/type"; +import { getFiltersFromFormData } from "@/shared/components/filters/utils/getFiltersFromFormData"; +import { FormFieldValue } from "@/shared/components/form/type"; import { describe, expect } from "vitest"; describe("getFiltersFromFormData - test", () => { diff --git a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts index d9e9cf3fef..e14b8f00c7 100644 --- a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts +++ b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts @@ -1,6 +1,6 @@ -import { getObjectFromFilters } from "@/components/filters/utils/getObjectFromFilters"; -import { Filter } from "@/hooks/useFilters"; -import { IModelSchema } from "@/state/atoms/schema.atom"; +import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; +import { Filter } from "@/shared/hooks/useFilters"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { describe, expect } from "vitest"; import { buildRelationshipSchema } from "../form/utils/getFormFieldsFromSchema.test"; diff --git a/frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts b/frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts index 40a18b54c2..83a22ee36e 100644 --- a/frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts @@ -3,8 +3,8 @@ import { DynamicFieldProps, FormAttributeValue, FormRelationshipValue, -} from "@/components/form/type"; -import { getCreateMutationFromFormData } from "@/components/form/utils/mutations/getCreateMutationFromFormData"; +} from "@/shared/components/form/type"; +import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { describe, expect } from "vitest"; export const buildField = (override?: Partial): DynamicFieldProps => { diff --git a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts index 5c3b6262a7..1661c3a998 100644 --- a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts @@ -1,9 +1,9 @@ -import { ProfileData } from "@/components/form/object-form"; +import { ProfileData } from "@/shared/components/form/object-form"; import { GetFieldDefaultValue, getFieldDefaultValue, -} from "@/components/form/utils/getFieldDefaultValue"; -import { AttributeType } from "@/utils/getObjectItemDisplayValue"; +} from "@/shared/components/form/utils/getFieldDefaultValue"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { describe, expect, it } from "vitest"; import { buildAttributeSchema, buildRelationshipSchema } from "./getFormFieldsFromSchema.test"; diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index 30e9f89f5f..6b93a4a015 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,11 +1,11 @@ -import { getFormFieldsFromSchema } from "@/components/form/utils/getFormFieldsFromSchema"; -import { AuthContextType } from "@/hooks/useAuth"; +import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; +import { AuthContextType } from "@/shared/hooks/useAuth"; import { RelationshipSchema } from "@/screens/schema/types"; import { components } from "@/shared/api/rest/types.generated"; -import { store } from "@/state"; -import { currentBranchAtom } from "@/state/atoms/branches.atom"; -import { IModelSchema } from "@/state/atoms/schema.atom"; -import { AttributeType } from "@/utils/getObjectItemDisplayValue"; +import { store } from "@/shared/stores"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { describe, expect, it } from "vitest"; export const buildAttributeSchema = ( diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts index fe1a3a076f..6f2292ad06 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts @@ -1,8 +1,8 @@ -import { getRelationshipDefaultValue } from "@/components/form/utils/getRelationshipDefaultValue"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { store } from "@/state"; -import { iNodeSchema, schemaState } from "@/state/atoms/schema.atom"; -import { RelationshipManyType, RelationshipOneType } from "@/utils/getObjectItemDisplayValue"; +import { store } from "@/shared/stores"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { RelationshipManyType, RelationshipOneType } from "@/screens/objects/getObjectItemDisplayValue"; import { describe, expect } from "vitest"; const buildRelationshipOneData = (override: Partial): RelationshipOneType => ({ diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts index 8a5063a4c0..75676ef7ee 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts @@ -1,4 +1,4 @@ -import { getRelationshipsForForm } from "@/components/form/utils/getRelationshipsForForm"; +import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { describe, expect, it } from "vitest"; import { buildRelationshipSchema } from "./getFormFieldsFromSchema.test"; diff --git a/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts b/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts index 68126ab16e..a4e332d2aa 100644 --- a/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts @@ -3,8 +3,8 @@ import { FormAttributeValue, FormRelationshipValue, RelationshipValueFromPool, -} from "@/components/form/type"; -import { getUpdateMutationFromFormData } from "@/components/form/utils/mutations/getUpdateMutationFromFormData"; +} from "@/shared/components/form/type"; +import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; import { describe, expect } from "vitest"; import { buildField } from "./getCreateMutationFromFormData.test"; diff --git a/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts b/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts index d958578d9c..66c7a6b28a 100644 --- a/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts +++ b/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts @@ -1,4 +1,4 @@ -import { IsFieldDisabledParams, isFieldDisabled } from "@/components/form/utils/isFieldDisabled"; +import { IsFieldDisabledParams, isFieldDisabled } from "@/shared/components/form/utils/isFieldDisabled"; import { describe, expect, it } from "vitest"; describe("isFieldDisabled", () => { diff --git a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts index 34d770f9ab..0801a0d743 100644 --- a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts +++ b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts @@ -1,4 +1,4 @@ -import { TreeProps } from "@/components/ui/tree"; +import { TreeProps } from "@/shared/components/ui/tree"; import { TREE_ROOT_ID } from "@/screens/ipam/constants"; import { addItemsToTree } from "@/screens/ipam/ipam-tree/utils"; import { EMPTY_TREE } from "@/screens/ipam/ipam-tree/utils"; diff --git a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts index 6ca93572f7..55af606031 100644 --- a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts +++ b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts @@ -1,5 +1,5 @@ import { describe, expect, it } from "vitest"; -import { TreeProps } from "../../../../src/components/ui/tree"; +import { TreeProps } from "../../../../src/shared/components/ui/tree"; import { generateRootCategoryNodeForDiffTree } from "../../../../src/screens/diff/diff-tree"; import { TREE_ROOT_ID } from "../../../../src/screens/ipam/constants"; diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index ea1dedcbd7..2d8224612a 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "vitest"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import getMutationMetaDetailsFromFormData from "../../../src/utils/getMutationMetaDetailsFromFormData"; -import { stringifyWithoutQuotes } from "../../../src/utils/string"; +import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { deviceDetailsMocksData, deviceDetailsMocksSchema, diff --git a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts index 2b6b2fb48b..9b6f632acb 100644 --- a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts +++ b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts @@ -3,7 +3,7 @@ import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, -} from "../../../src/utils/getSchemaObjectColumns"; +} from "@/screens/object-items/getSchemaObjectColumns"; import { C_deviceAttributeColumns, C_deviceObjectColumns, diff --git a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts index d6e9f3ad63..288c5d291a 100644 --- a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts +++ b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts @@ -1,5 +1,5 @@ import { describe, expect, it } from "vitest"; -import { stringifyWithoutQuotes } from "../../../src/utils/string"; +import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { C_JSON1, C_JSON1_OUTPUT, From 8b6e9aea2a9742ad5e1d5307283f42685f831a03 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:36:54 +0100 Subject: [PATCH 04/25] fix biome --- frontend/app/biome.json | 2 +- frontend/app/package.json | 12 ++------- frontend/app/src/app/app.tsx | 2 +- frontend/app/src/app/root.tsx | 4 +-- frontend/app/src/app/router.tsx | 2 +- frontend/app/src/pages/auth-callback.tsx | 4 +-- frontend/app/src/pages/branches/details.tsx | 10 +++---- frontend/app/src/pages/homepage.tsx | 2 +- frontend/app/src/pages/ipam/layout.tsx | 2 +- frontend/app/src/pages/login.tsx | 2 +- .../graphql-query-details.tsx | 8 +++--- frontend/app/src/pages/objects/layout.tsx | 8 ++++-- .../app/src/pages/objects/object-details.tsx | 2 +- frontend/app/src/pages/profile.tsx | 2 +- .../src/pages/proposed-changes/details.tsx | 16 ++++++------ .../app/src/pages/proposed-changes/new.tsx | 4 +-- .../resource-allocation-details.tsx | 10 +++---- .../resource-pool-details.tsx | 18 ++++++------- .../app/src/pages/role-management/index.tsx | 2 +- frontend/app/src/pages/schema.tsx | 4 +-- frontend/app/src/pages/tasks/task-details.tsx | 8 +++--- .../app/src/screens/artifacts/generate.tsx | 6 ++--- .../object-item-details-paginated.tsx | 14 +++++----- .../src/screens/authentification/login.tsx | 4 +-- .../branch-actions/branch-merge-button.tsx | 6 ++--- .../branch-actions/branch-rebase-button.tsx | 6 ++--- .../branch-actions/branch-validate-button.tsx | 6 ++--- .../src/screens/branches/branch-details.tsx | 18 ++++++------- .../src/screens/branches/branches-items.tsx | 8 +++--- frontend/app/src/screens/branches/diff.tsx | 4 +-- .../branches/get-current-branch.test.ts | 2 +- .../screens/branches/get-current-branch.ts | 2 +- .../app/src/screens/branches/task-display.tsx | 4 +-- .../artifact-diff/artifact-content-diff.tsx | 18 ++++++------- .../diff/artifact-diff/artifact-repo-diff.tsx | 8 +++--- .../diff/artifact-diff/artifacts-diff.tsx | 2 +- .../app/src/screens/diff/checks/checks.tsx | 2 +- .../app/src/screens/diff/checks/conflict.tsx | 4 +-- .../screens/diff/checks/validator-details.tsx | 8 +++--- frontend/app/src/screens/diff/diff-tree.tsx | 6 ++--- .../diff/file-diff/file-content-diff.tsx | 20 +++++++------- .../src/screens/diff/node-diff/conflict.tsx | 10 +++---- .../app/src/screens/diff/node-diff/index.tsx | 22 ++++++++-------- .../screens/diff/node-diff/node-property.tsx | 2 +- .../diff/node-diff/node-relationship.tsx | 2 +- .../app/src/screens/diff/node-diff/utils.tsx | 2 +- .../edit-form-hook/dynamic-control-types.ts | 2 +- .../details/graphql-query-details-card.tsx | 14 +++++----- .../details/graphql-query-viewer-card.tsx | 2 +- .../app/src/screens/groups/add-group-form.tsx | 11 +++++--- .../groups/add-group-trigger-button.tsx | 8 +++--- .../groups/groups-manager-trigger-button.tsx | 2 +- .../app/src/screens/groups/groups-manager.tsx | 8 +++--- .../src/screens/groups/object-groups-list.tsx | 12 ++++----- .../screens/ipam/common/ip-details-card.tsx | 12 ++++----- .../ipam/ip-addresses/ip-address-summary.tsx | 10 +++---- .../ip-addresses/ipam-ip-address-list.tsx | 24 ++++++++--------- .../screens/ipam/ip-namespace-selector.tsx | 6 ++--- frontend/app/src/screens/ipam/ipam-router.tsx | 10 +++---- .../screens/ipam/ipam-tree/ipam-tree.state.ts | 6 ++--- .../src/screens/ipam/ipam-tree/ipam-tree.tsx | 6 ++--- .../app/src/screens/ipam/ipam-tree/utils.ts | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 26 +++++++++---------- .../ipam-prefixes-summary-details.tsx | 12 ++++----- .../prefixes/ipam-prefixes-summary-list.tsx | 22 ++++++++-------- .../app/src/screens/layout/app-version.tsx | 4 +-- .../breadcrumb-navigation.tsx | 2 +- .../items/breadcrumb-branch-selector.tsx | 15 +++++++---- .../items/breadcrumb-object-selector.tsx | 6 ++--- .../items/breadcrumb-schema-selector.tsx | 6 ++--- frontend/app/src/screens/layout/header.tsx | 4 +-- .../components/menu-section-internal.tsx | 8 +++--- .../components/menu-section-object.tsx | 8 +++--- .../layout/menu-navigation/get-menu.ts | 2 +- .../menu-navigation/menu-navigation.tsx | 6 ++--- frontend/app/src/screens/layout/sidebar.tsx | 4 +-- .../app/src/screens/layout/tasks-status.tsx | 12 ++++----- .../action-buttons/details-buttons.tsx | 10 +++---- .../action-buttons/relationships-buttons.tsx | 10 +++---- .../object-item-details-paginated.tsx | 16 ++++++------ .../relationship-details-paginated.tsx | 6 ++--- .../relationships-details-paginated.tsx | 12 ++++----- .../generateObjectEditFormQuery.ts | 4 +-- .../object-item-edit-paginated.tsx | 16 ++++++------ .../object-item-meta-edit.tsx | 10 +++---- .../object-items/getSchemaObjectColumns.ts | 4 +-- .../object-items/object-items-cell.tsx | 6 ++--- .../object-items/object-items-paginated.tsx | 24 ++++++++--------- .../src/screens/objects/hierarchical-tree.tsx | 16 ++++++------ .../app/src/screens/objects/object-header.tsx | 8 +++--- frontend/app/src/screens/objects/objects.ts | 2 +- .../ui/add-relationship-action.tsx | 2 +- .../ui/relationship-combobox-list.tsx | 6 ++--- ...onship-hierarchical-combobox-list.test.tsx | 2 +- ...elationship-hierarchical-combobox-list.tsx | 10 +++---- .../ui/relationship-hierarchical-input.tsx | 14 +++++----- frontend/app/src/screens/permission/utils.ts | 2 +- .../action-button/pc-approve-button.tsx | 6 ++--- .../action-button/pc-close-button.tsx | 6 ++--- .../action-button/pc-merge-button.tsx | 6 ++--- .../screens/proposed-changes/checks-tab.tsx | 2 +- .../proposed-changes/conversations.tsx | 14 +++++----- .../screens/proposed-changes/create-form.tsx | 4 +-- .../screens/proposed-changes/diff-filter.tsx | 4 +-- .../screens/proposed-changes/diff-summary.tsx | 6 ++--- .../form/proposed-change-edit-form.tsx | 12 ++++----- .../screens/proposed-changes/item-info.tsx | 4 +-- .../src/screens/proposed-changes/items.tsx | 26 +++++++++---------- .../proposed-change-details.tsx | 20 +++++++------- .../proposed-change-edit-trigger.tsx | 6 ++--- .../repository/repository-action-menu.tsx | 8 +++--- .../screens/repository/repository-form.tsx | 6 ++--- .../resource-manager/number-pool-form.tsx | 24 ++++++++--------- .../resource-manager/resource-selector.tsx | 4 +-- .../screens/role-management/account-form.tsx | 12 ++++----- .../role-management/account-group-form.tsx | 22 ++++++++-------- .../role-management/account-role-form.tsx | 18 ++++++------- .../global-permissions-form.tsx | 12 ++++----- .../app/src/screens/role-management/index.tsx | 2 +- .../object-permissions-form.tsx | 12 ++++----- .../src/screens/schema/attribute-display.tsx | 2 +- .../app/src/screens/schema/get-schema.test.ts | 2 +- frontend/app/src/screens/schema/get-schema.ts | 2 +- .../screens/schema/relationship-display.tsx | 2 +- .../src/screens/schema/schema-help-menu.tsx | 8 +++--- .../src/screens/schema/schema-selector.tsx | 11 +++++--- .../app/src/screens/schema/schema-viewer.tsx | 11 +++++--- frontend/app/src/screens/schema/styled.tsx | 2 +- frontend/app/src/screens/schema/utils.test.ts | 2 +- frontend/app/src/screens/schema/utils.ts | 2 +- .../src/screens/schema/withSchemaContext.tsx | 2 +- .../src/screens/tasks/task-item-details.tsx | 8 +++--- frontend/app/src/screens/tasks/task-items.tsx | 14 +++++----- .../src/screens/user-profile/tab-profile.tsx | 2 +- .../user-profile/tab-update-password.tsx | 4 +-- .../src/screens/user-profile/user-profile.tsx | 8 +++--- .../api/graphql/graphqlClientApollo.tsx | 2 +- frontend/app/src/shared/api/rest/client.ts | 2 +- .../src/shared/components/account-menu.tsx | 22 ++++++++-------- .../src/shared/components/branch-selector.tsx | 2 +- .../components/conversations/add-comment.tsx | 2 +- .../display/meta-details-tooltips.tsx | 4 +-- .../components/display/password-display.tsx | 2 +- .../shared/components/display/slide-over.tsx | 4 +-- frontend/app/src/shared/components/file.tsx | 2 +- .../shared/components/filters/filter-form.tsx | 4 +-- .../filters/filter-kind-selector.tsx | 2 +- .../src/shared/components/filters/filters.tsx | 4 +-- .../components/filters/tasks-filter-form.tsx | 4 +-- .../filters/utils/getObjectFromFilters.ts | 4 +-- .../components/form/branch-create-form.tsx | 8 +++--- .../shared/components/form/dynamic-form.tsx | 6 ++--- .../shared/components/form/fields/common.tsx | 2 +- .../relationship-hierarchical.field.tsx | 13 ++++++---- .../form/fields/relationship-many.field.tsx | 7 +++-- .../form/fields/relationship.field.tsx | 11 +++++--- .../components/form/generic-object-form.tsx | 4 +-- .../components/form/generic-selector.tsx | 12 ++++----- .../src/shared/components/form/node-form.tsx | 22 ++++++++-------- .../form/object-create-form-trigger.tsx | 6 ++--- .../form/object-edit-slide-over-trigger.tsx | 4 +-- .../shared/components/form/object-form.tsx | 12 ++++----- .../components/form/profiles-selector.tsx | 10 +++---- .../app/src/shared/components/form/type.ts | 8 +++--- .../form/utils/getFieldDefaultValue.ts | 4 +-- .../form/utils/getFormFieldsFromSchema.ts | 8 +++--- .../form/utils/getRelationshipDefaultValue.ts | 6 ++--- .../components/form/utils/isFieldDisabled.ts | 4 +-- .../getCreateMutationFromFormData.ts | 2 +- .../src/shared/components/inputs/dropdown.tsx | 12 ++++----- .../app/src/shared/components/inputs/enum.tsx | 9 ++++--- .../components/inputs/relationship-many.tsx | 6 ++--- .../components/inputs/relationship-one.tsx | 10 +++---- .../components/menu/object-details-button.tsx | 6 ++--- .../components/menu/object-help-button.tsx | 4 +-- .../components/modals/modal-delete-object.tsx | 2 +- .../components/search/search-actions.tsx | 6 ++--- .../search/search-anywhere-empty.tsx | 2 +- .../search/search-anywhere-trigger.tsx | 2 +- .../shared/components/search/search-docs.tsx | 2 +- .../shared/components/search/search-nodes.tsx | 12 ++++----- .../app/src/shared/components/table/table.tsx | 2 +- frontend/app/src/shared/components/tabs.tsx | 2 +- frontend/app/src/shared/components/ui/id.tsx | 6 ++--- frontend/app/src/shared/hooks/useAuth.tsx | 6 ++--- .../app/src/shared/hooks/useObjectDetails.ts | 8 +++--- .../app/src/shared/hooks/useObjectItems.ts | 14 +++++++--- .../app/src/shared/hooks/usePagination.ts | 2 +- frontend/app/src/shared/hooks/useQuery.ts | 2 +- frontend/app/tests/components/render.tsx | 2 +- .../tests/integrations/screens/account.cy.tsx | 4 +-- .../integrations/screens/artifact-diff.cy.tsx | 4 +-- .../screens/object-items-deletion.cy.tsx | 4 +-- .../filters/getObjectFromFilters.test.ts | 2 +- .../form/utils/getFieldDefaultValue.test.ts | 2 +- .../utils/getFormFieldsFromSchema.test.ts | 10 +++---- .../utils/getRelationshipDefaultValue.test.ts | 9 ++++--- .../form/utils/isFieldDisabled.test.ts | 5 +++- .../components/tree/addItemsToTree.test.ts | 2 +- ...enerateRootCategoryNodeForDiffTree.test.ts | 2 +- ...getMutationMetaDetailsFromFormData.test.ts | 4 +-- .../unit/utils/getSchemaObjectColumns.test.ts | 2 +- .../utils/getStringJSONWithoutQuotes.test.ts | 2 +- 203 files changed, 749 insertions(+), 709 deletions(-) diff --git a/frontend/app/biome.json b/frontend/app/biome.json index 353395c52c..f2341d869e 100644 --- a/frontend/app/biome.json +++ b/frontend/app/biome.json @@ -14,7 +14,7 @@ "./test-results", "./tests/e2e/.auth", "./src/shared/api/rest/types.generated.ts", - "./src/shared/api/graphql/generated.ts" + "./src/shared/api/graphql/generated" ] }, "formatter": { diff --git a/frontend/app/package.json b/frontend/app/package.json index 9a1edb246c..364a36fa06 100644 --- a/frontend/app/package.json +++ b/frontend/app/package.json @@ -143,15 +143,7 @@ } }, "browserslist": { - "production": [ - ">0.2%", - "not dead", - "not op_mini all" - ], - "development": [ - "last 1 chrome version", - "last 1 firefox version", - "last 1 safari version" - ] + "production": [">0.2%", "not dead", "not op_mini all"], + "development": ["last 1 chrome version", "last 1 firefox version", "last 1 safari version"] } } diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index 8e7464f183..11781bef35 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -4,9 +4,9 @@ import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; +import ErrorFallback from "@/screens/errors/error-fallback"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { AuthProvider } from "@/shared/hooks/useAuth"; -import ErrorFallback from "@/screens/errors/error-fallback"; import { store } from "@/shared/stores"; import { ApolloProvider } from "@apollo/client"; import { addCollection } from "@iconify-icon/react"; diff --git a/frontend/app/src/app/root.tsx b/frontend/app/src/app/root.tsx index f49587c7d3..6069eeadf2 100644 --- a/frontend/app/src/app/root.tsx +++ b/frontend/app/src/app/root.tsx @@ -1,8 +1,8 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { Config, configState } from "@/config/config.atom"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchUrl } from "@/shared/api/rest/fetch"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useSetAtom } from "jotai"; import { ReactNode, useEffect, useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index 868dacc766..5630f5dc49 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,10 +1,10 @@ import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { RequireAuth } from "@/shared/hooks/useAuth"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; import { constructPath } from "@/shared/api/rest/fetch"; +import { RequireAuth } from "@/shared/hooks/useAuth"; import queryString from "query-string"; import { Navigate, Outlet, UIMatch, createBrowserRouter } from "react-router-dom"; import { QueryParamProvider } from "use-query-params"; diff --git a/frontend/app/src/pages/auth-callback.tsx b/frontend/app/src/pages/auth-callback.tsx index af1318cd5c..c60d9b8906 100644 --- a/frontend/app/src/pages/auth-callback.tsx +++ b/frontend/app/src/pages/auth-callback.tsx @@ -1,8 +1,8 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; -import { useAuth } from "@/shared/hooks/useAuth"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { configState } from "@/config/config.atom"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchUrl } from "@/shared/api/rest/fetch"; +import { useAuth } from "@/shared/hooks/useAuth"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; import { Navigate, useParams, useSearchParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/branches/details.tsx b/frontend/app/src/pages/branches/details.tsx index 0288fb05b8..841af49946 100644 --- a/frontend/app/src/pages/branches/details.tsx +++ b/frontend/app/src/pages/branches/details.tsx @@ -1,17 +1,17 @@ -import { Tabs } from "@/shared/components/tabs"; import { DIFF_TABS } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; import { NodeDiff } from "@/screens/diff/node-diff"; +import { Tabs } from "@/shared/components/tabs"; -import { Badge } from "@/shared/components/ui/badge"; -import { Spinner } from "@/shared/components/ui/spinner"; -import { useTitle } from "@/shared/hooks/useTitle"; import { BranchDetails } from "@/screens/branches/branch-details"; +import { branchesState } from "@/screens/branches/branches.atom"; import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; import Content from "@/screens/layout/content"; -import { branchesState } from "@/screens/branches/branches.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import { Badge } from "@/shared/components/ui/badge"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useTitle } from "@/shared/hooks/useTitle"; import { useAtomValue } from "jotai"; import { Navigate, useParams } from "react-router-dom"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/pages/homepage.tsx b/frontend/app/src/pages/homepage.tsx index e763e0c503..b7bfdb9e2a 100644 --- a/frontend/app/src/pages/homepage.tsx +++ b/frontend/app/src/pages/homepage.tsx @@ -1,5 +1,5 @@ -import { Card } from "@/shared/components/ui/card"; import Content from "@/screens/layout/content"; +import { Card } from "@/shared/components/ui/card"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/pages/ipam/layout.tsx b/frontend/app/src/pages/ipam/layout.tsx index fa30dc1559..6029904441 100644 --- a/frontend/app/src/pages/ipam/layout.tsx +++ b/frontend/app/src/pages/ipam/layout.tsx @@ -1,5 +1,5 @@ -import { ScrollArea } from "@/shared/components/ui/scroll-area"; import Content from "@/screens/layout/content"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { Outlet } from "react-router-dom"; import IpNamespaceSelector from "../../screens/ipam/ip-namespace-selector"; import IpamTree from "../../screens/ipam/ipam-tree/ipam-tree"; diff --git a/frontend/app/src/pages/login.tsx b/frontend/app/src/pages/login.tsx index 738a65220f..4d09a054ba 100644 --- a/frontend/app/src/pages/login.tsx +++ b/frontend/app/src/pages/login.tsx @@ -1,6 +1,6 @@ -import { useAuth } from "@/shared/hooks/useAuth"; import InfrahubLogo from "@/assets/Infrahub-SVG-hori.svg?react"; import { Login } from "@/screens/authentification/login"; +import { useAuth } from "@/shared/hooks/useAuth"; import { Navigate, useLocation } from "react-router-dom"; function LoginPage() { diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index 174fa60808..0c58332ff4 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -1,17 +1,17 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; -import useQuery from "@/shared/hooks/useQuery"; -import { useTitle } from "@/shared/hooks/useTitle"; import NoDataFound from "@/screens/errors/no-data-found"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import GraphqlQueryDetailsCard from "@/screens/graphql/details/graphql-query-details-card"; import GraphQLQueryDetailsPageSkeleton from "@/screens/graphql/details/graphql-query-details-page-skeleton"; import GraphqlQueryViewerCard from "@/screens/graphql/details/graphql-query-viewer-card"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { Permission } from "@/screens/permission/types"; import { getPermission } from "@/screens/permission/utils"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/pages/objects/layout.tsx b/frontend/app/src/pages/objects/layout.tsx index b4ba4ec238..9590651d05 100644 --- a/frontend/app/src/pages/objects/layout.tsx +++ b/frontend/app/src/pages/objects/layout.tsx @@ -1,11 +1,15 @@ -import { ResizableHandle, ResizablePanel, ResizablePanelGroup } from "@/shared/components/ui/resizable"; -import { ScrollArea } from "@/shared/components/ui/scroll-area"; import NoDataFound from "@/screens/errors/no-data-found"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { HierarchicalTree } from "@/screens/objects/hierarchical-tree"; import ObjectHeader from "@/screens/objects/object-header"; import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { + ResizableHandle, + ResizablePanel, + ResizablePanelGroup, +} from "@/shared/components/ui/resizable"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { stateAtom } from "@/shared/stores/state.atom"; import { useAtomValue } from "jotai"; import { Outlet, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/object-details.tsx b/frontend/app/src/pages/objects/object-details.tsx index bafbcd2fe4..8e37a7de90 100644 --- a/frontend/app/src/pages/objects/object-details.tsx +++ b/frontend/app/src/pages/objects/object-details.tsx @@ -1,5 +1,4 @@ import { ARTIFACT_OBJECT, GRAPHQL_QUERY_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ArtifactsDetails from "@/screens/artifacts/object-item-details-paginated"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; @@ -9,6 +8,7 @@ import ObjectItemDetails from "@/screens/object-item-details/object-item-details import ObjectItems from "@/screens/object-items/object-items-paginated"; import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Navigate, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/profile.tsx b/frontend/app/src/pages/profile.tsx index a649c6539d..d2efa2d17c 100644 --- a/frontend/app/src/pages/profile.tsx +++ b/frontend/app/src/pages/profile.tsx @@ -1,6 +1,6 @@ -import { useAuth } from "@/shared/hooks/useAuth"; import { UserProfilePage } from "@/screens/user-profile/user-profile"; import { constructPath } from "@/shared/api/rest/fetch"; +import { useAuth } from "@/shared/hooks/useAuth"; import { Navigate } from "react-router-dom"; export function Component() { diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index 9872ca58ee..ae9883a1b6 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -1,29 +1,29 @@ -import { Tabs } from "@/shared/components/tabs"; import { DIFF_TABS, PROPOSED_CHANGES_OBJECT, TASK_OBJECT, TASK_TAB } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import useQuery from "@/shared/hooks/useQuery"; -import { useTitle } from "@/shared/hooks/useTitle"; import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; import { Checks } from "@/screens/diff/checks/checks"; import { NodeDiff } from "@/screens/diff/node-diff"; import { GET_PROPOSED_CHANGE_DETAILS } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails"; +import { Tabs } from "@/shared/components/tabs"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; -import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; -import { Badge } from "@/shared/components/ui/badge"; -import { useSchema } from "@/shared/hooks/useSchema"; import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { ProposedChangesChecksTab } from "@/screens/proposed-changes/checks-tab"; import { ProposedChangeDetails } from "@/screens/proposed-changes/proposed-change-details"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { TaskItemDetails } from "@/screens/tasks/task-item-details"; import { TaskItems } from "@/screens/tasks/task-items"; import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { constructPath } from "@/shared/api/rest/fetch"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Badge } from "@/shared/components/ui/badge"; +import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { Link, useLocation, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/proposed-changes/new.tsx b/frontend/app/src/pages/proposed-changes/new.tsx index b23d1bd6c6..3cd7d7cb78 100644 --- a/frontend/app/src/pages/proposed-changes/new.tsx +++ b/frontend/app/src/pages/proposed-changes/new.tsx @@ -1,6 +1,4 @@ -import { Card } from "@/shared/components/ui/card"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import Content from "@/screens/layout/content"; @@ -8,6 +6,8 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; import { getPermission } from "@/screens/permission/utils"; import { ProposedChangeCreateForm } from "@/screens/proposed-changes/create-form"; +import { Card } from "@/shared/components/ui/card"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; function ProposedChangeCreatePage() { diff --git a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx index d6735a99ff..38f635838f 100644 --- a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx @@ -1,15 +1,15 @@ +import { QSP } from "@/config/qsp"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { RESOURCE_POOL_ALLOCATED_KIND } from "@/screens/resource-manager/constants"; +import { GET_RESOURCE_POOL_ALLOCATED } from "@/screens/resource-manager/graphql/resource-pool"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Skeleton } from "@/shared/components/skeleton"; import { Table } from "@/shared/components/table/table"; import { Badge } from "@/shared/components/ui/badge"; import { Card } from "@/shared/components/ui/card"; import { Pagination } from "@/shared/components/ui/pagination"; -import { QSP } from "@/config/qsp"; import useQuery from "@/shared/hooks/useQuery"; -import { RESOURCE_POOL_ALLOCATED_KIND } from "@/screens/resource-manager/constants"; -import { GET_RESOURCE_POOL_ALLOCATED } from "@/screens/resource-manager/graphql/resource-pool"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx index d55121afcc..e1deb639fd 100644 --- a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx @@ -1,15 +1,10 @@ -import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; -import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; -import { Property, PropertyList } from "@/shared/components/table/property-list"; -import { Badge } from "@/shared/components/ui/badge"; -import { Card, CardWithBorder } from "@/shared/components/ui/card"; -import { Link } from "@/shared/components/ui/link"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import ResourcePoolUtilization from "@/screens/resource-manager/common/ResourcePoolUtilization"; import { RESOURCE_GENERIC_KIND, @@ -22,8 +17,13 @@ import { import ResourceSelector, { ResourceProps } from "@/screens/resource-manager/resource-selector"; import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; -import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import { Property, PropertyList } from "@/shared/components/table/property-list"; +import { Badge } from "@/shared/components/ui/badge"; +import { Card, CardWithBorder } from "@/shared/components/ui/card"; +import { Link } from "@/shared/components/ui/link"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Outlet, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index e67b2b02b8..e9fd275573 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -1,11 +1,11 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; import { RoleManagementNavigation } from "@/screens/role-management"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Outlet } from "react-router-dom"; diff --git a/frontend/app/src/pages/schema.tsx b/frontend/app/src/pages/schema.tsx index f06b5dac57..391f96441d 100644 --- a/frontend/app/src/pages/schema.tsx +++ b/frontend/app/src/pages/schema.tsx @@ -1,9 +1,9 @@ -import { ScrollArea } from "@/shared/components/ui/scroll-area"; -import { useTitle } from "@/shared/hooks/useTitle"; import Content from "@/screens/layout/content"; import { SchemaSelector } from "@/screens/schema/schema-selector"; import { SchemaViewerStack } from "@/screens/schema/schema-viewer"; import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; +import { useTitle } from "@/shared/hooks/useTitle"; import { useAtomValue } from "jotai"; function SchemaPage() { diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index 368df000b3..7ed83ca437 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,13 +1,13 @@ -import { Link } from "@/shared/components/ui/link"; import { TASK_OBJECT } from "@/config/constants"; -import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; -import useQuery from "@/shared/hooks/useQuery"; -import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { TaskItemDetails } from "@/screens/tasks/task-item-details"; +import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; import { constructPath } from "@/shared/api/rest/fetch"; +import { Link } from "@/shared/components/ui/link"; +import useQuery from "@/shared/hooks/useQuery"; +import { useTitle } from "@/shared/hooks/useTitle"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/artifacts/generate.tsx b/frontend/app/src/screens/artifacts/generate.tsx index d14fd11848..ba4dca47a8 100644 --- a/frontend/app/src/screens/artifacts/generate.tsx +++ b/frontend/app/src/screens/artifacts/generate.tsx @@ -1,10 +1,10 @@ -import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; +import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import { classNames } from "@/shared/utils/common"; -import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { ArrowPathIcon } from "@heroicons/react/24/outline"; import { useState } from "react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx index a188c66fa2..8b24c8642b 100644 --- a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx @@ -9,6 +9,13 @@ import LoadingScreen from "@/screens/loading-screen/loading-screen"; import RelationshipDetails from "@/screens/object-item-details/relationship-details-paginated"; import { RelationshipsDetails } from "@/screens/object-item-details/relationships-details-paginated"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { + getObjectAttributes, + getObjectRelationships, + getSchemaObjectColumns, + getTabs, +} from "@/screens/object-items/getSchemaObjectColumns"; +import { getObjectItemDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { getPermission } from "@/screens/permission/utils"; @@ -23,13 +30,6 @@ import { Tabs } from "@/shared/components/tabs"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { classNames } from "@/shared/utils/common"; -import { getObjectItemDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { - getObjectAttributes, - getObjectRelationships, - getSchemaObjectColumns, - getTabs, -} from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { LockClosedIcon, RectangleGroupIcon } from "@heroicons/react/24/outline"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/authentification/login.tsx b/frontend/app/src/screens/authentification/login.tsx index 041d805783..205442eddb 100644 --- a/frontend/app/src/screens/authentification/login.tsx +++ b/frontend/app/src/screens/authentification/login.tsx @@ -1,11 +1,11 @@ +import { configState } from "@/config/config.atom"; +import { LoginWithSSOButtons } from "@/screens/authentification/login-sso-buttons"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormSubmit } from "@/shared/components/ui/form"; import { useAuth } from "@/shared/hooks/useAuth"; -import { LoginWithSSOButtons } from "@/screens/authentification/login-sso-buttons"; -import { configState } from "@/config/config.atom"; import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx index d98f343157..4176ae377e 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx @@ -1,11 +1,11 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_MERGE_WORKFLOW } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_MERGE } from "@/shared/api/graphql/mutations/branches/mergeBranch"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx index f39c238b3f..a9f645f896 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx @@ -1,11 +1,11 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx index 606721d3d0..9740e25849 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx @@ -1,11 +1,11 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/shared/hooks/useAuth"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_VALIDATE } from "@/shared/api/graphql/mutations/branches/validateBranch"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/branches/branch-details.tsx b/frontend/app/src/screens/branches/branch-details.tsx index e863c582f9..32d656453b 100644 --- a/frontend/app/src/screens/branches/branch-details.tsx +++ b/frontend/app/src/screens/branches/branch-details.tsx @@ -1,3 +1,12 @@ +import { QSP } from "@/config/qsp"; +import { branchesState } from "@/screens/branches/branches.atom"; +import ErrorScreen from "@/screens/errors/error-screen"; +import NoDataFound from "@/screens/errors/no-data-found"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; +import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; +import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; @@ -5,19 +14,10 @@ import { DateDisplay } from "@/shared/components/display/date-display"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { List } from "@/shared/components/table/list"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { QSP } from "@/config/qsp"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; -import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { branchesState } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; -import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; import { PlusIcon, TrashIcon } from "@heroicons/react/24/outline"; import { useAtom } from "jotai"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/branches/branches-items.tsx b/frontend/app/src/screens/branches/branches-items.tsx index ef3328d66f..725b9072c0 100644 --- a/frontend/app/src/screens/branches/branches-items.tsx +++ b/frontend/app/src/screens/branches/branches-items.tsx @@ -1,11 +1,11 @@ +import { branchesState } from "@/screens/branches/branches.atom"; +import Content from "@/screens/layout/content"; +import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; +import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import { useLazyQuery } from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; -import Content from "@/screens/layout/content"; -import { branchesState } from "@/screens/branches/branches.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import * as R from "ramda"; diff --git a/frontend/app/src/screens/branches/diff.tsx b/frontend/app/src/screens/branches/diff.tsx index 7b4e2f9ccd..e0dffa6abf 100644 --- a/frontend/app/src/screens/branches/diff.tsx +++ b/frontend/app/src/screens/branches/diff.tsx @@ -1,8 +1,8 @@ +import { DIFF_TABS } from "@/config/constants"; +import { QSP } from "@/config/qsp"; import DatetimeField from "@/shared/components/form/fields/datetime.field"; import { Tabs } from "@/shared/components/tabs"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { DIFF_TABS } from "@/config/constants"; -import { QSP } from "@/config/qsp"; import { DateTimeParam, StringParam, useQueryParam } from "use-query-params"; import { ArtifactsDiff } from "../diff/artifact-diff/artifacts-diff"; import { FilesDiff } from "../diff/file-diff/files-diff"; diff --git a/frontend/app/src/screens/branches/get-current-branch.test.ts b/frontend/app/src/screens/branches/get-current-branch.test.ts index a65adcd1d8..de29453f64 100644 --- a/frontend/app/src/screens/branches/get-current-branch.test.ts +++ b/frontend/app/src/screens/branches/get-current-branch.test.ts @@ -1,6 +1,6 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; import { store } from "@/shared/stores"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateBranch } from "../../../tests/fake/branch"; diff --git a/frontend/app/src/screens/branches/get-current-branch.ts b/frontend/app/src/screens/branches/get-current-branch.ts index d4f3b0944c..7f0ca4b516 100644 --- a/frontend/app/src/screens/branches/get-current-branch.ts +++ b/frontend/app/src/screens/branches/get-current-branch.ts @@ -1,6 +1,6 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { store } from "@/shared/stores"; import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { store } from "@/shared/stores"; export const getCurrentBranchName = () => { const currentBranch = store.get(currentBranchAtom); diff --git a/frontend/app/src/screens/branches/task-display.tsx b/frontend/app/src/screens/branches/task-display.tsx index f552c0e640..f248a435d5 100644 --- a/frontend/app/src/screens/branches/task-display.tsx +++ b/frontend/app/src/screens/branches/task-display.tsx @@ -1,8 +1,8 @@ +import { TASK_OBJECT } from "@/config/constants"; +import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; import { Badge } from "@/shared/components/ui/badge"; -import { TASK_OBJECT } from "@/config/constants"; -import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import ErrorScreen from "../errors/error-screen"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx index 6a5eec1527..af65224aa5 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx @@ -1,25 +1,25 @@ -import { Button } from "@/shared/components/buttons/button"; -import { AddComment } from "@/shared/components/conversations/add-comment"; -import { Thread } from "@/shared/components/conversations/thread"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { PROPOSED_CHANGES_ARTIFACT_THREAD_OBJECT, PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import ErrorScreen from "@/screens/errors/error-screen"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { schemaState } from "@/screens/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesArtifactsThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads"; +import { fetchStream } from "@/shared/api/rest/fetch"; +import { Button } from "@/shared/components/buttons/button"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { schemaState } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { fetchStream } from "@/shared/api/rest/fetch"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { PencilIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx index 5029dc53bf..cee0024f97 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,11 +1,11 @@ -import Accordion from "@/shared/components/display/accordion"; -import { Badge } from "@/shared/components/display/badge"; -import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { schemaState } from "@/screens/schema/schema.atom"; +import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; +import Accordion from "@/shared/components/display/accordion"; +import { Badge } from "@/shared/components/display/badge"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx b/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx index fd2e9465fb..978e7cd110 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx +++ b/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx @@ -1,10 +1,10 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAtom } from "jotai"; import { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from "react"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/checks/checks.tsx b/frontend/app/src/screens/diff/checks/checks.tsx index 40db147355..c2031020a6 100644 --- a/frontend/app/src/screens/diff/checks/checks.tsx +++ b/frontend/app/src/screens/diff/checks/checks.tsx @@ -1,6 +1,6 @@ +import ErrorScreen from "@/screens/errors/error-screen"; import { GET_VALIDATORS } from "@/shared/api/graphql/queries/diff/getValidators"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "@/screens/errors/error-screen"; import { forwardRef, useImperativeHandle } from "react"; import { useParams } from "react-router-dom"; import { ChecksSummary } from "./checks-summary"; diff --git a/frontend/app/src/screens/diff/checks/conflict.tsx b/frontend/app/src/screens/diff/checks/conflict.tsx index f0e23f2e1e..07192e6aaf 100644 --- a/frontend/app/src/screens/diff/checks/conflict.tsx +++ b/frontend/app/src/screens/diff/checks/conflict.tsx @@ -2,8 +2,10 @@ import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { diffContent, getBadgeType } from "@/screens/diff/diff"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ToggleButtons } from "@/shared/components/buttons/toggle-buttons"; import { Badge } from "@/shared/components/display/badge"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; @@ -12,8 +14,6 @@ import { Link } from "@/shared/components/ui/link"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { ArrowTopRightOnSquareIcon, ChevronRightIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/src/screens/diff/checks/validator-details.tsx b/frontend/app/src/screens/diff/checks/validator-details.tsx index f1a8ad2e88..b46451ffb3 100644 --- a/frontend/app/src/screens/diff/checks/validator-details.tsx +++ b/frontend/app/src/screens/diff/checks/validator-details.tsx @@ -1,10 +1,10 @@ -import { Pagination } from "@/shared/components/ui/pagination"; -import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; -import usePagination from "@/shared/hooks/usePagination"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; +import { Pagination } from "@/shared/components/ui/pagination"; +import usePagination from "@/shared/hooks/usePagination"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Check } from "./check"; diff --git a/frontend/app/src/screens/diff/diff-tree.tsx b/frontend/app/src/screens/diff/diff-tree.tsx index 106a955891..8977a315f6 100644 --- a/frontend/app/src/screens/diff/diff-tree.tsx +++ b/frontend/app/src/screens/diff/diff-tree.tsx @@ -1,10 +1,10 @@ -import { Tooltip } from "@/shared/components/ui/tooltip"; -import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; -import { useSchema } from "@/shared/hooks/useSchema"; import { DiffNode } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import { TREE_ROOT_ID } from "@/screens/ipam/constants"; import { EMPTY_TREE, addItemsToTree } from "@/screens/ipam/ipam-tree/utils"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; +import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { useEffect, useState } from "react"; import { useLocation, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx index 968a7e03df..fbd395102b 100644 --- a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx @@ -1,26 +1,26 @@ -import { Button } from "@/shared/components/buttons/button"; -import { AddComment } from "@/shared/components/conversations/add-comment"; -import { Thread } from "@/shared/components/conversations/thread"; -import Accordion from "@/shared/components/display/accordion"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import ErrorScreen from "@/screens/errors/error-screen"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { schemaState } from "@/screens/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesFilesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads"; +import { fetchStream } from "@/shared/api/rest/fetch"; +import { Button } from "@/shared/components/buttons/button"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import Accordion from "@/shared/components/display/accordion"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { schemaState } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { fetchStream } from "@/shared/api/rest/fetch"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { PencilIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/src/screens/diff/node-diff/conflict.tsx b/frontend/app/src/screens/diff/node-diff/conflict.tsx index ad4c7a4de6..a7dda3b149 100644 --- a/frontend/app/src/screens/diff/node-diff/conflict.tsx +++ b/frontend/app/src/screens/diff/node-diff/conflict.tsx @@ -1,12 +1,12 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; import { Checkbox } from "@/shared/components/inputs/checkbox"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Badge } from "@/shared/components/ui/badge"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; import { useAuth } from "@/shared/hooks/useAuth"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/diff/node-diff/index.tsx b/frontend/app/src/screens/diff/node-diff/index.tsx index f7f3defa86..303932184b 100644 --- a/frontend/app/src/screens/diff/node-diff/index.tsx +++ b/frontend/app/src/screens/diff/node-diff/index.tsx @@ -1,16 +1,5 @@ -import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; -import { DateDisplay } from "@/shared/components/display/date-display"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Badge } from "@/shared/components/ui/badge"; -import { Tooltip } from "@/shared/components/ui/tooltip"; import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; -import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; -import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import DiffTree from "@/screens/diff/diff-tree"; import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; @@ -18,6 +7,17 @@ import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { schemaState } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; +import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; +import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Badge } from "@/shared/components/ui/badge"; +import { Tooltip } from "@/shared/components/ui/tooltip"; +import { useAuth } from "@/shared/hooks/useAuth"; +import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { formatFullDate, formatRelativeTimeFromNow } from "@/shared/utils/date"; diff --git a/frontend/app/src/screens/diff/node-diff/node-property.tsx b/frontend/app/src/screens/diff/node-diff/node-property.tsx index 6797c8fd83..6a8d9bcef4 100644 --- a/frontend/app/src/screens/diff/node-diff/node-property.tsx +++ b/frontend/app/src/screens/diff/node-diff/node-property.tsx @@ -1,7 +1,7 @@ -import { Badge } from "@/shared/components/ui/badge"; import { BadgeConflict } from "@/screens/diff/diff-badge"; import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; import { DiffRow, formatPropertyName, formatValue } from "@/screens/diff/node-diff/utils"; +import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx b/frontend/app/src/screens/diff/node-diff/node-relationship.tsx index ec31e71006..d1813fe739 100644 --- a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx +++ b/frontend/app/src/screens/diff/node-diff/node-relationship.tsx @@ -1,7 +1,7 @@ -import { Badge } from "@/shared/components/ui/badge"; import { DiffThread } from "@/screens/diff/node-diff/thread"; import { DiffRelationship, DiffStatus } from "@/screens/diff/node-diff/types"; import { DiffRow } from "@/screens/diff/node-diff/utils"; +import { Badge } from "@/shared/components/ui/badge"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; import { DiffNodeRelationshipElement } from "./node-relationship-element"; diff --git a/frontend/app/src/screens/diff/node-diff/utils.tsx b/frontend/app/src/screens/diff/node-diff/utils.tsx index 8d5348a244..5ccdfa54c6 100644 --- a/frontend/app/src/screens/diff/node-diff/utils.tsx +++ b/frontend/app/src/screens/diff/node-diff/utils.tsx @@ -1,5 +1,5 @@ -import Accordion from "@/shared/components/display/accordion"; import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; +import Accordion from "@/shared/components/display/accordion"; import { classNames, warnUnexpectedType } from "@/shared/utils/common"; import { capitalizeFirstLetter } from "@/shared/utils/string"; import { ReactNode } from "react"; diff --git a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts index 4d95d1809f..617d868a66 100644 --- a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts +++ b/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts @@ -1,6 +1,6 @@ -import { SelectOption } from "@/shared/components/inputs/select"; import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { components } from "@/shared/api/rest/types.generated"; +import { SelectOption } from "@/shared/components/inputs/select"; import { RegisterOptions } from "react-hook-form"; import { FormFieldError } from "./form"; diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx index 91cfcd52e9..43bcf29eb5 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx @@ -1,3 +1,10 @@ +import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; +import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { Permission } from "@/screens/permission/types"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; +import { constructPath } from "@/shared/api/rest/fetch"; import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; import PropertiesPopover from "@/shared/components/display/properties-popover"; import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; @@ -6,13 +13,6 @@ import { Badge } from "@/shared/components/ui/badge"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; import { Link } from "@/shared/components/ui/link"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; -import { Permission } from "@/screens/permission/types"; -import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; type GraphqlQueryDetailsCardProps = { diff --git a/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx b/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx index 285c3144bd..a91983db7d 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx +++ b/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx @@ -1,8 +1,8 @@ +import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; import { GraphqlViewer } from "@/shared/components/editor/graphql/graphql-viewer"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/groups/add-group-form.tsx b/frontend/app/src/screens/groups/add-group-form.tsx index d93fc7dea1..40e54c7797 100644 --- a/frontend/app/src/screens/groups/add-group-form.tsx +++ b/frontend/app/src/screens/groups/add-group-form.tsx @@ -1,10 +1,13 @@ +import NoDataFound from "@/screens/errors/no-data-found"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; -import { FormRelationshipValue, RelationshipManyValueFromUser } from "@/shared/components/form/type"; +import { + FormRelationshipValue, + RelationshipManyValueFromUser, +} from "@/shared/components/form/type"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; import { useMutation } from "@/shared/hooks/useQuery"; -import NoDataFound from "@/screens/errors/no-data-found"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; import { pluralize } from "@/shared/utils/string"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/screens/groups/add-group-trigger-button.tsx b/frontend/app/src/screens/groups/add-group-trigger-button.tsx index 538721cf8b..588e87c4e8 100644 --- a/frontend/app/src/screens/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/screens/groups/add-group-trigger-button.tsx @@ -1,10 +1,10 @@ -import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import AddGroupForm from "@/screens/groups/add-group-form"; import { GroupDataFromAPI } from "@/screens/groups/types"; import { iNodeSchema } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Permission } from "../permission/types"; diff --git a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx b/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx index b3b58eae18..07a60ec82b 100644 --- a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx +++ b/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx @@ -1,7 +1,7 @@ +import { GroupsManager, GroupsManagerProps } from "@/screens/groups/groups-manager"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; -import { GroupsManager, GroupsManagerProps } from "@/screens/groups/groups-manager"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/groups/groups-manager.tsx b/frontend/app/src/screens/groups/groups-manager.tsx index 6dbcecd42f..8839e3349e 100644 --- a/frontend/app/src/screens/groups/groups-manager.tsx +++ b/frontend/app/src/screens/groups/groups-manager.tsx @@ -1,7 +1,3 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { SearchInput } from "@/shared/components/ui/search-input"; -import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import AddGroupTriggerButton from "@/screens/groups/add-group-trigger-button"; @@ -10,6 +6,10 @@ import { GroupDataFromAPI } from "@/screens/groups/types"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getPermission } from "@/screens/permission/utils"; import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { SearchInput } from "@/shared/components/ui/search-input"; +import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/groups/object-groups-list.tsx b/frontend/app/src/screens/groups/object-groups-list.tsx index 835e18d2c1..de1629a931 100644 --- a/frontend/app/src/screens/groups/object-groups-list.tsx +++ b/frontend/app/src/screens/groups/object-groups-list.tsx @@ -1,15 +1,15 @@ +import { QSP } from "@/config/qsp"; +import { GroupDataFromAPI } from "@/screens/groups/types"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { schemaState } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { Button } from "@/shared/components/buttons/button-primitive"; import ItemGroup from "@/shared/components/layouts/item-group"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { Badge } from "@/shared/components/ui/badge"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { QSP } from "@/config/qsp"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { useMutation } from "@/shared/hooks/useQuery"; -import { GroupDataFromAPI } from "@/screens/groups/types"; -import { schemaState } from "@/screens/schema/schema.atom"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { pluralize } from "@/shared/utils/string"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/ipam/common/ip-details-card.tsx b/frontend/app/src/screens/ipam/common/ip-details-card.tsx index a446310c09..66036fe763 100644 --- a/frontend/app/src/screens/ipam/common/ip-details-card.tsx +++ b/frontend/app/src/screens/ipam/common/ip-details-card.tsx @@ -1,15 +1,15 @@ +import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; +import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { Permission } from "@/screens/permission/types"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; import { Property, PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; import { CardWithBorder } from "@/shared/components/ui/card"; import { Link } from "@/shared/components/ui/link"; -import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; -import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; type tIpDetailsCard = { schema: IModelSchema; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx index 38a48f171c..b21e0ce3b1 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx @@ -1,7 +1,3 @@ -import { Link } from "@/shared/components/ui/link"; -import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; @@ -9,9 +5,13 @@ import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/screens/ipam/constants"; import { IpamSummarySkeleton } from "@/screens/ipam/prefixes/ipam-summary-skeleton"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { getPermission } from "@/screens/permission/utils"; import { genericsState, schemaState } from "@/screens/schema/schema.atom"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import { Link } from "@/shared/components/ui/link"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx index 9f11c008da..d192cf0969 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -1,15 +1,5 @@ -import SlideOver from "@/shared/components/display/slide-over"; -import ModalDelete from "@/shared/components/modals/modal-delete"; -import { Table } from "@/shared/components/table/table"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Link } from "@/shared/components/ui/link"; -import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; -import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/shared/hooks/useQuery"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -23,7 +13,17 @@ import { import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; +import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; +import { Pagination } from "@/shared/components/ui/pagination"; +import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx index 1dbd1f57c4..839f8a02b0 100644 --- a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/screens/ipam/ip-namespace-selector.tsx @@ -1,3 +1,6 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; +import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; import { Skeleton } from "@/shared/components/skeleton"; import { Combobox, @@ -7,9 +10,6 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import useQuery from "@/shared/hooks/useQuery"; -import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; -import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useId } from "react"; diff --git a/frontend/app/src/screens/ipam/ipam-router.tsx b/frontend/app/src/screens/ipam/ipam-router.tsx index 02fe1f52a1..9aefd0258b 100644 --- a/frontend/app/src/screens/ipam/ipam-router.tsx +++ b/frontend/app/src/screens/ipam/ipam-router.tsx @@ -1,13 +1,13 @@ +import { DEFAULT_BRANCH_NAME } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { getPermission } from "@/screens/permission/utils"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-with-tooltip"; import SlideOver from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; import { Tabs } from "@/shared/components/tabs"; -import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; -import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts index 8b7d707418..d2fb7d1974 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts @@ -1,12 +1,12 @@ -import { TreeProps } from "@/shared/components/ui/tree"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_PREFIXES_ONLY, GET_PREFIX_ANCESTORS, GET_TOP_LEVEL_PREFIXES, } from "@/shared/api/graphql/queries/ipam/prefixes"; -import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { TreeProps } from "@/shared/components/ui/tree"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { atom } from "jotai"; import * as R from "ramda"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx index f1aee774da..8d5ac22551 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx @@ -6,13 +6,13 @@ import { useEffect, useState } from "react"; import { ITreeViewOnLoadDataProps, NodeId } from "react-accessible-treeview"; import { Link, useNavigate, useParams } from "react-router-dom"; -import { Badge } from "@/shared/components/ui/badge"; -import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; -import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/screens/ipam/constants"; import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; +import { Badge } from "@/shared/components/ui/badge"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { debounce } from "@/shared/utils/common"; import { StringParam, useQueryParam } from "use-query-params"; import { ipamTreeAtom, reloadIpamTreeAtom } from "./ipam-tree.state"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/utils.ts b/frontend/app/src/screens/ipam/ipam-tree/utils.ts index 93289cedda..82d418b37d 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/utils.ts +++ b/frontend/app/src/screens/ipam/ipam-tree/utils.ts @@ -1,5 +1,5 @@ -import { TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; +import { TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; export type PrefixNode = { id: string; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx index a62c2068c1..41e64e9ede 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx @@ -1,16 +1,5 @@ -import { ColorDisplay } from "@/shared/components/display/color-display"; -import SlideOver from "@/shared/components/display/slide-over"; -import ModalDelete from "@/shared/components/modals/modal-delete"; -import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; -import { Table } from "@/shared/components/table/table"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Link } from "@/shared/components/ui/link"; -import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/shared/hooks/useQuery"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -19,7 +8,18 @@ import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; +import { ColorDisplay } from "@/shared/components/display/color-display"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; +import { Pagination } from "@/shared/components/ui/pagination"; +import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx index 89e0b1baad..c1146065c6 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -1,15 +1,15 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Link } from "@/shared/components/ui/link"; -import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/shared/hooks/useQuery"; import NoDataFound from "@/screens/errors/no-data-found"; import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { getPermission } from "@/screens/permission/utils"; import { genericsState, schemaState } from "@/screens/schema/schema.atom"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Link } from "@/shared/components/ui/link"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx index 741e85f40d..34c826b2ef 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -1,14 +1,5 @@ -import SlideOver from "@/shared/components/display/slide-over"; -import ModalDelete from "@/shared/components/modals/modal-delete"; -import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; -import { Table } from "@/shared/components/table/table"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Pagination } from "@/shared/components/ui/pagination"; import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; -import useQuery from "@/shared/hooks/useQuery"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import ErrorScreen from "@/screens/errors/error-screen"; import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; import { constructPathForIpam } from "@/screens/ipam/common/utils"; @@ -17,7 +8,16 @@ import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/screens/permission/utils"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; +import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; +import SlideOver from "@/shared/components/display/slide-over"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; +import { Table } from "@/shared/components/table/table"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Pagination } from "@/shared/components/ui/pagination"; +import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/layout/app-version.tsx b/frontend/app/src/screens/layout/app-version.tsx index 88dd49d282..5bbfa904c2 100644 --- a/frontend/app/src/screens/layout/app-version.tsx +++ b/frontend/app/src/screens/layout/app-version.tsx @@ -1,7 +1,7 @@ -import { Skeleton } from "@/shared/components/skeleton"; import { CONFIG } from "@/config/config"; -import { components } from "@/shared/api/rest/types.generated"; import { fetchUrl } from "@/shared/api/rest/fetch"; +import { components } from "@/shared/api/rest/types.generated"; +import { Skeleton } from "@/shared/components/skeleton"; import { useEffect, useState } from "react"; export const AppVersion = () => { diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx index 63263c7aa8..b9cc10a6ed 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx @@ -1,9 +1,9 @@ -import { Breadcrumb, BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { BreadcrumbDynamicElement, BreadcrumbDynamicElementProps, } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element"; import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; +import { Breadcrumb, BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { classNames } from "@/shared/utils/common"; import React from "react"; import { UIMatch, useMatches } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx index 48a943434d..a8b618b15a 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx @@ -1,10 +1,15 @@ -import { Combobox, ComboboxContent, ComboboxList, ComboboxTrigger } from "@/shared/components/ui/combobox"; -import { CommandEmpty, CommandItem } from "@/shared/components/ui/command"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; import { branchesState } from "@/screens/branches/branches.atom"; -import { classNames } from "@/shared/utils/common"; +import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; +import { + Combobox, + ComboboxContent, + ComboboxList, + ComboboxTrigger, +} from "@/shared/components/ui/combobox"; +import { CommandEmpty, CommandItem } from "@/shared/components/ui/command"; +import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; import { Link, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx index c7c777d3fc..81dc0b8d4e 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx @@ -1,9 +1,9 @@ -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; -import { useSchema } from "@/shared/hooks/useSchema"; import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; +import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; export default function BreadcrumbObjectSelector({ diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx index 3d10d750b4..6f79bf8fa3 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx +++ b/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx @@ -1,11 +1,11 @@ -import { BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { PROFILE_KIND } from "@/config/constants"; -import { useSchema } from "@/shared/hooks/useSchema"; import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { classNames } from "@/shared/utils/common"; import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { classNames } from "@/shared/utils/common"; interface BreadcrumbSchemaSelectorProps { kind: string; diff --git a/frontend/app/src/screens/layout/header.tsx b/frontend/app/src/screens/layout/header.tsx index 3f94ba48a0..f01cf9cf71 100644 --- a/frontend/app/src/screens/layout/header.tsx +++ b/frontend/app/src/screens/layout/header.tsx @@ -1,8 +1,8 @@ -import BranchSelector from "@/shared/components/branch-selector"; -import { TimeFrameSelector } from "@/shared/components/time-selector"; import InfrahubLogo from "@/assets/infrahub-logo.svg"; import BreadcrumbNavigation from "@/screens/layout/breadcrumb-navigation/breadcrumb-navigation"; import { constructPath } from "@/shared/api/rest/fetch"; +import BranchSelector from "@/shared/components/branch-selector"; +import { TimeFrameSelector } from "@/shared/components/time-selector"; import { Link } from "react-router-dom"; import { TaskStatus } from "./tasks-status"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx index 43367b3320..86e03bcabf 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx @@ -1,3 +1,7 @@ +import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; +import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; +import type { MenuItem } from "@/screens/layout/menu-navigation/types"; +import { constructPath } from "@/shared/api/rest/fetch"; import { DropdownMenu, DropdownMenuContent, @@ -7,11 +11,7 @@ import { DropdownMenuSubTrigger, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; -import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; -import type { MenuItem } from "@/screens/layout/menu-navigation/types"; import { classNames } from "@/shared/utils/common"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx index a250a8343b..947e9e3846 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx @@ -1,3 +1,7 @@ +import { ObjectAvatar } from "@/screens/layout/menu-navigation/components/object-avatar"; +import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; +import { MenuItem } from "@/screens/layout/menu-navigation/types"; +import { constructPath } from "@/shared/api/rest/fetch"; import { DropdownMenu, DropdownMenuAccordion, @@ -8,11 +12,7 @@ import { DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { ObjectAvatar } from "@/screens/layout/menu-navigation/components/object-avatar"; -import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; -import { MenuItem } from "@/screens/layout/menu-navigation/types"; import { classNames } from "@/shared/utils/common"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts index f48035f3cc..91a1f8531b 100644 --- a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts +++ b/frontend/app/src/screens/layout/menu-navigation/get-menu.ts @@ -1,8 +1,8 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { MenuData } from "@/screens/layout/menu-navigation/types"; import { apiClient } from "@/shared/api/rest/client"; import { store } from "@/shared/stores"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { queryOptions } from "@tanstack/react-query"; type GetMenu = ({ branchName }: { branchName: string }) => Promise; diff --git a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx b/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx index e87d412ef3..bc1b2f81ad 100644 --- a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx +++ b/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx @@ -1,10 +1,10 @@ -import { Divider } from "@/shared/components/ui/divider"; -import { ScrollArea } from "@/shared/components/ui/scroll-area"; -import { Spinner } from "@/shared/components/ui/spinner"; import ErrorScreen from "@/screens/errors/error-screen"; import { MenuSectionInternal } from "@/screens/layout/menu-navigation/components/menu-section-internal"; import { MenuSectionObject } from "@/screens/layout/menu-navigation/components/menu-section-object"; import { menuQueryOptions } from "@/screens/layout/menu-navigation/get-menu"; +import { Divider } from "@/shared/components/ui/divider"; +import { ScrollArea } from "@/shared/components/ui/scroll-area"; +import { Spinner } from "@/shared/components/ui/spinner"; import { useQuery } from "@tanstack/react-query"; export interface MenuNavigationProps { diff --git a/frontend/app/src/screens/layout/sidebar.tsx b/frontend/app/src/screens/layout/sidebar.tsx index 50d3ce4099..8dd8bacaee 100644 --- a/frontend/app/src/screens/layout/sidebar.tsx +++ b/frontend/app/src/screens/layout/sidebar.tsx @@ -1,9 +1,9 @@ +import { SIDEBAR_COLLAPSED_KEY } from "@/config/localStorage"; +import MenuNavigation from "@/screens/layout/menu-navigation/menu-navigation"; import { AccountMenu } from "@/shared/components/account-menu"; import { Button } from "@/shared/components/buttons/button-primitive"; import { SearchAnywhere } from "@/shared/components/search/search-anywhere"; -import { SIDEBAR_COLLAPSED_KEY } from "@/config/localStorage"; import { useLocalStorage } from "@/shared/hooks/useLocalStorage"; -import MenuNavigation from "@/screens/layout/menu-navigation/menu-navigation"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/layout/tasks-status.tsx b/frontend/app/src/screens/layout/tasks-status.tsx index ba290d5810..84824c5247 100644 --- a/frontend/app/src/screens/layout/tasks-status.tsx +++ b/frontend/app/src/screens/layout/tasks-status.tsx @@ -1,14 +1,14 @@ +import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; +import { TASKS_STATUS_OBJECT } from "@/config/constants"; +import { QSP } from "@/config/qsp"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; +import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { Pulse } from "@/shared/components/ui/pulse"; import { Spinner } from "@/shared/components/ui/spinner"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { TASKS_STATUS_OBJECT } from "@/config/constants"; -import { QSP } from "@/config/qsp"; -import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; import useQuery from "@/shared/hooks/useQuery"; -import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx index e6cf3a8a1e..681abdbd8c 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx @@ -1,14 +1,14 @@ -import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; -import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Generate } from "@/screens/artifacts/generate"; import { GroupsManagerTriggerButton } from "@/screens/groups/groups-manager-trigger-button"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import RepositoryActionMenu from "@/screens/repository/repository-action-menu"; -import { isGenericSchema } from "@/screens/schema/utils"; import { IModelSchema } from "@/screens/schema/schema.atom"; +import { isGenericSchema } from "@/screens/schema/utils"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { useLocation, useNavigate, useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx index 7f0df7f90f..210a5e1674 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,14 +1,14 @@ +import { QSP } from "@/config/qsp"; +import { Permission } from "@/screens/permission/types"; +import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { SelectOption } from "@/shared/components/inputs/select"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { QSP } from "@/config/qsp"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; import { useMutation } from "@/shared/hooks/useQuery"; -import { Permission } from "@/screens/permission/types"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx index 927655fafc..8e82eb0a1a 100644 --- a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx @@ -2,6 +2,13 @@ import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/ import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/screens/branches/branches.atom"; import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { + getObjectAttributes, + getObjectRelationships, + getObjectTabs, + getTabs, +} from "@/screens/object-items/getSchemaObjectColumns"; +import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { Permission } from "@/screens/permission/types"; @@ -9,20 +16,13 @@ import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schem import { TaskItemDetails } from "@/screens/tasks/task-item-details"; import { TaskItems } from "@/screens/tasks/task-items"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver from "@/shared/components/display/slide-over"; import { Tabs } from "@/shared/components/tabs"; import { Link } from "@/shared/components/ui/link"; import { useTitle } from "@/shared/hooks/useTitle"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { - getObjectAttributes, - getObjectRelationships, - getObjectTabs, - getTabs, -} from "@/screens/object-items/getSchemaObjectColumns"; import { LockClosedIcon } from "@heroicons/react/24/outline"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx index 18744571e9..bfa97cebaa 100644 --- a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx @@ -1,13 +1,16 @@ import { currentBranchAtom } from "@/screens/branches/branches.atom"; import NoDataFound from "@/screens/errors/no-data-found"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; import { getPermission } from "@/screens/permission/utils"; import { schemaState } from "@/screens/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; @@ -16,9 +19,6 @@ import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link as StyledLink } from "@/shared/components/ui/link"; import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { EyeSlashIcon, LockClosedIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx index e2724a7f99..7b4d640b82 100644 --- a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx @@ -1,13 +1,13 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Pagination } from "@/shared/components/ui/pagination"; import { QSP } from "@/config/qsp"; -import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; -import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; -import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState, iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; +import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Pagination } from "@/shared/components/ui/pagination"; +import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import { forwardRef, useEffect, useImperativeHandle } from "react"; diff --git a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts index 2545555e65..511d1bf858 100644 --- a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts +++ b/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts @@ -1,6 +1,6 @@ -import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; -import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; +import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { jsonToGraphQLQuery } from "json-to-graphql-query"; export const generateObjectEditFormQuery = ({ diff --git a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx index c493dfcdea..52152c2932 100644 --- a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx @@ -1,16 +1,16 @@ -import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; -import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { DynamicFieldData } from "@/screens/edit-form-hook/dynamic-control-types"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { generateObjectEditFormQuery } from "@/screens/object-item-edit/generateObjectEditFormQuery"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; +import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import useQuery from "@/shared/hooks/useQuery"; +import { useSchema } from "@/shared/hooks/useSchema"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { areObjectArraysEqualById } from "@/shared/utils/array"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx index c2f64fb05b..01a5c88eff 100644 --- a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,12 +1,12 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { iNodeSchema } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts b/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts index ed6e9035ef..f411caa2b8 100644 --- a/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts +++ b/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts @@ -5,11 +5,11 @@ import { relationshipsForListView, relationshipsForTabs, } from "@/config/constants"; +import { iGenericSchema, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; import { isGenericSchema } from "@/screens/schema/utils"; import { store } from "@/shared/stores"; -import { iGenericSchema, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; -import * as R from "ramda"; import { sortByOrderWeight } from "@/shared/utils/common"; +import * as R from "ramda"; type tgetObjectAttributes = { schema: iNodeSchema | iGenericSchema | undefined; diff --git a/frontend/app/src/screens/object-items/object-items-cell.tsx b/frontend/app/src/screens/object-items/object-items-cell.tsx index 860b5e3214..88d1203dd3 100644 --- a/frontend/app/src/screens/object-items/object-items-cell.tsx +++ b/frontend/app/src/screens/object-items/object-items-cell.tsx @@ -1,12 +1,12 @@ -import { Badge } from "@/shared/components/ui/badge"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; -import { classNames } from "@/shared/utils/common"; import { RelationshipManyType, RelationshipOneType, getDisplayValue, } from "@/screens/objects/getObjectItemDisplayValue"; import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +import { Badge } from "@/shared/components/ui/badge"; +import { classNames } from "@/shared/utils/common"; import { HTMLAttributes } from "react"; import { Link, LinkProps } from "react-router-dom"; diff --git a/frontend/app/src/screens/object-items/object-items-paginated.tsx b/frontend/app/src/screens/object-items/object-items-paginated.tsx index 55272845d1..ed5827ad9a 100644 --- a/frontend/app/src/screens/object-items/object-items-paginated.tsx +++ b/frontend/app/src/screens/object-items/object-items-paginated.tsx @@ -1,28 +1,28 @@ -import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; -import { Filters } from "@/shared/components/filters/filters"; -import { ObjectCreateFormTrigger } from "@/shared/components/form/object-create-form-trigger"; -import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; -import { Pagination } from "@/shared/components/ui/pagination"; -import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { MENU_EXCLUDELIST, SEARCH_ANY_FILTER, SEARCH_FILTERS, SEARCH_PARTIAL_MATCH, } from "@/config/constants"; -import useFilters, { Filter } from "@/shared/hooks/useFilters"; -import { useObjectItems } from "@/shared/hooks/useObjectItems"; -import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import { GroupsAutoGeneratedFilterButton } from "@/screens/groups/groups-auto-generated-filter-button"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; -import { isOfKind } from "@/screens/schema/utils"; +import { getDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; import { IModelSchema } from "@/screens/schema/schema.atom"; +import { isOfKind } from "@/screens/schema/utils"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import { Filters } from "@/shared/components/filters/filters"; +import { ObjectCreateFormTrigger } from "@/shared/components/form/object-create-form-trigger"; +import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; +import { Pagination } from "@/shared/components/ui/pagination"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; +import useFilters, { Filter } from "@/shared/hooks/useFilters"; +import { useObjectItems } from "@/shared/hooks/useObjectItems"; +import { useTitle } from "@/shared/hooks/useTitle"; import { classNames, debounce } from "@/shared/utils/common"; -import { getDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Navigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/objects/hierarchical-tree.tsx b/frontend/app/src/screens/objects/hierarchical-tree.tsx index 29e28d9713..edb884d7ba 100644 --- a/frontend/app/src/screens/objects/hierarchical-tree.tsx +++ b/frontend/app/src/screens/objects/hierarchical-tree.tsx @@ -1,19 +1,19 @@ -import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { HIDE_AUTO_GENERATED_FILTER } from "@/screens/groups/groups-auto-generated-filter-button"; +import { TREE_ROOT_ID } from "@/screens/ipam/constants"; +import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/screens/ipam/ipam-tree/utils"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; import { objectAncestorsQuery, objectChildrenQuery, objectTopLevelTreeQuery, } from "@/shared/api/graphql/queries/objects/objectTreeQuery"; +import { constructPath } from "@/shared/api/rest/fetch"; +import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import useFilters from "@/shared/hooks/useFilters"; import { useLazyQuery } from "@/shared/hooks/useQuery"; -import { HIDE_AUTO_GENERATED_FILTER } from "@/screens/groups/groups-auto-generated-filter-button"; -import { TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/screens/ipam/ipam-tree/utils"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/objects/object-header.tsx b/frontend/app/src/screens/objects/object-header.tsx index 8cfbb593c4..353a0e89ae 100644 --- a/frontend/app/src/screens/objects/object-header.tsx +++ b/frontend/app/src/screens/objects/object-header.tsx @@ -1,13 +1,13 @@ +import Content from "@/screens/layout/content"; +import { getPermission } from "@/screens/permission/utils"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ObjectDetailsButton } from "@/shared/components/menu/object-details-button"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Skeleton } from "@/shared/components/skeleton"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useFilters from "@/shared/hooks/useFilters"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { useObjectItems } from "@/shared/hooks/useObjectItems"; -import Content from "@/screens/layout/content"; -import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema } from "@/screens/schema/schema.atom"; type ObjectHeaderProps = { schema: IModelSchema; diff --git a/frontend/app/src/screens/objects/objects.ts b/frontend/app/src/screens/objects/objects.ts index 256783ca37..6c200af554 100644 --- a/frontend/app/src/screens/objects/objects.ts +++ b/frontend/app/src/screens/objects/objects.ts @@ -6,9 +6,9 @@ import { IP_PREFIX_GENERIC, } from "@/screens/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { isGenericSchema } from "@/screens/schema/utils"; import { store } from "@/shared/stores"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { constructPath, overrideQueryParams } from "../../shared/api/rest/fetch"; const regex = /^Related/; // starts with Related diff --git a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx b/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx index a408bca27c..f9e4bf3b2f 100644 --- a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx @@ -1,8 +1,8 @@ +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; import { useSchema } from "@/shared/hooks/useSchema"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import React, { useState } from "react"; export interface AddRelationshipActionProps { diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx index b64baadfb1..d8c26fe69a 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx @@ -1,10 +1,10 @@ -import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; -import { Spinner } from "@/shared/components/ui/spinner"; -import { useSchema } from "@/shared/hooks/useSchema"; import ErrorScreen from "@/screens/errors/error-screen"; import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; +import { Spinner } from "@/shared/components/ui/spinner"; +import { useSchema } from "@/shared/hooks/useSchema"; import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import React, { forwardRef } from "react"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx index 9e1a7696b5..cb8e5a1de7 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx @@ -1,8 +1,8 @@ import { getRelationships } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; -import { store } from "@/shared/stores"; import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { store } from "@/shared/stores"; import { describe, expect, it, vi } from "vitest"; import { render } from "../../../../../tests/components/render"; import { generateGenericSchema, generateNodeSchema } from "../../../../../tests/fake/schema"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx index acbb4eee52..0d924d5807 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx @@ -1,13 +1,13 @@ +import ErrorScreen from "@/screens/errors/error-screen"; +import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; +import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/screens/schema/utils"; import { Badge } from "@/shared/components/ui/badge"; import { ComboboxEmpty, ComboboxItem } from "@/shared/components/ui/combobox"; import { Command, CommandInput, CommandList } from "@/shared/components/ui/command"; import { Spinner } from "@/shared/components/ui/spinner"; import { useSchema } from "@/shared/hooks/useSchema"; -import ErrorScreen from "@/screens/errors/error-screen"; -import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/screens/schema/utils"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx index 0c8813f4f6..81faedbb12 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx +++ b/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx @@ -1,3 +1,10 @@ +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; +import { + RelationshipComboboxList, + RelationshipComboboxListProps, +} from "@/screens/objects/relationships/ui/relationship-combobox-list"; +import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { @@ -14,14 +21,7 @@ import { PopoverTrigger, } from "@/shared/components/ui/popover"; import { inputStyle } from "@/shared/components/ui/style"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { - RelationshipComboboxList, - RelationshipComboboxListProps, -} from "@/screens/objects/relationships/ui/relationship-combobox-list"; -import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; import { classNames } from "@/shared/utils/common"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { Icon } from "@iconify-icon/react"; import { forwardRef, useState } from "react"; diff --git a/frontend/app/src/screens/permission/utils.ts b/frontend/app/src/screens/permission/utils.ts index b8dbaa3d44..a30f92489f 100644 --- a/frontend/app/src/screens/permission/utils.ts +++ b/frontend/app/src/screens/permission/utils.ts @@ -1,3 +1,4 @@ +import { configState } from "@/config/config.atom"; import { Permission, PermissionAction, @@ -6,7 +7,6 @@ import { PermissionDecisionData, } from "@/screens/permission/types"; import { store } from "@/shared/stores"; -import { configState } from "@/config/config.atom"; import { warnUnexpectedType } from "@/shared/utils/common"; const getMessage = (action: string, decision?: PermissionDecisionData): string => { diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx index dfc84d6aa9..a0f20ee4a7 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx @@ -1,10 +1,10 @@ -import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx index a2f03d8966..097f55b745 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx @@ -1,9 +1,9 @@ -import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx index e0e3e9d429..ba521f5db4 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx @@ -1,9 +1,9 @@ -import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/proposed-changes/checks-tab.tsx b/frontend/app/src/screens/proposed-changes/checks-tab.tsx index ba1c1ebcfb..d60fbb14db 100644 --- a/frontend/app/src/screens/proposed-changes/checks-tab.tsx +++ b/frontend/app/src/screens/proposed-changes/checks-tab.tsx @@ -1,6 +1,6 @@ -import { Pill } from "@/shared/components/display/pill"; import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { getProposedChangesChecks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks"; +import { Pill } from "@/shared/components/display/pill"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/conversations.tsx b/frontend/app/src/screens/proposed-changes/conversations.tsx index e716c25a25..8248685ee4 100644 --- a/frontend/app/src/screens/proposed-changes/conversations.tsx +++ b/frontend/app/src/screens/proposed-changes/conversations.tsx @@ -1,22 +1,22 @@ -import { AddComment } from "@/shared/components/conversations/add-comment"; -import { Thread } from "@/shared/components/conversations/thread"; -import { Card } from "@/shared/components/ui/card"; -import { FormRef } from "@/shared/components/ui/form"; import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_CHANGE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import ErrorScreen from "@/screens/errors/error-screen"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads"; +import { AddComment } from "@/shared/components/conversations/add-comment"; +import { Thread } from "@/shared/components/conversations/thread"; +import { Card } from "@/shared/components/ui/card"; +import { FormRef } from "@/shared/components/ui/form"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/screens/proposed-changes/create-form.tsx b/frontend/app/src/screens/proposed-changes/create-form.tsx index e814ed509b..6f1dae574d 100644 --- a/frontend/app/src/screens/proposed-changes/create-form.tsx +++ b/frontend/app/src/screens/proposed-changes/create-form.tsx @@ -2,7 +2,9 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { branchesToSelectOptions } from "@/screens/branches/branches"; import { branchesState } from "@/screens/branches/branches.atom"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; +import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { MarkdownEditor } from "@/shared/components/editor"; import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; @@ -22,8 +24,6 @@ import { Spinner } from "@/shared/components/ui/spinner"; import { useAuth } from "@/shared/hooks/useAuth"; import { useMutation } from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/diff-filter.tsx b/frontend/app/src/screens/proposed-changes/diff-filter.tsx index bd08d34f5b..9ed5da9496 100644 --- a/frontend/app/src/screens/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-filter.tsx @@ -2,8 +2,6 @@ import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/prop import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "../errors/error-screen"; -import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; import { CloseBadgeAdded, @@ -13,6 +11,8 @@ import { } from "@/screens/diff/diff-badge"; import { DIFF_STATUS } from "@/screens/diff/node-diff/types"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; +import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { classNames } from "@/shared/utils/common"; import { toast } from "react-toastify"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/screens/proposed-changes/diff-summary.tsx b/frontend/app/src/screens/proposed-changes/diff-summary.tsx index 11cbb067bf..5dfd6e99a8 100644 --- a/frontend/app/src/screens/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/screens/proposed-changes/diff-summary.tsx @@ -2,13 +2,13 @@ import React from "react"; import { Link } from "react-router-dom"; import { toast } from "react-toastify"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { QSP } from "@/config/qsp"; -import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; -import useQuery from "@/shared/hooks/useQuery"; import { DiffBadge } from "@/screens/diff/node-diff/utils"; import ErrorScreen from "@/screens/errors/error-screen"; +import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; import { constructPath } from "@/shared/api/rest/fetch"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import useQuery from "@/shared/hooks/useQuery"; import { DIFF_STATUS, DiffStatus } from "../diff/node-diff/types"; interface DiffTreeSummary { diff --git a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx index 120c79d1e4..104d776557 100644 --- a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx @@ -1,14 +1,14 @@ +import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; +import { schemaState } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; -import { schemaState } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/screens/proposed-changes/item-info.tsx b/frontend/app/src/screens/proposed-changes/item-info.tsx index bb1ae5caf9..cec9a547d6 100644 --- a/frontend/app/src/screens/proposed-changes/item-info.tsx +++ b/frontend/app/src/screens/proposed-changes/item-info.tsx @@ -1,8 +1,8 @@ -import { DateDisplay } from "@/shared/components/display/date-display"; -import { Badge } from "@/shared/components/ui/badge"; import PcCheckFailure from "@/assets/icons/proposed-change-checks-failure.svg?react"; import PcCheckSuccess from "@/assets/icons/proposed-change-checks-success.svg?react"; import PcCheckUnknown from "@/assets/icons/proposed-change-checks-unknown.svg?react"; +import { DateDisplay } from "@/shared/components/display/date-display"; +import { Badge } from "@/shared/components/ui/badge"; import { Icon } from "@iconify-icon/react"; type ProposedChangesInfoProps = { diff --git a/frontend/app/src/screens/proposed-changes/items.tsx b/frontend/app/src/screens/proposed-changes/items.tsx index 69f8430926..cf750238a5 100644 --- a/frontend/app/src/screens/proposed-changes/items.tsx +++ b/frontend/app/src/screens/proposed-changes/items.tsx @@ -1,31 +1,31 @@ +import ErrorScreen from "@/screens/errors/error-screen"; +import Content from "@/screens/layout/content"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { Table, tRow } from "@/shared/components/table/table"; import { Badge } from "@/shared/components/ui/badge"; import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; -import ErrorScreen from "@/screens/errors/error-screen"; -import Content from "@/screens/layout/content"; import { Icon } from "@iconify-icon/react"; -import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; -import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; -import ModalDelete from "@/shared/components/modals/modal-delete"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { ARTIFACT_OBJECT, PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; -import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; -import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; -import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; -import { useSchema } from "@/shared/hooks/useSchema"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { ProposedChangesCounter } from "@/screens/proposed-changes/counter"; import { ProposedChangeDiffSummary } from "@/screens/proposed-changes/diff-summary"; import { ProposedChangesInfo } from "@/screens/proposed-changes/item-info"; import { ProposedChangesReviewers } from "@/screens/proposed-changes/reviewers"; -import { classNames, debounce } from "@/shared/utils/common"; +import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; +import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; +import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; +import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; import { constructPath } from "@/shared/api/rest/fetch"; +import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; +import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; +import ModalDelete from "@/shared/components/modals/modal-delete"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; +import { useSchema } from "@/shared/hooks/useSchema"; +import { classNames, debounce } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; import { useState } from "react"; import { Link, LinkProps, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx index a1a01c5e75..ba5f501fdb 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx @@ -1,3 +1,13 @@ +import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; +import { PcApproveButton } from "@/screens/proposed-changes/action-button/pc-approve-button"; +import { PcCloseButton } from "@/screens/proposed-changes/action-button/pc-close-button"; +import { PcMergeButton } from "@/screens/proposed-changes/action-button/pc-merge-button"; +import { Conversations } from "@/screens/proposed-changes/conversations"; +import { ProposedChangeEditTrigger } from "@/screens/proposed-changes/proposed-change-edit-trigger"; +import { getProposedChangesStateBadgeType } from "@/screens/proposed-changes/proposed-changes"; +import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; +import { constructPath } from "@/shared/api/rest/fetch"; import Accordion from "@/shared/components/display/accordion"; import { Avatar } from "@/shared/components/display/avatar"; import { DateDisplay } from "@/shared/components/display/date-display"; @@ -6,18 +16,8 @@ import { Property, PropertyList } from "@/shared/components/table/property-list" import { Badge } from "@/shared/components/ui/badge"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; import useQuery from "@/shared/hooks/useQuery"; -import { PcApproveButton } from "@/screens/proposed-changes/action-button/pc-approve-button"; -import { PcCloseButton } from "@/screens/proposed-changes/action-button/pc-close-button"; -import { PcMergeButton } from "@/screens/proposed-changes/action-button/pc-merge-button"; -import { Conversations } from "@/screens/proposed-changes/conversations"; -import { ProposedChangeEditTrigger } from "@/screens/proposed-changes/proposed-change-edit-trigger"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; import { classNames } from "@/shared/utils/common"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getProposedChangesStateBadgeType } from "@/screens/proposed-changes/proposed-changes"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx index 78c6b12cd8..eb2bb568c5 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx @@ -1,11 +1,11 @@ +import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { ProposedChangeEditForm } from "@/screens/proposed-changes/form/proposed-change-edit-form"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver from "@/shared/components/display/slide-over"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; -import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; -import { ProposedChangeEditForm } from "@/screens/proposed-changes/form/proposed-change-edit-form"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/repository/repository-action-menu.tsx b/frontend/app/src/screens/repository/repository-action-menu.tsx index 57d89321f0..960b67a344 100644 --- a/frontend/app/src/screens/repository/repository-action-menu.tsx +++ b/frontend/app/src/screens/repository/repository-action-menu.tsx @@ -1,5 +1,9 @@ import { Icon } from "@iconify-icon/react"; +import { + CHECK_REPOSITORY_CONNECTIVITY, + REIMPORT_LAST_COMMIT, +} from "@/shared/api/graphql/mutations/repository/actions"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { @@ -8,10 +12,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { - CHECK_REPOSITORY_CONNECTIVITY, - REIMPORT_LAST_COMMIT, -} from "@/shared/api/graphql/mutations/repository/actions"; import { useMutation } from "@/shared/hooks/useQuery"; import { Dialog } from "@headlessui/react"; import { useState } from "react"; diff --git a/frontend/app/src/screens/repository/repository-form.tsx b/frontend/app/src/screens/repository/repository-form.tsx index e9e7734d40..18faccbf46 100644 --- a/frontend/app/src/screens/repository/repository-form.tsx +++ b/frontend/app/src/screens/repository/repository-form.tsx @@ -1,3 +1,6 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DynamicInput } from "@/shared/components/form/dynamic-form"; import RelationshipField from "@/shared/components/form/fields/relationship.field"; @@ -6,10 +9,7 @@ import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormF import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { Card, CardProps } from "@/shared/components/ui/card"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { useAuth } from "@/shared/hooks/useAuth"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/screens/resource-manager/number-pool-form.tsx b/frontend/app/src/screens/resource-manager/number-pool-form.tsx index 0f1f319a11..b3cff8d13e 100644 --- a/frontend/app/src/screens/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/screens/resource-manager/number-pool-form.tsx @@ -1,3 +1,15 @@ +import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { + NUMBER_POOL_NODE_ATTRIBUTE_FIELD, + NUMBER_POOL_NODE_FIELD, +} from "@/screens/resource-manager/constants"; +import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { AttributeSchema } from "@/screens/schema/types"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; @@ -19,19 +31,7 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import { Form, FormField, FormInput, FormMessage, FormSubmit } from "@/shared/components/ui/form"; -import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { - NUMBER_POOL_NODE_ATTRIBUTE_FIELD, - NUMBER_POOL_NODE_FIELD, -} from "@/screens/resource-manager/constants"; -import { AttributeSchema } from "@/screens/schema/types"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/resource-manager/resource-selector.tsx b/frontend/app/src/screens/resource-manager/resource-selector.tsx index f124ddadf0..c8a86e8f5d 100644 --- a/frontend/app/src/screens/resource-manager/resource-selector.tsx +++ b/frontend/app/src/screens/resource-manager/resource-selector.tsx @@ -1,8 +1,8 @@ +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { constructPath } from "@/shared/api/rest/fetch"; import { PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { HTMLAttributes } from "react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/role-management/account-form.tsx b/frontend/app/src/screens/role-management/account-form.tsx index be2efeab90..afbb661043 100644 --- a/frontend/app/src/screens/role-management/account-form.tsx +++ b/frontend/app/src/screens/role-management/account-form.tsx @@ -1,3 +1,9 @@ +import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; @@ -9,14 +15,8 @@ import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/util import { isRequired } from "@/shared/components/form/utils/validation"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useSchema } from "@/shared/hooks/useSchema"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/role-management/account-group-form.tsx b/frontend/app/src/screens/role-management/account-group-form.tsx index bfd5e82e63..11eebaf3fd 100644 --- a/frontend/app/src/screens/role-management/account-group-form.tsx +++ b/frontend/app/src/screens/role-management/account-group-form.tsx @@ -1,3 +1,14 @@ +import { + ACCOUNT_GROUP_OBJECT, + ACCOUNT_OBJECT, + ACCOUNT_ROLE_OBJECT, + OBJECT_PERMISSION_OBJECT, +} from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import InputField from "@/shared/components/form/fields/input.field"; @@ -11,19 +22,8 @@ import { isRequired } from "@/shared/components/form/utils/validation"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { - ACCOUNT_GROUP_OBJECT, - ACCOUNT_OBJECT, - ACCOUNT_ROLE_OBJECT, - OBJECT_PERMISSION_OBJECT, -} from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { useSchema } from "@/shared/hooks/useSchema"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/role-management/account-role-form.tsx b/frontend/app/src/screens/role-management/account-role-form.tsx index 0823a5b762..8fdd261a3b 100644 --- a/frontend/app/src/screens/role-management/account-role-form.tsx +++ b/frontend/app/src/screens/role-management/account-role-form.tsx @@ -1,21 +1,21 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { NodeFormProps } from "@/shared/components/form/node-form"; -import { FormFieldValue } from "@/shared/components/form/type"; -import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; -import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { Form, FormSubmit } from "@/shared/components/ui/form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_PERMISSION_OBJECT, ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { NodeFormProps } from "@/shared/components/form/node-form"; +import { FormFieldValue } from "@/shared/components/form/type"; +import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDefaultValue"; +import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; +import { Form, FormSubmit } from "@/shared/components/ui/form"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/role-management/global-permissions-form.tsx b/frontend/app/src/screens/role-management/global-permissions-form.tsx index 9a4d8e0352..da323c9e5f 100644 --- a/frontend/app/src/screens/role-management/global-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/global-permissions-form.tsx @@ -1,3 +1,9 @@ +import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; import { FormFieldValue } from "@/shared/components/form/type"; @@ -5,13 +11,7 @@ import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDef import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/role-management/index.tsx b/frontend/app/src/screens/role-management/index.tsx index c6f31c22de..16813ec268 100644 --- a/frontend/app/src/screens/role-management/index.tsx +++ b/frontend/app/src/screens/role-management/index.tsx @@ -1,4 +1,3 @@ -import { Tabs } from "@/shared/components/tabs-routes"; import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_GROUP_OBJECT, @@ -7,6 +6,7 @@ import { OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_COUNTS } from "@/shared/api/graphql/queries/role-management/getCounts"; +import { Tabs } from "@/shared/components/tabs-routes"; import useQuery from "@/shared/hooks/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/screens/role-management/object-permissions-form.tsx b/frontend/app/src/screens/role-management/object-permissions-form.tsx index 6208381784..03d56f335d 100644 --- a/frontend/app/src/screens/role-management/object-permissions-form.tsx +++ b/frontend/app/src/screens/role-management/object-permissions-form.tsx @@ -1,3 +1,9 @@ +import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; import { FormFieldValue } from "@/shared/components/form/type"; @@ -5,13 +11,7 @@ import { getCurrentFieldValue } from "@/shared/components/form/utils/getFieldDef import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/schema/attribute-display.tsx b/frontend/app/src/screens/schema/attribute-display.tsx index 8d3c7ac331..9b026da7fb 100644 --- a/frontend/app/src/screens/schema/attribute-display.tsx +++ b/frontend/app/src/screens/schema/attribute-display.tsx @@ -1,5 +1,5 @@ -import Accordion from "@/shared/components/display/accordion"; import { components } from "@/shared/api/rest/types.generated"; +import Accordion from "@/shared/components/display/accordion"; import { AccordionStyled, NullDisplay, PropertyRow } from "./styled"; export const AttributeDisplay = ({ diff --git a/frontend/app/src/screens/schema/get-schema.test.ts b/frontend/app/src/screens/schema/get-schema.test.ts index a91c5e39f0..3ad3932df5 100644 --- a/frontend/app/src/screens/schema/get-schema.test.ts +++ b/frontend/app/src/screens/schema/get-schema.test.ts @@ -1,5 +1,5 @@ -import { store } from "@/shared/stores"; import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it } from "vitest"; import { generateGenericSchema, diff --git a/frontend/app/src/screens/schema/get-schema.ts b/frontend/app/src/screens/schema/get-schema.ts index 7ae248d221..5c80cdba56 100644 --- a/frontend/app/src/screens/schema/get-schema.ts +++ b/frontend/app/src/screens/schema/get-schema.ts @@ -1,4 +1,3 @@ -import { store } from "@/shared/stores"; import { IProfileSchema, genericsState, @@ -7,6 +6,7 @@ import { profilesAtom, schemaState, } from "@/screens/schema/schema.atom"; +import { store } from "@/shared/stores"; type GetSchema = (kind?: string | null) => | { diff --git a/frontend/app/src/screens/schema/relationship-display.tsx b/frontend/app/src/screens/schema/relationship-display.tsx index c60bb818fe..a5e3f82478 100644 --- a/frontend/app/src/screens/schema/relationship-display.tsx +++ b/frontend/app/src/screens/schema/relationship-display.tsx @@ -1,5 +1,5 @@ -import { Badge } from "@/shared/components/ui/badge"; import { components } from "@/shared/api/rest/types.generated"; +import { Badge } from "@/shared/components/ui/badge"; import { warnUnexpectedType } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { AccordionStyled, ModelDisplay, PropertyRow } from "./styled"; diff --git a/frontend/app/src/screens/schema/schema-help-menu.tsx b/frontend/app/src/screens/schema/schema-help-menu.tsx index d721f0c8c7..e9ac82ea50 100644 --- a/frontend/app/src/screens/schema/schema-help-menu.tsx +++ b/frontend/app/src/screens/schema/schema-help-menu.tsx @@ -1,3 +1,7 @@ +import { INFRAHUB_DOC_LOCAL } from "@/config/config"; +import { MENU_EXCLUDELIST } from "@/config/constants"; +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, @@ -5,10 +9,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { INFRAHUB_DOC_LOCAL } from "@/config/config"; -import { MENU_EXCLUDELIST } from "@/config/constants"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/screens/schema/schema-selector.tsx b/frontend/app/src/screens/schema/schema-selector.tsx index 3096087d12..bdca4a6cc6 100644 --- a/frontend/app/src/screens/schema/schema-selector.tsx +++ b/frontend/app/src/screens/schema/schema-selector.tsx @@ -1,9 +1,14 @@ +import { QSP } from "@/config/qsp"; +import { + IModelSchema, + genericsState, + profilesAtom, + schemaState, +} from "@/screens/schema/schema.atom"; +import { isGenericSchema } from "@/screens/schema/utils"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput } from "@/shared/components/ui/search-input"; -import { QSP } from "@/config/qsp"; -import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/schema/schema-viewer.tsx b/frontend/app/src/screens/schema/schema-viewer.tsx index 4655352f64..df789b9c42 100644 --- a/frontend/app/src/screens/schema/schema-viewer.tsx +++ b/frontend/app/src/screens/schema/schema-viewer.tsx @@ -1,8 +1,13 @@ -import { Button } from "@/shared/components/buttons/button-primitive"; -import { Badge } from "@/shared/components/ui/badge"; import { QSP } from "@/config/qsp"; +import { + IModelSchema, + genericsState, + profilesAtom, + schemaState, +} from "@/screens/schema/schema.atom"; import { isGenericSchema, isNodeSchema, isProfileSchema } from "@/screens/schema/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { Button } from "@/shared/components/buttons/button-primitive"; +import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; import { Tab } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/schema/styled.tsx b/frontend/app/src/screens/schema/styled.tsx index 52816ff2f0..4dae90426d 100644 --- a/frontend/app/src/screens/schema/styled.tsx +++ b/frontend/app/src/screens/schema/styled.tsx @@ -1,6 +1,6 @@ +import { QSP } from "@/config/qsp"; import Accordion, { AccordionProps } from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; -import { QSP } from "@/config/qsp"; import { classNames, warnUnexpectedType } from "@/shared/utils/common"; import { Tab } from "@headlessui/react"; import { ReactElement } from "react"; diff --git a/frontend/app/src/screens/schema/utils.test.ts b/frontend/app/src/screens/schema/utils.test.ts index a2f766cd50..f758fa7d7d 100644 --- a/frontend/app/src/screens/schema/utils.test.ts +++ b/frontend/app/src/screens/schema/utils.test.ts @@ -1,5 +1,5 @@ -import { store } from "@/shared/stores"; import { schemaState } from "@/screens/schema/schema.atom"; +import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateGenericSchema, diff --git a/frontend/app/src/screens/schema/utils.ts b/frontend/app/src/screens/schema/utils.ts index 1de1b3b5f1..1c72b6c46e 100644 --- a/frontend/app/src/screens/schema/utils.ts +++ b/frontend/app/src/screens/schema/utils.ts @@ -1,4 +1,3 @@ -import { store } from "@/shared/stores"; import { IModelSchema, IProfileSchema, @@ -6,6 +5,7 @@ import { iNodeSchema, schemaState, } from "@/screens/schema/schema.atom"; +import { store } from "@/shared/stores"; export const isOfKind = (kind: string, schema: IModelSchema) => { if (schema.kind === kind) return true; diff --git a/frontend/app/src/screens/schema/withSchemaContext.tsx b/frontend/app/src/screens/schema/withSchemaContext.tsx index 20d681b6a7..0e98ae7f36 100644 --- a/frontend/app/src/screens/schema/withSchemaContext.tsx +++ b/frontend/app/src/screens/schema/withSchemaContext.tsx @@ -17,10 +17,10 @@ import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; import { tokenSchema } from "@/screens/user-profile/token-schema"; import { Branch } from "@/shared/api/graphql/generated/graphql"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { stateAtom } from "@/shared/stores/state.atom"; import { sortByName, sortByOrderWeight } from "@/shared/utils/common"; -import { fetchUrl } from "@/shared/api/rest/fetch"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; import * as R from "ramda"; import { createContext } from "react"; diff --git a/frontend/app/src/screens/tasks/task-item-details.tsx b/frontend/app/src/screens/tasks/task-item-details.tsx index 9d364b24f1..09a82c7d08 100644 --- a/frontend/app/src/screens/tasks/task-item-details.tsx +++ b/frontend/app/src/screens/tasks/task-item-details.tsx @@ -1,16 +1,16 @@ import { TASK_OBJECT } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; +import { QSP } from "@/config/qsp"; +import ErrorScreen from "@/screens/errors/error-screen"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import { List } from "@/shared/components/table/list"; import { Badge } from "@/shared/components/ui/badge"; import { Id } from "@/shared/components/ui/id"; import { SearchInput } from "@/shared/components/ui/search-input"; -import { QSP } from "@/config/qsp"; -import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { forwardRef, useImperativeHandle, useState } from "react"; import { useParams } from "react-router-dom"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/screens/tasks/task-items.tsx b/frontend/app/src/screens/tasks/task-items.tsx index 0e6d6a825b..1a46d4222b 100644 --- a/frontend/app/src/screens/tasks/task-items.tsx +++ b/frontend/app/src/screens/tasks/task-items.tsx @@ -1,21 +1,21 @@ +import { SEARCH_ANY_FILTER, SEARCH_FILTERS, TASK_OBJECT, TASK_TAB } from "@/config/constants"; +import Content from "@/screens/layout/content"; import { Table, tColumn } from "@/shared/components/table/table"; import { Pagination } from "@/shared/components/ui/pagination"; -import { SEARCH_ANY_FILTER, SEARCH_FILTERS, TASK_OBJECT, TASK_TAB } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; -import Content from "@/screens/layout/content"; +import { QSP } from "@/config/qsp"; +import ErrorScreen from "@/screens/errors/error-screen"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; +import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import { Filters } from "@/shared/components/filters/filters"; import { Id } from "@/shared/components/ui/id"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; -import { QSP } from "@/config/qsp"; -import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; import useFilters, { Filter } from "@/shared/hooks/useFilters"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { debounce } from "@/shared/utils/common"; -import { constructPath } from "@/shared/api/rest/fetch"; import { forwardRef, useImperativeHandle } from "react"; import { useLocation, useParams } from "react-router-dom"; import { getStateBadge } from "./task-item-details"; diff --git a/frontend/app/src/screens/user-profile/tab-profile.tsx b/frontend/app/src/screens/user-profile/tab-profile.tsx index a91c26e650..78ebd3fd78 100644 --- a/frontend/app/src/screens/user-profile/tab-profile.tsx +++ b/frontend/app/src/screens/user-profile/tab-profile.tsx @@ -1,11 +1,11 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import ErrorScreen from "@/screens/errors/error-screen"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import ObjectItemDetails from "@/screens/object-item-details/object-item-details-paginated"; import { genericsState } from "@/screens/schema/schema.atom"; +import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { parseJwt } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/screens/user-profile/tab-update-password.tsx b/frontend/app/src/screens/user-profile/tab-update-password.tsx index 0930d13674..1b8cf9f4aa 100644 --- a/frontend/app/src/screens/user-profile/tab-update-password.tsx +++ b/frontend/app/src/screens/user-profile/tab-update-password.tsx @@ -1,11 +1,11 @@ +import Content from "@/screens/layout/content"; +import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Card } from "@/shared/components/ui/card"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; import { useMutation } from "@/shared/hooks/useQuery"; -import Content from "@/screens/layout/content"; import { toast } from "react-toastify"; type UpdatePasswordFormData = { diff --git a/frontend/app/src/screens/user-profile/user-profile.tsx b/frontend/app/src/screens/user-profile/user-profile.tsx index cc2deeda8d..55e3bc1f07 100644 --- a/frontend/app/src/screens/user-profile/user-profile.tsx +++ b/frontend/app/src/screens/user-profile/user-profile.tsx @@ -1,13 +1,13 @@ -import { Avatar } from "@/shared/components/display/avatar"; -import { Tabs } from "@/shared/components/tabs"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; -import { useTitle } from "@/shared/hooks/useTitle"; import ErrorScreen from "@/screens/errors/error-screen"; import Content from "@/screens/layout/content"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { genericsState } from "@/screens/schema/schema.atom"; +import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; +import { Avatar } from "@/shared/components/display/avatar"; +import { Tabs } from "@/shared/components/tabs"; +import { useTitle } from "@/shared/hooks/useTitle"; import { gql, useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx index 778dd14b17..d0b2df89e9 100644 --- a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx +++ b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx @@ -1,6 +1,6 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { getNewToken } from "@/shared/hooks/useAuth"; import { ApolloClient, diff --git a/frontend/app/src/shared/api/rest/client.ts b/frontend/app/src/shared/api/rest/client.ts index c4339d2a9c..dd1c486bd8 100644 --- a/frontend/app/src/shared/api/rest/client.ts +++ b/frontend/app/src/shared/api/rest/client.ts @@ -4,8 +4,8 @@ import createClient, { Middleware } from "openapi-fetch"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { getNewToken } from "@/shared/hooks/useAuth"; import type { paths } from "@/shared/api/rest/types.generated"; +import { getNewToken } from "@/shared/hooks/useAuth"; export const queryClient = new QueryClient({ defaultOptions: { diff --git a/frontend/app/src/shared/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx index e3ce536292..285ebb3711 100644 --- a/frontend/app/src/shared/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -1,3 +1,14 @@ +import { + INFRAHUB_DISCORD_URL, + INFRAHUB_DOC_LOCAL, + INFRAHUB_GITHUB_URL, + INFRAHUB_SWAGGER_DOC_URL, +} from "@/config/config"; +import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; +import { AppVersion } from "@/screens/layout/app-version"; +import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; +import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Avatar } from "@/shared/components/display/avatar"; import { Skeleton } from "@/shared/components/skeleton"; @@ -9,18 +20,7 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { - INFRAHUB_DISCORD_URL, - INFRAHUB_DOC_LOCAL, - INFRAHUB_GITHUB_URL, - INFRAHUB_SWAGGER_DOC_URL, -} from "@/config/config"; -import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; -import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; import { useAuth } from "@/shared/hooks/useAuth"; -import { AppVersion } from "@/screens/layout/app-version"; -import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; -import { constructPath } from "@/shared/api/rest/fetch"; import { gql, useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx index c6173ad630..640689f952 100644 --- a/frontend/app/src/shared/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -9,6 +9,7 @@ import { useEffect, useState } from "react"; import { StringParam, useQueryParam } from "use-query-params"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { constructPath } from "@/shared/api/rest/fetch"; import { ComboboxItem } from "@/shared/components/ui/combobox"; import { Command, @@ -18,7 +19,6 @@ import { CommandList, } from "@/shared/components/ui/command"; import { useAuth } from "@/shared/hooks/useAuth"; -import { constructPath } from "@/shared/api/rest/fetch"; import { useCommandState } from "cmdk"; import { Button, ButtonWithTooltip, LinkButton } from "./buttons/button-primitive"; import BranchCreateForm from "./form/branch-create-form"; diff --git a/frontend/app/src/shared/components/conversations/add-comment.tsx b/frontend/app/src/shared/components/conversations/add-comment.tsx index df514b67ea..6b2340e82b 100644 --- a/frontend/app/src/shared/components/conversations/add-comment.tsx +++ b/frontend/app/src/shared/components/conversations/add-comment.tsx @@ -1,9 +1,9 @@ +import { constructPath } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import TextareaField from "@/shared/components/form/fields/textarea.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormRef, FormSubmit } from "@/shared/components/ui/form"; import { useAuth } from "@/shared/hooks/useAuth"; -import { constructPath } from "@/shared/api/rest/fetch"; import { ReactElement, forwardRef } from "react"; import { useLocation } from "react-router-dom"; diff --git a/frontend/app/src/shared/components/display/meta-details-tooltips.tsx b/frontend/app/src/shared/components/display/meta-details-tooltips.tsx index e4b9feb825..e4a16a8bf9 100644 --- a/frontend/app/src/shared/components/display/meta-details-tooltips.tsx +++ b/frontend/app/src/shared/components/display/meta-details-tooltips.tsx @@ -1,11 +1,11 @@ +import { AnyAttribute } from "@/shared/api/graphql/generated/graphql"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; import { Link } from "@/shared/components/ui/link"; import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; -import { AnyAttribute } from "@/shared/api/graphql/generated/graphql"; import { formatFullDate, formatRelativeTimeFromNow } from "@/shared/utils/date"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import React from "react"; diff --git a/frontend/app/src/shared/components/display/password-display.tsx b/frontend/app/src/shared/components/display/password-display.tsx index 49b49eb6e8..097d85c342 100644 --- a/frontend/app/src/shared/components/display/password-display.tsx +++ b/frontend/app/src/shared/components/display/password-display.tsx @@ -1,5 +1,5 @@ -import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { MAX_PASSWORD_DOTS_DISPLAY, MAX_VALUE_LENGTH_DISPLAY } from "@/config/constants"; +import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/shared/components/display/slide-over.tsx b/frontend/app/src/shared/components/display/slide-over.tsx index bfd0c49736..714912382a 100644 --- a/frontend/app/src/shared/components/display/slide-over.tsx +++ b/frontend/app/src/shared/components/display/slide-over.tsx @@ -1,8 +1,8 @@ +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Badge } from "@/shared/components/ui/badge"; import usePrevious from "@/shared/hooks/usePrevious"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { Dialog, Transition } from "@headlessui/react"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/shared/components/file.tsx b/frontend/app/src/shared/components/file.tsx index d34463eac2..a2bd4347d5 100644 --- a/frontend/app/src/shared/components/file.tsx +++ b/frontend/app/src/shared/components/file.tsx @@ -1,7 +1,7 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchStream } from "@/shared/api/rest/fetch"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useCallback, useEffect, useState } from "react"; import { toast } from "react-toastify"; import { CodeEditor } from "./editor/code-editor"; diff --git a/frontend/app/src/shared/components/filters/filter-form.tsx b/frontend/app/src/shared/components/filters/filter-form.tsx index 59297f860d..ca5b5592f3 100644 --- a/frontend/app/src/shared/components/filters/filter-form.tsx +++ b/frontend/app/src/shared/components/filters/filter-form.tsx @@ -1,3 +1,5 @@ +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { isGenericSchema } from "@/screens/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { FilterKindSelector } from "@/shared/components/filters/filter-kind-selector"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; @@ -5,8 +7,6 @@ import { DynamicInput } from "@/shared/components/form/dynamic-form"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; import { Filter } from "@/shared/hooks/useFilters"; -import { isGenericSchema } from "@/screens/schema/utils"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { classNames } from "@/shared/utils/common"; import { forwardRef } from "react"; diff --git a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx index 3754b43d5c..91289b81b2 100644 --- a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx +++ b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx @@ -1,3 +1,4 @@ +import { iGenericSchema, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; @@ -11,7 +12,6 @@ import { } from "@/shared/components/ui/combobox"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; import useFilters from "@/shared/hooks/useFilters"; -import { iGenericSchema, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { useAtomValue } from "jotai/index"; import { useState } from "react"; diff --git a/frontend/app/src/shared/components/filters/filters.tsx b/frontend/app/src/shared/components/filters/filters.tsx index d8cbdf6a38..9fcc789300 100644 --- a/frontend/app/src/shared/components/filters/filters.tsx +++ b/frontend/app/src/shared/components/filters/filters.tsx @@ -1,12 +1,12 @@ +import { SEARCH_FILTERS, TASK_OBJECT } from "@/config/constants"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { FilterForm } from "@/shared/components/filters/filter-form"; import { getFiltersFromFormData } from "@/shared/components/filters/utils/getFiltersFromFormData"; import { FormFieldValue } from "@/shared/components/form/type"; -import { SEARCH_FILTERS, TASK_OBJECT } from "@/config/constants"; import useFilters from "@/shared/hooks/useFilters"; import usePagination from "@/shared/hooks/usePagination"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { TasksFilterForm } from "./tasks-filter-form"; diff --git a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx index cd8d1b6738..2d61c16c30 100644 --- a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx +++ b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx @@ -1,8 +1,8 @@ +import { branchesState } from "@/screens/branches/branches.atom"; +import { TASK_STATES } from "@/screens/tasks/constants"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; import { Filter } from "@/shared/hooks/useFilters"; -import { TASK_STATES } from "@/screens/tasks/constants"; -import { branchesState } from "@/screens/branches/branches.atom"; import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { forwardRef } from "react"; diff --git a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts index f64bab8037..f09c630280 100644 --- a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts +++ b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts @@ -1,5 +1,3 @@ -import { Filter } from "@/shared/hooks/useFilters"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { AttributeType, Node, @@ -7,6 +5,8 @@ import { RelationshipOneType, RelationshipType, } from "@/screens/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { Filter } from "@/shared/hooks/useFilters"; export const getObjectFromFilters = ( schema: IModelSchema | null, diff --git a/frontend/app/src/shared/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx index 9c5e53be14..62726cd746 100644 --- a/frontend/app/src/shared/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -1,13 +1,13 @@ +import { QSP } from "@/config/qsp"; +import { branchesState } from "@/screens/branches/branches.atom"; +import { Branch } from "@/shared/api/graphql/generated/graphql"; +import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; import InputField from "@/shared/components/form/fields/input.field"; import { isMinLength, isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { QSP } from "@/config/qsp"; import { useMutation } from "@/shared/hooks/useQuery"; -import { Branch } from "@/shared/api/graphql/generated/graphql"; -import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; -import { branchesState } from "@/screens/branches/branches.atom"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/components/form/dynamic-form.tsx b/frontend/app/src/shared/components/form/dynamic-form.tsx index 047b6fabb6..73311a0796 100644 --- a/frontend/app/src/shared/components/form/dynamic-form.tsx +++ b/frontend/app/src/shared/components/form/dynamic-form.tsx @@ -1,3 +1,6 @@ +import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; +import { getSchema } from "@/screens/schema/get-schema"; +import { isHierarchicalSchema } from "@/screens/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; import ColorField from "@/shared/components/form/fields/color.field"; @@ -15,9 +18,6 @@ import RelationshipField from "@/shared/components/form/fields/relationship.fiel import TextareaField from "@/shared/components/form/fields/textarea.field"; import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; -import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { getSchema } from "@/screens/schema/get-schema"; -import { isHierarchicalSchema } from "@/screens/schema/utils"; import { warnUnexpectedType } from "@/shared/utils/common"; import { forwardRef } from "react"; diff --git a/frontend/app/src/shared/components/form/fields/common.tsx b/frontend/app/src/shared/components/form/fields/common.tsx index bf568882ff..8aaefae32f 100644 --- a/frontend/app/src/shared/components/form/fields/common.tsx +++ b/frontend/app/src/shared/components/form/fields/common.tsx @@ -1,3 +1,4 @@ +import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { QuestionMark } from "@/shared/components/display/question-mark"; import { AttributeValueFromProfile, @@ -9,7 +10,6 @@ import { FormLabel } from "@/shared/components/ui/form"; import { LabelProps } from "@/shared/components/ui/label"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { classNames } from "@/shared/utils/common"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx index aea80a842b..4a77710e7a 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx @@ -1,13 +1,16 @@ -import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; -import { LabelFormField } from "@/shared/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; -import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; -import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; import { RelationshipHierarchicalInput, RelationshipHierarchicalManyInput, } from "@/screens/objects/relationships/ui/relationship-hierarchical-input"; +import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; +import { LabelFormField } from "@/shared/components/form/fields/common"; +import { + DynamicRelationshipFieldProps, + FormRelationshipValue, +} from "@/shared/components/form/type"; +import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; +import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; export interface RelationshipHierarchicalFieldProps extends Omit {} diff --git a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx index 30054e67f0..7420e5d8b0 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx @@ -1,12 +1,15 @@ import { LabelFormField } from "@/shared/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; +import { + DynamicRelationshipFieldProps, + FormRelationshipValue, +} from "@/shared/components/form/type"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; import { classNames } from "@/shared/utils/common"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; export interface RelationshipManyInputProps extends Omit {} diff --git a/frontend/app/src/shared/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx index a549f06945..07f296fec9 100644 --- a/frontend/app/src/shared/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,5 +1,11 @@ +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; import { LabelFormField } from "@/shared/components/form/fields/common"; -import { DynamicRelationshipFieldProps, FormRelationshipValue } from "@/shared/components/form/type"; +import { + DynamicRelationshipFieldProps, + FormRelationshipValue, +} from "@/shared/components/form/type"; import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; import { RelationshipInput } from "@/shared/components/inputs/relationship-one"; import { Badge } from "@/shared/components/ui/badge"; @@ -12,11 +18,8 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; import useQuery from "@/shared/hooks/useQuery"; import { store } from "@/shared/stores"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/shared/components/form/generic-object-form.tsx b/frontend/app/src/shared/components/form/generic-object-form.tsx index a274801852..da8d4ec37e 100644 --- a/frontend/app/src/shared/components/form/generic-object-form.tsx +++ b/frontend/app/src/shared/components/form/generic-object-form.tsx @@ -1,7 +1,7 @@ -import { GenericSelector } from "@/shared/components/form/generic-selector"; -import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import NoDataFound from "@/screens/errors/no-data-found"; import { iGenericSchema } from "@/screens/schema/schema.atom"; +import { GenericSelector } from "@/shared/components/form/generic-selector"; +import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import { useState } from "react"; interface GenericObjectFormProps extends Omit { diff --git a/frontend/app/src/shared/components/form/generic-selector.tsx b/frontend/app/src/shared/components/form/generic-selector.tsx index 97e747ac4c..6476c2bbf4 100644 --- a/frontend/app/src/shared/components/form/generic-selector.tsx +++ b/frontend/app/src/shared/components/form/generic-selector.tsx @@ -1,3 +1,9 @@ +import { PROFILE_KIND } from "@/config/constants"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; +import { PermissionData } from "@/screens/permission/types"; +import { getPermission } from "@/screens/permission/utils"; +import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { Badge } from "@/shared/components/ui/badge"; import { Combobox, @@ -8,14 +14,8 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import Label from "@/shared/components/ui/label"; -import { PROFILE_KIND } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { PermissionData } from "@/screens/permission/types"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId, useState } from "react"; diff --git a/frontend/app/src/shared/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx index 7e9ee01a41..f789207102 100644 --- a/frontend/app/src/shared/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,25 +1,25 @@ +import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { NUMBER_POOL_KIND } from "@/screens/resource-manager/constants"; +import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; +import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; +import { GET_FORM_REQUIREMENTS } from "@/shared/api/graphql/queries/forms/getFormRequirements"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { useAuth } from "@/shared/hooks/useAuth"; import useFilters from "@/shared/hooks/useFilters"; import useQuery from "@/shared/hooks/useQuery"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { NUMBER_POOL_KIND } from "@/screens/resource-manager/constants"; -import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { GET_FORM_REQUIREMENTS } from "@/shared/api/graphql/queries/forms/getFormRequirements"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx index fa845182af..db5f081797 100644 --- a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx @@ -1,9 +1,9 @@ -import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; -import ObjectForm from "@/shared/components/form/object-form"; import { ARTIFACT_OBJECT } from "@/config/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Permission } from "@/screens/permission/types"; import { IModelSchema } from "@/screens/schema/schema.atom"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ObjectForm from "@/shared/components/form/object-form"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Button, ButtonProps } from "../buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx index 2893a51ab0..d23456189f 100644 --- a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx @@ -1,8 +1,8 @@ -import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; -import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; import { Permission } from "@/screens/permission/types"; import { IModelSchema } from "@/screens/schema/schema.atom"; +import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/shared/components/form/object-form.tsx b/frontend/app/src/shared/components/form/object-form.tsx index cc66548d51..da872a7720 100644 --- a/frontend/app/src/shared/components/form/object-form.tsx +++ b/frontend/app/src/shared/components/form/object-form.tsx @@ -1,7 +1,3 @@ -import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; -import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; -import { NodeForm, NodeFormSubmitParams } from "@/shared/components/form/node-form"; -import { NodeWithProfileForm } from "@/shared/components/form/node-with-profile-form"; import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, @@ -12,16 +8,20 @@ import { READONLY_REPOSITORY_KIND, REPOSITORY_KIND, } from "@/config/constants"; -import { useSchema } from "@/shared/hooks/useSchema"; import NoDataFound from "@/screens/errors/no-data-found"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { NumberPoolForm } from "@/screens/resource-manager/number-pool-form"; import { AccountForm } from "@/screens/role-management/account-form"; import { AccountGroupForm } from "@/screens/role-management/account-group-form"; import { AccountRoleForm } from "@/screens/role-management/account-role-form"; import { GlobalPermissionForm } from "@/screens/role-management/global-permissions-form"; import { ObjectPermissionForm } from "@/screens/role-management/object-permissions-form"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; +import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; +import { NodeForm, NodeFormSubmitParams } from "@/shared/components/form/node-form"; +import { NodeWithProfileForm } from "@/shared/components/form/node-with-profile-form"; +import { useSchema } from "@/shared/hooks/useSchema"; import { Suspense, lazy } from "react"; export type ProfileData = { diff --git a/frontend/app/src/shared/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx index db4f0ccf55..36f1def7e5 100644 --- a/frontend/app/src/shared/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,11 +1,11 @@ -import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; -import Label from "@/shared/components/ui/label"; -import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; -import useQuery from "@/shared/hooks/useQuery"; import ErrorScreen from "@/screens/errors/error-screen"; import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; import { getObjectAttributes } from "@/screens/object-items/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; +import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; +import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; +import Label from "@/shared/components/ui/label"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId } from "react"; diff --git a/frontend/app/src/shared/components/form/type.ts b/frontend/app/src/shared/components/form/type.ts index f454e8fc63..575d0e760a 100644 --- a/frontend/app/src/shared/components/form/type.ts +++ b/frontend/app/src/shared/components/form/type.ts @@ -1,10 +1,10 @@ +import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; +import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; import { SelectOption } from "@/shared/components/inputs/select"; import { FormField } from "@/shared/components/ui/form"; -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; import { ComponentProps } from "react"; type SourceType = "schema" | "user"; diff --git a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts index 2bb728688a..94ba37e62e 100644 --- a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts @@ -1,3 +1,5 @@ +import { AttributeType, FieldSchema } from "@/screens/objects/getObjectItemDisplayValue"; +import { LineageSource } from "@/shared/api/graphql/generated/graphql"; import { ProfileData } from "@/shared/components/form/object-form"; import { AttributeValueFromPool, @@ -5,8 +7,6 @@ import { AttributeValueFromUser, FormAttributeValue, } from "@/shared/components/form/type"; -import { LineageSource } from "@/shared/api/graphql/generated/graphql"; -import { AttributeType, FieldSchema } from "@/screens/objects/getObjectItemDisplayValue"; import * as R from "ramda"; export type GetFieldDefaultValue = { diff --git a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts index f5ad71803d..5c7d4ca72d 100644 --- a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts +++ b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts @@ -1,3 +1,7 @@ +import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; +import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; +import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicDropdownFieldProps, @@ -15,12 +19,8 @@ import { getRelationshipParent } from "@/shared/components/form/utils/getRelatio import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { isFieldDisabled } from "@/shared/components/form/utils/isFieldDisabled"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { AuthContextType } from "@/shared/hooks/useAuth"; -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { sortByOrderWeight } from "@/shared/utils/common"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; type GetFormFieldsFromSchema = { schema: IModelSchema; diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts index 449532800e..65beb39e0a 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts @@ -1,8 +1,8 @@ -import { FormRelationshipValue } from "@/shared/components/form/type"; +import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { store } from "@/shared/stores"; import { schemaState } from "@/screens/schema/schema.atom"; -import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { FormRelationshipValue } from "@/shared/components/form/type"; +import { store } from "@/shared/stores"; type GetRelationshipDefaultValueParams = { relationshipData: RelationshipType | undefined; diff --git a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts index 2c58141df1..46ca5cf169 100644 --- a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts @@ -1,8 +1,8 @@ -import { AuthContextType } from "@/shared/hooks/useAuth"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { PermissionDecisionData } from "@/screens/permission/types"; import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; +import { AuthContextType } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; export type IsFieldDisabledParams = { owner?: LineageOwner | null; diff --git a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts index d9943cb26a..60c4e2dac8 100644 --- a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts @@ -1,9 +1,9 @@ +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { DynamicFieldProps, FormFieldValue, isFormFieldValueFromPool, } from "@/shared/components/form/type"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; export const getCreateMutationFromFormData = ( fields: Array, diff --git a/frontend/app/src/shared/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx index e10b4320d9..2bfe82d6a9 100644 --- a/frontend/app/src/shared/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,3 +1,9 @@ +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { AttributeSchema } from "@/screens/schema/types"; +import { + DROPDOWN_ADD_MUTATION, + DROPDOWN_REMOVE_MUTATION, +} from "@/shared/api/graphql/mutations/schema/dropdown"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; @@ -13,13 +19,7 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import { CommandItem } from "@/shared/components/ui/command"; -import { - DROPDOWN_ADD_MUTATION, - DROPDOWN_REMOVE_MUTATION, -} from "@/shared/api/graphql/mutations/schema/dropdown"; import { useMutation } from "@/shared/hooks/useQuery"; -import { AttributeSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { classNames, getTextColor } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, HTMLAttributes, useState } from "react"; diff --git a/frontend/app/src/shared/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx index 4c5d9dcdfc..d68eebe3ff 100644 --- a/frontend/app/src/shared/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,3 +1,9 @@ +import { IModelSchema } from "@/screens/schema/schema.atom"; +import { AttributeSchema } from "@/screens/schema/types"; +import { + ENUM_ADD_MUTATION, + ENUM_REMOVE_MUTATION, +} from "@/shared/api/graphql/mutations/schema/enum"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; @@ -11,10 +17,7 @@ import { ComboboxList, ComboboxTrigger, } from "@/shared/components/ui/combobox"; -import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/shared/api/graphql/mutations/schema/enum"; import { useMutation } from "@/shared/hooks/useQuery"; -import { AttributeSchema } from "@/screens/schema/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, useState } from "react"; diff --git a/frontend/app/src/shared/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx index a441418478..2b55d5ce9f 100644 --- a/frontend/app/src/shared/components/inputs/relationship-many.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx @@ -1,3 +1,6 @@ +import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { @@ -10,12 +13,9 @@ import { import { PopoverTrigger } from "@/shared/components/ui/popover"; import { Spinner } from "@/shared/components/ui/spinner"; import { inputStyle } from "@/shared/components/ui/style"; -import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { useDebounce } from "@/shared/hooks/useDebounce"; import { useLazyQuery } from "@/shared/hooks/useQuery"; -import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; import { classNames } from "@/shared/utils/common"; -import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx index 1ec13b774d..47c686185a 100644 --- a/frontend/app/src/shared/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -1,3 +1,8 @@ +import { POOLS_DICTIONNARY, POOLS_PEER } from "@/screens/ipam/constants"; +import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; +import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { PoolValue } from "@/shared/components/form/pool-selector"; import { @@ -10,15 +15,10 @@ import { } from "@/shared/components/ui/combobox"; import { PopoverTrigger } from "@/shared/components/ui/popover"; import { Spinner } from "@/shared/components/ui/spinner"; -import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; -import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { useDebounce } from "@/shared/hooks/useDebounce"; import { useLazyQuery } from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; -import { POOLS_DICTIONNARY, POOLS_PEER } from "@/screens/ipam/constants"; -import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; import { classNames } from "@/shared/utils/common"; -import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { PopoverTriggerProps } from "@radix-ui/react-popover"; diff --git a/frontend/app/src/shared/components/menu/object-details-button.tsx b/frontend/app/src/shared/components/menu/object-details-button.tsx index c641ccbd89..a14d0779a8 100644 --- a/frontend/app/src/shared/components/menu/object-details-button.tsx +++ b/frontend/app/src/shared/components/menu/object-details-button.tsx @@ -1,3 +1,6 @@ +import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; +import { QSP } from "@/config/qsp"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, @@ -5,9 +8,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { QSP } from "@/config/qsp"; -import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; import { CopyToClipboard } from "../buttons/copy-to-clipboard"; diff --git a/frontend/app/src/shared/components/menu/object-help-button.tsx b/frontend/app/src/shared/components/menu/object-help-button.tsx index 822269bdf4..579cb3e1af 100644 --- a/frontend/app/src/shared/components/menu/object-help-button.tsx +++ b/frontend/app/src/shared/components/menu/object-help-button.tsx @@ -1,3 +1,5 @@ +import { INFRAHUB_DOC_LOCAL } from "@/config/config"; +import { constructPath } from "@/shared/api/rest/fetch"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, @@ -5,8 +7,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { INFRAHUB_DOC_LOCAL } from "@/config/config"; -import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/shared/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx index 814bc9710c..37b851865f 100644 --- a/frontend/app/src/shared/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/shared/components/search/search-actions.tsx b/frontend/app/src/shared/components/search/search-actions.tsx index cb44015784..3936be2322 100644 --- a/frontend/app/src/shared/components/search/search-actions.tsx +++ b/frontend/app/src/shared/components/search/search-actions.tsx @@ -1,10 +1,10 @@ -import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; -import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; -import { Badge } from "@/shared/components/ui/badge"; import { menuQueryOptions } from "@/screens/layout/menu-navigation/get-menu"; import { MenuItem } from "@/screens/layout/menu-navigation/types"; import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; +import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; +import { Badge } from "@/shared/components/ui/badge"; import { Icon } from "@iconify-icon/react"; import { useQuery } from "@tanstack/react-query"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/shared/components/search/search-anywhere-empty.tsx b/frontend/app/src/shared/components/search/search-anywhere-empty.tsx index 847bcfcf29..eefa734dd1 100644 --- a/frontend/app/src/shared/components/search/search-anywhere-empty.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-empty.tsx @@ -1,6 +1,6 @@ +import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; -import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { Icon } from "@iconify-icon/react"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx index 9e5996d94f..b1bdfdcd2e 100644 --- a/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx @@ -1,6 +1,6 @@ +import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import Kbd from "@/shared/components/ui/kbd"; -import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/search/search-docs.tsx b/frontend/app/src/shared/components/search/search-docs.tsx index fc49a088b2..5b5a2cbba1 100644 --- a/frontend/app/src/shared/components/search/search-docs.tsx +++ b/frontend/app/src/shared/components/search/search-docs.tsx @@ -1,7 +1,7 @@ +import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { searchDocsQueryOptions } from "@/shared/components/search/queries/get-doc-results"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; -import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { useDebounce } from "@/shared/hooks/useDebounce"; import { useQuery } from "@tanstack/react-query"; import { useCommandState } from "cmdk"; diff --git a/frontend/app/src/shared/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx index 342e611f1d..2071b09186 100644 --- a/frontend/app/src/shared/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,17 +1,17 @@ +import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; +import { POOLS_PEER } from "@/screens/ipam/constants"; +import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; +import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; +import { constructPath } from "@/shared/api/rest/fetch"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; import { Skeleton } from "@/shared/components/skeleton"; import { Badge } from "@/shared/components/ui/badge"; -import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; -import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; import { useDebounce } from "@/shared/hooks/useDebounce"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import useQuery from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; -import { POOLS_PEER } from "@/screens/ipam/constants"; -import { constructPath } from "@/shared/api/rest/fetch"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; import { Icon } from "@iconify-icon/react"; import { Command, useCommandState } from "cmdk"; import { format } from "date-fns"; diff --git a/frontend/app/src/shared/components/table/table.tsx b/frontend/app/src/shared/components/table/table.tsx index de825ce708..8882a3d5af 100644 --- a/frontend/app/src/shared/components/table/table.tsx +++ b/frontend/app/src/shared/components/table/table.tsx @@ -1,5 +1,5 @@ -import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import NoDataFound from "@/screens/errors/no-data-found"; +import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/shared/components/tabs.tsx b/frontend/app/src/shared/components/tabs.tsx index 91d84d398e..5830036f7e 100644 --- a/frontend/app/src/shared/components/tabs.tsx +++ b/frontend/app/src/shared/components/tabs.tsx @@ -1,5 +1,5 @@ -import { Pill } from "@/shared/components/display/pill"; import { QSP } from "@/config/qsp"; +import { Pill } from "@/shared/components/display/pill"; import { classNames } from "@/shared/utils/common"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/components/ui/id.tsx b/frontend/app/src/shared/components/ui/id.tsx index 3441e24d36..0d29a7d7a5 100644 --- a/frontend/app/src/shared/components/ui/id.tsx +++ b/frontend/app/src/shared/components/ui/id.tsx @@ -1,9 +1,9 @@ -import { Clipboard } from "@/shared/components/buttons/clipboard"; -import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; import { NODE_OBJECT } from "@/config/constants"; +import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getObjectDisplayLabel } from "@/shared/api/graphql/queries/objects/getObjectDisplayLabel"; +import { Clipboard } from "@/shared/components/buttons/clipboard"; +import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; import useQuery from "@/shared/hooks/useQuery"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { gql } from "@apollo/client"; type tId = { diff --git a/frontend/app/src/shared/hooks/useAuth.tsx b/frontend/app/src/shared/hooks/useAuth.tsx index 9a81862641..de342bff61 100644 --- a/frontend/app/src/shared/hooks/useAuth.tsx +++ b/frontend/app/src/shared/hooks/useAuth.tsx @@ -1,12 +1,12 @@ -import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { CONFIG } from "@/config/config"; +import { configState } from "@/config/config.atom"; import { REFRESH_TOKEN_KEY } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { fetchUrl } from "@/shared/api/rest/fetch"; import { components } from "@/shared/api/rest/types.generated"; -import { configState } from "@/config/config.atom"; +import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { parseJwt } from "@/shared/utils/common"; -import { fetchUrl } from "@/shared/api/rest/fetch"; import { ObservableQuery } from "@apollo/client"; import { useAtom } from "jotai/index"; import { ReactElement, ReactNode, createContext, useContext, useState } from "react"; diff --git a/frontend/app/src/shared/hooks/useObjectDetails.ts b/frontend/app/src/shared/hooks/useObjectDetails.ts index 8d9c405639..8f371f0238 100644 --- a/frontend/app/src/shared/hooks/useObjectDetails.ts +++ b/frontend/app/src/shared/hooks/useObjectDetails.ts @@ -1,10 +1,10 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; -import useQuery from "@/shared/hooks/useQuery"; +import { getSchemaObjectColumns, getTabs } from "@/screens/object-items/getSchemaObjectColumns"; import { getPermission } from "@/screens/permission/utils"; -import { isGenericSchema } from "@/screens/schema/utils"; import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; -import { getSchemaObjectColumns, getTabs } from "@/screens/object-items/getSchemaObjectColumns"; +import { isGenericSchema } from "@/screens/schema/utils"; +import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/hooks/useObjectItems.ts b/frontend/app/src/shared/hooks/useObjectItems.ts index 3bc51da308..d722367cda 100644 --- a/frontend/app/src/shared/hooks/useObjectItems.ts +++ b/frontend/app/src/shared/hooks/useObjectItems.ts @@ -1,11 +1,19 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; +import { + getObjectAttributes, + getObjectRelationships, +} from "@/screens/object-items/getSchemaObjectColumns"; +import { getPermission } from "@/screens/permission/utils"; +import { + IModelSchema, + genericsState, + profilesAtom, + schemaState, +} from "@/screens/schema/schema.atom"; import { getTokens } from "@/shared/api/graphql/queries/accounts/getTokens"; import { getObjectItemsPaginated } from "@/shared/api/graphql/queries/objects/getObjectItems"; import { Filter } from "@/shared/hooks/useFilters"; import useQuery from "@/shared/hooks/useQuery"; -import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema, genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; -import { getObjectAttributes, getObjectRelationships } from "@/screens/object-items/getSchemaObjectColumns"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/hooks/usePagination.ts b/frontend/app/src/shared/hooks/usePagination.ts index 767dd4b142..50b5fc86a5 100644 --- a/frontend/app/src/shared/hooks/usePagination.ts +++ b/frontend/app/src/shared/hooks/usePagination.ts @@ -1,5 +1,5 @@ -import { QSP } from "@/config/qsp"; import { configState } from "@/config/config.atom"; +import { QSP } from "@/config/qsp"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/hooks/useQuery.ts b/frontend/app/src/shared/hooks/useQuery.ts index fb7809fc3f..98f49ca136 100644 --- a/frontend/app/src/shared/hooks/useQuery.ts +++ b/frontend/app/src/shared/hooks/useQuery.ts @@ -1,6 +1,6 @@ import { CONFIG } from "@/config/config"; -import { WSClient } from "@/shared/api/graphql/websocket"; import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { WSClient } from "@/shared/api/graphql/websocket"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { OperationVariables, diff --git a/frontend/app/tests/components/render.tsx b/frontend/app/tests/components/render.tsx index a1ac328115..ff12cacb56 100644 --- a/frontend/app/tests/components/render.tsx +++ b/frontend/app/tests/components/render.tsx @@ -1,10 +1,10 @@ +import { store } from "@/shared/stores"; import { QueryClientProvider } from "@tanstack/react-query"; import { Provider } from "jotai"; import React from "react"; import { Slide, ToastContainer } from "react-toastify"; import { render as renderFromVitest } from "vitest-browser-react"; import { queryClient } from "../../src/shared/api/rest/client"; -import { store } from "@/shared/stores"; import "/src/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; diff --git a/frontend/app/tests/integrations/screens/account.cy.tsx b/frontend/app/tests/integrations/screens/account.cy.tsx index a391bf10a2..08b93b2e6f 100644 --- a/frontend/app/tests/integrations/screens/account.cy.tsx +++ b/frontend/app/tests/integrations/screens/account.cy.tsx @@ -1,10 +1,10 @@ /// import { MockedProvider } from "@apollo/client/testing"; -import { AccountMenu } from "../../../src/shared/components/account-menu"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { genericsState } from "../../../src/screens/schema/schema.atom"; +import { AccountMenu } from "../../../src/shared/components/account-menu"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx index 4343a471af..4ab6624f2e 100644 --- a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx +++ b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx @@ -4,11 +4,11 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { withSchemaContext } from "../../../src/screens/schema/withSchemaContext"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { ArtifactsDiff } from "../../../src/screens/diff/artifact-diff/artifacts-diff"; import { proposedChangedState } from "../../../src/screens/proposed-changes/proposedChanges.atom"; import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { withSchemaContext } from "../../../src/screens/schema/withSchemaContext"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index 284fa74cf6..8e5b772afe 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -3,11 +3,11 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; +import { configState } from "../../../src/config/config.atom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; -import { configState } from "../../../src/config/config.atom"; import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { mockedToken } from "../../fixtures/auth"; import { configMocks } from "../../mocks/data/config"; import { diff --git a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts index e14b8f00c7..cd52429146 100644 --- a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts +++ b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts @@ -1,6 +1,6 @@ +import { IModelSchema } from "@/screens/schema/schema.atom"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; import { Filter } from "@/shared/hooks/useFilters"; -import { IModelSchema } from "@/screens/schema/schema.atom"; import { describe, expect } from "vitest"; import { buildRelationshipSchema } from "../form/utils/getFormFieldsFromSchema.test"; diff --git a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts index 1661c3a998..87f273bf17 100644 --- a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts @@ -1,9 +1,9 @@ +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { ProfileData } from "@/shared/components/form/object-form"; import { GetFieldDefaultValue, getFieldDefaultValue, } from "@/shared/components/form/utils/getFieldDefaultValue"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { describe, expect, it } from "vitest"; import { buildAttributeSchema, buildRelationshipSchema } from "./getFormFieldsFromSchema.test"; diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index 6b93a4a015..7e93a8d8d3 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,11 +1,11 @@ -import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; -import { AuthContextType } from "@/shared/hooks/useAuth"; +import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/screens/schema/schema.atom"; import { RelationshipSchema } from "@/screens/schema/types"; import { components } from "@/shared/api/rest/types.generated"; +import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; +import { AuthContextType } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; import { describe, expect, it } from "vitest"; export const buildAttributeSchema = ( diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts index 6f2292ad06..85c944a746 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts @@ -1,8 +1,11 @@ -import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { + RelationshipManyType, + RelationshipOneType, +} from "@/screens/objects/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { store } from "@/shared/stores"; import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; -import { RelationshipManyType, RelationshipOneType } from "@/screens/objects/getObjectItemDisplayValue"; +import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; +import { store } from "@/shared/stores"; import { describe, expect } from "vitest"; const buildRelationshipOneData = (override: Partial): RelationshipOneType => ({ diff --git a/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts b/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts index 66c7a6b28a..5f42c054bf 100644 --- a/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts +++ b/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts @@ -1,4 +1,7 @@ -import { IsFieldDisabledParams, isFieldDisabled } from "@/shared/components/form/utils/isFieldDisabled"; +import { + IsFieldDisabledParams, + isFieldDisabled, +} from "@/shared/components/form/utils/isFieldDisabled"; import { describe, expect, it } from "vitest"; describe("isFieldDisabled", () => { diff --git a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts index 0801a0d743..42da04ee34 100644 --- a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts +++ b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts @@ -1,7 +1,7 @@ -import { TreeProps } from "@/shared/components/ui/tree"; import { TREE_ROOT_ID } from "@/screens/ipam/constants"; import { addItemsToTree } from "@/screens/ipam/ipam-tree/utils"; import { EMPTY_TREE } from "@/screens/ipam/ipam-tree/utils"; +import { TreeProps } from "@/shared/components/ui/tree"; import { describe, expect, it } from "vitest"; describe("Add items to tree", () => { diff --git a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts index 55af606031..f38f07de1a 100644 --- a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts +++ b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "vitest"; -import { TreeProps } from "../../../../src/shared/components/ui/tree"; import { generateRootCategoryNodeForDiffTree } from "../../../../src/screens/diff/diff-tree"; import { TREE_ROOT_ID } from "../../../../src/screens/ipam/constants"; +import { TreeProps } from "../../../../src/shared/components/ui/tree"; describe("Generate root category nodes for DiffTree", () => { it("should return an empty array when no nodes are provided", () => { diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index 2d8224612a..9245992cf9 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,7 +1,7 @@ -import { describe, expect, it } from "vitest"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; +import { describe, expect, it } from "vitest"; import { deviceDetailsMocksData, deviceDetailsMocksSchema, diff --git a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts index 9b6f632acb..bac1883a80 100644 --- a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts +++ b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts @@ -1,9 +1,9 @@ -import { describe, expect, it } from "vitest"; import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, } from "@/screens/object-items/getSchemaObjectColumns"; +import { describe, expect, it } from "vitest"; import { C_deviceAttributeColumns, C_deviceObjectColumns, diff --git a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts index 288c5d291a..cfb93b8da7 100644 --- a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts +++ b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts @@ -1,5 +1,5 @@ -import { describe, expect, it } from "vitest"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; +import { describe, expect, it } from "vitest"; import { C_JSON1, C_JSON1_OUTPUT, From e9912468f9d501b469108ddf866d49b7170cd24c Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:39:58 +0100 Subject: [PATCH 05/25] fix unit + component test --- .../domain/get-relationships/get-relationships.test.ts | 2 +- frontend/app/tests/components/form.story.tsx | 2 +- frontend/app/tests/components/render.tsx | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts index 125a4d05fb..3e71d9b441 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts @@ -7,7 +7,7 @@ import { beforeEach, describe, expect, it, vi } from "vitest"; vi.mock("@/screens/branches/get-current-branch"); vi.mock("@/screens/objects/relationships/api/queries"); -vi.mock("@/state"); +vi.mock("@/shared/stores"); describe("getRelationships", () => { beforeEach(() => { diff --git a/frontend/app/tests/components/form.story.tsx b/frontend/app/tests/components/form.story.tsx index c14c5a3ba2..37967eb863 100644 --- a/frontend/app/tests/components/form.story.tsx +++ b/frontend/app/tests/components/form.story.tsx @@ -1,4 +1,4 @@ -import { Form, FormProps, FormSubmit } from "@/shared/components/ui/form"; +import { Form, FormProps, FormSubmit } from "../../src/shared/components/ui/form"; export const TestForm = ({ children, onSubmit = () => {}, ...props }: FormProps) => ( diff --git a/frontend/app/tests/components/render.tsx b/frontend/app/tests/components/render.tsx index ff12cacb56..0364c41075 100644 --- a/frontend/app/tests/components/render.tsx +++ b/frontend/app/tests/components/render.tsx @@ -1,10 +1,10 @@ -import { store } from "@/shared/stores"; import { QueryClientProvider } from "@tanstack/react-query"; import { Provider } from "jotai"; import React from "react"; import { Slide, ToastContainer } from "react-toastify"; import { render as renderFromVitest } from "vitest-browser-react"; import { queryClient } from "../../src/shared/api/rest/client"; +import { store } from "../../src/shared/stores"; import "/src/app/styles/index.css"; import "react-toastify/dist/ReactToastify.css"; From c8c374fffee946e70cc8b9f18365fa9367c572fd Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 17:48:24 +0100 Subject: [PATCH 06/25] reorg entities --- frontend/app/src/app/app.tsx | 2 +- frontend/app/src/app/root.tsx | 2 +- frontend/app/src/app/router.tsx | 44 +++++++++--------- frontend/app/src/config/constants.tsx | 2 +- .../artifacts/generate.tsx | 0 .../object-item-details-paginated.tsx | 32 ++++++------- .../authentication}/login-sso-buttons.tsx | 0 .../authentication}/login.tsx | 2 +- .../branch-actions/branch-merge-button.tsx | 2 +- .../branch-actions/branch-rebase-button.tsx | 2 +- .../branch-actions/branch-validate-button.tsx | 2 +- .../graphql/getBranchActionState.ts | 0 .../branches/branch-details.tsx | 8 ++-- .../branches/branches-items.tsx | 4 +- .../branches/branches.atom.ts | 0 .../branches/branches.ts | 0 .../{screens => entities}/branches/diff.tsx | 0 .../branches/get-current-branch.test.ts | 4 +- .../branches/get-current-branch.ts | 2 +- .../branches/task-display.tsx | 4 +- .../artifact-diff/artifact-content-diff.tsx | 8 ++-- .../diff/artifact-diff/artifact-repo-diff.tsx | 8 ++-- .../diff/artifact-diff/artifacts-diff.tsx | 6 +-- .../diff/checks/check.tsx | 4 +- .../diff/checks/checks-summary.tsx | 8 ++-- .../diff/checks/checks.tsx | 2 +- .../diff/checks/conflict.tsx | 6 +-- .../diff/checks/validator-details.tsx | 6 +-- .../diff/checks/validator.tsx | 0 .../{screens => entities}/diff/diff-badge.tsx | 0 .../{screens => entities}/diff/diff-tree.tsx | 8 ++-- .../src/{screens => entities}/diff/diff.tsx | 0 .../diff/file-diff/file-content-diff.tsx | 8 ++-- .../diff/file-diff/file-repo-diff.tsx | 0 .../diff/file-diff/files-diff.tsx | 8 ++-- .../diff/node-diff/comments.tsx | 6 +-- .../diff/node-diff/conflict.tsx | 6 +-- .../diff/node-diff/index.tsx | 14 +++--- .../diff/node-diff/node-attribute.tsx | 8 ++-- .../diff/node-diff/node-property.tsx | 6 +-- .../node-diff/node-relationship-element.tsx | 8 ++-- .../diff/node-diff/node-relationship.tsx | 6 +-- .../diff/node-diff/node.tsx | 6 +-- .../diff/node-diff/thread.tsx | 6 +-- .../diff/node-diff/types.ts | 0 .../diff/node-diff/utils.tsx | 2 +- .../details/graphql-query-details-card.tsx | 8 ++-- .../graphql-query-details-page-skeleton.tsx | 0 .../details/graphql-query-viewer-card.tsx | 0 .../groups/add-group-form.tsx | 4 +- .../groups/add-group-trigger-button.tsx | 6 +-- .../groups-auto-generated-filter-button.tsx | 0 .../groups/groups-manager-trigger-button.tsx | 2 +- .../groups/groups-manager.tsx | 16 +++---- .../groups/object-groups-list.tsx | 6 +-- .../src/{screens => entities}/groups/types.ts | 0 .../ipam/common/ip-details-card.tsx | 10 ++-- .../ipam/common/namespace.state.ts | 0 .../ipam/common/utils.ts | 2 +- .../{screens => entities}/ipam/constants.ts | 0 .../ipam/ip-addresses/ip-address-summary.tsx | 20 ++++---- .../ip-addresses/ipam-ip-address-list.tsx | 16 +++---- .../ipam/ip-addresses/ipam-ip-address.tsx | 0 .../ipam/ip-namespace-selector.tsx | 2 +- .../ipam/ipam-router.tsx | 10 ++-- .../ipam/ipam-tree/ipam-tree-skeleton.tsx | 0 .../ipam/ipam-tree/ipam-tree.state.ts | 4 +- .../ipam/ipam-tree/ipam-tree.tsx | 8 ++-- .../ipam/ipam-tree/utils.ts | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 18 +++---- .../ipam-prefixes-summary-details.tsx | 14 +++--- .../prefixes/ipam-prefixes-summary-list.tsx | 18 +++---- .../ipam/prefixes/ipam-prefixes-summary.tsx | 0 .../ipam/prefixes/ipam-prefixes.tsx | 4 +- .../ipam/prefixes/ipam-summary-skeleton.tsx | 0 .../edit-form-hook/dynamic-control-types.ts | 0 .../objects}/edit-form-hook/form.tsx | 0 .../objects/getObjectItemDisplayValue.tsx | 6 +-- .../objects/hierarchical-tree.tsx | 12 ++--- .../objects/metaEditFieldDetails.atom.ts | 0 .../objects/object-header.tsx | 6 +-- .../action-buttons/details-buttons.tsx | 12 ++--- .../action-buttons/index.tsx | 0 .../action-buttons/relationships-buttons.tsx | 4 +- .../object-attribute-row.tsx | 0 .../object-item-details-paginated.tsx | 20 ++++---- .../relationship-details-paginated.tsx | 28 +++++------ .../relationships-details-paginated.tsx | 8 ++-- .../generateObjectEditFormQuery.ts | 2 +- .../object-item-edit-paginated.tsx | 12 ++--- .../getMutationMetaDetailsFromFormData.ts | 2 +- .../object-item-meta-edit.tsx | 6 +-- .../object-items/getSchemaObjectColumns.ts | 4 +- .../object-items/object-items-cell.tsx | 6 +-- .../object-items/object-items-paginated.tsx | 20 ++++---- .../{screens => entities}/objects/objects.ts | 10 ++-- .../objects/relationships/api/queries.ts | 0 .../get-relationships.query.ts | 4 +- .../get-relationships.test.ts | 10 ++-- .../get-relationships/get-relationships.ts | 6 +-- .../objects/relationships/domain/types.ts | 0 .../ui/add-relationship-action.tsx | 2 +- .../ui/relationship-combobox-list.tsx | 8 ++-- ...onship-hierarchical-combobox-list.test.tsx | 10 ++-- ...elationship-hierarchical-combobox-list.tsx | 10 ++-- .../ui/relationship-hierarchical-input.tsx | 8 ++-- .../objects/showMetaEdit.atom.ts | 0 .../{screens => entities}/objects/types.ts | 0 .../queries/getObjectPermissions.ts | 0 .../{screens => entities}/permission/types.ts | 0 .../{screens => entities}/permission/utils.ts | 2 +- .../action-button/pc-approve-button.tsx | 2 +- .../action-button/pc-close-button.tsx | 2 +- .../action-button/pc-merge-button.tsx | 2 +- .../proposed-changes/checks-tab.tsx | 0 .../proposed-changes/checks.ts | 0 .../proposed-changes/conversations.tsx | 6 +-- .../proposed-changes/counter.tsx | 2 +- .../proposed-changes/create-form.tsx | 6 +-- .../proposed-changes/diff-filter.tsx | 8 ++-- .../proposed-changes/diff-summary.tsx | 4 +- .../form/proposed-change-edit-form.tsx | 6 +-- .../proposed-changes/item-info.tsx | 0 .../proposed-changes/items.tsx | 16 +++---- .../proposed-change-details.tsx | 16 +++---- .../proposed-change-edit-trigger.tsx | 2 +- .../proposed-changes/proposed-changes.ts | 0 .../proposed-changes/proposedChanges.atom.ts | 0 .../proposed-changes/reviewers.tsx | 0 .../repository/repository-action-menu.tsx | 0 .../repository/repository-form.tsx | 2 +- .../common/ResourcePoolUtilization.tsx | 0 .../resource-manager/constants.ts | 0 .../resource-manager/graphql/resource-pool.ts | 0 .../resource-manager/number-pool-form.tsx | 10 ++-- .../resource-manager/resource-selector.tsx | 2 +- .../role-manager}/account-form.tsx | 4 +- .../role-manager}/account-group-form.tsx | 4 +- .../role-manager}/account-role-form.tsx | 4 +- .../role-manager}/accounts.tsx | 8 ++-- .../role-manager}/constants.ts | 0 .../role-manager}/global-permissions-form.tsx | 4 +- .../role-manager}/global-permissions.tsx | 8 ++-- .../role-manager}/group-member.tsx | 0 .../role-manager}/groups.tsx | 8 ++-- .../role-manager}/index.tsx | 10 ++-- .../role-manager}/object-permissions-form.tsx | 4 +- .../role-manager}/object-permissions.tsx | 8 ++-- .../role-manager}/relationship-display.tsx | 0 .../role-manager}/roles.tsx | 8 ++-- .../schema/attribute-display.tsx | 0 .../schema/get-schema.test.ts | 2 +- .../schema/get-schema.ts | 2 +- .../schema/relationship-display.tsx | 0 .../schema/schema-help-menu.tsx | 4 +- .../schema/schema-selector.tsx | 4 +- .../schema/schema-viewer.tsx | 4 +- .../schema/schema.atom.ts | 0 .../schema/schemaKindLabel.atom.ts | 0 .../schema/schemaKindName.atom.ts | 0 .../{screens => entities}/schema/styled.tsx | 0 .../src/{screens => entities}/schema/types.ts | 0 .../schema/utils.test.ts | 2 +- .../src/{screens => entities}/schema/utils.ts | 2 +- .../schema/withSchemaContext.tsx | 12 ++--- .../{screens => entities}/tasks/constants.ts | 0 .../src/{screens => entities}/tasks/logs.tsx | 0 .../tasks/task-item-details.tsx | 4 +- .../tasks/task-items.tsx | 6 +-- .../user-profile/tab-profile.tsx | 10 ++-- .../user-profile/tab-tokens.tsx | 6 +-- .../user-profile/tab-update-password.tsx | 2 +- .../user-profile/token-schema.ts | 0 .../user-profile/user-profile.tsx | 10 ++-- frontend/app/src/pages/auth-callback.tsx | 2 +- frontend/app/src/pages/branches/details.tsx | 12 ++--- frontend/app/src/pages/branches/index.tsx | 2 +- frontend/app/src/pages/graphql/index.tsx | 2 +- frontend/app/src/pages/homepage.tsx | 2 +- frontend/app/src/pages/ipam/layout.tsx | 6 +-- frontend/app/src/pages/login.tsx | 2 +- .../graphql-query-details.tsx | 18 +++---- frontend/app/src/pages/objects/layout.tsx | 12 ++--- .../app/src/pages/objects/object-details.tsx | 16 +++---- .../app/src/pages/objects/object-items.tsx | 6 +-- frontend/app/src/pages/profile.tsx | 2 +- .../src/pages/proposed-changes/details.tsx | 28 +++++------ .../app/src/pages/proposed-changes/items.tsx | 2 +- .../app/src/pages/proposed-changes/new.tsx | 14 +++--- .../app/src/pages/resource-manager/index.tsx | 12 ++--- .../resource-allocation-details.tsx | 6 +-- .../resource-pool-details.tsx | 24 +++++----- .../app/src/pages/role-management/index.tsx | 12 ++--- frontend/app/src/pages/schema.tsx | 8 ++-- frontend/app/src/pages/tasks/index.tsx | 2 +- frontend/app/src/pages/tasks/task-details.tsx | 8 ++-- .../src/screens/loading-screen/loading.gif | Bin 115709 -> 0 bytes .../mutations/groups/updateGroupsQuery.ts | 2 +- frontend/app/src/shared/api/graphql/utils.ts | 2 +- .../src/shared/components/account-menu.tsx | 4 +- .../src/shared/components/branch-selector.tsx | 4 +- .../src/shared/components/buttons/button.tsx | 2 +- .../components/conversations/thread.tsx | 8 ++-- .../src/shared/components/display/avatar.tsx | 2 +- .../src/shared/components/display/pill.tsx | 2 +- .../components/display/properties-popover.tsx | 6 +-- .../components/display/sidepanel-title.tsx | 2 +- .../shared/components/display/slide-over.tsx | 4 +- .../components}/errors/error-fallback.tsx | 0 .../components}/errors/error-screen.tsx | 0 .../components}/errors/no-data-found.tsx | 0 .../errors/unauthorized-screen.tsx | 0 frontend/app/src/shared/components/file.tsx | 4 +- .../shared/components/filters/filter-form.tsx | 4 +- .../filters/filter-kind-selector.tsx | 2 +- .../src/shared/components/filters/filters.tsx | 2 +- .../components/filters/tasks-filter-form.tsx | 4 +- .../filters/utils/getObjectFromFilters.ts | 4 +- .../components/form/branch-create-form.tsx | 2 +- .../shared/components/form/dynamic-form.tsx | 4 +- .../shared/components/form/fields/common.tsx | 2 +- .../relationship-hierarchical.field.tsx | 4 +- .../form/fields/relationship-many.field.tsx | 2 +- .../form/fields/relationship.field.tsx | 4 +- .../components/form/generic-object-form.tsx | 4 +- .../components/form/generic-selector.tsx | 10 ++-- .../shared/components/form/name-select.tsx | 2 +- .../src/shared/components/form/node-form.tsx | 10 ++-- .../shared/components/form/node-select.tsx | 2 +- .../form/object-create-form-trigger.tsx | 4 +- .../form/object-edit-slide-over-trigger.tsx | 6 +-- .../shared/components/form/object-form.tsx | 20 ++++---- .../components/form/profiles-selector.tsx | 8 ++-- .../app/src/shared/components/form/type.ts | 8 ++-- .../form/utils/getFieldDefaultValue.ts | 2 +- .../form/utils/getFormFieldsFromSchema.ts | 6 +-- .../form/utils/getRelationshipDefaultValue.ts | 6 +-- .../form/utils/getRelationshipParent.ts | 2 +- .../form/utils/getRelationshipsForForm.ts | 2 +- .../components/form/utils/isFieldDisabled.ts | 4 +- .../getCreateMutationFromFormData.ts | 2 +- .../src/shared/components/inputs/dropdown.tsx | 4 +- .../app/src/shared/components/inputs/enum.tsx | 4 +- .../components/inputs/relationship-many.tsx | 4 +- .../components/inputs/relationship-one.tsx | 6 +-- .../components}/layout/app-version.tsx | 0 .../breadcrumb-navigation.tsx | 4 +- .../items/breadcrumb-branch-selector.tsx | 4 +- .../items/breadcrumb-dynamic-element.tsx | 10 ++-- .../items/breadcrumb-link.tsx | 2 +- .../items/breadcrumb-loading.tsx | 0 .../items/breadcrumb-object-selector.tsx | 8 ++-- .../items/breadcrumb-schema-selector.tsx | 8 ++-- .../layout/breadcrumb-navigation/style.ts | 0 .../layout/breadcrumb-navigation/type.ts | 0 .../components}/layout/content.tsx | 0 .../components}/layout/header.tsx | 2 +- .../components}/layout/layout.tsx | 10 ++-- .../components}/layout/logo.png | Bin .../components/collapsed-button.tsx | 0 .../components/menu-section-internal.tsx | 6 +-- .../components/menu-section-object.tsx | 6 +-- .../components/object-avatar.tsx | 0 .../layout/menu-navigation/get-menu.ts | 4 +- .../menu-navigation/menu-navigation.tsx | 8 ++-- .../layout/menu-navigation/styles.tsx | 0 .../layout/menu-navigation/types.ts | 0 .../components}/layout/sidebar.tsx | 2 +- .../components}/layout/tasks-status.tsx | 2 +- .../components}/loading-screen.tsx | 0 .../components/modals/modal-delete-object.tsx | 2 +- .../components/search/search-actions.tsx | 6 +-- .../search/search-anywhere-trigger.tsx | 2 +- .../shared/components/search/search-nodes.tsx | 6 +-- .../app/src/shared/components/table/table.tsx | 4 +- frontend/app/src/shared/components/ui/id.tsx | 2 +- .../app/src/shared/hooks/useObjectDetails.ts | 11 +++-- .../app/src/shared/hooks/useObjectItems.ts | 6 +-- frontend/app/src/shared/hooks/useQuery.ts | 2 +- frontend/app/src/shared/hooks/useSchema.ts | 2 +- frontend/app/tests/fake/schema.ts | 2 +- .../tests/integrations/screens/account.cy.tsx | 2 +- .../integrations/screens/artifact-diff.cy.tsx | 8 ++-- .../integrations/screens/branche-items.cy.tsx | 4 +- .../integrations/screens/conversations.cy.tsx | 6 +-- .../object-details-relationships.cy.tsx | 2 +- .../screens/object-details.cy.tsx | 2 +- .../integrations/screens/object-fields.cy.tsx | 2 +- .../screens/object-items-deletion.cy.tsx | 2 +- .../integrations/screens/object-items.cy.tsx | 2 +- .../filters/getObjectFromFilters.test.ts | 2 +- .../form/utils/getFieldDefaultValue.test.ts | 2 +- .../utils/getFormFieldsFromSchema.test.ts | 8 ++-- .../utils/getRelationshipDefaultValue.test.ts | 6 +-- .../components/tree/addItemsToTree.test.ts | 6 +-- .../formatDiffNodesToDiffTree.test.ts | 6 +-- ...enerateRootCategoryNodeForDiffTree.test.ts | 4 +- ...getMutationMetaDetailsFromFormData.test.ts | 2 +- .../unit/utils/getSchemaObjectColumns.test.ts | 2 +- 299 files changed, 724 insertions(+), 721 deletions(-) rename frontend/app/src/{screens => entities}/artifacts/generate.tsx (100%) rename frontend/app/src/{screens => entities}/artifacts/object-item-details-paginated.tsx (89%) rename frontend/app/src/{screens/authentification => entities/authentication}/login-sso-buttons.tsx (100%) rename frontend/app/src/{screens/authentification => entities/authentication}/login.tsx (96%) rename frontend/app/src/{screens => entities}/branches/branch-actions/branch-merge-button.tsx (96%) rename frontend/app/src/{screens => entities}/branches/branch-actions/branch-rebase-button.tsx (95%) rename frontend/app/src/{screens => entities}/branches/branch-actions/branch-validate-button.tsx (98%) rename frontend/app/src/{screens => entities}/branches/branch-actions/graphql/getBranchActionState.ts (100%) rename frontend/app/src/{screens => entities}/branches/branch-details.tsx (96%) rename frontend/app/src/{screens => entities}/branches/branches-items.tsx (96%) rename frontend/app/src/{screens => entities}/branches/branches.atom.ts (100%) rename frontend/app/src/{screens => entities}/branches/branches.ts (100%) rename frontend/app/src/{screens => entities}/branches/diff.tsx (100%) rename frontend/app/src/{screens => entities}/branches/get-current-branch.test.ts (85%) rename frontend/app/src/{screens => entities}/branches/get-current-branch.ts (78%) rename frontend/app/src/{screens => entities}/branches/task-display.tsx (96%) rename frontend/app/src/{screens => entities}/diff/artifact-diff/artifact-content-diff.tsx (97%) rename frontend/app/src/{screens => entities}/diff/artifact-diff/artifact-repo-diff.tsx (86%) rename frontend/app/src/{screens => entities}/diff/artifact-diff/artifacts-diff.tsx (92%) rename frontend/app/src/{screens => entities}/diff/checks/check.tsx (97%) rename frontend/app/src/{screens => entities}/diff/checks/checks-summary.tsx (93%) rename frontend/app/src/{screens => entities}/diff/checks/checks.tsx (94%) rename frontend/app/src/{screens => entities}/diff/checks/conflict.tsx (96%) rename frontend/app/src/{screens => entities}/diff/checks/validator-details.tsx (89%) rename frontend/app/src/{screens => entities}/diff/checks/validator.tsx (100%) rename frontend/app/src/{screens => entities}/diff/diff-badge.tsx (100%) rename frontend/app/src/{screens => entities}/diff/diff-tree.tsx (95%) rename frontend/app/src/{screens => entities}/diff/diff.tsx (100%) rename frontend/app/src/{screens => entities}/diff/file-diff/file-content-diff.tsx (98%) rename frontend/app/src/{screens => entities}/diff/file-diff/file-repo-diff.tsx (100%) rename frontend/app/src/{screens => entities}/diff/file-diff/files-diff.tsx (89%) rename frontend/app/src/{screens => entities}/diff/node-diff/comments.tsx (96%) rename frontend/app/src/{screens => entities}/diff/node-diff/conflict.tsx (93%) rename frontend/app/src/{screens => entities}/diff/node-diff/index.tsx (95%) rename frontend/app/src/{screens => entities}/diff/node-diff/node-attribute.tsx (82%) rename frontend/app/src/{screens => entities}/diff/node-diff/node-property.tsx (91%) rename frontend/app/src/{screens => entities}/diff/node-diff/node-relationship-element.tsx (82%) rename frontend/app/src/{screens => entities}/diff/node-diff/node-relationship.tsx (91%) rename frontend/app/src/{screens => entities}/diff/node-diff/node.tsx (95%) rename frontend/app/src/{screens => entities}/diff/node-diff/thread.tsx (95%) rename frontend/app/src/{screens => entities}/diff/node-diff/types.ts (100%) rename frontend/app/src/{screens => entities}/diff/node-diff/utils.tsx (97%) rename frontend/app/src/{screens => entities}/graphql/details/graphql-query-details-card.tsx (95%) rename frontend/app/src/{screens => entities}/graphql/details/graphql-query-details-page-skeleton.tsx (100%) rename frontend/app/src/{screens => entities}/graphql/details/graphql-query-viewer-card.tsx (100%) rename frontend/app/src/{screens => entities}/groups/add-group-form.tsx (94%) rename frontend/app/src/{screens => entities}/groups/add-group-trigger-button.tsx (93%) rename frontend/app/src/{screens => entities}/groups/groups-auto-generated-filter-button.tsx (100%) rename frontend/app/src/{screens => entities}/groups/groups-manager-trigger-button.tsx (95%) rename frontend/app/src/{screens => entities}/groups/groups-manager.tsx (86%) rename frontend/app/src/{screens => entities}/groups/object-groups-list.tsx (95%) rename frontend/app/src/{screens => entities}/groups/types.ts (100%) rename frontend/app/src/{screens => entities}/ipam/common/ip-details-card.tsx (87%) rename frontend/app/src/{screens => entities}/ipam/common/namespace.state.ts (100%) rename frontend/app/src/{screens => entities}/ipam/common/utils.ts (82%) rename frontend/app/src/{screens => entities}/ipam/constants.ts (100%) rename frontend/app/src/{screens => entities}/ipam/ip-addresses/ip-address-summary.tsx (78%) rename frontend/app/src/{screens => entities}/ipam/ip-addresses/ipam-ip-address-list.tsx (93%) rename frontend/app/src/{screens => entities}/ipam/ip-addresses/ipam-ip-address.tsx (100%) rename frontend/app/src/{screens => entities}/ipam/ip-namespace-selector.tsx (98%) rename frontend/app/src/{screens => entities}/ipam/ipam-router.tsx (94%) rename frontend/app/src/{screens => entities}/ipam/ipam-tree/ipam-tree-skeleton.tsx (100%) rename frontend/app/src/{screens => entities}/ipam/ipam-tree/ipam-tree.state.ts (96%) rename frontend/app/src/{screens => entities}/ipam/ipam-tree/ipam-tree.tsx (93%) rename frontend/app/src/{screens => entities}/ipam/ipam-tree/utils.ts (97%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-prefix-details.tsx (92%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-prefixes-summary-details.tsx (84%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-prefixes-summary-list.tsx (91%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-prefixes-summary.tsx (100%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-prefixes.tsx (81%) rename frontend/app/src/{screens => entities}/ipam/prefixes/ipam-summary-skeleton.tsx (100%) rename frontend/app/src/{screens => entities/objects}/edit-form-hook/dynamic-control-types.ts (100%) rename frontend/app/src/{screens => entities/objects}/edit-form-hook/form.tsx (100%) rename frontend/app/src/{screens => entities}/objects/getObjectItemDisplayValue.tsx (96%) rename frontend/app/src/{screens => entities}/objects/hierarchical-tree.tsx (93%) rename frontend/app/src/{screens => entities}/objects/metaEditFieldDetails.atom.ts (100%) rename frontend/app/src/{screens => entities}/objects/object-header.tsx (94%) rename frontend/app/src/{screens => entities/objects}/object-item-details/action-buttons/details-buttons.tsx (88%) rename frontend/app/src/{screens => entities/objects}/object-item-details/action-buttons/index.tsx (100%) rename frontend/app/src/{screens => entities/objects}/object-item-details/action-buttons/relationships-buttons.tsx (97%) rename frontend/app/src/{screens => entities/objects}/object-item-details/object-attribute-row.tsx (100%) rename frontend/app/src/{screens => entities/objects}/object-item-details/object-item-details-paginated.tsx (92%) rename frontend/app/src/{screens => entities/objects}/object-item-details/relationship-details-paginated.tsx (93%) rename frontend/app/src/{screens => entities/objects}/object-item-details/relationships-details-paginated.tsx (93%) rename frontend/app/src/{screens => entities/objects}/object-item-edit/generateObjectEditFormQuery.ts (94%) rename frontend/app/src/{screens => entities/objects}/object-item-edit/object-item-edit-paginated.tsx (88%) rename frontend/app/src/{screens => entities/objects}/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts (96%) rename frontend/app/src/{screens => entities/objects}/object-item-meta-edit/object-item-meta-edit.tsx (93%) rename frontend/app/src/{screens => entities/objects}/object-items/getSchemaObjectColumns.ts (97%) rename frontend/app/src/{screens => entities/objects}/object-items/object-items-cell.tsx (91%) rename frontend/app/src/{screens => entities/objects}/object-items/object-items-paginated.tsx (90%) rename frontend/app/src/{screens => entities}/objects/objects.ts (85%) rename frontend/app/src/{screens => entities}/objects/relationships/api/queries.ts (100%) rename frontend/app/src/{screens => entities}/objects/relationships/domain/get-relationships/get-relationships.query.ts (84%) rename frontend/app/src/{screens => entities}/objects/relationships/domain/get-relationships/get-relationships.test.ts (86%) rename frontend/app/src/{screens => entities}/objects/relationships/domain/get-relationships/get-relationships.ts (83%) rename frontend/app/src/{screens => entities}/objects/relationships/domain/types.ts (100%) rename frontend/app/src/{screens => entities}/objects/relationships/ui/add-relationship-action.tsx (96%) rename frontend/app/src/{screens => entities}/objects/relationships/ui/relationship-combobox-list.tsx (86%) rename frontend/app/src/{screens => entities}/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx (92%) rename frontend/app/src/{screens => entities}/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx (93%) rename frontend/app/src/{screens => entities}/objects/relationships/ui/relationship-hierarchical-input.tsx (93%) rename frontend/app/src/{screens => entities}/objects/showMetaEdit.atom.ts (100%) rename frontend/app/src/{screens => entities}/objects/types.ts (100%) rename frontend/app/src/{screens => entities}/permission/queries/getObjectPermissions.ts (100%) rename frontend/app/src/{screens => entities}/permission/types.ts (100%) rename frontend/app/src/{screens => entities}/permission/utils.ts (98%) rename frontend/app/src/{screens => entities}/proposed-changes/action-button/pc-approve-button.tsx (97%) rename frontend/app/src/{screens => entities}/proposed-changes/action-button/pc-close-button.tsx (97%) rename frontend/app/src/{screens => entities}/proposed-changes/action-button/pc-merge-button.tsx (97%) rename frontend/app/src/{screens => entities}/proposed-changes/checks-tab.tsx (100%) rename frontend/app/src/{screens => entities}/proposed-changes/checks.ts (100%) rename frontend/app/src/{screens => entities}/proposed-changes/conversations.tsx (96%) rename frontend/app/src/{screens => entities}/proposed-changes/counter.tsx (91%) rename frontend/app/src/{screens => entities}/proposed-changes/create-form.tsx (96%) rename frontend/app/src/{screens => entities}/proposed-changes/diff-filter.tsx (94%) rename frontend/app/src/{screens => entities}/proposed-changes/diff-summary.tsx (96%) rename frontend/app/src/{screens => entities}/proposed-changes/form/proposed-change-edit-form.tsx (95%) rename frontend/app/src/{screens => entities}/proposed-changes/item-info.tsx (100%) rename frontend/app/src/{screens => entities}/proposed-changes/items.tsx (94%) rename frontend/app/src/{screens => entities}/proposed-changes/proposed-change-details.tsx (90%) rename frontend/app/src/{screens => entities}/proposed-changes/proposed-change-edit-trigger.tsx (96%) rename frontend/app/src/{screens => entities}/proposed-changes/proposed-changes.ts (100%) rename frontend/app/src/{screens => entities}/proposed-changes/proposedChanges.atom.ts (100%) rename frontend/app/src/{screens => entities}/proposed-changes/reviewers.tsx (100%) rename frontend/app/src/{screens => entities}/repository/repository-action-menu.tsx (100%) rename frontend/app/src/{screens => entities}/repository/repository-form.tsx (98%) rename frontend/app/src/{screens => entities}/resource-manager/common/ResourcePoolUtilization.tsx (100%) rename frontend/app/src/{screens => entities}/resource-manager/constants.ts (100%) rename frontend/app/src/{screens => entities}/resource-manager/graphql/resource-pool.ts (100%) rename frontend/app/src/{screens => entities}/resource-manager/number-pool-form.tsx (96%) rename frontend/app/src/{screens => entities}/resource-manager/resource-selector.tsx (96%) rename frontend/app/src/{screens/role-management => entities/role-manager}/account-form.tsx (96%) rename frontend/app/src/{screens/role-management => entities/role-manager}/account-group-form.tsx (97%) rename frontend/app/src/{screens/role-management => entities/role-manager}/account-role-form.tsx (96%) rename frontend/app/src/{screens/role-management => entities/role-manager}/accounts.tsx (95%) rename frontend/app/src/{screens/role-management => entities/role-manager}/constants.ts (100%) rename frontend/app/src/{screens/role-management => entities/role-manager}/global-permissions-form.tsx (97%) rename frontend/app/src/{screens/role-management => entities/role-manager}/global-permissions.tsx (95%) rename frontend/app/src/{screens/role-management => entities/role-manager}/group-member.tsx (100%) rename frontend/app/src/{screens/role-management => entities/role-manager}/groups.tsx (95%) rename frontend/app/src/{screens/role-management => entities/role-manager}/index.tsx (88%) rename frontend/app/src/{screens/role-management => entities/role-manager}/object-permissions-form.tsx (97%) rename frontend/app/src/{screens/role-management => entities/role-manager}/object-permissions.tsx (96%) rename frontend/app/src/{screens/role-management => entities/role-manager}/relationship-display.tsx (100%) rename frontend/app/src/{screens/role-management => entities/role-manager}/roles.tsx (95%) rename frontend/app/src/{screens => entities}/schema/attribute-display.tsx (100%) rename frontend/app/src/{screens => entities}/schema/get-schema.test.ts (95%) rename frontend/app/src/{screens => entities}/schema/get-schema.ts (97%) rename frontend/app/src/{screens => entities}/schema/relationship-display.tsx (100%) rename frontend/app/src/{screens => entities}/schema/schema-help-menu.tsx (93%) rename frontend/app/src/{screens => entities}/schema/schema-selector.tsx (97%) rename frontend/app/src/{screens => entities}/schema/schema-viewer.tsx (99%) rename frontend/app/src/{screens => entities}/schema/schema.atom.ts (100%) rename frontend/app/src/{screens => entities}/schema/schemaKindLabel.atom.ts (100%) rename frontend/app/src/{screens => entities}/schema/schemaKindName.atom.ts (100%) rename frontend/app/src/{screens => entities}/schema/styled.tsx (100%) rename frontend/app/src/{screens => entities}/schema/types.ts (100%) rename frontend/app/src/{screens => entities}/schema/utils.test.ts (99%) rename frontend/app/src/{screens => entities}/schema/utils.ts (96%) rename frontend/app/src/{screens => entities}/schema/withSchemaContext.tsx (92%) rename frontend/app/src/{screens => entities}/tasks/constants.ts (100%) rename frontend/app/src/{screens => entities}/tasks/logs.tsx (100%) rename frontend/app/src/{screens => entities}/tasks/task-item-details.tsx (96%) rename frontend/app/src/{screens => entities}/tasks/task-items.tsx (96%) rename frontend/app/src/{screens => entities}/user-profile/tab-profile.tsx (78%) rename frontend/app/src/{screens => entities}/user-profile/tab-tokens.tsx (85%) rename frontend/app/src/{screens => entities}/user-profile/tab-update-password.tsx (97%) rename frontend/app/src/{screens => entities}/user-profile/token-schema.ts (100%) rename frontend/app/src/{screens => entities}/user-profile/user-profile.tsx (88%) delete mode 100644 frontend/app/src/screens/loading-screen/loading.gif rename frontend/app/src/{screens => shared/components}/errors/error-fallback.tsx (100%) rename frontend/app/src/{screens => shared/components}/errors/error-screen.tsx (100%) rename frontend/app/src/{screens => shared/components}/errors/no-data-found.tsx (100%) rename frontend/app/src/{screens => shared/components}/errors/unauthorized-screen.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/app-version.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/breadcrumb-navigation.tsx (83%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx (91%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx (58%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-link.tsx (83%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx (77%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx (80%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/style.ts (100%) rename frontend/app/src/{screens => shared/components}/layout/breadcrumb-navigation/type.ts (100%) rename frontend/app/src/{screens => shared/components}/layout/content.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/header.tsx (87%) rename frontend/app/src/{screens => shared/components}/layout/layout.tsx (87%) rename frontend/app/src/{screens => shared/components}/layout/logo.png (100%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/components/collapsed-button.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/components/menu-section-internal.tsx (92%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/components/menu-section-object.tsx (94%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/components/object-avatar.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/get-menu.ts (84%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/menu-navigation.tsx (71%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/styles.tsx (100%) rename frontend/app/src/{screens => shared/components}/layout/menu-navigation/types.ts (100%) rename frontend/app/src/{screens => shared/components}/layout/sidebar.tsx (94%) rename frontend/app/src/{screens => shared/components}/layout/tasks-status.tsx (95%) rename frontend/app/src/{screens/loading-screen => shared/components}/loading-screen.tsx (100%) diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index 11781bef35..75f9e5e1c0 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -4,8 +4,8 @@ import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; -import ErrorFallback from "@/screens/errors/error-fallback"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import ErrorFallback from "@/shared/components/errors/error-fallback"; import { AuthProvider } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; import { ApolloProvider } from "@apollo/client"; diff --git a/frontend/app/src/app/root.tsx b/frontend/app/src/app/root.tsx index 6069eeadf2..d81ace0245 100644 --- a/frontend/app/src/app/root.tsx +++ b/frontend/app/src/app/root.tsx @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { Config, configState } from "@/config/config.atom"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchUrl } from "@/shared/api/rest/fetch"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useSetAtom } from "jotai"; import { ReactNode, useEffect, useState } from "react"; diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index 5630f5dc49..c4eac2457f 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,8 +1,8 @@ import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; -import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; +import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; import { constructPath } from "@/shared/api/rest/fetch"; import { RequireAuth } from "@/shared/hooks/useAuth"; import queryString from "query-string"; @@ -37,7 +37,7 @@ export const router = createBrowserRouter([ children: [ { path: "/", - lazy: () => import("@/screens/layout/layout"), + lazy: () => import("@/shared/components/layout/layout"), children: [ { index: true, @@ -285,11 +285,11 @@ export const router = createBrowserRouter([ children: [ { index: true, - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), }, { path: IPAM_ROUTE.ADDRESSES, - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), handle: { breadcrumb: () => { return { @@ -302,7 +302,7 @@ export const router = createBrowserRouter([ children: [ { path: ":ip_address", - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), handle: { breadcrumb: (match: UIMatch) => { return { @@ -317,7 +317,7 @@ export const router = createBrowserRouter([ }, { path: IPAM_ROUTE.PREFIXES, - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), handle: { breadcrumb: () => { return { @@ -330,7 +330,7 @@ export const router = createBrowserRouter([ children: [ { path: ":prefix", - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), handle: { breadcrumb: (match: UIMatch) => { return { @@ -343,7 +343,7 @@ export const router = createBrowserRouter([ children: [ { path: ":ip_address", - lazy: () => import("@/screens/ipam/ipam-router"), + lazy: () => import("@/entities/ipam/ipam-router"), handle: { breadcrumb: (match: UIMatch) => { return { @@ -361,79 +361,79 @@ export const router = createBrowserRouter([ ], }, { - path: "role-management", + path: "role-manager", lazy: () => import("@/pages/role-management"), handle: { breadcrumb: () => { return { type: "link", label: "Users & Permissions", - to: constructPath("/role-management"), + to: constructPath("/role-manager"), }; }, }, children: [ { index: true, - lazy: () => import("@/screens/role-management/accounts"), + lazy: () => import("@/entities/role-manager/accounts"), handle: { breadcrumb: () => { return { type: "link", label: "Accounts", - to: constructPath("/role-management/accounts"), + to: constructPath("/role-manager/accounts"), }; }, }, }, { path: "groups", - lazy: () => import("@/screens/role-management/groups"), + lazy: () => import("@/entities/role-manager/groups"), handle: { breadcrumb: () => { return { type: "link", label: "Groups", - to: constructPath("/role-management/groups"), + to: constructPath("/role-manager/groups"), }; }, }, }, { path: "roles", - lazy: () => import("@/screens/role-management/roles"), + lazy: () => import("@/entities/role-manager/roles"), handle: { breadcrumb: () => { return { type: "link", label: "Roles", - to: constructPath("/role-management/roles"), + to: constructPath("/role-manager/roles"), }; }, }, }, { path: "global-permissions", - lazy: () => import("@/screens/role-management/global-permissions"), + lazy: () => import("@/entities/role-manager/global-permissions"), handle: { breadcrumb: () => { return { type: "link", label: "Global Permissions", - to: constructPath("/role-management/global-permissions"), + to: constructPath("/role-manager/global-permissions"), }; }, }, }, { path: "object-permissions", - lazy: () => import("@/screens/role-management/object-permissions"), + lazy: () => import("@/entities/role-manager/object-permissions"), handle: { breadcrumb: () => { return { type: "link", label: "Object Permissions", - to: constructPath("/role-management/object-permissions"), + to: constructPath("/role-manager/object-permissions"), }; }, }, diff --git a/frontend/app/src/config/constants.tsx b/frontend/app/src/config/constants.tsx index 1dc8c2140a..5cda3d3c64 100644 --- a/frontend/app/src/config/constants.tsx +++ b/frontend/app/src/config/constants.tsx @@ -1,4 +1,4 @@ -import { RelationshipKind } from "@/screens/objects/types"; +import { RelationshipKind } from "@/entities/objects/types"; export const DEFAULT_BRANCH_NAME = "main"; diff --git a/frontend/app/src/screens/artifacts/generate.tsx b/frontend/app/src/entities/artifacts/generate.tsx similarity index 100% rename from frontend/app/src/screens/artifacts/generate.tsx rename to frontend/app/src/entities/artifacts/generate.tsx diff --git a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx b/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx similarity index 89% rename from frontend/app/src/screens/artifacts/object-item-details-paginated.tsx rename to frontend/app/src/entities/artifacts/object-item-details-paginated.tsx index 8b24c8642b..351d575288 100644 --- a/frontend/app/src/screens/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx @@ -1,31 +1,32 @@ import { CONFIG } from "@/config/config"; import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { Generate } from "@/screens/artifacts/generate"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import { GroupsManagerTriggerButton } from "@/screens/groups/groups-manager-trigger-button"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import RelationshipDetails from "@/screens/object-item-details/relationship-details-paginated"; -import { RelationshipsDetails } from "@/screens/object-item-details/relationships-details-paginated"; -import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { Generate } from "@/entities/artifacts/generate"; +import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; +import { getObjectItemDisplayValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; +import RelationshipDetails from "@/entities/objects/object-item-details/relationship-details-paginated"; +import { RelationshipsDetails } from "@/entities/objects/object-item-details/relationships-details-paginated"; +import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, getTabs, -} from "@/screens/object-items/getSchemaObjectColumns"; -import { getObjectItemDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; -import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +} from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import { getPermission } from "@/entities/permission/utils"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import { File } from "@/shared/components/file"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Tabs } from "@/shared/components/tabs"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; @@ -36,7 +37,6 @@ import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { Navigate } from "react-router-dom"; import { StringParam, useQueryParam } from "use-query-params"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; export default function ArtifactsDetails({ artifactId }: { artifactId: string }) { const objectid = artifactId; diff --git a/frontend/app/src/screens/authentification/login-sso-buttons.tsx b/frontend/app/src/entities/authentication/login-sso-buttons.tsx similarity index 100% rename from frontend/app/src/screens/authentification/login-sso-buttons.tsx rename to frontend/app/src/entities/authentication/login-sso-buttons.tsx diff --git a/frontend/app/src/screens/authentification/login.tsx b/frontend/app/src/entities/authentication/login.tsx similarity index 96% rename from frontend/app/src/screens/authentification/login.tsx rename to frontend/app/src/entities/authentication/login.tsx index 205442eddb..4a94e4d325 100644 --- a/frontend/app/src/screens/authentification/login.tsx +++ b/frontend/app/src/entities/authentication/login.tsx @@ -1,5 +1,5 @@ import { configState } from "@/config/config.atom"; -import { LoginWithSSOButtons } from "@/screens/authentification/login-sso-buttons"; +import { LoginWithSSOButtons } from "@/entities/authentication/login-sso-buttons"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx similarity index 96% rename from frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx rename to frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx index 4176ae377e..fb4c42d00b 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { BRANCH_MERGE_WORKFLOW } from "@/screens/tasks/constants"; +import { BRANCH_MERGE_WORKFLOW } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_MERGE } from "@/shared/api/graphql/mutations/branches/mergeBranch"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx similarity index 95% rename from frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx rename to frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx index a9f645f896..bed9c101a1 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; +import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; diff --git a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx similarity index 98% rename from frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx rename to frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx index 9740e25849..2b66674b49 100644 --- a/frontend/app/src/screens/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/screens/tasks/constants"; +import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_VALIDATE } from "@/shared/api/graphql/mutations/branches/validateBranch"; diff --git a/frontend/app/src/screens/branches/branch-actions/graphql/getBranchActionState.ts b/frontend/app/src/entities/branches/branch-actions/graphql/getBranchActionState.ts similarity index 100% rename from frontend/app/src/screens/branches/branch-actions/graphql/getBranchActionState.ts rename to frontend/app/src/entities/branches/branch-actions/graphql/getBranchActionState.ts diff --git a/frontend/app/src/screens/branches/branch-details.tsx b/frontend/app/src/entities/branches/branch-details.tsx similarity index 96% rename from frontend/app/src/screens/branches/branch-details.tsx rename to frontend/app/src/entities/branches/branch-details.tsx index 32d656453b..c2be3b9a98 100644 --- a/frontend/app/src/screens/branches/branch-details.tsx +++ b/frontend/app/src/entities/branches/branch-details.tsx @@ -1,8 +1,5 @@ import { QSP } from "@/config/qsp"; -import { branchesState } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { branchesState } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; @@ -11,6 +8,9 @@ import { Button, LinkButton } from "@/shared/components/buttons/button-primitive import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; import { DateDisplay } from "@/shared/components/display/date-display"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { List } from "@/shared/components/table/list"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/screens/branches/branches-items.tsx b/frontend/app/src/entities/branches/branches-items.tsx similarity index 96% rename from frontend/app/src/screens/branches/branches-items.tsx rename to frontend/app/src/entities/branches/branches-items.tsx index 725b9072c0..4540610d76 100644 --- a/frontend/app/src/screens/branches/branches-items.tsx +++ b/frontend/app/src/entities/branches/branches-items.tsx @@ -1,8 +1,8 @@ -import { branchesState } from "@/screens/branches/branches.atom"; -import Content from "@/screens/layout/content"; +import { branchesState } from "@/entities/branches/branches.atom"; import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; +import Content from "@/shared/components/layout/content"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { useLazyQuery } from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; diff --git a/frontend/app/src/screens/branches/branches.atom.ts b/frontend/app/src/entities/branches/branches.atom.ts similarity index 100% rename from frontend/app/src/screens/branches/branches.atom.ts rename to frontend/app/src/entities/branches/branches.atom.ts diff --git a/frontend/app/src/screens/branches/branches.ts b/frontend/app/src/entities/branches/branches.ts similarity index 100% rename from frontend/app/src/screens/branches/branches.ts rename to frontend/app/src/entities/branches/branches.ts diff --git a/frontend/app/src/screens/branches/diff.tsx b/frontend/app/src/entities/branches/diff.tsx similarity index 100% rename from frontend/app/src/screens/branches/diff.tsx rename to frontend/app/src/entities/branches/diff.tsx diff --git a/frontend/app/src/screens/branches/get-current-branch.test.ts b/frontend/app/src/entities/branches/get-current-branch.test.ts similarity index 85% rename from frontend/app/src/screens/branches/get-current-branch.test.ts rename to frontend/app/src/entities/branches/get-current-branch.test.ts index de29453f64..da626dbb22 100644 --- a/frontend/app/src/screens/branches/get-current-branch.test.ts +++ b/frontend/app/src/entities/branches/get-current-branch.test.ts @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateBranch } from "../../../tests/fake/branch"; diff --git a/frontend/app/src/screens/branches/get-current-branch.ts b/frontend/app/src/entities/branches/get-current-branch.ts similarity index 78% rename from frontend/app/src/screens/branches/get-current-branch.ts rename to frontend/app/src/entities/branches/get-current-branch.ts index 7f0ca4b516..c98a923dc0 100644 --- a/frontend/app/src/screens/branches/get-current-branch.ts +++ b/frontend/app/src/entities/branches/get-current-branch.ts @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { store } from "@/shared/stores"; export const getCurrentBranchName = () => { diff --git a/frontend/app/src/screens/branches/task-display.tsx b/frontend/app/src/entities/branches/task-display.tsx similarity index 96% rename from frontend/app/src/screens/branches/task-display.tsx rename to frontend/app/src/entities/branches/task-display.tsx index f248a435d5..3af16dae0b 100644 --- a/frontend/app/src/screens/branches/task-display.tsx +++ b/frontend/app/src/entities/branches/task-display.tsx @@ -2,11 +2,11 @@ import { TASK_OBJECT } from "@/config/constants"; import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; -import ErrorScreen from "../errors/error-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import { getSeverityBadge, tLog } from "../tasks/logs"; const background = { diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx similarity index 97% rename from frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx rename to frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx index af65224aa5..599fefe06c 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx @@ -4,10 +4,8 @@ import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; @@ -16,6 +14,8 @@ import { fetchStream } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx similarity index 86% rename from frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx rename to frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx index cee0024f97..ec4f38daea 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,10 +1,10 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { schemaState } from "@/entities/schema/schema.atom"; import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx similarity index 92% rename from frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx rename to frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx index 978e7cd110..4d48288eb0 100644 --- a/frontend/app/src/screens/diff/artifact-diff/artifacts-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx @@ -1,9 +1,9 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAtom } from "jotai"; import { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from "react"; diff --git a/frontend/app/src/screens/diff/checks/check.tsx b/frontend/app/src/entities/diff/checks/check.tsx similarity index 97% rename from frontend/app/src/screens/diff/checks/check.tsx rename to frontend/app/src/entities/diff/checks/check.tsx index 337047ea9b..5577619d26 100644 --- a/frontend/app/src/screens/diff/checks/check.tsx +++ b/frontend/app/src/entities/diff/checks/check.tsx @@ -1,11 +1,11 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; +import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; import { GET_CHECKS } from "@/shared/api/graphql/queries/diff/getCheckDetails"; import { MoreButton } from "@/shared/components/buttons/more-button"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; import { PopOver } from "@/shared/components/display/popover"; import { CodeEditor } from "@/shared/components/editor/code-editor"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { Skeleton } from "@/shared/components/skeleton"; import { List } from "@/shared/components/table/list"; import { Tooltip } from "@/shared/components/ui/tooltip"; diff --git a/frontend/app/src/screens/diff/checks/checks-summary.tsx b/frontend/app/src/entities/diff/checks/checks-summary.tsx similarity index 93% rename from frontend/app/src/screens/diff/checks/checks-summary.tsx rename to frontend/app/src/entities/diff/checks/checks-summary.tsx index 58a2b585db..6297fc642d 100644 --- a/frontend/app/src/screens/diff/checks/checks-summary.tsx +++ b/frontend/app/src/entities/diff/checks/checks-summary.tsx @@ -3,15 +3,15 @@ import { PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getValidatorsStats } from "@/screens/proposed-changes/checks"; -import { genericsState } from "@/screens/schema/schema.atom"; -import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; +import { getValidatorsStats } from "@/entities/proposed-changes/checks"; +import { genericsState } from "@/entities/schema/schema.atom"; +import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { runCheck } from "@/shared/api/graphql/mutations/diff/runCheck"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Retry } from "@/shared/components/buttons/retry"; import { PieChart } from "@/shared/components/display/pie-chart"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/diff/checks/checks.tsx b/frontend/app/src/entities/diff/checks/checks.tsx similarity index 94% rename from frontend/app/src/screens/diff/checks/checks.tsx rename to frontend/app/src/entities/diff/checks/checks.tsx index c2031020a6..d77c27151c 100644 --- a/frontend/app/src/screens/diff/checks/checks.tsx +++ b/frontend/app/src/entities/diff/checks/checks.tsx @@ -1,5 +1,5 @@ -import ErrorScreen from "@/screens/errors/error-screen"; import { GET_VALIDATORS } from "@/shared/api/graphql/queries/diff/getValidators"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import useQuery from "@/shared/hooks/useQuery"; import { forwardRef, useImperativeHandle } from "react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/diff/checks/conflict.tsx b/frontend/app/src/entities/diff/checks/conflict.tsx similarity index 96% rename from frontend/app/src/screens/diff/checks/conflict.tsx rename to frontend/app/src/entities/diff/checks/conflict.tsx index 07192e6aaf..abf5eb1241 100644 --- a/frontend/app/src/screens/diff/checks/conflict.tsx +++ b/frontend/app/src/entities/diff/checks/conflict.tsx @@ -1,8 +1,8 @@ import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { diffContent, getBadgeType } from "@/screens/diff/diff"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { diffContent, getBadgeType } from "@/entities/diff/diff"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { constructPath } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/screens/diff/checks/validator-details.tsx b/frontend/app/src/entities/diff/checks/validator-details.tsx similarity index 89% rename from frontend/app/src/screens/diff/checks/validator-details.tsx rename to frontend/app/src/entities/diff/checks/validator-details.tsx index b46451ffb3..93cc7ec38a 100644 --- a/frontend/app/src/screens/diff/checks/validator-details.tsx +++ b/frontend/app/src/entities/diff/checks/validator-details.tsx @@ -1,7 +1,7 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Pagination } from "@/shared/components/ui/pagination"; import usePagination from "@/shared/hooks/usePagination"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/screens/diff/checks/validator.tsx b/frontend/app/src/entities/diff/checks/validator.tsx similarity index 100% rename from frontend/app/src/screens/diff/checks/validator.tsx rename to frontend/app/src/entities/diff/checks/validator.tsx diff --git a/frontend/app/src/screens/diff/diff-badge.tsx b/frontend/app/src/entities/diff/diff-badge.tsx similarity index 100% rename from frontend/app/src/screens/diff/diff-badge.tsx rename to frontend/app/src/entities/diff/diff-badge.tsx diff --git a/frontend/app/src/screens/diff/diff-tree.tsx b/frontend/app/src/entities/diff/diff-tree.tsx similarity index 95% rename from frontend/app/src/screens/diff/diff-tree.tsx rename to frontend/app/src/entities/diff/diff-tree.tsx index 8977a315f6..b76c5cc002 100644 --- a/frontend/app/src/screens/diff/diff-tree.tsx +++ b/frontend/app/src/entities/diff/diff-tree.tsx @@ -1,7 +1,7 @@ -import { DiffNode } from "@/screens/diff/node-diff/types"; -import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import { TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { EMPTY_TREE, addItemsToTree } from "@/screens/ipam/ipam-tree/utils"; +import { DiffNode } from "@/entities/diff/node-diff/types"; +import { DiffBadge } from "@/entities/diff/node-diff/utils"; +import { TREE_ROOT_ID } from "@/entities/ipam/constants"; +import { EMPTY_TREE, addItemsToTree } from "@/entities/ipam/ipam-tree/utils"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import { useSchema } from "@/shared/hooks/useSchema"; diff --git a/frontend/app/src/screens/diff/diff.tsx b/frontend/app/src/entities/diff/diff.tsx similarity index 100% rename from frontend/app/src/screens/diff/diff.tsx rename to frontend/app/src/entities/diff/diff.tsx diff --git a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx similarity index 98% rename from frontend/app/src/screens/diff/file-diff/file-content-diff.tsx rename to frontend/app/src/entities/diff/file-diff/file-content-diff.tsx index fbd395102b..ff4c6a1bd3 100644 --- a/frontend/app/src/screens/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx @@ -4,10 +4,8 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; @@ -17,6 +15,8 @@ import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; import Accordion from "@/shared/components/display/accordion"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx b/frontend/app/src/entities/diff/file-diff/file-repo-diff.tsx similarity index 100% rename from frontend/app/src/screens/diff/file-diff/file-repo-diff.tsx rename to frontend/app/src/entities/diff/file-diff/file-repo-diff.tsx diff --git a/frontend/app/src/screens/diff/file-diff/files-diff.tsx b/frontend/app/src/entities/diff/file-diff/files-diff.tsx similarity index 89% rename from frontend/app/src/screens/diff/file-diff/files-diff.tsx rename to frontend/app/src/entities/diff/file-diff/files-diff.tsx index cf2c64bb4c..4f8d946f7c 100644 --- a/frontend/app/src/screens/diff/file-diff/files-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/files-diff.tsx @@ -1,10 +1,10 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useAtom } from "jotai"; import { forwardRef, useCallback, useEffect, useImperativeHandle, useState } from "react"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/screens/diff/node-diff/comments.tsx b/frontend/app/src/entities/diff/node-diff/comments.tsx similarity index 96% rename from frontend/app/src/screens/diff/node-diff/comments.tsx rename to frontend/app/src/entities/diff/node-diff/comments.tsx index d33ffa1235..44554e1d5d 100644 --- a/frontend/app/src/screens/diff/node-diff/comments.tsx +++ b/frontend/app/src/entities/diff/node-diff/comments.tsx @@ -2,9 +2,9 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { getThreadLabel } from "@/screens/diff/diff"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { getThreadLabel } from "@/entities/diff/diff"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; diff --git a/frontend/app/src/screens/diff/node-diff/conflict.tsx b/frontend/app/src/entities/diff/node-diff/conflict.tsx similarity index 93% rename from frontend/app/src/screens/diff/node-diff/conflict.tsx rename to frontend/app/src/entities/diff/node-diff/conflict.tsx index a7dda3b149..5e0925c6c7 100644 --- a/frontend/app/src/screens/diff/node-diff/conflict.tsx +++ b/frontend/app/src/entities/diff/node-diff/conflict.tsx @@ -1,9 +1,9 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; import { Checkbox } from "@/shared/components/inputs/checkbox"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Badge } from "@/shared/components/ui/badge"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/screens/diff/node-diff/index.tsx b/frontend/app/src/entities/diff/node-diff/index.tsx similarity index 95% rename from frontend/app/src/screens/diff/node-diff/index.tsx rename to frontend/app/src/entities/diff/node-diff/index.tsx index 303932184b..5c2c50842c 100644 --- a/frontend/app/src/screens/diff/node-diff/index.tsx +++ b/frontend/app/src/entities/diff/node-diff/index.tsx @@ -1,18 +1,18 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import DiffTree from "@/screens/diff/diff-tree"; -import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/screens/diff/node-diff/types"; -import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; -import { schemaState } from "@/screens/schema/schema.atom"; +import DiffTree from "@/entities/diff/diff-tree"; +import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/entities/diff/node-diff/types"; +import { DiffBadge } from "@/entities/diff/node-diff/utils"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DateDisplay } from "@/shared/components/display/date-display"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Badge } from "@/shared/components/ui/badge"; import { Tooltip } from "@/shared/components/ui/tooltip"; diff --git a/frontend/app/src/screens/diff/node-diff/node-attribute.tsx b/frontend/app/src/entities/diff/node-diff/node-attribute.tsx similarity index 82% rename from frontend/app/src/screens/diff/node-diff/node-attribute.tsx rename to frontend/app/src/entities/diff/node-diff/node-attribute.tsx index fe16b79bf6..c7a3c52e18 100644 --- a/frontend/app/src/screens/diff/node-diff/node-attribute.tsx +++ b/frontend/app/src/entities/diff/node-diff/node-attribute.tsx @@ -1,7 +1,7 @@ -import { DiffNodeProperty } from "@/screens/diff/node-diff/node-property"; -import { DiffThread } from "@/screens/diff/node-diff/thread"; -import { DiffAttribute, DiffStatus } from "@/screens/diff/node-diff/types"; -import { DiffRow } from "@/screens/diff/node-diff/utils"; +import { DiffNodeProperty } from "@/entities/diff/node-diff/node-property"; +import { DiffThread } from "@/entities/diff/node-diff/thread"; +import { DiffAttribute, DiffStatus } from "@/entities/diff/node-diff/types"; +import { DiffRow } from "@/entities/diff/node-diff/utils"; import { useParams } from "react-router-dom"; import { BadgeConflict } from "../diff-badge"; import { Conflict } from "./conflict"; diff --git a/frontend/app/src/screens/diff/node-diff/node-property.tsx b/frontend/app/src/entities/diff/node-diff/node-property.tsx similarity index 91% rename from frontend/app/src/screens/diff/node-diff/node-property.tsx rename to frontend/app/src/entities/diff/node-diff/node-property.tsx index 6a8d9bcef4..691a4d5ad1 100644 --- a/frontend/app/src/screens/diff/node-diff/node-property.tsx +++ b/frontend/app/src/entities/diff/node-diff/node-property.tsx @@ -1,6 +1,6 @@ -import { BadgeConflict } from "@/screens/diff/diff-badge"; -import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; -import { DiffRow, formatPropertyName, formatValue } from "@/screens/diff/node-diff/utils"; +import { BadgeConflict } from "@/entities/diff/diff-badge"; +import { DiffProperty, DiffStatus } from "@/entities/diff/node-diff/types"; +import { DiffRow, formatPropertyName, formatValue } from "@/entities/diff/node-diff/utils"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/screens/diff/node-diff/node-relationship-element.tsx b/frontend/app/src/entities/diff/node-diff/node-relationship-element.tsx similarity index 82% rename from frontend/app/src/screens/diff/node-diff/node-relationship-element.tsx rename to frontend/app/src/entities/diff/node-diff/node-relationship-element.tsx index 6e8cbc5f75..b4135fe314 100644 --- a/frontend/app/src/screens/diff/node-diff/node-relationship-element.tsx +++ b/frontend/app/src/entities/diff/node-diff/node-relationship-element.tsx @@ -1,7 +1,7 @@ -import { BadgeConflict } from "@/screens/diff/diff-badge"; -import { DiffThread } from "@/screens/diff/node-diff/thread"; -import { DiffRelationshipElement, DiffStatus } from "@/screens/diff/node-diff/types"; -import { DiffBadge, DiffRow } from "@/screens/diff/node-diff/utils"; +import { BadgeConflict } from "@/entities/diff/diff-badge"; +import { DiffThread } from "@/entities/diff/node-diff/thread"; +import { DiffRelationshipElement, DiffStatus } from "@/entities/diff/node-diff/types"; +import { DiffBadge, DiffRow } from "@/entities/diff/node-diff/utils"; import { useParams } from "react-router-dom"; import { DiffNodeProperty } from "./node-property"; diff --git a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx b/frontend/app/src/entities/diff/node-diff/node-relationship.tsx similarity index 91% rename from frontend/app/src/screens/diff/node-diff/node-relationship.tsx rename to frontend/app/src/entities/diff/node-diff/node-relationship.tsx index d1813fe739..0d99713bd6 100644 --- a/frontend/app/src/screens/diff/node-diff/node-relationship.tsx +++ b/frontend/app/src/entities/diff/node-diff/node-relationship.tsx @@ -1,6 +1,6 @@ -import { DiffThread } from "@/screens/diff/node-diff/thread"; -import { DiffRelationship, DiffStatus } from "@/screens/diff/node-diff/types"; -import { DiffRow } from "@/screens/diff/node-diff/utils"; +import { DiffThread } from "@/entities/diff/node-diff/thread"; +import { DiffRelationship, DiffStatus } from "@/entities/diff/node-diff/types"; +import { DiffRow } from "@/entities/diff/node-diff/utils"; import { Badge } from "@/shared/components/ui/badge"; import { Icon } from "@iconify-icon/react"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/screens/diff/node-diff/node.tsx b/frontend/app/src/entities/diff/node-diff/node.tsx similarity index 95% rename from frontend/app/src/screens/diff/node-diff/node.tsx rename to frontend/app/src/entities/diff/node-diff/node.tsx index 52879634d6..7de3530d40 100644 --- a/frontend/app/src/screens/diff/node-diff/node.tsx +++ b/frontend/app/src/entities/diff/node-diff/node.tsx @@ -1,6 +1,6 @@ -import type { DiffNode as DiffNodeType, PropertyType } from "@/screens/diff/node-diff/types"; -import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import type { DiffNode as DiffNodeType, PropertyType } from "@/entities/diff/node-diff/types"; +import { DiffBadge } from "@/entities/diff/node-diff/utils"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; import { Card } from "@/shared/components/ui/card"; diff --git a/frontend/app/src/screens/diff/node-diff/thread.tsx b/frontend/app/src/entities/diff/node-diff/thread.tsx similarity index 95% rename from frontend/app/src/screens/diff/node-diff/thread.tsx rename to frontend/app/src/entities/diff/node-diff/thread.tsx index 8d89cd8190..477546b3ea 100644 --- a/frontend/app/src/screens/diff/node-diff/thread.tsx +++ b/frontend/app/src/entities/diff/node-diff/thread.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; -import { getThreadLabel, getThreadTitle } from "@/screens/diff/diff"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { getThreadLabel, getThreadTitle } from "@/entities/diff/diff"; +import { schemaState } from "@/entities/schema/schema.atom"; import { getProposedChangesObjectThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads"; import { SidePanelTitle } from "@/shared/components/display/sidepanel-title"; import SlideOver from "@/shared/components/display/slide-over"; @@ -11,7 +11,7 @@ import { useAtom } from "jotai"; import { useContext, useState } from "react"; import { useParams } from "react-router-dom"; -import { getPermission } from "@/screens/permission/utils"; +import { getPermission } from "@/entities/permission/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; import { DiffContext } from "."; diff --git a/frontend/app/src/screens/diff/node-diff/types.ts b/frontend/app/src/entities/diff/node-diff/types.ts similarity index 100% rename from frontend/app/src/screens/diff/node-diff/types.ts rename to frontend/app/src/entities/diff/node-diff/types.ts diff --git a/frontend/app/src/screens/diff/node-diff/utils.tsx b/frontend/app/src/entities/diff/node-diff/utils.tsx similarity index 97% rename from frontend/app/src/screens/diff/node-diff/utils.tsx rename to frontend/app/src/entities/diff/node-diff/utils.tsx index 5ccdfa54c6..6b4b9149d9 100644 --- a/frontend/app/src/screens/diff/node-diff/utils.tsx +++ b/frontend/app/src/entities/diff/node-diff/utils.tsx @@ -1,4 +1,4 @@ -import { DiffProperty, DiffStatus } from "@/screens/diff/node-diff/types"; +import { DiffProperty, DiffStatus } from "@/entities/diff/node-diff/types"; import Accordion from "@/shared/components/display/accordion"; import { classNames, warnUnexpectedType } from "@/shared/utils/common"; import { capitalizeFirstLetter } from "@/shared/utils/string"; diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx similarity index 95% rename from frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx rename to frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx index 43bcf29eb5..4b2ceff7da 100644 --- a/frontend/app/src/screens/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx @@ -1,8 +1,8 @@ import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; -import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { Permission } from "@/screens/permission/types"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { AttributeType, ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { Permission } from "@/entities/permission/types"; +import { iNodeSchema } from "@/entities/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { constructPath } from "@/shared/api/rest/fetch"; import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; diff --git a/frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx b/frontend/app/src/entities/graphql/details/graphql-query-details-page-skeleton.tsx similarity index 100% rename from frontend/app/src/screens/graphql/details/graphql-query-details-page-skeleton.tsx rename to frontend/app/src/entities/graphql/details/graphql-query-details-page-skeleton.tsx diff --git a/frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx b/frontend/app/src/entities/graphql/details/graphql-query-viewer-card.tsx similarity index 100% rename from frontend/app/src/screens/graphql/details/graphql-query-viewer-card.tsx rename to frontend/app/src/entities/graphql/details/graphql-query-viewer-card.tsx diff --git a/frontend/app/src/screens/groups/add-group-form.tsx b/frontend/app/src/entities/groups/add-group-form.tsx similarity index 94% rename from frontend/app/src/screens/groups/add-group-form.tsx rename to frontend/app/src/entities/groups/add-group-form.tsx index 40e54c7797..6193f7e1e6 100644 --- a/frontend/app/src/screens/groups/add-group-form.tsx +++ b/frontend/app/src/entities/groups/add-group-form.tsx @@ -1,6 +1,6 @@ -import NoDataFound from "@/screens/errors/no-data-found"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/schema.atom"; import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { FormRelationshipValue, diff --git a/frontend/app/src/screens/groups/add-group-trigger-button.tsx b/frontend/app/src/entities/groups/add-group-trigger-button.tsx similarity index 93% rename from frontend/app/src/screens/groups/add-group-trigger-button.tsx rename to frontend/app/src/entities/groups/add-group-trigger-button.tsx index 588e87c4e8..0ebea6a4b7 100644 --- a/frontend/app/src/screens/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/entities/groups/add-group-trigger-button.tsx @@ -1,6 +1,6 @@ -import AddGroupForm from "@/screens/groups/add-group-form"; -import { GroupDataFromAPI } from "@/screens/groups/types"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; +import AddGroupForm from "@/entities/groups/add-group-form"; +import { GroupDataFromAPI } from "@/entities/groups/types"; +import { iNodeSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx b/frontend/app/src/entities/groups/groups-auto-generated-filter-button.tsx similarity index 100% rename from frontend/app/src/screens/groups/groups-auto-generated-filter-button.tsx rename to frontend/app/src/entities/groups/groups-auto-generated-filter-button.tsx diff --git a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx b/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx similarity index 95% rename from frontend/app/src/screens/groups/groups-manager-trigger-button.tsx rename to frontend/app/src/entities/groups/groups-manager-trigger-button.tsx index 07a60ec82b..113537fcfb 100644 --- a/frontend/app/src/screens/groups/groups-manager-trigger-button.tsx +++ b/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx @@ -1,4 +1,4 @@ -import { GroupsManager, GroupsManagerProps } from "@/screens/groups/groups-manager"; +import { GroupsManager, GroupsManagerProps } from "@/entities/groups/groups-manager"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; diff --git a/frontend/app/src/screens/groups/groups-manager.tsx b/frontend/app/src/entities/groups/groups-manager.tsx similarity index 86% rename from frontend/app/src/screens/groups/groups-manager.tsx rename to frontend/app/src/entities/groups/groups-manager.tsx index 8839e3349e..e25d063a3b 100644 --- a/frontend/app/src/screens/groups/groups-manager.tsx +++ b/frontend/app/src/entities/groups/groups-manager.tsx @@ -1,13 +1,13 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import AddGroupTriggerButton from "@/screens/groups/add-group-trigger-button"; -import ObjectGroupsList from "@/screens/groups/object-groups-list"; -import { GroupDataFromAPI } from "@/screens/groups/types"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import AddGroupTriggerButton from "@/entities/groups/add-group-trigger-button"; +import ObjectGroupsList from "@/entities/groups/object-groups-list"; +import { GroupDataFromAPI } from "@/entities/groups/types"; +import { getPermission } from "@/entities/permission/utils"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; import { Button } from "@/shared/components/buttons/button-primitive"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { SearchInput } from "@/shared/components/ui/search-input"; import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/groups/object-groups-list.tsx b/frontend/app/src/entities/groups/object-groups-list.tsx similarity index 95% rename from frontend/app/src/screens/groups/object-groups-list.tsx rename to frontend/app/src/entities/groups/object-groups-list.tsx index de1629a931..6731dd7fd0 100644 --- a/frontend/app/src/screens/groups/object-groups-list.tsx +++ b/frontend/app/src/entities/groups/object-groups-list.tsx @@ -1,7 +1,7 @@ import { QSP } from "@/config/qsp"; -import { GroupDataFromAPI } from "@/screens/groups/types"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { GroupDataFromAPI } from "@/entities/groups/types"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/groups/types.ts b/frontend/app/src/entities/groups/types.ts similarity index 100% rename from frontend/app/src/screens/groups/types.ts rename to frontend/app/src/entities/groups/types.ts diff --git a/frontend/app/src/screens/ipam/common/ip-details-card.tsx b/frontend/app/src/entities/ipam/common/ip-details-card.tsx similarity index 87% rename from frontend/app/src/screens/ipam/common/ip-details-card.tsx rename to frontend/app/src/entities/ipam/common/ip-details-card.tsx index 66036fe763..c0399d44ec 100644 --- a/frontend/app/src/screens/ipam/common/ip-details-card.tsx +++ b/frontend/app/src/entities/ipam/common/ip-details-card.tsx @@ -1,8 +1,8 @@ -import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; -import { AttributeType, ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; -import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; +import { AttributeType, ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { Permission } from "@/entities/permission/types"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; diff --git a/frontend/app/src/screens/ipam/common/namespace.state.ts b/frontend/app/src/entities/ipam/common/namespace.state.ts similarity index 100% rename from frontend/app/src/screens/ipam/common/namespace.state.ts rename to frontend/app/src/entities/ipam/common/namespace.state.ts diff --git a/frontend/app/src/screens/ipam/common/utils.ts b/frontend/app/src/entities/ipam/common/utils.ts similarity index 82% rename from frontend/app/src/screens/ipam/common/utils.ts rename to frontend/app/src/entities/ipam/common/utils.ts index b238527ea4..1131eb5f5e 100644 --- a/frontend/app/src/screens/ipam/common/utils.ts +++ b/frontend/app/src/entities/ipam/common/utils.ts @@ -1,4 +1,4 @@ -import { IPAM_QSP } from "@/screens/ipam/constants"; +import { IPAM_QSP } from "@/entities/ipam/constants"; import { constructPath, overrideQueryParams } from "@/shared/api/rest/fetch"; export const constructPathForIpam = (path: string, overrideParams?: overrideQueryParams[]) => diff --git a/frontend/app/src/screens/ipam/constants.ts b/frontend/app/src/entities/ipam/constants.ts similarity index 100% rename from frontend/app/src/screens/ipam/constants.ts rename to frontend/app/src/entities/ipam/constants.ts diff --git a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx similarity index 78% rename from frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx rename to frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx index b21e0ce3b1..cd39663f2d 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx @@ -1,15 +1,15 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; -import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/screens/ipam/constants"; -import { IpamSummarySkeleton } from "@/screens/ipam/prefixes/ipam-summary-skeleton"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/entities/ipam/constants"; +import { IpamSummarySkeleton } from "@/entities/ipam/prefixes/ipam-summary-skeleton"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getPermission } from "@/entities/permission/utils"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Link } from "@/shared/components/ui/link"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx similarity index 93% rename from frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx rename to frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx index d192cf0969..3c110fa062 100644 --- a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -1,23 +1,23 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IPAM_TABS, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC, -} from "@/screens/ipam/constants"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import { getPermission } from "@/screens/permission/utils"; +} from "@/entities/ipam/constants"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; import SlideOver from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { Table } from "@/shared/components/table/table"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address.tsx b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address.tsx similarity index 100% rename from frontend/app/src/screens/ipam/ip-addresses/ipam-ip-address.tsx rename to frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address.tsx diff --git a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx similarity index 98% rename from frontend/app/src/screens/ipam/ip-namespace-selector.tsx rename to frontend/app/src/entities/ipam/ip-namespace-selector.tsx index 839f8a02b0..42c28bfd86 100644 --- a/frontend/app/src/screens/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx @@ -1,4 +1,4 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; import { Skeleton } from "@/shared/components/skeleton"; diff --git a/frontend/app/src/screens/ipam/ipam-router.tsx b/frontend/app/src/entities/ipam/ipam-router.tsx similarity index 94% rename from frontend/app/src/screens/ipam/ipam-router.tsx rename to frontend/app/src/entities/ipam/ipam-router.tsx index 9aefd0258b..2a6b35ba56 100644 --- a/frontend/app/src/screens/ipam/ipam-router.tsx +++ b/frontend/app/src/entities/ipam/ipam-router.tsx @@ -1,10 +1,12 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { getPermission } from "@/entities/permission/utils"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-with-tooltip"; import SlideOver from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import { Tabs } from "@/shared/components/tabs"; import useQuery from "@/shared/hooks/useQuery"; @@ -14,8 +16,6 @@ import { useAtomValue, useSetAtom } from "jotai"; import { useRef, useState } from "react"; import { useNavigate, useParams } from "react-router-dom"; import { StringParam, useQueryParam } from "use-query-params"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; import { getObjectPermissionsQuery } from "../permission/queries/getObjectPermissions"; import { defaultIpNamespaceAtom } from "./common/namespace.state"; import { diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree-skeleton.tsx similarity index 100% rename from frontend/app/src/screens/ipam/ipam-tree/ipam-tree-skeleton.tsx rename to frontend/app/src/entities/ipam/ipam-tree/ipam-tree-skeleton.tsx diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts similarity index 96% rename from frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts rename to frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts index d2fb7d1974..c0c8a06034 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/entities/ipam/constants"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_PREFIXES_ONLY, diff --git a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx similarity index 93% rename from frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx rename to frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx index 8d5ac22551..c44f4c510f 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx @@ -6,10 +6,10 @@ import { useEffect, useState } from "react"; import { ITreeViewOnLoadDataProps, NodeId } from "react-accessible-treeview"; import { Link, useNavigate, useParams } from "react-router-dom"; -import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/entities/ipam/constants"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; diff --git a/frontend/app/src/screens/ipam/ipam-tree/utils.ts b/frontend/app/src/entities/ipam/ipam-tree/utils.ts similarity index 97% rename from frontend/app/src/screens/ipam/ipam-tree/utils.ts rename to frontend/app/src/entities/ipam/ipam-tree/utils.ts index 82d418b37d..2c72b61a7b 100644 --- a/frontend/app/src/screens/ipam/ipam-tree/utils.ts +++ b/frontend/app/src/entities/ipam/ipam-tree/utils.ts @@ -1,4 +1,4 @@ -import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/screens/ipam/constants"; +import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/entities/ipam/constants"; import { TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; export type PrefixNode = { diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx similarity index 92% rename from frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx index 41e64e9ede..f010b761d5 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx @@ -1,18 +1,18 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; -import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import { getPermission } from "@/screens/permission/utils"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; +import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; import { ColorDisplay } from "@/shared/components/display/color-display"; import SlideOver from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; import { Table } from "@/shared/components/table/table"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx similarity index 84% rename from frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx index c1146065c6..a7c981aa2c 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -1,12 +1,12 @@ -import NoDataFound from "@/screens/errors/no-data-found"; -import { IpDetailsCard } from "@/screens/ipam/common/ip-details-card"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getPermission } from "@/entities/permission/utils"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link } from "@/shared/components/ui/link"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx similarity index 91% rename from frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx index 34c826b2ef..ce7a83d979 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -1,17 +1,17 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import { defaultIpNamespaceAtom } from "@/screens/ipam/common/namespace.state"; -import { constructPathForIpam } from "@/screens/ipam/common/utils"; -import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/screens/ipam/constants"; -import { reloadIpamTreeAtom } from "@/screens/ipam/ipam-tree/ipam-tree.state"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import { getPermission } from "@/screens/permission/utils"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; +import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; +import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; import SlideOver from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; import { Table } from "@/shared/components/table/table"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary.tsx similarity index 100% rename from frontend/app/src/screens/ipam/prefixes/ipam-prefixes-summary.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary.tsx diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes.tsx similarity index 81% rename from frontend/app/src/screens/ipam/prefixes/ipam-prefixes.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-prefixes.tsx index f19566e643..9d57d8859e 100644 --- a/frontend/app/src/screens/ipam/prefixes/ipam-prefixes.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes.tsx @@ -1,5 +1,5 @@ -import { IPAM_QSP, IPAM_TABS } from "@/screens/ipam/constants"; -import IpamIPAddresses from "@/screens/ipam/ip-addresses/ipam-ip-address"; +import { IPAM_QSP, IPAM_TABS } from "@/entities/ipam/constants"; +import IpamIPAddresses from "@/entities/ipam/ip-addresses/ipam-ip-address"; import { forwardRef } from "react"; import { StringParam, useQueryParam } from "use-query-params"; import IpamIPPrefixDetails from "./ipam-prefix-details"; diff --git a/frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-summary-skeleton.tsx similarity index 100% rename from frontend/app/src/screens/ipam/prefixes/ipam-summary-skeleton.tsx rename to frontend/app/src/entities/ipam/prefixes/ipam-summary-skeleton.tsx diff --git a/frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts b/frontend/app/src/entities/objects/edit-form-hook/dynamic-control-types.ts similarity index 100% rename from frontend/app/src/screens/edit-form-hook/dynamic-control-types.ts rename to frontend/app/src/entities/objects/edit-form-hook/dynamic-control-types.ts diff --git a/frontend/app/src/screens/edit-form-hook/form.tsx b/frontend/app/src/entities/objects/edit-form-hook/form.tsx similarity index 100% rename from frontend/app/src/screens/edit-form-hook/form.tsx rename to frontend/app/src/entities/objects/edit-form-hook/form.tsx diff --git a/frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx b/frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx similarity index 96% rename from frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx rename to frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx index c0ab530d54..0833315ca6 100644 --- a/frontend/app/src/screens/objects/getObjectItemDisplayValue.tsx +++ b/frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx @@ -1,7 +1,7 @@ import { MAX_VALUE_LENGTH_DISPLAY, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { iSchemaKindNameMap } from "@/screens/schema/schemaKindName.atom"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; +import { iSchemaKindNameMap } from "@/entities/schema/schemaKindName.atom"; +import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { AnyAttribute, CheckboxAttribute, diff --git a/frontend/app/src/screens/objects/hierarchical-tree.tsx b/frontend/app/src/entities/objects/hierarchical-tree.tsx similarity index 93% rename from frontend/app/src/screens/objects/hierarchical-tree.tsx rename to frontend/app/src/entities/objects/hierarchical-tree.tsx index edb884d7ba..70c7b7d7fb 100644 --- a/frontend/app/src/screens/objects/hierarchical-tree.tsx +++ b/frontend/app/src/entities/objects/hierarchical-tree.tsx @@ -1,9 +1,9 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { HIDE_AUTO_GENERATED_FILTER } from "@/screens/groups/groups-auto-generated-filter-button"; -import { TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/screens/ipam/ipam-tree/utils"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; -import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { HIDE_AUTO_GENERATED_FILTER } from "@/entities/groups/groups-auto-generated-filter-button"; +import { TREE_ROOT_ID } from "@/entities/ipam/constants"; +import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/entities/ipam/ipam-tree/utils"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; import { objectAncestorsQuery, objectChildrenQuery, diff --git a/frontend/app/src/screens/objects/metaEditFieldDetails.atom.ts b/frontend/app/src/entities/objects/metaEditFieldDetails.atom.ts similarity index 100% rename from frontend/app/src/screens/objects/metaEditFieldDetails.atom.ts rename to frontend/app/src/entities/objects/metaEditFieldDetails.atom.ts diff --git a/frontend/app/src/screens/objects/object-header.tsx b/frontend/app/src/entities/objects/object-header.tsx similarity index 94% rename from frontend/app/src/screens/objects/object-header.tsx rename to frontend/app/src/entities/objects/object-header.tsx index 353a0e89ae..7793ef0d1d 100644 --- a/frontend/app/src/screens/objects/object-header.tsx +++ b/frontend/app/src/entities/objects/object-header.tsx @@ -1,7 +1,7 @@ -import Content from "@/screens/layout/content"; -import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getPermission } from "@/entities/permission/utils"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import Content from "@/shared/components/layout/content"; import { ObjectDetailsButton } from "@/shared/components/menu/object-details-button"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Skeleton } from "@/shared/components/skeleton"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx similarity index 88% rename from frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx rename to frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx index 681abdbd8c..500df0ff2b 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx @@ -1,10 +1,10 @@ import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; -import { Generate } from "@/screens/artifacts/generate"; -import { GroupsManagerTriggerButton } from "@/screens/groups/groups-manager-trigger-button"; -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import RepositoryActionMenu from "@/screens/repository/repository-action-menu"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +import { Generate } from "@/entities/artifacts/generate"; +import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import RepositoryActionMenu from "@/entities/repository/repository-action-menu"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/screens/object-item-details/action-buttons/index.tsx b/frontend/app/src/entities/objects/object-item-details/action-buttons/index.tsx similarity index 100% rename from frontend/app/src/screens/object-item-details/action-buttons/index.tsx rename to frontend/app/src/entities/objects/object-item-details/action-buttons/index.tsx diff --git a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx similarity index 97% rename from frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx rename to frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx index 210a5e1674..eae753807a 100644 --- a/frontend/app/src/screens/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; -import { Permission } from "@/screens/permission/types"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { Permission } from "@/entities/permission/types"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/object-item-details/object-attribute-row.tsx b/frontend/app/src/entities/objects/object-item-details/object-attribute-row.tsx similarity index 100% rename from frontend/app/src/screens/object-item-details/object-attribute-row.tsx rename to frontend/app/src/entities/objects/object-item-details/object-attribute-row.tsx diff --git a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx similarity index 92% rename from frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx rename to frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx index 8e82eb0a1a..1b048de35c 100644 --- a/frontend/app/src/screens/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx @@ -1,20 +1,20 @@ import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; +import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; import { getObjectAttributes, getObjectRelationships, getObjectTabs, getTabs, -} from "@/screens/object-items/getSchemaObjectColumns"; -import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; -import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; -import { Permission } from "@/screens/permission/types"; -import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; -import { TaskItemDetails } from "@/screens/tasks/task-item-details"; -import { TaskItems } from "@/screens/tasks/task-items"; +} from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import { Permission } from "@/entities/permission/types"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { TaskItemDetails } from "@/entities/tasks/task-item-details"; +import { TaskItems } from "@/entities/tasks/task-items"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx similarity index 93% rename from frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx rename to frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx index bfa97cebaa..87e0c1e636 100644 --- a/frontend/app/src/screens/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx @@ -1,19 +1,21 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import NoDataFound from "@/screens/errors/no-data-found"; -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; -import { showMetaEditState } from "@/screens/objects/metaEditFieldDetails.atom"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; -import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; -import { getPermission } from "@/screens/permission/utils"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { ObjectItemsCell, TextCell } from "@/entities/objects/object-items/object-items-cell"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import { getPermission } from "@/entities/permission/utils"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link as StyledLink } from "@/shared/components/ui/link"; @@ -27,10 +29,8 @@ import { useAtom, useAtomValue } from "jotai"; import { Fragment, useState } from "react"; import { Link, useParams } from "react-router-dom"; import { toast } from "react-toastify"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; -import { getObjectPermissionsQuery } from "../permission/queries/getObjectPermissions"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getObjectPermissionsQuery } from "../../permission/queries/getObjectPermissions"; import { ObjectAttributeRow } from "./object-attribute-row"; type iRelationDetailsProps = { diff --git a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx similarity index 93% rename from frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx rename to frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx index 7b4d640b82..1234b3e6e7 100644 --- a/frontend/app/src/screens/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx @@ -1,10 +1,10 @@ import { QSP } from "@/config/qsp"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { genericsState, iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Pagination } from "@/shared/components/ui/pagination"; import useQuery, { useMutation } from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/entities/objects/object-item-edit/generateObjectEditFormQuery.ts similarity index 94% rename from frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts rename to frontend/app/src/entities/objects/object-item-edit/generateObjectEditFormQuery.ts index 511d1bf858..123ae13447 100644 --- a/frontend/app/src/screens/object-item-edit/generateObjectEditFormQuery.ts +++ b/frontend/app/src/entities/objects/object-item-edit/generateObjectEditFormQuery.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx similarity index 88% rename from frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx rename to frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx index 52152c2932..5e60a417de 100644 --- a/frontend/app/src/screens/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx @@ -1,13 +1,13 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { DynamicFieldData } from "@/screens/edit-form-hook/dynamic-control-types"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { generateObjectEditFormQuery } from "@/screens/object-item-edit/generateObjectEditFormQuery"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { DynamicFieldData } from "@/entities/objects/edit-form-hook/dynamic-control-types"; +import { generateObjectEditFormQuery } from "@/entities/objects/object-item-edit/generateObjectEditFormQuery"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import useQuery from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; diff --git a/frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts b/frontend/app/src/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts similarity index 96% rename from frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts rename to frontend/app/src/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts index aa2619c0bb..91331c8efd 100644 --- a/frontend/app/src/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts +++ b/frontend/app/src/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts @@ -1,4 +1,4 @@ -import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/schema.atom"; const metadataFields = ["source", "owner", "is_visible", "is_protected"]; diff --git a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx similarity index 93% rename from frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx rename to frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx index 01a5c88eff..0e0c8f4da4 100644 --- a/frontend/app/src/screens/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,6 +1,6 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; -import { iNodeSchema } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { iNodeSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts b/frontend/app/src/entities/objects/object-items/getSchemaObjectColumns.ts similarity index 97% rename from frontend/app/src/screens/object-items/getSchemaObjectColumns.ts rename to frontend/app/src/entities/objects/object-items/getSchemaObjectColumns.ts index f411caa2b8..5adc3c9eba 100644 --- a/frontend/app/src/screens/object-items/getSchemaObjectColumns.ts +++ b/frontend/app/src/entities/objects/object-items/getSchemaObjectColumns.ts @@ -5,8 +5,8 @@ import { relationshipsForListView, relationshipsForTabs, } from "@/config/constants"; -import { iGenericSchema, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +import { iGenericSchema, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import { store } from "@/shared/stores"; import { sortByOrderWeight } from "@/shared/utils/common"; import * as R from "ramda"; diff --git a/frontend/app/src/screens/object-items/object-items-cell.tsx b/frontend/app/src/entities/objects/object-items/object-items-cell.tsx similarity index 91% rename from frontend/app/src/screens/object-items/object-items-cell.tsx rename to frontend/app/src/entities/objects/object-items/object-items-cell.tsx index 88d1203dd3..176a30109a 100644 --- a/frontend/app/src/screens/object-items/object-items-cell.tsx +++ b/frontend/app/src/entities/objects/object-items/object-items-cell.tsx @@ -2,9 +2,9 @@ import { RelationshipManyType, RelationshipOneType, getDisplayValue, -} from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +} from "@/entities/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; import { HTMLAttributes } from "react"; diff --git a/frontend/app/src/screens/object-items/object-items-paginated.tsx b/frontend/app/src/entities/objects/object-items/object-items-paginated.tsx similarity index 90% rename from frontend/app/src/screens/object-items/object-items-paginated.tsx rename to frontend/app/src/entities/objects/object-items/object-items-paginated.tsx index ed5827ad9a..138360db98 100644 --- a/frontend/app/src/screens/object-items/object-items-paginated.tsx +++ b/frontend/app/src/entities/objects/object-items/object-items-paginated.tsx @@ -4,18 +4,19 @@ import { SEARCH_FILTERS, SEARCH_PARTIAL_MATCH, } from "@/config/constants"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import { GroupsAutoGeneratedFilterButton } from "@/screens/groups/groups-auto-generated-filter-button"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { ObjectItemsCell, TextCell } from "@/screens/object-items/object-items-cell"; -import { getDisplayValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { isOfKind } from "@/screens/schema/utils"; +import { GroupsAutoGeneratedFilterButton } from "@/entities/groups/groups-auto-generated-filter-button"; +import { getDisplayValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { ObjectItemsCell, TextCell } from "@/entities/objects/object-items/object-items-cell"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { isOfKind } from "@/entities/schema/utils"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import { Filters } from "@/shared/components/filters/filters"; import { ObjectCreateFormTrigger } from "@/shared/components/form/object-create-form-trigger"; +import LoadingScreen from "@/shared/components/loading-screen"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; @@ -26,7 +27,6 @@ import { classNames, debounce } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Navigate } from "react-router-dom"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; type ObjectItemsProps = { schema: IModelSchema; diff --git a/frontend/app/src/screens/objects/objects.ts b/frontend/app/src/entities/objects/objects.ts similarity index 85% rename from frontend/app/src/screens/objects/objects.ts rename to frontend/app/src/entities/objects/objects.ts index 6c200af554..a90b51f3d3 100644 --- a/frontend/app/src/screens/objects/objects.ts +++ b/frontend/app/src/entities/objects/objects.ts @@ -1,13 +1,13 @@ -import { constructPathForIpam } from "@/screens/ipam/common/utils"; +import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC, -} from "@/screens/ipam/constants"; -import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +} from "@/entities/ipam/constants"; +import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import { store } from "@/shared/stores"; import { constructPath, overrideQueryParams } from "../../shared/api/rest/fetch"; diff --git a/frontend/app/src/screens/objects/relationships/api/queries.ts b/frontend/app/src/entities/objects/relationships/api/queries.ts similarity index 100% rename from frontend/app/src/screens/objects/relationships/api/queries.ts rename to frontend/app/src/entities/objects/relationships/api/queries.ts diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts similarity index 84% rename from frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts rename to frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts index 14848be759..7c4d6c7d44 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.query.ts +++ b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts @@ -1,9 +1,9 @@ -import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; +import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; import { GetRelationshipsParams, RELATIONSHIPS_PER_PAGE, getRelationships, -} from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; +} from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { infiniteQueryOptions } from "@tanstack/react-query"; diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts similarity index 86% rename from frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts rename to frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts index 3e71d9b441..a27fc95b3a 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts @@ -1,12 +1,12 @@ -import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; -import { getRelationshipsFromApi } from "@/screens/objects/relationships/api/queries"; -import { getRelationships } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; +import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { getRelationshipsFromApi } from "@/entities/objects/relationships/api/queries"; +import { getRelationships } from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; -vi.mock("@/screens/branches/get-current-branch"); -vi.mock("@/screens/objects/relationships/api/queries"); +vi.mock("@/entities/branches/get-current-branch"); +vi.mock("@/entities/objects/relationships/api/queries"); vi.mock("@/shared/stores"); describe("getRelationships", () => { diff --git a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts similarity index 83% rename from frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts rename to frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts index 8ea941c5ac..8ebe91b1ef 100644 --- a/frontend/app/src/screens/objects/relationships/domain/get-relationships/get-relationships.ts +++ b/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts @@ -1,6 +1,6 @@ -import { getCurrentBranchName } from "@/screens/branches/get-current-branch"; -import { getRelationshipsFromApi } from "@/screens/objects/relationships/api/queries"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; +import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { getRelationshipsFromApi } from "@/entities/objects/relationships/api/queries"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/screens/objects/relationships/domain/types.ts b/frontend/app/src/entities/objects/relationships/domain/types.ts similarity index 100% rename from frontend/app/src/screens/objects/relationships/domain/types.ts rename to frontend/app/src/entities/objects/relationships/domain/types.ts diff --git a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx b/frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx similarity index 96% rename from frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx rename to frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx index f9e4bf3b2f..c88e7536c6 100644 --- a/frontend/app/src/screens/objects/relationships/ui/add-relationship-action.tsx +++ b/frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx @@ -1,4 +1,4 @@ -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx similarity index 86% rename from frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx rename to frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx index d8c26fe69a..b0427fe133 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-combobox-list.tsx +++ b/frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx @@ -1,7 +1,7 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { relationshipsInfiniteQueryOptions } from "@/entities/objects/relationships/domain/get-relationships/get-relationships.query"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; import { Spinner } from "@/shared/components/ui/spinner"; import { useSchema } from "@/shared/hooks/useSchema"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx similarity index 92% rename from frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx rename to frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx index cb8e5a1de7..1cb33922b1 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx +++ b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx @@ -1,13 +1,13 @@ -import { getRelationships } from "@/screens/objects/relationships/domain/get-relationships/get-relationships"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; -import { genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { getRelationships } from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { RelationshipHierarchicalComboboxList } from "@/entities/objects/relationships/ui/relationship-hierarchical-combobox-list"; +import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; import { describe, expect, it, vi } from "vitest"; import { render } from "../../../../../tests/components/render"; import { generateGenericSchema, generateNodeSchema } from "../../../../../tests/fake/schema"; -vi.mock("@/screens/objects/relationships/domain/get-relationships/get-relationships"); +vi.mock("@/entities/objects/relationships/domain/get-relationships/get-relationships"); describe("RelationshipHierarchicalComboboxList", () => { const hierarchyGenericSchema = generateGenericSchema({ hierarchical: true }); diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx similarity index 93% rename from frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx rename to frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx index 0d924d5807..3369c47df6 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx +++ b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx @@ -1,8 +1,8 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import { relationshipsInfiniteQueryOptions } from "@/screens/objects/relationships/domain/get-relationships/get-relationships.query"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; -import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/screens/schema/utils"; +import { relationshipsInfiniteQueryOptions } from "@/entities/objects/relationships/domain/get-relationships/get-relationships.query"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/entities/schema/utils"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; import { ComboboxEmpty, ComboboxItem } from "@/shared/components/ui/combobox"; import { Command, CommandInput, CommandList } from "@/shared/components/ui/command"; diff --git a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx similarity index 93% rename from frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx rename to frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx index 81faedbb12..017666423c 100644 --- a/frontend/app/src/screens/objects/relationships/ui/relationship-hierarchical-input.tsx +++ b/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx @@ -1,10 +1,10 @@ -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; import { RelationshipComboboxList, RelationshipComboboxListProps, -} from "@/screens/objects/relationships/ui/relationship-combobox-list"; -import { RelationshipHierarchicalComboboxList } from "@/screens/objects/relationships/ui/relationship-hierarchical-combobox-list"; +} from "@/entities/objects/relationships/ui/relationship-combobox-list"; +import { RelationshipHierarchicalComboboxList } from "@/entities/objects/relationships/ui/relationship-hierarchical-combobox-list"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { diff --git a/frontend/app/src/screens/objects/showMetaEdit.atom.ts b/frontend/app/src/entities/objects/showMetaEdit.atom.ts similarity index 100% rename from frontend/app/src/screens/objects/showMetaEdit.atom.ts rename to frontend/app/src/entities/objects/showMetaEdit.atom.ts diff --git a/frontend/app/src/screens/objects/types.ts b/frontend/app/src/entities/objects/types.ts similarity index 100% rename from frontend/app/src/screens/objects/types.ts rename to frontend/app/src/entities/objects/types.ts diff --git a/frontend/app/src/screens/permission/queries/getObjectPermissions.ts b/frontend/app/src/entities/permission/queries/getObjectPermissions.ts similarity index 100% rename from frontend/app/src/screens/permission/queries/getObjectPermissions.ts rename to frontend/app/src/entities/permission/queries/getObjectPermissions.ts diff --git a/frontend/app/src/screens/permission/types.ts b/frontend/app/src/entities/permission/types.ts similarity index 100% rename from frontend/app/src/screens/permission/types.ts rename to frontend/app/src/entities/permission/types.ts diff --git a/frontend/app/src/screens/permission/utils.ts b/frontend/app/src/entities/permission/utils.ts similarity index 98% rename from frontend/app/src/screens/permission/utils.ts rename to frontend/app/src/entities/permission/utils.ts index a30f92489f..9a9a1dba16 100644 --- a/frontend/app/src/screens/permission/utils.ts +++ b/frontend/app/src/entities/permission/utils.ts @@ -5,7 +5,7 @@ import { PermissionData, PermissionDecision, PermissionDecisionData, -} from "@/screens/permission/types"; +} from "@/entities/permission/types"; import { store } from "@/shared/stores"; import { warnUnexpectedType } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx similarity index 97% rename from frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx rename to frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx index a0f20ee4a7..fef2129cd3 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx similarity index 97% rename from frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx rename to frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx index 097f55b745..c62e4beb8a 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx similarity index 97% rename from frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx rename to frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx index ba521f5db4..980b0a8512 100644 --- a/frontend/app/src/screens/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/proposed-changes/checks-tab.tsx b/frontend/app/src/entities/proposed-changes/checks-tab.tsx similarity index 100% rename from frontend/app/src/screens/proposed-changes/checks-tab.tsx rename to frontend/app/src/entities/proposed-changes/checks-tab.tsx diff --git a/frontend/app/src/screens/proposed-changes/checks.ts b/frontend/app/src/entities/proposed-changes/checks.ts similarity index 100% rename from frontend/app/src/screens/proposed-changes/checks.ts rename to frontend/app/src/entities/proposed-changes/checks.ts diff --git a/frontend/app/src/screens/proposed-changes/conversations.tsx b/frontend/app/src/entities/proposed-changes/conversations.tsx similarity index 96% rename from frontend/app/src/screens/proposed-changes/conversations.tsx rename to frontend/app/src/entities/proposed-changes/conversations.tsx index 8248685ee4..91e0f05847 100644 --- a/frontend/app/src/screens/proposed-changes/conversations.tsx +++ b/frontend/app/src/entities/proposed-changes/conversations.tsx @@ -4,15 +4,15 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { getProposedChangesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Card } from "@/shared/components/ui/card"; import { FormRef } from "@/shared/components/ui/form"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/screens/proposed-changes/counter.tsx b/frontend/app/src/entities/proposed-changes/counter.tsx similarity index 91% rename from frontend/app/src/screens/proposed-changes/counter.tsx rename to frontend/app/src/entities/proposed-changes/counter.tsx index 460c6464f3..53d401beab 100644 --- a/frontend/app/src/screens/proposed-changes/counter.tsx +++ b/frontend/app/src/entities/proposed-changes/counter.tsx @@ -1,7 +1,7 @@ import { Badge } from "@/shared/components/ui/badge"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; type tProposedChangesCounter = { query: string; diff --git a/frontend/app/src/screens/proposed-changes/create-form.tsx b/frontend/app/src/entities/proposed-changes/create-form.tsx similarity index 96% rename from frontend/app/src/screens/proposed-changes/create-form.tsx rename to frontend/app/src/entities/proposed-changes/create-form.tsx index 6f1dae574d..28c4655643 100644 --- a/frontend/app/src/screens/proposed-changes/create-form.tsx +++ b/frontend/app/src/entities/proposed-changes/create-form.tsx @@ -1,8 +1,8 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { branchesToSelectOptions } from "@/screens/branches/branches"; -import { branchesState } from "@/screens/branches/branches.atom"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { branchesToSelectOptions } from "@/entities/branches/branches"; +import { branchesState } from "@/entities/branches/branches.atom"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/proposed-changes/diff-filter.tsx b/frontend/app/src/entities/proposed-changes/diff-filter.tsx similarity index 94% rename from frontend/app/src/screens/proposed-changes/diff-filter.tsx rename to frontend/app/src/entities/proposed-changes/diff-filter.tsx index 9ed5da9496..e52981026f 100644 --- a/frontend/app/src/screens/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-filter.tsx @@ -1,6 +1,6 @@ import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import useQuery from "@/shared/hooks/useQuery"; -import ErrorScreen from "../errors/error-screen"; import { QSP } from "@/config/qsp"; import { @@ -8,9 +8,9 @@ import { CloseBadgeConflict, CloseBadgeRemoved, CloseBadgeUpdated, -} from "@/screens/diff/diff-badge"; -import { DIFF_STATUS } from "@/screens/diff/node-diff/types"; -import { DiffBadge } from "@/screens/diff/node-diff/utils"; +} from "@/entities/diff/diff-badge"; +import { DIFF_STATUS } from "@/entities/diff/node-diff/types"; +import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/proposed-changes/diff-summary.tsx b/frontend/app/src/entities/proposed-changes/diff-summary.tsx similarity index 96% rename from frontend/app/src/screens/proposed-changes/diff-summary.tsx rename to frontend/app/src/entities/proposed-changes/diff-summary.tsx index 5dfd6e99a8..00161f73f7 100644 --- a/frontend/app/src/screens/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-summary.tsx @@ -3,10 +3,10 @@ import { Link } from "react-router-dom"; import { toast } from "react-toastify"; import { QSP } from "@/config/qsp"; -import { DiffBadge } from "@/screens/diff/node-diff/utils"; -import ErrorScreen from "@/screens/errors/error-screen"; +import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; import { constructPath } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import useQuery from "@/shared/hooks/useQuery"; import { DIFF_STATUS, DiffStatus } from "../diff/node-diff/types"; diff --git a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx similarity index 95% rename from frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx rename to frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx index 104d776557..794f13a97a 100644 --- a/frontend/app/src/screens/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/screens/proposed-changes/item-info.tsx b/frontend/app/src/entities/proposed-changes/item-info.tsx similarity index 100% rename from frontend/app/src/screens/proposed-changes/item-info.tsx rename to frontend/app/src/entities/proposed-changes/item-info.tsx diff --git a/frontend/app/src/screens/proposed-changes/items.tsx b/frontend/app/src/entities/proposed-changes/items.tsx similarity index 94% rename from frontend/app/src/screens/proposed-changes/items.tsx rename to frontend/app/src/entities/proposed-changes/items.tsx index cf750238a5..b739422e67 100644 --- a/frontend/app/src/screens/proposed-changes/items.tsx +++ b/frontend/app/src/entities/proposed-changes/items.tsx @@ -1,6 +1,6 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import Content from "@/screens/layout/content"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import Content from "@/shared/components/layout/content"; import { Table, tRow } from "@/shared/components/table/table"; import { Badge } from "@/shared/components/ui/badge"; import useQuery, { useMutation } from "@/shared/hooks/useQuery"; @@ -9,17 +9,18 @@ import { Icon } from "@iconify-icon/react"; import { ARTIFACT_OBJECT, PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { ProposedChangesCounter } from "@/screens/proposed-changes/counter"; -import { ProposedChangeDiffSummary } from "@/screens/proposed-changes/diff-summary"; -import { ProposedChangesInfo } from "@/screens/proposed-changes/item-info"; -import { ProposedChangesReviewers } from "@/screens/proposed-changes/reviewers"; +import { ProposedChangesCounter } from "@/entities/proposed-changes/counter"; +import { ProposedChangeDiffSummary } from "@/entities/proposed-changes/diff-summary"; +import { ProposedChangesInfo } from "@/entities/proposed-changes/item-info"; +import { ProposedChangesReviewers } from "@/entities/proposed-changes/reviewers"; import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; import { constructPath } from "@/shared/api/rest/fetch"; import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; @@ -31,7 +32,6 @@ import { useState } from "react"; import { Link, LinkProps, useNavigate } from "react-router-dom"; import { toast } from "react-toastify"; import { StringParam, useQueryParam } from "use-query-params"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; import { getPermission } from "../permission/utils"; const STATES = { diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx similarity index 90% rename from frontend/app/src/screens/proposed-changes/proposed-change-details.tsx rename to frontend/app/src/entities/proposed-changes/proposed-change-details.tsx index ba5f501fdb..a7bf4882e4 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { PcApproveButton } from "@/screens/proposed-changes/action-button/pc-approve-button"; -import { PcCloseButton } from "@/screens/proposed-changes/action-button/pc-close-button"; -import { PcMergeButton } from "@/screens/proposed-changes/action-button/pc-merge-button"; -import { Conversations } from "@/screens/proposed-changes/conversations"; -import { ProposedChangeEditTrigger } from "@/screens/proposed-changes/proposed-change-edit-trigger"; -import { getProposedChangesStateBadgeType } from "@/screens/proposed-changes/proposed-changes"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; +import { PcApproveButton } from "@/entities/proposed-changes/action-button/pc-approve-button"; +import { PcCloseButton } from "@/entities/proposed-changes/action-button/pc-close-button"; +import { PcMergeButton } from "@/entities/proposed-changes/action-button/pc-merge-button"; +import { Conversations } from "@/entities/proposed-changes/conversations"; +import { ProposedChangeEditTrigger } from "@/entities/proposed-changes/proposed-change-edit-trigger"; +import { getProposedChangesStateBadgeType } from "@/entities/proposed-changes/proposed-changes"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; import { constructPath } from "@/shared/api/rest/fetch"; import Accordion from "@/shared/components/display/accordion"; @@ -23,8 +23,8 @@ import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { HTMLAttributes } from "react"; import { useNavigate, useParams } from "react-router-dom"; +import LoadingScreen from "../../shared/components/loading-screen"; import { TaskDisplay } from "../branches/task-display"; -import LoadingScreen from "../loading-screen/loading-screen"; import { getObjectPermissionsQuery } from "../permission/queries/getObjectPermissions"; import { getPermission } from "../permission/utils"; import { PROPOSED_CHANGE_MERGE_WORKFLOW } from "../tasks/constants"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx similarity index 96% rename from frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx rename to frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx index eb2bb568c5..7b6be7e30d 100644 --- a/frontend/app/src/screens/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { ProposedChangeEditForm } from "@/screens/proposed-changes/form/proposed-change-edit-form"; +import { ProposedChangeEditForm } from "@/entities/proposed-changes/form/proposed-change-edit-form"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/screens/proposed-changes/proposed-changes.ts b/frontend/app/src/entities/proposed-changes/proposed-changes.ts similarity index 100% rename from frontend/app/src/screens/proposed-changes/proposed-changes.ts rename to frontend/app/src/entities/proposed-changes/proposed-changes.ts diff --git a/frontend/app/src/screens/proposed-changes/proposedChanges.atom.ts b/frontend/app/src/entities/proposed-changes/proposedChanges.atom.ts similarity index 100% rename from frontend/app/src/screens/proposed-changes/proposedChanges.atom.ts rename to frontend/app/src/entities/proposed-changes/proposedChanges.atom.ts diff --git a/frontend/app/src/screens/proposed-changes/reviewers.tsx b/frontend/app/src/entities/proposed-changes/reviewers.tsx similarity index 100% rename from frontend/app/src/screens/proposed-changes/reviewers.tsx rename to frontend/app/src/entities/proposed-changes/reviewers.tsx diff --git a/frontend/app/src/screens/repository/repository-action-menu.tsx b/frontend/app/src/entities/repository/repository-action-menu.tsx similarity index 100% rename from frontend/app/src/screens/repository/repository-action-menu.tsx rename to frontend/app/src/entities/repository/repository-action-menu.tsx diff --git a/frontend/app/src/screens/repository/repository-form.tsx b/frontend/app/src/entities/repository/repository-form.tsx similarity index 98% rename from frontend/app/src/screens/repository/repository-form.tsx rename to frontend/app/src/entities/repository/repository-form.tsx index 18faccbf46..3fed50e87e 100644 --- a/frontend/app/src/screens/repository/repository-form.tsx +++ b/frontend/app/src/entities/repository/repository-form.tsx @@ -1,4 +1,4 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx b/frontend/app/src/entities/resource-manager/common/ResourcePoolUtilization.tsx similarity index 100% rename from frontend/app/src/screens/resource-manager/common/ResourcePoolUtilization.tsx rename to frontend/app/src/entities/resource-manager/common/ResourcePoolUtilization.tsx diff --git a/frontend/app/src/screens/resource-manager/constants.ts b/frontend/app/src/entities/resource-manager/constants.ts similarity index 100% rename from frontend/app/src/screens/resource-manager/constants.ts rename to frontend/app/src/entities/resource-manager/constants.ts diff --git a/frontend/app/src/screens/resource-manager/graphql/resource-pool.ts b/frontend/app/src/entities/resource-manager/graphql/resource-pool.ts similarity index 100% rename from frontend/app/src/screens/resource-manager/graphql/resource-pool.ts rename to frontend/app/src/entities/resource-manager/graphql/resource-pool.ts diff --git a/frontend/app/src/screens/resource-manager/number-pool-form.tsx b/frontend/app/src/entities/resource-manager/number-pool-form.tsx similarity index 96% rename from frontend/app/src/screens/resource-manager/number-pool-form.tsx rename to frontend/app/src/entities/resource-manager/number-pool-form.tsx index b3cff8d13e..6256a30527 100644 --- a/frontend/app/src/screens/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/entities/resource-manager/number-pool-form.tsx @@ -1,12 +1,12 @@ import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import { NUMBER_POOL_NODE_ATTRIBUTE_FIELD, NUMBER_POOL_NODE_FIELD, -} from "@/screens/resource-manager/constants"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; -import { AttributeSchema } from "@/screens/schema/types"; +} from "@/entities/resource-manager/constants"; +import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { AttributeSchema } from "@/entities/schema/types"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/resource-manager/resource-selector.tsx b/frontend/app/src/entities/resource-manager/resource-selector.tsx similarity index 96% rename from frontend/app/src/screens/resource-manager/resource-selector.tsx rename to frontend/app/src/entities/resource-manager/resource-selector.tsx index c8a86e8f5d..4bfdf42492 100644 --- a/frontend/app/src/screens/resource-manager/resource-selector.tsx +++ b/frontend/app/src/entities/resource-manager/resource-selector.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; import { constructPath } from "@/shared/api/rest/fetch"; import { PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/screens/role-management/account-form.tsx b/frontend/app/src/entities/role-manager/account-form.tsx similarity index 96% rename from frontend/app/src/screens/role-management/account-form.tsx rename to frontend/app/src/entities/role-manager/account-form.tsx index afbb661043..cdc9a430c2 100644 --- a/frontend/app/src/screens/role-management/account-form.tsx +++ b/frontend/app/src/entities/role-manager/account-form.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/role-management/account-group-form.tsx b/frontend/app/src/entities/role-manager/account-group-form.tsx similarity index 97% rename from frontend/app/src/screens/role-management/account-group-form.tsx rename to frontend/app/src/entities/role-manager/account-group-form.tsx index 11eebaf3fd..8d33b726d9 100644 --- a/frontend/app/src/screens/role-management/account-group-form.tsx +++ b/frontend/app/src/entities/role-manager/account-group-form.tsx @@ -4,8 +4,8 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/role-management/account-role-form.tsx b/frontend/app/src/entities/role-manager/account-role-form.tsx similarity index 96% rename from frontend/app/src/screens/role-management/account-role-form.tsx rename to frontend/app/src/entities/role-manager/account-role-form.tsx index 8fdd261a3b..5823024f72 100644 --- a/frontend/app/src/screens/role-management/account-role-form.tsx +++ b/frontend/app/src/entities/role-manager/account-role-form.tsx @@ -3,8 +3,8 @@ import { ACCOUNT_PERMISSION_OBJECT, ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/role-management/accounts.tsx b/frontend/app/src/entities/role-manager/accounts.tsx similarity index 95% rename from frontend/app/src/screens/role-management/accounts.tsx rename to frontend/app/src/entities/role-manager/accounts.tsx index 47e0e62d69..a64f9b0441 100644 --- a/frontend/app/src/screens/role-management/accounts.tsx +++ b/frontend/app/src/entities/role-manager/accounts.tsx @@ -1,11 +1,13 @@ import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/shared/api/graphql/queries/role-management/getAccounts"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ColorDisplay } from "@/shared/components/display/color-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; @@ -18,9 +20,7 @@ import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import { getPermission } from "../permission/utils"; function Accounts() { diff --git a/frontend/app/src/screens/role-management/constants.ts b/frontend/app/src/entities/role-manager/constants.ts similarity index 100% rename from frontend/app/src/screens/role-management/constants.ts rename to frontend/app/src/entities/role-manager/constants.ts diff --git a/frontend/app/src/screens/role-management/global-permissions-form.tsx b/frontend/app/src/entities/role-manager/global-permissions-form.tsx similarity index 97% rename from frontend/app/src/screens/role-management/global-permissions-form.tsx rename to frontend/app/src/entities/role-manager/global-permissions-form.tsx index da323c9e5f..62c8506831 100644 --- a/frontend/app/src/screens/role-management/global-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions-form.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/role-management/global-permissions.tsx b/frontend/app/src/entities/role-manager/global-permissions.tsx similarity index 95% rename from frontend/app/src/screens/role-management/global-permissions.tsx rename to frontend/app/src/entities/role-manager/global-permissions.tsx index 83b9dcdf58..c5fcb86d9f 100644 --- a/frontend/app/src/screens/role-management/global-permissions.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions.tsx @@ -1,10 +1,12 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getGlobalPermissions"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; @@ -18,9 +20,7 @@ import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import { getPermission } from "../permission/utils"; import { globalDecisionOptions } from "./constants"; diff --git a/frontend/app/src/screens/role-management/group-member.tsx b/frontend/app/src/entities/role-manager/group-member.tsx similarity index 100% rename from frontend/app/src/screens/role-management/group-member.tsx rename to frontend/app/src/entities/role-manager/group-member.tsx diff --git a/frontend/app/src/screens/role-management/groups.tsx b/frontend/app/src/entities/role-manager/groups.tsx similarity index 95% rename from frontend/app/src/screens/role-management/groups.tsx rename to frontend/app/src/entities/role-manager/groups.tsx index acebe0cb91..e12d29e463 100644 --- a/frontend/app/src/screens/role-management/groups.tsx +++ b/frontend/app/src/entities/role-manager/groups.tsx @@ -1,10 +1,12 @@ import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_GROUPS } from "@/shared/api/graphql/queries/role-management/getGroups"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; @@ -17,9 +19,7 @@ import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import { getPermission } from "../permission/utils"; import { GroupMembers } from "./group-member"; diff --git a/frontend/app/src/screens/role-management/index.tsx b/frontend/app/src/entities/role-manager/index.tsx similarity index 88% rename from frontend/app/src/screens/role-management/index.tsx rename to frontend/app/src/entities/role-manager/index.tsx index 16813ec268..d4c6536cd3 100644 --- a/frontend/app/src/screens/role-management/index.tsx +++ b/frontend/app/src/entities/role-manager/index.tsx @@ -17,7 +17,7 @@ export function RoleManagementNavigation() { const tabs = [ { - to: constructPath("/role-management"), + to: constructPath("/role-manager"), label: (
@@ -29,7 +29,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-management/groups"), + to: constructPath("/role-manager/groups"), label: (
@@ -41,7 +41,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-management/roles"), + to: constructPath("/role-manager/roles"), label: (
@@ -53,7 +53,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-management/global-permissions"), + to: constructPath("/role-manager/global-permissions"), label: (
@@ -65,7 +65,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-management/object-permissions"), + to: constructPath("/role-manager/object-permissions"), label: (
diff --git a/frontend/app/src/screens/role-management/object-permissions-form.tsx b/frontend/app/src/entities/role-manager/object-permissions-form.tsx similarity index 97% rename from frontend/app/src/screens/role-management/object-permissions-form.tsx rename to frontend/app/src/entities/role-manager/object-permissions-form.tsx index 03d56f335d..cba1c9f38f 100644 --- a/frontend/app/src/screens/role-management/object-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions-form.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/screens/role-management/object-permissions.tsx b/frontend/app/src/entities/role-manager/object-permissions.tsx similarity index 96% rename from frontend/app/src/screens/role-management/object-permissions.tsx rename to frontend/app/src/entities/role-manager/object-permissions.tsx index e0ab3963a9..bf02520a7e 100644 --- a/frontend/app/src/screens/role-management/object-permissions.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions.tsx @@ -1,11 +1,13 @@ import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getObjectPermissions"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import { Pill } from "@/shared/components/display/pill"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; @@ -20,9 +22,7 @@ import { NetworkStatus } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { ReactNode, useState } from "react"; -import ErrorScreen from "../errors/error-screen"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import { getPermission } from "../permission/utils"; import { objectDecisionOptions } from "./constants"; diff --git a/frontend/app/src/screens/role-management/relationship-display.tsx b/frontend/app/src/entities/role-manager/relationship-display.tsx similarity index 100% rename from frontend/app/src/screens/role-management/relationship-display.tsx rename to frontend/app/src/entities/role-manager/relationship-display.tsx diff --git a/frontend/app/src/screens/role-management/roles.tsx b/frontend/app/src/entities/role-manager/roles.tsx similarity index 95% rename from frontend/app/src/screens/role-management/roles.tsx rename to frontend/app/src/entities/role-manager/roles.tsx index 1e5d494f9b..bbd74cafa1 100644 --- a/frontend/app/src/screens/role-management/roles.tsx +++ b/frontend/app/src/entities/role-manager/roles.tsx @@ -1,18 +1,19 @@ import { ACCOUNT_ROLE_OBJECT } from "@/config/constants"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import { GET_ROLE_MANAGEMENT_ROLES } from "@/shared/api/graphql/queries/role-management/getRoles"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; import { Pagination } from "@/shared/components/ui/pagination"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import ErrorScreen from "../errors/error-screen"; -import LoadingScreen from "../loading-screen/loading-screen"; +import LoadingScreen from "../../shared/components/loading-screen"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput } from "@/shared/components/ui/search-input"; @@ -20,7 +21,6 @@ import { useDebounce } from "@/shared/hooks/useDebounce"; import useQuery from "@/shared/hooks/useQuery"; import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; -import UnauthorizedScreen from "../errors/unauthorized-screen"; import { getPermission } from "../permission/utils"; function Roles() { diff --git a/frontend/app/src/screens/schema/attribute-display.tsx b/frontend/app/src/entities/schema/attribute-display.tsx similarity index 100% rename from frontend/app/src/screens/schema/attribute-display.tsx rename to frontend/app/src/entities/schema/attribute-display.tsx diff --git a/frontend/app/src/screens/schema/get-schema.test.ts b/frontend/app/src/entities/schema/get-schema.test.ts similarity index 95% rename from frontend/app/src/screens/schema/get-schema.test.ts rename to frontend/app/src/entities/schema/get-schema.test.ts index 3ad3932df5..3fb32e9eea 100644 --- a/frontend/app/src/screens/schema/get-schema.test.ts +++ b/frontend/app/src/entities/schema/get-schema.test.ts @@ -1,4 +1,4 @@ -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it } from "vitest"; import { diff --git a/frontend/app/src/screens/schema/get-schema.ts b/frontend/app/src/entities/schema/get-schema.ts similarity index 97% rename from frontend/app/src/screens/schema/get-schema.ts rename to frontend/app/src/entities/schema/get-schema.ts index 5c80cdba56..d565e2fb06 100644 --- a/frontend/app/src/screens/schema/get-schema.ts +++ b/frontend/app/src/entities/schema/get-schema.ts @@ -5,7 +5,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; +} from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; type GetSchema = (kind?: string | null) => diff --git a/frontend/app/src/screens/schema/relationship-display.tsx b/frontend/app/src/entities/schema/relationship-display.tsx similarity index 100% rename from frontend/app/src/screens/schema/relationship-display.tsx rename to frontend/app/src/entities/schema/relationship-display.tsx diff --git a/frontend/app/src/screens/schema/schema-help-menu.tsx b/frontend/app/src/entities/schema/schema-help-menu.tsx similarity index 93% rename from frontend/app/src/screens/schema/schema-help-menu.tsx rename to frontend/app/src/entities/schema/schema-help-menu.tsx index e9ac82ea50..c16d9d221d 100644 --- a/frontend/app/src/screens/schema/schema-help-menu.tsx +++ b/frontend/app/src/entities/schema/schema-help-menu.tsx @@ -1,7 +1,7 @@ import { INFRAHUB_DOC_LOCAL } from "@/config/config"; import { MENU_EXCLUDELIST } from "@/config/constants"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, diff --git a/frontend/app/src/screens/schema/schema-selector.tsx b/frontend/app/src/entities/schema/schema-selector.tsx similarity index 97% rename from frontend/app/src/screens/schema/schema-selector.tsx rename to frontend/app/src/entities/schema/schema-selector.tsx index bdca4a6cc6..66c4cf3f1f 100644 --- a/frontend/app/src/screens/schema/schema-selector.tsx +++ b/frontend/app/src/entities/schema/schema-selector.tsx @@ -4,8 +4,8 @@ import { genericsState, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +} from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput } from "@/shared/components/ui/search-input"; diff --git a/frontend/app/src/screens/schema/schema-viewer.tsx b/frontend/app/src/entities/schema/schema-viewer.tsx similarity index 99% rename from frontend/app/src/screens/schema/schema-viewer.tsx rename to frontend/app/src/entities/schema/schema-viewer.tsx index df789b9c42..bd6fea8542 100644 --- a/frontend/app/src/screens/schema/schema-viewer.tsx +++ b/frontend/app/src/entities/schema/schema-viewer.tsx @@ -4,8 +4,8 @@ import { genericsState, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; -import { isGenericSchema, isNodeSchema, isProfileSchema } from "@/screens/schema/utils"; +} from "@/entities/schema/schema.atom"; +import { isGenericSchema, isNodeSchema, isProfileSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/schema/schema.atom.ts b/frontend/app/src/entities/schema/schema.atom.ts similarity index 100% rename from frontend/app/src/screens/schema/schema.atom.ts rename to frontend/app/src/entities/schema/schema.atom.ts diff --git a/frontend/app/src/screens/schema/schemaKindLabel.atom.ts b/frontend/app/src/entities/schema/schemaKindLabel.atom.ts similarity index 100% rename from frontend/app/src/screens/schema/schemaKindLabel.atom.ts rename to frontend/app/src/entities/schema/schemaKindLabel.atom.ts diff --git a/frontend/app/src/screens/schema/schemaKindName.atom.ts b/frontend/app/src/entities/schema/schemaKindName.atom.ts similarity index 100% rename from frontend/app/src/screens/schema/schemaKindName.atom.ts rename to frontend/app/src/entities/schema/schemaKindName.atom.ts diff --git a/frontend/app/src/screens/schema/styled.tsx b/frontend/app/src/entities/schema/styled.tsx similarity index 100% rename from frontend/app/src/screens/schema/styled.tsx rename to frontend/app/src/entities/schema/styled.tsx diff --git a/frontend/app/src/screens/schema/types.ts b/frontend/app/src/entities/schema/types.ts similarity index 100% rename from frontend/app/src/screens/schema/types.ts rename to frontend/app/src/entities/schema/types.ts diff --git a/frontend/app/src/screens/schema/utils.test.ts b/frontend/app/src/entities/schema/utils.test.ts similarity index 99% rename from frontend/app/src/screens/schema/utils.test.ts rename to frontend/app/src/entities/schema/utils.test.ts index f758fa7d7d..ae9db70d09 100644 --- a/frontend/app/src/screens/schema/utils.test.ts +++ b/frontend/app/src/entities/schema/utils.test.ts @@ -1,4 +1,4 @@ -import { schemaState } from "@/screens/schema/schema.atom"; +import { schemaState } from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { diff --git a/frontend/app/src/screens/schema/utils.ts b/frontend/app/src/entities/schema/utils.ts similarity index 96% rename from frontend/app/src/screens/schema/utils.ts rename to frontend/app/src/entities/schema/utils.ts index 1c72b6c46e..89e5b7d35b 100644 --- a/frontend/app/src/screens/schema/utils.ts +++ b/frontend/app/src/entities/schema/utils.ts @@ -4,7 +4,7 @@ import { iGenericSchema, iNodeSchema, schemaState, -} from "@/screens/schema/schema.atom"; +} from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; export const isOfKind = (kind: string, schema: IModelSchema) => { diff --git a/frontend/app/src/screens/schema/withSchemaContext.tsx b/frontend/app/src/entities/schema/withSchemaContext.tsx similarity index 92% rename from frontend/app/src/screens/schema/withSchemaContext.tsx rename to frontend/app/src/entities/schema/withSchemaContext.tsx index 0e98ae7f36..7babe542a4 100644 --- a/frontend/app/src/screens/schema/withSchemaContext.tsx +++ b/frontend/app/src/entities/schema/withSchemaContext.tsx @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { findSelectedBranch } from "@/screens/branches/branches"; -import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; +import { findSelectedBranch } from "@/entities/branches/branches"; +import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; import { IProfileSchema, currentSchemaHashAtom, @@ -12,10 +12,10 @@ import { namespacesState, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; -import { schemaKindLabelState } from "@/screens/schema/schemaKindLabel.atom"; -import { schemaKindNameState } from "@/screens/schema/schemaKindName.atom"; -import { tokenSchema } from "@/screens/user-profile/token-schema"; +} from "@/entities/schema/schema.atom"; +import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; +import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { tokenSchema } from "@/entities/user-profile/token-schema"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { fetchUrl } from "@/shared/api/rest/fetch"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/screens/tasks/constants.ts b/frontend/app/src/entities/tasks/constants.ts similarity index 100% rename from frontend/app/src/screens/tasks/constants.ts rename to frontend/app/src/entities/tasks/constants.ts diff --git a/frontend/app/src/screens/tasks/logs.tsx b/frontend/app/src/entities/tasks/logs.tsx similarity index 100% rename from frontend/app/src/screens/tasks/logs.tsx rename to frontend/app/src/entities/tasks/logs.tsx diff --git a/frontend/app/src/screens/tasks/task-item-details.tsx b/frontend/app/src/entities/tasks/task-item-details.tsx similarity index 96% rename from frontend/app/src/screens/tasks/task-item-details.tsx rename to frontend/app/src/entities/tasks/task-item-details.tsx index 09a82c7d08..70dbdd12c7 100644 --- a/frontend/app/src/screens/tasks/task-item-details.tsx +++ b/frontend/app/src/entities/tasks/task-item-details.tsx @@ -2,11 +2,11 @@ import { TASK_OBJECT } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { List } from "@/shared/components/table/list"; import { Badge } from "@/shared/components/ui/badge"; import { Id } from "@/shared/components/ui/id"; diff --git a/frontend/app/src/screens/tasks/task-items.tsx b/frontend/app/src/entities/tasks/task-items.tsx similarity index 96% rename from frontend/app/src/screens/tasks/task-items.tsx rename to frontend/app/src/entities/tasks/task-items.tsx index 1a46d4222b..511eb0d114 100644 --- a/frontend/app/src/screens/tasks/task-items.tsx +++ b/frontend/app/src/entities/tasks/task-items.tsx @@ -1,17 +1,17 @@ import { SEARCH_ANY_FILTER, SEARCH_FILTERS, TASK_OBJECT, TASK_TAB } from "@/config/constants"; -import Content from "@/screens/layout/content"; +import Content from "@/shared/components/layout/content"; import { Table, tColumn } from "@/shared/components/table/table"; import { Pagination } from "@/shared/components/ui/pagination"; import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { Filters } from "@/shared/components/filters/filters"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Id } from "@/shared/components/ui/id"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import useFilters, { Filter } from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/screens/user-profile/tab-profile.tsx b/frontend/app/src/entities/user-profile/tab-profile.tsx similarity index 78% rename from frontend/app/src/screens/user-profile/tab-profile.tsx rename to frontend/app/src/entities/user-profile/tab-profile.tsx index 78ebd3fd78..ca237e2d43 100644 --- a/frontend/app/src/screens/user-profile/tab-profile.tsx +++ b/frontend/app/src/entities/user-profile/tab-profile.tsx @@ -1,10 +1,10 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItemDetails from "@/screens/object-item-details/object-item-details-paginated"; -import { genericsState } from "@/screens/schema/schema.atom"; +import ObjectItemDetails from "@/entities/objects/object-item-details/object-item-details-paginated"; +import { genericsState } from "@/entities/schema/schema.atom"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { parseJwt } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; diff --git a/frontend/app/src/screens/user-profile/tab-tokens.tsx b/frontend/app/src/entities/user-profile/tab-tokens.tsx similarity index 85% rename from frontend/app/src/screens/user-profile/tab-tokens.tsx rename to frontend/app/src/entities/user-profile/tab-tokens.tsx index a824735932..f2dfedb64f 100644 --- a/frontend/app/src/screens/user-profile/tab-tokens.tsx +++ b/frontend/app/src/entities/user-profile/tab-tokens.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { schemaState } from "@/screens/schema/schema.atom"; +import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import { schemaState } from "@/entities/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../loading-screen/loading-screen"; -import ObjectItems from "../object-items/object-items-paginated"; +import LoadingScreen from "../../shared/components/loading-screen"; import { TokenInput } from "@/shared/components/display/token-input"; import ModalSuccess from "@/shared/components/modals/modal-success"; diff --git a/frontend/app/src/screens/user-profile/tab-update-password.tsx b/frontend/app/src/entities/user-profile/tab-update-password.tsx similarity index 97% rename from frontend/app/src/screens/user-profile/tab-update-password.tsx rename to frontend/app/src/entities/user-profile/tab-update-password.tsx index 1b8cf9f4aa..34727f6be4 100644 --- a/frontend/app/src/screens/user-profile/tab-update-password.tsx +++ b/frontend/app/src/entities/user-profile/tab-update-password.tsx @@ -1,7 +1,7 @@ -import Content from "@/screens/layout/content"; import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; +import Content from "@/shared/components/layout/content"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Card } from "@/shared/components/ui/card"; import { Form, FormSubmit } from "@/shared/components/ui/form"; diff --git a/frontend/app/src/screens/user-profile/token-schema.ts b/frontend/app/src/entities/user-profile/token-schema.ts similarity index 100% rename from frontend/app/src/screens/user-profile/token-schema.ts rename to frontend/app/src/entities/user-profile/token-schema.ts diff --git a/frontend/app/src/screens/user-profile/user-profile.tsx b/frontend/app/src/entities/user-profile/user-profile.tsx similarity index 88% rename from frontend/app/src/screens/user-profile/user-profile.tsx rename to frontend/app/src/entities/user-profile/user-profile.tsx index 55e3bc1f07..ca5bf04c53 100644 --- a/frontend/app/src/screens/user-profile/user-profile.tsx +++ b/frontend/app/src/entities/user-profile/user-profile.tsx @@ -1,17 +1,17 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import ErrorScreen from "@/screens/errors/error-screen"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { genericsState } from "@/screens/schema/schema.atom"; +import { genericsState } from "@/entities/schema/schema.atom"; import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; import { Avatar } from "@/shared/components/display/avatar"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Tabs } from "@/shared/components/tabs"; import { useTitle } from "@/shared/hooks/useTitle"; import { gql, useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; -import NoDataFound from "../errors/no-data-found"; import TabProfile from "./tab-profile"; import TabTokens from "./tab-tokens"; import TabUpdatePassword from "./tab-update-password"; diff --git a/frontend/app/src/pages/auth-callback.tsx b/frontend/app/src/pages/auth-callback.tsx index c60d9b8906..de6f6b1c72 100644 --- a/frontend/app/src/pages/auth-callback.tsx +++ b/frontend/app/src/pages/auth-callback.tsx @@ -1,7 +1,7 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { configState } from "@/config/config.atom"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchUrl } from "@/shared/api/rest/fetch"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useAuth } from "@/shared/hooks/useAuth"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; diff --git a/frontend/app/src/pages/branches/details.tsx b/frontend/app/src/pages/branches/details.tsx index 841af49946..5a3470d222 100644 --- a/frontend/app/src/pages/branches/details.tsx +++ b/frontend/app/src/pages/branches/details.tsx @@ -1,14 +1,14 @@ import { DIFF_TABS } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; -import { NodeDiff } from "@/screens/diff/node-diff"; +import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; +import { NodeDiff } from "@/entities/diff/node-diff"; import { Tabs } from "@/shared/components/tabs"; -import { BranchDetails } from "@/screens/branches/branch-details"; -import { branchesState } from "@/screens/branches/branches.atom"; -import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; -import Content from "@/screens/layout/content"; +import { BranchDetails } from "@/entities/branches/branch-details"; +import { branchesState } from "@/entities/branches/branches.atom"; +import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; import { constructPath } from "@/shared/api/rest/fetch"; +import Content from "@/shared/components/layout/content"; import { Badge } from "@/shared/components/ui/badge"; import { Spinner } from "@/shared/components/ui/spinner"; import { useTitle } from "@/shared/hooks/useTitle"; diff --git a/frontend/app/src/pages/branches/index.tsx b/frontend/app/src/pages/branches/index.tsx index 4152cfc322..986d8881c0 100644 --- a/frontend/app/src/pages/branches/index.tsx +++ b/frontend/app/src/pages/branches/index.tsx @@ -1,4 +1,4 @@ -import BranchesItems from "@/screens/branches/branches-items"; +import BranchesItems from "@/entities/branches/branches-items"; export function Component() { return ; diff --git a/frontend/app/src/pages/graphql/index.tsx b/frontend/app/src/pages/graphql/index.tsx index da1ccdcd46..e602a12cf5 100644 --- a/frontend/app/src/pages/graphql/index.tsx +++ b/frontend/app/src/pages/graphql/index.tsx @@ -5,7 +5,7 @@ import { useAtomValue } from "jotai"; import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { QSP } from "@/config/qsp"; diff --git a/frontend/app/src/pages/homepage.tsx b/frontend/app/src/pages/homepage.tsx index b7bfdb9e2a..e8f8067934 100644 --- a/frontend/app/src/pages/homepage.tsx +++ b/frontend/app/src/pages/homepage.tsx @@ -1,4 +1,4 @@ -import Content from "@/screens/layout/content"; +import Content from "@/shared/components/layout/content"; import { Card } from "@/shared/components/ui/card"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; diff --git a/frontend/app/src/pages/ipam/layout.tsx b/frontend/app/src/pages/ipam/layout.tsx index 6029904441..78b58edcf2 100644 --- a/frontend/app/src/pages/ipam/layout.tsx +++ b/frontend/app/src/pages/ipam/layout.tsx @@ -1,8 +1,8 @@ -import Content from "@/screens/layout/content"; +import IpNamespaceSelector from "@/entities/ipam/ip-namespace-selector"; +import IpamTree from "@/entities/ipam/ipam-tree/ipam-tree"; +import Content from "@/shared/components/layout/content"; import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { Outlet } from "react-router-dom"; -import IpNamespaceSelector from "../../screens/ipam/ip-namespace-selector"; -import IpamTree from "../../screens/ipam/ipam-tree/ipam-tree"; function IpamLayout() { return ( diff --git a/frontend/app/src/pages/login.tsx b/frontend/app/src/pages/login.tsx index 4d09a054ba..e6059adcf5 100644 --- a/frontend/app/src/pages/login.tsx +++ b/frontend/app/src/pages/login.tsx @@ -1,5 +1,5 @@ import InfrahubLogo from "@/assets/Infrahub-SVG-hori.svg?react"; -import { Login } from "@/screens/authentification/login"; +import { Login } from "@/entities/authentication/login"; import { useAuth } from "@/shared/hooks/useAuth"; import { Navigate, useLocation } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index 0c58332ff4..e30d29a1a1 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -1,15 +1,15 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; -import NoDataFound from "@/screens/errors/no-data-found"; -import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; -import GraphqlQueryDetailsCard from "@/screens/graphql/details/graphql-query-details-card"; -import GraphQLQueryDetailsPageSkeleton from "@/screens/graphql/details/graphql-query-details-page-skeleton"; -import GraphqlQueryViewerCard from "@/screens/graphql/details/graphql-query-viewer-card"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { Permission } from "@/screens/permission/types"; -import { getPermission } from "@/screens/permission/utils"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +import GraphqlQueryDetailsCard from "@/entities/graphql/details/graphql-query-details-card"; +import GraphQLQueryDetailsPageSkeleton from "@/entities/graphql/details/graphql-query-details-page-skeleton"; +import GraphqlQueryViewerCard from "@/entities/graphql/details/graphql-query-viewer-card"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { Permission } from "@/entities/permission/types"; +import { getPermission } from "@/entities/permission/utils"; +import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/pages/objects/layout.tsx b/frontend/app/src/pages/objects/layout.tsx index 9590651d05..e95c8e09d9 100644 --- a/frontend/app/src/pages/objects/layout.tsx +++ b/frontend/app/src/pages/objects/layout.tsx @@ -1,9 +1,9 @@ -import NoDataFound from "@/screens/errors/no-data-found"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { HierarchicalTree } from "@/screens/objects/hierarchical-tree"; -import ObjectHeader from "@/screens/objects/object-header"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { HierarchicalTree } from "@/entities/objects/hierarchical-tree"; +import ObjectHeader from "@/entities/objects/object-header"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ResizableHandle, ResizablePanel, diff --git a/frontend/app/src/pages/objects/object-details.tsx b/frontend/app/src/pages/objects/object-details.tsx index 8e37a7de90..c74b37c7f0 100644 --- a/frontend/app/src/pages/objects/object-details.tsx +++ b/frontend/app/src/pages/objects/object-details.tsx @@ -1,13 +1,13 @@ import { ARTIFACT_OBJECT, GRAPHQL_QUERY_OBJECT, TASK_OBJECT } from "@/config/constants"; -import ArtifactsDetails from "@/screens/artifacts/object-item-details-paginated"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItemDetails from "@/screens/object-item-details/object-item-details-paginated"; -import ObjectItems from "@/screens/object-items/object-items-paginated"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import ArtifactsDetails from "@/entities/artifacts/object-item-details-paginated"; +import ObjectItemDetails from "@/entities/objects/object-item-details/object-item-details-paginated"; +import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/pages/objects/object-items.tsx b/frontend/app/src/pages/objects/object-items.tsx index b90730bbd3..af4189e9da 100644 --- a/frontend/app/src/pages/objects/object-items.tsx +++ b/frontend/app/src/pages/objects/object-items.tsx @@ -1,6 +1,6 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import ObjectItems from "@/screens/object-items/object-items-paginated"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import ErrorScreen from "@/shared/components/errors/error-screen"; import { useAtomValue } from "jotai"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/profile.tsx b/frontend/app/src/pages/profile.tsx index d2efa2d17c..f468053274 100644 --- a/frontend/app/src/pages/profile.tsx +++ b/frontend/app/src/pages/profile.tsx @@ -1,4 +1,4 @@ -import { UserProfilePage } from "@/screens/user-profile/user-profile"; +import { UserProfilePage } from "@/entities/user-profile/user-profile"; import { constructPath } from "@/shared/api/rest/fetch"; import { useAuth } from "@/shared/hooks/useAuth"; import { Navigate } from "react-router-dom"; diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index ae9883a1b6..b01d74309f 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -1,26 +1,26 @@ import { DIFF_TABS, PROPOSED_CHANGES_OBJECT, TASK_OBJECT, TASK_TAB } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { ArtifactsDiff } from "@/screens/diff/artifact-diff/artifacts-diff"; -import { Checks } from "@/screens/diff/checks/checks"; -import { NodeDiff } from "@/screens/diff/node-diff"; +import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; +import { Checks } from "@/entities/diff/checks/checks"; +import { NodeDiff } from "@/entities/diff/node-diff"; import { GET_PROPOSED_CHANGE_DETAILS } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails"; import { Tabs } from "@/shared/components/tabs"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; -import { FilesDiff } from "@/screens/diff/file-diff/files-diff"; -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; -import { ProposedChangesChecksTab } from "@/screens/proposed-changes/checks-tab"; -import { ProposedChangeDetails } from "@/screens/proposed-changes/proposed-change-details"; -import { proposedChangedState } from "@/screens/proposed-changes/proposedChanges.atom"; -import { TaskItemDetails } from "@/screens/tasks/task-item-details"; -import { TaskItems } from "@/screens/tasks/task-items"; +import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { ProposedChangesChecksTab } from "@/entities/proposed-changes/checks-tab"; +import { ProposedChangeDetails } from "@/entities/proposed-changes/proposed-change-details"; +import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { TaskItemDetails } from "@/entities/tasks/task-item-details"; +import { TaskItems } from "@/entities/tasks/task-items"; import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; import { constructPath } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Badge } from "@/shared/components/ui/badge"; import { useSchema } from "@/shared/hooks/useSchema"; diff --git a/frontend/app/src/pages/proposed-changes/items.tsx b/frontend/app/src/pages/proposed-changes/items.tsx index 1348089a22..8c02968719 100644 --- a/frontend/app/src/pages/proposed-changes/items.tsx +++ b/frontend/app/src/pages/proposed-changes/items.tsx @@ -1,4 +1,4 @@ -import { ProposedChangesPage } from "@/screens/proposed-changes/items"; +import { ProposedChangesPage } from "@/entities/proposed-changes/items"; export function Component() { return ; diff --git a/frontend/app/src/pages/proposed-changes/new.tsx b/frontend/app/src/pages/proposed-changes/new.tsx index 3cd7d7cb78..19e1b38ed8 100644 --- a/frontend/app/src/pages/proposed-changes/new.tsx +++ b/frontend/app/src/pages/proposed-changes/new.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import ErrorScreen from "@/screens/errors/error-screen"; -import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { getPermission } from "@/screens/permission/utils"; -import { ProposedChangeCreateForm } from "@/screens/proposed-changes/create-form"; +import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import { getPermission } from "@/entities/permission/utils"; +import { ProposedChangeCreateForm } from "@/entities/proposed-changes/create-form"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Card } from "@/shared/components/ui/card"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/pages/resource-manager/index.tsx b/frontend/app/src/pages/resource-manager/index.tsx index b433f9eee2..83ebe99d2e 100644 --- a/frontend/app/src/pages/resource-manager/index.tsx +++ b/frontend/app/src/pages/resource-manager/index.tsx @@ -1,9 +1,9 @@ -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import ObjectItems from "@/screens/object-items/object-items-paginated"; -import ObjectHeader from "@/screens/objects/object-header"; -import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { genericsState } from "@/screens/schema/schema.atom"; +import ObjectHeader from "@/entities/objects/object-header"; +import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; +import { genericsState } from "@/entities/schema/schema.atom"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useAtomValue } from "jotai/index"; const ResourceManagerPage = () => { diff --git a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx index 38f635838f..ee47cd2765 100644 --- a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx @@ -1,7 +1,7 @@ import { QSP } from "@/config/qsp"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { RESOURCE_POOL_ALLOCATED_KIND } from "@/screens/resource-manager/constants"; -import { GET_RESOURCE_POOL_ALLOCATED } from "@/screens/resource-manager/graphql/resource-pool"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { RESOURCE_POOL_ALLOCATED_KIND } from "@/entities/resource-manager/constants"; +import { GET_RESOURCE_POOL_ALLOCATED } from "@/entities/resource-manager/graphql/resource-pool"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Skeleton } from "@/shared/components/skeleton"; diff --git a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx index e1deb639fd..3ca54f5051 100644 --- a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx @@ -1,23 +1,23 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import NoDataFound from "@/screens/errors/no-data-found"; -import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/screens/ipam/constants"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { ObjectAttributeValue } from "@/screens/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; -import ResourcePoolUtilization from "@/screens/resource-manager/common/ResourcePoolUtilization"; +import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; +import { ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import ResourcePoolUtilization from "@/entities/resource-manager/common/ResourcePoolUtilization"; import { RESOURCE_GENERIC_KIND, RESOURCE_POOL_UTILIZATION_KIND, -} from "@/screens/resource-manager/constants"; +} from "@/entities/resource-manager/constants"; import { GET_KIND_FOR_RESOURCE_POOL, GET_RESOURCE_POOL_UTILIZATION, -} from "@/screens/resource-manager/graphql/resource-pool"; -import ResourceSelector, { ResourceProps } from "@/screens/resource-manager/resource-selector"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +} from "@/entities/resource-manager/graphql/resource-pool"; +import ResourceSelector, { ResourceProps } from "@/entities/resource-manager/resource-selector"; +import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Property, PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index e9fd275573..d73ddc4736 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -1,13 +1,13 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import ErrorScreen from "@/screens/errors/error-screen"; -import UnauthorizedScreen from "@/screens/errors/unauthorized-screen"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { RoleManagementNavigation } from "@/screens/role-management"; +import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Outlet } from "react-router-dom"; +import { RoleManagementNavigation } from "../../entities/role-manager"; function RoleManagement() { const { loading, error } = useQuery(gql(getObjectPermissionsQuery(GLOBAL_PERMISSION_OBJECT))); diff --git a/frontend/app/src/pages/schema.tsx b/frontend/app/src/pages/schema.tsx index 391f96441d..79a095cb44 100644 --- a/frontend/app/src/pages/schema.tsx +++ b/frontend/app/src/pages/schema.tsx @@ -1,7 +1,7 @@ -import Content from "@/screens/layout/content"; -import { SchemaSelector } from "@/screens/schema/schema-selector"; -import { SchemaViewerStack } from "@/screens/schema/schema-viewer"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { SchemaSelector } from "@/entities/schema/schema-selector"; +import { SchemaViewerStack } from "@/entities/schema/schema-viewer"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import Content from "@/shared/components/layout/content"; import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { useTitle } from "@/shared/hooks/useTitle"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/pages/tasks/index.tsx b/frontend/app/src/pages/tasks/index.tsx index 23399f2ffd..2288e645f2 100644 --- a/frontend/app/src/pages/tasks/index.tsx +++ b/frontend/app/src/pages/tasks/index.tsx @@ -1,4 +1,4 @@ -import { TaskItems } from "@/screens/tasks/task-items"; +import { TaskItems } from "@/entities/tasks/task-items"; export function Component() { return ; diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index 7ed83ca437..d3237cd88a 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,10 +1,10 @@ import { TASK_OBJECT } from "@/config/constants"; -import ErrorScreen from "@/screens/errors/error-screen"; -import Content from "@/screens/layout/content"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { TaskItemDetails } from "@/screens/tasks/task-item-details"; +import { TaskItemDetails } from "@/entities/tasks/task-item-details"; import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; import { constructPath } from "@/shared/api/rest/fetch"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import Content from "@/shared/components/layout/content"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Link } from "@/shared/components/ui/link"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; diff --git a/frontend/app/src/screens/loading-screen/loading.gif b/frontend/app/src/screens/loading-screen/loading.gif deleted file mode 100644 index a7ebc5e3ec1da57e733eb162bba9f3d0d2008cf0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 115709 zcmd432T)UQzqU&!6+$lp(u*Kn35rS=0Toe^s(^q&Q4vv!3Ly!QP(!cM1Vw3~NE0cc zR|6KB1&|IRAVLs~XGPS1dH3Gun{&>b*_mtBtSkZ~VZzMy-1qM}ddwK9?Zm*yz_`Ic zzs4aPr7$M z83ukb3EE-l7>151cIjm3XRGkfwo#w$iF6!@%K+zNmYw64FD0#9Nm;p`zH%c2U=_eC zla6=Rs(Non+23X&LO8ZLv{$+#C>iYMUuk@D&yui=DSz7!4=?n0}w`V_ZPcH#)!uG_% z_W1nv*xWYop1hmcemk>0I=wYKwKX)kHTdx_-b`%$;nn!o%dv0$AHGpOeCvA$yrthd zN4~WWe`^{1*8FCZ&TBg4ztQw+v*G3DGYYk;ms-|EC3R3s=xqF*;*O19v~Lvsq@Z=< zNy|ol%f=(}dLDT_w+Z-bu4g`9&-e{+p3}JTq;<2df2;ok{Urb|2Y6A_OW$Wdf1g|a zKEFc$EAOzl`u%T6{D7V?I&<1U&%#JuS(TX)_&i8#vVfTxE;A_o{B!^x69y2C;WbFa zgp}2U1@Y{$?;vG2ha#j*(@jcqTEhi3F2C(4eb62)ZV)DNtSq-PPX6>0`_8hw?j+TV zUFpZlANHmpZ_dB%EPwPOQx^*nHLb|+e_#@~$Dym@@ykaR4@~cyK7I1Kz`FeMyRN4N zgC&m5VWMW0g~R2jmroqJD~m>}JU@2bH>)as_ssXp{JZX|k`E1NW~i8XHOVRNY=>x2 zlVBT{*IAA#nIvcIRCn@eVqC=S5pYkIUS@JzN?{ZwUvEJkzW>bBE7IOapw`rag`sM# zp5mgf-q+q1_+2==y5*xie%9cge8v{@)k#Z&#)~2r|Gu-e^EUQ}MK{<9sfo0dUFrr# zaLJEhHtmAup-}GS@$yEs6I%wTcY$VpRMSva5CfZF7P~=R*?GeVB`Jfuu>ICp9xF{v z!+;uizlEYYD1SUe!SJ@Y!Pyqd7#@~Ef=j`gbS18-Dj9}x@_EQVK=bQ3;?gkIE4SyG6i%p@Wu;r@WU=b+c@MUYVZF7g zmwBacY;r%YD}_TJDGw3mU_Zp@o>_iZ&=`^sMIg(tAAg|WmMi2S%MOP=8-q{kS9n%UuvbXuGS+Wa zj$V)cA)7l-ERy79B5TY;9b}+ihPw0_XO1rGt6C^MXr(+S-oU=XB%^MqE~gSXB(KXC z+%it@5r4#S%;}PcT+1_}w%Qf>o}g1hA{R8d`qgp7q&!u_CeC*}-e`W%v-2{tqj$;t z{QXS(jO5MXO*LW6`LeRXt49Y)z$bglXPd!PF)wo`G|SfgJr=#jCTJ)oyf_ z_3Sr?IkjlLXq+G_tDYIbs37$)eSxHq01FxOGmhU@I?|RHd9n%!@iN zoFIw2!uzwH#2r%89nsKl*_FAy+3tg2warjf`@Z$LVeG0w`y@&0uKXl1N>TTnK}(ZH znJ)Z&Hez?yXLLvNur-;1Rj~1M(97WjvB-X!}s2 zMYi&z;z?u<@BPNZ5Y1C~sIJku6Dv##Vk@i#$ZkaOkRkMjk;wUY=UZJ9tY2bQaD0st zR(qPrnzaZvT}d;|_d_l9u11jC@i{NZ7^cIJes(*(i{gGJMrC&!iThwpR{kUtG5%~N zDB1;H#q`{?(jv&Y-vwTim~g^>HON;gT>hj9q$qhc{xh?ywUs-$(!q$Gba!mr?N~Q+ zSO1<*9WvXJvWWv<)&2N~OnGsehaKWs+1t&P>TT#RxKB^B!J?~TQxBv%!m zqGlu=5Kk)3&pP0Y;)DoKNm#|4!cA!impmTe)8reL!(#R;*W>(AG^~&TT%QHIA(ZST1%15nxua!GK zeRw9j>Uj~HXK?r1dnQj640Nwu-vez7N|VZ zYbMYV{!U5Bb@$A1W#8e0=ks)=>Pg=}o%b-iFdfUSFx9ByvBe!i+rLqBQ~`s&aL}&K zgxuJ3>$)Xx-Pj9DEfvlX)oT~Scp>M8N(F9{LbM8bIRmRn@Orb5qY<`XW@<~6jB5Dl zaK{I41=?`0OU_dde!K^JCBNKSdVcg(((=0R?n$FCzZ>c2>k6ydl}|u?PHw-G+(337 zvsn!_s1sNyvwn6|dx?;+OHi4ms$t*xE?WGGooi$AaAQkk*cDc#QSz(A`r3r9)ELE) z=J@rVDu<%8E~VI|*c6SpBBjgwx)FdCRnKukzn?C_EV}JM*K3@3ktK)9ug|DWqOr@f)yoZWfE}*2tiNuYTP4K(Nvo zJ^o6QN=5q^R;A1--s9A#7592^k-d4)0+Y(hs;f}jR}cDKH(L=8k1yFk^@^_PvF@$z zU2=IT+3OS&jOaT4`DU}s=%>D_y<`)9zn5Dd3>wAl=CeOzz8q9a5+^qZ6tj3{vhuP< z`^G=_iU_v5d++ibxmK$9x-HU9(ZQm+mG;8{r<2nP5s9WYJl?*w&T#B0{CZ&rdAXu*YeeA1)OG#$peu~q@8tUUoOHzmJ)8~>JFTn~ zMPNTqqrxXfm)1&rnP$!9m_i51Uy5$h6wjiccZaH0SGnjdC^Q_hwm5~$63E{09A;9o zM_Tn_Eznh?XGO$ zHvu4NR8WLmwUp>|a+}6O$JK0?@gLtqMY1he%Qp~N%dojD7DzQ3n#|GaDSu?;POB%3 z*CeP#7iv9Y<+Kb1cc8_p(eDR&)^%Zg))*NR*vO1*f;fEl5C(=iq|FFE?TFE|##A8C z5ih~xV;G%$^y}q|>f>M@YpkI!jEu%QuCg4e#vQTdA?jj`tZ^UOkrgDI6^M181ng9G z@Cv)^eF}>eDi}M+eU=pLmW=7(f;pjr1J<~SsyH`mT*H{GgCob4YMi<5Jq0Ju8>o=k zOQHpyp;jFS`Sc)Gj;yrH=eRV6LQmnZEi_%h3}LMWxpJ4G78da2WP-&qlmOz2s182u zE3PC+(4oQ+{a`YY@T5A7Ja(6T9GqDl?6?Zg?ZD3I`hXd)6jX;lk@tf-S(RGj%B{n7 ze9u5vpmoU+DacSbV?>iRRtP2fz$8L!)(7SU?MjY(t!oJzk9dK?1mZ`Bl$qG^}11FR2WnO{E`?ojD&MsLM)*$J-$*!;?Xc9Ydb!Agc=QAfqu6R zimDd-C{8pbaumyh*;1mmOb~agiS39e3L{|^4}%6p@ufs8pb!?bQ6N7lI|>KWFoFFP zOe%#IDVTt89g0TbMb4T;6_z9V5pi8ZA>g?vxSte7H}Z9(cFsrO3gS97;;4z00|Ne3 zo}=FvVOkRpm%x=$h^U)(W9*0Rvb8V@z-tvRBqJ!dPp&jDz$t?7oIJ~|w1`-qzL?9># zaoH^go=v#|bz)5-5CZ2?(9?GAXGtHwZ4;$;FSk*L@SdA=8xfARB^l zFUMl53Ea7kscb^<`pq;5t z{pS5Kp^ORbj7gh}X}^rwl#KbBjK$%MrOk|Gq0Ck7%r%?Lb-zq%O6Iqk%n`vmRPu^P8eQCPX0G1KUiHmc^?UFO|J?sP z`En=sOTfb&tzRP)(uj4 z`~PEc;@3LCzZNQhhy5M;`oYg7gg>hYz*@pT77~80CG0FG04oYR?5r#NwX^^%Fi`1y z{mt424FGszU)E`>{{e9EKLB)^0RG>o)8lajO4c~p=tfTSHH||yH*(6Rx)d{9FcJIX zV!N~S6o-5K7SjQpexV?mXf{8XSVLN$7p}ZIT>dntw0Dao^{utW*QMja$g?8Nejim& z@SR+J@0)D)ZY6z#gYcQRQ{rRpQ66>gFq&COM*&BQ(qR|rPJQFPeEicV8^vD{Cu8Bf zs|$k-m_8~Y*;k?&&BCAm{xV0W#O~`}nvq^AS}wQ&k3P&?g{*gqN1x;6;mx(Ni+xh5k2{_)vF zQy)jQt&pT$vlt|98>Wgz9kkrclGccE9YYIJhj3HK@A3}wZSUZ7)pF6FVgpDK#KvHb{JdDII_(Rp>xPgLJ5 zVoOTsM-ky##4~A4&I+h$8j*ALo5^S2gKu|T)PWGlpKmIrry@8QA0bKJrh6?p`(LeV{vlF*F?? zqFQq6VUN4$u3Ym^(qJk-SqzFQF97pbkxo-J~iD7Ahd z6)UclcUcJ>qnHcbZA&6HF$j@}tizs>=%y9xIadh+0S4-p93dNow$`Cy)l})go)w@ZlRvi0{e^%!peve`p z9xITT#VjhF4U4n}Jp*;CG>&aLKd8)PILhtw?dXo@_*B4AaAJSu!3N9j=G zMQEBUpXORjh>yG(59@Ffhes%nRk$3J@LD>2pYfw^n8|U)MhcT+ zB!S-mQO@B=dmOAK^_Yb>XDTXxGVk2wQk=ma34ixeV~)eem>9xX1*FU`@}S1~y_C)n zcU1@5ER*V_$>XA)677QT@XV1JtRlffOyE2V_CT^L97=Ik7kQ^}9A~aZD|I>;aoJkyQBM$qQ-r=gwupRk=8@^^C$?XoSc^s|^N)vU5SyTvkj!HK zsju^h7?`C=f$d-ytA6@}LX*d>LT^mZ)q0I{m&dSa^)*HL)O{40tadtU(iB`Pe7gvJ zFk;`g`N6gW{2`V#ElzR;Z!|=vMWT8=+)6+RwifH*e;oijJm=cEes)3c1yLQCyQr7uMFR#a+X8;h?tf)>&)X^NK8! zp(BH%zg$5LOF5TioX% zTM2b0og~|$X9A1<$Qo0dVm!PsiN}sA-_)ymW6RkdGRRM^fy1uPY}w@%?r)N&nR&Es zIp_KEH)ycI+y~P}9-6Gz?NaWEx-<+F!(Zh~H~5b-3p+ z^TD@FSKaU2;d{klCPq4bt^Z;0t`8@w9zW-Xcs+Y|^D_8W?Q^&XNp^m0CM7y;*o}N$g6w8Fv80#2H8y9wes-eK)8pu{(sMMm%5Q~F{Y>4kdsA>5 z?Rl?zA^PLTo@r?t4>d3MQL>`kQNNM`CH};!x*?U%rai9p^A$te(-nPw=Zbs3m@Skl z)iN9?HH%6($SeA?O2@1%;qXG>^;WKv4c>))&hRHMY$vQbjoye}{aUsyGONE~`lLK# zs*KdUurS@Vr%eo6nSO85{YRI0MpP}Xeqy?$ai4X-jqC9xjEgSgZ6Eg0AT3v11up5< z2$6gFTMg<~EKeG=PA&IUG8jyLX=CkeWr{KwOM?X#LbY^vU$t-fuJqK?zogp}6!no+ zaB+-P*|-;a8&tn{rV%HaC>o;CqlZWne6ByV0y&|HK@f&m6uOk-uYMHb$9iJdt7r}1 z^`z_M-ev{MtE&-KFX{7EF{qvOiD6%QmbvBAVRUj@Eo^o42W@J1@JBo8Nb|ZMKStTv zm2!A0(1C2Iz?9{C#;-vPL+BAXF--}0h9{cWI)G*4Oy(F`xC6XjB8ZO~B;bquf?yZU z54v@fr(ii~PqIoZGe{;s$UE!q9yQKA`Ir<^V0jQ!#Tvsb$dhJ)-6M$E>kK-WA9QMi zdyxURKR@6jBZrYSrr4OP0qw>UgE6HBouck0E#rhiL8mpK$*Q2csv&n(LCLDnGed|Y zzQKIehCkH6_Os~0FNg+Jh_gwEFERwH3USXzcu<2VE)sY|C>+Jksm4k3Ne&IO4!QqG zC6F3)P9KM(243|+l#}quCL!fx2u&)USC9}#4Gif(Bqb9bRuf?TgbWn=98+laY{1QY z1RfRk5DAL3M!Y43u?>OGl|f2o14OD3p}OG}zM#wb;Ttm{AGtUiI_}w^5P2pMk2(-m z_=q_1z;oQ7-dVQk+X#YuWb&-1uuJ4rJMN<%WK=K$yrMm35?*D3$Z?F+M@bAgvNs5_ zpEpKiQlct`uu=KpTJqXYm%~B9h{(q1hsk;{MrbWH!jKHk#%sfF5J3b2qy{lS0cRki zQ4?YI9qe1@Vjj*Sgf>G({E%VGG3q9W5Av}ts0eABFOmCaiN^alN2r(-$0)YB*f8Ii zbirtGJoa1;Q~`{>nFUg!B9a^9{P19&CO9c8280hdaO~{$DsZ?sD990%j*jFmg_sjU z^R2n;_Pg`k;BYz?a@8$SMlZ&EF3y9%z1R`|SujbeG+Jja`Zj^PAq%AZ7<8{XNqPm^ zj3i5G)CNMLR{w3Ho3e97zFXszUtQQy%)I z=BK1SsYxvyPA%R{B?+aKX{S}#q*eN*Ri~uY)}+-9rvVn-D3ngtPH(YEZ}Us@7qkL4F4s+qyLoOmm>D_qAveW5OZBny#d(nf*NrAJHQpMMYS70@mkclNk-`{2u+yf1N>SGI=%gF zmM*GvMV+TBDqT)LZO;IH`WwJf|3D8~m%lIk%vXVU`H!>$R!Dci4Z1S|0X5)~Kxz$$ z=T4OUe{uvKOb@z$hu(j_7ckjh{8M%RuD$f|{5L;S^}ow9{rvym8z8?`|4ZdJk?k=f zvvIGuS?D|40q2XsQ{9PIQ9&Y`g?S3e2B8_4CmJ?~RSgU3Vc6(7lDk!Rec|-eL6!2G zB~<4-iX!i79X9GOE9_eyRz-3?GM%ixCf)s*&5J|F!uzpF{*gz5ot(Q=u58oHYcp<~ z6;ZbE9|AE=b)}kcKV1l6T!|ADmC&92z?st$b7b;3&Q$o|kmFboh&#quhGRwIf+xI) z%o@mR2{I65JirSP)E1x34mDsHKwRVOYa7+aHd>5_ZI3e?3xW7yT0%Abli3WU6RSrE z;LTG^;kxtZm;^f-Q50#`H~G0iT6~eEr0G3tQ|EMl72z*)TEyFgr86}>)G*{ z2X2Dy1P)w)`#Ze`g)kuz_9AEUg8;H4JmUPBZ!)|fn;ZqVE-n_fd|EVN~xx&l(0$IB&0|?`KrA1wj^&T=TTmnC4=`b!mZyICa8a9Hai1d9sb_{*i z;+YF4*fngXjLomVDAmdMD6ZOc{jyxfY3a$?TD>x^v1iKzc&vW@?2`v|AibdL^^AQ( zpF#eyJ!&gJ4LS2$hFaSb6jrC zHCTUb4P0E*GVSPbKO*`wWLZI(C>5XD)hwx1Q>qMuDOa!yo?f$PMx4f#w%b3@nK&wP zPm{aLASd1wC2(Z4A~Y;31Yxwq7URqcX5zhGx58(5s>b$>5|c5Po}tP;gfS_`#~|L9 z%Qw=1qz5_q*lrAF$t>Bi(Jl+dgnJjr)I3zDzvE+2KKy_oV%C-|93~ca?--JBz`ifEk ziOh0N@Q~u&=)KN@PGB=%9MoTi?~G$MM*~CT(-zMVnl7)d0GZ4tD%=mh?2dzBO~{bC zXhotRhU*rRB`>>`%^c?3TFn0iC-#S4R1Va%J&Lo zsG2OpXLk1^lLCW&Q9LHfSP7%p#l&`qt<>Qh7mIi#Qmo9RiKu%w%_^+ggg*?gWQ}tH z&pqH%Jrf(O4K;&l+URq7w8mwoX9;$xn_4Q9SnRT0_RI;Gk}3ug7O;6%-&D=OZ9xgu zXT;^o2k_?yKF3}J>#Gj7s}sW2zrG&Wa}(!=sBq*zcIKroZ}ofSr$Q|I z6J_FFzn!qMmpF1!vMJy7> z!iY_$6cVx50rc=Gxr|~eIZklb!zkXOw3Bjkpy&v){Cj)`h${$!`0)^v-wN{W0Z%_s+nM7$xiS^$C^SG zCdjtZd5|Lss~|{v;s`IWZZ~~Xmio02b^MAGe>VI6yW>!2ih=m~e5;2<4E$tA!TF7m z;PTf`sdJwvdg28#RxPLqrnqjPiVQt$Oik@98JH??x*xs|*J(S(@~}8?8N~(h66( zo>YckExw)Q+f?jtwlJE-F!($p__M?GmABuR0Qrq9yg==?`$1!AWRzV*gJE{eTP#iB zHw6Ko$YX4ZdC$4T7I6!bA0P*-r1yRD9!~^2>gFRzI_q zFDy$#umZuRHQ9tHQq??Z(a)}e8Xrh*^A?yufcLgf2|kt&mN$+JJM+qWFLqY{;ko;B z%4_4VZrB9N@7G(f9ZcmdwCLV5(l~$q(gFCu_FCc9Hmr6P;{E2D}13CkAY6Vzb(*`!f#o) z_1^n?m&nA`rRj&kd>b6T#SH_HvtQDN9cE{37DbnD&7>)YBdcqEJbDqrE;4*Vp{gb2 zkXA(@d1AwgYDIfRy5Y8aK`EbMvomE#1g>hKnX3UI@w=uE56@!T8bnW5u^qe3^FSQUVjZ+P2wE4giX20WpaKl` z1@H@ESU|pxGGI|(Oot&)oH#~FK2SOzS=h)X=Zm>C&7DcXAmzP`2iP@yF`j6&LO%qF z$3`;XnzJG96s(+JkTMt80FPAxNd;x$cp~w*A@+Uw2wEgM zRH*|us0O;%5#+y&C>UeMSrZaw*$?C+!m9DM>cP=NXsH7V@*3i~@0TXr>~Uofi0I&u^p zJX9Snv>mXVPu)(Ay>ZLH?uYPJ6O2&W4;#^$`D{XX zL{t{B#n%|77E*(c>SqL#hQeSgQNlK1tMUlO$M}!4vUih1c7te*CJS*wo zaFXme#IG~n-!TH?&TZcre<3AVY9&cSC^R&8KyDvz&(~m$Ttl&X+T_6CaXTZMy z=I8ZKKp*?>X#3KGVIUGd1aOBA;K=|-?gA_s2GV=lX1FEuKLjrw{~ISl=y!LHf4lw} z&}jfm{O8jIx<~`1Za}0RWB+deOxr1L#W|iHEdvd3kJMGq-w`q(*Z{Wya=z@~^Wckr z-j}-%>B>#F>%ujBF<{qU0KwiNoV2z>R4Kg^9`}?k+sQRwfgU*E*gO0w5ATG^4}PY| zdB20?$AEjc((A`S6&WZemv(KG{RQ2<|4{MM!z+8K)qT`jx{3oOe;^ms@j01 z0{|KGj;jMj?mvk#VC*x$ThKuNnVu!D0iAGqxchDUPmug?B?dhCk3s{P@t@B5-`nQ& zs`<|h_;&#O{mVMNZN5`D2eRs4wey|w`R@w)-&^Q^tD^%}T=2irik;$19Pb}sg}xcD zTHwtS(yvjU(oA`C=)}QU{M3ttXxNDTx&S{VU-9Cm(Sb#U7mqLQ)_y&5<>64Z;!B`m zEwK2u%;rmd?UL5=khLaf$$?qwN`Lnw<(mQ99c8nYpDm6AggUF8ji%9*OmD%SwK-?< zzKgjj$MwjTr^JIjiq*N?z~)5q(2EZ&ume5GS~1AX^i!=tAj#@r@fID;cXt~d1}(&u z*Dg5)qCj$v28pPcvC!SL?6>-lbU|;gLEzZdV5QYZWU&E{d<%{1Xw*fFtq0lSrtAcp zgFdN|GC|yOQj3USS1WIgG#5)|-3whAx_J4BSgvWXA-A950Tb?cPQl|LkB!jaW7;yP zv-~a*L>srqteOsxT;pW#3`RM9w+wfiR2J9%>C9U#!{Gb4+o2Yc{yB+Yef;*O9JEQi zCMpy+AT*~}A`KZ)1PP7LW}?JXO!9DSVZ<8*u^@_UCT&jtFikyHZ_oX6nplcUs^xxm zeTRx~a^kyWH59W`#pB(J4Lto3Y4zMTEg_F!W;46N2{BiMKurT4X{x?bSrP*wkB#-) zWuFx4rFe`!RAuVpx)zr$i_6a-NWaRjH7u6Q68WrttWE!Bdd(Gm^jKO6`qtW=i*?{4 z9uk3B&Jf>ZFn>j?8iGZk;t{Lv2zlPBKy)SZAwMXPr=I4 zSH(2r-R`z_s1(Vs2|GBamx`-3aeH@I-0mzP+a^oBqzS7r@49r@)og3he9m4^jbE+J zrdP!ba(=^nQzS@*yK;{*Mcp1|*A}y1?c=3#Yn^6_0=Aa?XztqWhL`xhhVo{*YtSQY$rfjC zFL~f(ma17Uf1A9wxiJ4vEABaU!gflB`}^A3$-p+*K`l*~%+364W6_YImX87I;p(Ig zR$HXu6t{YWMB(S4b}XY}9~q+g>N9374y#^i$>D@%;zE;f7lpkD5Zz^5YeA!27ZU_l z>*?>x5NvnANuM`|#FQ);E_=SiK#eHDNApm~hKE`++Te`%4=qXv*=8rYX33l>;md&X$v{pK`GOUsMaApAE^|rE6vMUns8dPEEF!;EiA2VSm{2+ zoir)YN6uk6F+zdaF}lh-SSytYHpR=o(w8|mM?Qtgiznf-xGN{1w$4O?OTWIdguGdi zW^oEKwE7Fj#M7EL?^RYn#9|Z| z*2|bnNLy zCc8OBo>6F*TUrijJ5X5)r2CefJT+w7#9|0~^vq$s(02dz(gfmBr;s2_ck1op9~e_@ z(8}(IGCH%SXuXv$f<@Px$28 zL~y6!2{bJxw9IvvkB|x;*B@BuXF)6hE+X$IOJe{al^G*%XcvlIESkX2c~;&>!Pc;TEj;>}VlmpkT@KIhe&*1O@P{zj3XYZN2Sy?nu4`95 z^8%F}dHcZal>f-y`kO@v@+YRyJ2sPteQ<+^6tA`)tm_TnuirTIA+Wt`i1o*{{E(?# zp(m*$HB8X9hEcpbL5JK_2J6Od&AU0(OzXW!Xtb;6?tQ6K&y&e#;~T)a=Opy?*7;SE z@5iMGEyJM~nDvg6G{yUuw%JBwqnaN)P%1>!bz2?YND7_exyJ5qPg%K@1{75+el#o3 z(pDocO>T=eXoahrbFLii=~Et;4Z5gOpC7n`L7)Jbus%vK`B`$v>4$^RLtR7OnVmEWEGa;i8ZEz zI*2@CFfpkY* z66%NywwL1>pkOZz;VcJb#vQ>|k-^ctJiV%+m#RZeVxfM>;A8=whOtnZn{}u<8I1MC z;WoHk@pv~7#)KOli42|*;G#6bD#W1~^3Vz*nzsoSiwb!vC)MRiIGS(5xdJOA36ccE zABjWNs}b!MVK%7XUEHuIC|qy{;{6!33>iT}!sLN$7$0t)kDqP|e~!Wqv?D0X5WsaG zEkoLq5nU#s4zXb`OfVt05$}nRH>k+R#7Oqi$nGJT)#XTOUj@iG{FQao8+;^O4>muG zrMZZWk3~r(6JUnXYxr~EY}h6h^GIGQX)KxxAH~cFXHpUug~T#YY=u-PVJQB>S&qk)kSC479C`_!LgD9xVtaLy4*SB~ zg{sk(KV}o~F0E2qaie>1Y$Anm+aJw3` zbQ9!}U*r=Zo*2K>_{~(srqsaAkcv5O0JlCgGLeGT{Z;aD&2bW%zjnUJnD z9>#Pmyk}V3=~zU07PjAp=LH4UX6^{^Lvv z{Qm)>E(=Q6c39kdosQDAUne_vcaF-}7gc~D+6xf!Puf0o#|ETY@7^!;1D5^=fN0u; zJ|O+sJeY3L7NMUl37=1geLfTZ*(zfBf50x99##W&Y@mPbp1g87Ya=lC|}2vufQ z`WL`lE}iC$9RPU-@@hby>E_(I0jToNBKEJO8VIX*0Gii7*#v^?U*+pJn=ONz^rU(e zC{_dG$Mo6Voyzl0a{DK${a4fZ@4gC%>#wHs-{z(Ngv|f$JO2)rcgz;(KL4Fx4d|c4 z)qw5-@%0)2FjM`vv1&kKcc!Us>v4MVeBkE{_RbhKuzUajbkctU zNVV4gN~s=?pPTG7^Fc1}>jP2X$Y) zzrp!bD)=63Kd5Eb`^61}v@HuNJ2(LGlBmPZ#6F^5*i&kNl~(V-?#?jDw@~x6pLIst z+E*e%Mc=PG=_fg!nuvlqJ4J@E@6~7vH>4%CYC|_qeY}d5f7QdIV{CJQzk=Zy1!d&+ z*hmecP?LKlK)R(1V`*B$s$d1-J(}pzl}(YpP%HaU?|QuZB~kbJ=IM-^!iE>q@4vG~ z$lM;8GtkgwIz66YV@a^kL?`mY^$+mdPK)U3lV>xC(k}M7v93Wxoy3tj!!YjpQiZe& zSs024Ez2}S;eOu8F#@jHzI0F8JQs_5VVoF?QITt+gwug%Wi_Jrv+7smOI`IPvZXuS z=B6K1wr;j~2Iwp1aTa6FnLIVhSdq=T$FE7KvP>=iAU?_MUaXJ3JM5w#N!pc{)z!4C zB>c;5n~TX1y&RS3C5%>QgYx-j7E;6eH(JWTDL0p+UMyamlFHX1p&D9@Jo`)S&U7LU#8M@WipNQt z52}w@i1lmQm-~erI=FeG?EWEYQtEMm_Ccn z?Vw-;e3fV<-l-Jd!~Y(dwUnL}Ro?g!HfuJvIpJ7a#Lz7AEz3|x#95Wm7U84Vc+_TD zjg8fxWQjKvOMPV+FgV4|kANBC@$XN^vlA69YbcpW@3|N9Yj~Ho+%TV45Z@ zho_~T?@Xgp=w78})d79H_Wdo>nr9~7v<-kJRbEC=S+&Sx&}8KxwSo$eY4RXV_h zaIldOw6l&b_k0ndc~}43G^ve$qDkpRwW!ERP(%@leD~INR_XrgcJbnpJ!2pj=+@Ch zb^ZaIMV+Y*ZzuV7yelkPQ$nOt{g|mgDH0H6SrtLm!dK04VinRhs@kTEkQ0goLszDz zQ;8ZCmgu}Xh^$LWqf9I-q6(Jvu9D1lURZ_0ZN*sixz?c~U2<}(S+)(S+WajzTd@!A zCZu|UA9;qyr+lJocZ5xAxsn0vYjZv3DleF>{{SrVpqbDUZIcoc{lrC@g_)W!qDM@G zSt$dAlap%Vznh+wpy=pe&Ge+>#M3EG_IuKhT!ln)6Y_l%rAKz+wjDeckxCRIGxwBk zS(WFjh(pLp>%?r3hCBs^&606g9%qp&cJ#Pv6LLVlA8%}ulj3s&$8Y7>B)TY(5mnwL zML`71>F7Z_PP<$F?pgOfv3lwiWnw7Fac_Cv>Va36C~T|{b!dU-+w!v_-;1Jg$+*LH zO(w6?4M6U_S8Vk>Ln^Ig#ITN7M|Q=bL%KQ9k(-$F0%=x!Xv;nClbN054h|vBnM$!v zZ9IbAHWf>Hd!n-nQS8q`YneiX+&&dvj+x_iWN@w^xzY?ovLpoSo~&19UNvdq*=XI+BD*>IONmOPe7s4Co#)N&l4xN#s2)v5ILe%^^|7ac#|@9?{2oz^D&mrT^U1r zS*%u^W1K(mL-#k_8ZL?06&?@FTR-(De2(fjz3_nO+dTao>L04Zz_rWh+5V*^2T;=_ zBUM1*D4S>O3O9@FOl7r98`kS<&PBcpHVV&JNwn)fnC$sDs}vedH2el($;w!2_wkjL z8!O^d^{NJJ{A{bICGXgGM{QP^olwbmz%Pil3rm!)YHOC#}{lzzrCsM`&y_H6yh|MMbHs{LZgNZI z;Pb`9L(L=CBv@rTj$gl#wrg*pFUzxyqD8w_nYUj#kb8j|hplwlhizG9I|k)tG>^Sf zuK|+0#a0($w>^HLiA7vG%2PK&ZEr5Ax`X!OU4p5n{e+fbcb(CD&ubx5V{#uh5<9uQ z67A9_ZEFmBWQyHORo_l?u!n2kj#|DH&N?f}9)1|#cl};&E00MPvaWmr^zidmt9_9F zE7qu+g}~VI!oz$Ui_%*`p#_RD3|qCO^?XH1_urpx?;3br{ON8^>!<6xecqNZanxQJ z<-Xi`@OhIYtU<-@_T|mZQMJAVW5EDU=OfVfAL@My?LV%dFLZZ(SXxcmaya6Va`%;D zW`dc^uEhYVtzF0Y^>PD|#e38~;J=XfV05dPRpteI)C;fCI99QPKboVbC%~qS!Q3`@cAU znG~j4;I?N<@W)(K&Sk@XV@5@6T z!yL$mt0K>?oWt%D1V?OeCpTga&SDb9F;ASpxOjy!yrMB1l4eIK4*d| zfz2tbY8G8HBv{xO&hHxtVbp7ukGSuPfF(z8=KJfahxQ=@ZF~_F)yS9CCyyhb+v7gVf+F$jID$gexivkCL&Pjfip#Wntv} zfs8m@fv`hGsez=wb%b-KASx)tm(&|zHDVPt6ni?TP96-=Ms#PzH0MV)pm2%4aMOI@ zLU9_n&=(6EkCxXCXRMKYG=x3f3VACSqG=PSMTp}p#dsp&JPO#$L%0}X_Ba(6OFy83H0{IUzeg77-KJ zO$l5)2UF2T&Ryc@wIK3HBt_2#sB?v5+`VxG?i&ip-YLmSO&nhCK2e+8Eez4}Hk==j zDT?DT3vg`eCU-g^c9NQ+TnbCnj`%v3k_+YulaHEij42S}Ng~2m#lzmmq?Bs&RCt2x z{J^A?|GsDauc%q{Pt^P$W6K&`h+osltN*lQUK}+-n*SRM z5-2*F-aF7Y{sNNdeYgHx`E>$Z0loyV|Mst0WqMToE3Kx-(1-7S(!KYysEz(~H0aY& z%qKvF0ghq+Yk+K;UfqsZwuxK@^miv{29ETT*kA12{d3&8?g(Vf@jvI86P7O~EW0Gq zaRo@CZ$9S!Q=NgrH!#Kwa5a79`u!CkjQ+C`+0J%k|K0Id9XyvFPX|1r4>n_V_A4s{ za%y^14G>cF7oqgznx0kz+8td^Z-)b_o$xcQPObf#_BYa>t^XmTj=uj@c0I7|6@B##}%`{RhCm+lJ`DG>}Sn zkN)h7|1OLFJ(30r;&gsmDIlgl*&d$S9+{?Z9rj-&(K}PkKa*&BNBs9@T)@en&A4_d zA5Q>Fp88*D z$xaF5WYNT3MZ6MHL@AyQ20AS0MGSmgj5z6DZQtp}Am5t@zH#)yJ(V3&!XFFXrAn9O}n^|Fs)t zjIoa;#y<8Xvb4PI*(ysIlY3BqT|t^BQ{h zeSbdZ`~9BlT<2WZ@8i0!>1C=vTkg5<=i^>;t~~qnV4#v*-)On#1ac>ia-`X=^K8yE zsHE-I10MaxTBl{lghA@}t;ek;h5q|GHRc8mbQ|}z3{PP}(ZLCkFw^}O(Xe-SAFDzM ze7S*K71!dqL6^hbg`TMQ*r)`VprxWSLOX0ig(}TX8@=zJnMwTkje+x!l(-gDRvuu` zNWN3<^duKN2)EH?8!7hYqRydHkw?rddUQFtEarU8L`)v1pGugWGiWeTcqixJR^mco zx!Eq8b@<1+tWF3?K`w{c)axDkmhk8Rw|~gDuB@~kg?AFVQlamCU1UyL-1g5&f2)b> zwYX~#D<(3D0A+T_7g!xndn=cg;Ad`BhT@!51Yz4hU=QEmRoQpRynuy}M=Q6+Zc7WF_8Pwce68;)hjyusH(vzTC6yKdZ!r z6;*EnpLPu*9#IcZZs*~(m#n$(H^WiMQNi5V36kq|N5J0`tBi+Fre8;goJ>D!9Gn{I zUIocXUymv{&Yz@uCw$gI;eP**RD}cggd}2TTWac*)sn6$Ke6HOosNZ%W1-e*G7sF7 zr#i7U)#?Oh)+cfYp9D4&`wM;Bj_7{AV{oVb`{Qy=0lVs*f{S3S-ny{ydMM&OZbZlM z67g#MeeE`T3+}Q_n*`(Dp4xbsf>FEV)322al1!fROWl;g<8hixV;V5R;w&CVzYonknhTe1=qax@)TDtf*|O>dz(P{z{4_b-D7v zX7XsQHnup!j#IfA{?lGFy|c!T>#t6%#ePTJ7>~Zp+t~&y?YyRzZh<;Q7T??w)*_p zU^d>U9`#CiN4zm!(wS4EOIVYvRM08~z3C(v+L}w2D~CIwkY=FSMCDaDA&Zs4EeRtjUKS;2hz3VA7|M;G9zhVa|xr zz2&m7+N*&7tn`du2Jxz1u;hF#+u{zy>QEO5q~FLY%)TrQanup?3jZ97UA^m?!!x8> z%OG^tmZ%&;971i$tG-0P=EoWsHpnpZPx0gBB7?JBGKTQ#sV1lD(-OVi&#E<1V>uVU z##)Ol2RR87mF0p#CMS*fi;Crr6D>#cMZOf9A1k#Jg_DbnLQ8C&&E%?Wu%#{yOv=R_ z68C14e8b1e9?WzjDlMOv)w-8C_?aoI&X5}KkMR`czW3Cu!PdSQD>Vq3JK3U%;O? zf)v2`!terG^~dvW3)QclE{-8-7*)TdhAi=uS+(Ud2@3UAF9v5#o8D+IpHDGz8);Wl zt1FupCdRmE6Djut-U z$o|(>1+2p=Qo-7B8?ezrm&>kP>+`6s6l#_XR0{ht`)3`Qg zuv+A+$thZsg$6ND!rH6(2c@Ikq1XSH(#r?AS#9!;z37+zF0Iz#kIDs9GLJ52N#E6} zKjFL{C}9Oxa~iL;S!3HFX^T#DOoTVN-%4mr1Su@c%?#+diG*4E%AoQCV!vuPU^4@bNk!`>QMH z6vvgpwVO|COkTd9JAf4+CSSmj=jY6CA7G-{fs5X_R(rDhHu5xo{Rt~M{*-rBEH^$}JkiI!BJNWy!~9-K$8=>JmptSDfGt}nqL1}B zXF@YUOq+C{=fF;wU@*k%%c}#dnp#kykf6wSr;&}$Egq253sS;k>Jg?xZCrsSj}(ih zTUt)2Uwwq{fY(-YG9fXw29OGE{skN8+iJ{Q^+hg2&cg}sDKBQR2(Odlt}6!ykh4W!$3M<3Hk7Zo>n4{1~dyE zcM~af9Zq0hfW2{t6zG!k(U3Q6JX5I&P7AS5u+R!!d{qx@%z)g9OemUwz0M_D^^iN# zh>vt*+lpa>Hi@IUkowrf-eP>euGmxE*snUU4ph=8Es`@WcCt9uOjj&%A_+bLo03l+ zn+OAY#J|_YWmEUzdXkwI2yd8D#;6{g!K5!e_=|57w@GnqZCpFZ zi%Ghygd`C7gDy-%;aa`n4Ks-+y$&KO>yhpaU1M3} zI%bi0ZvnQNn(jeMH|+xaG`=<{afOy?sKB!bgSzYDUK&78>Ybc7fH0D<)dmps2iSZr zrOrH_9}5M;p>J)VsQ8mJHZf(oJhcm19n+yDYQy6F$QI++0E&8xl?z%&D|Kx_NY^X~`Xoqvd4 z>juJUAejaNY2bjGo=NAfhvfrQ?|&C?O#OdX)Nb8-@4|Wy0UlRQzp4hR-++5g+$Dyk z)Bzs)pZWq=YM=lPxa#!ZuA0sQ2MXYOrSCnM7`^)4`n9kP5MZYF9=_gbqg(3VJTZC! zobH~1miHb;3;>7$HX6|V-MaT4Jq$pH{g-=wNq5hC1{%1z{-ePu08ssRxqFW8n}J&Q zKOHl0YP~0*#61Hrx&PMhLicYQO^=r8*Veo4`Om5K>X#jWUk;e&y+$_u^>0YmA6nPm z{WWlcy=S9;pH%;i6{jCl@5bkU+TVM*`<{XRlfM7!17M)n{v!?aOb1ErT{^${K&H|; zCX10w)JGlLl>PqEk!GX!dVNmcoV3>eEbNrqWvMuzUspJKhPmNZlq@Wuvdr&kbd+eB z;_LekUm7jBbc4=yl)O9e@L<#EZ2u+cu;cq*s=Jhja5S5(g@wLom)>FeT)!|VAa`;_ zowMuacIWwWhOX=re+}L`(YkCHuyOOUH0f4qTPJ|?>M=ny(Z0eC+!}rF9z}+Hwu!l~ zCj${-^F`%~319|xU0f*h9yv-*srZr)Q!wFGFjYFrIY&-ERa*P*DjaUA~}b;kzJAo%e?H!K_E zVs=}_rPNef)$m zv0sF6mLWS;`}IR4YyE7pxk}1=v#b@PH|j3~v2W}iTenD+l0S(Lf6S{edjHYiU3evp zc{O(K&|GgrMF}>?I1CwpxV56Ut{(N&Xd_7}Y1H3Ex>Bq^Ra!*ITTGBv?Scps^mp&wMl9BzT|#V@8h&~lj81ye)Ho9hWFTG)@y}%!9DvmFA`~C ztD4u;I8Uryq-gM2tytf#S0dCn&t99W(0V2_S7q12tFvQRQFy=cSm}am5&viX(SFqn zIJ09i0hZ~y$2+!Me8rkHGkS&XrgNL#+1(iCC^(;4KvukMo(__^U0Bw*eV?dn7T{F{RCC9e``#0UAFav+`U13Nmq*O+fNXejl> z&aI0mP|ltViS(FD0BL8pSS8Pg-JUz;RBdQEpPisgHlKedI3u8(&dZPfKv35H3a(Nw z$ZR(!i+E3}RV5l-%XJ@f4wtlg5GA`WQ{7v7yO?4gSgCBnL-27EBi=F?)!eCfgmQo5 zj(Spw^^V5W`koHO`XO|Ps+0hD2}a~IKQ`i9>dhl9WbDD z!f*QIU6$BN%pFCgRUvr8qC=GygOdG@$V7K9NWEIO-1}zkMB&MT8tMc5{_p8rBIb^@ ziSC?8O|o;#;X{jONpGuDuFX~7M0@MVV_L73K6p0#Ng zH)YuvXmZ6gNOXzgA>65U;*g~x z(m)S8gTC0EV*AS9WYSa-bE!;d$_1rRQK1&_Rmv4SE~rpYp@vz)xqz!Sk-_Ib`Fbr) zG7>M>%ttMsS-<{T_N1diBG-yL>)V<4a)Om2gXO1xjSyGY9TYtWmYuon=boz0bOE1J zoa{U2P%dItR`+w!F`tL4pq;JcMc4Yyu_Pw)5oK(dPbxlVyd@)NKG%58K~>VMH~HKywSn!VZs4MiIev!p{N4kws5usAb%m-QHGJ+Xf2R<4JCx3K%m&X zq11MU(<4YkwHh5-eD>pl0-{=ZF1M>R?7=y=mK>FlRP74lc^0);R^ig=hFbfI1b3vp z%9?w7_1)8GY3etnHdJGyZ62rB?RoA|s19%CK<3$ih?k`xPZ#tWHi+2l=caJ9_G!gO zr(89a+n043yi$kD7I0JVH%(oRZ8dCdNHQ(3o%-c?|E`N;!g{FGU$8$IU0Yq@9=V~ zIl1TaU`f@F=7r7UR{H4GOsBjE4Rm{$Tf&sd4kZn4)+ zyj^3s+clpTMJP=1*!0MYd)F|)>D@`#XGhZ$ft;ZDFMA5KL=$vo@}YlW9!{TfB_AlY zO$x}6UJb(%243$(;ZGyp?HgS+RYe;{pWd1kezX&RcyQEBl0b~ zW5iLI`Dv*7ofu(&g53({2-srbny} z5JKP6`4EIXgvQ;I<6DH`twAwI+aX7LVk3n3Hd}#j4V~AaW^jV6IaZ+t?+C|Bh08o^ zB^=h}Gl0h_Q=>XYYt(?Z%a4_$2;ePFCb$9=F~F`1dk%&b-8xJ zK|G(TiG~aKl{KQ~0)e##I^s^EphzRRA>52{i9NVv^L?o#JogM&e^7i83DTc>iK{LC z<^uNif><63XHg8B3QA}sK}u<`@`(i2t%N5t;2IKEfeM=oBHyE41rK9e7Om0)+`!5OY~bn$sb(*FfK*6LX4T z%@YY;;WAG_@%A*;wQ%zDY1n%b!I?%#T}Wo1f&4_1zttzaSRk+PaJA8}pfn&?hAB-X z=ppUC!3lt|es7T0NF{;O;ykEnN)2h6Bph@t4dIs{rI#L|yM|ZQ=3?=~Jx8ahd`RcX zOEiSzG&5tgpTs;w#9yOc%L-3|cyKQpq_dDPp_|a*X>c?x=6zNO@(=GmNvu6%_; zn|vKPcxFkNKa0@Hd0Z$95}O}Ig@^kY^;-XGWkSOdifr#w|p!7K2s*~Gs^a>X`Lm1nq!ehGuA69*DHwuvJo>D#m;qNIrqI%6Yi*7FgP!|B_x^VN~wTJ5h z?uY?gSL7Xl&$SU-x)ECj6rX`t`ZLgg28`uD1ibTGdjKywpSp(bC)4**T3~7l2x@8n zE?|F(&hw(t<63%3`-mRV?scO7N%8_aVPkmUW+tED%@$TN-5*=N=O99)9bpK9ufsHNtjW94x z1vIJYsqWS;5p0`&Wek|lJ;V904)cGCboYMofBQ=REk6PM{HJ~&HUF-M|807KJLuo~ z2Vacd2mhnLS=f7h@IS9#w*l*$_8)6~M>scp65cADVH&nk8mW;yZ*brvjO@q(T`kk-nqxCV(sQiE9vIaY4}|eUQrk2Me7q*! zn1AYds;FpVaUOS7BngJJO+|Y}PN`&g20&^SW>bDWP)|r?y}90*WX{_LGCtVeXd`7{ z)?@_H;EnHBu#t)P=F3}{@IJ@cwT{cM-DH5K&D-Spq}%dSZO~_YH%*M@Hw=n0!eNs= zIW8~qhJ=F8ZJHXTyi&LWz81A5ep}~Ajg?U&Yl5&pJC8?khDRicv%qCB4W^RrNhvnG zc}h_h!c$3PziSbaH-z88LKBAIMV9gLSoiAt^J=#(^-B#;jEeZ&8q>a5SgDhqpDG%> zl9d|MzJpx4Scf1NBEg4;=WcMe!9J!OF27gOaNue!Og$(h?3Iy9 ztZH0b?Z%wKc=7vC4=Pwl^`@4c`MwDC5e`+}0jZ-Du$>{Byupm-;~CL+>Tz#51}+l8 z`9fz}!0w$lpC8Q3_2~LMWSn9q(`LSrfXts(=9de#$%_T+8%PpoAs!>RwFM#W*biru zq|7!}kNz^14IcR11^Vz_VjJYSW&QlGtEAfu1w>+4iz(-}mHPrrj&fzx0|Sc`7lZUr z)R3#VP`H)2R8Jd6B`c3m%QWaX3*~swDxP3tr9LQR#M;Pk&h;BB{CJO{+J=;h1KI=h zcs0{(XcfOhG61Wa=XQXLT4P)#fr4XCoBE9>%8^J->eM^<8m;$D6MFRTIHKL_D3dH%s%PO|k zQihwQoeyc4|Ey6{@-p!LG3`#V)zXYlpSWS4fvgDASVz!q75ha+j3k+-cqnagdMi{INyJtX%r{A8eV z>W=z5jt8xzOTE|FeK!oh49=2G#5AL?!hKJXG}zqZf>;Kf!5Zpq?7A%%DB;B{2Uj!` z#80KN*x0zeDGDL$EHgx@Of!nJ>5r7V&+?>hxmcaGe3tWKqeyq4p?zf^1!&hKblLpqo{Q;JSCmeNnN?xf;MPH-*RD8S51N$sVm zV@i%f!w&6e9Fu2~zx^eIL-7wI?sEf5j`P!+Z9RsSn0=)ji!b<3^%z!>9w~vw*`0oTd>J`8rt0aHmvuT+r&?{IBAn04ZTgl_^@qcp7skt;Z_dinJ_-0oCh@v$ z7mYm()3^}*g`Bao{k8Pfz97`2rB}>%9qwPrtHfQudODwfyv@mU#VzCDOwoaHX8tD$_i8as0nyrh{1T#0 z9oV)DVUpi7&dlZAi&RNW%<7vfzA;uuCf#+NQG6xVdO)!#sPo#_1dwejRsGC)l^s@> z8z=LW$7&q6Laq}$IrZik%1sIF;_v>8WX*mIO$uV-)IheeuptSD4{@r`ExI)7ul2=Zugxsl=lU-zO`4J8PdYF?+kZvY&vE)grmhqoqAx_)5k$ zJU(1e70~>0!K}0VX>B}n;>#E8=CV$xq`*+M&1*v8UuhQ8Cn{3&rx>!NT}1Leh1su> z8LD*d^q^LQJ6e^B&BI%t=9A-6zB8O{w3L-`yReAX2+uayMBZ(DlJsgDhB}-fdAV)aUJ)3)&ogOd+*iSLa-vx5sa;WS*hD z{75-MaN~M3a@H%@=d#ZKSq`(T*9EVd6uIr;*g4s{P&JFBgoa}8$3$~$nq=E zp&alX#mq;M@1F9qR!HEKJ11BkSCj~PwoEUGYl2m`k^_%MK2+{xi0tu75j+##zCOH( zzxr+@QA0O(hJUr$B@#;>etJhxf9NZBe>~MKSBgKg*hJoF$0OmTF{_Y6DnsQy7)u&2 zn^?_)$>#Xe=wqEmeMkJ_e!M@EW=xvlh*xdnyfLKF`NQbvvJhtJE{6_(%;zx72GO2| zz(9JUCF1x%a4b989z1~&L~(GV_;_j9^`rLfL0AOHU8@Z%qidhbfDNtOPIEFdXY|%=4xddb|hvCWyxr zjc3C}SxjKyd^~Ta!F8*gZd-)9X|Sy>kG(lz%!A<6gW(y5w5$>Wx8hn_k8#_^iJ@iD z)Hp^EPbUI=VS;!D2_DRXh0?H>NyKvtu$`?|Vl<6ZYY+w1An~GQ3*1SJ#T?KYBAFUr z#X!0UiU*-(&CTPN&PIcVA*YMuvvt8C#jsntSjTm2J~isaMc5-uLNPU%eK=uXcx(-d zLkSIglS^vsA(bIX_a}7n%;Wc?VXf+k#arArLGdbtSifQ%R~~q1=%GNoj5uOV09bk=D$ofOj8va)+I>_(vffqnR z{J$69=?_5LSqi-$pYyL>HrZ~3Es_`mBAaOr!Mj?XfPqB~gt zp9Qe9j>Y|sQGp~C&~Bvq379{ouPc%1z7;4Z1BGN@U1?81A=xW)ZBGCT3uq$;T;FA3 z<}Yi~*wxWTJlrm{vf^wO>-{?CDKv6FmV1oavr` z5EKxwj|^m=W!(VhY720k{}h0k21L(3f%5P!Z+dq*iO#vABc}nz^e*RWH~XX$uKs|n zfCpeg>5ul((A~|X??Z3C4+E#GyWr`u-N7WFPW;<=(gRVtUjG(-kN6MX3J64hbEy9w zNdjCay+!iJd@$Y)5=w2-Px8eLZllp)5TfmAI{Ks0+&78u=15}N`4eQ0s@bhxo_L}}v<#P5ub!FWF z;)k#Hmp=8}?<_gsQYY}V_<`oRW3KxPCQiwZO&#{(T`4bg{9JUNF#4%1pExdlv1Kt} zzBx)KD~EM^Mfq89qvCw;tm0D3i5;t!jl0K$)xBS^Xx@6@S$fdtVNcfWhrG2UOzS5$ z7TZw~SrZmyE(Z0(&^m%!!~TiLXYC1hczEKvO~`gb_bFpquEunnsMIh!4)Sv(E>`A% zxfv2_i<0ycQk=7vFb_h$#d!2ENf{L;0>{4V*kB9ev5Fp%%V3|7&O~!IT~;L>!NLUi zA+rzC#zu|4T}GvyRPS^L^+|87u2i0Rsz-QsYJ!9B^I5}oRL%T#&q(28;$F|2x{c69 zO+|*@Eg$4#bmHvZ=cXV>&2kDF(uNeGx3gJPb!s)xH+_(WqWL)%VK%pu9_q1^nymGa zNKOvoLMEuj)8y_2PexDao&4v1M5C+j`UG)~FKwl_?;;k=%Dq;cZPbc5{aAfKB{fUe zlM!%gEDP$QLQq@Bll@zWj|a+ zMQ61~*}BBcaENl@r|;uT${6y^Y8;E(%zL2wjMgz`6S!QJZ$&={$OMig{ z)J##^A>>P~m$LNT9fNjt_!4~Og?Cuvl~0Fixj)wX-v{Bl{GILCMMj;@L`h5^&mb#kabJp;2uMsb74&>nqi>umGyG$_ zUnlLS^WA!npFf^I^^iW*U!BMN{fE*cX7O%5um+RiBPPcST*#|rk?qF@^M-25{nN3G z^5%z2D+pXb3j4m($bi$Xnm6Ey3ETdj*w(0de({Z5k*!QYU!(_K_>_^xLmcEl;ZW>( zkh}8>h7O*c8Ks>png^%FCBd^>xkQao561wc3Fj1}N~XaqX#e9(2Q3YP{{B9uI}@$3 z4nDk28wk*VC#&j#Adb^%?r`~VQr$*tBIFfTohJ22TST4Pw~bXylzO0ibU1nArJysa z<|v!dIi(nu!Y{W_f`cfA# ze(GC~5u2UnQ?i4{to&qdXSK<2W^Y}tja7)Q`c%8FS7(F+r@fc51J-@iJC` z6>C!sl~_DO96Si3>5mUdobuq3WBK5q$irb_Znc}j{%u7GB@*oz7MX?IyLRp!-$Slu z*tyTJ%9@wjWtB1;x)FqO5iFAL)Y*@~Jb53KCaUyQk5*oFV3#QERV=a`tIZMMrWjZ& zT%8_kyzJm+r@$uN4~#0UOXlHfSnOW+ju%==l8?`HNi15T>MGaOu6``@w3=4D%g@YB zNK$s-?h|sYzEqRoBVwPRfqG)u7!lFLk3+%Z2(G6PsX znyhr-@X?k;9D63Tp*Sqnpn>Mem#B*`br>KW3q7maZxdT+dd%OF=%8PQlTKQLdd>^0s$xG5>M7EoX9@nSk|KdQ3g zW609FaxsjNc2@6_|DNx{8JrL zY`!xv+);cml~*b7rcG`gp`2gT}!q0A?%dvuk8o74Mmf8(qN9u?lb%04+|tl$Ql@i?+cHj zA?~p-m3p@q9%>Lx7Y|OmiN6HOL2)N)Q+IaGNKhIvY~4rw5kt)W?#GC`qc;#B>eS^t z>C1N)!Mx*yeLz&?Gz9rGuvxA$+auUwg3L)+NZ~X_ZUIw}dqs-}qVJAXEoQl_v#%4z zDUXWff@9A;qcgS4Kg+fm#2$d-br*R3t78wM7!gE7KLg$nj&DNnl?FwdE#Rb9Wo0Mu z$B>-c8@%r71T#iC_xU+)9jv5kBV=21}j5hC8y)7QL*_nSicRq z9To3Ng*7e2C}9xgLu7e)JOm5w&`p#=CqAY|AFAHpj|M(XfYrg1I>N~uZ4qOnD0>Vd zjGDw%Oa$9Prhp(853^8Do^VnC_VO0CI4)6PLlem(#V}K3$^$1x5OrTuPzoLm>uF7y zqS~^xaSAe|G6f|CP?KCHV1>o09i#+i4_25$;JY4tE-9X)4Gh;y6!(SQ$&G*8!$b@h z+YcfelXhUT!bxCTwznw8)M}k3hIB9ZHBG&1?LDx_@WjJNd6|W{{M;BAV}@Z9j5f{G zL}gLW1XnF!@`F;3KglQpB?GK$n-Y?VO(KE-DaUYbo{cF-q;nglyEw@?E=-}lL_?2VPK4DSF28m|C8uB@UB*Yd1B!F7vN00r|<4GWv}_u3&!h!0x~aB;`x-=Z%u zRqpOC0VWu*zkBQ|;Ewi>fP>n-p(ViY0*NaCVA_K*0d-%%>F$|bAZrC8R)FOM#Hv81 zx|gN`f$F=JpL^OvHLrg86NLV4HUFc31hUqD|N0H#`rAGK!EXT%{}s3X^ZAeA{_h_4 zlGv^9^wKim(f@6Xn2zP5p9s?<<=_12&EN28AbAE>sQxZU|0k!l8mc44cQy7MCiB+K zKlUYO^ikC=cyyeob-o;`Nftatym_{U+@9!`q-Q<%%uUG0~& zVux2`m}ZZN!8*|~-3Gz!j~-o<_kxAEnXJ5On-T)aQ4yjz-E|xE#+cb-<0zAvH-w$0 z1MbFHQXT-A9;rz-9y2u;y$s~8Y;nq)>|Je(&57Aj3w(IrKbbi=5JHW)Qa;0du@_#ahu+oI?PocuV@$W8X4sO`%2L zk~8!}g_EFWZhDKVu$dO;fV_MzN1EYsW;kTRuU7jVe1S?(?Ch#H?)Fe=w0c)+6C$_0 zs6sPJh;R#^d%gg}zq-^sl)YSQe)eKdcf?y`On=cU!Avxmx#Wo3^fY8iRZOm!4f zKknC9^|+sq9>orhhYAv+UZ8tj;jG3oJzYDdH6B{xAwO7;sNYNop@1)zS6ZyOzfZ@KNLa-ke(}f0hW-lt0m+AlVtV-`>|ZsRc5_V@ z%<)?-tg;B6W6^Xv_!Gv|gGfBdm8OHiBu>N6(c0Mc4TaOYqv2+0Z1s>Y`^|XuM+2Kb zS|;WxxUT=GF%xNJzuheogBcKzyp+LXCL9V{usLV`O7-VQ^Wqt6m*Hv2ADivZJX&01 z4K#jk-8<2?-#PKe;LmNp;tsP6Hwtd^DzXY1E`P$v zT7eH{z*^ZnXRf+u6Gfom2HkgjAYA?KBCYGB12(G|ODiixa%vl!_)OGkk4|=l@Q1bN zJiIV}htooJJM&bMa#E@UzTzIQsf+^%^KrW;y zon3B)`?7bu5kE7CP&wL`ux*cWW}um_%eIl-z2B7e=XYox|CD&D$yj7O%(zBi#pGJ!|m*c#IcTES2~4aY5n!InQKQ68EHRS=jOIc<@y={7Jor)lQG~^`B@#i zGYcD}!925s6LEY`rML%POF~0;s$&sySF#R}QlecZir(a;ljeF(aM(}dL_+k2;`BH2 zU`ar*V>z7QvXO7+j2G!vXGI!Fg1xGlU#ef_k4R+XkT)-}bkZkWbdwcHgqeu@<`9p- z+Aoqkj3JJ__P31MD0Uv~h*<;R(sv9Rw?FZ4(a^J^N-eh9#9lL>omUekTW$+E=uE3jQ&Vp(Kb=GYSkRQJ z&*fJ8O#Gc>WV*!f&hIGMd|GFH{^C-jk)%n$+wG$*qhpPyFDcmSHoq*Dt5JQ#T4_IN z$#2LnR2gX-=#+hs|NW7$^5M*tkTj!LOT1rbp%#^woh)C!x|&t`-~l=O@pZcyC~M<; z6~(|MJJ-$1(1(T^=Of>yy4){+{!rmC&hGyAS5H@D>lx%!?4(5B^lsjHxH-1$`}8{M z{seQ|+bCuGO_x&%KUu5a60rD`+2`*E$JDIH0^KrspHFN%sJmnaUdb|YubpKqi;1r} z4>UgVq&7QaolDUk)w9K|Ct=~{n&J$>&z@D!fUrLmEaE*!>h&A$*qbGo=`Gr>ZK(9Q zL+hxIt>0;0|JLvIFm^|zU7c0d01NgjR?qRVBO<*KOyPqUZ#me+ZS@dthkM}pHmuP` zXAzKhmSBCj2I;Sjnc=8uvBib_xPwC5BUh3QB}QhUMh4r@Zi{yo&g8RMU)O&MpD@br zY6sagZ$JBaxDS5(nE#>Jui;gLUkYAkQ*=k~KZmE*IUK6+KmGZI@@L()D*p;bgS*ue zL&=v=mDS5<4z3f2;x;AB&Qr|Lxi1<9Tff$8k^+psPk3f))BL$gDs|gmO|o5c4y*>4 z)xk;?abY!g1_UBUzmFHo+qR99u!|N>hZzmhvo`m(;qA9U_QM0awSNnb;F4Tp4F`N8lc(8SZ zL`ktz@uS^GLE3_I0l%%`#I!9ExKX_t%Zku3d|fpHq8N+92HmVA?O<1} znxR-5;gY=J=EYm)M>049^CKSK98QUuDAnYW!(u=K5iMzZ2#*XX5k*l%Zbn49m7jAwBh4={}=`v(8mmbQlVk)LBC#B+nD@b0GZGd_;^m>?+0gC-Sg0*BwwTCk=}urHVJ1DeT~WBl zCOpGIT<5~ML_s`Cptv<1yca4CZXU~-7UxeTo|}k+)G!1gW6abM-sVIwn#eu_+PO+4 z`RfwcW{5H9C@lmDs4sub1O63_n)^TDlNnzk#o!M&BjD>U7EAJl1;)5i23$rZjS#E{wEA&gvocxU+Xm zT;-hR60MDGUciIf5?gf>E`*cu{L&h_@lTLCFHi|;;V>^)5)+2--Vlcm$3bfn=Zi^$ z3sAUvVp_4Rpg9q`1zXomxw??pW59l|n1NLX!3igbpyC;_Ne@sko7{vZ^nn@OSSAHB zmvAaX1Cz4A0-XoFdyM&xN!p>Ni8Q6LfZ`PSY6VA@S_JR1JWJxp6;*O=C>QOyyqxeV)J43>z1!{4q64ukyFS+#;v;Ofj)xvWy? z3^v0AhHt5E@w{?+6!jSh*Og@7N#4&i%6>))1xX2f!W+~SH=IkksK7V=76ip*UHOyN zI#c7WP)XU;geGd@BsKXPHB~q}T`xPsIh%4No0^@S)0BN|EiTe<>>K`TU7_ zpZ{yjy8twopf3NLfEgtq(G@sDpBR?#p;N37yP~tK=vtCO|33&ARsvFA`G95RUC^^? z@UkXwOM4m6N1d?$Uck1}p{w+>SpZlCINV)*vcl6*&U*ql&Oq4vhfVcw4|^dnokx{P zhf(=vtpeAwK$kiA*4o9}e?$*~_q1DNUZ?L4-`yKQ0`SeBNxwx;fd41~s4Z7-B-aA# z!}K*I;1YIkfS8VQ2KZ9Vf3$g{g|3^so#nkjB;W=XXf6XiWdP;;cQ^TKb?+9vp}dQA z2JT`1+`!TgVCh@Ke`{hJKuG}tfX;v^{&NpYA0P&1j_BlKI>Hz*#lLA%f47f!X;Snw zcyEAsYIlGb@XPcY*d?HV4CK9Z7W4n1FS^^M+uL1lyN8pe`_sQW!h8O7&!WDF(A z)n5J#K&=1)bgR7`B)UKStsUS2FslF5A2Jq@Z~u*!20U!Ve`?ID5ob)WOq1%K;jQD+ zu}Gl;9(F04-?`TLSfD1kd)e&T`sOW|9(FPhadwvX(1;du-3es>Lt zzC|$k#KkKT*eDZ4^lgxZvtK4hLt05rTo5(o?uEd7nBq=m0@l)K@kZ%8A+f;r#jJSc zLYM3=*~0h=XV2idD+$XlWF){fpI>F1t1hs~>Eyk_iH$|}74Cxw>(7^Sey~+ZE4rCg z(Re_=H&yO1MRbK`eBbJ{M@g92&`r6$YPBSdlKrQydiBW7BIkAGE2N=wK- z3ucd3i?_Nc@YlPXi&g5G>lXzpdZ+_L)|Wi{tpkVpmD7t(_WN4@n&Vg%WDc>YZp4%H zu1UbW+V2>+DJqeAw0ykSTS{&vZKjutw_iRsK4<%JhZ4e9$dP;Dg=F=yxCxQ4H!Rto zK@mE$Jn?#mGd)Xl&TF-#D#WkObPEST^34@4UNKHlEX*}}TEm-H_e3&sB9C1%KB)ck ziC-IS5^<+M=?TUaVgP!$m0jWx|JC9VN2NkBsh;(IFb<^X8J5Y7OoMxxOLhM>_n5am z>`j#T+u{a`&vX0FfD|rPgMgaQ9iul)-z9r z)>C9sVX?>2(~kWbB>to7w zlk}Y|?PRX;c)O-XIj~du`vxu3VIwWNc|Tc*<;lbSc5A8gu{WI8Tg^XRvQ>J4@%{|G zENFGIHo|@`K~}4&#VWT;%zR5`^;W7$MKvxXHg(QK%I6R8}2+Pm&;4iTP2>k@TF6LgX>P!=B5uo|EJb3NMi` z=(Q^p!+{U>lpMd5!=g({Q=CVcD(dEO*cal&tDcw$UhX|v)NV+zZ!%LuC%htMJ6Z!F>jftQCW;fnd@s2r=ryS zN=y`9X0=zSa^+H$`z1?7CQ+1ip@UiqaBO>x!2!tff&T@vxThnWpG<`)oa_p4zulN+ z5b9Waq&UF#honn46smUP@XkjM<~;sm^^_WXMc-fEO3tb>^CI_rmJfgNbeR%&Y%uaT z8pK>S`2hZ$7C69ShiZOx|6!x56(KM*t#)E@5)U%S-oFnwprpgO?R@apk2CH|L!TRcs7`T_;Y z?cd1BK3ulyvJ$7e=+yo;Z#5V|340AS;wB~ki9}kqU>EEag2(Pk;=|? zoP#s0W6#Q7$qa`UA~P$Q4J4ywq>SqHeV$bBUhmK6`}uyq*YEmW*V}c!p4XH5r+?(` zet+EVLP(Y>DWP{fe);X)23LqysSehbdb|q3vmcUfvyT;Ue=av}ylVf-dp>7lq4e^J z4vIj8=VCrtne}SWig3sDqWa9AW80%O9qch=-Tk7;J;%1__hHd=%+_to1~q7~9X_?d zryi$&bayo2WmM~AVPa%4hBKe0ONuh0(uzbpEf3se9kb22v;Z0_NDQbl9$^)~CB}8s zsIi*w1W0|dRb~<0ScTi?X_+=9n_J#qop}Oe99OcxGqI`4^gegsLdeuWX~SmmlMm() zKRLU$CUWH3yIWaBGs`SD?GVBr15Z7XnLwzv7M&&fMvB2ca5uBIDcujg_I2iBh2Ddi zvxJ(SnOB|TO{h)e*t#1Dr40Mj`sps)J^G~-|>;$Twn9XEOIW0PSMYD>i4fMZ@aa3zb!PX!D&EBP08 z=PX>9(;Geg!MED``AYsa88xgJU^axtIPgKnox@#gB=5dUc-d@Yq8LcH&cN(`Rhj=m zVPf6syRw!^U*VjI>8I6Rd~mPOd43bYeYNfRE9-Op(z2QX60s#86(1h8n;ia(JO1Ex zF-gPj-duF?SFIP$>jqEnUWa?umk1iw?y$7EatCamoxYV%wqo~z9MXs?x-^MxV6$YA z#D_u555}p!oLjLf7TLd}plQ8P5XyEBYC#{3*@74zH)3|hhji&MhcEM21LM_3~_ zjb~$&>~$coRZCo|+nK$|HwA>B6U5z-lwHH)3?bVA(qxjS_^j|Y)`xi(&GN|{4OU}) zPs8%%3%kDp-Ip!&@YV%*GCXA#a;@!@D-Z9>HWtWa6c`$!S_cuKi4qN>We-xNUyhPi zV_mLAO9^AdP?$sh7q?CfWM8=3bMg*G!`6E6CMMsgqBLabLPu7VsALd9hU||s-X>hSY z1b=ckOc)%G!mJwXn??|{p)AZkuxLD?oEIksuo5kzuS28UgM?<0M3u={un&xtL~NC$ zVQnLV3qUo{C|fOLgHfDxkXJf6?yeCi2Zd>~w;a7v;=b}QdLQC)d0dz~;#6DW{57@dIow(~BFH>x zitGVuhwSo3gl+MALX(=*5GRnNzDas;9UKA+S4WF}q)Ga;cBuuL+`3HznIl405(Vo? zkKGgKeG-LQ;@$$z+C2F{J|*D0QGza%B-0W{e*|&Vn>1>KEnH@KGtO|hBJQj=B9A8G zr5fnjHPuA~L9Pd(b0n=Cl?E9BzciwI5TyE&lx(()u#ig6G)f2iFryIhB5g_d*US`m z^hX62we56ATRhN2cAX+zbF`ewXZ{Fbd8t5PRD}8j6Xc9DLySNc<8Eb$tXQ>Jhy`?$ z2P@%t==n9oW_i}uBqF?x-pDpm84ZyFx5tAwP$bTJxEv^I3ND5&Q-0>IIy31>7M8yg3E@ ztp#C!?tA|YZB@c+{FcY@|C0a<4#2B^ikdA0`U9`pdk2VCK(+d4FuVhLHY2pZc3bMK#uY0@~F8==pLkwO0+SBZU-ggcko7 zl>jDt12`B41O&(cfC@Mj2GCPLfDAb7KkR0}UIQXE{1Fv8^|yeK8OW9arZeEM0s0hh z6};!Le?q6IX>&;j@T97gx~2q#&(zErC}dL)gQ+LMTYH9kk3j|Wu&EjXHkEc-s83*f zn3_ccZR`%fg6|QWXLhNh!oT!&@C6|1#xTI30_xX*evSuGE%+YU88G718{ogsfTvZNv%vl5Nv(1Jq+0=5@!w7EKN0lbfUDoXLilxH{F@W~`^yx- zZU4ujtqxgpJVv1!JFj3hQ&LOoU5_MTv<(DgNpFVoK^`wPGT4@%=I>7i#|<8OJCP15 zuz#V#`hLcPZsesW|JLPacWV+iKHNRyeJhRdD#I`Dt@j(Up-Sdkes!-GTyCz!G!O2^ z72ZdbH|#2~(PHzu(i3`aFSfk!%Sum1Qc50tKS-*N%G@@yyg^-1>XBw+cq(+INX3Ok z_>0Q2BRATi;k@pB4ffd>TK4(@-E6_2Tz}^9`7W&J_!2`Dhxi>cBySURR`k8HG67e6 zV$@tzY!S6zu&g|I=e(%W=ypy5qh{gj6un)wVFeunLb1*v{^02}==J)Aj50OC zkZPnJpQ{ohA8@Aw6S~91V=oVTtbWo!b=ty@(VuYDdd^yD; z(Af0`ieGu4(ll0aPO26TY#%L8UUU&!6;6X!n|8onirxo%Kmj(k_Gu{cIXYq7e@?Vz}bj(3CTAo8jWw|}q^Rjd}FDT`EOCeuD z%EOoYo6u7H4M!{p{~)F>?FlzSTtQV*OO=fAiK23% zT(?x^s8^|~?FD(UbL^aqRm4tgYX2?FK2_~;S*0@Jjrq-9o;>#ZU$pLTzMrQY=-hTW zDSWwaj!ADYUj!zSTD4(zc3k82b{Bh0k%?%MhKR95E$Yyil)u6YBu|jp=zwnTb~`L1|j-K~-4yE+YJ1TxM7QM;DF(Tt!E`RSW3Z2C*mo!%W?S1mLyp0A% zQt{hn#iOWD+mGh;-@Y`s(H*fL@YnvnT^_eCX*(`Dq`8&k{*wFX71F_nJI*mhl-=j1 z8=7`eJ*&qBokxTyYh|j9RXQP*)bkP@N^!L6-rSx(hTQDS$0hDn%X}o?1Wh$RtTV!3 zV6sS?*g9>9`l_r4O~H?QYh1=@-e_R{P$eT@=f^$}_Mkt~PRBy`$B6_P%23Z7%?lfD zy-o9opk))KX#8=dYz7uX(N_Ykqj2%+A%bhLE@$^){c7c5;>=wk+kA4@N`Q}yHvQ|3 zPBm_gG@lUT1>(^$@;w&J8@8*0FIijYVCth+l3Z8xg<`Hfsty}TI&jpK158kt4-*rN zaOphoo;QP{Sbz5H5eAWG^$Abk)WMcM5s&Ud4YUel5Ljhbn^Cu}FO6a`t}b(^(JWn? zCVl?6_(CoN+%d~5!x>iy`tp}1>Cas_mCB;QAojE)USh14sn{g$sNG!uw00raTzQ-- zMN3Nbmk;&KiV&;2*1qfFI7vzvU_Qb5G}13W4z0)=M@v2gEn~w6_zfh&4J@` z#tJoNbI#-y5Y5P&CGuQdit_HfMr*UhYPa1vl%=_P+c(P&e%BLbJb=sNPcPI!$5`dj zj+H*xW zXZXXi^;{nEql%*+)%(2Z->>@hSuqp$9b3&y=L}4zi->emqgs^9)@RyzTARkpYcx%~ zTxYDNKXx@WcX?b%@U?qMv1$x*y6k;Q{dr;7IQe+`CEv`r(|tNTrCBfHE>>K!5S1*c zn@DgvPrfwLo1=Q~#X94K-b>gn7O|S)H@D7xGdZ^^@4D|gy4pX|^xPJEOjW(U{P|In zvrXy@xAI?9I^N@V5XGlU(TKm7CBMzANExrRSeJ4*TKB3=@^BsR4Wjbw*VEaSLG6dX zzdKpSo^&aUvv@+)r<+nm7`tBQQPuXgJ9sqYiuQ=x)D;mWA!4_Oh=1^l*2Z zpS_(E)-W^&@>bYX72~sFDPT9^HDyqy`N2cf%UO0xp|OfF!LyMZ^^81z1~sYp&KB~z z)7dyC)91qqSEq<<`p3qK*MZz}2!RP}#GU$3Im?F43zI_;oACOXbeB_i#|FgX1nU#t zsRxM(z53W#+S@_z+h7MdS7*@bcJ^Ie6=>$;$4_wd2`-NT`*APMe%XyDo{v0T`F@=H zVr!u7eagO226}3{S)Vo zdFY=-T!#{IL2Deh3!LxGUNQ( z+b07Dgg)ZCpG1nlINwutDwd)Yc-iCC)Y=(5FLnqUQ8h8xR8S0x736h?&OtPgG)7s`COx1B6NrzsbehYNrX-P< z647kSQD9-1On$UOPmD~y31l5=u^cH{8#e0{BMxOV8;$ND&{#@*2z0c6s=_Cfp`#CKLr84M- zQ<$BYNweTn!=RJ1;HX;I`E1-iWX3*HdMF>eU~u|=zARB;=J1x(NRKSBf;9T6wD>8u z@Y*TNiyz$LTWyNJ)D#kK1q8sI7ikAYNn85LJoN~ zpQEVFn1Y0Dx#!-S`hO`^BmOQ`^YQ+Pq1XNyL-!vz_bXQ33zz@zp9kFE9&o4js}+6U zDFO0(cj%{nZz%oybkaY+PNip2sm_7GEi!df*kEri30O?}OGec7q<;zcqo1ErkCK64 z+AQYdso0N}gpYuu-ZRfY@A}No-Zd4hm9**ri1cq-J4*tz`cu?*$CNeav^7^?ayWC( zMN_HH)UBlJ8-Re=nyTx+Mg0`8*`EN6GX@wN1~!rQW|3}v0?OEXb~>SsYM9fTfCBa} z<+OhJBPzG~?iXPAh|1HVZVyv~Y3kk);E?y!O|{CmySJ;U+M=olh^@Eler_KD2hD$+ zGhmhP0x+$;+ht$}>7VKt+W~^?4uGLGzWaC&qc!z=3hBizu(P|DS?>|E_Mllnse4br zAQHfHrg~=Jf_WLJd4Hu^-!JP`R6PW)erwP!&HFQKPQs@ zo=e(WOafZXKwb%}jN_zpK=HV69(htv}xOA20u?aQ}fn|NZg@ znnk^Y{stK1x&PD{`Y@a$gZE04RqUG44KK+vO^@9hoN@+Q4wd$2b@#nBYi+0+b~>DS zPL7Ymv!>FvA@IB1JNGH_sfh=zOwCs{`UCA_HU$og&RNB9Z9U-)9s^F`o>t>;PpB;M zw}19^l^(0G9haui5#|Q7z-DN2{4*;ji|;d1wmd~ms5@t1V)pP$nT1PUrp9?pAS#we2tLjsgE_) zEf11(4)vWBnb&?ad2ODMxH)PrEmvKdt5Y)I?jqn#?{`4^o^t)`RKjovDMmXmV@|t8 zFxW-VM1JMT0rO+9UR6d5+cz#Y+{Mf|JN_dOP16*1@wCjgY=oLyAUIJc`A&tH^kLsa zZdr8Vdd4?WEDFt4!Mh%!LWfJ0B-09H=|u}GBwYwac9lIy(NrD2M4j2~WC>)bxE`d; z(5}N#l~SOSeNnsl%#j7{=d~dV`U|#ZPj!Wp(@G4TX>~;#Q1JhcaXY8(tW=6Lm)n3@_{27QQQJ>e-o=kFM5o zAy$xg)~j`=Cuf8OnIakvMmMB*63NB17fc#ix}4Uc?kTDDc5Fw9Td3A&iPTHg2MMwX z@iZ?{6!LnZqotGcWD(d+wor=k^aTmCo5gvb65g2C*R;wfH&otF zl9e)7IsBv5jwGpFqOPBgC#R0uu`(i}dh&LVAclI;FLQfRXL1VXKR zAlR4^q<$9bn|l?dQ}BWz>X50J1Q8Q|YMxYoBRN!%!$PGo-qKjAY3;6*R(zcZuXzBEF7Lu?nwmfyF>_J1E&@$;^sy!Q(_$$jL0>cJlp zrQ}x```;}MeMYSftww&oJaUe*VMC}J>xhKDpRkMYiKSg!Wom}@DPX+UkS%ZHv@6Ji>Bz+St-4cF=yDld05lq8qVH1UD%}Vqe3hT$Ya`ZoJ{8 z92Ru^NZw!;5<$q7K}Bfq`sy4Q9KyInMYB(2LdDhB32w%noX>0kW4um$jh#mole<0` z7Xnb(13Old+_V|V!DVYi$uXn*&DR;Yu6hYQA+zhM?_SY%n=%l}USh5>8&0~pHfH-p zp=av;nv7p@5$lLZhXJ@>=Kfld$Os)yyTi%-T(%G|ZAFGT(}wlA9Rtw>N%+?ahDg^< zknNp16V4n=g8Lj;potf^N_ZnsxQUc@=*@5~)+XH7Gd&o%eB9zaoBa5)3*&dKx(3bz zS>rNb#n(D8fkjs4SH5wo)fVxW@FVi$_)hs29*E@v$@}!2zSx=q?#MT7_7ciAgT_CN zF-BFNtB~XRJ0_E~%Vs((7Wi_#A{wwdlb6h^Sp$^}U`GY5q&S1p;}$ouBos!ao!N<1 z@R}oLw2pB-D7U}ht2ml6tz788CT7(s9G|&6R??&}<#^2EY3@r-X7$T`hcB)_Ep75I z2;YgeDC4(K5IrL`>0N1kcBJ1VKD9lJoqY~a8DjCLBxIU{i-@@P; ztDl7#+Zs4Dd&VU#y7C2{eJ7A1l6XIZt1@6m*KxHn&678yCSs@KLVL*L;^*^q_Tdue z9;n+^Hfc*`z3`m=a)CIAQIU#azI~caCQ~mfqtbYe66<+A#QHw@OQV77TwCBL~X zGWF5mPQ8)hN1s$ip01q3@b_;B=aOb@fNi9EuL5Ko+>YAZA8WiDbOLUB=IhJ@FA(F{ z<#(2~b>|-io;mnD{5GmUY4-l(W_io-4?NYaoFSWcs+wjWI~|Lf?G;fek-02=(1n=g zkTzKzH0y1pL}X4R@~X@jb;c!3gVU6hC1*%_f?m4}8V;M?hP^S;8C68a13SIuiS=n^ zW^bhJv%ULK3U^_`5dU#4Zb;`n-S zMytUANlSnDYs-^kGEzZp6a&tjVO?8Ay=P>jIp%f|9vc9xLHR><^Ac=M;TZ^M&H_$ic4@rHV4 zOz!mTg(>|G&HLU}vomv9u|X)rF&`tFZ_+&7L4}mhf*DBv=R;b^;4{zVeD%5oWNp=2 za__Ej`8nU4a1F)|%)IxiQNH)4pQMN~sr#gu^h9QpW>=|nAGa^EU>OB9?b%oDQ!iS$ z+(p-KurKjbL)w8wiNhUho%NruUE3$8w;IG+ZIDrKnA>&P_Dd(1Ecca3!KY);ZTkh% znp$y;5Wif2%I09YJzfV9j_;I`)Ff$dYrXJ4&UobQa|@qhewk`DEZnkfXRr*-;7HPY z1`%PbotcKGnl z-Ol^^(sP)XM{j=8=6$SNT?fA)b5o?!z5P=&Wff#~?xyIyVak_g*65MQR|hP3AMSn% zjY!te`M#Fq{8d*cQK;?wcl)e|+E$A2W1Ye*VG3|xakfs(1JZtjtXc-A4cx-2&3VMu;D1lo+xq?qEG?zx{S`dEX0w7 zQC>zn)*`}ZF|V%~S6-u6*~Zd&)5F;y>f~^atc!=B(Z_?ZQ0-{_<*-zAC?-GJL=t*p zJ9_XMtP;n}trer?POB)1z@lUBFNIrigU^*mdw3(twPLHw=oYtJ?vi4ypcv2`bM8{? z^(9bcGsM3`!QpO3qai*jg+qC{?EE!+@tMtCX5*wYz!6FlOW7G66)#7~lN+#Lr> z#)k05c!Qpxfb>irIv}HDERymMy1x3Y!lZs z8AZ;DyX%gYBZZN9;w5_!T{K{BUWQih2&VFQmL58mDAQJAXTM~>;BR4Fls*;08^ce`E`2>I6*3vimG2< zF~_X}0uFMiceSZMH*$a0lBvyPs@4H86?G{$>zD7lnnzv71!~Cvm@25~Z+!|b{+B|2 z&-(05`2fBTNKb)g^4|hhaQ8m_{qh-bh5uEFKXF#nrQD{^8O>DCGGGh=QI~xHhxp(x zJ)|1O!hfo$Z41!e=ns&*0$!3jpZjw`7ciB3qd!z5*|S~y+dS?;u>O7mcJhya7Bnyh z1Z1&57y9nVFHZAAz*qj91Ogh-e;1*FF7)5(o7vsdUwkZTK^jPB|6be$u7-g+^q!pr zo_kg%Jvi|)kU?<=Gr`kyl86onONeTS`kqL`UkIB|9w~2PR zXiLL_R;|1<_pSJbrKiatZ2{&l+;1mRuGW2g%inZ)s-Z!;;mO^^`sX$i*&n~FliX)d zA7@*-4&Slz=?{(b6H2%Ce|bmV`lvxd>*K&tBISb!x7^t-y@|``bBwCf3l5!|54H6p zWN#6Abo8f(jD9 zxq(DbdMb=`+*)Ko=OFvalqbC8^nnzkrV)|Un_949@$=FyZ#8FWX-~+y&dl9>p?y!Wc5PHlT245~GUh6!0bWWc2gNZ{8v&GZf2^XJB zB#=48K_hbh8`jV(EbYx#Fqf3wVfVgYRy!zBl<9ZXDXk^RG>Phip1Qs4s@e|RKg7DPO zX|G@3&aO4#P?ZDPaKoRK58Wx!f7KcPp#DLf($mj+sY-bTsGw9OPq}&fW zf^pB$>wft+E=IGTnqp{7jgye{RT`i?Kh}kjOo@EXlzixsKjit5N0S#A6^HY6$K;nQ z3a;`KIx&j6O`D1g?0J44yMzkvbDcWW+?LX}a%Xsy=~cjW4kF+6ZlR-`nA+>s>UZ<1 zzkaMBD=|&^%7N~_@4P0@fOX?~4PPC&`O)N%Z_I|?`q(u}gKf*6(CDr~rT zu@Hw+S31{?Aue}51E#JCt=p4pVH9`1E|y1!iPfkz+_Y{#7-yt;ikFRGtPzLEMrlX{ zG7z8Wn#z`=?xBhiad$5X+a|W_&%;j2JfbQ37@N#3l~(6xv2Ai>EU1+!rHlRQLY_#Q z2%`$IPIe4EE09FX?N!buaB1g}z!s95VY)WL)5n05yiMGD!EU8{Dc~V$Ii8{mo>$po|73p|qprE1;AgT6VR@|MlY)F*le z^VM{HK6v%XjHBuIO@6vzLFu6vxQj`QD0CKT*wNEmH8#goI~m(#cdHPi;$qd)d=gE~ zj+B}Y6S4n^?c`)QA=wf9L| z`qoVp8CV@`r13gYlAqQgq;fmJxaz`*UF>6Z>$17xw=N!@Q~gcK4W2KmjE}yXO4P}a zPvN?(EtAXHks0XbOoaPW&_3t-Raf-sJ%N{&*F=J-G|~fJaVr;Lse_1UoBBv zSllclz-4E^c5#DZJ5B4NaF>rEK&}7Cu-TH#X_A~rP{WN?y^JFhErZui_RDOVEenNo z4Ml>L?K>4gI`57^T^5Pi9M_kX3dGnF#W%4Jbv#U-uF0;u`-W_pQc$i*j!Nb z)M?g9EI)b2|Ir4{`W;`4L$+a+)b$MHW@97Y%twZ^0@HS_L&1g zyZ*(1m)iv2G~$M8=TrbG+ObAj_vd7F5?h@mik=y|aLQq+1`vYXfnvp%L3?4FyOi4V#++`en0UO92$x6Q)6ucWa|% zQ^O#7Xx-M%!RA=Ha8cb$f)6I5>TT$lqF^FM7}agG;F=QS9FweCxF}6voHm_;WGH7X z!p|FP1dZ~mMHCKWpGr8lwA1QJhQfvEje}x1k@WBa$VvCGHISg;;h5}9L@b(`Ho}s@ zXR|^>yZQGcW1WK#g^s}Vt}~=P<`Qp6Y%HG=4G!H+168E+$HyE%Bk&{~CI2wM#^5!Y z#YHwpg4e-V_t>l6h#E8=&jT8)11AOr8hImB)PVmrX(7oh2hap>2>oCk)8qufr8yiF z1uJxqRYxH-(Zs8eh`|wDHIz3046C(ToDC|Rz79&}z4ld=UvQb&bOwQuj5kK%!ECIf zIO4kDzI9|o;&L2>HUa2SKgJWphP~Tp8E->zk!ZxrpcvRXeO7tgmM}wv5eTY?dxwt> zbVochPdGan&&*DLffuwOiD>XnGD1Z`6`3T4V@}aT4@QA>B|)MR2yieqnH{7V1fCs7 zt~-L4)FO_qg@G)RReKPlGz=gkI(=)^+WdrpZrX*SHH3s#3Y#Q|WdyD=i#<(aJhcEj zgbdwpPGAuxDDR+kRuD|(AiN=+mN|^WR&{t7at{@_A3+bFL@?Nf*uv#VBPbD?@Y+%~cU|#e;oJA$2Q=PEsvXM3J#TGG5SJF2sX943-ed zmnEgm6nKOn(Uu+?%sz&Q_vd8@p2`x}W+D-yb=tDhTG+?XFdZZ)FqlpWNuQ;Vog17} zo}E+Kl2bL6Q@xW@%a>b!B=?SOZc}hBIXkzt<$ugsr*i)UsdfK!zAJ(*Z~tcjo)_sx z1v3LaSMn#H>L388`kzEaH7f!~yT0#L{NEoA`~a|-kB3szQUFf1w>YFn-5sK0ss5G$ zno4d43^Kr{qFUge@u*GQDk^?Y)OzvX0t_;+KC~BxUPxVcNnZz+aDjc>zXYJDsAs%; zt3-fJ4k(~9si+pX>{ArbC;llQ5(V~%_7qKBBKlXun0mTf_w#P|_vjGddH*P*8SuZq zlnIOuwNSnAPn`3wdNEKYuIQw$5A6x?wt)6bF7O2MQ{b={IOe@GK%8q0Gk14x<_jU63^e=-){in zYOnrF%{u>@ul?Egr5a4&e)d1%73UT)qjXS2{IzrCK$ zs`c|lt@P7=`fpmlT(qihtZuq25O}2u8}vzNb4FTXuH!gQrb&{@#>>qNLx#@|YLY7| zFY2a+a_5WQ-rG+(@m>OEk$=Q<5qhB$c2wUw714V$Nzzj48vAwZHD<{|No`Mh$yv0I z#%NL~OUXPmoT;xH@5}n3dq#H)sWcnI(=j51fwgd)$09}OV4f_-?zy_R@^N!SI(8)% z9JmE!j8|6Dnb)bwLd_(=2y~D*EwE%yoB~|*K!TA{{V84b*2lo_x9O!ykS{p-`f*01 zP+01TjK{-B%UC|+2vRG0W1r(QsT3nekb>Tr4JtUmnX*z;1l87{(5}!uGwT8tvT5vvPOC z!h}t;oHO3UpHs1Z6@8NlUK{qTW2~=(woh0(Fqvkcr%S$|)%zhdW2d@aE~%He}d#CuqcpXCDo{1;nHD*OyWYZ@VwPp*G{?70uqm}V+3oe?F? zvr`c-ZgG48hIDapBG0*gOD4SVY`H*`$a9z{NR)rW@*GP_^Vwd^jb!V2=A3}-6VFV$ z(z=pct5fW7tF3+KU2f8dv0XJOV)sM&BasQwb8P?;%fa23TZYUNsov`8)6um$;3sTs zTh4nhe5L1Rmod+P+iI7z^Y=sFw|r}2hIpnj_g_Z6cG>v8nOl{}E&QhYl{jjo=D6kq z_XLo^w>P-C0GpMDSDQ)&+$Yu!Mks!QuhXmDU%Sr03X$C}^ne`>K6#4MW9mG8HYB!Y zauCx6dSP>}u6?7TLk5{AWT$4)@g7zqBb6p($28gT>OM(EQTZkOlDlq=o;;3HHbZZx z)vo(WKVIf0&HRdbKt{N14LhYfdmr)eHS&IdieIJ=haW3|qn?S0-BSwUd=cd~!cOu-U6H1#(Z+cA3`rb@+Uu&&~qvePrz&{2<5vfoKV< zD3eyCNW=p|9Pg*mB!g($KqoCd!H3{h%AWm3$EvJMH{ zZMfc+VshNlX$ZsZpB1@-g;%-33XXm0z<@YJ?9d1ldODQmv zr|+vgPt36`7Ah$X?vip8dS^4Eu3vX9{q|W$_*AwkLyIccilfQfiP2*WoAE2NNCg@;XH%XVdDE- z%Cm?heBan=gPyF#@C?j?k8Zak5*04!(LxVG8(*yXmd7&gVXrU-$!c{XD!J#fT?X|j;fZ_cO zOf5a;iTz>`wF_cHS7lGdDy8{VW!T6T^qI0?MDLcrQEG0Mb)xa3q_-f{59MadT{l0J z1%qbD-fih|Q0?bkaBx-0Umd)9GENfRwj{>rv#;;qdB^3gKbLyE z@VtYjosf^{sIq2(uZ?87!iS*`k>qx}BUyLXc zV_%W?XSRS$_~>B)yW7}c2{ONOx?j^-#^Jj6)>v+!C()6&x!we;D@ zV}*AXxX?iz%vM@{IS^rZl=%nkj~2LSnP3=3%ij^j#sIGRwrt4SE5`Km12q@dAjwDE)w40jp(6^e zymw#P2t^;S7v<1J-JLC>#1_Ult>RAwv%NKCKSS@dMk)*D8I%>!5~XZd#v9Av5j%sI zrZsOuzrJA`qS+~pX1umUltuFAUQ{kl3 zr|Dmwe*or!F^D1+7jd<8;P%yTh+=FKnD@tqh%!{9n1aBv1pWA`NWugNY~Ys5UTzXS zIzJ!W5600Ketne``OO)D$8olQyYA-a!}2hq^PQb=4o&37Vf1XbH*_v!nrh0oun<5fXYIH<+J#85m@KLSa1Q1BM2)lNe5O#$dIv^32eS1gO+5V4ho^? z7_DkVuiO)TX^SoTVSo-u@BC`?aBjxWD2~6#L7%W09UiF?pWYz_Bbil zqS?0If_2|)taO=A9Rltbgnc3b4np}+2Ga%1XK{22bP#O_)*UP8ipciHOCv9hj>KMB z4z=PXNG#Js*XeQY=la*Nj@z{H2XHq~Q2{}S6g19MD>zOV&Wea(nhk{15hbz^-lSM# zl;BkaV8!EFQBg1p)~#mj%MRg_2&~?$WtV$A%n2UV9CZ_Nz+x6XRE`)iLW|TQZjs_g zAfOF#6`xs}iRJ{jMa&D{NE8|IeHMHW5vELomj;1qA#?$b-j>6O>kdlC1MDk0U z6s9`XOe8E7tt~xXj`+TuM8lUV#s=5tO%TaXQC(s498QcFPZe)ZY~4=Ov1PB$C*E)e zX#}SUvB6D_;8cghPV%u=&(dR;=}*|EBefw%f-xc_j6*i?H^Fp9XvKW6{gDjO0+>IN zK@X9shh*?yi}U(#7lds8@0e7*j(;5M>wh{{4=`KMNq2Wv);caSsRnZw17-K+zWvFggTKmjUfXx|*RMj)i{E3ZpWX0VfM+53T&0 zJ@tz~^#?z-H#!8I$O5L7Iy#i{?*bNd0RcAFIgRRMsR?g3bx;>r(*?5KfWK7$*w}vw zxSpk|@YA)zPr*f>LW-%kvVg;lDEn!0e_hP}j`0RC*PV)%N|QSN+!=-Cq~8zn6=E>MynZyYy{OfCZlY z+4}`bzrfY&ubrab!7DX;1u#&*MO`cUwTt`jC0@Wz{=a`v)7AffJ^;ts{U7XDx6N#1 z%}Lr_qo2KerkzSfJYEh=jVbiI+^hf`>z&HJ{D<;SsgCtTzvZ=k7ke8&7-bymAKZ=q ze0e6ve6`8s?bcQEN4F_TSH9W!RzAoEMal zTCXRa8Au%Ty)B}DGeX+FN1U7IYOYnMTea+HH=3Ru50x3bw?tB^9b3xBR?u*;iGMq> zMUp3QmODj7zb~BCxvL>rh^-AqDZ217v!*T~ zPKzbWI9`dxB`(2ee$xE%(UglY-FYkag|u9Rlr!E)1ZJxHRi!06lCeVRO_qIMxmkw0 z32$j;UPV3WpmU$Ncdr@adVdYIKT<(BT{%L~^ z;f&a6RH@Ef9bdmrt(N-5h}98PMM8-}T6ty`6gMn>0-Z zz0ytWt)7(GQ~hbaRdEE;=;{Qc&oxzx;Z94yd0JT-Q^af4-XWALQNV(&*Yha6SjD{$ z+{*2n_5H8g=o{`hw7V!l1hU+291$emQ#xYX`~E`za&hV)b4yOd}c=&}!M`k^yv@SsEA!pPT+tO?pMR5$0r@5|-Q=^CFVmqw~> zhMA6suai4(WQa^=p6^Aqh8@2@;5lbW`C6q_L)q%C((n2DhLPP`{?n=RUUm=KUVWYH z=5pIy4JCgy0e-lBU>3%}3&|52?-7B5FR&ucvz?`nn_#?yKfuD>d5*5Eu$_545$(cf z0Ii#7uTC3|Zqn^PXx(#<+czdsp?Dv>yHJP!OQJPJexQIw6RNYn=_Cs)=Y)Y$DQKtr;i?m^Mg#87f0 z!+K61_-UNUk^fUxk6Ecw<{!rzm^A{|8`Ea7pVZm+)|;@;ghO&bOHUQZYQ1jEC8DAX z4y7r^2eKUC>z};gBrhE6JMEX}OIceyo!@@)+V0cq8%$Xnyd8AW zD^eI}yQnQeG%u6I7VutPg08dU2_gQB@(u0=hP%UUYV$=xT-aj?^YO`vV+Ckhu*q>d zT&dop68XzuM|JhnNz)i9o-Qfl?;=lcgeW6STPn;ATMh4db(HUKoVU19Hv{%z2BGL=QUc{j!h|rR(&s9I3FWVDa$3w@JrLM-@I{M}nUXZp(Q=ck*`KBW4NvTy* zJ?cKU^}z^DS<6&)+v}8=vZU`6snd3qHdz$0#!Jky<|kybQYisUGGZTWckFm3i7LgX zEXslJPFeWsGYu!^mW-0w%-fj8%AL_4k6mB4cI|wsl*#+Z?9|pbm)L}3525X?`GF;gpf`Z67cEcc0GP1-j$O$hgI@hHTyUxLBG0;Hs8X`XE z6YXK{+^m2_D6;sHa`T}Ln;4M#$@(Z8N8QG97PwBLZ+!3YLXDtpFDj50-=D%LX}Z&I z?2QS#O~)ka%-3&*Vx%ZJFkMtIEa97{k`XH#AFYDLVlvZ*({rENe4w=bDa#7XHt)7=FI+e@cKFR&cJ(FsE92u1HjxM9wCr3Hm|hw=nv=kb_Z&9l?k z%?m8D<>={&2Z1aD!tajucJg5Iv90ggAQ!ag^Vlq561?j09Dr10O|#5QFC^UO2%6y; z3Q`KYFa9LIll}e4;66hqHt)mGLrPKJQb|r6Izw>emFq719YutPk@OJWp^&C-$M(Zc z3@>C(h2F)s^RV=GiF5iuRP(i2lA&aKtGXC&K@{i^6eN~qgwVM|*|{{K#p$sTuRccE z4gAqQ7e}#zEQda%<29lmoJD`%coqKj0Wd}J=s1UZ){pOCR$HdAAK#gRZi{6BwieqK zHZ>4Md7DYE(9WclAGrzvOE>X8A<@y4M^vw|Uvot7;^5PBVa(g%PL6E7vkF{wOq$53 z)y$|dT6&)CaQ-$wNIPT9EWN}qMvfPB(j02IgxG;#R-2`IeVF*oF|TY~n3LhM%NQNW z=#vV@Ol)A)?TDw%0-0^tSKVNyWF~usXe+g7`?e^?5qe|y2oW{G7faE@6ZDL1jGE># z7nd>GXe?}m$=*F;BSVk~i5=RCg|aa!ddCI@(JAJ~LTDK;yGIPMfdMiV%n28qg`3At^?Pi;jd0qbuM##ynJLK^8x8 zjS$bnAZ0`>R>Oj5nU9l*>2AckPK?#$pkh@-kz^dMJgyKQmnIQ0Q~&VEKTfz3JL<|ks{wif+s_aw?S{! z4i(dY#DJ|K<5Vm6RJb25hksR5nhhbZJkWm z+0-FJ7gjb#E2-$PNkk12YM~Wu>J3(2G%Iz4`XCszY3Q}R!I@|b)FQ=-kis>>Seu{8 zq>4Cgo6)P9CElJXzLJTzWq%==CNz~L+@1(0=%oa+AA%+51!s#2$Lt2h1_B2wq-u9*2JM6t$uplJlX!FtQopHDfACTN zcmb|q|NI5&aqJ(({XCQf^56t2${Fy76!rO2K&P3S@;;`X!UC=s@W4QWnOat+Qk#G2?(p{A5vqVqBft+o0QP);PZ(n1vZU_UVhyZFl)4z_)_EEpMWT8|9J1r^*wc>_b2x0`@;M03;&C`w~UIi z;k&-cDQZAkL_k4e=nj>XE~P;_21Er!N`zrxV1mv83_`j)L?r}i5D*DPLKGE|R74%0 zW5m<*yskT*`+e5?;b!eM>zD!8a{0xz+57+7AISo!&4=Sg zqn9=^y8;K&1L7Vf_=t9%i(^eDdGL;{VzJ9~$ca`uqRy-vR7#!~b4; zEYV8GCTd>5^U1CDmF=(tNZP88VTEgdUulNp+754vYm z>*n>+eg3o1OIyRejf=2WOQ)W=Z!#ts7TXK=h=v}Y!$YpTGxoClbed35ZE;VIWI3oU z`b=`2_3ld?Tfy4i=yxlEnk=EkDfAz^i#^jsV(_<|L8bZG!GlV#G_%(A-)iD1 z4&1YbEp3r0HGmV!wGoIR6q>RJ9J^LyWasWr@9lm39w?*xUD|n9FMKIUN1<^D$z(NA zqN!Frw<1Et0=tA}e2HEWXAm#AlvMiuvsez}GtEl@8F2gcIx$y)#roJYjfMpS9sy!n z8Ds~g;UEcTMt~k|#>!+xV z`bK=`54P=ilm{>UV7^qZh@X(;Xn@p1>4fgh!2KEkqr&uE1PS-wh0g$kxS2N(=6+A0i?_=7uAp75t(0~{TC z)=~|{+t+2{otfw`^WeDJu)0wYs0xThrY9hbZCbcU1xH?BQa3`hVj-gf`<*nW%||7 zw|lvHZ#jN%m(gT7F!6SCIR{JnBEsChiSf?vp}(vf2X__ZASs5wBn?h<9m~1GP$DS47uIYn>zJt%4o7zMSjMGZ^Xc*eB6(n6N!|cZE zVnZJ=h&Cf1ubj*RpBvuFGA-*Bb4a0c|JOiwW?0C{GYb0fndo1f)l10gxXQ5bs6E99OGAhkwtkcZ(F2u5gi{%ZgH>Xw} zoNY~v@)|bAj`g-@CzHh;=BJ6E-B7goV;$Xgvr?&^Lg8Z|y`SB! zjSi=$Uzs7>QhMA3YtaP7u*UWG6a2iG!m~PM(j@eSg7#gw(U$l5)7(=Jle^0#FXH8k z?JhjBV68aev1XP$_$*PPNivw?gPuq}Ykj7CL4^4SyNuNMmN2>MfF@znwDZ>YyPG6K zpIx&5abW$BMj_wV7;g`~VfFCdUhTo_W%Fi(8Pr^(gcHVBrB{WujHS6eysg~xX*Q@B z@wqBtl^``JWhbpJU!Flry6hBNZd=IfQ5^AL{h}3sVpdqaclBbKlUJ zjvZ)Js5f8#nYfb-;h7B5LbT)4u^*b&%8jluWpOnyHBiI@S2RZsB4nD7OZOJs%al1s1?MIe-k;su9z9TGZ!cId1O#HDE^I*;$pjJc69C+2fG@+LeTYdvh*QQnFi}$$EV-J z_^B>>y-KC!vQyf<(?sD>u1$PuU)^O(FaGZIBP+4;&cNHcJegibZIf4csjWx(eB_P@ z$d#Uv<83IwSY73!^Jvqq{6hb_l45S!Xj;yevF?(hEbwbZ3WYRXv&_@1_QM$U=K325 zbp7JetV?3ERqE-FtPObxOlMF=(`~jZ!S}mO`kPwI!hNe84qmVdY1taoZ3wK)ih9K= zVw{XK9j0>oGZF`dcTX>Yh{=e+{owf3@eHRA_n}@}G2LZ;pDK*di&Trjw)gyFBa>Y2 zXHI{Ckk~~sExzAhw#mm(FN)hXIM}~<{dtgo^Z}-c{siMpqEBQ_tZilv0vnNjoGIc9j#w@uoZ(MUWx554xhjnaE2R3Rt@g1}NxBTZH3 zE;+|}lHA!bW@UKl!6(W zU)c8YyP@T44l@$gWKLepaNv}V1yuo^eo#s;csU%s`<&(n$I)piDk0&Bm(PKkE=bZQ=A2E8 z*P;WhKUhgG@*{}n-e&aj7jIY;SivvG#wJDq1!gn{84IIngfUCcy`Xh;rpXwjO^mHs zwCN`1tu<)a9OBA(Q$7n`yomND#+mv>(nir;35mE4;R%w88|T1+Tw+PU$_-+Z#_SC& zvh=2HCy%!}w#Exfn?j2(#io>sBoS|BV!5OBaPePoRQ}*>A}$sM?;pptyp8J2hZgjQ zRO`X-`(a9mSkqWIT|Yj9<67MoU0rKPtQWjEgn$nLL%L!*Y(jCKJOI8JsYrDuCa#Yd z2M>l9)yAj4rJ?3Lnog0x=?4P4z@8Ct;ljYpZbAcuXJ9e9PMFHs9RiFDm4(2GwE$Zm zww40!5>5p3gLjD7{t);WoVG(LS)hle07-o^i-E|Q?A?k3=fh0Kai+;Go%yhn>R184 zM5?W1cs7P56du2cHAV&W@xwOuqXpoRP|8&PP*Ti^PY}ddEsLN&R{%81Rp%8cRO8ISckzM zVi6i~RSGs1Lm!u%9{-l+MqY3uB=cNI28}-~vXeH0gVt3Fj8)INAOMS#0^3v2+Dm~m z7qe(6)6OcVF@RX|__7cbumoEcJTxUo+0o0l55fAD)g_x-ruj$RYyllfA=Lgqi# z8aNsT5Y2~_X5dN~aMY!L9|s?@rhdNyhr)k}Oq@DA8vbpz|4N$yzYPS=9lz?;hnK;J zu``f7|JJV*`tkFF{#ml+2Fy0#v4JDt!;tykK~sNa&cEQy-+`zZSV7eW=I9kSM()vIR}OTQ@QNjVv)L|t zoc-j^o|=!+yVf2{MDWOrr2F%6l4Xn1l{snG_P}EoK#9u%>vgwvX@bQpiofm4W*k^v z`Q8)yfn)U1LE0Uxi zuyq0x=15LpBM+gnUU*?*yMmb0G zlU8QiHc?_z97o##ZrdR zsJ3@E>N9%*Rduhf@Hg5?E|3yGU$8^h!aPJ%+E(0uqUa1iVeW%btMk0RqAK0g&h4|4 zazoXp*-wuvVPL>jpUP6&dg1Mp7kA}2dpPM8yf|=X$0UZXF<%>&v!;?C zdB&0>FiiBmz?Mjo>7$6IljwPT%v`Z+7;PY2HZBmaaBU=dRB0u>Cvh~4{{-wfkR-P~ zxiWIWL}4;U;y`XTFWU6t#-af3P30xVfqrB{^vGIcT%vJBz|wiW4;^0BupW=4LgSB* z<3>l``3+0}NphBqgiSYxp5}7)ID(+(^2ur~!>@51AU&=Q%bvx~(DLW5Vv#6-Sw-#L)D;8<%qgWYejk(^^J* z4BIJioK-`;nok<%Avd&l3({Nb$Bg|cW~c;N($;!xE_S|ye{U{;?$mop#5Qr6vQAo~ z8RZ&RP(LUIDwbljQTQgHbXUn+Jc^%UyO{zPG0ZE zV{3?K6YcR2oM5Hat_1%|x3s{eb4P9fzjKF3Uo~-wlh9*6cSddbNSQOM)Za-mx%*r& zRlt13kDB`h3T$a1E7GJ+4W>~a4anSqB<#O2i;tqc);@WgNAIoc;1-=Fv70%KWQGxK zWM@Q%NA7(|GNeMU-kuI9~xD z8;V9)l+*qNf1$7rl3%4gJuX(RfCY(k@=ck@;oW8Yju;ehJeXjjh%HuV^5(ViVZE$} zDv`VxK6I?4Hf)*?;NW| zr}KO=gmu+F7!G7*c{V;PGZQa&aKeKh3@=xkh<`9WU-vvYLSB-Cw$ixmBx^UjLV?1# zp(|VN#95d}NfHL>zSC_rSTL2VGE(WeH(@*G%G#*yUx|FxX4_#j-3V=s>+F!!*bCiLs2D@R0U?mm9jvU*RRh|FVZ8393QH03$G0@9rE?;34R&eZ-Q~Uh1+UqId zDb)DQ9q3A-d@m6o>9>`{%mG)5N7y-^rstz4s2H zzqa$pT)K~|@2e@4$K}EM#^O`;*~V)31p1Ul>k@;9S9rg*ia)H4X2)+vf%_?-*T)x< zLeY3ZwM76TwGCcJNp`UIuqO9wozRvhh?dYEODfe!f1>t=p)wzTtxK0A#g_t-Y5h8K zWi+~SA{EDw{B_j)4F#`CKfBut%28CTEN=%QGr*T}44Ww9H_wu&OLOq_szS7g-#a#i zlLr%~&06*^%prO=R7Mxzh9{(qeL{;pj)m?wmLJi0SIHSoeXmaroIa#&IX~y>B%)cV ze=$Z5ufye8+f+WXNMBRw`n*o4%yyH{*M6nzxfMTkz5Z=X183oEcV?AkALR#cr!eZH zZwv%#FMrVX6J%Ks+7lh@PLxfye}-JVX1SSs#pqQ&;(0_%x%bTs#MHNmXF_zMyH)QM zJbNKOO?FuZQ=#Zcy8*DNQbB@Qrm514N%#|3w_t>qSh~j|M`U0hsixjPF{zEwqf4j% zID>4}y{^~piQ2Z+b=&IqMZ^kGUy1f-GDD|$Mtv4xih+zCT#a*L3_q2*+(+5O;6Et8 zC>YA5n}9q6d)b4gLmv%JyvupJBsLMN%r${#2#$L}A2W?taChEjIw>VyV5409NRv?c z^G26X_7edK61LDwhb8FCXVCNrd$=BY5xaTcN}GBA;?+D>26K?OW)wufvVe0bc2IOd z910tCo|EBI)9ho0$@VW&mzth_Kbbdt7uj;e9^%PE$C~(fgXAn<_T41<%v}TM7 z|HwGi_Vb!B1vta0{(fq?(!WYLO7Ms*4PApoFws;y~S;dhIN`0G_7(z><-+I6+HsjDrxab)S#07$d z#2B?6Z63#p&xF$XgVUApX~HqEI#9M=bZjzD#UhS(|2mYC5vh)E^pw zR%DYjta=|+i-mic5&HJ2ee>Y!odls$?=F8>*BYt^2`>nV?^8+uNkOeh5!k z2jfBJbkoQLybZjxHDT{mY}ZqU#ny<2D7d9r;**eAP!#UHUZi3s&$0c)vQyL#tzf&z zgydj&S#r`Y2fE7zOd^JPs>f4@#t($R7itNRQ1tl_&Q~+Z$DMJD@RVsRfjT9IV<2%% z!<~erNf%1y^N!CfW$N-HrP%sKj8P_#)*z6l5OME#3^oy>9Q@1$^a+_n3viY738(ep zGn>)#SkSoD(K%FHml8EH2=42b-l&uU;isD?(uxpyM)Ihum8j6{Ge~$zC&6Yj zV~m-;Br8rHB?@*)_fp2`d&BGV5-eLmy;gDq$si9RNVu3OC^RdIm<6h%4>7}7Q^1A- z=`8c2wKuUKetN7j&VL5}7zNBxqkT42NAJ-G!L$0kKts>r=aREg{n0G>D%aIPhIybE zb=dt?qX8+pJL-^7Gf0Jc8r(b~+Z%7_$uiQJbJmR5`;NIgH1jdAW%QK3A~f?{-mURj z=GP&ax#-Z_!d!$T-wi z9dA1h-L<_dPRZEhXPf}f`|iVXD*-jAfJ!BKtQG7q+NkfSb=a(foOXHVy-|! zh4qgW@A+3NKEQebm<;}(3dpwweclWE{+7t)4}Sz~8cFz(eKpYB1~!e%)%swY%h+_u&%KVT&6ma{m&LU>`pGc_n`W z6uhI#{=QQt{9<_l6T?aMd*m4;;PtnFXCTnt143+KD>=A6)!^ulRSX*2g7xE zm<+(20fsaAJoy)c3$W7w!x`vr0}1vacdKP&|F=f}%CyJ6cKj-J1DDG{h<&(6-1q$J zlV5vC1HWd70oK-^CE`Qk7GSmyHSz-BZjoc{>E+++!+$7SK(c+PLwEhF(G9rk?__KJ z*L)G+nE_+`|H~I(pAQ3V;Pp?$4Y+H-W|MDaW$f`OT zI%PeSpqlhvy#4A`Hq4JnK||}a{*&S){0DG+R;bgDVRMTsH?Qx+t-D?>(0+7A(5$0d z*WqnNCh*IPclAly_Zv^mOTgWD|45F`c$322Dauepg!DA2gYXOEP^CHWVW3WU0D z3n${w9+dKGJ%B6QNz&sAajA-7^@ZxJ=LQNS=A~XIW)#Td;9?G<`t!ICST2ubI_9`y zG5V1-_uLa#>fML|)%$NW8}htiG1s@tPD(LfIf6{*lz2Vjq1}vrsYw(La}#53-&srg z0r4(MfqX1{mq65>87n#S=D8V?bhK|`98t0$93O$Ihvik!hf-g>QRC1)F4i=+Mu_NG z6J66<=xpafbTitoWADMTD(l%8-@|=-`QIlaCh;M@A)U_lORezi3#GmdMqkY&mlTwo zL+<2!b1FR&Iyoj$yGu7D@k9F?{PfmbuzulZ(%TKg9X2DJ@F`MiZL?(WvXtOLEJw+M z{l3?UJvqpok~Y?!M(2+D@U{ernR6-^l7~;JDsd*{PPJRNBOc=Wop)xtGwp&`VJwqgJS2l*}~L> zRP>#x^P@9XRn+kkb&pdCB;1h^S%TOd=WU$Wt*1o^3d_g~ZyX=^)<0QE){4MYUcsH9 zS0j2cCP@iAZ!$*2YfFT^CPHfqnaF>GL( zJDcq?j39Q&2+wRM8n0lf8jEps+fiLRi8>9&h}CF5i`$T=XdKI6b@auj=U~=P9@HVn zF)1rFHlC#_O^sA>qyp7Z>rKU;o!dnm>hV17b5FE}tE9wndds|={OrM-$(KB%Fsv8| zJ1ZIKzEjRi%x{9Ooe=EKxa#he@Iadu)$psjm^)b9ANup3>uBji7i}u#&$++d=bJ+f5>ibJF|64|E$VWoP4DV{5ITPB55K?byJ<9-$+PC(HW%1 zAS?XCMvEq0-`HccGn=s0E2iFMY_^6@xA1=~SD`=Zp2IKwy_JS{p>s5-eurteaPZim z{+N4eo*SCP+$Z>Az%+O{ieOr%c^WK=Vp!afeAudWmSfI@Q$Yt#Be-^&dIyG)*)52q zICWly`63RgP!;M&i0&c@aW3;d<;f@* zTC%;f%+L_es=F%(j3NygV^k(+*fB6&K_ty*0s7*0)?zJXZwv5y$b-k-#N!u##$Q0o_*n&p{34{NhPee zw1kaB;j%I~r>N8Mj`NESfVNf2Oz5{#mESk7dGjnP+VV*3^;Et@7`S+zO3DXGPy3pddK=* z9QSMc(Id_mq#t5+6d#m5Eoa>!zMkr2Cw()@U#~ynV;0Sao?V35?{{;K*2XIOvYXQ{ zGgzUzIo8b}W`4v|UHw{6MCUSlO9-{qnyur$Il;=eo3)-((k?J1mZ5e3$ys1wXi|Vq z`<4rxp2;@*xF7Ub5{6X_RG;p|18G}ZW;7VBPo?yKP}jObe}S=q5ImoGU08DnX|he? zT2^M)!G0Y<2z|6`*1*cma}7jF6N#@?Ca8N|Z>hYV^ySehHq6Svi$>fD->uo-tvkgm#E-C7A{)<%= z#Jp#I5?!|3(wFq?(P9OiO?TsNWytU5j9*^FpNL`b(n=HLd=lGur>Yy|`RMC2_W_+o z=tX^iIy~ok=9H~--A7gGUC~#dFX>HYnYvl3BX64x+MhAF%cWypd^&fnqeA9t*!>W= z$5-8lPhWg2d(rhuJ(kn9S$Y$Z>vF{|l(svv(zdoSe@Q>H!Ky%QYc{dy2&Zm+0IA6} z4%aX<>yaNtW-&2yl4 zu;p^>`A0%er-d}So-E@76n9p*YZbs(a@mu0bGw}1(M;)Fq_UQI%$BuJEuhXnjQtrt zU93bvc#iuV|L(@$sie(jz=wYL?IMkr)HhStr%>$|`HVNPF~Zo>@%}ch@4OYL1tH#< zso%1xgKYXGYB#@({`>*+*WD6qu8o<f5>Y_OKdnK(+N%m$p-~M zx1~O!dC;HkFh#tYAHR{Ez5*{Xjo7Y0EyPf0vA@ixJFVmoR-K__!nA6yv5}S&s?PLEBy0&iDJ*g61PMI>gNwx=MH@zbK2ecN4uVzyNTnQB+`odPib>HD`4oT z6x4W%CuuwqMx>RgV|=5FqCrBKW#~FfP@hhDOG-oFkf;lt*Y7XgWS@zg*kfsuqCE^z!=ohG-Gw$54!@WQua?4Cg~VFxMT4244v;9H zR?bd%><`5VND34g66ZyPGB8J94vEC0c$)a)KE*-kT)-hASdt|%lx_=k6B`kN;;H7t zE`G5GyI`>)xTI2e{0w$53wNIxn<^Y0V-uHUgO|>W0|;NY*0B9c3@73Et}IdT5?wJ8 z&vptP-ijai64%d6UAq?QLj*P1;PF7(oJSb^5=(HQeY79k9t8XqrwFoVATB- z)W}RQy$x1b&;Yh~!v>Gm zg>S0UPVf6IQ8Fov$A3V=pSC7p_hWON69z-LiJJtG5O{Q6G8WQ~<%dxB zD$=ugr-WcrAe2nVPTbd)6Z3u`G$-{1MN;ZXT&z%Ns>p1t*jK>?XRr&A+9VE6kV*^2 z;$cy#4oI-0o@{n<;$jwP1`CIZq+9JL%SS`4Yoo0ElC9F{d^^*D$mUi-^!d!fxYp!WDmJjI_TYnzs7%d+R3C7YdqaawUQg*ha!^4g~`=$AjJku zHV|F|mil-9yZ1}wUjm3p764dm2+aMVCT{X3ri$NbUnc={h^`j5T-w}=1CzW?`ya=<$8 z{O`5SXNVu?ntTcKVTM6;nX5xBsi6elY2KQlJguGjC$_!{cKH{aifP*#pL>e5tw^V!k&FY3H6zqxG5;rF5gYyIFR&lmaC3uhIxZu5jqy_&R~Y)3NW1p7@( zlIC`TM&=rj&zn>3^sC)if63JKBVe!W;SbZsJWLXD%&y*r0t9iE>(Q9HbEE7um|61P zi?_}pEsn%X6|;MT@Pf|Nnd0k@*~J#?qFqlN6`vA)ZP+ln z!BN#n;rccC^nhM@j`)Cj`*_U@m6?=C6x^;`I?SLJh?Mm`5(TQOz}In~DCu^g!+)12>D zjHcb`5uJ{oZDei@bpRK)4exDaH9iLpyT+DM*5qKiK$N0c2O(GrOIbaq%Utvh~v7%LO=JniK;kC}Dc!B5? zzTR#6{!AxSEl1J^KKtF`PUCxwVkdp+WNS;#8aO9JPes#-)3nyJzJW`SJ}F_oLt5Kj zJ{80+%VIXCw;!~xqcN2$kDn}TYqqTk_-Bb>w%5H?)gBGM15SJz$l86a(^p{YKD?OFiN)oQILc(dVPFMy}#eLkmG@p zj(8Y9e`TvH4Sx9bacOnzV_!G6%*|+F-FI=CzEl{C0U81Mfk9cGb8HyCB809t)I!sP zxpH{*xT#d{BVRY>2KqO`)|44WYuiLBKM&{3D2R*7BvY;*Ud#$-WHm=AHIH4Dz0GA@ zyq=fS?|afIqHW}IxvNMY&0Fc<#jFeI4YwxDU_#GAjhHudxaUaWrxeqcVPOJkbm6lx zXNGL`3un6SKH;Hs%26Kony3^$rM@Qp37h317nn;>$7_Em;|O-#&E|fIl&Hz(NQ$r^ zvWwv*v{lYONM61-+PG?FHF(}Ql~qy_<1OW(lAbfySg69_X+T(>G@3giDa7zzI0YSD zAe34VTvvKtmkWB2XR0j1V$G3Lgju# z&(3Du>z2D?@YU12w=L_kwm|8;?V#Mvu*rw+M~eL}!bE&jtU9H33UMAV2}OLg<3Vo? z!)Y%I3*2}g3n+87QqWSO%)}(@JX`*)B9Ty)44qQ>EQdu>#VP(!pt+kW7WSG-{-?0s zEPFul^~RN}afUCJxxcjb8*kW~P~z0``00E(wMA<4U)*t~W5W-IC{w}j zx6&N3pc6BSU*;wVAYS%Y6E0R_nobrzlxLKQyDxw}c664-d!UaOJ^Wgg$Sk&CQ369EC-1~BtN3{^M+Er`4Z1RD%7#9&76~Xgam&0O(eqS;)N6I}v^T}k z0z^k=V1j%Vn@Mo{gAn1NBAuJA=e>HTO5R8a3wKMqh)G2=U3h$ zz~I;rOcNwQCxE`WD1NmU*0)g24Kz|bUp;?rU8mjH^ue+&-fg&Rx`(BOit#7+{XwL+ zY{UKAY}!X}JVh#l`OygwFF5l8NfSiRfc%3Npz>J1_ zv~#cet_DMjdb?JD29EA{D`UFZw4F&*EPG2ZjW7I$rgnaG+5E-#M$R9Mef_~T-(G$Q z-u##s7)6*ESmiDfj^P7o;Lbx9_&(3{ygVg&UDfQl&`Rm!SBjtZ^c-$0t|U{h>YDDz zw}uNnDy4pFJ$8LR3+DCG;&6+a ztm)XZg4$auxYC91t#{=E-`A36zU=e&@Ik!BX=rRvG$9}~Dk2UY`PA!b3}wU*-B1<3 zFc>om6cWWjL@`Fe==H*@t&Yww-e6V=i_HRR+_aoTG;Ij&dJjBvJgOD!)wBex8i#$C z4HhLv(}uXwMM0$c!-#o2ayHTFPoOYHiYz;mAntMPo_QI3cjgQ%x^|1`FdjU2K}+0Ye5M_@R0yeU@7%%DpP|xLEk18 zlmbiGj~bVz3+#^pF~@fkqaP#TJ#R4|;{++>iYbFf1)bY%vP z&P%2hZh-(G@@y0YZ3ZniLtlMOSD6fJ*bIf#B}jQ=o?U0Lr%1CmOBc&egbgGa=(7an zC1Li`Pq{FZ?8hTfDHb9u7~yzaYX(A^-Z~U(3(XXFVUWbdq4P34fhsm1*gzO;GMgzH zMVBmpYH(pa!myfe`pVicIrLCx^Xy^y$`UUaYMVFIFUBFV)KLymPfwzR3Jwh#6z(7-C{V#udc%t0) zIro94ww&9 zUoyCQ@|Ra7@Av+~dQFqDUSyirEZ|!Yb4D26~o$PNv zOWOKO7LX*93)uf?Umu3LzYnDUI*mR|fPvRP7t#NmT{<+j|M0W_6%y=!w}Cy!DY@X< zvenErk4in#BTf5D#ATfJ)?c-OLG6f-JsJyU

B{A! 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

!*yDYEs_2C-wz+$d7L_1n4+$N4?oN_ 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 Dy_#!D diff --git a/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts b/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts index 0c6d024087..9e8afa3cca 100644 --- a/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts +++ b/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; import { gql } from "@apollo/client"; import { VariableType, jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/shared/api/graphql/utils.ts b/frontend/app/src/shared/api/graphql/utils.ts index 9a21814d50..f15a0a384d 100644 --- a/frontend/app/src/shared/api/graphql/utils.ts +++ b/frontend/app/src/shared/api/graphql/utils.ts @@ -1,5 +1,5 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; type AddAttributesToRequestOptions = { withPermissions?: boolean; diff --git a/frontend/app/src/shared/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx index 285ebb3711..c131aae470 100644 --- a/frontend/app/src/shared/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -5,12 +5,12 @@ import { INFRAHUB_SWAGGER_DOC_URL, } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; -import { AppVersion } from "@/screens/layout/app-version"; -import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; +import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Avatar } from "@/shared/components/display/avatar"; +import { AppVersion } from "@/shared/components/layout/app-version"; import { Skeleton } from "@/shared/components/skeleton"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { diff --git a/frontend/app/src/shared/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx index 640689f952..c4ffe6271b 100644 --- a/frontend/app/src/shared/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; -import { branchesToSelectOptions } from "@/screens/branches/branches"; -import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; +import { branchesToSelectOptions } from "@/entities/branches/branches"; +import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/buttons/button.tsx b/frontend/app/src/shared/components/buttons/button.tsx index 7f17ee1f7c..f86971edd6 100644 --- a/frontend/app/src/shared/components/buttons/button.tsx +++ b/frontend/app/src/shared/components/buttons/button.tsx @@ -1,4 +1,4 @@ -import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { classNames } from "@/shared/utils/common"; import { ButtonHTMLAttributes, forwardRef } from "react"; diff --git a/frontend/app/src/shared/components/conversations/thread.tsx b/frontend/app/src/shared/components/conversations/thread.tsx index c4a8535d31..fdcd168f70 100644 --- a/frontend/app/src/shared/components/conversations/thread.tsx +++ b/frontend/app/src/shared/components/conversations/thread.tsx @@ -1,8 +1,8 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { getThreadTitle } from "@/screens/diff/diff"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { getPermission } from "@/screens/permission/utils"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { getThreadTitle } from "@/entities/diff/diff"; +import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; diff --git a/frontend/app/src/shared/components/display/avatar.tsx b/frontend/app/src/shared/components/display/avatar.tsx index 5555828a3d..545b5360df 100644 --- a/frontend/app/src/shared/components/display/avatar.tsx +++ b/frontend/app/src/shared/components/display/avatar.tsx @@ -1,4 +1,4 @@ -import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { classNames } from "@/shared/utils/common"; import { type VariantProps, cva } from "class-variance-authority"; import { HTMLAttributes, forwardRef } from "react"; diff --git a/frontend/app/src/shared/components/display/pill.tsx b/frontend/app/src/shared/components/display/pill.tsx index 681347f2df..ccb9abf7cd 100644 --- a/frontend/app/src/shared/components/display/pill.tsx +++ b/frontend/app/src/shared/components/display/pill.tsx @@ -1,4 +1,4 @@ -import LoadingScreen from "@/screens/loading-screen/loading-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { ReactNode } from "react"; diff --git a/frontend/app/src/shared/components/display/properties-popover.tsx b/frontend/app/src/shared/components/display/properties-popover.tsx index 97ca4984f3..29ba6dc429 100644 --- a/frontend/app/src/shared/components/display/properties-popover.tsx +++ b/frontend/app/src/shared/components/display/properties-popover.tsx @@ -1,6 +1,6 @@ -import ObjectItemMetaEdit from "@/screens/object-item-meta-edit/object-item-meta-edit"; -import { metaEditFieldDetailsState } from "@/screens/objects/showMetaEdit.atom"; -import { Permission } from "@/screens/permission/types"; +import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; +import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import { Permission } from "@/entities/permission/types"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai/index"; diff --git a/frontend/app/src/shared/components/display/sidepanel-title.tsx b/frontend/app/src/shared/components/display/sidepanel-title.tsx index 41096dd3ad..ed09812c6f 100644 --- a/frontend/app/src/shared/components/display/sidepanel-title.tsx +++ b/frontend/app/src/shared/components/display/sidepanel-title.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/shared/components/display/slide-over.tsx b/frontend/app/src/shared/components/display/slide-over.tsx index 714912382a..28fd4c2b2a 100644 --- a/frontend/app/src/shared/components/display/slide-over.tsx +++ b/frontend/app/src/shared/components/display/slide-over.tsx @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Badge } from "@/shared/components/ui/badge"; import usePrevious from "@/shared/hooks/usePrevious"; diff --git a/frontend/app/src/screens/errors/error-fallback.tsx b/frontend/app/src/shared/components/errors/error-fallback.tsx similarity index 100% rename from frontend/app/src/screens/errors/error-fallback.tsx rename to frontend/app/src/shared/components/errors/error-fallback.tsx diff --git a/frontend/app/src/screens/errors/error-screen.tsx b/frontend/app/src/shared/components/errors/error-screen.tsx similarity index 100% rename from frontend/app/src/screens/errors/error-screen.tsx rename to frontend/app/src/shared/components/errors/error-screen.tsx diff --git a/frontend/app/src/screens/errors/no-data-found.tsx b/frontend/app/src/shared/components/errors/no-data-found.tsx similarity index 100% rename from frontend/app/src/screens/errors/no-data-found.tsx rename to frontend/app/src/shared/components/errors/no-data-found.tsx diff --git a/frontend/app/src/screens/errors/unauthorized-screen.tsx b/frontend/app/src/shared/components/errors/unauthorized-screen.tsx similarity index 100% rename from frontend/app/src/screens/errors/unauthorized-screen.tsx rename to frontend/app/src/shared/components/errors/unauthorized-screen.tsx diff --git a/frontend/app/src/shared/components/file.tsx b/frontend/app/src/shared/components/file.tsx index a2bd4347d5..32e06bcbc8 100644 --- a/frontend/app/src/shared/components/file.tsx +++ b/frontend/app/src/shared/components/file.tsx @@ -1,6 +1,6 @@ -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { fetchStream } from "@/shared/api/rest/fetch"; +import NoDataFound from "@/shared/components/errors/no-data-found"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useCallback, useEffect, useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/shared/components/filters/filter-form.tsx b/frontend/app/src/shared/components/filters/filter-form.tsx index ca5b5592f3..b15788dba9 100644 --- a/frontend/app/src/shared/components/filters/filter-form.tsx +++ b/frontend/app/src/shared/components/filters/filter-form.tsx @@ -1,5 +1,5 @@ -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { FilterKindSelector } from "@/shared/components/filters/filter-kind-selector"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; diff --git a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx index 91289b81b2..27709f4706 100644 --- a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx +++ b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx @@ -1,4 +1,4 @@ -import { iGenericSchema, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { iGenericSchema, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; diff --git a/frontend/app/src/shared/components/filters/filters.tsx b/frontend/app/src/shared/components/filters/filters.tsx index 9fcc789300..b0e293ee1f 100644 --- a/frontend/app/src/shared/components/filters/filters.tsx +++ b/frontend/app/src/shared/components/filters/filters.tsx @@ -1,5 +1,5 @@ import { SEARCH_FILTERS, TASK_OBJECT } from "@/config/constants"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { FilterForm } from "@/shared/components/filters/filter-form"; diff --git a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx index 2d61c16c30..7fe54fe4dd 100644 --- a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx +++ b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx @@ -1,5 +1,5 @@ -import { branchesState } from "@/screens/branches/branches.atom"; -import { TASK_STATES } from "@/screens/tasks/constants"; +import { branchesState } from "@/entities/branches/branches.atom"; +import { TASK_STATES } from "@/entities/tasks/constants"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; import { Filter } from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts index f09c630280..c4661fdc6c 100644 --- a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts +++ b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts @@ -4,8 +4,8 @@ import { RelationshipManyType, RelationshipOneType, RelationshipType, -} from "@/screens/objects/getObjectItemDisplayValue"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +} from "@/entities/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { Filter } from "@/shared/hooks/useFilters"; export const getObjectFromFilters = ( diff --git a/frontend/app/src/shared/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx index 62726cd746..791c22cf60 100644 --- a/frontend/app/src/shared/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -1,5 +1,5 @@ import { QSP } from "@/config/qsp"; -import { branchesState } from "@/screens/branches/branches.atom"; +import { branchesState } from "@/entities/branches/branches.atom"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/form/dynamic-form.tsx b/frontend/app/src/shared/components/form/dynamic-form.tsx index 73311a0796..04a7c236b5 100644 --- a/frontend/app/src/shared/components/form/dynamic-form.tsx +++ b/frontend/app/src/shared/components/form/dynamic-form.tsx @@ -1,6 +1,6 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { getSchema } from "@/screens/schema/get-schema"; -import { isHierarchicalSchema } from "@/screens/schema/utils"; +import { getSchema } from "@/entities/schema/get-schema"; +import { isHierarchicalSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; import ColorField from "@/shared/components/form/fields/color.field"; diff --git a/frontend/app/src/shared/components/form/fields/common.tsx b/frontend/app/src/shared/components/form/fields/common.tsx index 8aaefae32f..701f08b80e 100644 --- a/frontend/app/src/shared/components/form/fields/common.tsx +++ b/frontend/app/src/shared/components/form/fields/common.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; import { QuestionMark } from "@/shared/components/display/question-mark"; import { AttributeValueFromProfile, diff --git a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx index 4a77710e7a..32a914eae2 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx @@ -1,8 +1,8 @@ -import { RelationshipNode } from "@/screens/objects/relationships/domain/types"; +import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; import { RelationshipHierarchicalInput, RelationshipHierarchicalManyInput, -} from "@/screens/objects/relationships/ui/relationship-hierarchical-input"; +} from "@/entities/objects/relationships/ui/relationship-hierarchical-input"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { diff --git a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx index 7420e5d8b0..787e598e02 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx @@ -5,7 +5,7 @@ import { } from "@/shared/components/form/type"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; diff --git a/frontend/app/src/shared/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx index 07f296fec9..b7bd5d981a 100644 --- a/frontend/app/src/shared/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,5 +1,5 @@ -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { diff --git a/frontend/app/src/shared/components/form/generic-object-form.tsx b/frontend/app/src/shared/components/form/generic-object-form.tsx index da8d4ec37e..73af09eec4 100644 --- a/frontend/app/src/shared/components/form/generic-object-form.tsx +++ b/frontend/app/src/shared/components/form/generic-object-form.tsx @@ -1,5 +1,5 @@ -import NoDataFound from "@/screens/errors/no-data-found"; -import { iGenericSchema } from "@/screens/schema/schema.atom"; +import { iGenericSchema } from "@/entities/schema/schema.atom"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import { GenericSelector } from "@/shared/components/form/generic-selector"; import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import { useState } from "react"; diff --git a/frontend/app/src/shared/components/form/generic-selector.tsx b/frontend/app/src/shared/components/form/generic-selector.tsx index 6476c2bbf4..d8df8b4f5c 100644 --- a/frontend/app/src/shared/components/form/generic-selector.tsx +++ b/frontend/app/src/shared/components/form/generic-selector.tsx @@ -1,9 +1,9 @@ import { PROFILE_KIND } from "@/config/constants"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectPermissionsQuery } from "@/screens/permission/queries/getObjectPermissions"; -import { PermissionData } from "@/screens/permission/types"; -import { getPermission } from "@/screens/permission/utils"; -import { genericsState, profilesAtom, schemaState } from "@/screens/schema/schema.atom"; +import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import { PermissionData } from "@/entities/permission/types"; +import { getPermission } from "@/entities/permission/utils"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Badge } from "@/shared/components/ui/badge"; import { Combobox, diff --git a/frontend/app/src/shared/components/form/name-select.tsx b/frontend/app/src/shared/components/form/name-select.tsx index b4fa0c9636..dd6e419051 100644 --- a/frontend/app/src/shared/components/form/name-select.tsx +++ b/frontend/app/src/shared/components/form/name-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/screens/schema/schema.atom"; +import { namespacesState, schemaState } from "@/entities/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/shared/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx index f789207102..586b910895 100644 --- a/frontend/app/src/shared/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,9 +1,8 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; -import { NUMBER_POOL_KIND } from "@/screens/resource-manager/constants"; -import { IProfileSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { NUMBER_POOL_KIND } from "@/entities/resource-manager/constants"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; @@ -14,6 +13,7 @@ import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; import useFilters from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/shared/components/form/node-select.tsx b/frontend/app/src/shared/components/form/node-select.tsx index 6fa1874b84..8072f1523e 100644 --- a/frontend/app/src/shared/components/form/node-select.tsx +++ b/frontend/app/src/shared/components/form/node-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/screens/schema/schema.atom"; +import { namespacesState, schemaState } from "@/entities/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx index db5f081797..009d52e811 100644 --- a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx @@ -1,6 +1,6 @@ import { ARTIFACT_OBJECT } from "@/config/constants"; -import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { Permission } from "@/entities/permission/types"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx index d23456189f..d5cf67bb63 100644 --- a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx @@ -1,6 +1,6 @@ -import ObjectItemEditComponent from "@/screens/object-item-edit/object-item-edit-paginated"; -import { Permission } from "@/screens/permission/types"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { Permission } from "@/entities/permission/types"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/shared/components/form/object-form.tsx b/frontend/app/src/shared/components/form/object-form.tsx index da872a7720..367c5f5815 100644 --- a/frontend/app/src/shared/components/form/object-form.tsx +++ b/frontend/app/src/shared/components/form/object-form.tsx @@ -8,19 +8,19 @@ import { READONLY_REPOSITORY_KIND, REPOSITORY_KIND, } from "@/config/constants"; -import NoDataFound from "@/screens/errors/no-data-found"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; -import { NumberPoolForm } from "@/screens/resource-manager/number-pool-form"; -import { AccountForm } from "@/screens/role-management/account-form"; -import { AccountGroupForm } from "@/screens/role-management/account-group-form"; -import { AccountRoleForm } from "@/screens/role-management/account-role-form"; -import { GlobalPermissionForm } from "@/screens/role-management/global-permissions-form"; -import { ObjectPermissionForm } from "@/screens/role-management/object-permissions-form"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { NumberPoolForm } from "@/entities/resource-manager/number-pool-form"; +import { AccountForm } from "@/entities/role-manager/account-form"; +import { AccountGroupForm } from "@/entities/role-manager/account-group-form"; +import { AccountRoleForm } from "@/entities/role-manager/account-role-form"; +import { GlobalPermissionForm } from "@/entities/role-manager/global-permissions-form"; +import { ObjectPermissionForm } from "@/entities/role-manager/object-permissions-form"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; import { NodeForm, NodeFormSubmitParams } from "@/shared/components/form/node-form"; import { NodeWithProfileForm } from "@/shared/components/form/node-with-profile-form"; +import LoadingScreen from "@/shared/components/loading-screen"; import { useSchema } from "@/shared/hooks/useSchema"; import { Suspense, lazy } from "react"; @@ -31,7 +31,7 @@ export type ProfileData = { __typename: string; }; -const RepositoryForm = lazy(() => import("@/screens/repository/repository-form")); +const RepositoryForm = lazy(() => import("@/entities/repository/repository-form")); export interface ObjectFormProps extends Omit { kind: string; diff --git a/frontend/app/src/shared/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx index 36f1def7e5..5c6ee3b8d9 100644 --- a/frontend/app/src/shared/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,8 +1,8 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { getObjectAttributes } from "@/screens/object-items/getSchemaObjectColumns"; -import { genericsState, iNodeSchema, profilesAtom } from "@/screens/schema/schema.atom"; +import { getObjectAttributes } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { genericsState, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import LoadingScreen from "@/shared/components/loading-screen"; import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; import Label from "@/shared/components/ui/label"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/shared/components/form/type.ts b/frontend/app/src/shared/components/form/type.ts index 575d0e760a..3dba5f2cbb 100644 --- a/frontend/app/src/shared/components/form/type.ts +++ b/frontend/app/src/shared/components/form/type.ts @@ -1,7 +1,7 @@ -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { Node } from "@/screens/objects/getObjectItemDisplayValue"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { AttributeSchema, RelationshipSchema } from "@/screens/schema/types"; +import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; +import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; import { SelectOption } from "@/shared/components/inputs/select"; import { FormField } from "@/shared/components/ui/form"; diff --git a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts index 94ba37e62e..dc97a7fee8 100644 --- a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts @@ -1,4 +1,4 @@ -import { AttributeType, FieldSchema } from "@/screens/objects/getObjectItemDisplayValue"; +import { AttributeType, FieldSchema } from "@/entities/objects/getObjectItemDisplayValue"; import { LineageSource } from "@/shared/api/graphql/generated/graphql"; import { ProfileData } from "@/shared/components/form/object-form"; import { diff --git a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts index 5c7d4ca72d..af7d67cc8d 100644 --- a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts +++ b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts @@ -1,7 +1,7 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { SchemaAttributeType } from "@/screens/edit-form-hook/dynamic-control-types"; -import { AttributeType, RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; +import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicDropdownFieldProps, diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts index 65beb39e0a..43b72e88c0 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts @@ -1,6 +1,6 @@ -import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; -import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { schemaState } from "@/screens/schema/schema.atom"; +import { RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; +import { schemaState } from "@/entities/schema/schema.atom"; import { FormRelationshipValue } from "@/shared/components/form/type"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts index c6df5e30cd..e8495debda 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts @@ -1,4 +1,4 @@ -import { RelationshipType } from "@/screens/objects/getObjectItemDisplayValue"; +import { RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; export const getRelationshipParent = (relationshipData: RelationshipType | undefined) => { if (!relationshipData) return undefined; diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts index b2215e9f53..4e3c69f009 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts @@ -1,5 +1,5 @@ import { relationshipKindForForm } from "@/config/constants"; -import { RelationshipKind } from "@/screens/objects/types"; +import { RelationshipKind } from "@/entities/objects/types"; import { components } from "@/shared/api/rest/types.generated"; export const getRelationshipsForForm = ( diff --git a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts index 46ca5cf169..e2447546b8 100644 --- a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { PermissionDecisionData } from "@/screens/permission/types"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { PermissionDecisionData } from "@/entities/permission/types"; import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; import { AuthContextType } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts index 60c4e2dac8..b9df19457c 100644 --- a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts @@ -1,4 +1,4 @@ -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; +import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; import { DynamicFieldProps, FormFieldValue, diff --git a/frontend/app/src/shared/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx index 2bfe82d6a9..1efdd5f400 100644 --- a/frontend/app/src/shared/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,5 +1,5 @@ -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { AttributeSchema } from "@/screens/schema/types"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { AttributeSchema } from "@/entities/schema/types"; import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION, diff --git a/frontend/app/src/shared/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx index d68eebe3ff..ded6c1fdbc 100644 --- a/frontend/app/src/shared/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,5 +1,5 @@ -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { AttributeSchema } from "@/screens/schema/types"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { AttributeSchema } from "@/entities/schema/types"; import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION, diff --git a/frontend/app/src/shared/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx index 2b55d5ce9f..5fe329f01d 100644 --- a/frontend/app/src/shared/components/inputs/relationship-many.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx @@ -1,5 +1,5 @@ -import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; -import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx index 47c686185a..fd72eea858 100644 --- a/frontend/app/src/shared/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -1,6 +1,6 @@ -import { POOLS_DICTIONNARY, POOLS_PEER } from "@/screens/ipam/constants"; -import { Node, RelationshipManyType } from "@/screens/objects/getObjectItemDisplayValue"; -import { AddRelationshipAction } from "@/screens/objects/relationships/ui/add-relationship-action"; +import { POOLS_DICTIONNARY, POOLS_PEER } from "@/entities/ipam/constants"; +import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/layout/app-version.tsx b/frontend/app/src/shared/components/layout/app-version.tsx similarity index 100% rename from frontend/app/src/screens/layout/app-version.tsx rename to frontend/app/src/shared/components/layout/app-version.tsx diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/breadcrumb-navigation.tsx similarity index 83% rename from frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/breadcrumb-navigation.tsx index b9cc10a6ed..03168fb056 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/breadcrumb-navigation.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/breadcrumb-navigation.tsx @@ -1,8 +1,8 @@ import { BreadcrumbDynamicElement, BreadcrumbDynamicElementProps, -} from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element"; -import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; +} from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element"; +import { breadcrumbActiveStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; import { Breadcrumb, BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { classNames } from "@/shared/utils/common"; import React from "react"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx similarity index 91% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx index a8b618b15a..5c1fbfd6c9 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx @@ -1,7 +1,7 @@ -import { branchesState } from "@/screens/branches/branches.atom"; -import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; +import { branchesState } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; +import { breadcrumbItemStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; import { Combobox, ComboboxContent, diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx similarity index 58% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx index 17bba2e9c5..79c12ecd47 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-dynamic-element.tsx @@ -1,8 +1,8 @@ -import BreadcrumbBranchSelector from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-branch-selector"; -import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; -import BreadcrumbObjectSelector from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector"; -import BreadcrumbSchemaSelector from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector"; -import { BreadcrumbItem } from "@/screens/layout/breadcrumb-navigation/type"; +import BreadcrumbBranchSelector from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector"; +import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; +import BreadcrumbObjectSelector from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector"; +import BreadcrumbSchemaSelector from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector"; +import { BreadcrumbItem } from "@/shared/components/layout/breadcrumb-navigation/type"; import { warnUnexpectedType } from "@/shared/utils/common"; export type BreadcrumbDynamicElementProps = BreadcrumbItem & { diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link.tsx similarity index 83% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link.tsx index 0daf30c342..c4c6157b08 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-link.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link.tsx @@ -1,4 +1,4 @@ -import { breadcrumbItemStyle } from "@/screens/layout/breadcrumb-navigation/style"; +import { breadcrumbItemStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; import { classNames } from "@/shared/utils/common"; import { Slot } from "@radix-ui/react-slot"; import React from "react"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx similarity index 100% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading.tsx diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx similarity index 77% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx index 81dc0b8d4e..deb72e2b2d 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx @@ -1,7 +1,7 @@ -import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; -import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; +import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx similarity index 80% rename from frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx index 6f79bf8fa3..3d370acd47 100644 --- a/frontend/app/src/screens/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx @@ -1,8 +1,8 @@ import { PROFILE_KIND } from "@/config/constants"; -import { BreadcrumbLink } from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-link"; -import BreadcrumbLoading from "@/screens/layout/breadcrumb-navigation/items/breadcrumb-loading"; -import { breadcrumbActiveStyle } from "@/screens/layout/breadcrumb-navigation/style"; -import { getObjectDetailsUrl2 } from "@/screens/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; +import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; +import { breadcrumbActiveStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; import { BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; import { useSchema } from "@/shared/hooks/useSchema"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/style.ts b/frontend/app/src/shared/components/layout/breadcrumb-navigation/style.ts similarity index 100% rename from frontend/app/src/screens/layout/breadcrumb-navigation/style.ts rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/style.ts diff --git a/frontend/app/src/screens/layout/breadcrumb-navigation/type.ts b/frontend/app/src/shared/components/layout/breadcrumb-navigation/type.ts similarity index 100% rename from frontend/app/src/screens/layout/breadcrumb-navigation/type.ts rename to frontend/app/src/shared/components/layout/breadcrumb-navigation/type.ts diff --git a/frontend/app/src/screens/layout/content.tsx b/frontend/app/src/shared/components/layout/content.tsx similarity index 100% rename from frontend/app/src/screens/layout/content.tsx rename to frontend/app/src/shared/components/layout/content.tsx diff --git a/frontend/app/src/screens/layout/header.tsx b/frontend/app/src/shared/components/layout/header.tsx similarity index 87% rename from frontend/app/src/screens/layout/header.tsx rename to frontend/app/src/shared/components/layout/header.tsx index f01cf9cf71..cd32226400 100644 --- a/frontend/app/src/screens/layout/header.tsx +++ b/frontend/app/src/shared/components/layout/header.tsx @@ -1,7 +1,7 @@ import InfrahubLogo from "@/assets/infrahub-logo.svg"; -import BreadcrumbNavigation from "@/screens/layout/breadcrumb-navigation/breadcrumb-navigation"; import { constructPath } from "@/shared/api/rest/fetch"; import BranchSelector from "@/shared/components/branch-selector"; +import BreadcrumbNavigation from "@/shared/components/layout/breadcrumb-navigation/breadcrumb-navigation"; import { TimeFrameSelector } from "@/shared/components/time-selector"; import { Link } from "react-router-dom"; import { TaskStatus } from "./tasks-status"; diff --git a/frontend/app/src/screens/layout/layout.tsx b/frontend/app/src/shared/components/layout/layout.tsx similarity index 87% rename from frontend/app/src/screens/layout/layout.tsx rename to frontend/app/src/shared/components/layout/layout.tsx index 36eb837a8f..3a359b7c29 100644 --- a/frontend/app/src/screens/layout/layout.tsx +++ b/frontend/app/src/shared/components/layout/layout.tsx @@ -1,11 +1,11 @@ import { QSP } from "@/config/qsp"; -import { findSelectedBranch } from "@/screens/branches/branches"; -import { branchesState, currentBranchAtom } from "@/screens/branches/branches.atom"; -import Sidebar from "@/screens/layout/sidebar"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; -import { SchemaContext, withSchemaContext } from "@/screens/schema/withSchemaContext"; +import { findSelectedBranch } from "@/entities/branches/branches"; +import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { SchemaContext, withSchemaContext } from "@/entities/schema/withSchemaContext"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; +import Sidebar from "@/shared/components/layout/sidebar"; +import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { NetworkStatus, useQuery } from "@apollo/client"; import { useSetAtom } from "jotai"; diff --git a/frontend/app/src/screens/layout/logo.png b/frontend/app/src/shared/components/layout/logo.png similarity index 100% rename from frontend/app/src/screens/layout/logo.png rename to frontend/app/src/shared/components/layout/logo.png diff --git a/frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx b/frontend/app/src/shared/components/layout/menu-navigation/components/collapsed-button.tsx similarity index 100% rename from frontend/app/src/screens/layout/menu-navigation/components/collapsed-button.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/components/collapsed-button.tsx diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx b/frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-internal.tsx similarity index 92% rename from frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-internal.tsx index 86e03bcabf..320e225d3d 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-internal.tsx +++ b/frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-internal.tsx @@ -1,7 +1,7 @@ -import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; -import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; -import type { MenuItem } from "@/screens/layout/menu-navigation/types"; import { constructPath } from "@/shared/api/rest/fetch"; +import { CollapsedButton } from "@/shared/components/layout/menu-navigation/components/collapsed-button"; +import { menuNavigationItemStyle } from "@/shared/components/layout/menu-navigation/styles"; +import type { MenuItem } from "@/shared/components/layout/menu-navigation/types"; import { DropdownMenu, DropdownMenuContent, diff --git a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx b/frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-object.tsx similarity index 94% rename from frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-object.tsx index 947e9e3846..b8f68f1dee 100644 --- a/frontend/app/src/screens/layout/menu-navigation/components/menu-section-object.tsx +++ b/frontend/app/src/shared/components/layout/menu-navigation/components/menu-section-object.tsx @@ -1,7 +1,7 @@ -import { ObjectAvatar } from "@/screens/layout/menu-navigation/components/object-avatar"; -import { menuNavigationItemStyle } from "@/screens/layout/menu-navigation/styles"; -import { MenuItem } from "@/screens/layout/menu-navigation/types"; import { constructPath } from "@/shared/api/rest/fetch"; +import { ObjectAvatar } from "@/shared/components/layout/menu-navigation/components/object-avatar"; +import { menuNavigationItemStyle } from "@/shared/components/layout/menu-navigation/styles"; +import { MenuItem } from "@/shared/components/layout/menu-navigation/types"; import { DropdownMenu, DropdownMenuAccordion, diff --git a/frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx b/frontend/app/src/shared/components/layout/menu-navigation/components/object-avatar.tsx similarity index 100% rename from frontend/app/src/screens/layout/menu-navigation/components/object-avatar.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/components/object-avatar.tsx diff --git a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts b/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts similarity index 84% rename from frontend/app/src/screens/layout/menu-navigation/get-menu.ts rename to frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts index 91a1f8531b..129bc99df8 100644 --- a/frontend/app/src/screens/layout/menu-navigation/get-menu.ts +++ b/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts @@ -1,7 +1,7 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { MenuData } from "@/screens/layout/menu-navigation/types"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { apiClient } from "@/shared/api/rest/client"; +import { MenuData } from "@/shared/components/layout/menu-navigation/types"; import { store } from "@/shared/stores"; import { queryOptions } from "@tanstack/react-query"; diff --git a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx b/frontend/app/src/shared/components/layout/menu-navigation/menu-navigation.tsx similarity index 71% rename from frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/menu-navigation.tsx index bc1b2f81ad..258e7cd78b 100644 --- a/frontend/app/src/screens/layout/menu-navigation/menu-navigation.tsx +++ b/frontend/app/src/shared/components/layout/menu-navigation/menu-navigation.tsx @@ -1,7 +1,7 @@ -import ErrorScreen from "@/screens/errors/error-screen"; -import { MenuSectionInternal } from "@/screens/layout/menu-navigation/components/menu-section-internal"; -import { MenuSectionObject } from "@/screens/layout/menu-navigation/components/menu-section-object"; -import { menuQueryOptions } from "@/screens/layout/menu-navigation/get-menu"; +import ErrorScreen from "@/shared/components/errors/error-screen"; +import { MenuSectionInternal } from "@/shared/components/layout/menu-navigation/components/menu-section-internal"; +import { MenuSectionObject } from "@/shared/components/layout/menu-navigation/components/menu-section-object"; +import { menuQueryOptions } from "@/shared/components/layout/menu-navigation/get-menu"; import { Divider } from "@/shared/components/ui/divider"; import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { Spinner } from "@/shared/components/ui/spinner"; diff --git a/frontend/app/src/screens/layout/menu-navigation/styles.tsx b/frontend/app/src/shared/components/layout/menu-navigation/styles.tsx similarity index 100% rename from frontend/app/src/screens/layout/menu-navigation/styles.tsx rename to frontend/app/src/shared/components/layout/menu-navigation/styles.tsx diff --git a/frontend/app/src/screens/layout/menu-navigation/types.ts b/frontend/app/src/shared/components/layout/menu-navigation/types.ts similarity index 100% rename from frontend/app/src/screens/layout/menu-navigation/types.ts rename to frontend/app/src/shared/components/layout/menu-navigation/types.ts diff --git a/frontend/app/src/screens/layout/sidebar.tsx b/frontend/app/src/shared/components/layout/sidebar.tsx similarity index 94% rename from frontend/app/src/screens/layout/sidebar.tsx rename to frontend/app/src/shared/components/layout/sidebar.tsx index 8dd8bacaee..7b748b53ec 100644 --- a/frontend/app/src/screens/layout/sidebar.tsx +++ b/frontend/app/src/shared/components/layout/sidebar.tsx @@ -1,7 +1,7 @@ import { SIDEBAR_COLLAPSED_KEY } from "@/config/localStorage"; -import MenuNavigation from "@/screens/layout/menu-navigation/menu-navigation"; import { AccountMenu } from "@/shared/components/account-menu"; import { Button } from "@/shared/components/buttons/button-primitive"; +import MenuNavigation from "@/shared/components/layout/menu-navigation/menu-navigation"; import { SearchAnywhere } from "@/shared/components/search/search-anywhere"; import { useLocalStorage } from "@/shared/hooks/useLocalStorage"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/screens/layout/tasks-status.tsx b/frontend/app/src/shared/components/layout/tasks-status.tsx similarity index 95% rename from frontend/app/src/screens/layout/tasks-status.tsx rename to frontend/app/src/shared/components/layout/tasks-status.tsx index 84824c5247..1b1b780ef4 100644 --- a/frontend/app/src/screens/layout/tasks-status.tsx +++ b/frontend/app/src/shared/components/layout/tasks-status.tsx @@ -1,7 +1,7 @@ import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/screens/loading-screen/loading-screen.tsx b/frontend/app/src/shared/components/loading-screen.tsx similarity index 100% rename from frontend/app/src/screens/loading-screen/loading-screen.tsx rename to frontend/app/src/shared/components/loading-screen.tsx diff --git a/frontend/app/src/shared/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx index 37b851865f..81ef0ddb30 100644 --- a/frontend/app/src/shared/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,5 +1,5 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/shared/components/search/search-actions.tsx b/frontend/app/src/shared/components/search/search-actions.tsx index 3936be2322..46efc526c1 100644 --- a/frontend/app/src/shared/components/search/search-actions.tsx +++ b/frontend/app/src/shared/components/search/search-actions.tsx @@ -1,7 +1,7 @@ -import { menuQueryOptions } from "@/screens/layout/menu-navigation/get-menu"; -import { MenuItem } from "@/screens/layout/menu-navigation/types"; -import { IModelSchema, genericsState, schemaState } from "@/screens/schema/schema.atom"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; +import { menuQueryOptions } from "@/shared/components/layout/menu-navigation/get-menu"; +import { MenuItem } from "@/shared/components/layout/menu-navigation/types"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx index b1bdfdcd2e..5ee1f533ee 100644 --- a/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx +++ b/frontend/app/src/shared/components/search/search-anywhere-trigger.tsx @@ -1,5 +1,5 @@ -import { CollapsedButton } from "@/screens/layout/menu-navigation/components/collapsed-button"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; +import { CollapsedButton } from "@/shared/components/layout/menu-navigation/components/collapsed-button"; import Kbd from "@/shared/components/ui/kbd"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx index 2071b09186..a1aa19b1b4 100644 --- a/frontend/app/src/shared/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,7 +1,7 @@ import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; -import { POOLS_PEER } from "@/screens/ipam/constants"; -import { getSchemaObjectColumns } from "@/screens/object-items/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/screens/objects/objects"; +import { POOLS_PEER } from "@/entities/ipam/constants"; +import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; import { constructPath } from "@/shared/api/rest/fetch"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; diff --git a/frontend/app/src/shared/components/table/table.tsx b/frontend/app/src/shared/components/table/table.tsx index 8882a3d5af..a055e99862 100644 --- a/frontend/app/src/shared/components/table/table.tsx +++ b/frontend/app/src/shared/components/table/table.tsx @@ -1,10 +1,10 @@ -import NoDataFound from "@/screens/errors/no-data-found"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; +import NoDataFound from "@/shared/components/errors/no-data-found"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { Link } from "react-router-dom"; -import { Permission } from "@/screens/permission/types"; +import { Permission } from "@/entities/permission/types"; import { ReactNode, isValidElement } from "react"; import { DropdownMenu, diff --git a/frontend/app/src/shared/components/ui/id.tsx b/frontend/app/src/shared/components/ui/id.tsx index 0d29a7d7a5..5391ba2ee9 100644 --- a/frontend/app/src/shared/components/ui/id.tsx +++ b/frontend/app/src/shared/components/ui/id.tsx @@ -1,8 +1,8 @@ import { NODE_OBJECT } from "@/config/constants"; -import LoadingScreen from "@/screens/loading-screen/loading-screen"; import { getObjectDisplayLabel } from "@/shared/api/graphql/queries/objects/getObjectDisplayLabel"; import { Clipboard } from "@/shared/components/buttons/clipboard"; import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; +import LoadingScreen from "@/shared/components/loading-screen"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/shared/hooks/useObjectDetails.ts b/frontend/app/src/shared/hooks/useObjectDetails.ts index 8f371f0238..d214a9f705 100644 --- a/frontend/app/src/shared/hooks/useObjectDetails.ts +++ b/frontend/app/src/shared/hooks/useObjectDetails.ts @@ -1,8 +1,11 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; -import { getSchemaObjectColumns, getTabs } from "@/screens/object-items/getSchemaObjectColumns"; -import { getPermission } from "@/screens/permission/utils"; -import { IModelSchema, genericsState } from "@/screens/schema/schema.atom"; -import { isGenericSchema } from "@/screens/schema/utils"; +import { + getSchemaObjectColumns, + getTabs, +} from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getPermission } from "@/entities/permission/utils"; +import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; +import { isGenericSchema } from "@/entities/schema/utils"; import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/shared/hooks/useObjectItems.ts b/frontend/app/src/shared/hooks/useObjectItems.ts index d722367cda..129d8e90ff 100644 --- a/frontend/app/src/shared/hooks/useObjectItems.ts +++ b/frontend/app/src/shared/hooks/useObjectItems.ts @@ -2,14 +2,14 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { getObjectAttributes, getObjectRelationships, -} from "@/screens/object-items/getSchemaObjectColumns"; -import { getPermission } from "@/screens/permission/utils"; +} from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getPermission } from "@/entities/permission/utils"; import { IModelSchema, genericsState, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; +} from "@/entities/schema/schema.atom"; import { getTokens } from "@/shared/api/graphql/queries/accounts/getTokens"; import { getObjectItemsPaginated } from "@/shared/api/graphql/queries/objects/getObjectItems"; import { Filter } from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/shared/hooks/useQuery.ts b/frontend/app/src/shared/hooks/useQuery.ts index 98f49ca136..c4157dc664 100644 --- a/frontend/app/src/shared/hooks/useQuery.ts +++ b/frontend/app/src/shared/hooks/useQuery.ts @@ -1,5 +1,5 @@ import { CONFIG } from "@/config/config"; -import { currentBranchAtom } from "@/screens/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { WSClient } from "@/shared/api/graphql/websocket"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { diff --git a/frontend/app/src/shared/hooks/useSchema.ts b/frontend/app/src/shared/hooks/useSchema.ts index c2b3cd167d..f365c4f520 100644 --- a/frontend/app/src/shared/hooks/useSchema.ts +++ b/frontend/app/src/shared/hooks/useSchema.ts @@ -5,7 +5,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/screens/schema/schema.atom"; +} from "@/entities/schema/schema.atom"; import { useAtomValue } from "jotai/index"; type UseSchema = (kind?: string | null) => diff --git a/frontend/app/tests/fake/schema.ts b/frontend/app/tests/fake/schema.ts index 61681c0012..a55f4ba799 100644 --- a/frontend/app/tests/fake/schema.ts +++ b/frontend/app/tests/fake/schema.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/screens/schema/schema.atom"; +import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/entities/schema/schema.atom"; export const generateNodeSchema = ( overrides?: Partial diff --git a/frontend/app/tests/integrations/screens/account.cy.tsx b/frontend/app/tests/integrations/screens/account.cy.tsx index 08b93b2e6f..205f5c15b0 100644 --- a/frontend/app/tests/integrations/screens/account.cy.tsx +++ b/frontend/app/tests/integrations/screens/account.cy.tsx @@ -2,7 +2,7 @@ import { MockedProvider } from "@apollo/client/testing"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { genericsState } from "../../../src/screens/schema/schema.atom"; +import { genericsState } from "../../../src/entities/schema/schema.atom"; import { AccountMenu } from "../../../src/shared/components/account-menu"; import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; diff --git a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx index 4ab6624f2e..eb16090edb 100644 --- a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx +++ b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx @@ -4,10 +4,10 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { ArtifactsDiff } from "../../../src/screens/diff/artifact-diff/artifacts-diff"; -import { proposedChangedState } from "../../../src/screens/proposed-changes/proposedChanges.atom"; -import { schemaState } from "../../../src/screens/schema/schema.atom"; -import { withSchemaContext } from "../../../src/screens/schema/withSchemaContext"; +import { ArtifactsDiff } from "../../../src/entities/diff/artifact-diff/artifacts-diff"; +import { proposedChangedState } from "../../../src/entities/proposed-changes/proposedChanges.atom"; +import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { withSchemaContext } from "../../../src/entities/schema/withSchemaContext"; import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; diff --git a/frontend/app/tests/integrations/screens/branche-items.cy.tsx b/frontend/app/tests/integrations/screens/branche-items.cy.tsx index 98eb91f2e1..eb89dbcf31 100644 --- a/frontend/app/tests/integrations/screens/branche-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/branche-items.cy.tsx @@ -2,8 +2,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; -import BranchesItems from "../../../src/screens/branches/branches-items"; -import { branchesState } from "../../../src/screens/branches/branches.atom"; +import BranchesItems from "../../../src/entities/branches/branches-items"; +import { branchesState } from "../../../src/entities/branches/branches.atom"; import { branchesMocks, branchesQuery } from "../../mocks/data/branches"; import { TestProvider } from "../../mocks/jotai/atom"; diff --git a/frontend/app/tests/integrations/screens/conversations.cy.tsx b/frontend/app/tests/integrations/screens/conversations.cy.tsx index 39029496dd..79c1fd923e 100644 --- a/frontend/app/tests/integrations/screens/conversations.cy.tsx +++ b/frontend/app/tests/integrations/screens/conversations.cy.tsx @@ -3,9 +3,9 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { Conversations } from "../../../src/screens/proposed-changes/conversations"; -import { proposedChangedState } from "../../../src/screens/proposed-changes/proposedChanges.atom"; -import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { Conversations } from "../../../src/entities/proposed-changes/conversations"; +import { proposedChangedState } from "../../../src/entities/proposed-changes/proposedChanges.atom"; +import { schemaState } from "../../../src/entities/schema/schema.atom"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { conversationMocksData, diff --git a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx index dee5777ca9..ff4c5de5fc 100644 --- a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; -import { genericsState, schemaState } from "../../../src/screens/schema/schema.atom"; +import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; import { deviceDetailsInterfacesMocksData, deviceDetailsInterfacesMocksQuery, diff --git a/frontend/app/tests/integrations/screens/object-details.cy.tsx b/frontend/app/tests/integrations/screens/object-details.cy.tsx index 2b48427ebf..2291f86221 100644 --- a/frontend/app/tests/integrations/screens/object-details.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; -import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { schemaState } from "../../../src/entities/schema/schema.atom"; import { deviceDetailsMocksASNName, deviceDetailsMocksData, diff --git a/frontend/app/tests/integrations/screens/object-fields.cy.tsx b/frontend/app/tests/integrations/screens/object-fields.cy.tsx index ff22dfc397..16992b2338 100644 --- a/frontend/app/tests/integrations/screens/object-fields.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-fields.cy.tsx @@ -2,7 +2,7 @@ import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { schemaState } from "../../../src/entities/schema/schema.atom"; import { gql } from "@apollo/client"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index 8e5b772afe..771badaf43 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -6,7 +6,7 @@ import { Route, Routes } from "react-router-dom"; import { configState } from "../../../src/config/config.atom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; -import { schemaState } from "../../../src/screens/schema/schema.atom"; +import { schemaState } from "../../../src/entities/schema/schema.atom"; import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { mockedToken } from "../../fixtures/auth"; import { configMocks } from "../../mocks/data/config"; diff --git a/frontend/app/tests/integrations/screens/object-items.cy.tsx b/frontend/app/tests/integrations/screens/object-items.cy.tsx index 2ce5c39e83..4fc1bce341 100644 --- a/frontend/app/tests/integrations/screens/object-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items.cy.tsx @@ -4,7 +4,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; -import { genericsState, schemaState } from "../../../src/screens/schema/schema.atom"; +import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; import { graphqlQueriesMocksData, graphqlQueriesMocksQuery, diff --git a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts index cd52429146..9b57c2b056 100644 --- a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts +++ b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts @@ -1,4 +1,4 @@ -import { IModelSchema } from "@/screens/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/schema.atom"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; import { Filter } from "@/shared/hooks/useFilters"; import { describe, expect } from "vitest"; diff --git a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts index 87f273bf17..00cec16fe0 100644 --- a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts @@ -1,4 +1,4 @@ -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; +import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; import { ProfileData } from "@/shared/components/form/object-form"; import { GetFieldDefaultValue, diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index 7e93a8d8d3..1d527bda80 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,7 +1,7 @@ -import { currentBranchAtom } from "@/screens/branches/branches.atom"; -import { AttributeType } from "@/screens/objects/getObjectItemDisplayValue"; -import { IModelSchema } from "@/screens/schema/schema.atom"; -import { RelationshipSchema } from "@/screens/schema/types"; +import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { IModelSchema } from "@/entities/schema/schema.atom"; +import { RelationshipSchema } from "@/entities/schema/types"; import { components } from "@/shared/api/rest/types.generated"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; import { AuthContextType } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts index 85c944a746..f9e80641ad 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts @@ -1,9 +1,9 @@ import { RelationshipManyType, RelationshipOneType, -} from "@/screens/objects/getObjectItemDisplayValue"; -import { RESOURCE_GENERIC_KIND } from "@/screens/resource-manager/constants"; -import { iNodeSchema, schemaState } from "@/screens/schema/schema.atom"; +} from "@/entities/objects/getObjectItemDisplayValue"; +import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; +import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { store } from "@/shared/stores"; import { describe, expect } from "vitest"; diff --git a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts index 42da04ee34..83df964846 100644 --- a/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts +++ b/frontend/app/tests/unit/components/tree/addItemsToTree.test.ts @@ -1,6 +1,6 @@ -import { TREE_ROOT_ID } from "@/screens/ipam/constants"; -import { addItemsToTree } from "@/screens/ipam/ipam-tree/utils"; -import { EMPTY_TREE } from "@/screens/ipam/ipam-tree/utils"; +import { TREE_ROOT_ID } from "@/entities/ipam/constants"; +import { addItemsToTree } from "@/entities/ipam/ipam-tree/utils"; +import { EMPTY_TREE } from "@/entities/ipam/ipam-tree/utils"; import { TreeProps } from "@/shared/components/ui/tree"; import { describe, expect, it } from "vitest"; diff --git a/frontend/app/tests/unit/diff/diff-tree/formatDiffNodesToDiffTree.test.ts b/frontend/app/tests/unit/diff/diff-tree/formatDiffNodesToDiffTree.test.ts index e7b90b0743..792dc99b9b 100644 --- a/frontend/app/tests/unit/diff/diff-tree/formatDiffNodesToDiffTree.test.ts +++ b/frontend/app/tests/unit/diff/diff-tree/formatDiffNodesToDiffTree.test.ts @@ -1,7 +1,7 @@ import { describe, expect, it } from "vitest"; -import { formatDiffNodesToDiffTree } from "../../../../src/screens/diff/diff-tree"; -import { DiffNode } from "../../../../src/screens/diff/node-diff/types"; -import { TREE_ROOT_ID } from "../../../../src/screens/ipam/constants"; +import { formatDiffNodesToDiffTree } from "../../../../src/entities/diff/diff-tree"; +import { DiffNode } from "../../../../src/entities/diff/node-diff/types"; +import { TREE_ROOT_ID } from "../../../../src/entities/ipam/constants"; describe("Format diff nodes to diff tree", () => { it("should return an empty array when no nodes are provided", () => { diff --git a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts index f38f07de1a..100e0276a0 100644 --- a/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts +++ b/frontend/app/tests/unit/diff/diff-tree/generateRootCategoryNodeForDiffTree.test.ts @@ -1,6 +1,6 @@ import { describe, expect, it } from "vitest"; -import { generateRootCategoryNodeForDiffTree } from "../../../../src/screens/diff/diff-tree"; -import { TREE_ROOT_ID } from "../../../../src/screens/ipam/constants"; +import { generateRootCategoryNodeForDiffTree } from "../../../../src/entities/diff/diff-tree"; +import { TREE_ROOT_ID } from "../../../../src/entities/ipam/constants"; import { TreeProps } from "../../../../src/shared/components/ui/tree"; describe("Generate root category nodes for DiffTree", () => { diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index 9245992cf9..218b4e301b 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,4 +1,4 @@ -import getMutationMetaDetailsFromFormData from "@/screens/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { describe, expect, it } from "vitest"; diff --git a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts index bac1883a80..3c1fab1f11 100644 --- a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts +++ b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts @@ -2,7 +2,7 @@ import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, -} from "@/screens/object-items/getSchemaObjectColumns"; +} from "@/entities/objects/object-items/getSchemaObjectColumns"; import { describe, expect, it } from "vitest"; import { C_deviceAttributeColumns, From 9086c934c24417ec64652872c2c9203cb75e1bc3 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 18:06:17 +0100 Subject: [PATCH 07/25] api folder for entities --- .../artifacts/api}/getArtifacts.ts | 0 .../object-item-details-paginated.tsx | 2 +- .../branches/api}/createBranch.ts | 0 .../branches/api}/deleteBranch.ts | 0 .../branches/api}/getBranchDetails.ts | 0 .../branches/api}/getBranches.ts | 0 .../branches/api}/mergeBranch.ts | 0 .../branches/api}/rebaseBranch.ts | 0 .../branches/api}/validateBranch.ts | 0 .../branch-actions/branch-merge-button.tsx | 2 +- .../branch-actions/branch-rebase-button.tsx | 2 +- .../branch-actions/branch-validate-button.tsx | 2 +- .../src/entities/branches/branch-details.tsx | 4 ++-- .../src/entities/branches/branches-items.tsx | 2 +- .../app/src/entities/branches/task-display.tsx | 2 +- .../diff => entities/diff/api}/diff-update.ts | 0 .../diff/api}/getCheckDetails.ts | 0 .../diff/api}/getValidatorDetails.ts | 0 .../diff/api}/getValidators.ts | 0 .../diff/api}/resolveConflict.ts | 0 .../diff => entities/diff/api}/runCheck.ts | 0 .../artifact-diff/artifact-content-diff.tsx | 6 +++--- .../diff/artifact-diff/artifact-repo-diff.tsx | 2 +- .../app/src/entities/diff/checks/check.tsx | 2 +- .../entities/diff/checks/checks-summary.tsx | 2 +- .../app/src/entities/diff/checks/checks.tsx | 2 +- .../app/src/entities/diff/checks/conflict.tsx | 2 +- .../entities/diff/checks/validator-details.tsx | 2 +- .../diff/file-diff/file-content-diff.tsx | 6 +++--- .../src/entities/diff/node-diff/comments.tsx | 6 +++--- .../src/entities/diff/node-diff/conflict.tsx | 2 +- .../app/src/entities/diff/node-diff/index.tsx | 6 +++--- .../app/src/entities/diff/node-diff/thread.tsx | 2 +- .../app/src/entities/groups/add-group-form.tsx | 2 +- .../groups/api}/getGroups.ts | 0 .../groups/api}/updateGroupsQuery.ts | 0 .../app/src/entities/groups/groups-manager.tsx | 2 +- .../src/entities/groups/object-groups-list.tsx | 2 +- .../ipam => entities/ipam/api}/ip-address.ts | 0 .../ipam/api}/ip-namespaces.ts | 0 .../ipam => entities/ipam/api}/prefixes.ts | 0 .../ipam/ip-addresses/ip-address-summary.tsx | 4 ++-- .../ipam/ip-addresses/ipam-ip-address-list.tsx | 6 +++--- .../entities/ipam/ip-namespace-selector.tsx | 2 +- .../entities/ipam/ipam-tree/ipam-tree.state.ts | 6 +++--- .../src/entities/ipam/ipam-tree/ipam-tree.tsx | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 4 ++-- .../prefixes/ipam-prefixes-summary-details.tsx | 4 ++-- .../prefixes/ipam-prefixes-summary-list.tsx | 4 ++-- .../objects/api}/basicMutation.ts | 0 .../objects/api}/createObject.ts | 0 .../objects/api}/deleteObject.ts | 0 .../objects/api}/dropdownOptions.ts | 0 .../api}/generateRelationshipListQuery.ts | 0 .../objects/api}/getFormRequirements.ts | 0 .../objects/api}/getObjectDetails.ts | 0 .../objects/api}/getObjectDisplayLabel.ts | 0 .../objects/api}/getObjectItems.ts | 0 .../api}/getObjectRelationshipDetails.ts | 0 .../objects/api}/getProfiles.ts | 0 .../objects/api}/getRelationshipParent.ts | 0 .../objects/api}/objectTreeQuery.tsx | 0 .../objects => entities/objects/api}/search.ts | 0 .../objects/api}/updateObjectWithId.ts | 0 .../src/entities/objects/hierarchical-tree.tsx | 6 +++--- .../action-buttons/relationships-buttons.tsx | 2 +- .../relationship-details-paginated.tsx | 2 +- .../relationships-details-paginated.tsx | 4 ++-- .../object-item-edit-paginated.tsx | 2 +- .../object-item-meta-edit.tsx | 2 +- .../relationships/api}/addRelationship.ts | 0 .../objects/relationships/api/queries.ts | 2 +- .../relationships/api}/removeRelationship.ts | 0 .../action-button/pc-approve-button.tsx | 2 +- .../action-button/pc-close-button.tsx | 2 +- .../action-button/pc-merge-button.tsx | 2 +- .../api}/createProposedChange.ts | 0 .../api}/deleteProposedChange.ts | 0 .../api}/getProposedChanges.ts | 0 .../api}/getProposedChangesArtifacts.ts | 0 .../api}/getProposedChangesArtifactsThreads.ts | 0 .../api}/getProposedChangesChecks.ts | 0 .../api}/getProposedChangesDetails.ts | 0 .../api}/getProposedChangesDiffSummary.ts | 0 .../api}/getProposedChangesDiffTree.ts | 0 .../api}/getProposedChangesFilesThreads.ts | 0 .../getProposedChangesObjectThreadComments.ts | 0 .../api}/getProposedChangesObjectThreads.ts | 0 .../api}/getProposedChangesTasks.ts | 0 .../api}/getProposedChangesThreads.ts | 0 .../entities/proposed-changes/checks-tab.tsx | 2 +- .../proposed-changes/conversations.tsx | 6 +++--- .../entities/proposed-changes/create-form.tsx | 2 +- .../entities/proposed-changes/diff-filter.tsx | 2 +- .../entities/proposed-changes/diff-summary.tsx | 2 +- .../form/proposed-change-edit-form.tsx | 2 +- .../src/entities/proposed-changes/items.tsx | 8 ++++---- .../proposed-change-details.tsx | 2 +- .../repository/api}/actions.ts | 0 .../repository/repository-action-menu.tsx | 2 +- .../entities/repository/repository-form.tsx | 2 +- .../resource-manager/number-pool-form.tsx | 4 ++-- .../src/entities/role-manager/account-form.tsx | 4 ++-- .../role-manager/account-group-form.tsx | 4 ++-- .../role-manager/account-role-form.tsx | 4 ++-- .../app/src/entities/role-manager/accounts.tsx | 2 +- .../role-manager/api}/getAccounts.ts | 0 .../role-manager/api}/getCounts.ts | 0 .../role-manager/api}/getGlobalPermissions.ts | 0 .../role-manager/api}/getGroups.ts | 0 .../role-manager/api}/getObjectPermissions.ts | 0 .../role-manager/api}/getRoles.ts | 0 .../role-manager/global-permissions-form.tsx | 4 ++-- .../role-manager/global-permissions.tsx | 2 +- .../app/src/entities/role-manager/groups.tsx | 2 +- .../app/src/entities/role-manager/index.tsx | 2 +- .../role-manager/object-permissions-form.tsx | 4 ++-- .../role-manager/object-permissions.tsx | 2 +- .../app/src/entities/role-manager/roles.tsx | 2 +- .../schema => entities/schema/api}/dropdown.ts | 0 .../schema => entities/schema/api}/enum.ts | 0 .../tasks/api}/checkTasksItemDetails.ts | 0 .../tasks/api}/getTasksItemDetails.ts | 0 .../tasks/api}/getTasksItemDetailsTitle.ts | 0 .../tasks/api}/getTasksItems.ts | 0 .../tasks/api}/getTasksItemsCount.ts | 0 .../tasks/api}/getTasksStatus.ts | 0 .../src/entities/tasks/task-item-details.tsx | 2 +- frontend/app/src/entities/tasks/task-items.tsx | 2 +- .../user-profile/api}/createAccountToken.ts | 0 .../user-profile/api}/getProfileDetails.ts | 0 .../user-profile/api}/getTokens.ts | 0 .../user-profile/api}/updateAccountPassword.ts | 0 .../user-profile/tab-update-password.tsx | 2 +- .../src/entities/user-profile/user-profile.tsx | 2 +- .../CoreGraphQLQuery/graphql-query-details.tsx | 2 +- .../app/src/pages/proposed-changes/details.tsx | 2 +- frontend/app/src/pages/tasks/task-details.tsx | 2 +- .../graphql/queries/accounts/getAllAccounts.ts | 14 -------------- .../queries/notifications/subscription.ts | 7 ------- .../app/src/shared/components/account-menu.tsx | 2 +- .../shared/components/conversations/thread.tsx | 4 ++-- .../components/form/branch-create-form.tsx | 2 +- .../form/fields/relationship.field.tsx | 2 +- .../src/shared/components/form/node-form.tsx | 6 +++--- .../components/form/profiles-selector.tsx | 2 +- .../src/shared/components/inputs/dropdown.tsx | 5 +---- .../app/src/shared/components/inputs/enum.tsx | 5 +---- .../components/inputs/relationship-many.tsx | 2 +- .../components/inputs/relationship-one.tsx | 4 ++-- .../src/shared/components/layout/layout.tsx | 2 +- .../shared/components/layout/tasks-status.tsx | 2 +- .../components/modals/modal-delete-object.tsx | 2 +- .../src/shared/components/notifications.tsx | 18 ------------------ .../shared/components/search/search-nodes.tsx | 2 +- frontend/app/src/shared/components/ui/id.tsx | 2 +- .../app/src/shared/hooks/useObjectDetails.ts | 2 +- .../app/src/shared/hooks/useObjectItems.ts | 4 ++-- .../getMutationMetaDetailsFromFormData.test.ts | 2 +- 159 files changed, 123 insertions(+), 168 deletions(-) rename frontend/app/src/{shared/api/graphql/queries => entities/artifacts/api}/getArtifacts.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/branches => entities/branches/api}/createBranch.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/branches => entities/branches/api}/deleteBranch.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/branches => entities/branches/api}/getBranchDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/branches => entities/branches/api}/getBranches.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/branches => entities/branches/api}/mergeBranch.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/branches => entities/branches/api}/rebaseBranch.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/branches => entities/branches/api}/validateBranch.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/proposed-changes/diff => entities/diff/api}/diff-update.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/diff => entities/diff/api}/getCheckDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/diff => entities/diff/api}/getValidatorDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/diff => entities/diff/api}/getValidators.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/diff => entities/diff/api}/resolveConflict.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/diff => entities/diff/api}/runCheck.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/groups => entities/groups/api}/getGroups.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/groups => entities/groups/api}/updateGroupsQuery.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/ipam => entities/ipam/api}/ip-address.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/ipam => entities/ipam/api}/ip-namespaces.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/ipam => entities/ipam/api}/prefixes.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/objects => entities/objects/api}/basicMutation.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/objects => entities/objects/api}/createObject.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/objects => entities/objects/api}/deleteObject.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/dropdownOptions.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/generateRelationshipListQuery.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/forms => entities/objects/api}/getFormRequirements.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getObjectDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getObjectDisplayLabel.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getObjectItems.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getObjectRelationshipDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getProfiles.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/getRelationshipParent.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/objectTreeQuery.tsx (100%) rename frontend/app/src/{shared/api/graphql/queries/objects => entities/objects/api}/search.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/objects => entities/objects/api}/updateObjectWithId.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/relationships => entities/objects/relationships/api}/addRelationship.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/relationships => entities/objects/relationships/api}/removeRelationship.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/proposed-changes => entities/proposed-changes/api}/createProposedChange.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/proposed-changes => entities/proposed-changes/api}/deleteProposedChange.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChanges.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesArtifacts.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesArtifactsThreads.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesChecks.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesDiffSummary.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesDiffTree.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesFilesThreads.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesObjectThreadComments.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesObjectThreads.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesTasks.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/proposed-changes => entities/proposed-changes/api}/getProposedChangesThreads.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/repository => entities/repository/api}/actions.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getAccounts.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getCounts.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getGlobalPermissions.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getGroups.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getObjectPermissions.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/role-management => entities/role-manager/api}/getRoles.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/schema => entities/schema/api}/dropdown.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/schema => entities/schema/api}/enum.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/checkTasksItemDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/getTasksItemDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/getTasksItemDetailsTitle.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/getTasksItems.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/getTasksItemsCount.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/tasks => entities/tasks/api}/getTasksStatus.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/accounts => entities/user-profile/api}/createAccountToken.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/accounts => entities/user-profile/api}/getProfileDetails.ts (100%) rename frontend/app/src/{shared/api/graphql/queries/accounts => entities/user-profile/api}/getTokens.ts (100%) rename frontend/app/src/{shared/api/graphql/mutations/accounts => entities/user-profile/api}/updateAccountPassword.ts (100%) delete mode 100644 frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts delete mode 100644 frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts delete mode 100644 frontend/app/src/shared/components/notifications.tsx diff --git a/frontend/app/src/shared/api/graphql/queries/getArtifacts.ts b/frontend/app/src/entities/artifacts/api/getArtifacts.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/getArtifacts.ts rename to frontend/app/src/entities/artifacts/api/getArtifacts.ts diff --git a/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx b/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx index 351d575288..5ee3a413d4 100644 --- a/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx @@ -3,6 +3,7 @@ import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { Generate } from "@/entities/artifacts/generate"; import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; +import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; import { getObjectItemDisplayValue } from "@/entities/objects/getObjectItemDisplayValue"; import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; import RelationshipDetails from "@/entities/objects/object-item-details/relationship-details-paginated"; @@ -18,7 +19,6 @@ import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom" import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/shared/api/graphql/mutations/branches/createBranch.ts b/frontend/app/src/entities/branches/api/createBranch.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/branches/createBranch.ts rename to frontend/app/src/entities/branches/api/createBranch.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/branches/deleteBranch.ts b/frontend/app/src/entities/branches/api/deleteBranch.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/branches/deleteBranch.ts rename to frontend/app/src/entities/branches/api/deleteBranch.ts diff --git a/frontend/app/src/shared/api/graphql/queries/branches/getBranchDetails.ts b/frontend/app/src/entities/branches/api/getBranchDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/branches/getBranchDetails.ts rename to frontend/app/src/entities/branches/api/getBranchDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/branches/getBranches.ts b/frontend/app/src/entities/branches/api/getBranches.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/branches/getBranches.ts rename to frontend/app/src/entities/branches/api/getBranches.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/branches/mergeBranch.ts b/frontend/app/src/entities/branches/api/mergeBranch.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/branches/mergeBranch.ts rename to frontend/app/src/entities/branches/api/mergeBranch.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/branches/rebaseBranch.ts b/frontend/app/src/entities/branches/api/rebaseBranch.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/branches/rebaseBranch.ts rename to frontend/app/src/entities/branches/api/rebaseBranch.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/branches/validateBranch.ts b/frontend/app/src/entities/branches/api/validateBranch.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/branches/validateBranch.ts rename to frontend/app/src/entities/branches/api/validateBranch.ts diff --git a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx index fb4c42d00b..7df02e9104 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx @@ -1,8 +1,8 @@ import { TASK_OBJECT } from "@/config/constants"; +import { BRANCH_MERGE } from "@/entities/branches/api/mergeBranch"; import { BRANCH_MERGE_WORKFLOW } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_MERGE } from "@/shared/api/graphql/mutations/branches/mergeBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx index bed9c101a1..3a4c1be519 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx @@ -1,8 +1,8 @@ import { TASK_OBJECT } from "@/config/constants"; +import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx index 2b66674b49..58d007b1dc 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx @@ -1,8 +1,8 @@ import { TASK_OBJECT } from "@/config/constants"; +import { BRANCH_VALIDATE } from "@/entities/branches/api/validateBranch"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_VALIDATE } from "@/shared/api/graphql/mutations/branches/validateBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/entities/branches/branch-details.tsx b/frontend/app/src/entities/branches/branch-details.tsx index c2be3b9a98..4d6c024f8c 100644 --- a/frontend/app/src/entities/branches/branch-details.tsx +++ b/frontend/app/src/entities/branches/branch-details.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; +import { BRANCH_DELETE } from "@/entities/branches/api/deleteBranch"; +import { getBranchDetailsQuery } from "@/entities/branches/api/getBranchDetails"; import { branchesState } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_DELETE } from "@/shared/api/graphql/mutations/branches/deleteBranch"; -import { getBranchDetailsQuery } from "@/shared/api/graphql/queries/branches/getBranchDetails"; import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import Accordion from "@/shared/components/display/accordion"; diff --git a/frontend/app/src/entities/branches/branches-items.tsx b/frontend/app/src/entities/branches/branches-items.tsx index 4540610d76..10e24abc96 100644 --- a/frontend/app/src/entities/branches/branches-items.tsx +++ b/frontend/app/src/entities/branches/branches-items.tsx @@ -1,5 +1,5 @@ +import GET_BRANCHES from "@/entities/branches/api/getBranches"; import { branchesState } from "@/entities/branches/branches.atom"; -import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/entities/branches/task-display.tsx b/frontend/app/src/entities/branches/task-display.tsx index 3af16dae0b..f11af36b24 100644 --- a/frontend/app/src/entities/branches/task-display.tsx +++ b/frontend/app/src/entities/branches/task-display.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; +import { TASK_DETAILS } from "@/entities/tasks/api/getTasksItemDetails"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/shared/api/graphql/mutations/proposed-changes/diff/diff-update.ts b/frontend/app/src/entities/diff/api/diff-update.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/proposed-changes/diff/diff-update.ts rename to frontend/app/src/entities/diff/api/diff-update.ts diff --git a/frontend/app/src/shared/api/graphql/queries/diff/getCheckDetails.ts b/frontend/app/src/entities/diff/api/getCheckDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/diff/getCheckDetails.ts rename to frontend/app/src/entities/diff/api/getCheckDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/diff/getValidatorDetails.ts b/frontend/app/src/entities/diff/api/getValidatorDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/diff/getValidatorDetails.ts rename to frontend/app/src/entities/diff/api/getValidatorDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/diff/getValidators.ts b/frontend/app/src/entities/diff/api/getValidators.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/diff/getValidators.ts rename to frontend/app/src/entities/diff/api/getValidators.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/diff/resolveConflict.ts b/frontend/app/src/entities/diff/api/resolveConflict.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/diff/resolveConflict.ts rename to frontend/app/src/entities/diff/api/resolveConflict.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/diff/runCheck.ts b/frontend/app/src/entities/diff/api/runCheck.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/diff/runCheck.ts rename to frontend/app/src/entities/diff/api/runCheck.ts diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx index 599fefe06c..178e6a885f 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx @@ -5,11 +5,11 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { getProposedChangesArtifactsThreads } from "@/entities/proposed-changes/api/getProposedChangesArtifactsThreads"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { getProposedChangesArtifactsThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads"; import { fetchStream } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx index ec4f38daea..ce0b3e74c6 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,5 +1,5 @@ +import { getArtifactDetails } from "@/entities/artifacts/api/getArtifacts"; import { schemaState } from "@/entities/schema/schema.atom"; -import { getArtifactDetails } from "@/shared/api/graphql/queries/getArtifacts"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/diff/checks/check.tsx b/frontend/app/src/entities/diff/checks/check.tsx index 5577619d26..44042d0e65 100644 --- a/frontend/app/src/entities/diff/checks/check.tsx +++ b/frontend/app/src/entities/diff/checks/check.tsx @@ -1,5 +1,5 @@ +import { GET_CHECKS } from "@/entities/diff/api/getCheckDetails"; import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; -import { GET_CHECKS } from "@/shared/api/graphql/queries/diff/getCheckDetails"; import { MoreButton } from "@/shared/components/buttons/more-button"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; diff --git a/frontend/app/src/entities/diff/checks/checks-summary.tsx b/frontend/app/src/entities/diff/checks/checks-summary.tsx index 6297fc642d..55fed77428 100644 --- a/frontend/app/src/entities/diff/checks/checks-summary.tsx +++ b/frontend/app/src/entities/diff/checks/checks-summary.tsx @@ -3,11 +3,11 @@ import { PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; +import { runCheck } from "@/entities/diff/api/runCheck"; import { getValidatorsStats } from "@/entities/proposed-changes/checks"; import { genericsState } from "@/entities/schema/schema.atom"; import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { runCheck } from "@/shared/api/graphql/mutations/diff/runCheck"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Retry } from "@/shared/components/buttons/retry"; import { PieChart } from "@/shared/components/display/pie-chart"; diff --git a/frontend/app/src/entities/diff/checks/checks.tsx b/frontend/app/src/entities/diff/checks/checks.tsx index d77c27151c..adbf53413d 100644 --- a/frontend/app/src/entities/diff/checks/checks.tsx +++ b/frontend/app/src/entities/diff/checks/checks.tsx @@ -1,4 +1,4 @@ -import { GET_VALIDATORS } from "@/shared/api/graphql/queries/diff/getValidators"; +import { GET_VALIDATORS } from "@/entities/diff/api/getValidators"; import ErrorScreen from "@/shared/components/errors/error-screen"; import useQuery from "@/shared/hooks/useQuery"; import { forwardRef, useImperativeHandle } from "react"; diff --git a/frontend/app/src/entities/diff/checks/conflict.tsx b/frontend/app/src/entities/diff/checks/conflict.tsx index abf5eb1241..73bb7dd27c 100644 --- a/frontend/app/src/entities/diff/checks/conflict.tsx +++ b/frontend/app/src/entities/diff/checks/conflict.tsx @@ -2,9 +2,9 @@ import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { diffContent, getBadgeType } from "@/entities/diff/diff"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { getObjectDetailsUrl } from "@/entities/objects/objects"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { constructPath } from "@/shared/api/rest/fetch"; import { ToggleButtons } from "@/shared/components/buttons/toggle-buttons"; import { Badge } from "@/shared/components/display/badge"; diff --git a/frontend/app/src/entities/diff/checks/validator-details.tsx b/frontend/app/src/entities/diff/checks/validator-details.tsx index 93cc7ec38a..3f58e16e38 100644 --- a/frontend/app/src/entities/diff/checks/validator-details.tsx +++ b/frontend/app/src/entities/diff/checks/validator-details.tsx @@ -1,4 +1,4 @@ -import { getValidatorDetails } from "@/shared/api/graphql/queries/diff/getValidatorDetails"; +import { getValidatorDetails } from "@/entities/diff/api/getValidatorDetails"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx index ff4c6a1bd3..6baf0e49f5 100644 --- a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx @@ -5,11 +5,11 @@ import { } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { getProposedChangesFilesThreads } from "@/entities/proposed-changes/api/getProposedChangesFilesThreads"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { getProposedChangesFilesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads"; import { fetchStream } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; diff --git a/frontend/app/src/entities/diff/node-diff/comments.tsx b/frontend/app/src/entities/diff/node-diff/comments.tsx index 44554e1d5d..19755f6f07 100644 --- a/frontend/app/src/entities/diff/node-diff/comments.tsx +++ b/frontend/app/src/entities/diff/node-diff/comments.tsx @@ -4,11 +4,11 @@ import { } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { getThreadLabel } from "@/entities/diff/diff"; +import { createObject } from "@/entities/objects/api/createObject"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { getProposedChangesObjectThreadComments } from "@/entities/proposed-changes/api/getProposedChangesObjectThreadComments"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { getProposedChangesObjectThreadComments } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/entities/diff/node-diff/conflict.tsx b/frontend/app/src/entities/diff/node-diff/conflict.tsx index 5e0925c6c7..5dcbefbadd 100644 --- a/frontend/app/src/entities/diff/node-diff/conflict.tsx +++ b/frontend/app/src/entities/diff/node-diff/conflict.tsx @@ -1,7 +1,7 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { resolveConflict } from "@/entities/diff/api/resolveConflict"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { resolveConflict } from "@/shared/api/graphql/mutations/diff/resolveConflict"; import { Checkbox } from "@/shared/components/inputs/checkbox"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/diff/node-diff/index.tsx b/frontend/app/src/entities/diff/node-diff/index.tsx index 5c2c50842c..ac69791080 100644 --- a/frontend/app/src/entities/diff/node-diff/index.tsx +++ b/frontend/app/src/entities/diff/node-diff/index.tsx @@ -1,14 +1,14 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; +import { DIFF_UPDATE } from "@/entities/diff/api/diff-update"; import DiffTree from "@/entities/diff/diff-tree"; import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/entities/diff/node-diff/types"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; +import { getProposedChangesDiffTree } from "@/entities/proposed-changes/api/getProposedChangesDiffTree"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { BRANCH_REBASE } from "@/shared/api/graphql/mutations/branches/rebaseBranch"; -import { DIFF_UPDATE } from "@/shared/api/graphql/mutations/proposed-changes/diff/diff-update"; -import { getProposedChangesDiffTree } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DateDisplay } from "@/shared/components/display/date-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/diff/node-diff/thread.tsx b/frontend/app/src/entities/diff/node-diff/thread.tsx index 477546b3ea..d591af9257 100644 --- a/frontend/app/src/entities/diff/node-diff/thread.tsx +++ b/frontend/app/src/entities/diff/node-diff/thread.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { getThreadLabel, getThreadTitle } from "@/entities/diff/diff"; +import { getProposedChangesObjectThreads } from "@/entities/proposed-changes/api/getProposedChangesObjectThreads"; import { schemaState } from "@/entities/schema/schema.atom"; -import { getProposedChangesObjectThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads"; import { SidePanelTitle } from "@/shared/components/display/sidepanel-title"; import SlideOver from "@/shared/components/display/slide-over"; import { Tooltip } from "@/shared/components/ui/tooltip"; diff --git a/frontend/app/src/entities/groups/add-group-form.tsx b/frontend/app/src/entities/groups/add-group-form.tsx index 6193f7e1e6..03ab007e92 100644 --- a/frontend/app/src/entities/groups/add-group-form.tsx +++ b/frontend/app/src/entities/groups/add-group-form.tsx @@ -1,5 +1,5 @@ +import { updateGroupsQuery } from "@/entities/groups/api/updateGroupsQuery"; import { iNodeSchema } from "@/entities/schema/schema.atom"; -import { updateGroupsQuery } from "@/shared/api/graphql/mutations/groups/updateGroupsQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { diff --git a/frontend/app/src/shared/api/graphql/queries/groups/getGroups.ts b/frontend/app/src/entities/groups/api/getGroups.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/groups/getGroups.ts rename to frontend/app/src/entities/groups/api/getGroups.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts b/frontend/app/src/entities/groups/api/updateGroupsQuery.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/groups/updateGroupsQuery.ts rename to frontend/app/src/entities/groups/api/updateGroupsQuery.ts diff --git a/frontend/app/src/entities/groups/groups-manager.tsx b/frontend/app/src/entities/groups/groups-manager.tsx index e25d063a3b..30c1e3c477 100644 --- a/frontend/app/src/entities/groups/groups-manager.tsx +++ b/frontend/app/src/entities/groups/groups-manager.tsx @@ -1,9 +1,9 @@ import AddGroupTriggerButton from "@/entities/groups/add-group-trigger-button"; +import { getGroupsQuery } from "@/entities/groups/api/getGroups"; import ObjectGroupsList from "@/entities/groups/object-groups-list"; import { GroupDataFromAPI } from "@/entities/groups/types"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema } from "@/entities/schema/schema.atom"; -import { getGroupsQuery } from "@/shared/api/graphql/queries/groups/getGroups"; import { Button } from "@/shared/components/buttons/button-primitive"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/entities/groups/object-groups-list.tsx b/frontend/app/src/entities/groups/object-groups-list.tsx index 6731dd7fd0..7f5b786188 100644 --- a/frontend/app/src/entities/groups/object-groups-list.tsx +++ b/frontend/app/src/entities/groups/object-groups-list.tsx @@ -1,9 +1,9 @@ import { QSP } from "@/config/qsp"; import { GroupDataFromAPI } from "@/entities/groups/types"; import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { REMOVE_RELATIONSHIP } from "@/entities/objects/relationships/api/removeRelationship"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; import { Button } from "@/shared/components/buttons/button-primitive"; import ItemGroup from "@/shared/components/layouts/item-group"; import ModalDelete from "@/shared/components/modals/modal-delete"; diff --git a/frontend/app/src/shared/api/graphql/queries/ipam/ip-address.ts b/frontend/app/src/entities/ipam/api/ip-address.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/ipam/ip-address.ts rename to frontend/app/src/entities/ipam/api/ip-address.ts diff --git a/frontend/app/src/shared/api/graphql/queries/ipam/ip-namespaces.ts b/frontend/app/src/entities/ipam/api/ip-namespaces.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/ipam/ip-namespaces.ts rename to frontend/app/src/entities/ipam/api/ip-namespaces.ts diff --git a/frontend/app/src/shared/api/graphql/queries/ipam/prefixes.ts b/frontend/app/src/entities/ipam/api/prefixes.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/ipam/prefixes.ts rename to frontend/app/src/entities/ipam/api/prefixes.ts diff --git a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx index cd39663f2d..cbf0aa73bb 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx @@ -1,12 +1,12 @@ +import { GET_IP_ADDRESS_KIND } from "@/entities/ipam/api/ip-address"; import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/entities/ipam/constants"; import { IpamSummarySkeleton } from "@/entities/ipam/prefixes/ipam-summary-skeleton"; +import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; -import { GET_IP_ADDRESS_KIND } from "@/shared/api/graphql/queries/ipam/ip-address"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx index 3c110fa062..1c8c45966f 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -1,5 +1,7 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { GET_IP_ADDRESSES } from "@/entities/ipam/api/ip-address"; +import { GET_PREFIX_KIND } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { @@ -9,12 +11,10 @@ import { IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC, } from "@/entities/ipam/constants"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_IP_ADDRESSES } from "@/shared/api/graphql/queries/ipam/ip-address"; -import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx index 42c28bfd86..91b849ba20 100644 --- a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx @@ -1,6 +1,6 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { GET_IP_NAMESPACES } from "@/entities/ipam/api/ip-namespaces"; import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; -import { GET_IP_NAMESPACES } from "@/shared/api/graphql/queries/ipam/ip-namespaces"; import { Skeleton } from "@/shared/components/skeleton"; import { Combobox, diff --git a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts index c0c8a06034..f3e85d0cbc 100644 --- a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts @@ -1,11 +1,11 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/entities/ipam/constants"; -import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { GET_PREFIXES_ONLY, GET_PREFIX_ANCESTORS, GET_TOP_LEVEL_PREFIXES, -} from "@/shared/api/graphql/queries/ipam/prefixes"; +} from "@/entities/ipam/api/prefixes"; +import { IP_PREFIX_GENERIC, TREE_ROOT_ID } from "@/entities/ipam/constants"; +import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { TreeProps } from "@/shared/components/ui/tree"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { atom } from "jotai"; diff --git a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx index c44f4c510f..84879dada1 100644 --- a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx @@ -6,11 +6,11 @@ import { useEffect, useState } from "react"; import { ITreeViewOnLoadDataProps, NodeId } from "react-accessible-treeview"; import { Link, useNavigate, useParams } from "react-router-dom"; +import { GET_PREFIXES_ONLY } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/entities/ipam/constants"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; -import { GET_PREFIXES_ONLY } from "@/shared/api/graphql/queries/ipam/prefixes"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { debounce } from "@/shared/utils/common"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx index f010b761d5..22346e7144 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx @@ -1,14 +1,14 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { GET_PREFIX } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_PREFIX } from "@/shared/api/graphql/queries/ipam/prefixes"; import { ColorDisplay } from "@/shared/components/display/color-display"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx index a7c981aa2c..262166ecbb 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -1,11 +1,11 @@ +import { GET_PREFIX_KIND } from "@/entities/ipam/api/prefixes"; import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; +import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; -import { GET_PREFIX_KIND } from "@/shared/api/graphql/queries/ipam/prefixes"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link } from "@/shared/components/ui/link"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx index ce7a83d979..54aa7eb356 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -1,14 +1,14 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { GET_PREFIXES } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { GET_PREFIXES } from "@/shared/api/graphql/queries/ipam/prefixes"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/shared/api/graphql/mutations/objects/basicMutation.ts b/frontend/app/src/entities/objects/api/basicMutation.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/objects/basicMutation.ts rename to frontend/app/src/entities/objects/api/basicMutation.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/objects/createObject.ts b/frontend/app/src/entities/objects/api/createObject.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/objects/createObject.ts rename to frontend/app/src/entities/objects/api/createObject.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/objects/deleteObject.ts b/frontend/app/src/entities/objects/api/deleteObject.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/objects/deleteObject.ts rename to frontend/app/src/entities/objects/api/deleteObject.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/dropdownOptions.ts b/frontend/app/src/entities/objects/api/dropdownOptions.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/dropdownOptions.ts rename to frontend/app/src/entities/objects/api/dropdownOptions.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/generateRelationshipListQuery.ts b/frontend/app/src/entities/objects/api/generateRelationshipListQuery.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/generateRelationshipListQuery.ts rename to frontend/app/src/entities/objects/api/generateRelationshipListQuery.ts diff --git a/frontend/app/src/shared/api/graphql/queries/forms/getFormRequirements.ts b/frontend/app/src/entities/objects/api/getFormRequirements.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/forms/getFormRequirements.ts rename to frontend/app/src/entities/objects/api/getFormRequirements.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts b/frontend/app/src/entities/objects/api/getObjectDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getObjectDetails.ts rename to frontend/app/src/entities/objects/api/getObjectDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectDisplayLabel.ts b/frontend/app/src/entities/objects/api/getObjectDisplayLabel.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getObjectDisplayLabel.ts rename to frontend/app/src/entities/objects/api/getObjectDisplayLabel.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts b/frontend/app/src/entities/objects/api/getObjectItems.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getObjectItems.ts rename to frontend/app/src/entities/objects/api/getObjectItems.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getObjectRelationshipDetails.ts b/frontend/app/src/entities/objects/api/getObjectRelationshipDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getObjectRelationshipDetails.ts rename to frontend/app/src/entities/objects/api/getObjectRelationshipDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getProfiles.ts b/frontend/app/src/entities/objects/api/getProfiles.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getProfiles.ts rename to frontend/app/src/entities/objects/api/getProfiles.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/getRelationshipParent.ts b/frontend/app/src/entities/objects/api/getRelationshipParent.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/getRelationshipParent.ts rename to frontend/app/src/entities/objects/api/getRelationshipParent.ts diff --git a/frontend/app/src/shared/api/graphql/queries/objects/objectTreeQuery.tsx b/frontend/app/src/entities/objects/api/objectTreeQuery.tsx similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/objectTreeQuery.tsx rename to frontend/app/src/entities/objects/api/objectTreeQuery.tsx diff --git a/frontend/app/src/shared/api/graphql/queries/objects/search.ts b/frontend/app/src/entities/objects/api/search.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/objects/search.ts rename to frontend/app/src/entities/objects/api/search.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/objects/updateObjectWithId.ts b/frontend/app/src/entities/objects/api/updateObjectWithId.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/objects/updateObjectWithId.ts rename to frontend/app/src/entities/objects/api/updateObjectWithId.ts diff --git a/frontend/app/src/entities/objects/hierarchical-tree.tsx b/frontend/app/src/entities/objects/hierarchical-tree.tsx index 70c7b7d7fb..c88b037a9a 100644 --- a/frontend/app/src/entities/objects/hierarchical-tree.tsx +++ b/frontend/app/src/entities/objects/hierarchical-tree.tsx @@ -2,13 +2,13 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { HIDE_AUTO_GENERATED_FILTER } from "@/entities/groups/groups-auto-generated-filter-button"; import { TREE_ROOT_ID } from "@/entities/ipam/constants"; import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/entities/ipam/ipam-tree/utils"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; -import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; import { objectAncestorsQuery, objectChildrenQuery, objectTopLevelTreeQuery, -} from "@/shared/api/graphql/queries/objects/objectTreeQuery"; +} from "@/entities/objects/api/objectTreeQuery"; +import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import useFilters from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx index eae753807a..c0671bf769 100644 --- a/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; +import { ADD_RELATIONSHIP } from "@/entities/objects/relationships/api/addRelationship"; import { Permission } from "@/entities/permission/types"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { ADD_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/addRelationship"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx index 87e0c1e636..bcbdd1bc35 100644 --- a/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx @@ -1,4 +1,5 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; @@ -8,7 +9,6 @@ import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom" import { getPermission } from "@/entities/permission/utils"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; diff --git a/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx index 1234b3e6e7..0da3d10b86 100644 --- a/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; +import { getObjectRelationshipsDetailsPaginated } from "@/entities/objects/api/getObjectRelationshipDetails"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { REMOVE_RELATIONSHIP } from "@/entities/objects/relationships/api/removeRelationship"; import { genericsState, iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; -import { REMOVE_RELATIONSHIP } from "@/shared/api/graphql/mutations/relationships/removeRelationship"; -import { getObjectRelationshipsDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectRelationshipDetails"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx index 5e60a417de..1e6aae466c 100644 --- a/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx @@ -1,8 +1,8 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { DynamicFieldData } from "@/entities/objects/edit-form-hook/dynamic-control-types"; import { generateObjectEditFormQuery } from "@/entities/objects/object-item-edit/generateObjectEditFormQuery"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx index 0e0c8f4da4..08aecbd735 100644 --- a/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,8 +1,8 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; import { iNodeSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/shared/api/graphql/mutations/relationships/addRelationship.ts b/frontend/app/src/entities/objects/relationships/api/addRelationship.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/relationships/addRelationship.ts rename to frontend/app/src/entities/objects/relationships/api/addRelationship.ts diff --git a/frontend/app/src/entities/objects/relationships/api/queries.ts b/frontend/app/src/entities/objects/relationships/api/queries.ts index 0f8fa29433..7fc74f7200 100644 --- a/frontend/app/src/entities/objects/relationships/api/queries.ts +++ b/frontend/app/src/entities/objects/relationships/api/queries.ts @@ -1,5 +1,5 @@ +import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { gql } from "@apollo/client"; export type getRelationshipsFromApiParams = { diff --git a/frontend/app/src/shared/api/graphql/mutations/relationships/removeRelationship.ts b/frontend/app/src/entities/objects/relationships/api/removeRelationship.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/relationships/removeRelationship.ts rename to frontend/app/src/entities/objects/relationships/api/removeRelationship.ts diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx index fef2129cd3..a3909fcc2f 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { useAuth } from "@/shared/hooks/useAuth"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx index c62e4beb8a..d0efabdb25 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx index 980b0a8512..cee74eb6d3 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/shared/api/graphql/mutations/proposed-changes/createProposedChange.ts b/frontend/app/src/entities/proposed-changes/api/createProposedChange.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/proposed-changes/createProposedChange.ts rename to frontend/app/src/entities/proposed-changes/api/createProposedChange.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/proposed-changes/deleteProposedChange.ts b/frontend/app/src/entities/proposed-changes/api/deleteProposedChange.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/proposed-changes/deleteProposedChange.ts rename to frontend/app/src/entities/proposed-changes/api/deleteProposedChange.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChanges.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChanges.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChanges.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChanges.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesArtifacts.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesArtifacts.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesArtifactsThreads.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifactsThreads.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesArtifactsThreads.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesChecks.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesChecks.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesDiffSummary.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesDiffSummary.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesDiffTree.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffTree.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesDiffTree.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesFilesThreads.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesFilesThreads.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesFilesThreads.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesObjectThreadComments.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreadComments.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesObjectThreadComments.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesObjectThreads.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesObjectThreads.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesObjectThreads.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesTasks.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesTasks.ts diff --git a/frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads.ts b/frontend/app/src/entities/proposed-changes/api/getProposedChangesThreads.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads.ts rename to frontend/app/src/entities/proposed-changes/api/getProposedChangesThreads.ts diff --git a/frontend/app/src/entities/proposed-changes/checks-tab.tsx b/frontend/app/src/entities/proposed-changes/checks-tab.tsx index d60fbb14db..2d69e817bb 100644 --- a/frontend/app/src/entities/proposed-changes/checks-tab.tsx +++ b/frontend/app/src/entities/proposed-changes/checks-tab.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { getProposedChangesChecks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesChecks"; +import { getProposedChangesChecks } from "@/entities/proposed-changes/api/getProposedChangesChecks"; import { Pill } from "@/shared/components/display/pill"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/proposed-changes/conversations.tsx b/frontend/app/src/entities/proposed-changes/conversations.tsx index 91e0f05847..2b14c32953 100644 --- a/frontend/app/src/entities/proposed-changes/conversations.tsx +++ b/frontend/app/src/entities/proposed-changes/conversations.tsx @@ -5,10 +5,10 @@ import { PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { getProposedChangesThreads } from "@/entities/proposed-changes/api/getProposedChangesThreads"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; -import { getProposedChangesThreads } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesThreads"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/proposed-changes/create-form.tsx b/frontend/app/src/entities/proposed-changes/create-form.tsx index 28c4655643..a2184f9769 100644 --- a/frontend/app/src/entities/proposed-changes/create-form.tsx +++ b/frontend/app/src/entities/proposed-changes/create-form.tsx @@ -3,7 +3,7 @@ import { QSP } from "@/config/qsp"; import { branchesToSelectOptions } from "@/entities/branches/branches"; import { branchesState } from "@/entities/branches/branches.atom"; import { Node } from "@/entities/objects/getObjectItemDisplayValue"; -import { CREATE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/createProposedChange"; +import { CREATE_PROPOSED_CHANGE } from "@/entities/proposed-changes/api/createProposedChange"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { MarkdownEditor } from "@/shared/components/editor"; diff --git a/frontend/app/src/entities/proposed-changes/diff-filter.tsx b/frontend/app/src/entities/proposed-changes/diff-filter.tsx index e52981026f..384861bcae 100644 --- a/frontend/app/src/entities/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-filter.tsx @@ -1,4 +1,4 @@ -import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; +import { getProposedChangesDiffSummary } from "@/entities/proposed-changes/api/getProposedChangesDiffSummary"; import ErrorScreen from "@/shared/components/errors/error-screen"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/entities/proposed-changes/diff-summary.tsx b/frontend/app/src/entities/proposed-changes/diff-summary.tsx index 00161f73f7..50ecaadf44 100644 --- a/frontend/app/src/entities/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-summary.tsx @@ -4,7 +4,7 @@ import { toast } from "react-toastify"; import { QSP } from "@/config/qsp"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; -import { getProposedChangesDiffSummary } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDiffSummary"; +import { getProposedChangesDiffSummary } from "@/entities/proposed-changes/api/getProposedChangesDiffSummary"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx index 794f13a97a..0bc871df4f 100644 --- a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; diff --git a/frontend/app/src/entities/proposed-changes/items.tsx b/frontend/app/src/entities/proposed-changes/items.tsx index b739422e67..f243056908 100644 --- a/frontend/app/src/entities/proposed-changes/items.tsx +++ b/frontend/app/src/entities/proposed-changes/items.tsx @@ -9,14 +9,14 @@ import { Icon } from "@iconify-icon/react"; import { ARTIFACT_OBJECT, PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { DELETE_PROPOSED_CHANGE } from "@/entities/proposed-changes/api/deleteProposedChange"; +import { GET_PROPOSED_CHANGES } from "@/entities/proposed-changes/api/getProposedChanges"; +import { getProposedChangesArtifacts } from "@/entities/proposed-changes/api/getProposedChangesArtifacts"; +import { getProposedChangesTasks } from "@/entities/proposed-changes/api/getProposedChangesTasks"; import { ProposedChangesCounter } from "@/entities/proposed-changes/counter"; import { ProposedChangeDiffSummary } from "@/entities/proposed-changes/diff-summary"; import { ProposedChangesInfo } from "@/entities/proposed-changes/item-info"; import { ProposedChangesReviewers } from "@/entities/proposed-changes/reviewers"; -import { DELETE_PROPOSED_CHANGE } from "@/shared/api/graphql/mutations/proposed-changes/deleteProposedChange"; -import { GET_PROPOSED_CHANGES } from "@/shared/api/graphql/queries/proposed-changes/getProposedChanges"; -import { getProposedChangesArtifacts } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesArtifacts"; -import { getProposedChangesTasks } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesTasks"; import { constructPath } from "@/shared/api/rest/fetch"; import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; diff --git a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx index a7bf4882e4..a5f54ee562 100644 --- a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx @@ -6,7 +6,7 @@ import { Conversations } from "@/entities/proposed-changes/conversations"; import { ProposedChangeEditTrigger } from "@/entities/proposed-changes/proposed-change-edit-trigger"; import { getProposedChangesStateBadgeType } from "@/entities/proposed-changes/proposed-changes"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; -import { TASK_DETAILS_CHECK } from "@/shared/api/graphql/queries/tasks/checkTasksItemDetails"; +import { TASK_DETAILS_CHECK } from "@/entities/tasks/api/checkTasksItemDetails"; import { constructPath } from "@/shared/api/rest/fetch"; import Accordion from "@/shared/components/display/accordion"; import { Avatar } from "@/shared/components/display/avatar"; diff --git a/frontend/app/src/shared/api/graphql/mutations/repository/actions.ts b/frontend/app/src/entities/repository/api/actions.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/repository/actions.ts rename to frontend/app/src/entities/repository/api/actions.ts diff --git a/frontend/app/src/entities/repository/repository-action-menu.tsx b/frontend/app/src/entities/repository/repository-action-menu.tsx index 960b67a344..a3cd734f85 100644 --- a/frontend/app/src/entities/repository/repository-action-menu.tsx +++ b/frontend/app/src/entities/repository/repository-action-menu.tsx @@ -3,7 +3,7 @@ import { Icon } from "@iconify-icon/react"; import { CHECK_REPOSITORY_CONNECTIVITY, REIMPORT_LAST_COMMIT, -} from "@/shared/api/graphql/mutations/repository/actions"; +} from "@/entities/repository/api/actions"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { diff --git a/frontend/app/src/entities/repository/repository-form.tsx b/frontend/app/src/entities/repository/repository-form.tsx index 3fed50e87e..97d1d7721a 100644 --- a/frontend/app/src/entities/repository/repository-form.tsx +++ b/frontend/app/src/entities/repository/repository-form.tsx @@ -1,6 +1,6 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DynamicInput } from "@/shared/components/form/dynamic-form"; import RelationshipField from "@/shared/components/form/fields/relationship.field"; diff --git a/frontend/app/src/entities/resource-manager/number-pool-form.tsx b/frontend/app/src/entities/resource-manager/number-pool-form.tsx index 6256a30527..ba4613c26b 100644 --- a/frontend/app/src/entities/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/entities/resource-manager/number-pool-form.tsx @@ -1,5 +1,7 @@ import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import { NUMBER_POOL_NODE_ATTRIBUTE_FIELD, @@ -8,8 +10,6 @@ import { import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; diff --git a/frontend/app/src/entities/role-manager/account-form.tsx b/frontend/app/src/entities/role-manager/account-form.tsx index cdc9a430c2..4163ac04af 100644 --- a/frontend/app/src/entities/role-manager/account-form.tsx +++ b/frontend/app/src/entities/role-manager/account-form.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; diff --git a/frontend/app/src/entities/role-manager/account-group-form.tsx b/frontend/app/src/entities/role-manager/account-group-form.tsx index 8d33b726d9..437df108cb 100644 --- a/frontend/app/src/entities/role-manager/account-group-form.tsx +++ b/frontend/app/src/entities/role-manager/account-group-form.tsx @@ -5,10 +5,10 @@ import { OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import InputField from "@/shared/components/form/fields/input.field"; diff --git a/frontend/app/src/entities/role-manager/account-role-form.tsx b/frontend/app/src/entities/role-manager/account-role-form.tsx index 5823024f72..c3b6311d60 100644 --- a/frontend/app/src/entities/role-manager/account-role-form.tsx +++ b/frontend/app/src/entities/role-manager/account-role-form.tsx @@ -4,10 +4,10 @@ import { ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; import { FormFieldValue } from "@/shared/components/form/type"; diff --git a/frontend/app/src/entities/role-manager/accounts.tsx b/frontend/app/src/entities/role-manager/accounts.tsx index a64f9b0441..5e0a8f089a 100644 --- a/frontend/app/src/entities/role-manager/accounts.tsx +++ b/frontend/app/src/entities/role-manager/accounts.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; +import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/entities/role-manager/api/getAccounts"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/shared/api/graphql/queries/role-management/getAccounts"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ColorDisplay } from "@/shared/components/display/color-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getAccounts.ts b/frontend/app/src/entities/role-manager/api/getAccounts.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getAccounts.ts rename to frontend/app/src/entities/role-manager/api/getAccounts.ts diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getCounts.ts b/frontend/app/src/entities/role-manager/api/getCounts.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getCounts.ts rename to frontend/app/src/entities/role-manager/api/getCounts.ts diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getGlobalPermissions.ts b/frontend/app/src/entities/role-manager/api/getGlobalPermissions.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getGlobalPermissions.ts rename to frontend/app/src/entities/role-manager/api/getGlobalPermissions.ts diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getGroups.ts b/frontend/app/src/entities/role-manager/api/getGroups.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getGroups.ts rename to frontend/app/src/entities/role-manager/api/getGroups.ts diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getObjectPermissions.ts b/frontend/app/src/entities/role-manager/api/getObjectPermissions.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getObjectPermissions.ts rename to frontend/app/src/entities/role-manager/api/getObjectPermissions.ts diff --git a/frontend/app/src/shared/api/graphql/queries/role-management/getRoles.ts b/frontend/app/src/entities/role-manager/api/getRoles.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/role-management/getRoles.ts rename to frontend/app/src/entities/role-manager/api/getRoles.ts diff --git a/frontend/app/src/entities/role-manager/global-permissions-form.tsx b/frontend/app/src/entities/role-manager/global-permissions-form.tsx index 62c8506831..ff0653cb8b 100644 --- a/frontend/app/src/entities/role-manager/global-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions-form.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; import { FormFieldValue } from "@/shared/components/form/type"; diff --git a/frontend/app/src/entities/role-manager/global-permissions.tsx b/frontend/app/src/entities/role-manager/global-permissions.tsx index c5fcb86d9f..e93c5f8fc2 100644 --- a/frontend/app/src/entities/role-manager/global-permissions.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions.tsx @@ -1,7 +1,7 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; +import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/entities/role-manager/api/getGlobalPermissions"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getGlobalPermissions"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/entities/role-manager/groups.tsx b/frontend/app/src/entities/role-manager/groups.tsx index e12d29e463..65eea0423d 100644 --- a/frontend/app/src/entities/role-manager/groups.tsx +++ b/frontend/app/src/entities/role-manager/groups.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; +import { GET_ROLE_MANAGEMENT_GROUPS } from "@/entities/role-manager/api/getGroups"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_GROUPS } from "@/shared/api/graphql/queries/role-management/getGroups"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/entities/role-manager/index.tsx b/frontend/app/src/entities/role-manager/index.tsx index d4c6536cd3..7c5a5943be 100644 --- a/frontend/app/src/entities/role-manager/index.tsx +++ b/frontend/app/src/entities/role-manager/index.tsx @@ -5,7 +5,7 @@ import { GLOBAL_PERMISSION_OBJECT, OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; -import { GET_ROLE_MANAGEMENT_COUNTS } from "@/shared/api/graphql/queries/role-management/getCounts"; +import { GET_ROLE_MANAGEMENT_COUNTS } from "@/entities/role-manager/api/getCounts"; import { Tabs } from "@/shared/components/tabs-routes"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/entities/role-manager/object-permissions-form.tsx b/frontend/app/src/entities/role-manager/object-permissions-form.tsx index cba1c9f38f..94f4756b08 100644 --- a/frontend/app/src/entities/role-manager/object-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions-form.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; import { FormFieldValue } from "@/shared/components/form/type"; diff --git a/frontend/app/src/entities/role-manager/object-permissions.tsx b/frontend/app/src/entities/role-manager/object-permissions.tsx index bf02520a7e..a4a2475f26 100644 --- a/frontend/app/src/entities/role-manager/object-permissions.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions.tsx @@ -1,7 +1,7 @@ import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; +import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/entities/role-manager/api/getObjectPermissions"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/shared/api/graphql/queries/role-management/getObjectPermissions"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import { Pill } from "@/shared/components/display/pill"; diff --git a/frontend/app/src/entities/role-manager/roles.tsx b/frontend/app/src/entities/role-manager/roles.tsx index bbd74cafa1..149c9fe7b2 100644 --- a/frontend/app/src/entities/role-manager/roles.tsx +++ b/frontend/app/src/entities/role-manager/roles.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_ROLE_OBJECT } from "@/config/constants"; +import { GET_ROLE_MANAGEMENT_ROLES } from "@/entities/role-manager/api/getRoles"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { GET_ROLE_MANAGEMENT_ROLES } from "@/shared/api/graphql/queries/role-management/getRoles"; import ErrorScreen from "@/shared/components/errors/error-screen"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; diff --git a/frontend/app/src/shared/api/graphql/mutations/schema/dropdown.ts b/frontend/app/src/entities/schema/api/dropdown.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/schema/dropdown.ts rename to frontend/app/src/entities/schema/api/dropdown.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/schema/enum.ts b/frontend/app/src/entities/schema/api/enum.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/schema/enum.ts rename to frontend/app/src/entities/schema/api/enum.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/checkTasksItemDetails.ts b/frontend/app/src/entities/tasks/api/checkTasksItemDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/checkTasksItemDetails.ts rename to frontend/app/src/entities/tasks/api/checkTasksItemDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetails.ts b/frontend/app/src/entities/tasks/api/getTasksItemDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetails.ts rename to frontend/app/src/entities/tasks/api/getTasksItemDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle.ts b/frontend/app/src/entities/tasks/api/getTasksItemDetailsTitle.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle.ts rename to frontend/app/src/entities/tasks/api/getTasksItemDetailsTitle.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItems.ts b/frontend/app/src/entities/tasks/api/getTasksItems.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/getTasksItems.ts rename to frontend/app/src/entities/tasks/api/getTasksItems.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemsCount.ts b/frontend/app/src/entities/tasks/api/getTasksItemsCount.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/getTasksItemsCount.ts rename to frontend/app/src/entities/tasks/api/getTasksItemsCount.ts diff --git a/frontend/app/src/shared/api/graphql/queries/tasks/getTasksStatus.ts b/frontend/app/src/entities/tasks/api/getTasksStatus.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/tasks/getTasksStatus.ts rename to frontend/app/src/entities/tasks/api/getTasksStatus.ts diff --git a/frontend/app/src/entities/tasks/task-item-details.tsx b/frontend/app/src/entities/tasks/task-item-details.tsx index 70dbdd12c7..4d1b56e677 100644 --- a/frontend/app/src/entities/tasks/task-item-details.tsx +++ b/frontend/app/src/entities/tasks/task-item-details.tsx @@ -2,7 +2,7 @@ import { TASK_OBJECT } from "@/config/constants"; import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; -import { TASK_DETAILS } from "@/shared/api/graphql/queries/tasks/getTasksItemDetails"; +import { TASK_DETAILS } from "@/entities/tasks/api/getTasksItemDetails"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/tasks/task-items.tsx b/frontend/app/src/entities/tasks/task-items.tsx index 511eb0d114..c175cec53b 100644 --- a/frontend/app/src/entities/tasks/task-items.tsx +++ b/frontend/app/src/entities/tasks/task-items.tsx @@ -5,7 +5,7 @@ import { Pagination } from "@/shared/components/ui/pagination"; import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; -import { GET_TASKS } from "@/shared/api/graphql/queries/tasks/getTasksItems"; +import { GET_TASKS } from "@/entities/tasks/api/getTasksItems"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; diff --git a/frontend/app/src/shared/api/graphql/mutations/accounts/createAccountToken.ts b/frontend/app/src/entities/user-profile/api/createAccountToken.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/accounts/createAccountToken.ts rename to frontend/app/src/entities/user-profile/api/createAccountToken.ts diff --git a/frontend/app/src/shared/api/graphql/queries/accounts/getProfileDetails.ts b/frontend/app/src/entities/user-profile/api/getProfileDetails.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/accounts/getProfileDetails.ts rename to frontend/app/src/entities/user-profile/api/getProfileDetails.ts diff --git a/frontend/app/src/shared/api/graphql/queries/accounts/getTokens.ts b/frontend/app/src/entities/user-profile/api/getTokens.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/queries/accounts/getTokens.ts rename to frontend/app/src/entities/user-profile/api/getTokens.ts diff --git a/frontend/app/src/shared/api/graphql/mutations/accounts/updateAccountPassword.ts b/frontend/app/src/entities/user-profile/api/updateAccountPassword.ts similarity index 100% rename from frontend/app/src/shared/api/graphql/mutations/accounts/updateAccountPassword.ts rename to frontend/app/src/entities/user-profile/api/updateAccountPassword.ts diff --git a/frontend/app/src/entities/user-profile/tab-update-password.tsx b/frontend/app/src/entities/user-profile/tab-update-password.tsx index 34727f6be4..8ab059aef2 100644 --- a/frontend/app/src/entities/user-profile/tab-update-password.tsx +++ b/frontend/app/src/entities/user-profile/tab-update-password.tsx @@ -1,4 +1,4 @@ -import { UPDATE_ACCOUNT_PASSWORD } from "@/shared/api/graphql/mutations/accounts/updateAccountPassword"; +import { UPDATE_ACCOUNT_PASSWORD } from "@/entities/user-profile/api/updateAccountPassword"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/entities/user-profile/user-profile.tsx b/frontend/app/src/entities/user-profile/user-profile.tsx index ca5bf04c53..8b4b877828 100644 --- a/frontend/app/src/entities/user-profile/user-profile.tsx +++ b/frontend/app/src/entities/user-profile/user-profile.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { genericsState } from "@/entities/schema/schema.atom"; -import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; +import { getProfileDetails } from "@/entities/user-profile/api/getProfileDetails"; import { Avatar } from "@/shared/components/display/avatar"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index e30d29a1a1..23627eb8d4 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -2,12 +2,12 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; import GraphqlQueryDetailsCard from "@/entities/graphql/details/graphql-query-details-card"; import GraphQLQueryDetailsPageSkeleton from "@/entities/graphql/details/graphql-query-details-page-skeleton"; import GraphqlQueryViewerCard from "@/entities/graphql/details/graphql-query-viewer-card"; +import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; import { Permission } from "@/entities/permission/types"; import { getPermission } from "@/entities/permission/utils"; import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import NoDataFound from "@/shared/components/errors/no-data-found"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import useQuery from "@/shared/hooks/useQuery"; diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index b01d74309f..df2909b3be 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -3,7 +3,7 @@ import { QSP } from "@/config/qsp"; import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; import { Checks } from "@/entities/diff/checks/checks"; import { NodeDiff } from "@/entities/diff/node-diff"; -import { GET_PROPOSED_CHANGE_DETAILS } from "@/shared/api/graphql/queries/proposed-changes/getProposedChangesDetails"; +import { GET_PROPOSED_CHANGE_DETAILS } from "@/entities/proposed-changes/api/getProposedChangesDetails"; import { Tabs } from "@/shared/components/tabs"; import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index d3237cd88a..dfcf8f5cd5 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,6 +1,6 @@ import { TASK_OBJECT } from "@/config/constants"; +import { getTaskItemDetailsTitle } from "@/entities/tasks/api/getTasksItemDetailsTitle"; import { TaskItemDetails } from "@/entities/tasks/task-item-details"; -import { getTaskItemDetailsTitle } from "@/shared/api/graphql/queries/tasks/getTasksItemDetailsTitle"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts b/frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts deleted file mode 100644 index 7f64ad89c7..0000000000 --- a/frontend/app/src/shared/api/graphql/queries/accounts/getAllAccounts.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { gql } from "@apollo/client"; - -export const GET_ALL_ACCOUNTS = gql` - query GetAllAccounts { - CoreGenericAccount { - edges { - node { - id - display_label - } - } - } - } -`; diff --git a/frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts b/frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts deleted file mode 100644 index af374b3bec..0000000000 --- a/frontend/app/src/shared/api/graphql/queries/notifications/subscription.ts +++ /dev/null @@ -1,7 +0,0 @@ -import Handlebars from "handlebars"; - -export const subscription = Handlebars.compile(` -subscription Notification { - query(name: "{{query}}", interval: 2) -} -`); diff --git a/frontend/app/src/shared/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx index c131aae470..cf2f22edf1 100644 --- a/frontend/app/src/shared/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -6,7 +6,7 @@ import { } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; -import { getProfileDetails } from "@/shared/api/graphql/queries/accounts/getProfileDetails"; +import { getProfileDetails } from "@/entities/user-profile/api/getProfileDetails"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Avatar } from "@/shared/components/display/avatar"; diff --git a/frontend/app/src/shared/components/conversations/thread.tsx b/frontend/app/src/shared/components/conversations/thread.tsx index fdcd168f70..238e5fa26b 100644 --- a/frontend/app/src/shared/components/conversations/thread.tsx +++ b/frontend/app/src/shared/components/conversations/thread.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { getThreadTitle } from "@/entities/diff/diff"; +import { createObject } from "@/entities/objects/api/createObject"; +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { Button } from "@/shared/components/buttons/button"; import { Checkbox } from "@/shared/components/inputs/checkbox"; import ModalConfirm from "@/shared/components/modals/modal-confirm"; diff --git a/frontend/app/src/shared/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx index 791c22cf60..ab8396145e 100644 --- a/frontend/app/src/shared/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -1,7 +1,7 @@ import { QSP } from "@/config/qsp"; +import { BRANCH_CREATE } from "@/entities/branches/api/createBranch"; import { branchesState } from "@/entities/branches/branches.atom"; import { Branch } from "@/shared/api/graphql/generated/graphql"; -import { BRANCH_CREATE } from "@/shared/api/graphql/mutations/branches/createBranch"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; import InputField from "@/shared/components/form/fields/input.field"; diff --git a/frontend/app/src/shared/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx index b7bd5d981a..f418403db1 100644 --- a/frontend/app/src/shared/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,6 +1,6 @@ +import { getRelationshipParent } from "@/entities/objects/api/getRelationshipParent"; import { Node } from "@/entities/objects/getObjectItemDisplayValue"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; -import { getRelationshipParent } from "@/shared/api/graphql/queries/objects/getRelationshipParent"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { DynamicRelationshipFieldProps, diff --git a/frontend/app/src/shared/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx index 586b910895..5c4e4065d7 100644 --- a/frontend/app/src/shared/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,13 +1,13 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { createObject } from "@/entities/objects/api/createObject"; +import { GET_FORM_REQUIREMENTS } from "@/entities/objects/api/getFormRequirements"; import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; import { NUMBER_POOL_KIND } from "@/entities/resource-manager/constants"; import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; +import { CREATE_ACCOUNT_TOKEN } from "@/entities/user-profile/api/createAccountToken"; import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { CREATE_ACCOUNT_TOKEN } from "@/shared/api/graphql/mutations/accounts/createAccountToken"; -import { createObject } from "@/shared/api/graphql/mutations/objects/createObject"; -import { GET_FORM_REQUIREMENTS } from "@/shared/api/graphql/queries/forms/getFormRequirements"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; diff --git a/frontend/app/src/shared/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx index 5c6ee3b8d9..693e9b5b99 100644 --- a/frontend/app/src/shared/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,6 +1,6 @@ +import { getProfiles } from "@/entities/objects/api/getProfiles"; import { getObjectAttributes } from "@/entities/objects/object-items/getSchemaObjectColumns"; import { genericsState, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; -import { getProfiles } from "@/shared/api/graphql/queries/objects/getProfiles"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; diff --git a/frontend/app/src/shared/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx index 1efdd5f400..18cece1d0c 100644 --- a/frontend/app/src/shared/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,9 +1,6 @@ +import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION } from "@/entities/schema/api/dropdown"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; -import { - DROPDOWN_ADD_MUTATION, - DROPDOWN_REMOVE_MUTATION, -} from "@/shared/api/graphql/mutations/schema/dropdown"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/shared/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx index ded6c1fdbc..8f8e27c511 100644 --- a/frontend/app/src/shared/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,9 +1,6 @@ +import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/entities/schema/api/enum"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; -import { - ENUM_ADD_MUTATION, - ENUM_REMOVE_MUTATION, -} from "@/shared/api/graphql/mutations/schema/enum"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/shared/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx index 5fe329f01d..ded60fb563 100644 --- a/frontend/app/src/shared/components/inputs/relationship-many.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx @@ -1,6 +1,6 @@ +import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; -import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx index fd72eea858..24ad309f37 100644 --- a/frontend/app/src/shared/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -1,8 +1,8 @@ import { POOLS_DICTIONNARY, POOLS_PEER } from "@/entities/ipam/constants"; +import { getDropdownOptions } from "@/entities/objects/api/dropdownOptions"; +import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; -import { getDropdownOptions } from "@/shared/api/graphql/queries/objects/dropdownOptions"; -import { generateRelationshipListQuery } from "@/shared/api/graphql/queries/objects/generateRelationshipListQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { PoolValue } from "@/shared/components/form/pool-selector"; import { diff --git a/frontend/app/src/shared/components/layout/layout.tsx b/frontend/app/src/shared/components/layout/layout.tsx index 3a359b7c29..f18284dcc9 100644 --- a/frontend/app/src/shared/components/layout/layout.tsx +++ b/frontend/app/src/shared/components/layout/layout.tsx @@ -1,9 +1,9 @@ import { QSP } from "@/config/qsp"; +import GET_BRANCHES from "@/entities/branches/api/getBranches"; import { findSelectedBranch } from "@/entities/branches/branches"; import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; import { SchemaContext, withSchemaContext } from "@/entities/schema/withSchemaContext"; import { Branch } from "@/shared/api/graphql/generated/graphql"; -import GET_BRANCHES from "@/shared/api/graphql/queries/branches/getBranches"; import Sidebar from "@/shared/components/layout/sidebar"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/shared/components/layout/tasks-status.tsx b/frontend/app/src/shared/components/layout/tasks-status.tsx index 1b1b780ef4..ac1349b9f7 100644 --- a/frontend/app/src/shared/components/layout/tasks-status.tsx +++ b/frontend/app/src/shared/components/layout/tasks-status.tsx @@ -2,7 +2,7 @@ import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { TASKS_STATUS } from "@/shared/api/graphql/queries/tasks/getTasksStatus"; +import { TASKS_STATUS } from "@/entities/tasks/api/getTasksStatus"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { Pulse } from "@/shared/components/ui/pulse"; diff --git a/frontend/app/src/shared/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx index 81ef0ddb30..910adbd99c 100644 --- a/frontend/app/src/shared/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { deleteObject } from "@/entities/objects/api/deleteObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; -import { deleteObject } from "@/shared/api/graphql/mutations/objects/deleteObject"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/shared/components/notifications.tsx b/frontend/app/src/shared/components/notifications.tsx deleted file mode 100644 index 94f220e3e1..0000000000 --- a/frontend/app/src/shared/components/notifications.tsx +++ /dev/null @@ -1,18 +0,0 @@ -import { subscription } from "@/shared/api/graphql/queries/notifications/subscription"; -import { useSubscription } from "@/shared/hooks/useQuery"; -import { gql } from "@apollo/client"; - -export const Notifications = (props: any) => { - const { query: queryFromProps } = props; - - const queryString = subscription({ query: queryFromProps }); - - const query = gql` - ${queryString} - `; - - // biome-ignore lint/correctness/noUnusedVariables: to have an example component using subscriptions - const { data } = useSubscription(query); - - return

OK
; -}; diff --git a/frontend/app/src/shared/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx index a1aa19b1b4..31fcaf40e9 100644 --- a/frontend/app/src/shared/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,8 +1,8 @@ import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; import { POOLS_PEER } from "@/entities/ipam/constants"; +import { SEARCH } from "@/entities/objects/api/search"; import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; import { getObjectDetailsUrl } from "@/entities/objects/objects"; -import { SEARCH } from "@/shared/api/graphql/queries/objects/search"; import { constructPath } from "@/shared/api/rest/fetch"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; diff --git a/frontend/app/src/shared/components/ui/id.tsx b/frontend/app/src/shared/components/ui/id.tsx index 5391ba2ee9..e6ed82c4a9 100644 --- a/frontend/app/src/shared/components/ui/id.tsx +++ b/frontend/app/src/shared/components/ui/id.tsx @@ -1,5 +1,5 @@ import { NODE_OBJECT } from "@/config/constants"; -import { getObjectDisplayLabel } from "@/shared/api/graphql/queries/objects/getObjectDisplayLabel"; +import { getObjectDisplayLabel } from "@/entities/objects/api/getObjectDisplayLabel"; import { Clipboard } from "@/shared/components/buttons/clipboard"; import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/shared/hooks/useObjectDetails.ts b/frontend/app/src/shared/hooks/useObjectDetails.ts index d214a9f705..8bbc5a6a11 100644 --- a/frontend/app/src/shared/hooks/useObjectDetails.ts +++ b/frontend/app/src/shared/hooks/useObjectDetails.ts @@ -1,4 +1,5 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; +import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; import { getSchemaObjectColumns, getTabs, @@ -6,7 +7,6 @@ import { import { getPermission } from "@/entities/permission/utils"; import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; -import { getObjectDetailsPaginated } from "@/shared/api/graphql/queries/objects/getObjectDetails"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/hooks/useObjectItems.ts b/frontend/app/src/shared/hooks/useObjectItems.ts index 129d8e90ff..1ba48051f2 100644 --- a/frontend/app/src/shared/hooks/useObjectItems.ts +++ b/frontend/app/src/shared/hooks/useObjectItems.ts @@ -1,4 +1,5 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; +import { getObjectItemsPaginated } from "@/entities/objects/api/getObjectItems"; import { getObjectAttributes, getObjectRelationships, @@ -10,8 +11,7 @@ import { profilesAtom, schemaState, } from "@/entities/schema/schema.atom"; -import { getTokens } from "@/shared/api/graphql/queries/accounts/getTokens"; -import { getObjectItemsPaginated } from "@/shared/api/graphql/queries/objects/getObjectItems"; +import { getTokens } from "@/entities/user-profile/api/getTokens"; import { Filter } from "@/shared/hooks/useFilters"; import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index 218b4e301b..6237e87581 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,5 +1,5 @@ +import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; -import { updateObjectWithId } from "@/shared/api/graphql/mutations/objects/updateObjectWithId"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { describe, expect, it } from "vitest"; import { From 82b5969086686633f80b7e6813f836226a74e2ce Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 18:19:20 +0100 Subject: [PATCH 08/25] lint + renamed in nodes + hooks --- frontend/app/src/app/app.tsx | 2 +- frontend/app/src/app/router.tsx | 4 ++-- frontend/app/src/config/constants.tsx | 2 +- .../artifact-details.tsx} | 22 +++++++++--------- .../entities/artifacts/{ => ui}/generate.tsx | 2 +- .../app/src/entities/authentication/login.tsx | 2 +- .../authentication}/useAuth.tsx | 0 .../branch-actions/branch-merge-button.tsx | 2 +- .../branch-actions/branch-rebase-button.tsx | 2 +- .../branch-actions/branch-validate-button.tsx | 2 +- .../src/entities/branches/branch-details.tsx | 4 ++-- .../src/entities/branches/branches-items.tsx | 2 +- .../src/entities/branches/task-display.tsx | 2 +- .../artifact-diff/artifact-content-diff.tsx | 8 +++---- .../diff/artifact-diff/artifact-repo-diff.tsx | 2 +- .../app/src/entities/diff/checks/check.tsx | 2 +- .../entities/diff/checks/checks-summary.tsx | 2 +- .../app/src/entities/diff/checks/checks.tsx | 2 +- .../app/src/entities/diff/checks/conflict.tsx | 4 ++-- .../diff/checks/validator-details.tsx | 2 +- frontend/app/src/entities/diff/diff-tree.tsx | 2 +- .../diff/file-diff/file-content-diff.tsx | 8 +++---- .../src/entities/diff/node-diff/comments.tsx | 8 +++---- .../src/entities/diff/node-diff/conflict.tsx | 2 +- .../app/src/entities/diff/node-diff/index.tsx | 4 ++-- .../src/entities/diff/node-diff/thread.tsx | 2 +- .../details/graphql-query-details-card.tsx | 4 ++-- .../src/entities/groups/add-group-form.tsx | 2 +- .../groups/add-group-trigger-button.tsx | 2 +- .../groups/groups-manager-trigger-button.tsx | 2 +- .../src/entities/groups/groups-manager.tsx | 2 +- .../entities/groups/object-groups-list.tsx | 6 ++--- .../entities/ipam/common/ip-details-card.tsx | 4 ++-- .../ipam/ip-addresses/ip-address-summary.tsx | 6 ++--- .../ip-addresses/ipam-ip-address-list.tsx | 6 ++--- .../entities/ipam/ip-namespace-selector.tsx | 2 +- .../app/src/entities/ipam/ipam-router.tsx | 2 +- .../src/entities/ipam/ipam-tree/ipam-tree.tsx | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 6 ++--- .../ipam-prefixes-summary-details.tsx | 6 ++--- .../prefixes/ipam-prefixes-summary-list.tsx | 6 ++--- .../{objects => nodes}/api/basicMutation.ts | 0 .../{objects => nodes}/api/createObject.ts | 0 .../{objects => nodes}/api/deleteObject.ts | 0 .../{objects => nodes}/api/dropdownOptions.ts | 0 .../api/generateRelationshipListQuery.ts | 0 .../api/getFormRequirements.ts | 0 .../api/getObjectDetails.ts | 0 .../api/getObjectDisplayLabel.ts | 0 .../{objects => nodes}/api/getObjectItems.ts | 0 .../api/getObjectRelationshipDetails.ts | 0 .../{objects => nodes}/api/getProfiles.ts | 0 .../api/getRelationshipParent.ts | 0 .../api/objectTreeQuery.tsx | 0 .../entities/{objects => nodes}/api/search.ts | 0 .../api/updateObjectWithId.ts | 0 .../edit-form-hook/dynamic-control-types.ts | 0 .../edit-form-hook/form.tsx | 0 .../getObjectItemDisplayValue.tsx | 2 +- .../{objects => nodes}/hierarchical-tree.tsx | 6 ++--- .../metaEditFieldDetails.atom.ts | 0 .../{objects => nodes}/object-header.tsx | 4 ++-- .../action-buttons/details-buttons.tsx | 4 ++-- .../action-buttons/index.tsx | 0 .../action-buttons/relationships-buttons.tsx | 4 ++-- .../object-attribute-row.tsx | 0 .../object-item-details-paginated.tsx | 12 +++++----- .../relationship-details-paginated.tsx | 16 ++++++------- .../relationships-details-paginated.tsx | 8 +++---- .../generateObjectEditFormQuery.ts | 0 .../object-item-edit-paginated.tsx | 10 ++++---- .../getMutationMetaDetailsFromFormData.ts | 0 .../object-item-meta-edit.tsx | 4 ++-- .../object-items/getSchemaObjectColumns.ts | 0 .../object-items/object-items-cell.tsx | 4 ++-- .../object-items/object-items-paginated.tsx | 8 +++---- .../entities/{objects => nodes}/objects.ts | 0 .../relationships/api/addRelationship.ts | 0 .../relationships/api/queries.ts | 2 +- .../relationships/api/removeRelationship.ts | 0 .../get-relationships.query.ts | 2 +- .../get-relationships.test.ts | 6 ++--- .../get-relationships/get-relationships.ts | 4 ++-- .../relationships/domain/types.ts | 0 ...lect-when-a-relationship-is-selected-1.png | Bin 0 -> 7173 bytes ...sage-when-no-relationships-are-found-1.png | Bin 0 -> 7173 bytes ...isplays-relationships-of-root-schema-1.png | Bin 0 -> 7173 bytes ...hild-relationships-and-selects-child-1.png | Bin 0 -> 7173 bytes ...tiple-levels-of-nested-relationships-1.png | Bin 0 -> 7173 bytes .../ui/add-relationship-action.tsx | 4 ++-- .../ui/relationship-combobox-list.tsx | 8 +++---- ...onship-hierarchical-combobox-list.test.tsx | 8 +++---- ...elationship-hierarchical-combobox-list.tsx | 6 ++--- .../ui/relationship-hierarchical-input.tsx | 8 +++---- .../{objects => nodes}/showMetaEdit.atom.ts | 0 .../src/entities/{objects => nodes}/types.ts | 0 .../nodes}/useObjectDetails.ts | 8 +++---- .../nodes}/useObjectItems.ts | 6 ++--- .../action-button/pc-approve-button.tsx | 4 ++-- .../action-button/pc-close-button.tsx | 2 +- .../action-button/pc-merge-button.tsx | 2 +- .../entities/proposed-changes/checks-tab.tsx | 2 +- .../proposed-changes/conversations.tsx | 8 +++---- .../src/entities/proposed-changes/counter.tsx | 2 +- .../entities/proposed-changes/create-form.tsx | 8 +++---- .../entities/proposed-changes/diff-filter.tsx | 2 +- .../proposed-changes/diff-summary.tsx | 2 +- .../form/proposed-change-edit-form.tsx | 4 ++-- .../src/entities/proposed-changes/items.tsx | 4 ++-- .../proposed-change-details.tsx | 2 +- .../proposed-change-edit-trigger.tsx | 4 ++-- .../repository/repository-action-menu.tsx | 2 +- .../entities/repository/repository-form.tsx | 4 ++-- .../resource-manager/number-pool-form.tsx | 6 ++--- .../resource-manager/resource-selector.tsx | 2 +- .../entities/role-manager/account-form.tsx | 8 +++---- .../role-manager/account-group-form.tsx | 8 +++---- .../role-manager/account-role-form.tsx | 6 ++--- .../src/entities/role-manager/accounts.tsx | 4 ++-- .../role-manager/global-permissions-form.tsx | 8 +++---- .../role-manager/global-permissions.tsx | 4 ++-- .../app/src/entities/role-manager/groups.tsx | 4 ++-- .../app/src/entities/role-manager/index.tsx | 2 +- .../role-manager/object-permissions-form.tsx | 8 +++---- .../role-manager/object-permissions.tsx | 4 ++-- .../app/src/entities/role-manager/roles.tsx | 4 ++-- .../src/entities/schema/schema-help-menu.tsx | 2 +- .../hooks => entities/schema}/useSchema.ts | 0 .../src/entities/tasks/task-item-details.tsx | 2 +- .../app/src/entities/tasks/task-items.tsx | 2 +- .../src/entities/user-profile/tab-profile.tsx | 4 ++-- .../src/entities/user-profile/tab-tokens.tsx | 2 +- .../user-profile/tab-update-password.tsx | 2 +- frontend/app/src/pages/auth-callback.tsx | 2 +- frontend/app/src/pages/login.tsx | 2 +- .../graphql-query-details.tsx | 6 ++--- frontend/app/src/pages/objects/layout.tsx | 4 ++-- .../app/src/pages/objects/object-details.tsx | 8 +++---- .../app/src/pages/objects/object-items.tsx | 2 +- frontend/app/src/pages/profile.tsx | 2 +- .../src/pages/proposed-changes/details.tsx | 6 ++--- .../app/src/pages/proposed-changes/new.tsx | 2 +- .../app/src/pages/resource-manager/index.tsx | 4 ++-- .../resource-allocation-details.tsx | 4 ++-- .../resource-pool-details.tsx | 6 ++--- .../app/src/pages/role-management/index.tsx | 2 +- frontend/app/src/pages/tasks/task-details.tsx | 2 +- .../api/graphql/graphqlClientApollo.tsx | 2 +- .../shared/{hooks => api/graphql}/useQuery.ts | 2 +- frontend/app/src/shared/api/rest/client.ts | 2 +- .../src/shared/api/rest/types.generated.ts | 20 ++++++++-------- .../src/shared/components/account-menu.tsx | 2 +- .../src/shared/components/branch-selector.tsx | 2 +- .../components/conversations/add-comment.tsx | 2 +- .../components/conversations/thread.tsx | 8 +++---- .../components/display/properties-popover.tsx | 4 ++-- .../filters/utils/getObjectFromFilters.ts | 2 +- .../components/form/branch-create-form.tsx | 2 +- .../shared/components/form/fields/common.tsx | 2 +- .../relationship-hierarchical.field.tsx | 4 ++-- .../form/fields/relationship-many.field.tsx | 2 +- .../form/fields/relationship.field.tsx | 6 ++--- .../components/form/generic-selector.tsx | 4 ++-- .../src/shared/components/form/node-form.tsx | 10 ++++---- .../form/object-edit-slide-over-trigger.tsx | 2 +- .../shared/components/form/object-form.tsx | 4 ++-- .../components/form/profiles-selector.tsx | 6 ++--- .../app/src/shared/components/form/type.ts | 4 ++-- .../form/utils/getFieldDefaultValue.ts | 2 +- .../form/utils/getFormFieldsFromSchema.ts | 6 ++--- .../form/utils/getRelationshipDefaultValue.ts | 2 +- .../form/utils/getRelationshipParent.ts | 2 +- .../form/utils/getRelationshipsForForm.ts | 2 +- .../components/form/utils/isFieldDisabled.ts | 2 +- .../getCreateMutationFromFormData.ts | 2 +- .../src/shared/components/inputs/dropdown.tsx | 2 +- .../app/src/shared/components/inputs/enum.tsx | 2 +- .../components/inputs/relationship-many.tsx | 8 +++---- .../components/inputs/relationship-one.tsx | 12 +++++----- .../items/breadcrumb-object-selector.tsx | 6 ++--- .../items/breadcrumb-schema-selector.tsx | 4 ++-- .../shared/components/layout/tasks-status.tsx | 2 +- .../components/modals/modal-delete-object.tsx | 2 +- .../shared/components/search/search-nodes.tsx | 12 +++++----- frontend/app/src/shared/components/ui/id.tsx | 4 ++-- .../app/tests/e2e/form/select-2-steps.spec.ts | 2 +- frontend/app/tests/e2e/groups/groups.spec.ts | 2 +- .../core-graphql-query.spec.ts | 4 ++-- .../e2e/objects/artifact-definition.spec.ts | 2 +- .../app/tests/e2e/objects/artifact.spec.ts | 2 +- .../tests/e2e/objects/object-details.spec.ts | 2 +- .../tests/e2e/objects/object-filters.spec.ts | 10 ++++---- .../app/tests/e2e/objects/object-list.spec.ts | 6 ++--- .../e2e/objects/object-relationships.spec.ts | 4 ++-- .../objects/profiles/multi-profiles.spec.ts | 2 +- .../e2e/objects/profiles/profiles.spec.ts | 8 +++---- frontend/app/tests/e2e/search.spec.ts | 2 +- frontend/app/tests/fake/schema.ts | 2 +- .../tests/integrations/screens/account.cy.tsx | 2 +- .../integrations/screens/artifact-diff.cy.tsx | 2 +- .../object-details-relationships.cy.tsx | 4 ++-- .../screens/object-details.cy.tsx | 4 ++-- .../integrations/screens/object-fields.cy.tsx | 6 ++--- .../screens/object-items-deletion.cy.tsx | 8 +++---- .../integrations/screens/object-items.cy.tsx | 6 ++--- .../form/utils/getFieldDefaultValue.test.ts | 2 +- .../utils/getFormFieldsFromSchema.test.ts | 4 ++-- .../utils/getRelationshipDefaultValue.test.ts | 2 +- ...getMutationMetaDetailsFromFormData.test.ts | 4 ++-- .../unit/utils/getSchemaObjectColumns.test.ts | 2 +- .../utils/getStringJSONWithoutQuotes.test.ts | 2 +- 211 files changed, 372 insertions(+), 372 deletions(-) rename frontend/app/src/entities/artifacts/{object-item-details-paginated.tsx => ui/artifact-details.tsx} (93%) rename frontend/app/src/entities/artifacts/{ => ui}/generate.tsx (97%) rename frontend/app/src/{shared/hooks => entities/authentication}/useAuth.tsx (100%) rename frontend/app/src/entities/{objects => nodes}/api/basicMutation.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/createObject.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/deleteObject.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/dropdownOptions.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/generateRelationshipListQuery.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getFormRequirements.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getObjectDetails.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getObjectDisplayLabel.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getObjectItems.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getObjectRelationshipDetails.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getProfiles.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/getRelationshipParent.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/objectTreeQuery.tsx (100%) rename frontend/app/src/entities/{objects => nodes}/api/search.ts (100%) rename frontend/app/src/entities/{objects => nodes}/api/updateObjectWithId.ts (100%) rename frontend/app/src/entities/{objects => nodes}/edit-form-hook/dynamic-control-types.ts (100%) rename frontend/app/src/entities/{objects => nodes}/edit-form-hook/form.tsx (100%) rename frontend/app/src/entities/{objects => nodes}/getObjectItemDisplayValue.tsx (98%) rename frontend/app/src/entities/{objects => nodes}/hierarchical-tree.tsx (97%) rename frontend/app/src/entities/{objects => nodes}/metaEditFieldDetails.atom.ts (100%) rename frontend/app/src/entities/{objects => nodes}/object-header.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/action-buttons/details-buttons.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/action-buttons/index.tsx (100%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/action-buttons/relationships-buttons.tsx (96%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/object-attribute-row.tsx (100%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/object-item-details-paginated.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/relationship-details-paginated.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-item-details/relationships-details-paginated.tsx (93%) rename frontend/app/src/entities/{objects => nodes}/object-item-edit/generateObjectEditFormQuery.ts (100%) rename frontend/app/src/entities/{objects => nodes}/object-item-edit/object-item-edit-paginated.tsx (90%) rename frontend/app/src/entities/{objects => nodes}/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts (100%) rename frontend/app/src/entities/{objects => nodes}/object-item-meta-edit/object-item-meta-edit.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-items/getSchemaObjectColumns.ts (100%) rename frontend/app/src/entities/{objects => nodes}/object-items/object-items-cell.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/object-items/object-items-paginated.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/objects.ts (100%) rename frontend/app/src/entities/{objects => nodes}/relationships/api/addRelationship.ts (100%) rename frontend/app/src/entities/{objects => nodes}/relationships/api/queries.ts (87%) rename frontend/app/src/entities/{objects => nodes}/relationships/api/removeRelationship.ts (100%) rename frontend/app/src/entities/{objects => nodes}/relationships/domain/get-relationships/get-relationships.query.ts (92%) rename frontend/app/src/entities/{objects => nodes}/relationships/domain/get-relationships/get-relationships.test.ts (91%) rename frontend/app/src/entities/{objects => nodes}/relationships/domain/get-relationships/get-relationships.ts (88%) rename frontend/app/src/entities/{objects => nodes}/relationships/domain/types.ts (100%) create mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png create mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png create mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png create mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png create mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png rename frontend/app/src/entities/{objects => nodes}/relationships/ui/add-relationship-action.tsx (93%) rename frontend/app/src/entities/{objects => nodes}/relationships/ui/relationship-combobox-list.tsx (87%) rename frontend/app/src/entities/{objects => nodes}/relationships/ui/relationship-hierarchical-combobox-list.test.tsx (94%) rename frontend/app/src/entities/{objects => nodes}/relationships/ui/relationship-hierarchical-combobox-list.tsx (95%) rename frontend/app/src/entities/{objects => nodes}/relationships/ui/relationship-hierarchical-input.tsx (94%) rename frontend/app/src/entities/{objects => nodes}/showMetaEdit.atom.ts (100%) rename frontend/app/src/entities/{objects => nodes}/types.ts (100%) rename frontend/app/src/{shared/hooks => entities/nodes}/useObjectDetails.ts (87%) rename frontend/app/src/{shared/hooks => entities/nodes}/useObjectItems.ts (93%) rename frontend/app/src/{shared/hooks => entities/schema}/useSchema.ts (100%) rename frontend/app/src/shared/{hooks => api/graphql}/useQuery.ts (97%) diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index 75f9e5e1c0..17df4c2536 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -4,9 +4,9 @@ import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; +import { AuthProvider } from "@/entities/authentication/useAuth"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import ErrorFallback from "@/shared/components/errors/error-fallback"; -import { AuthProvider } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; import { ApolloProvider } from "@apollo/client"; import { addCollection } from "@iconify-icon/react"; diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index c4eac2457f..a64a69df13 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,10 +1,10 @@ import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { RequireAuth } from "@/entities/authentication/useAuth"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; import { constructPath } from "@/shared/api/rest/fetch"; -import { RequireAuth } from "@/shared/hooks/useAuth"; import queryString from "query-string"; import { Navigate, Outlet, UIMatch, createBrowserRouter } from "react-router-dom"; import { QueryParamProvider } from "use-query-params"; @@ -74,7 +74,7 @@ export const router = createBrowserRouter([ ], }, { - path: "/objects", + path: "/nodes", lazy: () => import("@/pages/objects/layout"), children: [ { diff --git a/frontend/app/src/config/constants.tsx b/frontend/app/src/config/constants.tsx index 5cda3d3c64..8486f5defb 100644 --- a/frontend/app/src/config/constants.tsx +++ b/frontend/app/src/config/constants.tsx @@ -1,4 +1,4 @@ -import { RelationshipKind } from "@/entities/objects/types"; +import { RelationshipKind } from "@/entities/nodes/types"; export const DEFAULT_BRANCH_NAME = "main"; diff --git a/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx similarity index 93% rename from frontend/app/src/entities/artifacts/object-item-details-paginated.tsx rename to frontend/app/src/entities/artifacts/ui/artifact-details.tsx index 5ee3a413d4..2aa031da94 100644 --- a/frontend/app/src/entities/artifacts/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx @@ -1,24 +1,25 @@ import { CONFIG } from "@/config/config"; import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { Generate } from "@/entities/artifacts/generate"; +import { Generate } from "@/entities/artifacts/ui/generate"; import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; -import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; -import { getObjectItemDisplayValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; -import RelationshipDetails from "@/entities/objects/object-item-details/relationship-details-paginated"; -import { RelationshipsDetails } from "@/entities/objects/object-item-details/relationships-details-paginated"; -import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; +import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; +import { getObjectItemDisplayValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; +import RelationshipDetails from "@/entities/nodes/object-item-details/relationship-details-paginated"; +import { RelationshipsDetails } from "@/entities/nodes/object-item-details/relationships-details-paginated"; +import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, getTabs, -} from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +} from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; @@ -28,7 +29,6 @@ import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import { File } from "@/shared/components/file"; import LoadingScreen from "@/shared/components/loading-screen"; import { Tabs } from "@/shared/components/tabs"; -import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; @@ -97,7 +97,7 @@ export default function ArtifactsDetails({ artifactId }: { artifactId: string }) if (!data || (data && !data[schemaData.kind]?.edges?.length)) { // Redirect to the main list if there is no item for this is - // navigate(`/objects/${objectname}`); + // navigate(`/nodes/${objectname}`); return ; } diff --git a/frontend/app/src/entities/artifacts/generate.tsx b/frontend/app/src/entities/artifacts/ui/generate.tsx similarity index 97% rename from frontend/app/src/entities/artifacts/generate.tsx rename to frontend/app/src/entities/artifacts/ui/generate.tsx index ba4dca47a8..ab1d0ff844 100644 --- a/frontend/app/src/entities/artifacts/generate.tsx +++ b/frontend/app/src/entities/artifacts/ui/generate.tsx @@ -1,9 +1,9 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; +import { useAuth } from "@/entities/authentication/useAuth"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { classNames } from "@/shared/utils/common"; import { ArrowPathIcon } from "@heroicons/react/24/outline"; import { useState } from "react"; diff --git a/frontend/app/src/entities/authentication/login.tsx b/frontend/app/src/entities/authentication/login.tsx index 4a94e4d325..542a2857e2 100644 --- a/frontend/app/src/entities/authentication/login.tsx +++ b/frontend/app/src/entities/authentication/login.tsx @@ -1,11 +1,11 @@ import { configState } from "@/config/config.atom"; import { LoginWithSSOButtons } from "@/entities/authentication/login-sso-buttons"; +import { useAuth } from "@/entities/authentication/useAuth"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useAuth } from "@/shared/hooks/useAuth"; import { classNames } from "@/shared/utils/common"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/shared/hooks/useAuth.tsx b/frontend/app/src/entities/authentication/useAuth.tsx similarity index 100% rename from frontend/app/src/shared/hooks/useAuth.tsx rename to frontend/app/src/entities/authentication/useAuth.tsx diff --git a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx index 7df02e9104..df39457b1a 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx @@ -1,11 +1,11 @@ import { TASK_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { BRANCH_MERGE } from "@/entities/branches/api/mergeBranch"; import { BRANCH_MERGE_WORKFLOW } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx index 3a4c1be519..3c03cde432 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx @@ -1,11 +1,11 @@ import { TASK_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx index 58d007b1dc..1c19f31dea 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx @@ -1,11 +1,11 @@ import { TASK_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { BRANCH_VALIDATE } from "@/entities/branches/api/validateBranch"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/branches/branch-details.tsx b/frontend/app/src/entities/branches/branch-details.tsx index 4d6c024f8c..30e08e4218 100644 --- a/frontend/app/src/entities/branches/branch-details.tsx +++ b/frontend/app/src/entities/branches/branch-details.tsx @@ -1,8 +1,10 @@ import { QSP } from "@/config/qsp"; +import { useAuth } from "@/entities/authentication/useAuth"; import { BRANCH_DELETE } from "@/entities/branches/api/deleteBranch"; import { getBranchDetailsQuery } from "@/entities/branches/api/getBranchDetails"; import { branchesState } from "@/entities/branches/branches.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import Accordion from "@/shared/components/display/accordion"; @@ -14,8 +16,6 @@ import LoadingScreen from "@/shared/components/loading-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { List } from "@/shared/components/table/list"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { PlusIcon, TrashIcon } from "@heroicons/react/24/outline"; diff --git a/frontend/app/src/entities/branches/branches-items.tsx b/frontend/app/src/entities/branches/branches-items.tsx index 10e24abc96..6f9e11337f 100644 --- a/frontend/app/src/entities/branches/branches-items.tsx +++ b/frontend/app/src/entities/branches/branches-items.tsx @@ -1,10 +1,10 @@ import GET_BRANCHES from "@/entities/branches/api/getBranches"; import { branchesState } from "@/entities/branches/branches.atom"; +import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; import Content from "@/shared/components/layout/content"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { useLazyQuery } from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; diff --git a/frontend/app/src/entities/branches/task-display.tsx b/frontend/app/src/entities/branches/task-display.tsx index f11af36b24..2c23ee9b87 100644 --- a/frontend/app/src/entities/branches/task-display.tsx +++ b/frontend/app/src/entities/branches/task-display.tsx @@ -1,10 +1,10 @@ import { TASK_OBJECT } from "@/config/constants"; import { TASK_DETAILS } from "@/entities/tasks/api/getTasksItemDetails"; +import useQuery from "@/shared/api/graphql/useQuery"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; -import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import LoadingScreen from "../../shared/components/loading-screen"; import { getSeverityBadge, tLog } from "../tasks/logs"; diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx index 178e6a885f..39d4718166 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx @@ -4,12 +4,14 @@ import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesArtifactsThreads } from "@/entities/proposed-changes/api/getProposedChangesArtifactsThreads"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { fetchStream } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; @@ -17,8 +19,6 @@ import { Thread } from "@/shared/components/conversations/thread"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx index ce0b3e74c6..b9e957ffb0 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,11 +1,11 @@ import { getArtifactDetails } from "@/entities/artifacts/api/getArtifacts"; import { schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import "react-diff-view/style/index.css"; diff --git a/frontend/app/src/entities/diff/checks/check.tsx b/frontend/app/src/entities/diff/checks/check.tsx index 44042d0e65..6326551d26 100644 --- a/frontend/app/src/entities/diff/checks/check.tsx +++ b/frontend/app/src/entities/diff/checks/check.tsx @@ -1,5 +1,6 @@ import { GET_CHECKS } from "@/entities/diff/api/getCheckDetails"; import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { MoreButton } from "@/shared/components/buttons/more-button"; import Accordion from "@/shared/components/display/accordion"; import { DateDisplay } from "@/shared/components/display/date-display"; @@ -9,7 +10,6 @@ import ErrorScreen from "@/shared/components/errors/error-screen"; import { Skeleton } from "@/shared/components/skeleton"; import { List } from "@/shared/components/table/list"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/diff/checks/checks-summary.tsx b/frontend/app/src/entities/diff/checks/checks-summary.tsx index 55fed77428..3ee424e1f4 100644 --- a/frontend/app/src/entities/diff/checks/checks-summary.tsx +++ b/frontend/app/src/entities/diff/checks/checks-summary.tsx @@ -3,6 +3,7 @@ import { PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { runCheck } from "@/entities/diff/api/runCheck"; import { getValidatorsStats } from "@/entities/proposed-changes/checks"; import { genericsState } from "@/entities/schema/schema.atom"; @@ -13,7 +14,6 @@ import { Retry } from "@/shared/components/buttons/retry"; import { PieChart } from "@/shared/components/display/pie-chart"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/diff/checks/checks.tsx b/frontend/app/src/entities/diff/checks/checks.tsx index adbf53413d..dbfedbe893 100644 --- a/frontend/app/src/entities/diff/checks/checks.tsx +++ b/frontend/app/src/entities/diff/checks/checks.tsx @@ -1,6 +1,6 @@ import { GET_VALIDATORS } from "@/entities/diff/api/getValidators"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { forwardRef, useImperativeHandle } from "react"; import { useParams } from "react-router-dom"; import { ChecksSummary } from "./checks-summary"; diff --git a/frontend/app/src/entities/diff/checks/conflict.tsx b/frontend/app/src/entities/diff/checks/conflict.tsx index 73bb7dd27c..9d64956a80 100644 --- a/frontend/app/src/entities/diff/checks/conflict.tsx +++ b/frontend/app/src/entities/diff/checks/conflict.tsx @@ -2,8 +2,8 @@ import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { diffContent, getBadgeType } from "@/entities/diff/diff"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ToggleButtons } from "@/shared/components/buttons/toggle-buttons"; diff --git a/frontend/app/src/entities/diff/checks/validator-details.tsx b/frontend/app/src/entities/diff/checks/validator-details.tsx index 3f58e16e38..d417eb52ef 100644 --- a/frontend/app/src/entities/diff/checks/validator-details.tsx +++ b/frontend/app/src/entities/diff/checks/validator-details.tsx @@ -1,10 +1,10 @@ import { getValidatorDetails } from "@/entities/diff/api/getValidatorDetails"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; import { Pagination } from "@/shared/components/ui/pagination"; import usePagination from "@/shared/hooks/usePagination"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Check } from "./check"; diff --git a/frontend/app/src/entities/diff/diff-tree.tsx b/frontend/app/src/entities/diff/diff-tree.tsx index b76c5cc002..2601b0801d 100644 --- a/frontend/app/src/entities/diff/diff-tree.tsx +++ b/frontend/app/src/entities/diff/diff-tree.tsx @@ -2,9 +2,9 @@ import { DiffNode } from "@/entities/diff/node-diff/types"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { TREE_ROOT_ID } from "@/entities/ipam/constants"; import { EMPTY_TREE, addItemsToTree } from "@/entities/ipam/ipam-tree/utils"; +import { useSchema } from "@/entities/schema/useSchema"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; -import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { useEffect, useState } from "react"; import { useLocation, useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx index 6baf0e49f5..dfa3a7ec73 100644 --- a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx @@ -4,12 +4,14 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesFilesThreads } from "@/entities/proposed-changes/api/getProposedChangesFilesThreads"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { fetchStream } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button"; import { AddComment } from "@/shared/components/conversations/add-comment"; @@ -18,8 +20,6 @@ import Accordion from "@/shared/components/display/accordion"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/diff/node-diff/comments.tsx b/frontend/app/src/entities/diff/node-diff/comments.tsx index 19755f6f07..049e0cbae6 100644 --- a/frontend/app/src/entities/diff/node-diff/comments.tsx +++ b/frontend/app/src/entities/diff/node-diff/comments.tsx @@ -2,17 +2,17 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { getThreadLabel } from "@/entities/diff/diff"; -import { createObject } from "@/entities/objects/api/createObject"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesObjectThreadComments } from "@/entities/proposed-changes/api/getProposedChangesObjectThreadComments"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/diff/node-diff/conflict.tsx b/frontend/app/src/entities/diff/node-diff/conflict.tsx index 5dcbefbadd..f863d7a6f2 100644 --- a/frontend/app/src/entities/diff/node-diff/conflict.tsx +++ b/frontend/app/src/entities/diff/node-diff/conflict.tsx @@ -1,3 +1,4 @@ +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { resolveConflict } from "@/entities/diff/api/resolveConflict"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; @@ -6,7 +7,6 @@ import { Checkbox } from "@/shared/components/inputs/checkbox"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Badge } from "@/shared/components/ui/badge"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/diff/node-diff/index.tsx b/frontend/app/src/entities/diff/node-diff/index.tsx index ac69791080..7d4a18f6fe 100644 --- a/frontend/app/src/entities/diff/node-diff/index.tsx +++ b/frontend/app/src/entities/diff/node-diff/index.tsx @@ -1,5 +1,6 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { useAuth } from "@/entities/authentication/useAuth"; import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; import { DIFF_UPDATE } from "@/entities/diff/api/diff-update"; import DiffTree from "@/entities/diff/diff-tree"; @@ -9,6 +10,7 @@ import { getProposedChangesDiffTree } from "@/entities/proposed-changes/api/getP import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { DateDisplay } from "@/shared/components/display/date-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; @@ -16,8 +18,6 @@ import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Badge } from "@/shared/components/ui/badge"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { formatFullDate, formatRelativeTimeFromNow } from "@/shared/utils/date"; diff --git a/frontend/app/src/entities/diff/node-diff/thread.tsx b/frontend/app/src/entities/diff/node-diff/thread.tsx index d591af9257..f4a2538203 100644 --- a/frontend/app/src/entities/diff/node-diff/thread.tsx +++ b/frontend/app/src/entities/diff/node-diff/thread.tsx @@ -2,10 +2,10 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { getThreadLabel, getThreadTitle } from "@/entities/diff/diff"; import { getProposedChangesObjectThreads } from "@/entities/proposed-changes/api/getProposedChangesObjectThreads"; import { schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { SidePanelTitle } from "@/shared/components/display/sidepanel-title"; import SlideOver from "@/shared/components/display/slide-over"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import { useContext, useState } from "react"; diff --git a/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx index 4b2ceff7da..3cf21f5099 100644 --- a/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx @@ -1,6 +1,6 @@ import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; -import { AttributeType, ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { AttributeType, ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { Permission } from "@/entities/permission/types"; import { iNodeSchema } from "@/entities/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; diff --git a/frontend/app/src/entities/groups/add-group-form.tsx b/frontend/app/src/entities/groups/add-group-form.tsx index 03ab007e92..a503e7b674 100644 --- a/frontend/app/src/entities/groups/add-group-form.tsx +++ b/frontend/app/src/entities/groups/add-group-form.tsx @@ -1,5 +1,6 @@ import { updateGroupsQuery } from "@/entities/groups/api/updateGroupsQuery"; import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { @@ -7,7 +8,6 @@ import { RelationshipManyValueFromUser, } from "@/shared/components/form/type"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useMutation } from "@/shared/hooks/useQuery"; import { pluralize } from "@/shared/utils/string"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/entities/groups/add-group-trigger-button.tsx b/frontend/app/src/entities/groups/add-group-trigger-button.tsx index 0ebea6a4b7..b903e055c9 100644 --- a/frontend/app/src/entities/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/entities/groups/add-group-trigger-button.tsx @@ -1,10 +1,10 @@ import AddGroupForm from "@/entities/groups/add-group-form"; import { GroupDataFromAPI } from "@/entities/groups/types"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import { iNodeSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; import { Permission } from "../permission/types"; diff --git a/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx b/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx index 113537fcfb..f8c14c7e08 100644 --- a/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx +++ b/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx @@ -1,7 +1,7 @@ import { GroupsManager, GroupsManagerProps } from "@/entities/groups/groups-manager"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/entities/groups/groups-manager.tsx b/frontend/app/src/entities/groups/groups-manager.tsx index 30c1e3c477..54dd0dea44 100644 --- a/frontend/app/src/entities/groups/groups-manager.tsx +++ b/frontend/app/src/entities/groups/groups-manager.tsx @@ -4,12 +4,12 @@ import ObjectGroupsList from "@/entities/groups/object-groups-list"; import { GroupDataFromAPI } from "@/entities/groups/types"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; import { SearchInput } from "@/shared/components/ui/search-input"; -import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/groups/object-groups-list.tsx b/frontend/app/src/entities/groups/object-groups-list.tsx index 7f5b786188..72512656a8 100644 --- a/frontend/app/src/entities/groups/object-groups-list.tsx +++ b/frontend/app/src/entities/groups/object-groups-list.tsx @@ -1,15 +1,15 @@ import { QSP } from "@/config/qsp"; import { GroupDataFromAPI } from "@/entities/groups/types"; -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; -import { REMOVE_RELATIONSHIP } from "@/entities/objects/relationships/api/removeRelationship"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { REMOVE_RELATIONSHIP } from "@/entities/nodes/relationships/api/removeRelationship"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import ItemGroup from "@/shared/components/layouts/item-group"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { Badge } from "@/shared/components/ui/badge"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { useMutation } from "@/shared/hooks/useQuery"; import { pluralize } from "@/shared/utils/string"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/ipam/common/ip-details-card.tsx b/frontend/app/src/entities/ipam/common/ip-details-card.tsx index c0399d44ec..be92edd7ae 100644 --- a/frontend/app/src/entities/ipam/common/ip-details-card.tsx +++ b/frontend/app/src/entities/ipam/common/ip-details-card.tsx @@ -1,6 +1,6 @@ import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; -import { AttributeType, ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { AttributeType, ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; import { Permission } from "@/entities/permission/types"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx index cbf0aa73bb..4455e66939 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx @@ -3,15 +3,15 @@ import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC } from "@/entities/ipam/constants"; import { IpamSummarySkeleton } from "@/entities/ipam/prefixes/ipam-summary-skeleton"; -import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { Link } from "@/shared/components/ui/link"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx index 1c8c45966f..4877b43bb4 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -11,10 +11,11 @@ import { IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC, } from "@/entities/ipam/constants"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; @@ -23,7 +24,6 @@ import { Table } from "@/shared/components/table/table"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link } from "@/shared/components/ui/link"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx index 91b849ba20..65eb87d721 100644 --- a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx @@ -1,6 +1,7 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { GET_IP_NAMESPACES } from "@/entities/ipam/api/ip-namespaces"; import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Skeleton } from "@/shared/components/skeleton"; import { Combobox, @@ -9,7 +10,6 @@ import { ComboboxList, ComboboxTrigger, } from "@/shared/components/ui/combobox"; -import useQuery from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useId } from "react"; diff --git a/frontend/app/src/entities/ipam/ipam-router.tsx b/frontend/app/src/entities/ipam/ipam-router.tsx index 2a6b35ba56..6dba31d2ee 100644 --- a/frontend/app/src/entities/ipam/ipam-router.tsx +++ b/frontend/app/src/entities/ipam/ipam-router.tsx @@ -2,6 +2,7 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-with-tooltip"; import SlideOver from "@/shared/components/display/slide-over"; @@ -9,7 +10,6 @@ import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ObjectForm from "@/shared/components/form/object-form"; import { Tabs } from "@/shared/components/tabs"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue, useSetAtom } from "jotai"; diff --git a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx index 84879dada1..f3b93b8998 100644 --- a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx @@ -1,5 +1,5 @@ +import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { Tree, TreeItemProps } from "@/shared/components/ui/tree"; -import { useLazyQuery } from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { useAtom, useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx index 22346e7144..ef975db81d 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx @@ -5,10 +5,11 @@ import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { ColorDisplay } from "@/shared/components/display/color-display"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; @@ -19,7 +20,6 @@ import { Table } from "@/shared/components/table/table"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link } from "@/shared/components/ui/link"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx index 262166ecbb..107262d986 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -2,14 +2,14 @@ import { GET_PREFIX_KIND } from "@/entities/ipam/api/prefixes"; import { IpDetailsCard } from "@/entities/ipam/common/ip-details-card"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; -import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link } from "@/shared/components/ui/link"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx index 54aa7eb356..712f96f7ca 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -5,10 +5,11 @@ import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { reloadIpamTreeAtom } from "@/entities/ipam/ipam-tree/ipam-tree.state"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import SlideOver from "@/shared/components/display/slide-over"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; @@ -17,7 +18,6 @@ import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; import { Table } from "@/shared/components/table/table"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/objects/api/basicMutation.ts b/frontend/app/src/entities/nodes/api/basicMutation.ts similarity index 100% rename from frontend/app/src/entities/objects/api/basicMutation.ts rename to frontend/app/src/entities/nodes/api/basicMutation.ts diff --git a/frontend/app/src/entities/objects/api/createObject.ts b/frontend/app/src/entities/nodes/api/createObject.ts similarity index 100% rename from frontend/app/src/entities/objects/api/createObject.ts rename to frontend/app/src/entities/nodes/api/createObject.ts diff --git a/frontend/app/src/entities/objects/api/deleteObject.ts b/frontend/app/src/entities/nodes/api/deleteObject.ts similarity index 100% rename from frontend/app/src/entities/objects/api/deleteObject.ts rename to frontend/app/src/entities/nodes/api/deleteObject.ts diff --git a/frontend/app/src/entities/objects/api/dropdownOptions.ts b/frontend/app/src/entities/nodes/api/dropdownOptions.ts similarity index 100% rename from frontend/app/src/entities/objects/api/dropdownOptions.ts rename to frontend/app/src/entities/nodes/api/dropdownOptions.ts diff --git a/frontend/app/src/entities/objects/api/generateRelationshipListQuery.ts b/frontend/app/src/entities/nodes/api/generateRelationshipListQuery.ts similarity index 100% rename from frontend/app/src/entities/objects/api/generateRelationshipListQuery.ts rename to frontend/app/src/entities/nodes/api/generateRelationshipListQuery.ts diff --git a/frontend/app/src/entities/objects/api/getFormRequirements.ts b/frontend/app/src/entities/nodes/api/getFormRequirements.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getFormRequirements.ts rename to frontend/app/src/entities/nodes/api/getFormRequirements.ts diff --git a/frontend/app/src/entities/objects/api/getObjectDetails.ts b/frontend/app/src/entities/nodes/api/getObjectDetails.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getObjectDetails.ts rename to frontend/app/src/entities/nodes/api/getObjectDetails.ts diff --git a/frontend/app/src/entities/objects/api/getObjectDisplayLabel.ts b/frontend/app/src/entities/nodes/api/getObjectDisplayLabel.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getObjectDisplayLabel.ts rename to frontend/app/src/entities/nodes/api/getObjectDisplayLabel.ts diff --git a/frontend/app/src/entities/objects/api/getObjectItems.ts b/frontend/app/src/entities/nodes/api/getObjectItems.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getObjectItems.ts rename to frontend/app/src/entities/nodes/api/getObjectItems.ts diff --git a/frontend/app/src/entities/objects/api/getObjectRelationshipDetails.ts b/frontend/app/src/entities/nodes/api/getObjectRelationshipDetails.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getObjectRelationshipDetails.ts rename to frontend/app/src/entities/nodes/api/getObjectRelationshipDetails.ts diff --git a/frontend/app/src/entities/objects/api/getProfiles.ts b/frontend/app/src/entities/nodes/api/getProfiles.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getProfiles.ts rename to frontend/app/src/entities/nodes/api/getProfiles.ts diff --git a/frontend/app/src/entities/objects/api/getRelationshipParent.ts b/frontend/app/src/entities/nodes/api/getRelationshipParent.ts similarity index 100% rename from frontend/app/src/entities/objects/api/getRelationshipParent.ts rename to frontend/app/src/entities/nodes/api/getRelationshipParent.ts diff --git a/frontend/app/src/entities/objects/api/objectTreeQuery.tsx b/frontend/app/src/entities/nodes/api/objectTreeQuery.tsx similarity index 100% rename from frontend/app/src/entities/objects/api/objectTreeQuery.tsx rename to frontend/app/src/entities/nodes/api/objectTreeQuery.tsx diff --git a/frontend/app/src/entities/objects/api/search.ts b/frontend/app/src/entities/nodes/api/search.ts similarity index 100% rename from frontend/app/src/entities/objects/api/search.ts rename to frontend/app/src/entities/nodes/api/search.ts diff --git a/frontend/app/src/entities/objects/api/updateObjectWithId.ts b/frontend/app/src/entities/nodes/api/updateObjectWithId.ts similarity index 100% rename from frontend/app/src/entities/objects/api/updateObjectWithId.ts rename to frontend/app/src/entities/nodes/api/updateObjectWithId.ts diff --git a/frontend/app/src/entities/objects/edit-form-hook/dynamic-control-types.ts b/frontend/app/src/entities/nodes/edit-form-hook/dynamic-control-types.ts similarity index 100% rename from frontend/app/src/entities/objects/edit-form-hook/dynamic-control-types.ts rename to frontend/app/src/entities/nodes/edit-form-hook/dynamic-control-types.ts diff --git a/frontend/app/src/entities/objects/edit-form-hook/form.tsx b/frontend/app/src/entities/nodes/edit-form-hook/form.tsx similarity index 100% rename from frontend/app/src/entities/objects/edit-form-hook/form.tsx rename to frontend/app/src/entities/nodes/edit-form-hook/form.tsx diff --git a/frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx b/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx similarity index 98% rename from frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx rename to frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx index 0833315ca6..39ba3afe6c 100644 --- a/frontend/app/src/entities/objects/getObjectItemDisplayValue.tsx +++ b/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx @@ -1,5 +1,5 @@ import { MAX_VALUE_LENGTH_DISPLAY, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; +import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; import { iSchemaKindNameMap } from "@/entities/schema/schemaKindName.atom"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { diff --git a/frontend/app/src/entities/objects/hierarchical-tree.tsx b/frontend/app/src/entities/nodes/hierarchical-tree.tsx similarity index 97% rename from frontend/app/src/entities/objects/hierarchical-tree.tsx rename to frontend/app/src/entities/nodes/hierarchical-tree.tsx index c88b037a9a..cde49e5951 100644 --- a/frontend/app/src/entities/objects/hierarchical-tree.tsx +++ b/frontend/app/src/entities/nodes/hierarchical-tree.tsx @@ -6,13 +6,13 @@ import { objectAncestorsQuery, objectChildrenQuery, objectTopLevelTreeQuery, -} from "@/entities/objects/api/objectTreeQuery"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +} from "@/entities/nodes/api/objectTreeQuery"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import useFilters from "@/shared/hooks/useFilters"; -import { useLazyQuery } from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/objects/metaEditFieldDetails.atom.ts b/frontend/app/src/entities/nodes/metaEditFieldDetails.atom.ts similarity index 100% rename from frontend/app/src/entities/objects/metaEditFieldDetails.atom.ts rename to frontend/app/src/entities/nodes/metaEditFieldDetails.atom.ts diff --git a/frontend/app/src/entities/objects/object-header.tsx b/frontend/app/src/entities/nodes/object-header.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-header.tsx rename to frontend/app/src/entities/nodes/object-header.tsx index 7793ef0d1d..334243e599 100644 --- a/frontend/app/src/entities/objects/object-header.tsx +++ b/frontend/app/src/entities/nodes/object-header.tsx @@ -1,3 +1,5 @@ +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; +import { useObjectItems } from "@/entities/nodes/useObjectItems"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; @@ -6,8 +8,6 @@ import { ObjectDetailsButton } from "@/shared/components/menu/object-details-but import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Skeleton } from "@/shared/components/skeleton"; import useFilters from "@/shared/hooks/useFilters"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; -import { useObjectItems } from "@/shared/hooks/useObjectItems"; type ObjectHeaderProps = { schema: IModelSchema; diff --git a/frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx rename to frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx index 500df0ff2b..d7b05741b0 100644 --- a/frontend/app/src/entities/objects/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx @@ -1,7 +1,7 @@ import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; -import { Generate } from "@/entities/artifacts/generate"; +import { Generate } from "@/entities/artifacts/ui/generate"; import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import RepositoryActionMenu from "@/entities/repository/repository-action-menu"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; diff --git a/frontend/app/src/entities/objects/object-item-details/action-buttons/index.tsx b/frontend/app/src/entities/nodes/object-item-details/action-buttons/index.tsx similarity index 100% rename from frontend/app/src/entities/objects/object-item-details/action-buttons/index.tsx rename to frontend/app/src/entities/nodes/object-item-details/action-buttons/index.tsx diff --git a/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx similarity index 96% rename from frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx rename to frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx index c0671bf769..40f0a1d0b6 100644 --- a/frontend/app/src/entities/objects/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,14 +1,14 @@ import { QSP } from "@/config/qsp"; -import { ADD_RELATIONSHIP } from "@/entities/objects/relationships/api/addRelationship"; +import { ADD_RELATIONSHIP } from "@/entities/nodes/relationships/api/addRelationship"; import { Permission } from "@/entities/permission/types"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { SelectOption } from "@/shared/components/inputs/select"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useMutation } from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/entities/objects/object-item-details/object-attribute-row.tsx b/frontend/app/src/entities/nodes/object-item-details/object-attribute-row.tsx similarity index 100% rename from frontend/app/src/entities/objects/object-item-details/object-attribute-row.tsx rename to frontend/app/src/entities/nodes/object-item-details/object-attribute-row.tsx diff --git a/frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx rename to frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx index 1b048de35c..150be89c1e 100644 --- a/frontend/app/src/entities/objects/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx @@ -1,16 +1,16 @@ import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; -import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; +import { ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; +import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; import { getObjectAttributes, getObjectRelationships, getObjectTabs, getTabs, -} from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +} from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; import { Permission } from "@/entities/permission/types"; import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; import { TaskItemDetails } from "@/entities/tasks/task-item-details"; @@ -88,7 +88,7 @@ export default function ObjectItemDetails({ name: schema?.name, }, ...getObjectTabs(relationshipsTabs, objectDetailsData), - // Includes the task tab only for specific objects, + // Includes the task tab only for specific nodes, schema?.inherit_from?.includes(TASK_TARGET) && { label: "Tasks", name: TASK_TAB, diff --git a/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx rename to frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx index bcbdd1bc35..85d428967e 100644 --- a/frontend/app/src/entities/objects/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx @@ -1,14 +1,15 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { showMetaEditState } from "@/entities/objects/metaEditFieldDetails.atom"; -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { ObjectItemsCell, TextCell } from "@/entities/objects/object-items/object-items-cell"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; -import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { ObjectItemsCell, TextCell } from "@/entities/nodes/object-items/object-items-cell"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; +import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; import { getPermission } from "@/entities/permission/utils"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; @@ -19,7 +20,6 @@ import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Link as StyledLink } from "@/shared/components/ui/link"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx similarity index 93% rename from frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx rename to frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx index 0da3d10b86..30066a6dbe 100644 --- a/frontend/app/src/entities/objects/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx @@ -1,13 +1,13 @@ import { QSP } from "@/config/qsp"; -import { getObjectRelationshipsDetailsPaginated } from "@/entities/objects/api/getObjectRelationshipDetails"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { REMOVE_RELATIONSHIP } from "@/entities/objects/relationships/api/removeRelationship"; +import { getObjectRelationshipsDetailsPaginated } from "@/entities/nodes/api/getObjectRelationshipDetails"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { REMOVE_RELATIONSHIP } from "@/entities/nodes/relationships/api/removeRelationship"; import { genericsState, iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import useQuery, { useMutation } from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtom } from "jotai"; import { forwardRef, useEffect, useImperativeHandle } from "react"; diff --git a/frontend/app/src/entities/objects/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts similarity index 100% rename from frontend/app/src/entities/objects/object-item-edit/generateObjectEditFormQuery.ts rename to frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts diff --git a/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx similarity index 90% rename from frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx rename to frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx index 1e6aae466c..1601a49371 100644 --- a/frontend/app/src/entities/objects/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx @@ -1,16 +1,16 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { DynamicFieldData } from "@/entities/objects/edit-form-hook/dynamic-control-types"; -import { generateObjectEditFormQuery } from "@/entities/objects/object-item-edit/generateObjectEditFormQuery"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { DynamicFieldData } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; +import { generateObjectEditFormQuery } from "@/entities/nodes/object-item-edit/generateObjectEditFormQuery"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { areObjectArraysEqualById } from "@/shared/utils/array"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts b/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts similarity index 100% rename from frontend/app/src/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts rename to frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts diff --git a/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx rename to frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx index 08aecbd735..a714cddcc9 100644 --- a/frontend/app/src/entities/objects/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,6 +1,6 @@ import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import getMutationMetaDetailsFromFormData from "@/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData"; import { iNodeSchema } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/entities/objects/object-items/getSchemaObjectColumns.ts b/frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts similarity index 100% rename from frontend/app/src/entities/objects/object-items/getSchemaObjectColumns.ts rename to frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts diff --git a/frontend/app/src/entities/objects/object-items/object-items-cell.tsx b/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-items/object-items-cell.tsx rename to frontend/app/src/entities/nodes/object-items/object-items-cell.tsx index 176a30109a..f2d8d67b03 100644 --- a/frontend/app/src/entities/objects/object-items/object-items-cell.tsx +++ b/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx @@ -2,8 +2,8 @@ import { RelationshipManyType, RelationshipOneType, getDisplayValue, -} from "@/entities/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +} from "@/entities/nodes/getObjectItemDisplayValue"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/entities/objects/object-items/object-items-paginated.tsx b/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx similarity index 95% rename from frontend/app/src/entities/objects/object-items/object-items-paginated.tsx rename to frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx index 138360db98..4b0af6ac74 100644 --- a/frontend/app/src/entities/objects/object-items/object-items-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx @@ -5,9 +5,10 @@ import { SEARCH_PARTIAL_MATCH, } from "@/config/constants"; import { GroupsAutoGeneratedFilterButton } from "@/entities/groups/groups-auto-generated-filter-button"; -import { getDisplayValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { ObjectItemsCell, TextCell } from "@/entities/objects/object-items/object-items-cell"; +import { getDisplayValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { ObjectItemsCell, TextCell } from "@/entities/nodes/object-items/object-items-cell"; +import { useObjectItems } from "@/entities/nodes/useObjectItems"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { isOfKind } from "@/entities/schema/utils"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; @@ -21,7 +22,6 @@ import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import useFilters, { Filter } from "@/shared/hooks/useFilters"; -import { useObjectItems } from "@/shared/hooks/useObjectItems"; import { useTitle } from "@/shared/hooks/useTitle"; import { classNames, debounce } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/objects/objects.ts b/frontend/app/src/entities/nodes/objects.ts similarity index 100% rename from frontend/app/src/entities/objects/objects.ts rename to frontend/app/src/entities/nodes/objects.ts diff --git a/frontend/app/src/entities/objects/relationships/api/addRelationship.ts b/frontend/app/src/entities/nodes/relationships/api/addRelationship.ts similarity index 100% rename from frontend/app/src/entities/objects/relationships/api/addRelationship.ts rename to frontend/app/src/entities/nodes/relationships/api/addRelationship.ts diff --git a/frontend/app/src/entities/objects/relationships/api/queries.ts b/frontend/app/src/entities/nodes/relationships/api/queries.ts similarity index 87% rename from frontend/app/src/entities/objects/relationships/api/queries.ts rename to frontend/app/src/entities/nodes/relationships/api/queries.ts index 7fc74f7200..5fa09cd72c 100644 --- a/frontend/app/src/entities/objects/relationships/api/queries.ts +++ b/frontend/app/src/entities/nodes/relationships/api/queries.ts @@ -1,4 +1,4 @@ -import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; +import { generateRelationshipListQuery } from "@/entities/nodes/api/generateRelationshipListQuery"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/objects/relationships/api/removeRelationship.ts b/frontend/app/src/entities/nodes/relationships/api/removeRelationship.ts similarity index 100% rename from frontend/app/src/entities/objects/relationships/api/removeRelationship.ts rename to frontend/app/src/entities/nodes/relationships/api/removeRelationship.ts diff --git a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts similarity index 92% rename from frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts rename to frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts index 7c4d6c7d44..e1f02a3805 100644 --- a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.query.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts @@ -3,7 +3,7 @@ import { GetRelationshipsParams, RELATIONSHIPS_PER_PAGE, getRelationships, -} from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; +} from "@/entities/nodes/relationships/domain/get-relationships/get-relationships"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { infiniteQueryOptions } from "@tanstack/react-query"; diff --git a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts similarity index 91% rename from frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts rename to frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts index a27fc95b3a..325dad2023 100644 --- a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts @@ -1,12 +1,12 @@ import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; -import { getRelationshipsFromApi } from "@/entities/objects/relationships/api/queries"; -import { getRelationships } from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; +import { getRelationshipsFromApi } from "@/entities/nodes/relationships/api/queries"; +import { getRelationships } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; vi.mock("@/entities/branches/get-current-branch"); -vi.mock("@/entities/objects/relationships/api/queries"); +vi.mock("@/entities/nodes/relationships/api/queries"); vi.mock("@/shared/stores"); describe("getRelationships", () => { diff --git a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts similarity index 88% rename from frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts rename to frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts index 8ebe91b1ef..914da85a54 100644 --- a/frontend/app/src/entities/objects/relationships/domain/get-relationships/get-relationships.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts @@ -1,6 +1,6 @@ import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; -import { getRelationshipsFromApi } from "@/entities/objects/relationships/api/queries"; -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { getRelationshipsFromApi } from "@/entities/nodes/relationships/api/queries"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/entities/objects/relationships/domain/types.ts b/frontend/app/src/entities/nodes/relationships/domain/types.ts similarity index 100% rename from frontend/app/src/entities/objects/relationships/domain/types.ts rename to frontend/app/src/entities/nodes/relationships/domain/types.ts diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png new file mode 100644 index 0000000000000000000000000000000000000000..85bdf63371044ac8aed3929d3602faa865b7a027 GIT binary patch literal 7173 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 LqX$ZyPG0>N##qsX literal 0 HcmV?d00001 diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png new file mode 100644 index 0000000000000000000000000000000000000000..85bdf63371044ac8aed3929d3602faa865b7a027 GIT binary patch literal 7173 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 LqX$ZyPG0>N##qsX literal 0 HcmV?d00001 diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png new file mode 100644 index 0000000000000000000000000000000000000000..85bdf63371044ac8aed3929d3602faa865b7a027 GIT binary patch literal 7173 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 LqX$ZyPG0>N##qsX literal 0 HcmV?d00001 diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png new file mode 100644 index 0000000000000000000000000000000000000000..85bdf63371044ac8aed3929d3602faa865b7a027 GIT binary patch literal 7173 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 LqX$ZyPG0>N##qsX literal 0 HcmV?d00001 diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png new file mode 100644 index 0000000000000000000000000000000000000000..85bdf63371044ac8aed3929d3602faa865b7a027 GIT binary patch literal 7173 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 LqX$ZyPG0>N##qsX literal 0 HcmV?d00001 diff --git a/frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx similarity index 93% rename from frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx rename to frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx index c88e7536c6..06fafbe958 100644 --- a/frontend/app/src/entities/objects/relationships/ui/add-relationship-action.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx @@ -1,8 +1,8 @@ -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; +import { useSchema } from "@/entities/schema/useSchema"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; -import { useSchema } from "@/shared/hooks/useSchema"; import React, { useState } from "react"; export interface AddRelationshipActionProps { diff --git a/frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx similarity index 87% rename from frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx rename to frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx index b0427fe133..81cdf72b92 100644 --- a/frontend/app/src/entities/objects/relationships/ui/relationship-combobox-list.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx @@ -1,10 +1,10 @@ -import { relationshipsInfiniteQueryOptions } from "@/entities/objects/relationships/domain/get-relationships/get-relationships.query"; -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; -import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; +import { relationshipsInfiniteQueryOptions } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships.query"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; +import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action"; +import { useSchema } from "@/entities/schema/useSchema"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; import { Spinner } from "@/shared/components/ui/spinner"; -import { useSchema } from "@/shared/hooks/useSchema"; import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import React, { forwardRef } from "react"; diff --git a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx similarity index 94% rename from frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx rename to frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx index 1cb33922b1..caa3f3e1ca 100644 --- a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.test.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx @@ -1,13 +1,13 @@ -import { getRelationships } from "@/entities/objects/relationships/domain/get-relationships/get-relationships"; -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; -import { RelationshipHierarchicalComboboxList } from "@/entities/objects/relationships/ui/relationship-hierarchical-combobox-list"; +import { getRelationships } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; +import { RelationshipHierarchicalComboboxList } from "@/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list"; import { genericsState, schemaState } from "@/entities/schema/schema.atom"; import { store } from "@/shared/stores"; import { describe, expect, it, vi } from "vitest"; import { render } from "../../../../../tests/components/render"; import { generateGenericSchema, generateNodeSchema } from "../../../../../tests/fake/schema"; -vi.mock("@/entities/objects/relationships/domain/get-relationships/get-relationships"); +vi.mock("@/entities/nodes/relationships/domain/get-relationships/get-relationships"); describe("RelationshipHierarchicalComboboxList", () => { const hierarchyGenericSchema = generateGenericSchema({ hierarchical: true }); diff --git a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx similarity index 95% rename from frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx rename to frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx index 3369c47df6..f636430f45 100644 --- a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-combobox-list.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx @@ -1,13 +1,13 @@ -import { relationshipsInfiniteQueryOptions } from "@/entities/objects/relationships/domain/get-relationships/get-relationships.query"; -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { relationshipsInfiniteQueryOptions } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships.query"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/entities/schema/utils"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; import { ComboboxEmpty, ComboboxItem } from "@/shared/components/ui/combobox"; import { Command, CommandInput, CommandList } from "@/shared/components/ui/command"; import { Spinner } from "@/shared/components/ui/spinner"; -import { useSchema } from "@/shared/hooks/useSchema"; import { debounce } from "@/shared/utils/common"; import { useInfiniteQuery } from "@tanstack/react-query"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx similarity index 94% rename from frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx rename to frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx index 017666423c..882d5a2c20 100644 --- a/frontend/app/src/entities/objects/relationships/ui/relationship-hierarchical-input.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-input.tsx @@ -1,10 +1,10 @@ -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { RelationshipComboboxList, RelationshipComboboxListProps, -} from "@/entities/objects/relationships/ui/relationship-combobox-list"; -import { RelationshipHierarchicalComboboxList } from "@/entities/objects/relationships/ui/relationship-hierarchical-combobox-list"; +} from "@/entities/nodes/relationships/ui/relationship-combobox-list"; +import { RelationshipHierarchicalComboboxList } from "@/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { diff --git a/frontend/app/src/entities/objects/showMetaEdit.atom.ts b/frontend/app/src/entities/nodes/showMetaEdit.atom.ts similarity index 100% rename from frontend/app/src/entities/objects/showMetaEdit.atom.ts rename to frontend/app/src/entities/nodes/showMetaEdit.atom.ts diff --git a/frontend/app/src/entities/objects/types.ts b/frontend/app/src/entities/nodes/types.ts similarity index 100% rename from frontend/app/src/entities/objects/types.ts rename to frontend/app/src/entities/nodes/types.ts diff --git a/frontend/app/src/shared/hooks/useObjectDetails.ts b/frontend/app/src/entities/nodes/useObjectDetails.ts similarity index 87% rename from frontend/app/src/shared/hooks/useObjectDetails.ts rename to frontend/app/src/entities/nodes/useObjectDetails.ts index 8bbc5a6a11..44fb9e0cc7 100644 --- a/frontend/app/src/shared/hooks/useObjectDetails.ts +++ b/frontend/app/src/entities/nodes/useObjectDetails.ts @@ -1,13 +1,13 @@ import { PROFILE_KIND, TASK_OBJECT } from "@/config/constants"; -import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; +import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; import { getSchemaObjectColumns, getTabs, -} from "@/entities/objects/object-items/getSchemaObjectColumns"; +} from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; -import useQuery from "@/shared/hooks/useQuery"; +import useQuery from "@/shared/api/graphql/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; @@ -27,7 +27,7 @@ export const useObjectDetails = (schema: IModelSchema, objectId: string) => { columns, relationshipsTabs, objectid: objectId, - // Do not query profiles on profiles objects + // Do not query profiles on profiles nodes queryProfiles: !profileGenericSchema?.used_by?.includes(schema?.kind!) && schema?.kind !== PROFILE_KIND && diff --git a/frontend/app/src/shared/hooks/useObjectItems.ts b/frontend/app/src/entities/nodes/useObjectItems.ts similarity index 93% rename from frontend/app/src/shared/hooks/useObjectItems.ts rename to frontend/app/src/entities/nodes/useObjectItems.ts index 1ba48051f2..47e5ca6f2d 100644 --- a/frontend/app/src/shared/hooks/useObjectItems.ts +++ b/frontend/app/src/entities/nodes/useObjectItems.ts @@ -1,9 +1,9 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { getObjectItemsPaginated } from "@/entities/objects/api/getObjectItems"; +import { getObjectItemsPaginated } from "@/entities/nodes/api/getObjectItems"; import { getObjectAttributes, getObjectRelationships, -} from "@/entities/objects/object-items/getSchemaObjectColumns"; +} from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema, @@ -12,8 +12,8 @@ import { schemaState, } from "@/entities/schema/schema.atom"; import { getTokens } from "@/entities/user-profile/api/getTokens"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Filter } from "@/shared/hooks/useFilters"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx index a3909fcc2f..da43ab8777 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx @@ -1,10 +1,10 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx index d0efabdb25..45c128ddd2 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx index cee74eb6d3..0356a629bd 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/proposed-changes/checks-tab.tsx b/frontend/app/src/entities/proposed-changes/checks-tab.tsx index 2d69e817bb..73fe16f9bd 100644 --- a/frontend/app/src/entities/proposed-changes/checks-tab.tsx +++ b/frontend/app/src/entities/proposed-changes/checks-tab.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { getProposedChangesChecks } from "@/entities/proposed-changes/api/getProposedChangesChecks"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Pill } from "@/shared/components/display/pill"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/entities/proposed-changes/conversations.tsx b/frontend/app/src/entities/proposed-changes/conversations.tsx index 2b14c32953..1cb326b34a 100644 --- a/frontend/app/src/entities/proposed-changes/conversations.tsx +++ b/frontend/app/src/entities/proposed-changes/conversations.tsx @@ -4,19 +4,19 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesThreads } from "@/entities/proposed-changes/api/getProposedChangesThreads"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { AddComment } from "@/shared/components/conversations/add-comment"; import { Thread } from "@/shared/components/conversations/thread"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { Card } from "@/shared/components/ui/card"; import { FormRef } from "@/shared/components/ui/form"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/entities/proposed-changes/counter.tsx b/frontend/app/src/entities/proposed-changes/counter.tsx index 53d401beab..7748015fd4 100644 --- a/frontend/app/src/entities/proposed-changes/counter.tsx +++ b/frontend/app/src/entities/proposed-changes/counter.tsx @@ -1,5 +1,5 @@ +import useQuery from "@/shared/api/graphql/useQuery"; import { Badge } from "@/shared/components/ui/badge"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import LoadingScreen from "../../shared/components/loading-screen"; diff --git a/frontend/app/src/entities/proposed-changes/create-form.tsx b/frontend/app/src/entities/proposed-changes/create-form.tsx index a2184f9769..f441ffd5e5 100644 --- a/frontend/app/src/entities/proposed-changes/create-form.tsx +++ b/frontend/app/src/entities/proposed-changes/create-form.tsx @@ -1,9 +1,12 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; +import { useAuth } from "@/entities/authentication/useAuth"; import { branchesToSelectOptions } from "@/entities/branches/branches"; import { branchesState } from "@/entities/branches/branches.atom"; -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; import { CREATE_PROPOSED_CHANGE } from "@/entities/proposed-changes/api/createProposedChange"; +import { useSchema } from "@/entities/schema/useSchema"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { MarkdownEditor } from "@/shared/components/editor"; @@ -21,9 +24,6 @@ import { } from "@/shared/components/ui/form"; import { Input } from "@/shared/components/ui/input"; import { Spinner } from "@/shared/components/ui/spinner"; -import { useAuth } from "@/shared/hooks/useAuth"; -import { useMutation } from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { useNavigate } from "react-router-dom"; diff --git a/frontend/app/src/entities/proposed-changes/diff-filter.tsx b/frontend/app/src/entities/proposed-changes/diff-filter.tsx index 384861bcae..8bf27f37d3 100644 --- a/frontend/app/src/entities/proposed-changes/diff-filter.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-filter.tsx @@ -1,6 +1,6 @@ import { getProposedChangesDiffSummary } from "@/entities/proposed-changes/api/getProposedChangesDiffSummary"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; import { diff --git a/frontend/app/src/entities/proposed-changes/diff-summary.tsx b/frontend/app/src/entities/proposed-changes/diff-summary.tsx index 50ecaadf44..ceaf62c4b8 100644 --- a/frontend/app/src/entities/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/entities/proposed-changes/diff-summary.tsx @@ -5,10 +5,10 @@ import { toast } from "react-toastify"; import { QSP } from "@/config/qsp"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { getProposedChangesDiffSummary } from "@/entities/proposed-changes/api/getProposedChangesDiffSummary"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import useQuery from "@/shared/hooks/useQuery"; import { DIFF_STATUS, DiffStatus } from "../diff/node-diff/types"; interface DiffTreeSummary { diff --git a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx index 0bc871df4f..4a5a46b529 100644 --- a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; import { schemaState } from "@/entities/schema/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import DynamicForm from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/entities/proposed-changes/items.tsx b/frontend/app/src/entities/proposed-changes/items.tsx index f243056908..6c4aa7d350 100644 --- a/frontend/app/src/entities/proposed-changes/items.tsx +++ b/frontend/app/src/entities/proposed-changes/items.tsx @@ -1,9 +1,9 @@ +import useQuery, { useMutation } from "@/shared/api/graphql/useQuery"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import ErrorScreen from "@/shared/components/errors/error-screen"; import Content from "@/shared/components/layout/content"; import { Table, tRow } from "@/shared/components/table/table"; import { Badge } from "@/shared/components/ui/badge"; -import useQuery, { useMutation } from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { Icon } from "@iconify-icon/react"; @@ -17,6 +17,7 @@ import { ProposedChangesCounter } from "@/entities/proposed-changes/counter"; import { ProposedChangeDiffSummary } from "@/entities/proposed-changes/diff-summary"; import { ProposedChangesInfo } from "@/entities/proposed-changes/item-info"; import { ProposedChangesReviewers } from "@/entities/proposed-changes/reviewers"; +import { useSchema } from "@/entities/schema/useSchema"; import { constructPath } from "@/shared/api/rest/fetch"; import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; @@ -25,7 +26,6 @@ import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import ModalDelete from "@/shared/components/modals/modal-delete"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; -import { useSchema } from "@/shared/hooks/useSchema"; import { classNames, debounce } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; import { useState } from "react"; diff --git a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx index a5f54ee562..7f6dae1abe 100644 --- a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx @@ -7,6 +7,7 @@ import { ProposedChangeEditTrigger } from "@/entities/proposed-changes/proposed- import { getProposedChangesStateBadgeType } from "@/entities/proposed-changes/proposed-changes"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; import { TASK_DETAILS_CHECK } from "@/entities/tasks/api/checkTasksItemDetails"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import Accordion from "@/shared/components/display/accordion"; import { Avatar } from "@/shared/components/display/avatar"; @@ -16,7 +17,6 @@ import { Property, PropertyList } from "@/shared/components/table/property-list" import { Badge } from "@/shared/components/ui/badge"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import useQuery from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx index 7b6be7e30d..f8727f729f 100644 --- a/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { ProposedChangeEditForm } from "@/entities/proposed-changes/form/proposed-change-edit-form"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver from "@/shared/components/display/slide-over"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; diff --git a/frontend/app/src/entities/repository/repository-action-menu.tsx b/frontend/app/src/entities/repository/repository-action-menu.tsx index a3cd734f85..4001d85980 100644 --- a/frontend/app/src/entities/repository/repository-action-menu.tsx +++ b/frontend/app/src/entities/repository/repository-action-menu.tsx @@ -4,6 +4,7 @@ import { CHECK_REPOSITORY_CONNECTIVITY, REIMPORT_LAST_COMMIT, } from "@/entities/repository/api/actions"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { @@ -12,7 +13,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { useMutation } from "@/shared/hooks/useQuery"; import { Dialog } from "@headlessui/react"; import { useState } from "react"; import { toast } from "react-toastify"; diff --git a/frontend/app/src/entities/repository/repository-form.tsx b/frontend/app/src/entities/repository/repository-form.tsx index 97d1d7721a..bc6b6c4b9f 100644 --- a/frontend/app/src/entities/repository/repository-form.tsx +++ b/frontend/app/src/entities/repository/repository-form.tsx @@ -1,5 +1,6 @@ +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; +import { createObject } from "@/entities/nodes/api/createObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DynamicInput } from "@/shared/components/form/dynamic-form"; @@ -9,7 +10,6 @@ import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormF import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import { Card, CardProps } from "@/shared/components/ui/card"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useAuth } from "@/shared/hooks/useAuth"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/entities/resource-manager/number-pool-form.tsx b/frontend/app/src/entities/resource-manager/number-pool-form.tsx index ba4613c26b..4602fb8c1b 100644 --- a/frontend/app/src/entities/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/entities/resource-manager/number-pool-form.tsx @@ -1,8 +1,8 @@ import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { NUMBER_POOL_NODE_ATTRIBUTE_FIELD, NUMBER_POOL_NODE_FIELD, diff --git a/frontend/app/src/entities/resource-manager/resource-selector.tsx b/frontend/app/src/entities/resource-manager/resource-selector.tsx index 4bfdf42492..df97fe8781 100644 --- a/frontend/app/src/entities/resource-manager/resource-selector.tsx +++ b/frontend/app/src/entities/resource-manager/resource-selector.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { constructPath } from "@/shared/api/rest/fetch"; import { PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/entities/role-manager/account-form.tsx b/frontend/app/src/entities/role-manager/account-form.tsx index 4163ac04af..2b9a63b2bf 100644 --- a/frontend/app/src/entities/role-manager/account-form.tsx +++ b/frontend/app/src/entities/role-manager/account-form.tsx @@ -1,8 +1,9 @@ import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; @@ -15,7 +16,6 @@ import { getCreateMutationFromFormDataOnly } from "@/shared/components/form/util import { isRequired } from "@/shared/components/form/utils/validation"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useSchema } from "@/shared/hooks/useSchema"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/role-manager/account-group-form.tsx b/frontend/app/src/entities/role-manager/account-group-form.tsx index 437df108cb..6c14185188 100644 --- a/frontend/app/src/entities/role-manager/account-group-form.tsx +++ b/frontend/app/src/entities/role-manager/account-group-form.tsx @@ -5,9 +5,10 @@ import { OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; @@ -22,7 +23,6 @@ import { isRequired } from "@/shared/components/form/utils/validation"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useSchema } from "@/shared/hooks/useSchema"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/role-manager/account-role-form.tsx b/frontend/app/src/entities/role-manager/account-role-form.tsx index c3b6311d60..2e5dcd4549 100644 --- a/frontend/app/src/entities/role-manager/account-role-form.tsx +++ b/frontend/app/src/entities/role-manager/account-role-form.tsx @@ -4,9 +4,9 @@ import { ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; diff --git a/frontend/app/src/entities/role-manager/accounts.tsx b/frontend/app/src/entities/role-manager/accounts.tsx index 5e0a8f089a..f90c085e2e 100644 --- a/frontend/app/src/entities/role-manager/accounts.tsx +++ b/frontend/app/src/entities/role-manager/accounts.tsx @@ -1,7 +1,9 @@ import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/entities/role-manager/api/getAccounts"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { ColorDisplay } from "@/shared/components/display/color-display"; import { InlineDisplay } from "@/shared/components/display/inline-display"; @@ -15,8 +17,6 @@ import { Badge } from "@/shared/components/ui/badge"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/entities/role-manager/global-permissions-form.tsx b/frontend/app/src/entities/role-manager/global-permissions-form.tsx index ff0653cb8b..97740b7131 100644 --- a/frontend/app/src/entities/role-manager/global-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions-form.tsx @@ -1,8 +1,8 @@ import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; @@ -18,11 +18,11 @@ import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; +import { useSchema } from "@/entities/schema/useSchema"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { useSchema } from "@/shared/hooks/useSchema"; import { globalDecisionOptions } from "./constants"; interface NumberPoolFormProps extends Pick { diff --git a/frontend/app/src/entities/role-manager/global-permissions.tsx b/frontend/app/src/entities/role-manager/global-permissions.tsx index e93c5f8fc2..b3943e8ba1 100644 --- a/frontend/app/src/entities/role-manager/global-permissions.tsx +++ b/frontend/app/src/entities/role-manager/global-permissions.tsx @@ -1,7 +1,9 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/entities/role-manager/api/getGlobalPermissions"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; @@ -15,8 +17,6 @@ import { BadgeCopy } from "@/shared/components/ui/badge-copy"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/entities/role-manager/groups.tsx b/frontend/app/src/entities/role-manager/groups.tsx index 65eea0423d..7560ecd9b9 100644 --- a/frontend/app/src/entities/role-manager/groups.tsx +++ b/frontend/app/src/entities/role-manager/groups.tsx @@ -1,7 +1,9 @@ import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_GROUPS } from "@/entities/role-manager/api/getGroups"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; @@ -14,8 +16,6 @@ import { Badge } from "@/shared/components/ui/badge"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/entities/role-manager/index.tsx b/frontend/app/src/entities/role-manager/index.tsx index 7c5a5943be..b7c301042a 100644 --- a/frontend/app/src/entities/role-manager/index.tsx +++ b/frontend/app/src/entities/role-manager/index.tsx @@ -6,8 +6,8 @@ import { OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_COUNTS } from "@/entities/role-manager/api/getCounts"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Tabs } from "@/shared/components/tabs-routes"; -import useQuery from "@/shared/hooks/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/role-manager/object-permissions-form.tsx b/frontend/app/src/entities/role-manager/object-permissions-form.tsx index 94f4756b08..a7f7433f23 100644 --- a/frontend/app/src/entities/role-manager/object-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions-form.tsx @@ -1,8 +1,8 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { NodeFormProps } from "@/shared/components/form/node-form"; @@ -18,12 +18,12 @@ import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; +import { useSchema } from "@/entities/schema/useSchema"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; import { NameSelect } from "@/shared/components/form/name-select"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { useSchema } from "@/shared/hooks/useSchema"; import { objectDecisionOptions } from "./constants"; interface NumberPoolFormProps extends Pick { diff --git a/frontend/app/src/entities/role-manager/object-permissions.tsx b/frontend/app/src/entities/role-manager/object-permissions.tsx index a4a2475f26..819ffe6a06 100644 --- a/frontend/app/src/entities/role-manager/object-permissions.tsx +++ b/frontend/app/src/entities/role-manager/object-permissions.tsx @@ -1,7 +1,9 @@ import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/entities/role-manager/api/getObjectPermissions"; import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import { Pill } from "@/shared/components/display/pill"; @@ -16,8 +18,6 @@ import { BadgeCopy } from "@/shared/components/ui/badge-copy"; import { Pagination } from "@/shared/components/ui/pagination"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/role-manager/roles.tsx b/frontend/app/src/entities/role-manager/roles.tsx index 149c9fe7b2..9218d5719b 100644 --- a/frontend/app/src/entities/role-manager/roles.tsx +++ b/frontend/app/src/entities/role-manager/roles.tsx @@ -9,7 +9,9 @@ import { useAtomValue } from "jotai"; import { useState } from "react"; import LoadingScreen from "../../shared/components/loading-screen"; +import { useSchema } from "@/entities/schema/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { InlineDisplay } from "@/shared/components/display/inline-display"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; @@ -18,8 +20,6 @@ import ObjectForm from "@/shared/components/form/object-form"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; import { getPermission } from "../permission/utils"; diff --git a/frontend/app/src/entities/schema/schema-help-menu.tsx b/frontend/app/src/entities/schema/schema-help-menu.tsx index c16d9d221d..119a1352f5 100644 --- a/frontend/app/src/entities/schema/schema-help-menu.tsx +++ b/frontend/app/src/entities/schema/schema-help-menu.tsx @@ -1,6 +1,6 @@ import { INFRAHUB_DOC_LOCAL } from "@/config/config"; import { MENU_EXCLUDELIST } from "@/config/constants"; -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { Button } from "@/shared/components/buttons/button-primitive"; import { diff --git a/frontend/app/src/shared/hooks/useSchema.ts b/frontend/app/src/entities/schema/useSchema.ts similarity index 100% rename from frontend/app/src/shared/hooks/useSchema.ts rename to frontend/app/src/entities/schema/useSchema.ts diff --git a/frontend/app/src/entities/tasks/task-item-details.tsx b/frontend/app/src/entities/tasks/task-item-details.tsx index 4d1b56e677..063f4656e9 100644 --- a/frontend/app/src/entities/tasks/task-item-details.tsx +++ b/frontend/app/src/entities/tasks/task-item-details.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import useQuery from "@/shared/hooks/useQuery"; +import useQuery from "@/shared/api/graphql/useQuery"; import { QSP } from "@/config/qsp"; import { TASK_DETAILS } from "@/entities/tasks/api/getTasksItemDetails"; diff --git a/frontend/app/src/entities/tasks/task-items.tsx b/frontend/app/src/entities/tasks/task-items.tsx index c175cec53b..119185ec5c 100644 --- a/frontend/app/src/entities/tasks/task-items.tsx +++ b/frontend/app/src/entities/tasks/task-items.tsx @@ -1,8 +1,8 @@ import { SEARCH_ANY_FILTER, SEARCH_FILTERS, TASK_OBJECT, TASK_TAB } from "@/config/constants"; +import useQuery from "@/shared/api/graphql/useQuery"; import Content from "@/shared/components/layout/content"; import { Table, tColumn } from "@/shared/components/table/table"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery from "@/shared/hooks/useQuery"; import { QSP } from "@/config/qsp"; import { GET_TASKS } from "@/entities/tasks/api/getTasksItems"; diff --git a/frontend/app/src/entities/user-profile/tab-profile.tsx b/frontend/app/src/entities/user-profile/tab-profile.tsx index ca237e2d43..4d55d91ee8 100644 --- a/frontend/app/src/entities/user-profile/tab-profile.tsx +++ b/frontend/app/src/entities/user-profile/tab-profile.tsx @@ -1,11 +1,11 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import ObjectItemDetails from "@/entities/objects/object-item-details/object-item-details-paginated"; +import ObjectItemDetails from "@/entities/nodes/object-item-details/object-item-details-paginated"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import { genericsState } from "@/entities/schema/schema.atom"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { parseJwt } from "@/shared/utils/common"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/entities/user-profile/tab-tokens.tsx b/frontend/app/src/entities/user-profile/tab-tokens.tsx index f2dfedb64f..2e4b84cbaf 100644 --- a/frontend/app/src/entities/user-profile/tab-tokens.tsx +++ b/frontend/app/src/entities/user-profile/tab-tokens.tsx @@ -1,5 +1,5 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; import { schemaState } from "@/entities/schema/schema.atom"; import { useAtomValue } from "jotai"; import { useState } from "react"; diff --git a/frontend/app/src/entities/user-profile/tab-update-password.tsx b/frontend/app/src/entities/user-profile/tab-update-password.tsx index 8ab059aef2..67aee84b35 100644 --- a/frontend/app/src/entities/user-profile/tab-update-password.tsx +++ b/frontend/app/src/entities/user-profile/tab-update-password.tsx @@ -1,11 +1,11 @@ import { UPDATE_ACCOUNT_PASSWORD } from "@/entities/user-profile/api/updateAccountPassword"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import Content from "@/shared/components/layout/content"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Card } from "@/shared/components/ui/card"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useMutation } from "@/shared/hooks/useQuery"; import { toast } from "react-toastify"; type UpdatePasswordFormData = { diff --git a/frontend/app/src/pages/auth-callback.tsx b/frontend/app/src/pages/auth-callback.tsx index de6f6b1c72..ccfb315697 100644 --- a/frontend/app/src/pages/auth-callback.tsx +++ b/frontend/app/src/pages/auth-callback.tsx @@ -1,8 +1,8 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { configState } from "@/config/config.atom"; +import { useAuth } from "@/entities/authentication/useAuth"; import { fetchUrl } from "@/shared/api/rest/fetch"; import LoadingScreen from "@/shared/components/loading-screen"; -import { useAuth } from "@/shared/hooks/useAuth"; import { useAtomValue } from "jotai"; import { useEffect, useState } from "react"; import { Navigate, useParams, useSearchParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/login.tsx b/frontend/app/src/pages/login.tsx index e6059adcf5..4318446ba8 100644 --- a/frontend/app/src/pages/login.tsx +++ b/frontend/app/src/pages/login.tsx @@ -1,6 +1,6 @@ import InfrahubLogo from "@/assets/Infrahub-SVG-hori.svg?react"; import { Login } from "@/entities/authentication/login"; -import { useAuth } from "@/shared/hooks/useAuth"; +import { useAuth } from "@/entities/authentication/useAuth"; import { Navigate, useLocation } from "react-router-dom"; function LoginPage() { diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index 23627eb8d4..b8a48ea445 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -2,15 +2,15 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; import GraphqlQueryDetailsCard from "@/entities/graphql/details/graphql-query-details-card"; import GraphQLQueryDetailsPageSkeleton from "@/entities/graphql/details/graphql-query-details-page-skeleton"; import GraphqlQueryViewerCard from "@/entities/graphql/details/graphql-query-viewer-card"; -import { getObjectDetailsPaginated } from "@/entities/objects/api/getObjectDetails"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { Permission } from "@/entities/permission/types"; import { getPermission } from "@/entities/permission/utils"; import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; +import useQuery from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/pages/objects/layout.tsx b/frontend/app/src/pages/objects/layout.tsx index e95c8e09d9..914e7e10d4 100644 --- a/frontend/app/src/pages/objects/layout.tsx +++ b/frontend/app/src/pages/objects/layout.tsx @@ -1,5 +1,5 @@ -import { HierarchicalTree } from "@/entities/objects/hierarchical-tree"; -import ObjectHeader from "@/entities/objects/object-header"; +import { HierarchicalTree } from "@/entities/nodes/hierarchical-tree"; +import ObjectHeader from "@/entities/nodes/object-header"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import NoDataFound from "@/shared/components/errors/no-data-found"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/pages/objects/object-details.tsx b/frontend/app/src/pages/objects/object-details.tsx index c74b37c7f0..a6bb0c0bae 100644 --- a/frontend/app/src/pages/objects/object-details.tsx +++ b/frontend/app/src/pages/objects/object-details.tsx @@ -1,14 +1,14 @@ import { ARTIFACT_OBJECT, GRAPHQL_QUERY_OBJECT, TASK_OBJECT } from "@/config/constants"; -import ArtifactsDetails from "@/entities/artifacts/object-item-details-paginated"; -import ObjectItemDetails from "@/entities/objects/object-item-details/object-item-details-paginated"; -import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import ArtifactsDetails from "@/entities/artifacts/ui/artifact-details"; +import ObjectItemDetails from "@/entities/nodes/object-item-details/object-item-details-paginated"; +import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import LoadingScreen from "@/shared/components/loading-screen"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Navigate, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/objects/object-items.tsx b/frontend/app/src/pages/objects/object-items.tsx index af4189e9da..243781e3a4 100644 --- a/frontend/app/src/pages/objects/object-items.tsx +++ b/frontend/app/src/pages/objects/object-items.tsx @@ -1,4 +1,4 @@ -import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/pages/profile.tsx b/frontend/app/src/pages/profile.tsx index f468053274..d4aa8b5c21 100644 --- a/frontend/app/src/pages/profile.tsx +++ b/frontend/app/src/pages/profile.tsx @@ -1,6 +1,6 @@ +import { useAuth } from "@/entities/authentication/useAuth"; import { UserProfilePage } from "@/entities/user-profile/user-profile"; import { constructPath } from "@/shared/api/rest/fetch"; -import { useAuth } from "@/shared/hooks/useAuth"; import { Navigate } from "react-router-dom"; export function Component() { diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index df2909b3be..76872d0a3c 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -4,15 +4,16 @@ import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; import { Checks } from "@/entities/diff/checks/checks"; import { NodeDiff } from "@/entities/diff/node-diff"; import { GET_PROPOSED_CHANGE_DETAILS } from "@/entities/proposed-changes/api/getProposedChangesDetails"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Tabs } from "@/shared/components/tabs"; -import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; import { ProposedChangesChecksTab } from "@/entities/proposed-changes/checks-tab"; import { ProposedChangeDetails } from "@/entities/proposed-changes/proposed-change-details"; import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import { TaskItemDetails } from "@/entities/tasks/task-item-details"; import { TaskItems } from "@/entities/tasks/task-items"; import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; @@ -23,7 +24,6 @@ import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Badge } from "@/shared/components/ui/badge"; -import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { Link, useLocation, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/proposed-changes/new.tsx b/frontend/app/src/pages/proposed-changes/new.tsx index 19e1b38ed8..59cd98a12e 100644 --- a/frontend/app/src/pages/proposed-changes/new.tsx +++ b/frontend/app/src/pages/proposed-changes/new.tsx @@ -2,12 +2,12 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; import { getPermission } from "@/entities/permission/utils"; import { ProposedChangeCreateForm } from "@/entities/proposed-changes/create-form"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { Card } from "@/shared/components/ui/card"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; function ProposedChangeCreatePage() { diff --git a/frontend/app/src/pages/resource-manager/index.tsx b/frontend/app/src/pages/resource-manager/index.tsx index 83ebe99d2e..767bb939ce 100644 --- a/frontend/app/src/pages/resource-manager/index.tsx +++ b/frontend/app/src/pages/resource-manager/index.tsx @@ -1,5 +1,5 @@ -import ObjectHeader from "@/entities/objects/object-header"; -import ObjectItems from "@/entities/objects/object-items/object-items-paginated"; +import ObjectHeader from "@/entities/nodes/object-header"; +import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; import { genericsState } from "@/entities/schema/schema.atom"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx index ee47cd2765..8c978086c8 100644 --- a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx @@ -1,7 +1,8 @@ import { QSP } from "@/config/qsp"; -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { RESOURCE_POOL_ALLOCATED_KIND } from "@/entities/resource-manager/constants"; import { GET_RESOURCE_POOL_ALLOCATED } from "@/entities/resource-manager/graphql/resource-pool"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Skeleton } from "@/shared/components/skeleton"; @@ -9,7 +10,6 @@ import { Table } from "@/shared/components/table/table"; import { Badge } from "@/shared/components/ui/badge"; import { Card } from "@/shared/components/ui/card"; import { Pagination } from "@/shared/components/ui/pagination"; -import useQuery from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { Link, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx index 3ca54f5051..a6531dfb28 100644 --- a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx @@ -1,6 +1,7 @@ import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; -import { ObjectAttributeValue } from "@/entities/objects/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import ResourcePoolUtilization from "@/entities/resource-manager/common/ResourcePoolUtilization"; import { RESOURCE_GENERIC_KIND, @@ -23,7 +24,6 @@ import { Property, PropertyList } from "@/shared/components/table/property-list" import { Badge } from "@/shared/components/ui/badge"; import { Card, CardWithBorder } from "@/shared/components/ui/card"; import { Link } from "@/shared/components/ui/link"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; import { useQuery } from "@apollo/client"; import { useAtomValue } from "jotai"; import { Outlet, useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index d73ddc4736..6727f34185 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -1,10 +1,10 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { Outlet } from "react-router-dom"; import { RoleManagementNavigation } from "../../entities/role-manager"; diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index dfcf8f5cd5..69c926f3c8 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,12 +1,12 @@ import { TASK_OBJECT } from "@/config/constants"; import { getTaskItemDetailsTitle } from "@/entities/tasks/api/getTasksItemDetailsTitle"; import { TaskItemDetails } from "@/entities/tasks/task-item-details"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { Link } from "@/shared/components/ui/link"; -import useQuery from "@/shared/hooks/useQuery"; import { useTitle } from "@/shared/hooks/useTitle"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx index d0b2df89e9..2f69470a3c 100644 --- a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx +++ b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; +import { getNewToken } from "@/entities/authentication/useAuth"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { getNewToken } from "@/shared/hooks/useAuth"; import { ApolloClient, DefaultOptions, diff --git a/frontend/app/src/shared/hooks/useQuery.ts b/frontend/app/src/shared/api/graphql/useQuery.ts similarity index 97% rename from frontend/app/src/shared/hooks/useQuery.ts rename to frontend/app/src/shared/api/graphql/useQuery.ts index c4157dc664..fa54ffb772 100644 --- a/frontend/app/src/shared/hooks/useQuery.ts +++ b/frontend/app/src/shared/api/graphql/useQuery.ts @@ -10,7 +10,7 @@ import { useSubscription as useApolloSubscription, } from "@apollo/client"; import { useAtomValue } from "jotai"; -import usePagination from "./usePagination"; +import usePagination from "../../hooks/usePagination"; interface Options extends OperationVariables { branch?: string; diff --git a/frontend/app/src/shared/api/rest/client.ts b/frontend/app/src/shared/api/rest/client.ts index dd1c486bd8..f4090b97a1 100644 --- a/frontend/app/src/shared/api/rest/client.ts +++ b/frontend/app/src/shared/api/rest/client.ts @@ -4,8 +4,8 @@ import createClient, { Middleware } from "openapi-fetch"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; +import { getNewToken } from "@/entities/authentication/useAuth"; import type { paths } from "@/shared/api/rest/types.generated"; -import { getNewToken } from "@/shared/hooks/useAuth"; export const queryClient = new QueryClient({ defaultOptions: { diff --git a/frontend/app/src/shared/api/rest/types.generated.ts b/frontend/app/src/shared/api/rest/types.generated.ts index 5ffaf4aded..4a09371107 100644 --- a/frontend/app/src/shared/api/rest/types.generated.ts +++ b/frontend/app/src/shared/api/rest/types.generated.ts @@ -525,7 +525,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if objects of this kind should be included in the menu. + * @description Defines if nodes of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -639,7 +639,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if objects of this kind should be included in the menu. + * @description Defines if nodes of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -762,7 +762,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if objects of this kind should be included in the menu. + * @description Defines if nodes of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1240,7 +1240,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if objects of this kind should be included in the menu. + * @description Defines if nodes of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1469,7 +1469,7 @@ export interface components { permissions?: string[]; /** * Children - * @description Child objects + * @description Child nodes */ children?: components["schemas"]["MenuItemList"][]; }; @@ -1545,7 +1545,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if objects of this kind should be included in the menu. + * @description Defines if nodes of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1669,7 +1669,7 @@ export interface components { name: string; /** * Peer - * @description Type (kind) of objects supported on the other end of the relationship. + * @description Type (kind) of nodes supported on the other end of the relationship. */ peer: string; /** @@ -1693,19 +1693,19 @@ export interface components { */ identifier?: string | null; /** - * @description Defines how many objects are expected on the other side of the relationship. + * @description Defines how many nodes are expected on the other side of the relationship. * @default many */ cardinality: components["schemas"]["RelationshipCardinality"]; /** * Min Count - * @description Defines the minimum objects allowed on the other side of the relationship. + * @description Defines the minimum nodes allowed on the other side of the relationship. * @default 0 */ min_count: number; /** * Max Count - * @description Defines the maximum objects allowed on the other side of the relationship. + * @description Defines the maximum nodes allowed on the other side of the relationship. * @default 0 */ max_count: number; diff --git a/frontend/app/src/shared/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx index cf2f22edf1..f6f0061745 100644 --- a/frontend/app/src/shared/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -5,6 +5,7 @@ import { INFRAHUB_SWAGGER_DOC_URL, } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; import { getProfileDetails } from "@/entities/user-profile/api/getProfileDetails"; import { constructPath } from "@/shared/api/rest/fetch"; @@ -20,7 +21,6 @@ import { DropdownMenuItem, DropdownMenuTrigger, } from "@/shared/components/ui/dropdown-menu"; -import { useAuth } from "@/shared/hooks/useAuth"; import { gql, useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx index c4ffe6271b..6651a677d9 100644 --- a/frontend/app/src/shared/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -8,6 +8,7 @@ import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; import { StringParam, useQueryParam } from "use-query-params"; +import { useAuth } from "@/entities/authentication/useAuth"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ComboboxItem } from "@/shared/components/ui/combobox"; @@ -18,7 +19,6 @@ import { CommandItem, CommandList, } from "@/shared/components/ui/command"; -import { useAuth } from "@/shared/hooks/useAuth"; import { useCommandState } from "cmdk"; import { Button, ButtonWithTooltip, LinkButton } from "./buttons/button-primitive"; import BranchCreateForm from "./form/branch-create-form"; diff --git a/frontend/app/src/shared/components/conversations/add-comment.tsx b/frontend/app/src/shared/components/conversations/add-comment.tsx index 6b2340e82b..31fe813bbe 100644 --- a/frontend/app/src/shared/components/conversations/add-comment.tsx +++ b/frontend/app/src/shared/components/conversations/add-comment.tsx @@ -1,9 +1,9 @@ +import { useAuth } from "@/entities/authentication/useAuth"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import TextareaField from "@/shared/components/form/fields/textarea.field"; import { isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormRef, FormSubmit } from "@/shared/components/ui/form"; -import { useAuth } from "@/shared/hooks/useAuth"; import { ReactElement, forwardRef } from "react"; import { useLocation } from "react-router-dom"; diff --git a/frontend/app/src/shared/components/conversations/thread.tsx b/frontend/app/src/shared/components/conversations/thread.tsx index 238e5fa26b..5ba3f1ee3d 100644 --- a/frontend/app/src/shared/components/conversations/thread.tsx +++ b/frontend/app/src/shared/components/conversations/thread.tsx @@ -1,19 +1,19 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { getThreadTitle } from "@/entities/diff/diff"; -import { createObject } from "@/entities/objects/api/createObject"; -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; import { getPermission } from "@/entities/permission/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button"; import { Checkbox } from "@/shared/components/inputs/checkbox"; import ModalConfirm from "@/shared/components/modals/modal-confirm"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { Card } from "@/shared/components/ui/card"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import { useAuth } from "@/shared/hooks/useAuth"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/shared/components/display/properties-popover.tsx b/frontend/app/src/shared/components/display/properties-popover.tsx index 29ba6dc429..12fad7abd6 100644 --- a/frontend/app/src/shared/components/display/properties-popover.tsx +++ b/frontend/app/src/shared/components/display/properties-popover.tsx @@ -1,5 +1,5 @@ -import ObjectItemMetaEdit from "@/entities/objects/object-item-meta-edit/object-item-meta-edit"; -import { metaEditFieldDetailsState } from "@/entities/objects/showMetaEdit.atom"; +import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; +import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; import { Permission } from "@/entities/permission/types"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts index c4661fdc6c..776612f9f1 100644 --- a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts +++ b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts @@ -4,7 +4,7 @@ import { RelationshipManyType, RelationshipOneType, RelationshipType, -} from "@/entities/objects/getObjectItemDisplayValue"; +} from "@/entities/nodes/getObjectItemDisplayValue"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { Filter } from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/shared/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx index ab8396145e..3a98ce734c 100644 --- a/frontend/app/src/shared/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -2,12 +2,12 @@ import { QSP } from "@/config/qsp"; import { BRANCH_CREATE } from "@/entities/branches/api/createBranch"; import { branchesState } from "@/entities/branches/branches.atom"; import { Branch } from "@/shared/api/graphql/generated/graphql"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; import InputField from "@/shared/components/form/fields/input.field"; import { isMinLength, isRequired } from "@/shared/components/form/utils/validation"; import { Form, FormSubmit } from "@/shared/components/ui/form"; -import { useMutation } from "@/shared/hooks/useQuery"; import { useAtom } from "jotai"; import { StringParam, useQueryParam } from "use-query-params"; diff --git a/frontend/app/src/shared/components/form/fields/common.tsx b/frontend/app/src/shared/components/form/fields/common.tsx index 701f08b80e..db4412b473 100644 --- a/frontend/app/src/shared/components/form/fields/common.tsx +++ b/frontend/app/src/shared/components/form/fields/common.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; import { QuestionMark } from "@/shared/components/display/question-mark"; import { AttributeValueFromProfile, diff --git a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx index 32a914eae2..439a4ebf29 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-hierarchical.field.tsx @@ -1,8 +1,8 @@ -import { RelationshipNode } from "@/entities/objects/relationships/domain/types"; +import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { RelationshipHierarchicalInput, RelationshipHierarchicalManyInput, -} from "@/entities/objects/relationships/ui/relationship-hierarchical-input"; +} from "@/entities/nodes/relationships/ui/relationship-hierarchical-input"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { diff --git a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx index 787e598e02..1f0f43b71d 100644 --- a/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship-many.field.tsx @@ -5,7 +5,7 @@ import { } from "@/shared/components/form/type"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { updateRelationshipFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; import { RelationshipManyInput } from "@/shared/components/inputs/relationship-many"; diff --git a/frontend/app/src/shared/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx index f418403db1..bf19dc5386 100644 --- a/frontend/app/src/shared/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,6 +1,7 @@ -import { getRelationshipParent } from "@/entities/objects/api/getRelationshipParent"; -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { getRelationshipParent } from "@/entities/nodes/api/getRelationshipParent"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { DynamicRelationshipFieldProps, @@ -18,7 +19,6 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import { FormField, FormInput, FormMessage } from "@/shared/components/ui/form"; -import useQuery from "@/shared/hooks/useQuery"; import { store } from "@/shared/stores"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/components/form/generic-selector.tsx b/frontend/app/src/shared/components/form/generic-selector.tsx index d8df8b4f5c..e142aefcee 100644 --- a/frontend/app/src/shared/components/form/generic-selector.tsx +++ b/frontend/app/src/shared/components/form/generic-selector.tsx @@ -3,6 +3,8 @@ import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObje import { PermissionData } from "@/entities/permission/types"; import { getPermission } from "@/entities/permission/utils"; import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { useSchema } from "@/entities/schema/useSchema"; +import useQuery from "@/shared/api/graphql/useQuery"; import LoadingScreen from "@/shared/components/loading-screen"; import { Badge } from "@/shared/components/ui/badge"; import { @@ -14,8 +16,6 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import Label from "@/shared/components/ui/label"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId, useState } from "react"; diff --git a/frontend/app/src/shared/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx index 5c4e4065d7..a698c756c8 100644 --- a/frontend/app/src/shared/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,13 +1,15 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; +import { useAuth } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { createObject } from "@/entities/objects/api/createObject"; -import { GET_FORM_REQUIREMENTS } from "@/entities/objects/api/getFormRequirements"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { createObject } from "@/entities/nodes/api/createObject"; +import { GET_FORM_REQUIREMENTS } from "@/entities/nodes/api/getFormRequirements"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { NUMBER_POOL_KIND } from "@/entities/resource-manager/constants"; import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; import { CREATE_ACCOUNT_TOKEN } from "@/entities/user-profile/api/createAccountToken"; import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; +import useQuery from "@/shared/api/graphql/useQuery"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicFieldProps, FormFieldValue, NumberPoolData } from "@/shared/components/form/type"; @@ -15,9 +17,7 @@ import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormF import { getCreateMutationFromFormData } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData"; import LoadingScreen from "@/shared/components/loading-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { useAuth } from "@/shared/hooks/useAuth"; import useFilters from "@/shared/hooks/useFilters"; -import useQuery from "@/shared/hooks/useQuery"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { classNames } from "@/shared/utils/common"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx index d5cf67bb63..c2034635a2 100644 --- a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx @@ -1,4 +1,4 @@ -import ObjectItemEditComponent from "@/entities/objects/object-item-edit/object-item-edit-paginated"; +import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { Permission } from "@/entities/permission/types"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/form/object-form.tsx b/frontend/app/src/shared/components/form/object-form.tsx index 367c5f5815..58343577f5 100644 --- a/frontend/app/src/shared/components/form/object-form.tsx +++ b/frontend/app/src/shared/components/form/object-form.tsx @@ -8,20 +8,20 @@ import { READONLY_REPOSITORY_KIND, REPOSITORY_KIND, } from "@/config/constants"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { NumberPoolForm } from "@/entities/resource-manager/number-pool-form"; import { AccountForm } from "@/entities/role-manager/account-form"; import { AccountGroupForm } from "@/entities/role-manager/account-group-form"; import { AccountRoleForm } from "@/entities/role-manager/account-role-form"; import { GlobalPermissionForm } from "@/entities/role-manager/global-permissions-form"; import { ObjectPermissionForm } from "@/entities/role-manager/object-permissions-form"; +import { useSchema } from "@/entities/schema/useSchema"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; import { NodeForm, NodeFormSubmitParams } from "@/shared/components/form/node-form"; import { NodeWithProfileForm } from "@/shared/components/form/node-with-profile-form"; import LoadingScreen from "@/shared/components/loading-screen"; -import { useSchema } from "@/shared/hooks/useSchema"; import { Suspense, lazy } from "react"; export type ProfileData = { diff --git a/frontend/app/src/shared/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx index 693e9b5b99..235f2fa82a 100644 --- a/frontend/app/src/shared/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,11 +1,11 @@ -import { getProfiles } from "@/entities/objects/api/getProfiles"; -import { getObjectAttributes } from "@/entities/objects/object-items/getSchemaObjectColumns"; +import { getProfiles } from "@/entities/nodes/api/getProfiles"; +import { getObjectAttributes } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { genericsState, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; +import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; import { MultiCombobox } from "@/shared/components/ui/combobox-legacy"; import Label from "@/shared/components/ui/label"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; import { useAtomValue } from "jotai/index"; import { useId } from "react"; diff --git a/frontend/app/src/shared/components/form/type.ts b/frontend/app/src/shared/components/form/type.ts index 3dba5f2cbb..cb9f045130 100644 --- a/frontend/app/src/shared/components/form/type.ts +++ b/frontend/app/src/shared/components/form/type.ts @@ -1,5 +1,5 @@ -import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; -import { Node } from "@/entities/objects/getObjectItemDisplayValue"; +import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; +import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; diff --git a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts index dc97a7fee8..34131d92a1 100644 --- a/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.ts @@ -1,4 +1,4 @@ -import { AttributeType, FieldSchema } from "@/entities/objects/getObjectItemDisplayValue"; +import { AttributeType, FieldSchema } from "@/entities/nodes/getObjectItemDisplayValue"; import { LineageSource } from "@/shared/api/graphql/generated/graphql"; import { ProfileData } from "@/shared/components/form/object-form"; import { diff --git a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts index af7d67cc8d..e7dc8c86f2 100644 --- a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts +++ b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts @@ -1,6 +1,7 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { SchemaAttributeType } from "@/entities/objects/edit-form-hook/dynamic-control-types"; -import { AttributeType, RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AuthContextType } from "@/entities/authentication/useAuth"; +import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; +import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { ProfileData } from "@/shared/components/form/object-form"; import { @@ -19,7 +20,6 @@ import { getRelationshipParent } from "@/shared/components/form/utils/getRelatio import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { isFieldDisabled } from "@/shared/components/form/utils/isFieldDisabled"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { AuthContextType } from "@/shared/hooks/useAuth"; import { sortByOrderWeight } from "@/shared/utils/common"; type GetFormFieldsFromSchema = { diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts index 43b72e88c0..e9186fed39 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts @@ -1,4 +1,4 @@ -import { RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; import { schemaState } from "@/entities/schema/schema.atom"; import { FormRelationshipValue } from "@/shared/components/form/type"; diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts index e8495debda..c65e406f5d 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipParent.ts @@ -1,4 +1,4 @@ -import { RelationshipType } from "@/entities/objects/getObjectItemDisplayValue"; +import { RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; export const getRelationshipParent = (relationshipData: RelationshipType | undefined) => { if (!relationshipData) return undefined; diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts index 4e3c69f009..39a014729a 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.ts @@ -1,5 +1,5 @@ import { relationshipKindForForm } from "@/config/constants"; -import { RelationshipKind } from "@/entities/objects/types"; +import { RelationshipKind } from "@/entities/nodes/types"; import { components } from "@/shared/api/rest/types.generated"; export const getRelationshipsForForm = ( diff --git a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts index e2447546b8..af740b1d29 100644 --- a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts @@ -1,7 +1,7 @@ +import { AuthContextType } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { PermissionDecisionData } from "@/entities/permission/types"; import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; -import { AuthContextType } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; export type IsFieldDisabledParams = { diff --git a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts index b9df19457c..e62311d8e9 100644 --- a/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.ts @@ -1,4 +1,4 @@ -import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; import { DynamicFieldProps, FormFieldValue, diff --git a/frontend/app/src/shared/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx index 18cece1d0c..88bf73c6e6 100644 --- a/frontend/app/src/shared/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,6 +1,7 @@ import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION } from "@/entities/schema/api/dropdown"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; @@ -16,7 +17,6 @@ import { ComboboxTrigger, } from "@/shared/components/ui/combobox"; import { CommandItem } from "@/shared/components/ui/command"; -import { useMutation } from "@/shared/hooks/useQuery"; import { classNames, getTextColor } from "@/shared/utils/common"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, HTMLAttributes, useState } from "react"; diff --git a/frontend/app/src/shared/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx index 8f8e27c511..90077115b4 100644 --- a/frontend/app/src/shared/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,6 +1,7 @@ import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/entities/schema/api/enum"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; +import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import DynamicForm from "@/shared/components/form/dynamic-form"; @@ -14,7 +15,6 @@ import { ComboboxList, ComboboxTrigger, } from "@/shared/components/ui/combobox"; -import { useMutation } from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import React, { forwardRef, useState } from "react"; diff --git a/frontend/app/src/shared/components/inputs/relationship-many.tsx b/frontend/app/src/shared/components/inputs/relationship-many.tsx index ded60fb563..653744f226 100644 --- a/frontend/app/src/shared/components/inputs/relationship-many.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-many.tsx @@ -1,6 +1,7 @@ -import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; -import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; -import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; +import { generateRelationshipListQuery } from "@/entities/nodes/api/generateRelationshipListQuery"; +import { Node, RelationshipManyType } from "@/entities/nodes/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action"; +import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; import { @@ -14,7 +15,6 @@ import { PopoverTrigger } from "@/shared/components/ui/popover"; import { Spinner } from "@/shared/components/ui/spinner"; import { inputStyle } from "@/shared/components/ui/style"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import { useLazyQuery } from "@/shared/hooks/useQuery"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx index 24ad309f37..7883821f2f 100644 --- a/frontend/app/src/shared/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -1,8 +1,10 @@ import { POOLS_DICTIONNARY, POOLS_PEER } from "@/entities/ipam/constants"; -import { getDropdownOptions } from "@/entities/objects/api/dropdownOptions"; -import { generateRelationshipListQuery } from "@/entities/objects/api/generateRelationshipListQuery"; -import { Node, RelationshipManyType } from "@/entities/objects/getObjectItemDisplayValue"; -import { AddRelationshipAction } from "@/entities/objects/relationships/ui/add-relationship-action"; +import { getDropdownOptions } from "@/entities/nodes/api/dropdownOptions"; +import { generateRelationshipListQuery } from "@/entities/nodes/api/generateRelationshipListQuery"; +import { Node, RelationshipManyType } from "@/entities/nodes/getObjectItemDisplayValue"; +import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action"; +import { useSchema } from "@/entities/schema/useSchema"; +import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { PoolValue } from "@/shared/components/form/pool-selector"; import { @@ -16,8 +18,6 @@ import { import { PopoverTrigger } from "@/shared/components/ui/popover"; import { Spinner } from "@/shared/components/ui/spinner"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import { useLazyQuery } from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { classNames } from "@/shared/utils/common"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx index deb72e2b2d..00d2eb2cb3 100644 --- a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx @@ -1,9 +1,9 @@ -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; import { IModelSchema } from "@/entities/schema/schema.atom"; +import { useSchema } from "@/entities/schema/useSchema"; import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; -import { useSchema } from "@/shared/hooks/useSchema"; import { NetworkStatus } from "@apollo/client"; export default function BreadcrumbObjectSelector({ diff --git a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx index 3d370acd47..145d993182 100644 --- a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx @@ -1,10 +1,10 @@ import { PROFILE_KIND } from "@/config/constants"; -import { getObjectDetailsUrl2 } from "@/entities/objects/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { useSchema } from "@/entities/schema/useSchema"; import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { breadcrumbActiveStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; import { BreadcrumbSeparator } from "@/shared/components/ui/breadcrumb"; -import { useSchema } from "@/shared/hooks/useSchema"; import { classNames } from "@/shared/utils/common"; interface BreadcrumbSchemaSelectorProps { diff --git a/frontend/app/src/shared/components/layout/tasks-status.tsx b/frontend/app/src/shared/components/layout/tasks-status.tsx index ac1349b9f7..61998e31f8 100644 --- a/frontend/app/src/shared/components/layout/tasks-status.tsx +++ b/frontend/app/src/shared/components/layout/tasks-status.tsx @@ -3,12 +3,12 @@ import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; import { TASKS_STATUS } from "@/entities/tasks/api/getTasksStatus"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; import { Pulse } from "@/shared/components/ui/pulse"; import { Spinner } from "@/shared/components/ui/spinner"; import { Tooltip } from "@/shared/components/ui/tooltip"; -import useQuery from "@/shared/hooks/useQuery"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/shared/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx index 910adbd99c..ef16ee2263 100644 --- a/frontend/app/src/shared/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { deleteObject } from "@/entities/objects/api/deleteObject"; +import { deleteObject } from "@/entities/nodes/api/deleteObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; diff --git a/frontend/app/src/shared/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx index 31fcaf40e9..98c4222de2 100644 --- a/frontend/app/src/shared/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,17 +1,17 @@ import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; import { POOLS_PEER } from "@/entities/ipam/constants"; -import { SEARCH } from "@/entities/objects/api/search"; -import { getSchemaObjectColumns } from "@/entities/objects/object-items/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/entities/objects/objects"; +import { SEARCH } from "@/entities/nodes/api/search"; +import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; +import { getObjectDetailsUrl } from "@/entities/nodes/objects"; +import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; +import { useSchema } from "@/entities/schema/useSchema"; +import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; import { SearchAnywhereItem } from "@/shared/components/search/search-anywhere-item"; import { Skeleton } from "@/shared/components/skeleton"; import { Badge } from "@/shared/components/ui/badge"; import { useDebounce } from "@/shared/hooks/useDebounce"; -import { useObjectDetails } from "@/shared/hooks/useObjectDetails"; -import useQuery from "@/shared/hooks/useQuery"; -import { useSchema } from "@/shared/hooks/useSchema"; import { Icon } from "@iconify-icon/react"; import { Command, useCommandState } from "cmdk"; import { format } from "date-fns"; diff --git a/frontend/app/src/shared/components/ui/id.tsx b/frontend/app/src/shared/components/ui/id.tsx index e6ed82c4a9..be5f3c61ac 100644 --- a/frontend/app/src/shared/components/ui/id.tsx +++ b/frontend/app/src/shared/components/ui/id.tsx @@ -1,9 +1,9 @@ import { NODE_OBJECT } from "@/config/constants"; -import { getObjectDisplayLabel } from "@/entities/objects/api/getObjectDisplayLabel"; +import { getObjectDisplayLabel } from "@/entities/nodes/api/getObjectDisplayLabel"; +import useQuery from "@/shared/api/graphql/useQuery"; import { Clipboard } from "@/shared/components/buttons/clipboard"; import { BadgeCircle, CIRCLE_BADGE_TYPES } from "@/shared/components/display/badge-circle"; import LoadingScreen from "@/shared/components/loading-screen"; -import useQuery from "@/shared/hooks/useQuery"; import { gql } from "@apollo/client"; type tId = { diff --git a/frontend/app/tests/e2e/form/select-2-steps.spec.ts b/frontend/app/tests/e2e/form/select-2-steps.spec.ts index 066c8c8eed..08acecb90c 100644 --- a/frontend/app/tests/e2e/form/select-2-steps.spec.ts +++ b/frontend/app/tests/e2e/form/select-2-steps.spec.ts @@ -18,7 +18,7 @@ test.describe("Verifies the object creation", () => { }); }); - test.fixme("creates and verifies the objects values", async ({ page }) => { + test.fixme("creates and verifies the nodes values", async ({ page }) => { await test.step("creates the object", async () => { await Promise.all([ page.waitForResponse((response) => { diff --git a/frontend/app/tests/e2e/groups/groups.spec.ts b/frontend/app/tests/e2e/groups/groups.spec.ts index d0926ef1ed..446d55ba25 100644 --- a/frontend/app/tests/e2e/groups/groups.spec.ts +++ b/frontend/app/tests/e2e/groups/groups.spec.ts @@ -2,7 +2,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; import { saveScreenshotForDocs } from "../../utils"; -test.describe("/objects/CoreGroup - Generic Group Object.", () => { +test.describe("/nodes/CoreGroup - Generic Group Object.", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts index 89153ae9cd..426e20c72c 100644 --- a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts +++ b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../../constants"; -test.describe("/objects/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details page", () => { +test.describe("/nodes/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); @@ -90,7 +90,7 @@ test.describe("/objects/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details .getByTestId("breadcrumb-navigation") .getByRole("link", { name: "GraphQL Query" }) .click(); - expect(page.url()).toContain("/objects/CoreGraphQLQuery"); + expect(page.url()).toContain("/nodes/CoreGraphQLQuery"); }); }); diff --git a/frontend/app/tests/e2e/objects/artifact-definition.spec.ts b/frontend/app/tests/e2e/objects/artifact-definition.spec.ts index 4e46d6c6e4..e12af08ef9 100644 --- a/frontend/app/tests/e2e/objects/artifact-definition.spec.ts +++ b/frontend/app/tests/e2e/objects/artifact-definition.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/objects/CoreArtifactDefinition - Artifact Definition page", () => { +test.describe("/nodes/CoreArtifactDefinition - Artifact Definition page", () => { test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); test.beforeEach(async function ({ page }) { diff --git a/frontend/app/tests/e2e/objects/artifact.spec.ts b/frontend/app/tests/e2e/objects/artifact.spec.ts index b2397c5706..b5edb74786 100644 --- a/frontend/app/tests/e2e/objects/artifact.spec.ts +++ b/frontend/app/tests/e2e/objects/artifact.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/objects/CoreArtifact - Artifact page", () => { +test.describe("/nodes/CoreArtifact - Artifact page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/object-details.spec.ts b/frontend/app/tests/e2e/objects/object-details.spec.ts index 14034cd409..9b0aef9dd2 100644 --- a/frontend/app/tests/e2e/objects/object-details.spec.ts +++ b/frontend/app/tests/e2e/objects/object-details.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/objects/:objectKind/:objectid", () => { +test.describe("/nodes/:objectKind/:objectid", () => { test.beforeEach(async function ({ page }) { page.on("response", async (response) => { if (response.status() === 500) { diff --git a/frontend/app/tests/e2e/objects/object-filters.spec.ts b/frontend/app/tests/e2e/objects/object-filters.spec.ts index a67c9398e1..dcf49f9d0b 100644 --- a/frontend/app/tests/e2e/objects/object-filters.spec.ts +++ b/frontend/app/tests/e2e/objects/object-filters.spec.ts @@ -12,15 +12,15 @@ test.describe("Object filters", () => { }); }); - test("should filter the objects list", async ({ page }) => { - await test.step("access objects list and verify initial state", async () => { + test("should filter the nodes list", async ({ page }) => { + await test.step("access nodes list and verify initial state", async () => { await page.goto("/objects/InfraDevice"); await expect(page.getByText("Just a moment")).not.toBeVisible(); await expect(page.getByTestId("object-items")).toContainText("Filters: 0"); await expect(page.getByTestId("object-items")).toContainText("Showing 1 to 10 of 30 results"); }); - await test.step("start filtering objects", async () => { + await test.step("start filtering nodes", async () => { await test.step("select filters", async () => { await page.getByTestId("apply-filters").click(); await page.getByLabel("Role").click(); @@ -75,7 +75,7 @@ test.describe("Object filters", () => { await expect(page.getByRole("link", { name: "Connected to jfk1-edge2" })).toBeHidden(); }); - test("should correctly display the filters with hierarchical dropdown pointing to any objects", async ({ + test("should correctly display the filters with hierarchical dropdown pointing to any nodes", async ({ page, }) => { await page.goto("/objects/CoreArtifact"); @@ -97,7 +97,7 @@ test.describe("Object filters", () => { await expect(page.getByText("Select an object type")).not.toBeVisible(); }); - await test.step("filter objects", async () => { + await test.step("filter nodes", async () => { await page.getByLabel("kind").click(); await page.getByRole("option", { name: "Interface L2 Infra", exact: true }).click(); await page.getByRole("button", { name: "Apply filters" }).click(); diff --git a/frontend/app/tests/e2e/objects/object-list.spec.ts b/frontend/app/tests/e2e/objects/object-list.spec.ts index ed715e85d7..a791694fb6 100644 --- a/frontend/app/tests/e2e/objects/object-list.spec.ts +++ b/frontend/app/tests/e2e/objects/object-list.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/objects/:objectKind", () => { +test.describe("/nodes/:objectKind", () => { test.beforeEach(async function ({ page }) { page.on("response", async (response) => { if (response.status() === 500) { @@ -16,7 +16,7 @@ test.describe("/objects/:objectKind", () => { await expect(page.getByRole("heading", { name: "Tag" })).toBeVisible(); await expect( - page.getByText("Standard Tag object to attached to other objects to provide some context.") + page.getByText("Standard Tag object to attached to other nodes to provide some context.") ).toBeVisible(); await expect(page.getByTestId("create-object-button")).toBeDisabled(); await expect(page.getByRole("row", { name: "blue" }).getByRole("button")).toBeDisabled(); @@ -60,7 +60,7 @@ test.describe("/objects/:objectKind", () => { await page.goto("/objects/InfraDevice"); await page.getByRole("link", { name: "Juniper JunOS" }).first().click(); await expect(page.getByText("NameJuniper JunOS")).toBeVisible(); - expect(page.url()).toContain("/objects/InfraPlatform/"); + expect(page.url()).toContain("/nodes/InfraPlatform/"); }); test("should be able to create a new object", async ({ page }) => { diff --git a/frontend/app/tests/e2e/objects/object-relationships.spec.ts b/frontend/app/tests/e2e/objects/object-relationships.spec.ts index 498ce53fda..22d84739d4 100644 --- a/frontend/app/tests/e2e/objects/object-relationships.spec.ts +++ b/frontend/app/tests/e2e/objects/object-relationships.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/objects/:objectKind/:objectid - relationship tab", () => { +test.describe("/nodes/:objectKind/:objectid - relationship tab", () => { // Avoid checking as non-admin + updating as admin at the same time test.describe.configure({ mode: "serial" }); test.slow(); @@ -123,6 +123,6 @@ test.describe("/objects/:objectKind/:objectid - relationship tab", () => { }); await page.getByRole("link", { name: "atl1", exact: true }).first().click(); await expect(page.getByText("Nameatl1")).toBeVisible(); - expect(page.url()).toContain("/objects/LocationSite/"); + expect(page.url()).toContain("/nodes/LocationSite/"); }); }); diff --git a/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts b/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts index 27beab791a..310bdf6d51 100644 --- a/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts +++ b/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../../constants"; -test.describe("/objects/CoreProfile - Profiles page", () => { +test.describe("/nodes/CoreProfile - Profiles page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts index 7233b8a76a..3c656e84b6 100644 --- a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts +++ b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts @@ -4,7 +4,7 @@ import { ACCOUNT_STATE_PATH } from "../../../constants"; const PROFILE_NAME = "Interface L2 profile test"; const GENERIC_PROFILE_NAME = "Generic Interface profile test"; -test.describe("/objects/CoreProfile - Profiles page", () => { +test.describe("/nodes/CoreProfile - Profiles page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); @@ -55,7 +55,7 @@ test.describe("/objects/CoreProfile - Profiles page", () => { .getByTestId("breadcrumb-navigation") .getByRole("link", { name: "Profile", exact: true }) .click(); - expect(page.url()).toContain("/objects/CoreProfile"); + expect(page.url()).toContain("/nodes/CoreProfile"); }); }); @@ -105,7 +105,7 @@ test.describe("/objects/CoreProfile - Profiles page", () => { await test.step("Verify profile link", async () => { await page.getByRole("link", { name: "profile test tag" }).click(); - expect(page.url()).toContain("/objects/ProfileBuiltinTag/"); + expect(page.url()).toContain("/nodes/ProfileBuiltinTag/"); }); }); @@ -179,7 +179,7 @@ test.describe("/objects/CoreProfile - Profiles page", () => { }); }); -test.describe("/objects/CoreProfile - Profile for Interface L2 and fields verification", () => { +test.describe("/nodes/CoreProfile - Profile for Interface L2 and fields verification", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/search.spec.ts b/frontend/app/tests/e2e/search.spec.ts index 7dfffa3713..4338c88c28 100644 --- a/frontend/app/tests/e2e/search.spec.ts +++ b/frontend/app/tests/e2e/search.spec.ts @@ -41,7 +41,7 @@ test.describe("when searching an object", () => { await expect(page.getByTestId("search-anywhere")).toContainText("Go to"); await page.getByRole("option", { name: "Menu Device" }).click(); await expect(page.getByRole("heading", { name: "Device" })).toBeVisible(); - expect(page.url()).toContain("/objects/InfraDevice"); + expect(page.url()).toContain("/nodes/InfraDevice"); }); }); diff --git a/frontend/app/tests/fake/schema.ts b/frontend/app/tests/fake/schema.ts index a55f4ba799..7be1b87bb1 100644 --- a/frontend/app/tests/fake/schema.ts +++ b/frontend/app/tests/fake/schema.ts @@ -8,7 +8,7 @@ export const generateNodeSchema = ( state: "present", name: "Tag", namespace: "Builtin", - description: "Standard Tag object to attached to other objects to provide some context.", + description: "Standard Tag object to attached to other nodes to provide some context.", label: "Tag", branch: "aware", default_filter: "name__value", diff --git a/frontend/app/tests/integrations/screens/account.cy.tsx b/frontend/app/tests/integrations/screens/account.cy.tsx index 205f5c15b0..417637249e 100644 --- a/frontend/app/tests/integrations/screens/account.cy.tsx +++ b/frontend/app/tests/integrations/screens/account.cy.tsx @@ -2,9 +2,9 @@ import { MockedProvider } from "@apollo/client/testing"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; +import { AuthProvider } from "../../../src/entities/authentication/useAuth"; import { genericsState } from "../../../src/entities/schema/schema.atom"; import { AccountMenu } from "../../../src/shared/components/account-menu"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx index eb16090edb..47958cadec 100644 --- a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx +++ b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx @@ -4,11 +4,11 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; +import { AuthProvider } from "../../../src/entities/authentication/useAuth"; import { ArtifactsDiff } from "../../../src/entities/diff/artifact-diff/artifacts-diff"; import { proposedChangedState } from "../../../src/entities/proposed-changes/proposedChanges.atom"; import { schemaState } from "../../../src/entities/schema/schema.atom"; import { withSchemaContext } from "../../../src/entities/schema/withSchemaContext"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx index ff4c5de5fc..7ff2911ad2 100644 --- a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx @@ -3,8 +3,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; +import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { deviceDetailsInterfacesMocksData, deviceDetailsInterfacesMocksQuery, @@ -25,7 +25,7 @@ import { TestProvider } from "../../mocks/jotai/atom"; const graphqlQueryItemsUrl = `/objects/InfraDevice/${deviceDetailsMocksId}`; // Path that will match the route to display the component -const graphqlQueryItemsPath = "/objects/:objectKind/:objectid"; +const graphqlQueryItemsPath = "/nodes/:objectKind/:objectid"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-details.cy.tsx b/frontend/app/tests/integrations/screens/object-details.cy.tsx index 2291f86221..d8ab764725 100644 --- a/frontend/app/tests/integrations/screens/object-details.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details.cy.tsx @@ -3,8 +3,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { deviceDetailsMocksASNName, deviceDetailsMocksData, @@ -22,7 +22,7 @@ import { TestProvider } from "../../mocks/jotai/atom"; const graphqlQueryItemsUrl = `/objects/InfraDevice/${deviceDetailsMocksId}`; // Path that will match the route to display the component -const graphqlQueryItemsPath = "/objects/:objectKind/:objectid"; +const graphqlQueryItemsPath = "/nodes/:objectKind/:objectid"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-fields.cy.tsx b/frontend/app/tests/integrations/screens/object-fields.cy.tsx index 16992b2338..f1314a9d04 100644 --- a/frontend/app/tests/integrations/screens/object-fields.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-fields.cy.tsx @@ -6,7 +6,7 @@ import { schemaState } from "../../../src/entities/schema/schema.atom"; import { gql } from "@apollo/client"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; +import { AuthProvider } from "../../../src/entities/authentication/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { @@ -63,10 +63,10 @@ import { import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/objects/TestTask"; +const mockedUrl = "/nodes/TestTask"; // Path that will match the route to display the component -const mockedPath = "/objects/:objectKind"; +const mockedPath = "/nodes/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index 771badaf43..2274677ed1 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -5,9 +5,9 @@ import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { configState } from "../../../src/config/config.atom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; +import { AuthProvider } from "../../../src/entities/authentication/useAuth"; import { schemaState } from "../../../src/entities/schema/schema.atom"; -import { AuthProvider } from "../../../src/shared/hooks/useAuth"; +import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; import { mockedToken } from "../../fixtures/auth"; import { configMocks } from "../../mocks/data/config"; import { @@ -20,10 +20,10 @@ import { schemaMocks } from "../../mocks/data/schema"; import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/objects/CoreGraphQLQuery"; +const mockedUrl = "/nodes/CoreGraphQLQuery"; // Path that will match the route to display the component -const mockedPath = "/objects/:objectKind"; +const mockedPath = "/nodes/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-items.cy.tsx b/frontend/app/tests/integrations/screens/object-items.cy.tsx index 4fc1bce341..58fc8f617e 100644 --- a/frontend/app/tests/integrations/screens/object-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items.cy.tsx @@ -3,8 +3,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; +import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; import { graphqlQueriesMocksData, graphqlQueriesMocksQuery, @@ -14,10 +14,10 @@ import { schemaMocks } from "../../mocks/data/schema"; import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/objects/CoreGraphQLQuery"; +const mockedUrl = "/nodes/CoreGraphQLQuery"; // Path that will match the route to display the component -const mockedPath = "/objects/:objectKind"; +const mockedPath = "/nodes/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts index 00cec16fe0..3fc9bef541 100644 --- a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts @@ -1,4 +1,4 @@ -import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; import { ProfileData } from "@/shared/components/form/object-form"; import { GetFieldDefaultValue, diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index 1d527bda80..ceaf629c75 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,10 +1,10 @@ +import { AuthContextType } from "@/entities/authentication/useAuth"; import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { AttributeType } from "@/entities/objects/getObjectItemDisplayValue"; +import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; import { IModelSchema } from "@/entities/schema/schema.atom"; import { RelationshipSchema } from "@/entities/schema/types"; import { components } from "@/shared/api/rest/types.generated"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; -import { AuthContextType } from "@/shared/hooks/useAuth"; import { store } from "@/shared/stores"; import { describe, expect, it } from "vitest"; diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts index f9e80641ad..d981554255 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts @@ -1,7 +1,7 @@ import { RelationshipManyType, RelationshipOneType, -} from "@/entities/objects/getObjectItemDisplayValue"; +} from "@/entities/nodes/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts index 6237e87581..a87abf681f 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts @@ -1,5 +1,5 @@ -import { updateObjectWithId } from "@/entities/objects/api/updateObjectWithId"; -import getMutationMetaDetailsFromFormData from "@/entities/objects/object-item-meta-edit/getMutationMetaDetailsFromFormData"; +import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; +import getMutationMetaDetailsFromFormData from "@/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData"; import { stringifyWithoutQuotes } from "@/shared/utils/string"; import { describe, expect, it } from "vitest"; import { diff --git a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts index 3c1fab1f11..647520cf68 100644 --- a/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts +++ b/frontend/app/tests/unit/utils/getSchemaObjectColumns.test.ts @@ -2,7 +2,7 @@ import { getObjectAttributes, getObjectRelationships, getSchemaObjectColumns, -} from "@/entities/objects/object-items/getSchemaObjectColumns"; +} from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { describe, expect, it } from "vitest"; import { C_deviceAttributeColumns, diff --git a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts index cfb93b8da7..d1b5edbe37 100644 --- a/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts +++ b/frontend/app/tests/unit/utils/getStringJSONWithoutQuotes.test.ts @@ -10,7 +10,7 @@ import { } from "../data/jsonSamples"; describe("Convert JSON to JSON without quotes in the key names", () => { - it("should work with nested objects", () => { + it("should work with nested nodes", () => { const output1 = stringifyWithoutQuotes(C_JSON1); expect(output1).toEqual(C_JSON1_OUTPUT); }); From 3720c6380bd9cfa1d8f4173e141b38b4abe2be9c Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Fri, 10 Jan 2025 18:39:28 +0100 Subject: [PATCH 09/25] update --- frontend/app/src/app/app.tsx | 2 +- frontend/app/src/app/router.tsx | 12 ++++----- .../artifacts/ui/artifact-details.tsx | 10 ++++---- .../src/entities/artifacts/ui/generate.tsx | 2 +- .../{ => ui}/login-sso-buttons.tsx | 0 .../authentication/{ => ui}/login.tsx | 4 +-- .../authentication/{ => ui}/useAuth.tsx | 0 .../graphql => api}/getBranchActionState.ts | 0 .../{ => domain}/get-current-branch.test.ts | 6 ++--- .../{ => domain}/get-current-branch.ts | 2 +- .../branches/{branches.atom.ts => stores.ts} | 0 .../branches/{ => ui}/branch-details.tsx | 14 +++++----- .../branch-merge-button.tsx | 4 +-- .../branch-rebase-button.tsx | 4 +-- .../branch-validate-button.tsx | 4 +-- .../branches/{ => ui}/branches-items.tsx | 2 +- .../src/entities/branches/{ => ui}/diff.tsx | 6 ++--- .../branches/{branches.ts => utils.ts} | 0 .../artifact-diff/artifact-content-diff.tsx | 6 ++--- .../diff/artifact-diff/artifact-repo-diff.tsx | 2 +- .../diff/artifact-diff/artifacts-diff.tsx | 2 +- .../app/src/entities/diff/checks/check.tsx | 2 +- .../entities/diff/checks/checks-summary.tsx | 8 +++--- .../app/src/entities/diff/checks/conflict.tsx | 4 +-- frontend/app/src/entities/diff/diff-tree.tsx | 2 +- .../diff/file-diff/file-content-diff.tsx | 6 ++--- .../entities/diff/file-diff/files-diff.tsx | 2 +- .../src/entities/diff/node-diff/comments.tsx | 6 ++--- .../src/entities/diff/node-diff/conflict.tsx | 6 ++--- .../app/src/entities/diff/node-diff/index.tsx | 8 +++--- .../app/src/entities/diff/node-diff/node.tsx | 2 +- .../src/entities/diff/node-diff/thread.tsx | 2 +- .../graphql-query-details-card.tsx | 4 +-- .../graphql-query-details-page-skeleton.tsx | 0 .../graphql-query-viewer-card.tsx | 0 .../src/entities/groups/{ => api}/types.ts | 0 .../entities/groups/api/updateGroupsQuery.ts | 2 +- .../groups/{ => ui}/add-group-form.tsx | 2 +- .../{ => ui}/add-group-trigger-button.tsx | 10 ++++---- .../groups-auto-generated-filter-button.tsx | 0 .../groups-manager-trigger-button.tsx | 4 +-- .../groups/{ => ui}/groups-manager.tsx | 8 +++--- .../groups/{ => ui}/object-groups-list.tsx | 6 ++--- .../entities/ipam/common/ip-details-card.tsx | 4 +-- .../ipam/ip-addresses/ip-address-summary.tsx | 2 +- .../ip-addresses/ipam-ip-address-list.tsx | 2 +- .../entities/ipam/ip-namespace-selector.tsx | 2 +- .../app/src/entities/ipam/ipam-router.tsx | 4 +-- .../ipam/ipam-tree/ipam-tree.state.ts | 2 +- .../src/entities/ipam/ipam-tree/ipam-tree.tsx | 2 +- .../ipam/prefixes/ipam-prefix-details.tsx | 2 +- .../ipam-prefixes-summary-details.tsx | 2 +- .../prefixes/ipam-prefixes-summary-list.tsx | 2 +- .../nodes/getObjectItemDisplayValue.tsx | 2 +- .../src/entities/nodes/hierarchical-tree.tsx | 8 +++--- .../nodes/{ => hooks}/useObjectDetails.ts | 2 +- .../nodes/{ => hooks}/useObjectItems.ts | 2 +- .../app/src/entities/nodes/object-header.tsx | 6 ++--- .../action-buttons/details-buttons.tsx | 6 ++--- .../action-buttons/relationships-buttons.tsx | 2 +- .../object-item-details-paginated.tsx | 12 ++++----- .../relationship-details-paginated.tsx | 10 ++++---- .../relationships-details-paginated.tsx | 2 +- .../generateObjectEditFormQuery.ts | 2 +- .../object-item-edit-paginated.tsx | 4 +-- .../getMutationMetaDetailsFromFormData.ts | 2 +- .../object-item-meta-edit.tsx | 4 +-- .../object-items/getSchemaObjectColumns.ts | 2 +- .../nodes/object-items/object-items-cell.tsx | 2 +- .../object-items/object-items-paginated.tsx | 6 ++--- .../get-relationships.query.ts | 2 +- .../get-relationships.test.ts | 2 +- .../get-relationships/get-relationships.ts | 2 +- ...lect-when-a-relationship-is-selected-1.png | Bin 7173 -> 0 bytes ...sage-when-no-relationships-are-found-1.png | Bin 7173 -> 0 bytes ...isplays-relationships-of-root-schema-1.png | Bin 7173 -> 0 bytes ...hild-relationships-and-selects-child-1.png | Bin 7173 -> 0 bytes ...tiple-levels-of-nested-relationships-1.png | Bin 7173 -> 0 bytes .../ui/add-relationship-action.tsx | 2 +- .../ui/relationship-combobox-list.tsx | 2 +- ...onship-hierarchical-combobox-list.test.tsx | 2 +- ...elationship-hierarchical-combobox-list.tsx | 4 +-- .../{ => stores}/metaEditFieldDetails.atom.ts | 0 .../nodes/{ => stores}/showMetaEdit.atom.ts | 0 .../entities/nodes/{objects.ts => utils.ts} | 2 +- .../{ => stores}/proposedChanges.atom.ts | 0 .../action-button/pc-approve-button.tsx | 4 +-- .../action-button/pc-close-button.tsx | 2 +- .../action-button/pc-merge-button.tsx | 2 +- .../proposed-changes/{ => ui}/checks-tab.tsx | 0 .../proposed-changes/{ => ui}/checks.ts | 0 .../{ => ui}/conversations.tsx | 4 +-- .../proposed-changes/{ => ui}/counter.tsx | 2 +- .../proposed-changes/{ => ui}/create-form.tsx | 8 +++--- .../proposed-changes/{ => ui}/diff-filter.tsx | 0 .../{ => ui}/diff-summary.tsx | 2 +- .../proposed-changes/{ => ui}/item-info.tsx | 0 .../proposed-changes/{ => ui}/items.tsx | 12 ++++----- .../{ => ui}/proposed-change-details.tsx | 24 +++++++++--------- .../proposed-change-edit-form.tsx | 4 +-- .../{ => ui}/proposed-change-edit-trigger.tsx | 8 +++--- .../{ => ui}/proposed-changes.ts | 0 .../proposed-changes/{ => ui}/reviewers.tsx | 0 .../{ => ui}/repository-action-menu.tsx | 0 .../repository/{ => ui}/repository-form.tsx | 4 +-- .../{graphql => api}/resource-pool.ts | 0 .../ResourcePoolUtilization.tsx | 0 .../{ => ui}/number-pool-form.tsx | 4 +-- .../{ => ui}/resource-selector.tsx | 4 +-- .../role-manager/{ => ui}/account-form.tsx | 4 +-- .../{ => ui}/account-group-form.tsx | 4 +-- .../{ => ui}/account-role-form.tsx | 2 +- .../role-manager/{ => ui}/accounts.tsx | 8 +++--- .../{ => ui}/global-permissions-form.tsx | 6 ++--- .../{ => ui}/global-permissions.tsx | 10 ++++---- .../role-manager/{ => ui}/group-member.tsx | 0 .../entities/role-manager/{ => ui}/groups.tsx | 8 +++--- .../entities/role-manager/{ => ui}/index.tsx | 0 .../{ => ui}/object-permissions-form.tsx | 6 ++--- .../{ => ui}/object-permissions.tsx | 10 ++++---- .../{ => ui}/relationship-display.tsx | 0 .../entities/role-manager/{ => ui}/roles.tsx | 8 +++--- .../{ => decorators}/withSchemaContext.tsx | 12 ++++----- .../schema/{ => domain}/get-schema.test.ts | 4 +-- .../schema/{ => domain}/get-schema.ts | 2 +- .../entities/schema/{ => hooks}/useSchema.ts | 2 +- .../schema/{ => stores}/schema.atom.ts | 0 .../{ => stores}/schemaKindLabel.atom.ts | 0 .../{ => stores}/schemaKindName.atom.ts | 0 .../schema/{ => ui}/attribute-display.tsx | 0 .../schema/{ => ui}/relationship-display.tsx | 0 .../schema/{ => ui}/schema-help-menu.tsx | 4 +-- .../schema/{ => ui}/schema-selector.tsx | 2 +- .../schema/{ => ui}/schema-viewer.tsx | 2 +- .../src/entities/schema/{ => ui}/styled.tsx | 0 .../app/src/entities/schema/utils.test.ts | 2 +- frontend/app/src/entities/schema/utils.ts | 2 +- .../app/src/entities/tasks/{ => ui}/logs.tsx | 0 .../{branches => tasks/ui}/task-display.tsx | 4 +-- .../tasks/{ => ui}/task-item-details.tsx | 0 .../entities/tasks/{ => ui}/task-items.tsx | 0 .../user-profile/{ => ui}/tab-profile.tsx | 4 +-- .../user-profile/{ => ui}/tab-tokens.tsx | 4 +-- .../{ => ui}/tab-update-password.tsx | 0 .../user-profile/{ => ui}/token-schema.ts | 0 .../user-profile/{ => ui}/user-profile.tsx | 2 +- frontend/app/src/pages/auth-callback.tsx | 2 +- frontend/app/src/pages/branches/details.tsx | 4 +-- frontend/app/src/pages/branches/index.tsx | 2 +- frontend/app/src/pages/graphql/index.tsx | 2 +- frontend/app/src/pages/login.tsx | 4 +-- .../graphql-query-details.tsx | 8 +++--- frontend/app/src/pages/objects/layout.tsx | 2 +- .../app/src/pages/objects/object-details.tsx | 4 +-- .../app/src/pages/objects/object-items.tsx | 2 +- frontend/app/src/pages/profile.tsx | 4 +-- .../src/pages/proposed-changes/details.tsx | 14 +++++----- .../app/src/pages/proposed-changes/items.tsx | 2 +- .../app/src/pages/proposed-changes/new.tsx | 2 +- .../app/src/pages/resource-manager/index.tsx | 2 +- .../resource-allocation-details.tsx | 4 +-- .../resource-pool-details.tsx | 18 ++++++------- .../app/src/pages/role-management/index.tsx | 2 +- frontend/app/src/pages/schema.tsx | 6 ++--- frontend/app/src/pages/tasks/index.tsx | 2 +- frontend/app/src/pages/tasks/task-details.tsx | 2 +- .../api/graphql/graphqlClientApollo.tsx | 2 +- .../app/src/shared/api/graphql/useQuery.ts | 2 +- frontend/app/src/shared/api/rest/client.ts | 2 +- .../src/shared/components/account-menu.tsx | 4 +-- .../src/shared/components/branch-selector.tsx | 6 ++--- .../components/conversations/add-comment.tsx | 2 +- .../components/conversations/thread.tsx | 4 +-- .../components/display/properties-popover.tsx | 2 +- .../components/display/sidepanel-title.tsx | 2 +- .../shared/components/display/slide-over.tsx | 4 +-- .../shared/components/filters/filter-form.tsx | 2 +- .../filters/filter-kind-selector.tsx | 2 +- .../src/shared/components/filters/filters.tsx | 2 +- .../components/filters/tasks-filter-form.tsx | 2 +- .../filters/utils/getObjectFromFilters.ts | 2 +- .../components/form/branch-create-form.tsx | 2 +- .../shared/components/form/dynamic-form.tsx | 2 +- .../shared/components/form/fields/common.tsx | 2 +- .../form/fields/relationship.field.tsx | 2 +- .../components/form/generic-object-form.tsx | 2 +- .../components/form/generic-selector.tsx | 4 +-- .../shared/components/form/name-select.tsx | 2 +- .../src/shared/components/form/node-form.tsx | 6 ++--- .../shared/components/form/node-select.tsx | 2 +- .../form/object-create-form-trigger.tsx | 2 +- .../form/object-edit-slide-over-trigger.tsx | 2 +- .../shared/components/form/object-form.tsx | 16 ++++++------ .../components/form/profiles-selector.tsx | 2 +- .../app/src/shared/components/form/type.ts | 2 +- .../form/utils/getFormFieldsFromSchema.ts | 4 +-- .../form/utils/getRelationshipDefaultValue.ts | 2 +- .../components/form/utils/isFieldDisabled.ts | 4 +-- .../src/shared/components/inputs/dropdown.tsx | 2 +- .../app/src/shared/components/inputs/enum.tsx | 2 +- .../components/inputs/relationship-one.tsx | 2 +- .../items/breadcrumb-branch-selector.tsx | 2 +- .../items/breadcrumb-object-selector.tsx | 8 +++--- .../items/breadcrumb-schema-selector.tsx | 4 +-- .../src/shared/components/layout/layout.tsx | 6 ++--- .../layout/menu-navigation/get-menu.ts | 2 +- .../shared/components/layout/tasks-status.tsx | 2 +- .../components/modals/modal-delete-object.tsx | 2 +- .../components/search/search-actions.tsx | 2 +- .../shared/components/search/search-nodes.tsx | 6 ++--- frontend/app/tests/fake/schema.ts | 2 +- .../tests/integrations/screens/account.cy.tsx | 4 +-- .../integrations/screens/artifact-diff.cy.tsx | 8 +++--- .../integrations/screens/branche-items.cy.tsx | 4 +-- .../integrations/screens/conversations.cy.tsx | 6 ++--- .../object-details-relationships.cy.tsx | 2 +- .../screens/object-details.cy.tsx | 2 +- .../integrations/screens/object-fields.cy.tsx | 4 +-- .../screens/object-items-deletion.cy.tsx | 4 +-- .../integrations/screens/object-items.cy.tsx | 2 +- .../filters/getObjectFromFilters.test.ts | 2 +- .../utils/getFormFieldsFromSchema.test.ts | 6 ++--- .../utils/getRelationshipDefaultValue.test.ts | 2 +- 223 files changed, 376 insertions(+), 376 deletions(-) rename frontend/app/src/entities/authentication/{ => ui}/login-sso-buttons.tsx (100%) rename frontend/app/src/entities/authentication/{ => ui}/login.tsx (93%) rename frontend/app/src/entities/authentication/{ => ui}/useAuth.tsx (100%) rename frontend/app/src/entities/branches/{branch-actions/graphql => api}/getBranchActionState.ts (100%) rename frontend/app/src/entities/branches/{ => domain}/get-current-branch.test.ts (79%) rename frontend/app/src/entities/branches/{ => domain}/get-current-branch.ts (78%) rename frontend/app/src/entities/branches/{branches.atom.ts => stores.ts} (100%) rename frontend/app/src/entities/branches/{ => ui}/branch-details.tsx (93%) rename frontend/app/src/entities/branches/{branch-actions => ui}/branch-merge-button.tsx (93%) rename frontend/app/src/entities/branches/{branch-actions => ui}/branch-rebase-button.tsx (93%) rename frontend/app/src/entities/branches/{branch-actions => ui}/branch-validate-button.tsx (93%) rename frontend/app/src/entities/branches/{ => ui}/branches-items.tsx (98%) rename frontend/app/src/entities/branches/{ => ui}/diff.tsx (92%) rename frontend/app/src/entities/branches/{branches.ts => utils.ts} (100%) rename frontend/app/src/entities/graphql/{details => ui}/graphql-query-details-card.tsx (98%) rename frontend/app/src/entities/graphql/{details => ui}/graphql-query-details-page-skeleton.tsx (100%) rename frontend/app/src/entities/graphql/{details => ui}/graphql-query-viewer-card.tsx (100%) rename frontend/app/src/entities/groups/{ => api}/types.ts (100%) rename frontend/app/src/entities/groups/{ => ui}/add-group-form.tsx (97%) rename frontend/app/src/entities/groups/{ => ui}/add-group-trigger-button.tsx (87%) rename frontend/app/src/entities/groups/{ => ui}/groups-auto-generated-filter-button.tsx (100%) rename frontend/app/src/entities/groups/{ => ui}/groups-manager-trigger-button.tsx (94%) rename frontend/app/src/entities/groups/{ => ui}/groups-manager.tsx (92%) rename frontend/app/src/entities/groups/{ => ui}/object-groups-list.tsx (95%) rename frontend/app/src/entities/nodes/{ => hooks}/useObjectDetails.ts (99%) rename frontend/app/src/entities/nodes/{ => hooks}/useObjectItems.ts (98%) delete mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png delete mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png delete mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png delete mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png delete mode 100644 frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png rename frontend/app/src/entities/nodes/{ => stores}/metaEditFieldDetails.atom.ts (100%) rename frontend/app/src/entities/nodes/{ => stores}/showMetaEdit.atom.ts (100%) rename frontend/app/src/entities/nodes/{objects.ts => utils.ts} (98%) rename frontend/app/src/entities/proposed-changes/{ => stores}/proposedChanges.atom.ts (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/action-button/pc-approve-button.tsx (95%) rename frontend/app/src/entities/proposed-changes/{ => ui}/action-button/pc-close-button.tsx (96%) rename frontend/app/src/entities/proposed-changes/{ => ui}/action-button/pc-merge-button.tsx (97%) rename frontend/app/src/entities/proposed-changes/{ => ui}/checks-tab.tsx (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/checks.ts (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/conversations.tsx (97%) rename frontend/app/src/entities/proposed-changes/{ => ui}/counter.tsx (91%) rename frontend/app/src/entities/proposed-changes/{ => ui}/create-form.tsx (95%) rename frontend/app/src/entities/proposed-changes/{ => ui}/diff-filter.tsx (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/diff-summary.tsx (97%) rename frontend/app/src/entities/proposed-changes/{ => ui}/item-info.tsx (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/items.tsx (98%) rename frontend/app/src/entities/proposed-changes/{ => ui}/proposed-change-details.tsx (89%) rename frontend/app/src/entities/proposed-changes/{form => ui}/proposed-change-edit-form.tsx (98%) rename frontend/app/src/entities/proposed-changes/{ => ui}/proposed-change-edit-trigger.tsx (91%) rename frontend/app/src/entities/proposed-changes/{ => ui}/proposed-changes.ts (100%) rename frontend/app/src/entities/proposed-changes/{ => ui}/reviewers.tsx (100%) rename frontend/app/src/entities/repository/{ => ui}/repository-action-menu.tsx (100%) rename frontend/app/src/entities/repository/{ => ui}/repository-form.tsx (96%) rename frontend/app/src/entities/resource-manager/{graphql => api}/resource-pool.ts (100%) rename frontend/app/src/entities/resource-manager/{common => ui}/ResourcePoolUtilization.tsx (100%) rename frontend/app/src/entities/resource-manager/{ => ui}/number-pool-form.tsx (98%) rename frontend/app/src/entities/resource-manager/{ => ui}/resource-selector.tsx (93%) rename frontend/app/src/entities/role-manager/{ => ui}/account-form.tsx (97%) rename frontend/app/src/entities/role-manager/{ => ui}/account-group-form.tsx (97%) rename frontend/app/src/entities/role-manager/{ => ui}/account-role-form.tsx (98%) rename frontend/app/src/entities/role-manager/{ => ui}/accounts.tsx (95%) rename frontend/app/src/entities/role-manager/{ => ui}/global-permissions-form.tsx (96%) rename frontend/app/src/entities/role-manager/{ => ui}/global-permissions.tsx (95%) rename frontend/app/src/entities/role-manager/{ => ui}/group-member.tsx (100%) rename frontend/app/src/entities/role-manager/{ => ui}/groups.tsx (95%) rename frontend/app/src/entities/role-manager/{ => ui}/index.tsx (100%) rename frontend/app/src/entities/role-manager/{ => ui}/object-permissions-form.tsx (96%) rename frontend/app/src/entities/role-manager/{ => ui}/object-permissions.tsx (95%) rename frontend/app/src/entities/role-manager/{ => ui}/relationship-display.tsx (100%) rename frontend/app/src/entities/role-manager/{ => ui}/roles.tsx (95%) rename frontend/app/src/entities/schema/{ => decorators}/withSchemaContext.tsx (92%) rename frontend/app/src/entities/schema/{ => domain}/get-schema.test.ts (96%) rename frontend/app/src/entities/schema/{ => domain}/get-schema.ts (97%) rename frontend/app/src/entities/schema/{ => hooks}/useSchema.ts (97%) rename frontend/app/src/entities/schema/{ => stores}/schema.atom.ts (100%) rename frontend/app/src/entities/schema/{ => stores}/schemaKindLabel.atom.ts (100%) rename frontend/app/src/entities/schema/{ => stores}/schemaKindName.atom.ts (100%) rename frontend/app/src/entities/schema/{ => ui}/attribute-display.tsx (100%) rename frontend/app/src/entities/schema/{ => ui}/relationship-display.tsx (100%) rename frontend/app/src/entities/schema/{ => ui}/schema-help-menu.tsx (92%) rename frontend/app/src/entities/schema/{ => ui}/schema-selector.tsx (98%) rename frontend/app/src/entities/schema/{ => ui}/schema-viewer.tsx (99%) rename frontend/app/src/entities/schema/{ => ui}/styled.tsx (100%) rename frontend/app/src/entities/tasks/{ => ui}/logs.tsx (100%) rename frontend/app/src/entities/{branches => tasks/ui}/task-display.tsx (96%) rename frontend/app/src/entities/tasks/{ => ui}/task-item-details.tsx (100%) rename frontend/app/src/entities/tasks/{ => ui}/task-items.tsx (100%) rename frontend/app/src/entities/user-profile/{ => ui}/tab-profile.tsx (91%) rename frontend/app/src/entities/user-profile/{ => ui}/tab-tokens.tsx (90%) rename frontend/app/src/entities/user-profile/{ => ui}/tab-update-password.tsx (100%) rename frontend/app/src/entities/user-profile/{ => ui}/token-schema.ts (100%) rename frontend/app/src/entities/user-profile/{ => ui}/user-profile.tsx (97%) diff --git a/frontend/app/src/app/app.tsx b/frontend/app/src/app/app.tsx index 17df4c2536..97264ad547 100644 --- a/frontend/app/src/app/app.tsx +++ b/frontend/app/src/app/app.tsx @@ -4,7 +4,7 @@ import { RouterProvider } from "react-router-dom"; import { Slide, ToastContainer } from "react-toastify"; import { router } from "@/app/router"; -import { AuthProvider } from "@/entities/authentication/useAuth"; +import { AuthProvider } from "@/entities/authentication/ui/useAuth"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import ErrorFallback from "@/shared/components/errors/error-fallback"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index a64a69df13..1336c17d5d 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -1,6 +1,6 @@ import { Root } from "@/app/root"; import { NODE_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { RequireAuth } from "@/entities/authentication/useAuth"; +import { RequireAuth } from "@/entities/authentication/ui/useAuth"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_ROUTE, IP_ADDRESS_GENERIC, IP_PREFIX_GENERIC } from "@/entities/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; @@ -375,7 +375,7 @@ export const router = createBrowserRouter([ children: [ { index: true, - lazy: () => import("@/entities/role-manager/accounts"), + lazy: () => import("@/entities/role-manager/ui/accounts"), handle: { breadcrumb: () => { return { @@ -388,7 +388,7 @@ export const router = createBrowserRouter([ }, { path: "groups", - lazy: () => import("@/entities/role-manager/groups"), + lazy: () => import("@/entities/role-manager/ui/groups"), handle: { breadcrumb: () => { return { @@ -401,7 +401,7 @@ export const router = createBrowserRouter([ }, { path: "roles", - lazy: () => import("@/entities/role-manager/roles"), + lazy: () => import("@/entities/role-manager/ui/roles"), handle: { breadcrumb: () => { return { @@ -414,7 +414,7 @@ export const router = createBrowserRouter([ }, { path: "global-permissions", - lazy: () => import("@/entities/role-manager/global-permissions"), + lazy: () => import("@/entities/role-manager/ui/global-permissions"), handle: { breadcrumb: () => { return { @@ -427,7 +427,7 @@ export const router = createBrowserRouter([ }, { path: "object-permissions", - lazy: () => import("@/entities/role-manager/object-permissions"), + lazy: () => import("@/entities/role-manager/ui/object-permissions"), handle: { breadcrumb: () => { return { diff --git a/frontend/app/src/entities/artifacts/ui/artifact-details.tsx b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx index 2aa031da94..f5eb9f9176 100644 --- a/frontend/app/src/entities/artifacts/ui/artifact-details.tsx +++ b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx @@ -2,10 +2,9 @@ import { CONFIG } from "@/config/config"; import { ARTIFACT_OBJECT, MENU_EXCLUDELIST } from "@/config/constants"; import { QSP } from "@/config/qsp"; import { Generate } from "@/entities/artifacts/ui/generate"; -import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; +import { GroupsManagerTriggerButton } from "@/entities/groups/ui/groups-manager-trigger-button"; import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; import { getObjectItemDisplayValue } from "@/entities/nodes/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; import RelationshipDetails from "@/entities/nodes/object-item-details/relationship-details-paginated"; import { RelationshipsDetails } from "@/entities/nodes/object-item-details/relationships-details-paginated"; import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; @@ -15,10 +14,11 @@ import { getSchemaObjectColumns, getTabs, } from "@/entities/nodes/object-items/getSchemaObjectColumns"; -import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; +import { showMetaEditState } from "@/entities/nodes/stores/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/entities/nodes/stores/showMetaEdit.atom"; import { getPermission } from "@/entities/permission/utils"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import MetaDetailsTooltip from "@/shared/components/display/meta-details-tooltips"; diff --git a/frontend/app/src/entities/artifacts/ui/generate.tsx b/frontend/app/src/entities/artifacts/ui/generate.tsx index ab1d0ff844..596f4ca689 100644 --- a/frontend/app/src/entities/artifacts/ui/generate.tsx +++ b/frontend/app/src/entities/artifacts/ui/generate.tsx @@ -1,6 +1,6 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import { BUTTON_TYPES, Button } from "@/shared/components/buttons/button"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/authentication/login-sso-buttons.tsx b/frontend/app/src/entities/authentication/ui/login-sso-buttons.tsx similarity index 100% rename from frontend/app/src/entities/authentication/login-sso-buttons.tsx rename to frontend/app/src/entities/authentication/ui/login-sso-buttons.tsx diff --git a/frontend/app/src/entities/authentication/login.tsx b/frontend/app/src/entities/authentication/ui/login.tsx similarity index 93% rename from frontend/app/src/entities/authentication/login.tsx rename to frontend/app/src/entities/authentication/ui/login.tsx index 542a2857e2..b1fe58287e 100644 --- a/frontend/app/src/entities/authentication/login.tsx +++ b/frontend/app/src/entities/authentication/ui/login.tsx @@ -1,6 +1,6 @@ import { configState } from "@/config/config.atom"; -import { LoginWithSSOButtons } from "@/entities/authentication/login-sso-buttons"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { LoginWithSSOButtons } from "@/entities/authentication/ui/login-sso-buttons"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; import PasswordInputField from "@/shared/components/form/fields/password-input.field"; diff --git a/frontend/app/src/entities/authentication/useAuth.tsx b/frontend/app/src/entities/authentication/ui/useAuth.tsx similarity index 100% rename from frontend/app/src/entities/authentication/useAuth.tsx rename to frontend/app/src/entities/authentication/ui/useAuth.tsx diff --git a/frontend/app/src/entities/branches/branch-actions/graphql/getBranchActionState.ts b/frontend/app/src/entities/branches/api/getBranchActionState.ts similarity index 100% rename from frontend/app/src/entities/branches/branch-actions/graphql/getBranchActionState.ts rename to frontend/app/src/entities/branches/api/getBranchActionState.ts diff --git a/frontend/app/src/entities/branches/get-current-branch.test.ts b/frontend/app/src/entities/branches/domain/get-current-branch.test.ts similarity index 79% rename from frontend/app/src/entities/branches/get-current-branch.test.ts rename to frontend/app/src/entities/branches/domain/get-current-branch.test.ts index da626dbb22..54695034f6 100644 --- a/frontend/app/src/entities/branches/get-current-branch.test.ts +++ b/frontend/app/src/entities/branches/domain/get-current-branch.test.ts @@ -1,8 +1,8 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { currentBranchAtom } from "@/entities/branches/stores"; +import { getCurrentBranchName } from "@/entities/branches/domain/get-current-branch"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; -import { generateBranch } from "../../../tests/fake/branch"; +import { generateBranch } from "../../../../tests/fake/branch"; describe("getCurrentBranchName - test", () => { beforeEach(() => { diff --git a/frontend/app/src/entities/branches/get-current-branch.ts b/frontend/app/src/entities/branches/domain/get-current-branch.ts similarity index 78% rename from frontend/app/src/entities/branches/get-current-branch.ts rename to frontend/app/src/entities/branches/domain/get-current-branch.ts index c98a923dc0..2a0bd105cc 100644 --- a/frontend/app/src/entities/branches/get-current-branch.ts +++ b/frontend/app/src/entities/branches/domain/get-current-branch.ts @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { store } from "@/shared/stores"; export const getCurrentBranchName = () => { diff --git a/frontend/app/src/entities/branches/branches.atom.ts b/frontend/app/src/entities/branches/stores.ts similarity index 100% rename from frontend/app/src/entities/branches/branches.atom.ts rename to frontend/app/src/entities/branches/stores.ts diff --git a/frontend/app/src/entities/branches/branch-details.tsx b/frontend/app/src/entities/branches/ui/branch-details.tsx similarity index 93% rename from frontend/app/src/entities/branches/branch-details.tsx rename to frontend/app/src/entities/branches/ui/branch-details.tsx index 30e08e4218..38604382a1 100644 --- a/frontend/app/src/entities/branches/branch-details.tsx +++ b/frontend/app/src/entities/branches/ui/branch-details.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { BRANCH_DELETE } from "@/entities/branches/api/deleteBranch"; import { getBranchDetailsQuery } from "@/entities/branches/api/getBranchDetails"; -import { branchesState } from "@/entities/branches/branches.atom"; +import { branchesState } from "@/entities/branches/stores"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath, getCurrentQsp } from "@/shared/api/rest/fetch"; @@ -28,11 +28,11 @@ import { BRANCH_MERGE_WORKFLOW, BRANCH_REBASE_WORKFLOW, BRANCH_VALIDATE_WORKFLOW, -} from "../tasks/constants"; -import { BranchMergeButton } from "./branch-actions/branch-merge-button"; -import { BranchRebaseButton } from "./branch-actions/branch-rebase-button"; -import { BranchValidateButton } from "./branch-actions/branch-validate-button"; -import { TaskDisplay } from "./task-display"; +} from "../../tasks/constants"; +import { BranchMergeButton } from "./branch-merge-button"; +import { BranchRebaseButton } from "./branch-rebase-button"; +import { BranchValidateButton } from "./branch-validate-button"; +import { TaskDisplay } from "../../tasks/ui/task-display"; export const BranchDetails = () => { const { "*": branchName } = useParams(); diff --git a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx b/frontend/app/src/entities/branches/ui/branch-merge-button.tsx similarity index 93% rename from frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx rename to frontend/app/src/entities/branches/ui/branch-merge-button.tsx index df39457b1a..78302dc8db 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-merge-button.tsx +++ b/frontend/app/src/entities/branches/ui/branch-merge-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { BRANCH_MERGE } from "@/entities/branches/api/mergeBranch"; import { BRANCH_MERGE_WORKFLOW } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; @@ -11,7 +11,7 @@ import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { toast } from "react-toastify"; -import { GET_BRANCH_ACTION_STATE } from "./graphql/getBranchActionState"; +import { GET_BRANCH_ACTION_STATE } from "../api/getBranchActionState"; type BranchMergeButtonProps = { branch: Branch; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx b/frontend/app/src/entities/branches/ui/branch-rebase-button.tsx similarity index 93% rename from frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx rename to frontend/app/src/entities/branches/ui/branch-rebase-button.tsx index 3c03cde432..d2b104f8c1 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-rebase-button.tsx +++ b/frontend/app/src/entities/branches/ui/branch-rebase-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; import { BRANCH_REBASE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; @@ -11,7 +11,7 @@ import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { toast } from "react-toastify"; -import { GET_BRANCH_ACTION_STATE } from "./graphql/getBranchActionState"; +import { GET_BRANCH_ACTION_STATE } from "../api/getBranchActionState"; type BranchRebaseButtonProps = { branch: Branch; diff --git a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx b/frontend/app/src/entities/branches/ui/branch-validate-button.tsx similarity index 93% rename from frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx rename to frontend/app/src/entities/branches/ui/branch-validate-button.tsx index 1c19f31dea..ebdc763315 100644 --- a/frontend/app/src/entities/branches/branch-actions/branch-validate-button.tsx +++ b/frontend/app/src/entities/branches/ui/branch-validate-button.tsx @@ -1,5 +1,5 @@ import { TASK_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { BRANCH_VALIDATE } from "@/entities/branches/api/validateBranch"; import { BRANCH_VALIDATE_WORKFLOW, TASK_ONGOING_STATES } from "@/entities/tasks/constants"; import { Branch } from "@/shared/api/graphql/generated/graphql"; @@ -11,7 +11,7 @@ import { useQuery } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { toast } from "react-toastify"; -import { GET_BRANCH_ACTION_STATE } from "./graphql/getBranchActionState"; +import { GET_BRANCH_ACTION_STATE } from "../api/getBranchActionState"; type BranchValidateButtonProps = { branch: Branch; diff --git a/frontend/app/src/entities/branches/branches-items.tsx b/frontend/app/src/entities/branches/ui/branches-items.tsx similarity index 98% rename from frontend/app/src/entities/branches/branches-items.tsx rename to frontend/app/src/entities/branches/ui/branches-items.tsx index 6f9e11337f..2aa97854ea 100644 --- a/frontend/app/src/entities/branches/branches-items.tsx +++ b/frontend/app/src/entities/branches/ui/branches-items.tsx @@ -1,5 +1,5 @@ import GET_BRANCHES from "@/entities/branches/api/getBranches"; -import { branchesState } from "@/entities/branches/branches.atom"; +import { branchesState } from "@/entities/branches/stores"; import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { DateDisplay } from "@/shared/components/display/date-display"; diff --git a/frontend/app/src/entities/branches/diff.tsx b/frontend/app/src/entities/branches/ui/diff.tsx similarity index 92% rename from frontend/app/src/entities/branches/diff.tsx rename to frontend/app/src/entities/branches/ui/diff.tsx index e0dffa6abf..d872eb2af5 100644 --- a/frontend/app/src/entities/branches/diff.tsx +++ b/frontend/app/src/entities/branches/ui/diff.tsx @@ -4,9 +4,9 @@ import DatetimeField from "@/shared/components/form/fields/datetime.field"; import { Tabs } from "@/shared/components/tabs"; import { Form, FormSubmit } from "@/shared/components/ui/form"; import { DateTimeParam, StringParam, useQueryParam } from "use-query-params"; -import { ArtifactsDiff } from "../diff/artifact-diff/artifacts-diff"; -import { FilesDiff } from "../diff/file-diff/files-diff"; -import { NodeDiff } from "../diff/node-diff"; +import { ArtifactsDiff } from "../../diff/artifact-diff/artifacts-diff"; +import { FilesDiff } from "../../diff/file-diff/files-diff"; +import { NodeDiff } from "../../diff/node-diff"; const tabs = [ { diff --git a/frontend/app/src/entities/branches/branches.ts b/frontend/app/src/entities/branches/utils.ts similarity index 100% rename from frontend/app/src/entities/branches/branches.ts rename to frontend/app/src/entities/branches/utils.ts diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx index 39d4718166..dfc166a00a 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-content-diff.tsx @@ -4,12 +4,12 @@ import { PROPOSED_CHANGES_FILE_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesArtifactsThreads } from "@/entities/proposed-changes/api/getProposedChangesArtifactsThreads"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { fetchStream } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx index b9e957ffb0..0780b404e3 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifact-repo-diff.tsx @@ -1,5 +1,5 @@ import { getArtifactDetails } from "@/entities/artifacts/api/getArtifacts"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/display/badge"; diff --git a/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx b/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx index 4d48288eb0..1440b39b2c 100644 --- a/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx +++ b/frontend/app/src/entities/diff/artifact-diff/artifacts-diff.tsx @@ -1,6 +1,6 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/diff/checks/check.tsx b/frontend/app/src/entities/diff/checks/check.tsx index 6326551d26..fea1893509 100644 --- a/frontend/app/src/entities/diff/checks/check.tsx +++ b/frontend/app/src/entities/diff/checks/check.tsx @@ -1,5 +1,5 @@ import { GET_CHECKS } from "@/entities/diff/api/getCheckDetails"; -import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; +import { schemaKindLabelState } from "@/entities/schema/stores/schemaKindLabel.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { MoreButton } from "@/shared/components/buttons/more-button"; import Accordion from "@/shared/components/display/accordion"; diff --git a/frontend/app/src/entities/diff/checks/checks-summary.tsx b/frontend/app/src/entities/diff/checks/checks-summary.tsx index 3ee424e1f4..85d741a9bc 100644 --- a/frontend/app/src/entities/diff/checks/checks-summary.tsx +++ b/frontend/app/src/entities/diff/checks/checks-summary.tsx @@ -3,11 +3,11 @@ import { PROPOSED_CHANGES_VALIDATOR_OBJECT, VALIDATIONS_ENUM_MAP, } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { runCheck } from "@/entities/diff/api/runCheck"; -import { getValidatorsStats } from "@/entities/proposed-changes/checks"; -import { genericsState } from "@/entities/schema/schema.atom"; -import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; +import { getValidatorsStats } from "@/entities/proposed-changes/ui/checks"; +import { genericsState } from "@/entities/schema/stores/schema.atom"; +import { schemaKindLabelState } from "@/entities/schema/stores/schemaKindLabel.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Retry } from "@/shared/components/buttons/retry"; diff --git a/frontend/app/src/entities/diff/checks/conflict.tsx b/frontend/app/src/entities/diff/checks/conflict.tsx index 9d64956a80..26458b77cc 100644 --- a/frontend/app/src/entities/diff/checks/conflict.tsx +++ b/frontend/app/src/entities/diff/checks/conflict.tsx @@ -1,9 +1,9 @@ import { DATA_CHECK_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { diffContent, getBadgeType } from "@/entities/diff/diff"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ToggleButtons } from "@/shared/components/buttons/toggle-buttons"; diff --git a/frontend/app/src/entities/diff/diff-tree.tsx b/frontend/app/src/entities/diff/diff-tree.tsx index 2601b0801d..8d37bf36c6 100644 --- a/frontend/app/src/entities/diff/diff-tree.tsx +++ b/frontend/app/src/entities/diff/diff-tree.tsx @@ -2,7 +2,7 @@ import { DiffNode } from "@/entities/diff/node-diff/types"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { TREE_ROOT_ID } from "@/entities/ipam/constants"; import { EMPTY_TREE, addItemsToTree } from "@/entities/ipam/ipam-tree/utils"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { Tooltip } from "@/shared/components/ui/tooltip"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx index dfa3a7ec73..7481197f1d 100644 --- a/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/file-content-diff.tsx @@ -4,12 +4,12 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesFilesThreads } from "@/entities/proposed-changes/api/getProposedChangesFilesThreads"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { fetchStream } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/entities/diff/file-diff/files-diff.tsx b/frontend/app/src/entities/diff/file-diff/files-diff.tsx index 4f8d946f7c..30d18bd1d7 100644 --- a/frontend/app/src/entities/diff/file-diff/files-diff.tsx +++ b/frontend/app/src/entities/diff/file-diff/files-diff.tsx @@ -1,6 +1,6 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; import { fetchUrl, getUrlWithQsp } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/entities/diff/node-diff/comments.tsx b/frontend/app/src/entities/diff/node-diff/comments.tsx index 049e0cbae6..37aa16bcee 100644 --- a/frontend/app/src/entities/diff/node-diff/comments.tsx +++ b/frontend/app/src/entities/diff/node-diff/comments.tsx @@ -2,13 +2,13 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT, PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { getThreadLabel } from "@/entities/diff/diff"; import { createObject } from "@/entities/nodes/api/createObject"; import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesObjectThreadComments } from "@/entities/proposed-changes/api/getProposedChangesObjectThreadComments"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { AddComment } from "@/shared/components/conversations/add-comment"; diff --git a/frontend/app/src/entities/diff/node-diff/conflict.tsx b/frontend/app/src/entities/diff/node-diff/conflict.tsx index f863d7a6f2..ef059497d3 100644 --- a/frontend/app/src/entities/diff/node-diff/conflict.tsx +++ b/frontend/app/src/entities/diff/node-diff/conflict.tsx @@ -1,7 +1,7 @@ -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { resolveConflict } from "@/entities/diff/api/resolveConflict"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Checkbox } from "@/shared/components/inputs/checkbox"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/diff/node-diff/index.tsx b/frontend/app/src/entities/diff/node-diff/index.tsx index 7d4a18f6fe..d886d4b373 100644 --- a/frontend/app/src/entities/diff/node-diff/index.tsx +++ b/frontend/app/src/entities/diff/node-diff/index.tsx @@ -1,14 +1,14 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { BRANCH_REBASE } from "@/entities/branches/api/rebaseBranch"; import { DIFF_UPDATE } from "@/entities/diff/api/diff-update"; import DiffTree from "@/entities/diff/diff-tree"; import { DIFF_STATUS, DiffNode as DiffNodeType } from "@/entities/diff/node-diff/types"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; import { getProposedChangesDiffTree } from "@/entities/proposed-changes/api/getProposedChangesDiffTree"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; @@ -27,7 +27,7 @@ import { useAtomValue } from "jotai"; import { createContext, useState } from "react"; import { toast } from "react-toastify"; import { StringParam, useQueryParam } from "use-query-params"; -import { DiffFilter, ProposedChangeDiffFilter } from "../../proposed-changes/diff-filter"; +import { DiffFilter, ProposedChangeDiffFilter } from "../../proposed-changes/ui/diff-filter"; import { DiffNode } from "./node"; export const DiffContext = createContext({}); diff --git a/frontend/app/src/entities/diff/node-diff/node.tsx b/frontend/app/src/entities/diff/node-diff/node.tsx index 7de3530d40..6c0c82996b 100644 --- a/frontend/app/src/entities/diff/node-diff/node.tsx +++ b/frontend/app/src/entities/diff/node-diff/node.tsx @@ -1,6 +1,6 @@ import type { DiffNode as DiffNodeType, PropertyType } from "@/entities/diff/node-diff/types"; import { DiffBadge } from "@/entities/diff/node-diff/utils"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; import { Card } from "@/shared/components/ui/card"; diff --git a/frontend/app/src/entities/diff/node-diff/thread.tsx b/frontend/app/src/entities/diff/node-diff/thread.tsx index f4a2538203..f5646f1ba5 100644 --- a/frontend/app/src/entities/diff/node-diff/thread.tsx +++ b/frontend/app/src/entities/diff/node-diff/thread.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT_THREAD_OBJECT } from "@/config/constants"; import { getThreadLabel, getThreadTitle } from "@/entities/diff/diff"; import { getProposedChangesObjectThreads } from "@/entities/proposed-changes/api/getProposedChangesObjectThreads"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { SidePanelTitle } from "@/shared/components/display/sidepanel-title"; import SlideOver from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx b/frontend/app/src/entities/graphql/ui/graphql-query-details-card.tsx similarity index 98% rename from frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx rename to frontend/app/src/entities/graphql/ui/graphql-query-details-card.tsx index 3cf21f5099..6fe6d0e773 100644 --- a/frontend/app/src/entities/graphql/details/graphql-query-details-card.tsx +++ b/frontend/app/src/entities/graphql/ui/graphql-query-details-card.tsx @@ -1,8 +1,8 @@ import { RELATIONSHIP_VIEW_BLACKLIST } from "@/config/constants"; import { AttributeType, ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; -import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl, getObjectDetailsUrl2 } from "@/entities/nodes/utils"; import { Permission } from "@/entities/permission/types"; -import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import { constructPath } from "@/shared/api/rest/fetch"; import { CopyToClipboard } from "@/shared/components/buttons/copy-to-clipboard"; diff --git a/frontend/app/src/entities/graphql/details/graphql-query-details-page-skeleton.tsx b/frontend/app/src/entities/graphql/ui/graphql-query-details-page-skeleton.tsx similarity index 100% rename from frontend/app/src/entities/graphql/details/graphql-query-details-page-skeleton.tsx rename to frontend/app/src/entities/graphql/ui/graphql-query-details-page-skeleton.tsx diff --git a/frontend/app/src/entities/graphql/details/graphql-query-viewer-card.tsx b/frontend/app/src/entities/graphql/ui/graphql-query-viewer-card.tsx similarity index 100% rename from frontend/app/src/entities/graphql/details/graphql-query-viewer-card.tsx rename to frontend/app/src/entities/graphql/ui/graphql-query-viewer-card.tsx diff --git a/frontend/app/src/entities/groups/types.ts b/frontend/app/src/entities/groups/api/types.ts similarity index 100% rename from frontend/app/src/entities/groups/types.ts rename to frontend/app/src/entities/groups/api/types.ts diff --git a/frontend/app/src/entities/groups/api/updateGroupsQuery.ts b/frontend/app/src/entities/groups/api/updateGroupsQuery.ts index 9e8afa3cca..17f5b22248 100644 --- a/frontend/app/src/entities/groups/api/updateGroupsQuery.ts +++ b/frontend/app/src/entities/groups/api/updateGroupsQuery.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/stores/schema.atom"; import { gql } from "@apollo/client"; import { VariableType, jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/entities/groups/add-group-form.tsx b/frontend/app/src/entities/groups/ui/add-group-form.tsx similarity index 97% rename from frontend/app/src/entities/groups/add-group-form.tsx rename to frontend/app/src/entities/groups/ui/add-group-form.tsx index a503e7b674..3483a5477e 100644 --- a/frontend/app/src/entities/groups/add-group-form.tsx +++ b/frontend/app/src/entities/groups/ui/add-group-form.tsx @@ -1,5 +1,5 @@ import { updateGroupsQuery } from "@/entities/groups/api/updateGroupsQuery"; -import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; import { useMutation } from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import DynamicForm, { DynamicFormProps } from "@/shared/components/form/dynamic-form"; diff --git a/frontend/app/src/entities/groups/add-group-trigger-button.tsx b/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx similarity index 87% rename from frontend/app/src/entities/groups/add-group-trigger-button.tsx rename to frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx index b903e055c9..24259fcd94 100644 --- a/frontend/app/src/entities/groups/add-group-trigger-button.tsx +++ b/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx @@ -1,13 +1,13 @@ -import AddGroupForm from "@/entities/groups/add-group-form"; -import { GroupDataFromAPI } from "@/entities/groups/types"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { GroupDataFromAPI } from "@/entities/groups/api/types"; +import AddGroupForm from "@/entities/groups/ui/add-group-form"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; +import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; -import { Permission } from "../permission/types"; +import { Permission } from "../../permission/types"; type AddGroupTriggerButtonProps = { schema: iNodeSchema; diff --git a/frontend/app/src/entities/groups/groups-auto-generated-filter-button.tsx b/frontend/app/src/entities/groups/ui/groups-auto-generated-filter-button.tsx similarity index 100% rename from frontend/app/src/entities/groups/groups-auto-generated-filter-button.tsx rename to frontend/app/src/entities/groups/ui/groups-auto-generated-filter-button.tsx diff --git a/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx b/frontend/app/src/entities/groups/ui/groups-manager-trigger-button.tsx similarity index 94% rename from frontend/app/src/entities/groups/groups-manager-trigger-button.tsx rename to frontend/app/src/entities/groups/ui/groups-manager-trigger-button.tsx index f8c14c7e08..7aa5bdfacd 100644 --- a/frontend/app/src/entities/groups/groups-manager-trigger-button.tsx +++ b/frontend/app/src/entities/groups/ui/groups-manager-trigger-button.tsx @@ -1,5 +1,5 @@ -import { GroupsManager, GroupsManagerProps } from "@/entities/groups/groups-manager"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; +import { GroupsManager, GroupsManagerProps } from "@/entities/groups/ui/groups-manager"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/entities/groups/groups-manager.tsx b/frontend/app/src/entities/groups/ui/groups-manager.tsx similarity index 92% rename from frontend/app/src/entities/groups/groups-manager.tsx rename to frontend/app/src/entities/groups/ui/groups-manager.tsx index 54dd0dea44..c604d92f23 100644 --- a/frontend/app/src/entities/groups/groups-manager.tsx +++ b/frontend/app/src/entities/groups/ui/groups-manager.tsx @@ -1,9 +1,9 @@ -import AddGroupTriggerButton from "@/entities/groups/add-group-trigger-button"; +import AddGroupTriggerButton from "@/entities/groups/ui/add-group-trigger-button"; import { getGroupsQuery } from "@/entities/groups/api/getGroups"; -import ObjectGroupsList from "@/entities/groups/object-groups-list"; -import { GroupDataFromAPI } from "@/entities/groups/types"; +import ObjectGroupsList from "@/entities/groups/ui/object-groups-list"; +import { GroupDataFromAPI } from "@/entities/groups/api/types"; import { getPermission } from "@/entities/permission/utils"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/groups/object-groups-list.tsx b/frontend/app/src/entities/groups/ui/object-groups-list.tsx similarity index 95% rename from frontend/app/src/entities/groups/object-groups-list.tsx rename to frontend/app/src/entities/groups/ui/object-groups-list.tsx index 72512656a8..0c6a36a158 100644 --- a/frontend/app/src/entities/groups/object-groups-list.tsx +++ b/frontend/app/src/entities/groups/ui/object-groups-list.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; -import { GroupDataFromAPI } from "@/entities/groups/types"; -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { GroupDataFromAPI } from "@/entities/groups/api/types"; import { REMOVE_RELATIONSHIP } from "@/entities/nodes/relationships/api/removeRelationship"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/ipam/common/ip-details-card.tsx b/frontend/app/src/entities/ipam/common/ip-details-card.tsx index be92edd7ae..bf74a053dd 100644 --- a/frontend/app/src/entities/ipam/common/ip-details-card.tsx +++ b/frontend/app/src/entities/ipam/common/ip-details-card.tsx @@ -1,8 +1,8 @@ import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; import { AttributeType, ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; import { Permission } from "@/entities/permission/types"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import ObjectEditSlideOverTrigger from "@/shared/components/form/object-edit-slide-over-trigger"; import ProgressBarChart from "@/shared/components/stats/progress-bar-chart"; diff --git a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx index 4455e66939..0c9fe0f631 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ip-address-summary.tsx @@ -6,7 +6,7 @@ import { IpamSummarySkeleton } from "@/entities/ipam/prefixes/ipam-summary-skele import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; diff --git a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx index 4877b43bb4..94d54577cd 100644 --- a/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx +++ b/frontend/app/src/entities/ipam/ip-addresses/ipam-ip-address-list.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { GET_IP_ADDRESSES } from "@/entities/ipam/api/ip-address"; import { GET_PREFIX_KIND } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; diff --git a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx index 65eb87d721..541ac9489d 100644 --- a/frontend/app/src/entities/ipam/ip-namespace-selector.tsx +++ b/frontend/app/src/entities/ipam/ip-namespace-selector.tsx @@ -1,4 +1,4 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { GET_IP_NAMESPACES } from "@/entities/ipam/api/ip-namespaces"; import { IpamNamespace } from "@/shared/api/graphql/generated/graphql"; import useQuery from "@/shared/api/graphql/useQuery"; diff --git a/frontend/app/src/entities/ipam/ipam-router.tsx b/frontend/app/src/entities/ipam/ipam-router.tsx index 6dba31d2ee..1cec30c8c8 100644 --- a/frontend/app/src/entities/ipam/ipam-router.tsx +++ b/frontend/app/src/entities/ipam/ipam-router.tsx @@ -1,7 +1,7 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { getPermission } from "@/entities/permission/utils"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-with-tooltip"; diff --git a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts index f3e85d0cbc..c289c376e4 100644 --- a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.state.ts @@ -1,4 +1,4 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { GET_PREFIXES_ONLY, GET_PREFIX_ANCESTORS, diff --git a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx index f3b93b8998..496a826e37 100644 --- a/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx +++ b/frontend/app/src/entities/ipam/ipam-tree/ipam-tree.tsx @@ -10,7 +10,7 @@ import { GET_PREFIXES_ONLY } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; import { IPAM_QSP, IPAM_ROUTE, TREE_ROOT_ID } from "@/entities/ipam/constants"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import { Badge } from "@/shared/components/ui/badge"; import { SearchInput, SearchInputProps } from "@/shared/components/ui/search-input"; import { debounce } from "@/shared/utils/common"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx index ef975db81d..20af7bece2 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefix-details.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { GET_PREFIX } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx index 107262d986..ea82db2ad5 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-details.tsx @@ -5,7 +5,7 @@ import { IPAM_QSP, IPAM_ROUTE, IP_PREFIX_GENERIC } from "@/entities/ipam/constan import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx index 712f96f7ca..a0c7008856 100644 --- a/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx +++ b/frontend/app/src/entities/ipam/prefixes/ipam-prefixes-summary-list.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { GET_PREFIXES } from "@/entities/ipam/api/prefixes"; import { defaultIpNamespaceAtom } from "@/entities/ipam/common/namespace.state"; import { constructPathForIpam } from "@/entities/ipam/common/utils"; diff --git a/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx b/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx index 39ba3afe6c..c5b6224a6d 100644 --- a/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx +++ b/frontend/app/src/entities/nodes/getObjectItemDisplayValue.tsx @@ -1,6 +1,6 @@ import { MAX_VALUE_LENGTH_DISPLAY, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; -import { iSchemaKindNameMap } from "@/entities/schema/schemaKindName.atom"; +import { iSchemaKindNameMap } from "@/entities/schema/stores/schemaKindName.atom"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { AnyAttribute, diff --git a/frontend/app/src/entities/nodes/hierarchical-tree.tsx b/frontend/app/src/entities/nodes/hierarchical-tree.tsx index cde49e5951..98dbbd8c56 100644 --- a/frontend/app/src/entities/nodes/hierarchical-tree.tsx +++ b/frontend/app/src/entities/nodes/hierarchical-tree.tsx @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { HIDE_AUTO_GENERATED_FILTER } from "@/entities/groups/groups-auto-generated-filter-button"; +import { currentBranchAtom } from "@/entities/branches/stores"; +import { HIDE_AUTO_GENERATED_FILTER } from "@/entities/groups/ui/groups-auto-generated-filter-button"; import { TREE_ROOT_ID } from "@/entities/ipam/constants"; import { EMPTY_TREE, PrefixNode, updateTreeData } from "@/entities/ipam/ipam-tree/utils"; import { @@ -7,8 +7,8 @@ import { objectChildrenQuery, objectTopLevelTreeQuery, } from "@/entities/nodes/api/objectTreeQuery"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; -import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { Tree, TreeItemProps, TreeProps } from "@/shared/components/ui/tree"; diff --git a/frontend/app/src/entities/nodes/useObjectDetails.ts b/frontend/app/src/entities/nodes/hooks/useObjectDetails.ts similarity index 99% rename from frontend/app/src/entities/nodes/useObjectDetails.ts rename to frontend/app/src/entities/nodes/hooks/useObjectDetails.ts index 44fb9e0cc7..f791fc8c76 100644 --- a/frontend/app/src/entities/nodes/useObjectDetails.ts +++ b/frontend/app/src/entities/nodes/hooks/useObjectDetails.ts @@ -5,7 +5,7 @@ import { getTabs, } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { getPermission } from "@/entities/permission/utils"; -import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; +import { IModelSchema, genericsState } from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import useQuery from "@/shared/api/graphql/useQuery"; import { gql } from "@apollo/client"; diff --git a/frontend/app/src/entities/nodes/useObjectItems.ts b/frontend/app/src/entities/nodes/hooks/useObjectItems.ts similarity index 98% rename from frontend/app/src/entities/nodes/useObjectItems.ts rename to frontend/app/src/entities/nodes/hooks/useObjectItems.ts index 47e5ca6f2d..bc252f36c9 100644 --- a/frontend/app/src/entities/nodes/useObjectItems.ts +++ b/frontend/app/src/entities/nodes/hooks/useObjectItems.ts @@ -10,7 +10,7 @@ import { genericsState, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { getTokens } from "@/entities/user-profile/api/getTokens"; import useQuery from "@/shared/api/graphql/useQuery"; import { Filter } from "@/shared/hooks/useFilters"; diff --git a/frontend/app/src/entities/nodes/object-header.tsx b/frontend/app/src/entities/nodes/object-header.tsx index 334243e599..8039ed6196 100644 --- a/frontend/app/src/entities/nodes/object-header.tsx +++ b/frontend/app/src/entities/nodes/object-header.tsx @@ -1,7 +1,7 @@ -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { useObjectItems } from "@/entities/nodes/useObjectItems"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; +import { useObjectItems } from "@/entities/nodes/hooks/useObjectItems"; import { getPermission } from "@/entities/permission/utils"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import Content from "@/shared/components/layout/content"; import { ObjectDetailsButton } from "@/shared/components/menu/object-details-button"; diff --git a/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx b/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx index d7b05741b0..6c24cb83a9 100644 --- a/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/action-buttons/details-buttons.tsx @@ -1,9 +1,9 @@ import { ARTIFACT_DEFINITION_OBJECT, GENERIC_REPOSITORY_KIND } from "@/config/constants"; import { Generate } from "@/entities/artifacts/ui/generate"; -import { GroupsManagerTriggerButton } from "@/entities/groups/groups-manager-trigger-button"; +import { GroupsManagerTriggerButton } from "@/entities/groups/ui/groups-manager-trigger-button"; import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; -import RepositoryActionMenu from "@/entities/repository/repository-action-menu"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import RepositoryActionMenu from "@/entities/repository/ui/repository-action-menu"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx b/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx index 40f0a1d0b6..874a1809cf 100644 --- a/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/action-buttons/relationships-buttons.tsx @@ -1,7 +1,7 @@ import { QSP } from "@/config/qsp"; import { ADD_RELATIONSHIP } from "@/entities/nodes/relationships/api/addRelationship"; import { Permission } from "@/entities/permission/types"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx index 150be89c1e..469d88aa6e 100644 --- a/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/object-item-details-paginated.tsx @@ -1,8 +1,7 @@ import { DEFAULT_BRANCH_NAME, MENU_EXCLUDELIST, TASK_TAB, TASK_TARGET } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; -import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; import { getObjectAttributes, @@ -10,11 +9,12 @@ import { getObjectTabs, getTabs, } from "@/entities/nodes/object-items/getSchemaObjectColumns"; -import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; +import { showMetaEditState } from "@/entities/nodes/stores/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/entities/nodes/stores/showMetaEdit.atom"; import { Permission } from "@/entities/permission/types"; -import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; -import { TaskItemDetails } from "@/entities/tasks/task-item-details"; -import { TaskItems } from "@/entities/tasks/task-items"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; +import { TaskItemDetails } from "@/entities/tasks/ui/task-item-details"; +import { TaskItems } from "@/entities/tasks/ui/task-items"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx index 85d428967e..a133c3d452 100644 --- a/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/relationship-details-paginated.tsx @@ -1,13 +1,13 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; -import { showMetaEditState } from "@/entities/nodes/metaEditFieldDetails.atom"; import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { ObjectItemsCell, TextCell } from "@/entities/nodes/object-items/object-items-cell"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; -import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; +import { showMetaEditState } from "@/entities/nodes/stores/metaEditFieldDetails.atom"; +import { metaEditFieldDetailsState } from "@/entities/nodes/stores/showMetaEdit.atom"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; import { getPermission } from "@/entities/permission/utils"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx b/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx index 30066a6dbe..647ab88746 100644 --- a/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-details/relationships-details-paginated.tsx @@ -2,7 +2,7 @@ import { QSP } from "@/config/qsp"; import { getObjectRelationshipsDetailsPaginated } from "@/entities/nodes/api/getObjectRelationshipDetails"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { REMOVE_RELATIONSHIP } from "@/entities/nodes/relationships/api/removeRelationship"; -import { genericsState, iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery, { useMutation } from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts b/frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts index 123ae13447..db389640f2 100644 --- a/frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts +++ b/frontend/app/src/entities/nodes/object-item-edit/generateObjectEditFormQuery.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/stores/schema.atom"; import { addAttributesToRequest, addRelationshipsToRequest } from "@/shared/api/graphql/utils"; import { getRelationshipsForForm } from "@/shared/components/form/utils/getRelationshipsForForm"; import { jsonToGraphQLQuery } from "json-to-graphql-query"; diff --git a/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx b/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx index 1601a49371..04f4bf9c40 100644 --- a/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-item-edit/object-item-edit-paginated.tsx @@ -1,8 +1,8 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { DynamicFieldData } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; import { generateObjectEditFormQuery } from "@/entities/nodes/object-item-edit/generateObjectEditFormQuery"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts b/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts index 91331c8efd..5c1b37e635 100644 --- a/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts +++ b/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.ts @@ -1,4 +1,4 @@ -import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; const metadataFields = ["source", "owner", "is_visible", "is_protected"]; diff --git a/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx b/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx index a714cddcc9..cc224cfdb2 100644 --- a/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx +++ b/frontend/app/src/entities/nodes/object-item-meta-edit/object-item-meta-edit.tsx @@ -1,7 +1,7 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import getMutationMetaDetailsFromFormData from "@/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData"; -import { iNodeSchema } from "@/entities/schema/schema.atom"; +import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; diff --git a/frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts b/frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts index 5adc3c9eba..9eabb49a95 100644 --- a/frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts +++ b/frontend/app/src/entities/nodes/object-items/getSchemaObjectColumns.ts @@ -5,7 +5,7 @@ import { relationshipsForListView, relationshipsForTabs, } from "@/config/constants"; -import { iGenericSchema, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; +import { iGenericSchema, iNodeSchema, profilesAtom } from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import { store } from "@/shared/stores"; import { sortByOrderWeight } from "@/shared/utils/common"; diff --git a/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx b/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx index f2d8d67b03..2d51263e86 100644 --- a/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx +++ b/frontend/app/src/entities/nodes/object-items/object-items-cell.tsx @@ -3,7 +3,7 @@ import { RelationshipOneType, getDisplayValue, } from "@/entities/nodes/getObjectItemDisplayValue"; -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; diff --git a/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx b/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx index 4b0af6ac74..4311c2b66b 100644 --- a/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx +++ b/frontend/app/src/entities/nodes/object-items/object-items-paginated.tsx @@ -4,12 +4,12 @@ import { SEARCH_FILTERS, SEARCH_PARTIAL_MATCH, } from "@/config/constants"; -import { GroupsAutoGeneratedFilterButton } from "@/entities/groups/groups-auto-generated-filter-button"; +import { GroupsAutoGeneratedFilterButton } from "@/entities/groups/ui/groups-auto-generated-filter-button"; import { getDisplayValue } from "@/entities/nodes/getObjectItemDisplayValue"; +import { useObjectItems } from "@/entities/nodes/hooks/useObjectItems"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { ObjectItemsCell, TextCell } from "@/entities/nodes/object-items/object-items-cell"; -import { useObjectItems } from "@/entities/nodes/useObjectItems"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { isOfKind } from "@/entities/schema/utils"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts index e1f02a3805..7a85b9797a 100644 --- a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.query.ts @@ -1,4 +1,4 @@ -import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { getCurrentBranchName } from "@/entities/branches/domain/get-current-branch"; import { GetRelationshipsParams, RELATIONSHIPS_PER_PAGE, diff --git a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts index 325dad2023..7455eac20c 100644 --- a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts @@ -1,4 +1,4 @@ -import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { getCurrentBranchName } from "@/entities/branches/domain/get-current-branch"; import { getRelationshipsFromApi } from "@/entities/nodes/relationships/api/queries"; import { getRelationships } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts index 914da85a54..f4f721a8af 100644 --- a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.ts @@ -1,4 +1,4 @@ -import { getCurrentBranchName } from "@/entities/branches/get-current-branch"; +import { getCurrentBranchName } from "@/entities/branches/domain/get-current-branch"; import { getRelationshipsFromApi } from "@/entities/nodes/relationships/api/queries"; import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-calls-onSelect-when-a-relationship-is-selected-1.png deleted file mode 100644 index 85bdf63371044ac8aed3929d3602faa865b7a027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7173 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 LqX$ZyPG0>N##qsX diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-message-when-no-relationships-are-found-1.png deleted file mode 100644 index 85bdf63371044ac8aed3929d3602faa865b7a027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7173 zcmeHM`CroMzPEAGnHqIwS}bv?(`~ZRv`#L$a?;AwOwAM%k#;l1CAUAQ&c}Q1>)t=${HnkBdcpI3_&lG_dwbx9*HIU( zHF|5*)YPp;YHA3k>w*2pFFzFy zhTJ(m_C`8lsCj4A_nP~E-n=m?ZB^f%XU5+J*go4@V!TD;-p?L^$HuPexgI`Jx&E4a zi}A19%uYVr`1|2MFYMg(%-b}@>z7+if397<#AXBwkR5OMFv{XZgn}%P^#t=8 z#E#Jm9#WoR%gx5qtG2XSVWr=z(Huk6zjHkTT z0p4%*;#_HhGSn9eKuL_jV<+>ucNIPJ8}~ zJh!zIWFn!j1Vfy;PkyjbIuOC^Ek;G~a&QAQ1Di`{l2A+s4iYSOi95mjp}0R z;tc+N_VCd7;_L)$@9XPZJrp;9+S6RxTRV{>-*9V&S3rK4nVGy=J$a5#-hozx3}60| zj-Kv1%z6=ui>RM&s%9#LEiEnT+WStOshHkRL&*Swt+cuab(O{tJCH=8nmw%snOpY4E;OdfrI z!@xFX-{RN%X^o=~wRvmJ>%A}-hv1H<00*gPNDiN4vVILyr4Y;K1bq$3@{xC`NT@~2 zlLr%cSy)(zoJ}*MzYr~rnE1X7mJY=m*+_*}0G!}W_Ng0n57M&COo%N~$O zNcm(%oqzxY~R=jF?nfpDT}qD;LY=@n6I7#fRZS#C2mzyMJ9EF36 zhm)5UrsIcV`@-vlG%i7o`}```-!v#mSOxsbwu^7z7ZsZ^B&_lFETg#3r!e%G#W8cD z4d4hz>pu^eg*pK?fPJ~BPW;aw*Zt=4#Ny=ZKb&%RC(Tce{&pLwTzK;2$uc(nd;c}t zcu{?;SzTblSSBhk>fr2nyQa3jKgZ&H+aq`mCUc%s8IpG>{rB~2s=0)uGJpKnyDsxw zqKW~fv!1&e;ivX1Ttb)ZnXhXaPfzzTm9Ym8HZDwm0W=Tu`FtD@@bw?7C?3rQ@qt-Z zxDKRhNiJqG^YhQc@sbpCeb#!C2D!)tG)O?LzS%hHVwBwT@{4P(XD!1Mq7Y+v8n5oG5s8>fM@@x3PT~ z6sHnkj*ad0)gu4;r71lW6ev~OV3}T^dNo&^Z6k*3opL`_h4!uUw4eU4EhDflPWasQ z{u7IkOa13aLqwJ0nugZJA$lyY9~a`LgItQt^?GC-5fqYWL|lpj&V|>GJ@g>2$I=c_ zgp(DWX1f}un-G-vRR{|8VA{sm;DKic(+=I%uRZ(mUiu-rj9(1rL@FfRtWltmvW}}L z@i%n@6a%V8QjN^0*jFd_L;rj{9eQ7XI@5f67qkT?Xgx~FfjLV;4))~W1`|I3J~#567G+M{AP;YS zxJxb-V@)@Lz+sHn13Hd#DhUeNZ3Da8dX^XS_M@l)z0f?Qg69cH=yEZ_!H&=)L;Td6 z(`EZ&`8_vp-poKMYm^C>VD8lyx}L>wH3$uekRkdUK`unudNrOdbICBI=wj!(*{^r* z2_LMH6&z4ct$aX>?sTZGgoUviHf*4v&H~240RZEDfzcl7J^@TZGECNt{_Pn{21Kep zQE^@jQjza@(;R)jslME9=EF93YXJKo6ykGV}s%by*l{@s<^IW6jVL1IrwQ5 zh!%6E#Ux2oJMqwvAKgAXd%F${NDE>0H1h3_lsV7~AX5wuhvWTVjpI~8Yhzt%=yX|O zK@R7_dn+7A!s`y6pX@KlN#sxVR{*}JfO8$$c2Ya;Vh4~=1_Sr@?s~ly*H-Aus*d31 zdt^NfUzQz8>z29X@ts|zSmq%^7Tp1x$fH0P$d_7nQW`;;nDd;_*uFK^c9fZ!8EA=c znd5VkoFoxQZ^!@*_fGSQxpQ7g6~LlU6bHJ~2U~S%O9!Jpp)<|th`s_(a(4W1t%Mb_ zOwByZc77Kz~dpxE5dO zYZ1zR3ACULjE#-KFe3WP&xMq^-dB-kkjm){P$DAWTG}5>2AzB`TyGKiGmyojSJhLK zFgs3h4=8PrT|9B(grcAuT-qu3RSb`%p`i$zU8?`mAYr+uIOQtea1$o7-K`&*o+yX# z0#?H|7y;c3quHrzYU7uto884c8JG~XkExt11*+e5G2F>G8~!;sCm?;0I^qK&v2jk$ zn%YV&D*AoMzy5O6&bzT$j(>;J2{Jenv{VWT(ec!#qJ)ZX)XSuGE*%do$c_Uo zWW!OFQ>jS&7X-KFud8eGk325tg$L&(jI${26CK$}Z&vHtgMm>{7Xbx@b))F=(~URj zKDY{Jl%F5Frw1=VdSu&HRaOz0w6EsG#nw-`&fpb`5IK6;Y^Y;zdTrnN31(q?M?$JW zoH65CF&fNEynamzCa(Wn=rZ!q7Xx|c0$hiJO#yZg@DxS9#eAa?dgpdNVqfH6t>(<7 zQldftopxB7dIzR#4KZ{%7Jj_9z1c7+Ox=@u#fErgNRQ}-AKywvhjr(B|HBs>VqLis(TPuF{R*e4&VX1 zl%-_FWH96+u4Ee8f5O){7POxR8V!;Q9}=06u=u&`j60bgUOD?PXPj6%U2x!w4i8dD zSr>_wv2XOxiVj=B-W_|xKEDD4wmr3(g)qO+R{a(4N^|14kyCFQI>;aiC#e)tu#*`G z2!@H@auGr{=nFc6G1r8McuA#VDlc?_G%y$2Bf^=A`GTjH+(>4aW#9aKCWEm!o|Wg4 zAsVcWR*2a+{%D$c5R;(zaCaLSl*pQkp9Lc%0PN+k#e$6yq*xQbmyZCZ0A>2+>CyY1 zj^b#-36XTNWv0iFkjgi7ogObrrQbO zCr^BscqPG#FbK+!@Zru@C?p5&GlEj4@|}_Ll?ZLOoQGMIRthP|7QoKoaJb6(>OPRu z{h9`q{aZD(^)D}nJ;K5WC^%@Yra{anh&fjBdsLVMsKsN@#hI~IglfHB-v9JB#MieM z6f9h{+ouKG;OFL1`8R!edr)Y@N z7zkLDz4;B0ucvOBl+^I@vp_{t;m%MJ#7KliDNd&baMjs1(c{;(5V!4TJ^&7vc>zgR zi|H`gTijO}(w#$8E<&h+jLU>90U;4Jv_aCe32q1>AO$Tu3t(`gz*>Vnr{4pI5z4$W zF!^Z_T~Gp#L6kjy{P-zH2PwBKuo)Um z3Nkb47~0!=dg`4{^~GNP!k3JQ0h;jrjdh^UC@IPWu^Ffh+9oJzkczoXFXOOzCp1j5 zq)wCw^W|P@-9;Ac#OF7WeF~4Z%oRfHH+U{Ofts~Gm@m~Y~8d*fJHmu$$aB@|A#2|EXd%D zbjP-x3BU>@NC3pR*sf;>weZwbb97!qpN2&f+{%0sr|r(SZNkVC z6M8k!-EEKef`8Shlyc(Gx<&3$xT`Bkm@RiIS6z9o^}~PR{;}o%FYzpm@9$Zyy!F3d zX{>Z(1sf}L_`h%XR_L%ohZQ=k&|xJx{QDP=6+K+h!~aMRl{(1VrWU#rIWh3No|@~y LqX$ZyPG0>N##qsX diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-displays-relationships-of-root-schema-1.png deleted file mode 100644 index 85bdf63371044ac8aed3929d3602faa865b7a027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7173 zcmeHM`CroMzPEAGnHqIwS}bv?(`~ZRv`#L$a?;AwOwAM%k#;l1CAUAQ&c}Q1>)t=${HnkBdcpI3_&lG_dwbx9*HIU( zHF|5*)YPp;YHA3k>w*2pFFzFy zhTJ(m_C`8lsCj4A_nP~E-n=m?ZB^f%XU5+J*go4@V!TD;-p?L^$HuPexgI`Jx&E4a zi}A19%uYVr`1|2MFYMg(%-b}@>z7+if397<#AXBwkR5OMFv{XZgn}%P^#t=8 z#E#Jm9#WoR%gx5qtG2XSVWr=z(Huk6zjHkTT z0p4%*;#_HhGSn9eKuL_jV<+>ucNIPJ8}~ zJh!zIWFn!j1Vfy;PkyjbIuOC^Ek;G~a&QAQ1Di`{l2A+s4iYSOi95mjp}0R z;tc+N_VCd7;_L)$@9XPZJrp;9+S6RxTRV{>-*9V&S3rK4nVGy=J$a5#-hozx3}60| zj-Kv1%z6=ui>RM&s%9#LEiEnT+WStOshHkRL&*Swt+cuab(O{tJCH=8nmw%snOpY4E;OdfrI z!@xFX-{RN%X^o=~wRvmJ>%A}-hv1H<00*gPNDiN4vVILyr4Y;K1bq$3@{xC`NT@~2 zlLr%cSy)(zoJ}*MzYr~rnE1X7mJY=m*+_*}0G!}W_Ng0n57M&COo%N~$O zNcm(%oqzxY~R=jF?nfpDT}qD;LY=@n6I7#fRZS#C2mzyMJ9EF36 zhm)5UrsIcV`@-vlG%i7o`}```-!v#mSOxsbwu^7z7ZsZ^B&_lFETg#3r!e%G#W8cD z4d4hz>pu^eg*pK?fPJ~BPW;aw*Zt=4#Ny=ZKb&%RC(Tce{&pLwTzK;2$uc(nd;c}t zcu{?;SzTblSSBhk>fr2nyQa3jKgZ&H+aq`mCUc%s8IpG>{rB~2s=0)uGJpKnyDsxw zqKW~fv!1&e;ivX1Ttb)ZnXhXaPfzzTm9Ym8HZDwm0W=Tu`FtD@@bw?7C?3rQ@qt-Z zxDKRhNiJqG^YhQc@sbpCeb#!C2D!)tG)O?LzS%hHVwBwT@{4P(XD!1Mq7Y+v8n5oG5s8>fM@@x3PT~ z6sHnkj*ad0)gu4;r71lW6ev~OV3}T^dNo&^Z6k*3opL`_h4!uUw4eU4EhDflPWasQ z{u7IkOa13aLqwJ0nugZJA$lyY9~a`LgItQt^?GC-5fqYWL|lpj&V|>GJ@g>2$I=c_ zgp(DWX1f}un-G-vRR{|8VA{sm;DKic(+=I%uRZ(mUiu-rj9(1rL@FfRtWltmvW}}L z@i%n@6a%V8QjN^0*jFd_L;rj{9eQ7XI@5f67qkT?Xgx~FfjLV;4))~W1`|I3J~#567G+M{AP;YS zxJxb-V@)@Lz+sHn13Hd#DhUeNZ3Da8dX^XS_M@l)z0f?Qg69cH=yEZ_!H&=)L;Td6 z(`EZ&`8_vp-poKMYm^C>VD8lyx}L>wH3$uekRkdUK`unudNrOdbICBI=wj!(*{^r* z2_LMH6&z4ct$aX>?sTZGgoUviHf*4v&H~240RZEDfzcl7J^@TZGECNt{_Pn{21Kep zQE^@jQjza@(;R)jslME9=EF93YXJKo6ykGV}s%by*l{@s<^IW6jVL1IrwQ5 zh!%6E#Ux2oJMqwvAKgAXd%F${NDE>0H1h3_lsV7~AX5wuhvWTVjpI~8Yhzt%=yX|O zK@R7_dn+7A!s`y6pX@KlN#sxVR{*}JfO8$$c2Ya;Vh4~=1_Sr@?s~ly*H-Aus*d31 zdt^NfUzQz8>z29X@ts|zSmq%^7Tp1x$fH0P$d_7nQW`;;nDd;_*uFK^c9fZ!8EA=c znd5VkoFoxQZ^!@*_fGSQxpQ7g6~LlU6bHJ~2U~S%O9!Jpp)<|th`s_(a(4W1t%Mb_ zOwByZc77Kz~dpxE5dO zYZ1zR3ACULjE#-KFe3WP&xMq^-dB-kkjm){P$DAWTG}5>2AzB`TyGKiGmyojSJhLK zFgs3h4=8PrT|9B(grcAuT-qu3RSb`%p`i$zU8?`mAYr+uIOQtea1$o7-K`&*o+yX# z0#?H|7y;c3quHrzYU7uto884c8JG~XkExt11*+e5G2F>G8~!;sCm?;0I^qK&v2jk$ zn%YV&D*AoMzy5O6&bzT$j(>;J2{Jenv{VWT(ec!#qJ)ZX)XSuGE*%do$c_Uo zWW!OFQ>jS&7X-KFud8eGk325tg$L&(jI${26CK$}Z&vHtgMm>{7Xbx@b))F=(~URj zKDY{Jl%F5Frw1=VdSu&HRaOz0w6EsG#nw-`&fpb`5IK6;Y^Y;zdTrnN31(q?M?$JW zoH65CF&fNEynamzCa(Wn=rZ!q7Xx|c0$hiJO#yZg@DxS9#eAa?dgpdNVqfH6t>(<7 zQldftopxB7dIzR#4KZ{%7Jj_9z1c7+Ox=@u#fErgNRQ}-AKywvhjr(B|HBs>VqLis(TPuF{R*e4&VX1 zl%-_FWH96+u4Ee8f5O){7POxR8V!;Q9}=06u=u&`j60bgUOD?PXPj6%U2x!w4i8dD zSr>_wv2XOxiVj=B-W_|xKEDD4wmr3(g)qO+R{a(4N^|14kyCFQI>;aiC#e)tu#*`G z2!@H@auGr{=nFc6G1r8McuA#VDlc?_G%y$2Bf^=A`GTjH+(>4aW#9aKCWEm!o|Wg4 zAsVcWR*2a+{%D$c5R;(zaCaLSl*pQkp9Lc%0PN+k#e$6yq*xQbmyZCZ0A>2+>CyY1 zj^b#-36XTNWv0iFkjgi7ogObrrQbO zCr^BscqPG#FbK+!@Zru@C?p5&GlEj4@|}_Ll?ZLOoQGMIRthP|7QoKoaJb6(>OPRu z{h9`q{aZD(^)D}nJ;K5WC^%@Yra{anh&fjBdsLVMsKsN@#hI~IglfHB-v9JB#MieM z6f9h{+ouKG;OFL1`8R!edr)Y@N z7zkLDz4;B0ucvOBl+^I@vp_{t;m%MJ#7KliDNd&baMjs1(c{;(5V!4TJ^&7vc>zgR zi|H`gTijO}(w#$8E<&h+jLU>90U;4Jv_aCe32q1>AO$Tu3t(`gz*>Vnr{4pI5z4$W zF!^Z_T~Gp#L6kjy{P-zH2PwBKuo)Um z3Nkb47~0!=dg`4{^~GNP!k3JQ0h;jrjdh^UC@IPWu^Ffh+9oJzkczoXFXOOzCp1j5 zq)wCw^W|P@-9;Ac#OF7WeF~4Z%oRfHH+U{Ofts~Gm@m~Y~8d*fJHmu$$aB@|A#2|EXd%D zbjP-x3BU>@NC3pR*sf;>weZwbb97!qpN2&f+{%0sr|r(SZNkVC z6M8k!-EEKef`8Shlyc(Gx<&3$xT`Bkm@RiIS6z9o^}~PR{;}o%FYzpm@9$Zyy!F3d zX{>Z(1sf}L_`h%XR_L%ohZQ=k&|xJx{QDP=6+K+h!~aMRl{(1VrWU#rIWh3No|@~y LqX$ZyPG0>N##qsX diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-from-parent-to-direct-child-relationships-and-selects-child-1.png deleted file mode 100644 index 85bdf63371044ac8aed3929d3602faa865b7a027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7173 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 LqX$ZyPG0>N##qsX diff --git a/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png b/frontend/app/src/entities/nodes/relationships/ui/__screenshots__/relationship-hierarchical-combobox-list.test.tsx/RelationshipHierarchicalComboboxList-navigates-through-multiple-levels-of-nested-relationships-1.png deleted file mode 100644 index 85bdf63371044ac8aed3929d3602faa865b7a027..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7173 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 LqX$ZyPG0>N##qsX diff --git a/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx index 06fafbe958..e01e350e5d 100644 --- a/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/add-relationship-action.tsx @@ -1,5 +1,5 @@ import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { Button } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx index 81cdf72b92..3b102d7533 100644 --- a/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-combobox-list.tsx @@ -1,7 +1,7 @@ import { relationshipsInfiniteQueryOptions } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships.query"; import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { ComboboxEmpty, ComboboxItem, ComboboxList } from "@/shared/components/ui/combobox"; import { Spinner } from "@/shared/components/ui/spinner"; diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx index caa3f3e1ca..9a272df1a6 100644 --- a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.test.tsx @@ -1,7 +1,7 @@ import { getRelationships } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships"; import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; import { RelationshipHierarchicalComboboxList } from "@/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list"; -import { genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import { store } from "@/shared/stores"; import { describe, expect, it, vi } from "vitest"; import { render } from "../../../../../tests/components/render"; diff --git a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx index f636430f45..fe84b7dbdc 100644 --- a/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx +++ b/frontend/app/src/entities/nodes/relationships/ui/relationship-hierarchical-combobox-list.tsx @@ -1,7 +1,7 @@ import { relationshipsInfiniteQueryOptions } from "@/entities/nodes/relationships/domain/get-relationships/get-relationships.query"; import { RelationshipNode } from "@/entities/nodes/relationships/domain/types"; -import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import { getRootSchemaOfHierarchicalSchema, isHierarchicalSchema } from "@/entities/schema/utils"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/entities/nodes/metaEditFieldDetails.atom.ts b/frontend/app/src/entities/nodes/stores/metaEditFieldDetails.atom.ts similarity index 100% rename from frontend/app/src/entities/nodes/metaEditFieldDetails.atom.ts rename to frontend/app/src/entities/nodes/stores/metaEditFieldDetails.atom.ts diff --git a/frontend/app/src/entities/nodes/showMetaEdit.atom.ts b/frontend/app/src/entities/nodes/stores/showMetaEdit.atom.ts similarity index 100% rename from frontend/app/src/entities/nodes/showMetaEdit.atom.ts rename to frontend/app/src/entities/nodes/stores/showMetaEdit.atom.ts diff --git a/frontend/app/src/entities/nodes/objects.ts b/frontend/app/src/entities/nodes/utils.ts similarity index 98% rename from frontend/app/src/entities/nodes/objects.ts rename to frontend/app/src/entities/nodes/utils.ts index a90b51f3d3..a1a4fd53aa 100644 --- a/frontend/app/src/entities/nodes/objects.ts +++ b/frontend/app/src/entities/nodes/utils.ts @@ -6,7 +6,7 @@ import { IP_PREFIX_GENERIC, } from "@/entities/ipam/constants"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import { store } from "@/shared/stores"; import { constructPath, overrideQueryParams } from "../../shared/api/rest/fetch"; diff --git a/frontend/app/src/entities/proposed-changes/proposedChanges.atom.ts b/frontend/app/src/entities/proposed-changes/stores/proposedChanges.atom.ts similarity index 100% rename from frontend/app/src/entities/proposed-changes/proposedChanges.atom.ts rename to frontend/app/src/entities/proposed-changes/stores/proposedChanges.atom.ts diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-approve-button.tsx similarity index 95% rename from frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx rename to frontend/app/src/entities/proposed-changes/ui/action-button/pc-approve-button.tsx index da43ab8777..16e5a29e05 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-approve-button.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-approve-button.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-close-button.tsx similarity index 96% rename from frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx rename to frontend/app/src/entities/proposed-changes/ui/action-button/pc-close-button.tsx index 45c128ddd2..f6bf765c32 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-close-button.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-close-button.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-merge-button.tsx similarity index 97% rename from frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx rename to frontend/app/src/entities/proposed-changes/ui/action-button/pc-merge-button.tsx index 0356a629bd..6fe0eca297 100644 --- a/frontend/app/src/entities/proposed-changes/action-button/pc-merge-button.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/action-button/pc-merge-button.tsx @@ -1,5 +1,5 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/proposed-changes/checks-tab.tsx b/frontend/app/src/entities/proposed-changes/ui/checks-tab.tsx similarity index 100% rename from frontend/app/src/entities/proposed-changes/checks-tab.tsx rename to frontend/app/src/entities/proposed-changes/ui/checks-tab.tsx diff --git a/frontend/app/src/entities/proposed-changes/checks.ts b/frontend/app/src/entities/proposed-changes/ui/checks.ts similarity index 100% rename from frontend/app/src/entities/proposed-changes/checks.ts rename to frontend/app/src/entities/proposed-changes/ui/checks.ts diff --git a/frontend/app/src/entities/proposed-changes/conversations.tsx b/frontend/app/src/entities/proposed-changes/ui/conversations.tsx similarity index 97% rename from frontend/app/src/entities/proposed-changes/conversations.tsx rename to frontend/app/src/entities/proposed-changes/ui/conversations.tsx index 1cb326b34a..ab0d1ba550 100644 --- a/frontend/app/src/entities/proposed-changes/conversations.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/conversations.tsx @@ -4,8 +4,8 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT, PROPOSED_CHANGES_THREAD_OBJECT, } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { deleteObject } from "@/entities/nodes/api/deleteObject"; import { getProposedChangesThreads } from "@/entities/proposed-changes/api/getProposedChangesThreads"; diff --git a/frontend/app/src/entities/proposed-changes/counter.tsx b/frontend/app/src/entities/proposed-changes/ui/counter.tsx similarity index 91% rename from frontend/app/src/entities/proposed-changes/counter.tsx rename to frontend/app/src/entities/proposed-changes/ui/counter.tsx index 7748015fd4..9bf9176c92 100644 --- a/frontend/app/src/entities/proposed-changes/counter.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/counter.tsx @@ -1,7 +1,7 @@ import useQuery from "@/shared/api/graphql/useQuery"; import { Badge } from "@/shared/components/ui/badge"; import { gql } from "@apollo/client"; -import LoadingScreen from "../../shared/components/loading-screen"; +import LoadingScreen from "../../../shared/components/loading-screen"; type tProposedChangesCounter = { query: string; diff --git a/frontend/app/src/entities/proposed-changes/create-form.tsx b/frontend/app/src/entities/proposed-changes/ui/create-form.tsx similarity index 95% rename from frontend/app/src/entities/proposed-changes/create-form.tsx rename to frontend/app/src/entities/proposed-changes/ui/create-form.tsx index f441ffd5e5..e245ac17e3 100644 --- a/frontend/app/src/entities/proposed-changes/create-form.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/create-form.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { branchesToSelectOptions } from "@/entities/branches/branches"; -import { branchesState } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { branchesState } from "@/entities/branches/stores"; +import { branchesToSelectOptions } from "@/entities/branches/utils"; import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; import { CREATE_PROPOSED_CHANGE } from "@/entities/proposed-changes/api/createProposedChange"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { LinkButton } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/proposed-changes/diff-filter.tsx b/frontend/app/src/entities/proposed-changes/ui/diff-filter.tsx similarity index 100% rename from frontend/app/src/entities/proposed-changes/diff-filter.tsx rename to frontend/app/src/entities/proposed-changes/ui/diff-filter.tsx diff --git a/frontend/app/src/entities/proposed-changes/diff-summary.tsx b/frontend/app/src/entities/proposed-changes/ui/diff-summary.tsx similarity index 97% rename from frontend/app/src/entities/proposed-changes/diff-summary.tsx rename to frontend/app/src/entities/proposed-changes/ui/diff-summary.tsx index ceaf62c4b8..38dbdc63f4 100644 --- a/frontend/app/src/entities/proposed-changes/diff-summary.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/diff-summary.tsx @@ -9,7 +9,7 @@ import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; -import { DIFF_STATUS, DiffStatus } from "../diff/node-diff/types"; +import { DIFF_STATUS, DiffStatus } from "../../diff/node-diff/types"; interface DiffTreeSummary { num_added: number; diff --git a/frontend/app/src/entities/proposed-changes/item-info.tsx b/frontend/app/src/entities/proposed-changes/ui/item-info.tsx similarity index 100% rename from frontend/app/src/entities/proposed-changes/item-info.tsx rename to frontend/app/src/entities/proposed-changes/ui/item-info.tsx diff --git a/frontend/app/src/entities/proposed-changes/items.tsx b/frontend/app/src/entities/proposed-changes/ui/items.tsx similarity index 98% rename from frontend/app/src/entities/proposed-changes/items.tsx rename to frontend/app/src/entities/proposed-changes/ui/items.tsx index 6c4aa7d350..854aa46b53 100644 --- a/frontend/app/src/entities/proposed-changes/items.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/items.tsx @@ -13,11 +13,11 @@ import { DELETE_PROPOSED_CHANGE } from "@/entities/proposed-changes/api/deletePr import { GET_PROPOSED_CHANGES } from "@/entities/proposed-changes/api/getProposedChanges"; import { getProposedChangesArtifacts } from "@/entities/proposed-changes/api/getProposedChangesArtifacts"; import { getProposedChangesTasks } from "@/entities/proposed-changes/api/getProposedChangesTasks"; -import { ProposedChangesCounter } from "@/entities/proposed-changes/counter"; -import { ProposedChangeDiffSummary } from "@/entities/proposed-changes/diff-summary"; -import { ProposedChangesInfo } from "@/entities/proposed-changes/item-info"; -import { ProposedChangesReviewers } from "@/entities/proposed-changes/reviewers"; -import { useSchema } from "@/entities/schema/useSchema"; +import { ProposedChangesCounter } from "@/entities/proposed-changes/ui/counter"; +import { ProposedChangeDiffSummary } from "@/entities/proposed-changes/ui/diff-summary"; +import { ProposedChangesInfo } from "@/entities/proposed-changes/ui/item-info"; +import { ProposedChangesReviewers } from "@/entities/proposed-changes/ui/reviewers"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { constructPath } from "@/shared/api/rest/fetch"; import { TabsButtons } from "@/shared/components/buttons/tabs-buttons"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; @@ -32,7 +32,7 @@ import { useState } from "react"; import { Link, LinkProps, useNavigate } from "react-router-dom"; import { toast } from "react-toastify"; import { StringParam, useQueryParam } from "use-query-params"; -import { getPermission } from "../permission/utils"; +import { getPermission } from "../../permission/utils"; const STATES = { open: ["open"], diff --git a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx b/frontend/app/src/entities/proposed-changes/ui/proposed-change-details.tsx similarity index 89% rename from frontend/app/src/entities/proposed-changes/proposed-change-details.tsx rename to frontend/app/src/entities/proposed-changes/ui/proposed-change-details.tsx index 7f6dae1abe..ee5098daea 100644 --- a/frontend/app/src/entities/proposed-changes/proposed-change-details.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/proposed-change-details.tsx @@ -1,11 +1,11 @@ import { PROPOSED_CHANGES_OBJECT, TASK_OBJECT } from "@/config/constants"; -import { PcApproveButton } from "@/entities/proposed-changes/action-button/pc-approve-button"; -import { PcCloseButton } from "@/entities/proposed-changes/action-button/pc-close-button"; -import { PcMergeButton } from "@/entities/proposed-changes/action-button/pc-merge-button"; -import { Conversations } from "@/entities/proposed-changes/conversations"; -import { ProposedChangeEditTrigger } from "@/entities/proposed-changes/proposed-change-edit-trigger"; -import { getProposedChangesStateBadgeType } from "@/entities/proposed-changes/proposed-changes"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; +import { PcApproveButton } from "@/entities/proposed-changes/ui/action-button/pc-approve-button"; +import { PcCloseButton } from "@/entities/proposed-changes/ui/action-button/pc-close-button"; +import { PcMergeButton } from "@/entities/proposed-changes/ui/action-button/pc-merge-button"; +import { Conversations } from "@/entities/proposed-changes/ui/conversations"; +import { ProposedChangeEditTrigger } from "@/entities/proposed-changes/ui/proposed-change-edit-trigger"; +import { getProposedChangesStateBadgeType } from "@/entities/proposed-changes/ui/proposed-changes"; import { TASK_DETAILS_CHECK } from "@/entities/tasks/api/checkTasksItemDetails"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; @@ -23,11 +23,11 @@ import { Icon } from "@iconify-icon/react"; import { useAtom } from "jotai"; import { HTMLAttributes } from "react"; import { useNavigate, useParams } from "react-router-dom"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { TaskDisplay } from "../branches/task-display"; -import { getObjectPermissionsQuery } from "../permission/queries/getObjectPermissions"; -import { getPermission } from "../permission/utils"; -import { PROPOSED_CHANGE_MERGE_WORKFLOW } from "../tasks/constants"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getObjectPermissionsQuery } from "../../permission/queries/getObjectPermissions"; +import { getPermission } from "../../permission/utils"; +import { PROPOSED_CHANGE_MERGE_WORKFLOW } from "../../tasks/constants"; +import { TaskDisplay } from "../../tasks/ui/task-display"; export const ProposedChangeDetails = ({ className, ...props }: HTMLAttributes) => { const { proposedChangeId } = useParams(); diff --git a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx b/frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-form.tsx similarity index 98% rename from frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx rename to frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-form.tsx index 4a5a46b529..fc1c1fd348 100644 --- a/frontend/app/src/entities/proposed-changes/form/proposed-change-edit-form.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-form.tsx @@ -1,8 +1,8 @@ import { ACCOUNT_GENERIC_OBJECT, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import DynamicForm from "@/shared/components/form/dynamic-form"; import { DynamicFieldProps, FormFieldValue } from "@/shared/components/form/type"; diff --git a/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx b/frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-trigger.tsx similarity index 91% rename from frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx rename to frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-trigger.tsx index f8727f729f..b967b080bc 100644 --- a/frontend/app/src/entities/proposed-changes/proposed-change-edit-trigger.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/proposed-change-edit-trigger.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_EDITABLE_STATE, PROPOSED_CHANGES_OBJECT } from "@/config/constants"; -import { ProposedChangeEditForm } from "@/entities/proposed-changes/form/proposed-change-edit-form"; -import { useSchema } from "@/entities/schema/useSchema"; +import { ProposedChangeEditForm } from "@/entities/proposed-changes/ui/proposed-change-edit-form"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; @@ -9,8 +9,8 @@ import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { gql } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; -import { getObjectPermissionsQuery } from "../permission/queries/getObjectPermissions"; -import { getPermission } from "../permission/utils"; +import { getObjectPermissionsQuery } from "../../permission/queries/getObjectPermissions"; +import { getPermission } from "../../permission/utils"; export const ProposedChangeEditTrigger = ({ proposedChangesDetails, diff --git a/frontend/app/src/entities/proposed-changes/proposed-changes.ts b/frontend/app/src/entities/proposed-changes/ui/proposed-changes.ts similarity index 100% rename from frontend/app/src/entities/proposed-changes/proposed-changes.ts rename to frontend/app/src/entities/proposed-changes/ui/proposed-changes.ts diff --git a/frontend/app/src/entities/proposed-changes/reviewers.tsx b/frontend/app/src/entities/proposed-changes/ui/reviewers.tsx similarity index 100% rename from frontend/app/src/entities/proposed-changes/reviewers.tsx rename to frontend/app/src/entities/proposed-changes/ui/reviewers.tsx diff --git a/frontend/app/src/entities/repository/repository-action-menu.tsx b/frontend/app/src/entities/repository/ui/repository-action-menu.tsx similarity index 100% rename from frontend/app/src/entities/repository/repository-action-menu.tsx rename to frontend/app/src/entities/repository/ui/repository-action-menu.tsx diff --git a/frontend/app/src/entities/repository/repository-form.tsx b/frontend/app/src/entities/repository/ui/repository-form.tsx similarity index 96% rename from frontend/app/src/entities/repository/repository-form.tsx rename to frontend/app/src/entities/repository/ui/repository-form.tsx index bc6b6c4b9f..b05d43ff7a 100644 --- a/frontend/app/src/entities/repository/repository-form.tsx +++ b/frontend/app/src/entities/repository/ui/repository-form.tsx @@ -1,5 +1,5 @@ -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/resource-manager/graphql/resource-pool.ts b/frontend/app/src/entities/resource-manager/api/resource-pool.ts similarity index 100% rename from frontend/app/src/entities/resource-manager/graphql/resource-pool.ts rename to frontend/app/src/entities/resource-manager/api/resource-pool.ts diff --git a/frontend/app/src/entities/resource-manager/common/ResourcePoolUtilization.tsx b/frontend/app/src/entities/resource-manager/ui/ResourcePoolUtilization.tsx similarity index 100% rename from frontend/app/src/entities/resource-manager/common/ResourcePoolUtilization.tsx rename to frontend/app/src/entities/resource-manager/ui/ResourcePoolUtilization.tsx diff --git a/frontend/app/src/entities/resource-manager/number-pool-form.tsx b/frontend/app/src/entities/resource-manager/ui/number-pool-form.tsx similarity index 98% rename from frontend/app/src/entities/resource-manager/number-pool-form.tsx rename to frontend/app/src/entities/resource-manager/ui/number-pool-form.tsx index 4602fb8c1b..7cc5bb5a27 100644 --- a/frontend/app/src/entities/resource-manager/number-pool-form.tsx +++ b/frontend/app/src/entities/resource-manager/ui/number-pool-form.tsx @@ -1,5 +1,5 @@ import { NUMBER_POOL_OBJECT, SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; @@ -7,7 +7,7 @@ import { NUMBER_POOL_NODE_ATTRIBUTE_FIELD, NUMBER_POOL_NODE_FIELD, } from "@/entities/resource-manager/constants"; -import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/entities/resource-manager/resource-selector.tsx b/frontend/app/src/entities/resource-manager/ui/resource-selector.tsx similarity index 93% rename from frontend/app/src/entities/resource-manager/resource-selector.tsx rename to frontend/app/src/entities/resource-manager/ui/resource-selector.tsx index df97fe8781..fcca2114ac 100644 --- a/frontend/app/src/entities/resource-manager/resource-selector.tsx +++ b/frontend/app/src/entities/resource-manager/ui/resource-selector.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; import { constructPath } from "@/shared/api/rest/fetch"; import { PropertyList } from "@/shared/components/table/property-list"; import { Badge } from "@/shared/components/ui/badge"; @@ -6,7 +6,7 @@ import { Card, CardWithBorder } from "@/shared/components/ui/card"; import { Icon } from "@iconify-icon/react"; import { HTMLAttributes } from "react"; import { Link } from "react-router-dom"; -import ResourcePoolUtilization from "./common/ResourcePoolUtilization"; +import ResourcePoolUtilization from "./ResourcePoolUtilization"; export type ResourceProps = { id: string; diff --git a/frontend/app/src/entities/role-manager/account-form.tsx b/frontend/app/src/entities/role-manager/ui/account-form.tsx similarity index 97% rename from frontend/app/src/entities/role-manager/account-form.tsx rename to frontend/app/src/entities/role-manager/ui/account-form.tsx index 2b9a63b2bf..d4f1605267 100644 --- a/frontend/app/src/entities/role-manager/account-form.tsx +++ b/frontend/app/src/entities/role-manager/ui/account-form.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_GROUP_OBJECT, ACCOUNT_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import InputField from "@/shared/components/form/fields/input.field"; diff --git a/frontend/app/src/entities/role-manager/account-group-form.tsx b/frontend/app/src/entities/role-manager/ui/account-group-form.tsx similarity index 97% rename from frontend/app/src/entities/role-manager/account-group-form.tsx rename to frontend/app/src/entities/role-manager/ui/account-group-form.tsx index 6c14185188..f2e7220349 100644 --- a/frontend/app/src/entities/role-manager/account-group-form.tsx +++ b/frontend/app/src/entities/role-manager/ui/account-group-form.tsx @@ -4,11 +4,11 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { Button } from "@/shared/components/buttons/button-primitive"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; diff --git a/frontend/app/src/entities/role-manager/account-role-form.tsx b/frontend/app/src/entities/role-manager/ui/account-role-form.tsx similarity index 98% rename from frontend/app/src/entities/role-manager/account-role-form.tsx rename to frontend/app/src/entities/role-manager/ui/account-role-form.tsx index 2e5dcd4549..697299d190 100644 --- a/frontend/app/src/entities/role-manager/account-role-form.tsx +++ b/frontend/app/src/entities/role-manager/ui/account-role-form.tsx @@ -3,7 +3,7 @@ import { ACCOUNT_PERMISSION_OBJECT, ACCOUNT_ROLE_OBJECT, } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; diff --git a/frontend/app/src/entities/role-manager/accounts.tsx b/frontend/app/src/entities/role-manager/ui/accounts.tsx similarity index 95% rename from frontend/app/src/entities/role-manager/accounts.tsx rename to frontend/app/src/entities/role-manager/ui/accounts.tsx index f90c085e2e..5cfa845cd9 100644 --- a/frontend/app/src/entities/role-manager/accounts.tsx +++ b/frontend/app/src/entities/role-manager/ui/accounts.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GENERIC_OBJECT, ACCOUNT_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_ACCOUNTS } from "@/entities/role-manager/api/getAccounts"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; @@ -20,8 +20,8 @@ import { useDebounce } from "@/shared/hooks/useDebounce"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { getPermission } from "../permission/utils"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getPermission } from "../../permission/utils"; function Accounts() { const [search, setSearch] = useState(""); diff --git a/frontend/app/src/entities/role-manager/global-permissions-form.tsx b/frontend/app/src/entities/role-manager/ui/global-permissions-form.tsx similarity index 96% rename from frontend/app/src/entities/role-manager/global-permissions-form.tsx rename to frontend/app/src/entities/role-manager/ui/global-permissions-form.tsx index 97740b7131..5185021c96 100644 --- a/frontend/app/src/entities/role-manager/global-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/ui/global-permissions-form.tsx @@ -1,5 +1,5 @@ import { ACCOUNT_ROLE_OBJECT, GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; @@ -18,12 +18,12 @@ import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { globalDecisionOptions } from "./constants"; +import { globalDecisionOptions } from "../constants"; interface NumberPoolFormProps extends Pick { currentObject?: Record; diff --git a/frontend/app/src/entities/role-manager/global-permissions.tsx b/frontend/app/src/entities/role-manager/ui/global-permissions.tsx similarity index 95% rename from frontend/app/src/entities/role-manager/global-permissions.tsx rename to frontend/app/src/entities/role-manager/ui/global-permissions.tsx index b3943e8ba1..ec7ff39e9d 100644 --- a/frontend/app/src/entities/role-manager/global-permissions.tsx +++ b/frontend/app/src/entities/role-manager/ui/global-permissions.tsx @@ -1,7 +1,7 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_GLOBAL_PERMISSIONS } from "@/entities/role-manager/api/getGlobalPermissions"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; @@ -20,9 +20,9 @@ import { useDebounce } from "@/shared/hooks/useDebounce"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { getPermission } from "../permission/utils"; -import { globalDecisionOptions } from "./constants"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getPermission } from "../../permission/utils"; +import { globalDecisionOptions } from "../constants"; function GlobalPermissions() { const schemaKindName = useAtomValue(schemaKindNameState); diff --git a/frontend/app/src/entities/role-manager/group-member.tsx b/frontend/app/src/entities/role-manager/ui/group-member.tsx similarity index 100% rename from frontend/app/src/entities/role-manager/group-member.tsx rename to frontend/app/src/entities/role-manager/ui/group-member.tsx diff --git a/frontend/app/src/entities/role-manager/groups.tsx b/frontend/app/src/entities/role-manager/ui/groups.tsx similarity index 95% rename from frontend/app/src/entities/role-manager/groups.tsx rename to frontend/app/src/entities/role-manager/ui/groups.tsx index 7560ecd9b9..048982833e 100644 --- a/frontend/app/src/entities/role-manager/groups.tsx +++ b/frontend/app/src/entities/role-manager/ui/groups.tsx @@ -1,7 +1,7 @@ import { ACCOUNT_GROUP_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_GROUPS } from "@/entities/role-manager/api/getGroups"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; @@ -19,8 +19,8 @@ import { useDebounce } from "@/shared/hooks/useDebounce"; import { NetworkStatus } from "@apollo/client"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { getPermission } from "../permission/utils"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getPermission } from "../../permission/utils"; import { GroupMembers } from "./group-member"; function Groups() { diff --git a/frontend/app/src/entities/role-manager/index.tsx b/frontend/app/src/entities/role-manager/ui/index.tsx similarity index 100% rename from frontend/app/src/entities/role-manager/index.tsx rename to frontend/app/src/entities/role-manager/ui/index.tsx diff --git a/frontend/app/src/entities/role-manager/object-permissions-form.tsx b/frontend/app/src/entities/role-manager/ui/object-permissions-form.tsx similarity index 96% rename from frontend/app/src/entities/role-manager/object-permissions-form.tsx rename to frontend/app/src/entities/role-manager/ui/object-permissions-form.tsx index a7f7433f23..cc0fa2ecd8 100644 --- a/frontend/app/src/entities/role-manager/object-permissions-form.tsx +++ b/frontend/app/src/entities/role-manager/ui/object-permissions-form.tsx @@ -1,5 +1,5 @@ import { ACCOUNT_ROLE_OBJECT, OBJECT_PERMISSION_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; @@ -18,13 +18,13 @@ import { useAtomValue } from "jotai"; import { FieldValues, useForm } from "react-hook-form"; import { toast } from "react-toastify"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import DropdownField from "@/shared/components/form/fields/dropdown.field"; import RelationshipManyField from "@/shared/components/form/fields/relationship-many.field"; import { NameSelect } from "@/shared/components/form/name-select"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { isRequired } from "@/shared/components/form/utils/validation"; -import { objectDecisionOptions } from "./constants"; +import { objectDecisionOptions } from "../constants"; interface NumberPoolFormProps extends Pick { currentObject?: Record; diff --git a/frontend/app/src/entities/role-manager/object-permissions.tsx b/frontend/app/src/entities/role-manager/ui/object-permissions.tsx similarity index 95% rename from frontend/app/src/entities/role-manager/object-permissions.tsx rename to frontend/app/src/entities/role-manager/ui/object-permissions.tsx index 819ffe6a06..fe71d83ae9 100644 --- a/frontend/app/src/entities/role-manager/object-permissions.tsx +++ b/frontend/app/src/entities/role-manager/ui/object-permissions.tsx @@ -1,7 +1,7 @@ import { OBJECT_PERMISSION_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_OBJECT_PERMISSIONS } from "@/entities/role-manager/api/getObjectPermissions"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; @@ -22,9 +22,9 @@ import { NetworkStatus } from "@apollo/client"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai"; import { ReactNode, useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { getPermission } from "../permission/utils"; -import { objectDecisionOptions } from "./constants"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getPermission } from "../../permission/utils"; +import { objectDecisionOptions } from "../constants"; const icons: Record = { allow: ( diff --git a/frontend/app/src/entities/role-manager/relationship-display.tsx b/frontend/app/src/entities/role-manager/ui/relationship-display.tsx similarity index 100% rename from frontend/app/src/entities/role-manager/relationship-display.tsx rename to frontend/app/src/entities/role-manager/ui/relationship-display.tsx diff --git a/frontend/app/src/entities/role-manager/roles.tsx b/frontend/app/src/entities/role-manager/ui/roles.tsx similarity index 95% rename from frontend/app/src/entities/role-manager/roles.tsx rename to frontend/app/src/entities/role-manager/ui/roles.tsx index 9218d5719b..ef5358cc36 100644 --- a/frontend/app/src/entities/role-manager/roles.tsx +++ b/frontend/app/src/entities/role-manager/ui/roles.tsx @@ -1,15 +1,15 @@ import { ACCOUNT_ROLE_OBJECT } from "@/config/constants"; import { GET_ROLE_MANAGEMENT_ROLES } from "@/entities/role-manager/api/getRoles"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; import ErrorScreen from "@/shared/components/errors/error-screen"; import ModalDeleteObject from "@/shared/components/modals/modal-delete-object"; import { Table, tRowValue } from "@/shared/components/table/table"; import { Pagination } from "@/shared/components/ui/pagination"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; +import LoadingScreen from "../../../shared/components/loading-screen"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import useQuery from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; @@ -21,7 +21,7 @@ import { Badge } from "@/shared/components/ui/badge"; import { SearchInput } from "@/shared/components/ui/search-input"; import { useDebounce } from "@/shared/hooks/useDebounce"; import { NetworkStatus } from "@apollo/client"; -import { getPermission } from "../permission/utils"; +import { getPermission } from "../../permission/utils"; function Roles() { const [search, setSearch] = useState(""); diff --git a/frontend/app/src/entities/schema/withSchemaContext.tsx b/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx similarity index 92% rename from frontend/app/src/entities/schema/withSchemaContext.tsx rename to frontend/app/src/entities/schema/decorators/withSchemaContext.tsx index 7babe542a4..c90134d807 100644 --- a/frontend/app/src/entities/schema/withSchemaContext.tsx +++ b/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { findSelectedBranch } from "@/entities/branches/branches"; -import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { findSelectedBranch } from "@/entities/branches/utils"; +import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; import { IProfileSchema, currentSchemaHashAtom, @@ -12,10 +12,10 @@ import { namespacesState, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; -import { schemaKindLabelState } from "@/entities/schema/schemaKindLabel.atom"; -import { schemaKindNameState } from "@/entities/schema/schemaKindName.atom"; -import { tokenSchema } from "@/entities/user-profile/token-schema"; +} from "@/entities/schema/stores/schema.atom"; +import { schemaKindLabelState } from "@/entities/schema/stores/schemaKindLabel.atom"; +import { schemaKindNameState } from "@/entities/schema/stores/schemaKindName.atom"; +import { tokenSchema } from "@/entities/user-profile/ui/token-schema"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { fetchUrl } from "@/shared/api/rest/fetch"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; diff --git a/frontend/app/src/entities/schema/get-schema.test.ts b/frontend/app/src/entities/schema/domain/get-schema.test.ts similarity index 96% rename from frontend/app/src/entities/schema/get-schema.test.ts rename to frontend/app/src/entities/schema/domain/get-schema.test.ts index 3fb32e9eea..d8044d5314 100644 --- a/frontend/app/src/entities/schema/get-schema.test.ts +++ b/frontend/app/src/entities/schema/domain/get-schema.test.ts @@ -1,11 +1,11 @@ -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it } from "vitest"; import { generateGenericSchema, generateNodeSchema, generateProfileSchema, -} from "../../../tests/fake/schema"; +} from "../../../../tests/fake/schema"; import { getSchema } from "./get-schema"; describe("getSchema", () => { diff --git a/frontend/app/src/entities/schema/get-schema.ts b/frontend/app/src/entities/schema/domain/get-schema.ts similarity index 97% rename from frontend/app/src/entities/schema/get-schema.ts rename to frontend/app/src/entities/schema/domain/get-schema.ts index d565e2fb06..8964834d2a 100644 --- a/frontend/app/src/entities/schema/get-schema.ts +++ b/frontend/app/src/entities/schema/domain/get-schema.ts @@ -5,7 +5,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { store } from "@/shared/stores"; type GetSchema = (kind?: string | null) => diff --git a/frontend/app/src/entities/schema/useSchema.ts b/frontend/app/src/entities/schema/hooks/useSchema.ts similarity index 97% rename from frontend/app/src/entities/schema/useSchema.ts rename to frontend/app/src/entities/schema/hooks/useSchema.ts index f365c4f520..d56eed7d35 100644 --- a/frontend/app/src/entities/schema/useSchema.ts +++ b/frontend/app/src/entities/schema/hooks/useSchema.ts @@ -5,7 +5,7 @@ import { iNodeSchema, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { useAtomValue } from "jotai/index"; type UseSchema = (kind?: string | null) => diff --git a/frontend/app/src/entities/schema/schema.atom.ts b/frontend/app/src/entities/schema/stores/schema.atom.ts similarity index 100% rename from frontend/app/src/entities/schema/schema.atom.ts rename to frontend/app/src/entities/schema/stores/schema.atom.ts diff --git a/frontend/app/src/entities/schema/schemaKindLabel.atom.ts b/frontend/app/src/entities/schema/stores/schemaKindLabel.atom.ts similarity index 100% rename from frontend/app/src/entities/schema/schemaKindLabel.atom.ts rename to frontend/app/src/entities/schema/stores/schemaKindLabel.atom.ts diff --git a/frontend/app/src/entities/schema/schemaKindName.atom.ts b/frontend/app/src/entities/schema/stores/schemaKindName.atom.ts similarity index 100% rename from frontend/app/src/entities/schema/schemaKindName.atom.ts rename to frontend/app/src/entities/schema/stores/schemaKindName.atom.ts diff --git a/frontend/app/src/entities/schema/attribute-display.tsx b/frontend/app/src/entities/schema/ui/attribute-display.tsx similarity index 100% rename from frontend/app/src/entities/schema/attribute-display.tsx rename to frontend/app/src/entities/schema/ui/attribute-display.tsx diff --git a/frontend/app/src/entities/schema/relationship-display.tsx b/frontend/app/src/entities/schema/ui/relationship-display.tsx similarity index 100% rename from frontend/app/src/entities/schema/relationship-display.tsx rename to frontend/app/src/entities/schema/ui/relationship-display.tsx diff --git a/frontend/app/src/entities/schema/schema-help-menu.tsx b/frontend/app/src/entities/schema/ui/schema-help-menu.tsx similarity index 92% rename from frontend/app/src/entities/schema/schema-help-menu.tsx rename to frontend/app/src/entities/schema/ui/schema-help-menu.tsx index 119a1352f5..caba2c7c5e 100644 --- a/frontend/app/src/entities/schema/schema-help-menu.tsx +++ b/frontend/app/src/entities/schema/ui/schema-help-menu.tsx @@ -1,7 +1,7 @@ import { INFRAHUB_DOC_LOCAL } from "@/config/config"; import { MENU_EXCLUDELIST } from "@/config/constants"; -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { Button } from "@/shared/components/buttons/button-primitive"; import { DropdownMenu, diff --git a/frontend/app/src/entities/schema/schema-selector.tsx b/frontend/app/src/entities/schema/ui/schema-selector.tsx similarity index 98% rename from frontend/app/src/entities/schema/schema-selector.tsx rename to frontend/app/src/entities/schema/ui/schema-selector.tsx index 66c4cf3f1f..5a0da10723 100644 --- a/frontend/app/src/entities/schema/schema-selector.tsx +++ b/frontend/app/src/entities/schema/ui/schema-selector.tsx @@ -4,7 +4,7 @@ import { genericsState, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import Accordion from "@/shared/components/display/accordion"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/entities/schema/schema-viewer.tsx b/frontend/app/src/entities/schema/ui/schema-viewer.tsx similarity index 99% rename from frontend/app/src/entities/schema/schema-viewer.tsx rename to frontend/app/src/entities/schema/ui/schema-viewer.tsx index bd6fea8542..783c18c74a 100644 --- a/frontend/app/src/entities/schema/schema-viewer.tsx +++ b/frontend/app/src/entities/schema/ui/schema-viewer.tsx @@ -4,7 +4,7 @@ import { genericsState, profilesAtom, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { isGenericSchema, isNodeSchema, isProfileSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/entities/schema/styled.tsx b/frontend/app/src/entities/schema/ui/styled.tsx similarity index 100% rename from frontend/app/src/entities/schema/styled.tsx rename to frontend/app/src/entities/schema/ui/styled.tsx diff --git a/frontend/app/src/entities/schema/utils.test.ts b/frontend/app/src/entities/schema/utils.test.ts index ae9db70d09..6dc710af8f 100644 --- a/frontend/app/src/entities/schema/utils.test.ts +++ b/frontend/app/src/entities/schema/utils.test.ts @@ -1,4 +1,4 @@ -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { diff --git a/frontend/app/src/entities/schema/utils.ts b/frontend/app/src/entities/schema/utils.ts index 89e5b7d35b..bd1a49f68a 100644 --- a/frontend/app/src/entities/schema/utils.ts +++ b/frontend/app/src/entities/schema/utils.ts @@ -4,7 +4,7 @@ import { iGenericSchema, iNodeSchema, schemaState, -} from "@/entities/schema/schema.atom"; +} from "@/entities/schema/stores/schema.atom"; import { store } from "@/shared/stores"; export const isOfKind = (kind: string, schema: IModelSchema) => { diff --git a/frontend/app/src/entities/tasks/logs.tsx b/frontend/app/src/entities/tasks/ui/logs.tsx similarity index 100% rename from frontend/app/src/entities/tasks/logs.tsx rename to frontend/app/src/entities/tasks/ui/logs.tsx diff --git a/frontend/app/src/entities/branches/task-display.tsx b/frontend/app/src/entities/tasks/ui/task-display.tsx similarity index 96% rename from frontend/app/src/entities/branches/task-display.tsx rename to frontend/app/src/entities/tasks/ui/task-display.tsx index 2c23ee9b87..f4274455f0 100644 --- a/frontend/app/src/entities/branches/task-display.tsx +++ b/frontend/app/src/entities/tasks/ui/task-display.tsx @@ -6,8 +6,8 @@ import { DateDisplay } from "@/shared/components/display/date-display"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { Badge } from "@/shared/components/ui/badge"; import { classNames } from "@/shared/utils/common"; -import LoadingScreen from "../../shared/components/loading-screen"; -import { getSeverityBadge, tLog } from "../tasks/logs"; +import LoadingScreen from "../../../shared/components/loading-screen"; +import { getSeverityBadge, tLog } from "./logs"; const background = { // Blue diff --git a/frontend/app/src/entities/tasks/task-item-details.tsx b/frontend/app/src/entities/tasks/ui/task-item-details.tsx similarity index 100% rename from frontend/app/src/entities/tasks/task-item-details.tsx rename to frontend/app/src/entities/tasks/ui/task-item-details.tsx diff --git a/frontend/app/src/entities/tasks/task-items.tsx b/frontend/app/src/entities/tasks/ui/task-items.tsx similarity index 100% rename from frontend/app/src/entities/tasks/task-items.tsx rename to frontend/app/src/entities/tasks/ui/task-items.tsx diff --git a/frontend/app/src/entities/user-profile/tab-profile.tsx b/frontend/app/src/entities/user-profile/ui/tab-profile.tsx similarity index 91% rename from frontend/app/src/entities/user-profile/tab-profile.tsx rename to frontend/app/src/entities/user-profile/ui/tab-profile.tsx index 4d55d91ee8..8cc1d6fdc1 100644 --- a/frontend/app/src/entities/user-profile/tab-profile.tsx +++ b/frontend/app/src/entities/user-profile/ui/tab-profile.tsx @@ -1,8 +1,8 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; import ObjectItemDetails from "@/entities/nodes/object-item-details/object-item-details-paginated"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { genericsState } from "@/entities/schema/schema.atom"; +import { genericsState } from "@/entities/schema/stores/schema.atom"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/entities/user-profile/tab-tokens.tsx b/frontend/app/src/entities/user-profile/ui/tab-tokens.tsx similarity index 90% rename from frontend/app/src/entities/user-profile/tab-tokens.tsx rename to frontend/app/src/entities/user-profile/ui/tab-tokens.tsx index 2e4b84cbaf..65212ea43b 100644 --- a/frontend/app/src/entities/user-profile/tab-tokens.tsx +++ b/frontend/app/src/entities/user-profile/ui/tab-tokens.tsx @@ -1,9 +1,9 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import { useAtomValue } from "jotai"; import { useState } from "react"; -import LoadingScreen from "../../shared/components/loading-screen"; +import LoadingScreen from "../../../shared/components/loading-screen"; import { TokenInput } from "@/shared/components/display/token-input"; import ModalSuccess from "@/shared/components/modals/modal-success"; diff --git a/frontend/app/src/entities/user-profile/tab-update-password.tsx b/frontend/app/src/entities/user-profile/ui/tab-update-password.tsx similarity index 100% rename from frontend/app/src/entities/user-profile/tab-update-password.tsx rename to frontend/app/src/entities/user-profile/ui/tab-update-password.tsx diff --git a/frontend/app/src/entities/user-profile/token-schema.ts b/frontend/app/src/entities/user-profile/ui/token-schema.ts similarity index 100% rename from frontend/app/src/entities/user-profile/token-schema.ts rename to frontend/app/src/entities/user-profile/ui/token-schema.ts diff --git a/frontend/app/src/entities/user-profile/user-profile.tsx b/frontend/app/src/entities/user-profile/ui/user-profile.tsx similarity index 97% rename from frontend/app/src/entities/user-profile/user-profile.tsx rename to frontend/app/src/entities/user-profile/ui/user-profile.tsx index 8b4b877828..52594efcd6 100644 --- a/frontend/app/src/entities/user-profile/user-profile.tsx +++ b/frontend/app/src/entities/user-profile/ui/user-profile.tsx @@ -1,6 +1,6 @@ import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { genericsState } from "@/entities/schema/schema.atom"; +import { genericsState } from "@/entities/schema/stores/schema.atom"; import { getProfileDetails } from "@/entities/user-profile/api/getProfileDetails"; import { Avatar } from "@/shared/components/display/avatar"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/pages/auth-callback.tsx b/frontend/app/src/pages/auth-callback.tsx index ccfb315697..0d75e3f6cd 100644 --- a/frontend/app/src/pages/auth-callback.tsx +++ b/frontend/app/src/pages/auth-callback.tsx @@ -1,6 +1,6 @@ import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { configState } from "@/config/config.atom"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { fetchUrl } from "@/shared/api/rest/fetch"; import LoadingScreen from "@/shared/components/loading-screen"; import { useAtomValue } from "jotai"; diff --git a/frontend/app/src/pages/branches/details.tsx b/frontend/app/src/pages/branches/details.tsx index 5a3470d222..f4952eb706 100644 --- a/frontend/app/src/pages/branches/details.tsx +++ b/frontend/app/src/pages/branches/details.tsx @@ -4,8 +4,8 @@ import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; import { NodeDiff } from "@/entities/diff/node-diff"; import { Tabs } from "@/shared/components/tabs"; -import { BranchDetails } from "@/entities/branches/branch-details"; -import { branchesState } from "@/entities/branches/branches.atom"; +import { BranchDetails } from "@/entities/branches/ui/branch-details"; +import { branchesState } from "@/entities/branches/stores"; import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; import { constructPath } from "@/shared/api/rest/fetch"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/pages/branches/index.tsx b/frontend/app/src/pages/branches/index.tsx index 986d8881c0..a7b5cb0b8b 100644 --- a/frontend/app/src/pages/branches/index.tsx +++ b/frontend/app/src/pages/branches/index.tsx @@ -1,4 +1,4 @@ -import BranchesItems from "@/entities/branches/branches-items"; +import BranchesItems from "@/entities/branches/ui/branches-items"; export function Component() { return ; diff --git a/frontend/app/src/pages/graphql/index.tsx b/frontend/app/src/pages/graphql/index.tsx index e602a12cf5..e8802a4cdc 100644 --- a/frontend/app/src/pages/graphql/index.tsx +++ b/frontend/app/src/pages/graphql/index.tsx @@ -5,7 +5,7 @@ import { useAtomValue } from "jotai"; import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { QSP } from "@/config/qsp"; diff --git a/frontend/app/src/pages/login.tsx b/frontend/app/src/pages/login.tsx index 4318446ba8..2af61b716b 100644 --- a/frontend/app/src/pages/login.tsx +++ b/frontend/app/src/pages/login.tsx @@ -1,6 +1,6 @@ import InfrahubLogo from "@/assets/Infrahub-SVG-hori.svg?react"; -import { Login } from "@/entities/authentication/login"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { Login } from "@/entities/authentication/ui/login"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { Navigate, useLocation } from "react-router-dom"; function LoginPage() { diff --git a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx index b8a48ea445..39a6be24a9 100644 --- a/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx +++ b/frontend/app/src/pages/objects/CoreGraphQLQuery/graphql-query-details.tsx @@ -1,12 +1,12 @@ import { GRAPHQL_QUERY_OBJECT } from "@/config/constants"; -import GraphqlQueryDetailsCard from "@/entities/graphql/details/graphql-query-details-card"; -import GraphQLQueryDetailsPageSkeleton from "@/entities/graphql/details/graphql-query-details-page-skeleton"; -import GraphqlQueryViewerCard from "@/entities/graphql/details/graphql-query-viewer-card"; +import GraphqlQueryDetailsCard from "@/entities/graphql/ui/graphql-query-details-card"; +import GraphQLQueryDetailsPageSkeleton from "@/entities/graphql/ui/graphql-query-details-page-skeleton"; +import GraphqlQueryViewerCard from "@/entities/graphql/ui/graphql-query-viewer-card"; import { getObjectDetailsPaginated } from "@/entities/nodes/api/getObjectDetails"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; import { Permission } from "@/entities/permission/types"; import { getPermission } from "@/entities/permission/utils"; -import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import { CoreGraphQlQuery } from "@/shared/api/graphql/generated/graphql"; import useQuery from "@/shared/api/graphql/useQuery"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/pages/objects/layout.tsx b/frontend/app/src/pages/objects/layout.tsx index 914e7e10d4..6524635ea7 100644 --- a/frontend/app/src/pages/objects/layout.tsx +++ b/frontend/app/src/pages/objects/layout.tsx @@ -1,6 +1,6 @@ import { HierarchicalTree } from "@/entities/nodes/hierarchical-tree"; import ObjectHeader from "@/entities/nodes/object-header"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import NoDataFound from "@/shared/components/errors/no-data-found"; import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/pages/objects/object-details.tsx b/frontend/app/src/pages/objects/object-details.tsx index a6bb0c0bae..f795ecb0b1 100644 --- a/frontend/app/src/pages/objects/object-details.tsx +++ b/frontend/app/src/pages/objects/object-details.tsx @@ -1,9 +1,9 @@ import { ARTIFACT_OBJECT, GRAPHQL_QUERY_OBJECT, TASK_OBJECT } from "@/config/constants"; import ArtifactsDetails from "@/entities/artifacts/ui/artifact-details"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; import ObjectItemDetails from "@/entities/nodes/object-item-details/object-item-details-paginated"; import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/pages/objects/object-items.tsx b/frontend/app/src/pages/objects/object-items.tsx index 243781e3a4..30463b5ea9 100644 --- a/frontend/app/src/pages/objects/object-items.tsx +++ b/frontend/app/src/pages/objects/object-items.tsx @@ -1,5 +1,5 @@ import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import ErrorScreen from "@/shared/components/errors/error-screen"; import { useAtomValue } from "jotai"; import { useParams } from "react-router-dom"; diff --git a/frontend/app/src/pages/profile.tsx b/frontend/app/src/pages/profile.tsx index d4aa8b5c21..087453d3b1 100644 --- a/frontend/app/src/pages/profile.tsx +++ b/frontend/app/src/pages/profile.tsx @@ -1,5 +1,5 @@ -import { useAuth } from "@/entities/authentication/useAuth"; -import { UserProfilePage } from "@/entities/user-profile/user-profile"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { UserProfilePage } from "@/entities/user-profile/ui/user-profile"; import { constructPath } from "@/shared/api/rest/fetch"; import { Navigate } from "react-router-dom"; diff --git a/frontend/app/src/pages/proposed-changes/details.tsx b/frontend/app/src/pages/proposed-changes/details.tsx index 76872d0a3c..25133fef92 100644 --- a/frontend/app/src/pages/proposed-changes/details.tsx +++ b/frontend/app/src/pages/proposed-changes/details.tsx @@ -9,13 +9,13 @@ import { Tabs } from "@/shared/components/tabs"; import { useTitle } from "@/shared/hooks/useTitle"; import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; -import { ProposedChangesChecksTab } from "@/entities/proposed-changes/checks-tab"; -import { ProposedChangeDetails } from "@/entities/proposed-changes/proposed-change-details"; -import { proposedChangedState } from "@/entities/proposed-changes/proposedChanges.atom"; -import { useSchema } from "@/entities/schema/useSchema"; -import { TaskItemDetails } from "@/entities/tasks/task-item-details"; -import { TaskItems } from "@/entities/tasks/task-items"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; +import { proposedChangedState } from "@/entities/proposed-changes/stores/proposedChanges.atom"; +import { ProposedChangesChecksTab } from "@/entities/proposed-changes/ui/checks-tab"; +import { ProposedChangeDetails } from "@/entities/proposed-changes/ui/proposed-change-details"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { TaskItemDetails } from "@/entities/tasks/ui/task-item-details"; +import { TaskItems } from "@/entities/tasks/ui/task-items"; import { CoreProposedChange } from "@/shared/api/graphql/generated/graphql"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/pages/proposed-changes/items.tsx b/frontend/app/src/pages/proposed-changes/items.tsx index 8c02968719..5332e13def 100644 --- a/frontend/app/src/pages/proposed-changes/items.tsx +++ b/frontend/app/src/pages/proposed-changes/items.tsx @@ -1,4 +1,4 @@ -import { ProposedChangesPage } from "@/entities/proposed-changes/items"; +import { ProposedChangesPage } from "@/entities/proposed-changes/ui/items"; export function Component() { return ; diff --git a/frontend/app/src/pages/proposed-changes/new.tsx b/frontend/app/src/pages/proposed-changes/new.tsx index 59cd98a12e..4a94768c0e 100644 --- a/frontend/app/src/pages/proposed-changes/new.tsx +++ b/frontend/app/src/pages/proposed-changes/new.tsx @@ -1,7 +1,7 @@ import { PROPOSED_CHANGES_OBJECT } from "@/config/constants"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; import { getPermission } from "@/entities/permission/utils"; -import { ProposedChangeCreateForm } from "@/entities/proposed-changes/create-form"; +import { ProposedChangeCreateForm } from "@/entities/proposed-changes/ui/create-form"; import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; diff --git a/frontend/app/src/pages/resource-manager/index.tsx b/frontend/app/src/pages/resource-manager/index.tsx index 767bb939ce..261696109b 100644 --- a/frontend/app/src/pages/resource-manager/index.tsx +++ b/frontend/app/src/pages/resource-manager/index.tsx @@ -1,7 +1,7 @@ import ObjectHeader from "@/entities/nodes/object-header"; import ObjectItems from "@/entities/nodes/object-items/object-items-paginated"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; -import { genericsState } from "@/entities/schema/schema.atom"; +import { genericsState } from "@/entities/schema/stores/schema.atom"; import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx index 8c978086c8..d8243df8af 100644 --- a/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-allocation-details.tsx @@ -1,7 +1,7 @@ import { QSP } from "@/config/qsp"; -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; +import { GET_RESOURCE_POOL_ALLOCATED } from "@/entities/resource-manager/api/resource-pool"; import { RESOURCE_POOL_ALLOCATED_KIND } from "@/entities/resource-manager/constants"; -import { GET_RESOURCE_POOL_ALLOCATED } from "@/entities/resource-manager/graphql/resource-pool"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx index a6531dfb28..b57e4ae75b 100644 --- a/frontend/app/src/pages/resource-manager/resource-pool-details.tsx +++ b/frontend/app/src/pages/resource-manager/resource-pool-details.tsx @@ -1,18 +1,18 @@ import { IP_SUMMARY_RELATIONSHIPS_BLACKLIST } from "@/entities/ipam/constants"; import { ObjectAttributeValue } from "@/entities/nodes/getObjectItemDisplayValue"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import ResourcePoolUtilization from "@/entities/resource-manager/common/ResourcePoolUtilization"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; +import { + GET_KIND_FOR_RESOURCE_POOL, + GET_RESOURCE_POOL_UTILIZATION, +} from "@/entities/resource-manager/api/resource-pool"; import { RESOURCE_GENERIC_KIND, RESOURCE_POOL_UTILIZATION_KIND, } from "@/entities/resource-manager/constants"; -import { - GET_KIND_FOR_RESOURCE_POOL, - GET_RESOURCE_POOL_UTILIZATION, -} from "@/entities/resource-manager/graphql/resource-pool"; -import ResourceSelector, { ResourceProps } from "@/entities/resource-manager/resource-selector"; -import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import ResourcePoolUtilization from "@/entities/resource-manager/ui/ResourcePoolUtilization"; +import ResourceSelector, { ResourceProps } from "@/entities/resource-manager/ui/resource-selector"; +import { iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; import NoDataFound from "@/shared/components/errors/no-data-found"; diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index 6727f34185..c4892a0cb0 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -7,7 +7,7 @@ import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { gql } from "@apollo/client"; import { Outlet } from "react-router-dom"; -import { RoleManagementNavigation } from "../../entities/role-manager"; +import { RoleManagementNavigation } from "../../entities/role-manager/ui"; function RoleManagement() { const { loading, error } = useQuery(gql(getObjectPermissionsQuery(GLOBAL_PERMISSION_OBJECT))); diff --git a/frontend/app/src/pages/schema.tsx b/frontend/app/src/pages/schema.tsx index 79a095cb44..13659fdc9c 100644 --- a/frontend/app/src/pages/schema.tsx +++ b/frontend/app/src/pages/schema.tsx @@ -1,6 +1,6 @@ -import { SchemaSelector } from "@/entities/schema/schema-selector"; -import { SchemaViewerStack } from "@/entities/schema/schema-viewer"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; +import { SchemaSelector } from "@/entities/schema/ui/schema-selector"; +import { SchemaViewerStack } from "@/entities/schema/ui/schema-viewer"; import Content from "@/shared/components/layout/content"; import { ScrollArea } from "@/shared/components/ui/scroll-area"; import { useTitle } from "@/shared/hooks/useTitle"; diff --git a/frontend/app/src/pages/tasks/index.tsx b/frontend/app/src/pages/tasks/index.tsx index 2288e645f2..11adfcd6df 100644 --- a/frontend/app/src/pages/tasks/index.tsx +++ b/frontend/app/src/pages/tasks/index.tsx @@ -1,4 +1,4 @@ -import { TaskItems } from "@/entities/tasks/task-items"; +import { TaskItems } from "@/entities/tasks/ui/task-items"; export function Component() { return ; diff --git a/frontend/app/src/pages/tasks/task-details.tsx b/frontend/app/src/pages/tasks/task-details.tsx index 69c926f3c8..5974da534d 100644 --- a/frontend/app/src/pages/tasks/task-details.tsx +++ b/frontend/app/src/pages/tasks/task-details.tsx @@ -1,6 +1,6 @@ import { TASK_OBJECT } from "@/config/constants"; import { getTaskItemDetailsTitle } from "@/entities/tasks/api/getTasksItemDetailsTitle"; -import { TaskItemDetails } from "@/entities/tasks/task-item-details"; +import { TaskItemDetails } from "@/entities/tasks/ui/task-item-details"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import ErrorScreen from "@/shared/components/errors/error-screen"; diff --git a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx index 2f69470a3c..a973114275 100644 --- a/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx +++ b/frontend/app/src/shared/api/graphql/graphqlClientApollo.tsx @@ -1,6 +1,6 @@ import { CONFIG } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { getNewToken } from "@/entities/authentication/useAuth"; +import { getNewToken } from "@/entities/authentication/ui/useAuth"; import { ALERT_TYPES, Alert } from "@/shared/components/ui/alert"; import { ApolloClient, diff --git a/frontend/app/src/shared/api/graphql/useQuery.ts b/frontend/app/src/shared/api/graphql/useQuery.ts index fa54ffb772..2e66cc2954 100644 --- a/frontend/app/src/shared/api/graphql/useQuery.ts +++ b/frontend/app/src/shared/api/graphql/useQuery.ts @@ -1,5 +1,5 @@ import { CONFIG } from "@/config/config"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { WSClient } from "@/shared/api/graphql/websocket"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { diff --git a/frontend/app/src/shared/api/rest/client.ts b/frontend/app/src/shared/api/rest/client.ts index f4090b97a1..dc79424241 100644 --- a/frontend/app/src/shared/api/rest/client.ts +++ b/frontend/app/src/shared/api/rest/client.ts @@ -4,7 +4,7 @@ import createClient, { Middleware } from "openapi-fetch"; import { INFRAHUB_API_SERVER_URL } from "@/config/config"; import { ACCESS_TOKEN_KEY } from "@/config/localStorage"; -import { getNewToken } from "@/entities/authentication/useAuth"; +import { getNewToken } from "@/entities/authentication/ui/useAuth"; import type { paths } from "@/shared/api/rest/types.generated"; export const queryClient = new QueryClient({ diff --git a/frontend/app/src/shared/components/account-menu.tsx b/frontend/app/src/shared/components/account-menu.tsx index f6f0061745..86d865e597 100644 --- a/frontend/app/src/shared/components/account-menu.tsx +++ b/frontend/app/src/shared/components/account-menu.tsx @@ -5,8 +5,8 @@ import { INFRAHUB_SWAGGER_DOC_URL, } from "@/config/config"; import { ACCOUNT_GENERIC_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { IModelSchema, genericsState } from "@/entities/schema/schema.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { IModelSchema, genericsState } from "@/entities/schema/stores/schema.atom"; import { getProfileDetails } from "@/entities/user-profile/api/getProfileDetails"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx index 6651a677d9..bf17431ccd 100644 --- a/frontend/app/src/shared/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; -import { branchesToSelectOptions } from "@/entities/branches/branches"; -import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; +import { branchesToSelectOptions } from "@/entities/branches/utils"; +import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; import { Icon } from "@iconify-icon/react"; @@ -8,7 +8,7 @@ import { useAtomValue, useSetAtom } from "jotai"; import { useEffect, useState } from "react"; import { StringParam, useQueryParam } from "use-query-params"; -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { ComboboxItem } from "@/shared/components/ui/combobox"; diff --git a/frontend/app/src/shared/components/conversations/add-comment.tsx b/frontend/app/src/shared/components/conversations/add-comment.tsx index 31fe813bbe..4f68c51903 100644 --- a/frontend/app/src/shared/components/conversations/add-comment.tsx +++ b/frontend/app/src/shared/components/conversations/add-comment.tsx @@ -1,4 +1,4 @@ -import { useAuth } from "@/entities/authentication/useAuth"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; import { constructPath } from "@/shared/api/rest/fetch"; import { Button, LinkButton } from "@/shared/components/buttons/button-primitive"; import TextareaField from "@/shared/components/form/fields/textarea.field"; diff --git a/frontend/app/src/shared/components/conversations/thread.tsx b/frontend/app/src/shared/components/conversations/thread.tsx index 5ba3f1ee3d..cc56955d5f 100644 --- a/frontend/app/src/shared/components/conversations/thread.tsx +++ b/frontend/app/src/shared/components/conversations/thread.tsx @@ -1,6 +1,6 @@ import { PROPOSED_CHANGES_THREAD_COMMENT_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { getThreadTitle } from "@/entities/diff/diff"; import { createObject } from "@/entities/nodes/api/createObject"; import { updateObjectWithId } from "@/entities/nodes/api/updateObjectWithId"; diff --git a/frontend/app/src/shared/components/display/properties-popover.tsx b/frontend/app/src/shared/components/display/properties-popover.tsx index 12fad7abd6..42c824aa78 100644 --- a/frontend/app/src/shared/components/display/properties-popover.tsx +++ b/frontend/app/src/shared/components/display/properties-popover.tsx @@ -1,5 +1,5 @@ import ObjectItemMetaEdit from "@/entities/nodes/object-item-meta-edit/object-item-meta-edit"; -import { metaEditFieldDetailsState } from "@/entities/nodes/showMetaEdit.atom"; +import { metaEditFieldDetailsState } from "@/entities/nodes/stores/showMetaEdit.atom"; import { Permission } from "@/entities/permission/types"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/src/shared/components/display/sidepanel-title.tsx b/frontend/app/src/shared/components/display/sidepanel-title.tsx index ed09812c6f..ff3895c96a 100644 --- a/frontend/app/src/shared/components/display/sidepanel-title.tsx +++ b/frontend/app/src/shared/components/display/sidepanel-title.tsx @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { Icon } from "@iconify-icon/react"; import { useAtomValue } from "jotai/index"; diff --git a/frontend/app/src/shared/components/display/slide-over.tsx b/frontend/app/src/shared/components/display/slide-over.tsx index 28fd4c2b2a..b488d4313d 100644 --- a/frontend/app/src/shared/components/display/slide-over.tsx +++ b/frontend/app/src/shared/components/display/slide-over.tsx @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/entities/branches/branches.atom"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { ObjectHelpButton } from "@/shared/components/menu/object-help-button"; import { Badge } from "@/shared/components/ui/badge"; import usePrevious from "@/shared/hooks/usePrevious"; diff --git a/frontend/app/src/shared/components/filters/filter-form.tsx b/frontend/app/src/shared/components/filters/filter-form.tsx index b15788dba9..513581a530 100644 --- a/frontend/app/src/shared/components/filters/filter-form.tsx +++ b/frontend/app/src/shared/components/filters/filter-form.tsx @@ -1,4 +1,4 @@ -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { isGenericSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import { FilterKindSelector } from "@/shared/components/filters/filter-kind-selector"; diff --git a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx index 27709f4706..986c8b2a2e 100644 --- a/frontend/app/src/shared/components/filters/filter-kind-selector.tsx +++ b/frontend/app/src/shared/components/filters/filter-kind-selector.tsx @@ -1,4 +1,4 @@ -import { iGenericSchema, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { iGenericSchema, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import { DEFAULT_FORM_FIELD_VALUE } from "@/shared/components/form/constants"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { updateFormFieldValue } from "@/shared/components/form/utils/updateFormFieldValue"; diff --git a/frontend/app/src/shared/components/filters/filters.tsx b/frontend/app/src/shared/components/filters/filters.tsx index b0e293ee1f..5951e3e88f 100644 --- a/frontend/app/src/shared/components/filters/filters.tsx +++ b/frontend/app/src/shared/components/filters/filters.tsx @@ -1,5 +1,5 @@ import { SEARCH_FILTERS, TASK_OBJECT } from "@/config/constants"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { Button, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { FilterForm } from "@/shared/components/filters/filter-form"; diff --git a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx index 7fe54fe4dd..c59eb93f30 100644 --- a/frontend/app/src/shared/components/filters/tasks-filter-form.tsx +++ b/frontend/app/src/shared/components/filters/tasks-filter-form.tsx @@ -1,4 +1,4 @@ -import { branchesState } from "@/entities/branches/branches.atom"; +import { branchesState } from "@/entities/branches/stores"; import { TASK_STATES } from "@/entities/tasks/constants"; import { Button } from "@/shared/components/buttons/button-primitive"; import { Form, FormProps, FormRef, FormSubmit } from "@/shared/components/ui/form"; diff --git a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts index 776612f9f1..f83cd660cb 100644 --- a/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts +++ b/frontend/app/src/shared/components/filters/utils/getObjectFromFilters.ts @@ -5,7 +5,7 @@ import { RelationshipOneType, RelationshipType, } from "@/entities/nodes/getObjectItemDisplayValue"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { Filter } from "@/shared/hooks/useFilters"; export const getObjectFromFilters = ( diff --git a/frontend/app/src/shared/components/form/branch-create-form.tsx b/frontend/app/src/shared/components/form/branch-create-form.tsx index 3a98ce734c..2747dc1cda 100644 --- a/frontend/app/src/shared/components/form/branch-create-form.tsx +++ b/frontend/app/src/shared/components/form/branch-create-form.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; import { BRANCH_CREATE } from "@/entities/branches/api/createBranch"; -import { branchesState } from "@/entities/branches/branches.atom"; +import { branchesState } from "@/entities/branches/stores"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/form/dynamic-form.tsx b/frontend/app/src/shared/components/form/dynamic-form.tsx index 04a7c236b5..841073d9dc 100644 --- a/frontend/app/src/shared/components/form/dynamic-form.tsx +++ b/frontend/app/src/shared/components/form/dynamic-form.tsx @@ -1,5 +1,5 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { getSchema } from "@/entities/schema/get-schema"; +import { getSchema } from "@/entities/schema/domain/get-schema"; import { isHierarchicalSchema } from "@/entities/schema/utils"; import { Button } from "@/shared/components/buttons/button-primitive"; import CheckboxField from "@/shared/components/form/fields/checkbox.field"; diff --git a/frontend/app/src/shared/components/form/fields/common.tsx b/frontend/app/src/shared/components/form/fields/common.tsx index db4412b473..8f9be9621b 100644 --- a/frontend/app/src/shared/components/form/fields/common.tsx +++ b/frontend/app/src/shared/components/form/fields/common.tsx @@ -1,4 +1,4 @@ -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; import { QuestionMark } from "@/shared/components/display/question-mark"; import { AttributeValueFromProfile, diff --git a/frontend/app/src/shared/components/form/fields/relationship.field.tsx b/frontend/app/src/shared/components/form/fields/relationship.field.tsx index bf19dc5386..dd0773b20e 100644 --- a/frontend/app/src/shared/components/form/fields/relationship.field.tsx +++ b/frontend/app/src/shared/components/form/fields/relationship.field.tsx @@ -1,6 +1,6 @@ import { getRelationshipParent } from "@/entities/nodes/api/getRelationshipParent"; import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import { LabelFormField } from "@/shared/components/form/fields/common"; import { diff --git a/frontend/app/src/shared/components/form/generic-object-form.tsx b/frontend/app/src/shared/components/form/generic-object-form.tsx index 73af09eec4..ac4a7be3ff 100644 --- a/frontend/app/src/shared/components/form/generic-object-form.tsx +++ b/frontend/app/src/shared/components/form/generic-object-form.tsx @@ -1,4 +1,4 @@ -import { iGenericSchema } from "@/entities/schema/schema.atom"; +import { iGenericSchema } from "@/entities/schema/stores/schema.atom"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { GenericSelector } from "@/shared/components/form/generic-selector"; import ObjectForm, { ObjectFormProps } from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/shared/components/form/generic-selector.tsx b/frontend/app/src/shared/components/form/generic-selector.tsx index e142aefcee..fb3e773adc 100644 --- a/frontend/app/src/shared/components/form/generic-selector.tsx +++ b/frontend/app/src/shared/components/form/generic-selector.tsx @@ -2,8 +2,8 @@ import { PROFILE_KIND } from "@/config/constants"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; import { PermissionData } from "@/entities/permission/types"; import { getPermission } from "@/entities/permission/utils"; -import { genericsState, profilesAtom, schemaState } from "@/entities/schema/schema.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { genericsState, profilesAtom, schemaState } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import LoadingScreen from "@/shared/components/loading-screen"; import { Badge } from "@/shared/components/ui/badge"; diff --git a/frontend/app/src/shared/components/form/name-select.tsx b/frontend/app/src/shared/components/form/name-select.tsx index dd6e419051..99da5bfe82 100644 --- a/frontend/app/src/shared/components/form/name-select.tsx +++ b/frontend/app/src/shared/components/form/name-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/entities/schema/schema.atom"; +import { namespacesState, schemaState } from "@/entities/schema/stores/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/shared/components/form/node-form.tsx b/frontend/app/src/shared/components/form/node-form.tsx index a698c756c8..04339fc7a7 100644 --- a/frontend/app/src/shared/components/form/node-form.tsx +++ b/frontend/app/src/shared/components/form/node-form.tsx @@ -1,11 +1,11 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { useAuth } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { useAuth } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { createObject } from "@/entities/nodes/api/createObject"; import { GET_FORM_REQUIREMENTS } from "@/entities/nodes/api/getFormRequirements"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { NUMBER_POOL_KIND } from "@/entities/resource-manager/constants"; -import { IProfileSchema, iNodeSchema } from "@/entities/schema/schema.atom"; +import { IProfileSchema, iNodeSchema } from "@/entities/schema/stores/schema.atom"; import { CREATE_ACCOUNT_TOKEN } from "@/entities/user-profile/api/createAccountToken"; import { CoreNumberPool } from "@/shared/api/graphql/generated/graphql"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; diff --git a/frontend/app/src/shared/components/form/node-select.tsx b/frontend/app/src/shared/components/form/node-select.tsx index 8072f1523e..5600531931 100644 --- a/frontend/app/src/shared/components/form/node-select.tsx +++ b/frontend/app/src/shared/components/form/node-select.tsx @@ -1,4 +1,4 @@ -import { namespacesState, schemaState } from "@/entities/schema/schema.atom"; +import { namespacesState, schemaState } from "@/entities/schema/stores/schema.atom"; import { useAtomValue } from "jotai"; import { useEffect } from "react"; import { useFormContext } from "react-hook-form"; diff --git a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx index 009d52e811..9372f06628 100644 --- a/frontend/app/src/shared/components/form/object-create-form-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-create-form-trigger.tsx @@ -1,6 +1,6 @@ import { ARTIFACT_OBJECT } from "@/config/constants"; import { Permission } from "@/entities/permission/types"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import ObjectForm from "@/shared/components/form/object-form"; diff --git a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx index c2034635a2..6b57c81004 100644 --- a/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx +++ b/frontend/app/src/shared/components/form/object-edit-slide-over-trigger.tsx @@ -1,6 +1,6 @@ import ObjectItemEditComponent from "@/entities/nodes/object-item-edit/object-item-edit-paginated"; import { Permission } from "@/entities/permission/types"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { ButtonProps, ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; diff --git a/frontend/app/src/shared/components/form/object-form.tsx b/frontend/app/src/shared/components/form/object-form.tsx index 58343577f5..9063e75aca 100644 --- a/frontend/app/src/shared/components/form/object-form.tsx +++ b/frontend/app/src/shared/components/form/object-form.tsx @@ -9,13 +9,13 @@ import { REPOSITORY_KIND, } from "@/config/constants"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { NumberPoolForm } from "@/entities/resource-manager/number-pool-form"; -import { AccountForm } from "@/entities/role-manager/account-form"; -import { AccountGroupForm } from "@/entities/role-manager/account-group-form"; -import { AccountRoleForm } from "@/entities/role-manager/account-role-form"; -import { GlobalPermissionForm } from "@/entities/role-manager/global-permissions-form"; -import { ObjectPermissionForm } from "@/entities/role-manager/object-permissions-form"; -import { useSchema } from "@/entities/schema/useSchema"; +import { NumberPoolForm } from "@/entities/resource-manager/ui/number-pool-form"; +import { AccountForm } from "@/entities/role-manager/ui/account-form"; +import { AccountGroupForm } from "@/entities/role-manager/ui/account-group-form"; +import { AccountRoleForm } from "@/entities/role-manager/ui/account-role-form"; +import { GlobalPermissionForm } from "@/entities/role-manager/ui/global-permissions-form"; +import { ObjectPermissionForm } from "@/entities/role-manager/ui/object-permissions-form"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import NoDataFound from "@/shared/components/errors/no-data-found"; import { DynamicFormProps } from "@/shared/components/form/dynamic-form"; import { GenericObjectForm } from "@/shared/components/form/generic-object-form"; @@ -31,7 +31,7 @@ export type ProfileData = { __typename: string; }; -const RepositoryForm = lazy(() => import("@/entities/repository/repository-form")); +const RepositoryForm = lazy(() => import("@/entities/repository/ui/repository-form")); export interface ObjectFormProps extends Omit { kind: string; diff --git a/frontend/app/src/shared/components/form/profiles-selector.tsx b/frontend/app/src/shared/components/form/profiles-selector.tsx index 235f2fa82a..06f25602b3 100644 --- a/frontend/app/src/shared/components/form/profiles-selector.tsx +++ b/frontend/app/src/shared/components/form/profiles-selector.tsx @@ -1,6 +1,6 @@ import { getProfiles } from "@/entities/nodes/api/getProfiles"; import { getObjectAttributes } from "@/entities/nodes/object-items/getSchemaObjectColumns"; -import { genericsState, iNodeSchema, profilesAtom } from "@/entities/schema/schema.atom"; +import { genericsState, iNodeSchema, profilesAtom } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/shared/components/form/type.ts b/frontend/app/src/shared/components/form/type.ts index cb9f045130..7d49cf6cbc 100644 --- a/frontend/app/src/shared/components/form/type.ts +++ b/frontend/app/src/shared/components/form/type.ts @@ -1,6 +1,6 @@ import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; import { Node } from "@/entities/nodes/getObjectItemDisplayValue"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { AttributeSchema, RelationshipSchema } from "@/entities/schema/types"; import { DropdownOption } from "@/shared/components/inputs/dropdown"; import { SelectOption } from "@/shared/components/inputs/select"; diff --git a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts index e7dc8c86f2..19c82b6660 100644 --- a/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts +++ b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.ts @@ -1,8 +1,8 @@ import { SCHEMA_ATTRIBUTE_KIND } from "@/config/constants"; -import { AuthContextType } from "@/entities/authentication/useAuth"; +import { AuthContextType } from "@/entities/authentication/ui/useAuth"; import { SchemaAttributeType } from "@/entities/nodes/edit-form-hook/dynamic-control-types"; import { AttributeType, RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { ProfileData } from "@/shared/components/form/object-form"; import { DynamicDropdownFieldProps, diff --git a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts index e9186fed39..1d9df7a77b 100644 --- a/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts +++ b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.ts @@ -1,6 +1,6 @@ import { RelationshipType } from "@/entities/nodes/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; -import { schemaState } from "@/entities/schema/schema.atom"; +import { schemaState } from "@/entities/schema/stores/schema.atom"; import { FormRelationshipValue } from "@/shared/components/form/type"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts index af740b1d29..98595bf289 100644 --- a/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts +++ b/frontend/app/src/shared/components/form/utils/isFieldDisabled.ts @@ -1,5 +1,5 @@ -import { AuthContextType } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AuthContextType } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { PermissionDecisionData } from "@/entities/permission/types"; import { LineageOwner } from "@/shared/api/graphql/generated/graphql"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/shared/components/inputs/dropdown.tsx b/frontend/app/src/shared/components/inputs/dropdown.tsx index 88bf73c6e6..09aa46d9b4 100644 --- a/frontend/app/src/shared/components/inputs/dropdown.tsx +++ b/frontend/app/src/shared/components/inputs/dropdown.tsx @@ -1,5 +1,5 @@ import { DROPDOWN_ADD_MUTATION, DROPDOWN_REMOVE_MUTATION } from "@/entities/schema/api/dropdown"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/inputs/enum.tsx b/frontend/app/src/shared/components/inputs/enum.tsx index 90077115b4..d649efe531 100644 --- a/frontend/app/src/shared/components/inputs/enum.tsx +++ b/frontend/app/src/shared/components/inputs/enum.tsx @@ -1,5 +1,5 @@ import { ENUM_ADD_MUTATION, ENUM_REMOVE_MUTATION } from "@/entities/schema/api/enum"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { AttributeSchema } from "@/entities/schema/types"; import { useMutation } from "@/shared/api/graphql/useQuery"; import { Button, ButtonProps } from "@/shared/components/buttons/button-primitive"; diff --git a/frontend/app/src/shared/components/inputs/relationship-one.tsx b/frontend/app/src/shared/components/inputs/relationship-one.tsx index 7883821f2f..66e12a76e4 100644 --- a/frontend/app/src/shared/components/inputs/relationship-one.tsx +++ b/frontend/app/src/shared/components/inputs/relationship-one.tsx @@ -3,7 +3,7 @@ import { getDropdownOptions } from "@/entities/nodes/api/dropdownOptions"; import { generateRelationshipListQuery } from "@/entities/nodes/api/generateRelationshipListQuery"; import { Node, RelationshipManyType } from "@/entities/nodes/getObjectItemDisplayValue"; import { AddRelationshipAction } from "@/entities/nodes/relationships/ui/add-relationship-action"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { useLazyQuery } from "@/shared/api/graphql/useQuery"; import { Button } from "@/shared/components/buttons/button-primitive"; import { PoolValue } from "@/shared/components/form/pool-selector"; diff --git a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx index 5c1fbfd6c9..067e776541 100644 --- a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-branch-selector.tsx @@ -1,4 +1,4 @@ -import { branchesState } from "@/entities/branches/branches.atom"; +import { branchesState } from "@/entities/branches/stores"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { constructPath } from "@/shared/api/rest/fetch"; import { breadcrumbItemStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; diff --git a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx index 00d2eb2cb3..66e9c9a499 100644 --- a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-object-selector.tsx @@ -1,7 +1,7 @@ -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { IModelSchema } from "@/entities/schema/schema.atom"; -import { useSchema } from "@/entities/schema/useSchema"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { NetworkStatus } from "@apollo/client"; diff --git a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx index 145d993182..2fda4929c7 100644 --- a/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx +++ b/frontend/app/src/shared/components/layout/breadcrumb-navigation/items/breadcrumb-schema-selector.tsx @@ -1,6 +1,6 @@ import { PROFILE_KIND } from "@/config/constants"; -import { getObjectDetailsUrl2 } from "@/entities/nodes/objects"; -import { useSchema } from "@/entities/schema/useSchema"; +import { getObjectDetailsUrl2 } from "@/entities/nodes/utils"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import { BreadcrumbLink } from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-link"; import BreadcrumbLoading from "@/shared/components/layout/breadcrumb-navigation/items/breadcrumb-loading"; import { breadcrumbActiveStyle } from "@/shared/components/layout/breadcrumb-navigation/style"; diff --git a/frontend/app/src/shared/components/layout/layout.tsx b/frontend/app/src/shared/components/layout/layout.tsx index f18284dcc9..9bbd92268e 100644 --- a/frontend/app/src/shared/components/layout/layout.tsx +++ b/frontend/app/src/shared/components/layout/layout.tsx @@ -1,8 +1,8 @@ import { QSP } from "@/config/qsp"; import GET_BRANCHES from "@/entities/branches/api/getBranches"; -import { findSelectedBranch } from "@/entities/branches/branches"; -import { branchesState, currentBranchAtom } from "@/entities/branches/branches.atom"; -import { SchemaContext, withSchemaContext } from "@/entities/schema/withSchemaContext"; +import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; +import { findSelectedBranch } from "@/entities/branches/utils"; +import { SchemaContext, withSchemaContext } from "@/entities/schema/decorators/withSchemaContext"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import Sidebar from "@/shared/components/layout/sidebar"; import LoadingScreen from "@/shared/components/loading-screen"; diff --git a/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts b/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts index 129bc99df8..758fe13ac2 100644 --- a/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts +++ b/frontend/app/src/shared/components/layout/menu-navigation/get-menu.ts @@ -1,5 +1,5 @@ import { DEFAULT_BRANCH_NAME } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { apiClient } from "@/shared/api/rest/client"; import { MenuData } from "@/shared/components/layout/menu-navigation/types"; import { store } from "@/shared/stores"; diff --git a/frontend/app/src/shared/components/layout/tasks-status.tsx b/frontend/app/src/shared/components/layout/tasks-status.tsx index 61998e31f8..0124b20306 100644 --- a/frontend/app/src/shared/components/layout/tasks-status.tsx +++ b/frontend/app/src/shared/components/layout/tasks-status.tsx @@ -1,7 +1,7 @@ import TasksStatusIcon from "@/assets/icons/tasks-status.svg?react"; import { TASKS_STATUS_OBJECT } from "@/config/constants"; import { QSP } from "@/config/qsp"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { TASKS_STATUS } from "@/entities/tasks/api/getTasksStatus"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; diff --git a/frontend/app/src/shared/components/modals/modal-delete-object.tsx b/frontend/app/src/shared/components/modals/modal-delete-object.tsx index ef16ee2263..504caa8232 100644 --- a/frontend/app/src/shared/components/modals/modal-delete-object.tsx +++ b/frontend/app/src/shared/components/modals/modal-delete-object.tsx @@ -1,5 +1,5 @@ import { ACCOUNT_TOKEN_OBJECT } from "@/config/constants"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { deleteObject } from "@/entities/nodes/api/deleteObject"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { datetimeAtom } from "@/shared/stores/time.atom"; diff --git a/frontend/app/src/shared/components/search/search-actions.tsx b/frontend/app/src/shared/components/search/search-actions.tsx index 46efc526c1..91bab7e17f 100644 --- a/frontend/app/src/shared/components/search/search-actions.tsx +++ b/frontend/app/src/shared/components/search/search-actions.tsx @@ -1,4 +1,4 @@ -import { IModelSchema, genericsState, schemaState } from "@/entities/schema/schema.atom"; +import { IModelSchema, genericsState, schemaState } from "@/entities/schema/stores/schema.atom"; import { constructPath } from "@/shared/api/rest/fetch"; import { menuQueryOptions } from "@/shared/components/layout/menu-navigation/get-menu"; import { MenuItem } from "@/shared/components/layout/menu-navigation/types"; diff --git a/frontend/app/src/shared/components/search/search-nodes.tsx b/frontend/app/src/shared/components/search/search-nodes.tsx index 98c4222de2..699a324f56 100644 --- a/frontend/app/src/shared/components/search/search-nodes.tsx +++ b/frontend/app/src/shared/components/search/search-nodes.tsx @@ -1,10 +1,10 @@ import { SCHEMA_ATTRIBUTE_KIND, SEARCH_QUERY_NAME } from "@/config/constants"; import { POOLS_PEER } from "@/entities/ipam/constants"; import { SEARCH } from "@/entities/nodes/api/search"; +import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; import { getSchemaObjectColumns } from "@/entities/nodes/object-items/getSchemaObjectColumns"; -import { getObjectDetailsUrl } from "@/entities/nodes/objects"; -import { useObjectDetails } from "@/entities/nodes/useObjectDetails"; -import { useSchema } from "@/entities/schema/useSchema"; +import { getObjectDetailsUrl } from "@/entities/nodes/utils"; +import { useSchema } from "@/entities/schema/hooks/useSchema"; import useQuery from "@/shared/api/graphql/useQuery"; import { constructPath } from "@/shared/api/rest/fetch"; import { SearchAnywhereGroup } from "@/shared/components/search/search-anywhere-group"; diff --git a/frontend/app/tests/fake/schema.ts b/frontend/app/tests/fake/schema.ts index 7be1b87bb1..33a8168a80 100644 --- a/frontend/app/tests/fake/schema.ts +++ b/frontend/app/tests/fake/schema.ts @@ -1,4 +1,4 @@ -import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/entities/schema/schema.atom"; +import { IProfileSchema, iGenericSchema, iNodeSchema } from "@/entities/schema/stores/schema.atom"; export const generateNodeSchema = ( overrides?: Partial diff --git a/frontend/app/tests/integrations/screens/account.cy.tsx b/frontend/app/tests/integrations/screens/account.cy.tsx index 417637249e..5dd09e2540 100644 --- a/frontend/app/tests/integrations/screens/account.cy.tsx +++ b/frontend/app/tests/integrations/screens/account.cy.tsx @@ -2,8 +2,8 @@ import { MockedProvider } from "@apollo/client/testing"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/entities/authentication/useAuth"; -import { genericsState } from "../../../src/entities/schema/schema.atom"; +import { AuthProvider } from "../../../src/entities/authentication/ui/useAuth"; +import { genericsState } from "../../../src/entities/schema/stores/schema.atom"; import { AccountMenu } from "../../../src/shared/components/account-menu"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; diff --git a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx index 47958cadec..b968f2047a 100644 --- a/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx +++ b/frontend/app/tests/integrations/screens/artifact-diff.cy.tsx @@ -4,11 +4,11 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/entities/authentication/useAuth"; +import { AuthProvider } from "../../../src/entities/authentication/ui/useAuth"; import { ArtifactsDiff } from "../../../src/entities/diff/artifact-diff/artifacts-diff"; -import { proposedChangedState } from "../../../src/entities/proposed-changes/proposedChanges.atom"; -import { schemaState } from "../../../src/entities/schema/schema.atom"; -import { withSchemaContext } from "../../../src/entities/schema/withSchemaContext"; +import { proposedChangedState } from "../../../src/entities/proposed-changes/stores/proposedChanges.atom"; +import { withSchemaContext } from "../../../src/entities/schema/decorators/withSchemaContext"; +import { schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/branche-items.cy.tsx b/frontend/app/tests/integrations/screens/branche-items.cy.tsx index eb89dbcf31..6eb833efb0 100644 --- a/frontend/app/tests/integrations/screens/branche-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/branche-items.cy.tsx @@ -2,8 +2,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; -import BranchesItems from "../../../src/entities/branches/branches-items"; -import { branchesState } from "../../../src/entities/branches/branches.atom"; +import BranchesItems from "../../../src/entities/branches/ui/branches-items"; +import { branchesState } from "../../../src/entities/branches/stores"; import { branchesMocks, branchesQuery } from "../../mocks/data/branches"; import { TestProvider } from "../../mocks/jotai/atom"; diff --git a/frontend/app/tests/integrations/screens/conversations.cy.tsx b/frontend/app/tests/integrations/screens/conversations.cy.tsx index 79c1fd923e..dae52f772d 100644 --- a/frontend/app/tests/integrations/screens/conversations.cy.tsx +++ b/frontend/app/tests/integrations/screens/conversations.cy.tsx @@ -3,9 +3,9 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { Conversations } from "../../../src/entities/proposed-changes/conversations"; -import { proposedChangedState } from "../../../src/entities/proposed-changes/proposedChanges.atom"; -import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { proposedChangedState } from "../../../src/entities/proposed-changes/stores/proposedChanges.atom"; +import { Conversations } from "../../../src/entities/proposed-changes/ui/conversations"; +import { schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { conversationMocksData, diff --git a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx index 7ff2911ad2..86f4400bc9 100644 --- a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx @@ -3,7 +3,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; +import { genericsState, schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { deviceDetailsInterfacesMocksData, diff --git a/frontend/app/tests/integrations/screens/object-details.cy.tsx b/frontend/app/tests/integrations/screens/object-details.cy.tsx index d8ab764725..767e2a7ab3 100644 --- a/frontend/app/tests/integrations/screens/object-details.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details.cy.tsx @@ -3,7 +3,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { ObjectDetailsPage } from "../../../src/pages/objects/object-details"; import { deviceDetailsMocksASNName, diff --git a/frontend/app/tests/integrations/screens/object-fields.cy.tsx b/frontend/app/tests/integrations/screens/object-fields.cy.tsx index f1314a9d04..e6d42cdbb4 100644 --- a/frontend/app/tests/integrations/screens/object-fields.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-fields.cy.tsx @@ -2,11 +2,11 @@ import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { gql } from "@apollo/client"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/entities/authentication/useAuth"; +import { AuthProvider } from "../../../src/entities/authentication/ui/useAuth"; import { encodeJwt } from "../../../src/shared/utils/common"; import { accountDetailsMocksSchema } from "../../mocks/data/account"; import { diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index 2274677ed1..9722956939 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -5,8 +5,8 @@ import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; import { configState } from "../../../src/config/config.atom"; import { ACCESS_TOKEN_KEY } from "../../../src/config/localStorage"; -import { AuthProvider } from "../../../src/entities/authentication/useAuth"; -import { schemaState } from "../../../src/entities/schema/schema.atom"; +import { AuthProvider } from "../../../src/entities/authentication/ui/useAuth"; +import { schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; import { mockedToken } from "../../fixtures/auth"; import { configMocks } from "../../mocks/data/config"; diff --git a/frontend/app/tests/integrations/screens/object-items.cy.tsx b/frontend/app/tests/integrations/screens/object-items.cy.tsx index 58fc8f617e..ddd6622851 100644 --- a/frontend/app/tests/integrations/screens/object-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items.cy.tsx @@ -3,7 +3,7 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; import { Route, Routes } from "react-router-dom"; -import { genericsState, schemaState } from "../../../src/entities/schema/schema.atom"; +import { genericsState, schemaState } from "../../../src/entities/schema/stores/schema.atom"; import { ObjectItemsPage } from "../../../src/pages/objects/object-items"; import { graphqlQueriesMocksData, diff --git a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts index 9b57c2b056..dca53c52bc 100644 --- a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts +++ b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts @@ -1,4 +1,4 @@ -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; import { Filter } from "@/shared/hooks/useFilters"; import { describe, expect } from "vitest"; diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts index ceaf629c75..0e793ddca7 100644 --- a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts @@ -1,7 +1,7 @@ -import { AuthContextType } from "@/entities/authentication/useAuth"; -import { currentBranchAtom } from "@/entities/branches/branches.atom"; +import { AuthContextType } from "@/entities/authentication/ui/useAuth"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { AttributeType } from "@/entities/nodes/getObjectItemDisplayValue"; -import { IModelSchema } from "@/entities/schema/schema.atom"; +import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { RelationshipSchema } from "@/entities/schema/types"; import { components } from "@/shared/api/rest/types.generated"; import { getFormFieldsFromSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema"; diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts index d981554255..e0fcd007c1 100644 --- a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts +++ b/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts @@ -3,7 +3,7 @@ import { RelationshipOneType, } from "@/entities/nodes/getObjectItemDisplayValue"; import { RESOURCE_GENERIC_KIND } from "@/entities/resource-manager/constants"; -import { iNodeSchema, schemaState } from "@/entities/schema/schema.atom"; +import { iNodeSchema, schemaState } from "@/entities/schema/stores/schema.atom"; import { getRelationshipDefaultValue } from "@/shared/components/form/utils/getRelationshipDefaultValue"; import { store } from "@/shared/stores"; import { describe, expect } from "vitest"; From 8b44e7c137d8b8c2294972a6f33591cb1b55f1d1 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Sun, 12 Jan 2025 12:14:41 +0100 Subject: [PATCH 10/25] lint --- .../src/entities/branches/domain/get-current-branch.test.ts | 2 +- frontend/app/src/entities/branches/ui/branch-details.tsx | 2 +- frontend/app/src/entities/groups/ui/groups-manager.tsx | 4 ++-- .../app/src/entities/schema/decorators/withSchemaContext.tsx | 2 +- frontend/app/src/pages/branches/details.tsx | 2 +- frontend/app/src/shared/components/branch-selector.tsx | 2 +- frontend/app/tests/integrations/screens/branche-items.cy.tsx | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/frontend/app/src/entities/branches/domain/get-current-branch.test.ts b/frontend/app/src/entities/branches/domain/get-current-branch.test.ts index 54695034f6..3791ea8d6d 100644 --- a/frontend/app/src/entities/branches/domain/get-current-branch.test.ts +++ b/frontend/app/src/entities/branches/domain/get-current-branch.test.ts @@ -1,5 +1,5 @@ -import { currentBranchAtom } from "@/entities/branches/stores"; import { getCurrentBranchName } from "@/entities/branches/domain/get-current-branch"; +import { currentBranchAtom } from "@/entities/branches/stores"; import { store } from "@/shared/stores"; import { beforeEach, describe, expect, it, vi } from "vitest"; import { generateBranch } from "../../../../tests/fake/branch"; diff --git a/frontend/app/src/entities/branches/ui/branch-details.tsx b/frontend/app/src/entities/branches/ui/branch-details.tsx index 38604382a1..ab7277c0a4 100644 --- a/frontend/app/src/entities/branches/ui/branch-details.tsx +++ b/frontend/app/src/entities/branches/ui/branch-details.tsx @@ -29,10 +29,10 @@ import { BRANCH_REBASE_WORKFLOW, BRANCH_VALIDATE_WORKFLOW, } from "../../tasks/constants"; +import { TaskDisplay } from "../../tasks/ui/task-display"; import { BranchMergeButton } from "./branch-merge-button"; import { BranchRebaseButton } from "./branch-rebase-button"; import { BranchValidateButton } from "./branch-validate-button"; -import { TaskDisplay } from "../../tasks/ui/task-display"; export const BranchDetails = () => { const { "*": branchName } = useParams(); diff --git a/frontend/app/src/entities/groups/ui/groups-manager.tsx b/frontend/app/src/entities/groups/ui/groups-manager.tsx index c604d92f23..5401930ea6 100644 --- a/frontend/app/src/entities/groups/ui/groups-manager.tsx +++ b/frontend/app/src/entities/groups/ui/groups-manager.tsx @@ -1,7 +1,7 @@ -import AddGroupTriggerButton from "@/entities/groups/ui/add-group-trigger-button"; import { getGroupsQuery } from "@/entities/groups/api/getGroups"; -import ObjectGroupsList from "@/entities/groups/ui/object-groups-list"; import { GroupDataFromAPI } from "@/entities/groups/api/types"; +import AddGroupTriggerButton from "@/entities/groups/ui/add-group-trigger-button"; +import ObjectGroupsList from "@/entities/groups/ui/object-groups-list"; import { getPermission } from "@/entities/permission/utils"; import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import useQuery from "@/shared/api/graphql/useQuery"; diff --git a/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx b/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx index c90134d807..5a7dd3086c 100644 --- a/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx +++ b/frontend/app/src/entities/schema/decorators/withSchemaContext.tsx @@ -1,7 +1,7 @@ import { CONFIG } from "@/config/config"; import { QSP } from "@/config/qsp"; -import { findSelectedBranch } from "@/entities/branches/utils"; import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; +import { findSelectedBranch } from "@/entities/branches/utils"; import { IProfileSchema, currentSchemaHashAtom, diff --git a/frontend/app/src/pages/branches/details.tsx b/frontend/app/src/pages/branches/details.tsx index f4952eb706..bc726d1f85 100644 --- a/frontend/app/src/pages/branches/details.tsx +++ b/frontend/app/src/pages/branches/details.tsx @@ -4,8 +4,8 @@ import { ArtifactsDiff } from "@/entities/diff/artifact-diff/artifacts-diff"; import { NodeDiff } from "@/entities/diff/node-diff"; import { Tabs } from "@/shared/components/tabs"; -import { BranchDetails } from "@/entities/branches/ui/branch-details"; import { branchesState } from "@/entities/branches/stores"; +import { BranchDetails } from "@/entities/branches/ui/branch-details"; import { FilesDiff } from "@/entities/diff/file-diff/files-diff"; import { constructPath } from "@/shared/api/rest/fetch"; import Content from "@/shared/components/layout/content"; diff --git a/frontend/app/src/shared/components/branch-selector.tsx b/frontend/app/src/shared/components/branch-selector.tsx index bf17431ccd..562b1302e1 100644 --- a/frontend/app/src/shared/components/branch-selector.tsx +++ b/frontend/app/src/shared/components/branch-selector.tsx @@ -1,6 +1,6 @@ import { QSP } from "@/config/qsp"; -import { branchesToSelectOptions } from "@/entities/branches/utils"; import { branchesState, currentBranchAtom } from "@/entities/branches/stores"; +import { branchesToSelectOptions } from "@/entities/branches/utils"; import { Branch } from "@/shared/api/graphql/generated/graphql"; import { Popover, PopoverContent, PopoverTrigger } from "@/shared/components/ui/popover"; import { Icon } from "@iconify-icon/react"; diff --git a/frontend/app/tests/integrations/screens/branche-items.cy.tsx b/frontend/app/tests/integrations/screens/branche-items.cy.tsx index 6eb833efb0..46cbac9502 100644 --- a/frontend/app/tests/integrations/screens/branche-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/branche-items.cy.tsx @@ -2,8 +2,8 @@ import { gql } from "@apollo/client"; import { MockedProvider } from "@apollo/client/testing"; -import BranchesItems from "../../../src/entities/branches/ui/branches-items"; import { branchesState } from "../../../src/entities/branches/stores"; +import BranchesItems from "../../../src/entities/branches/ui/branches-items"; import { branchesMocks, branchesQuery } from "../../mocks/data/branches"; import { TestProvider } from "../../mocks/jotai/atom"; From 0259d0f7f4ec27ab1d5b0fec57ef1be9a4436299 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 09:32:34 +0100 Subject: [PATCH 11/25] fix test --- frontend/app/.gitignore | 1 + .../domain/get-relationships/get-relationships.test.ts | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/frontend/app/.gitignore b/frontend/app/.gitignore index c50fe0b58b..0ecd713b93 100644 --- a/frontend/app/.gitignore +++ b/frontend/app/.gitignore @@ -7,6 +7,7 @@ /coverage cypress/videos cypress/screenshots +**/__screenshots__ # production /build diff --git a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts index 7455eac20c..8b4df0c6d8 100644 --- a/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts +++ b/frontend/app/src/entities/nodes/relationships/domain/get-relationships/get-relationships.test.ts @@ -5,7 +5,7 @@ import { store } from "@/shared/stores"; import { datetimeAtom } from "@/shared/stores/time.atom"; import { beforeEach, describe, expect, it, vi } from "vitest"; -vi.mock("@/entities/branches/get-current-branch"); +vi.mock("@/entities/branches/domain/get-current-branch"); vi.mock("@/entities/nodes/relationships/api/queries"); vi.mock("@/shared/stores"); From 72a4c7645c438ea834ebb6fe647213f8579f5bc9 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 09:45:33 +0100 Subject: [PATCH 12/25] fix cypress test --- .../integrations/screens/object-details-relationships.cy.tsx | 2 +- frontend/app/tests/integrations/screens/object-details.cy.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx index 86f4400bc9..ed6cdee4f0 100644 --- a/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details-relationships.cy.tsx @@ -25,7 +25,7 @@ import { TestProvider } from "../../mocks/jotai/atom"; const graphqlQueryItemsUrl = `/objects/InfraDevice/${deviceDetailsMocksId}`; // Path that will match the route to display the component -const graphqlQueryItemsPath = "/nodes/:objectKind/:objectid"; +const graphqlQueryItemsPath = "/objects/:objectKind/:objectid"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-details.cy.tsx b/frontend/app/tests/integrations/screens/object-details.cy.tsx index 767e2a7ab3..c7ca94aea7 100644 --- a/frontend/app/tests/integrations/screens/object-details.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-details.cy.tsx @@ -22,7 +22,7 @@ import { TestProvider } from "../../mocks/jotai/atom"; const graphqlQueryItemsUrl = `/objects/InfraDevice/${deviceDetailsMocksId}`; // Path that will match the route to display the component -const graphqlQueryItemsPath = "/nodes/:objectKind/:objectid"; +const graphqlQueryItemsPath = "/objects/:objectKind/:objectid"; // Mock the apollo query and data const mocks: any[] = [ From d66316aac764100f8f30a5849f46a9f9b272901f Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 09:52:21 +0100 Subject: [PATCH 13/25] fix router --- frontend/app/src/app/router.tsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index 1336c17d5d..9fdd864d4c 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -74,7 +74,7 @@ export const router = createBrowserRouter([ ], }, { - path: "/nodes", + path: "/objects", lazy: () => import("@/pages/objects/layout"), children: [ { @@ -361,7 +361,7 @@ export const router = createBrowserRouter([ ], }, { - path: "role-manager", + path: "role-management", lazy: () => import("@/pages/role-management"), handle: { breadcrumb: () => { From 75d7038bae743057e61ef5f150a3f9ea0ed265d8 Mon Sep 17 00:00:00 2001 From: pa-lem Date: Mon, 13 Jan 2025 09:54:26 +0100 Subject: [PATCH 14/25] move from require to import --- frontend/app/tailwind.config.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/frontend/app/tailwind.config.js b/frontend/app/tailwind.config.js index 033ba68914..e7dac23295 100644 --- a/frontend/app/tailwind.config.js +++ b/frontend/app/tailwind.config.js @@ -1,6 +1,9 @@ /* eslint-disable no-undef */ /** @type {import('tailwindcss').Config} */ +import forms from "@tailwindcss/forms"; +import animate from "tailwindcss-animate"; + const toRgba = (hexCode, opacity = 50) => { let hex = hexCode.replace("#", ""); @@ -64,8 +67,8 @@ export default { }, }, plugins: [ - require("@tailwindcss/forms"), - require("tailwindcss-animate"), + forms, + animate, function ({ addUtilities, theme }) { const utilities = { ".bg-stripes": { From 49237c57277ec3bbe19633e79cd1bbc02fce06a0 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 09:58:25 +0100 Subject: [PATCH 15/25] fix wrong update --- frontend/app/tests/e2e/groups/groups.spec.ts | 2 +- .../e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts | 2 +- frontend/app/tests/e2e/objects/artifact-definition.spec.ts | 2 +- frontend/app/tests/e2e/objects/artifact.spec.ts | 2 +- frontend/app/tests/e2e/objects/object-details.spec.ts | 2 +- frontend/app/tests/e2e/objects/object-list.spec.ts | 4 ++-- frontend/app/tests/e2e/objects/object-relationships.spec.ts | 4 ++-- .../app/tests/e2e/objects/profiles/multi-profiles.spec.ts | 2 +- frontend/app/tests/e2e/objects/profiles/profiles.spec.ts | 6 +++--- frontend/app/tests/e2e/search.spec.ts | 2 +- frontend/app/vite.config.ts | 1 + 11 files changed, 15 insertions(+), 14 deletions(-) diff --git a/frontend/app/tests/e2e/groups/groups.spec.ts b/frontend/app/tests/e2e/groups/groups.spec.ts index 446d55ba25..d0926ef1ed 100644 --- a/frontend/app/tests/e2e/groups/groups.spec.ts +++ b/frontend/app/tests/e2e/groups/groups.spec.ts @@ -2,7 +2,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; import { saveScreenshotForDocs } from "../../utils"; -test.describe("/nodes/CoreGroup - Generic Group Object.", () => { +test.describe("/objects/CoreGroup - Generic Group Object.", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts index 426e20c72c..8a5ec56095 100644 --- a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts +++ b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../../constants"; -test.describe("/nodes/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details page", () => { +test.describe("/objects/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/artifact-definition.spec.ts b/frontend/app/tests/e2e/objects/artifact-definition.spec.ts index e12af08ef9..4e46d6c6e4 100644 --- a/frontend/app/tests/e2e/objects/artifact-definition.spec.ts +++ b/frontend/app/tests/e2e/objects/artifact-definition.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/nodes/CoreArtifactDefinition - Artifact Definition page", () => { +test.describe("/objects/CoreArtifactDefinition - Artifact Definition page", () => { test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); test.beforeEach(async function ({ page }) { diff --git a/frontend/app/tests/e2e/objects/artifact.spec.ts b/frontend/app/tests/e2e/objects/artifact.spec.ts index b5edb74786..b2397c5706 100644 --- a/frontend/app/tests/e2e/objects/artifact.spec.ts +++ b/frontend/app/tests/e2e/objects/artifact.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/nodes/CoreArtifact - Artifact page", () => { +test.describe("/objects/CoreArtifact - Artifact page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/object-details.spec.ts b/frontend/app/tests/e2e/objects/object-details.spec.ts index 9b0aef9dd2..14034cd409 100644 --- a/frontend/app/tests/e2e/objects/object-details.spec.ts +++ b/frontend/app/tests/e2e/objects/object-details.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/nodes/:objectKind/:objectid", () => { +test.describe("/objects/:objectKind/:objectid", () => { test.beforeEach(async function ({ page }) { page.on("response", async (response) => { if (response.status() === 500) { diff --git a/frontend/app/tests/e2e/objects/object-list.spec.ts b/frontend/app/tests/e2e/objects/object-list.spec.ts index a791694fb6..95992d0277 100644 --- a/frontend/app/tests/e2e/objects/object-list.spec.ts +++ b/frontend/app/tests/e2e/objects/object-list.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/nodes/:objectKind", () => { +test.describe("/objects/:objectKind", () => { test.beforeEach(async function ({ page }) { page.on("response", async (response) => { if (response.status() === 500) { @@ -60,7 +60,7 @@ test.describe("/nodes/:objectKind", () => { await page.goto("/objects/InfraDevice"); await page.getByRole("link", { name: "Juniper JunOS" }).first().click(); await expect(page.getByText("NameJuniper JunOS")).toBeVisible(); - expect(page.url()).toContain("/nodes/InfraPlatform/"); + expect(page.url()).toContain("/objects/InfraPlatform/"); }); test("should be able to create a new object", async ({ page }) => { diff --git a/frontend/app/tests/e2e/objects/object-relationships.spec.ts b/frontend/app/tests/e2e/objects/object-relationships.spec.ts index 22d84739d4..498ce53fda 100644 --- a/frontend/app/tests/e2e/objects/object-relationships.spec.ts +++ b/frontend/app/tests/e2e/objects/object-relationships.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../constants"; -test.describe("/nodes/:objectKind/:objectid - relationship tab", () => { +test.describe("/objects/:objectKind/:objectid - relationship tab", () => { // Avoid checking as non-admin + updating as admin at the same time test.describe.configure({ mode: "serial" }); test.slow(); @@ -123,6 +123,6 @@ test.describe("/nodes/:objectKind/:objectid - relationship tab", () => { }); await page.getByRole("link", { name: "atl1", exact: true }).first().click(); await expect(page.getByText("Nameatl1")).toBeVisible(); - expect(page.url()).toContain("/nodes/LocationSite/"); + expect(page.url()).toContain("/objects/LocationSite/"); }); }); diff --git a/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts b/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts index 310bdf6d51..27beab791a 100644 --- a/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts +++ b/frontend/app/tests/e2e/objects/profiles/multi-profiles.spec.ts @@ -1,7 +1,7 @@ import { expect, test } from "@playwright/test"; import { ACCOUNT_STATE_PATH } from "../../../constants"; -test.describe("/nodes/CoreProfile - Profiles page", () => { +test.describe("/objects/CoreProfile - Profiles page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts index 3c656e84b6..4a74a5d788 100644 --- a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts +++ b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts @@ -4,7 +4,7 @@ import { ACCOUNT_STATE_PATH } from "../../../constants"; const PROFILE_NAME = "Interface L2 profile test"; const GENERIC_PROFILE_NAME = "Generic Interface profile test"; -test.describe("/nodes/CoreProfile - Profiles page", () => { +test.describe("/objects/CoreProfile - Profiles page", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); @@ -55,7 +55,7 @@ test.describe("/nodes/CoreProfile - Profiles page", () => { .getByTestId("breadcrumb-navigation") .getByRole("link", { name: "Profile", exact: true }) .click(); - expect(page.url()).toContain("/nodes/CoreProfile"); + expect(page.url()).toContain("/objects/CoreProfile"); }); }); @@ -105,7 +105,7 @@ test.describe("/nodes/CoreProfile - Profiles page", () => { await test.step("Verify profile link", async () => { await page.getByRole("link", { name: "profile test tag" }).click(); - expect(page.url()).toContain("/nodes/ProfileBuiltinTag/"); + expect(page.url()).toContain("/objects/ProfileBuiltinTag/"); }); }); diff --git a/frontend/app/tests/e2e/search.spec.ts b/frontend/app/tests/e2e/search.spec.ts index 4338c88c28..7dfffa3713 100644 --- a/frontend/app/tests/e2e/search.spec.ts +++ b/frontend/app/tests/e2e/search.spec.ts @@ -41,7 +41,7 @@ test.describe("when searching an object", () => { await expect(page.getByTestId("search-anywhere")).toContainText("Go to"); await page.getByRole("option", { name: "Menu Device" }).click(); await expect(page.getByRole("heading", { name: "Device" })).toBeVisible(); - expect(page.url()).toContain("/nodes/InfraDevice"); + expect(page.url()).toContain("/objects/InfraDevice"); }); }); diff --git a/frontend/app/vite.config.ts b/frontend/app/vite.config.ts index 64b169f02e..0d695c82f4 100644 --- a/frontend/app/vite.config.ts +++ b/frontend/app/vite.config.ts @@ -18,6 +18,7 @@ export default defineConfig({ test: { browser: { enabled: true, + headless: true, provider: "playwright", name: "chromium", }, From 5eebe558ed5b6c3a2e7acc190c67f1c1bc99900e Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 10:00:49 +0100 Subject: [PATCH 16/25] typo --- frontend/app/src/entities/artifacts/ui/artifact-details.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/app/src/entities/artifacts/ui/artifact-details.tsx b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx index f5eb9f9176..f0b204fdc0 100644 --- a/frontend/app/src/entities/artifacts/ui/artifact-details.tsx +++ b/frontend/app/src/entities/artifacts/ui/artifact-details.tsx @@ -97,7 +97,7 @@ export default function ArtifactsDetails({ artifactId }: { artifactId: string }) if (!data || (data && !data[schemaData.kind]?.edges?.length)) { // Redirect to the main list if there is no item for this is - // navigate(`/nodes/${objectname}`); + // navigate(`/objects/${objectname}`); return ; } From 524662751bd9eba31296091081188a0d9aba7c47 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 10:02:57 +0100 Subject: [PATCH 17/25] fix link --- frontend/app/src/app/router.tsx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/frontend/app/src/app/router.tsx b/frontend/app/src/app/router.tsx index 9fdd864d4c..75f25c048c 100644 --- a/frontend/app/src/app/router.tsx +++ b/frontend/app/src/app/router.tsx @@ -368,7 +368,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Users & Permissions", - to: constructPath("/role-manager"), + to: constructPath("/role-management"), }; }, }, @@ -381,7 +381,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Accounts", - to: constructPath("/role-manager/accounts"), + to: constructPath("/role-management/accounts"), }; }, }, @@ -394,7 +394,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Groups", - to: constructPath("/role-manager/groups"), + to: constructPath("/role-management/groups"), }; }, }, @@ -407,7 +407,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Roles", - to: constructPath("/role-manager/roles"), + to: constructPath("/role-management/roles"), }; }, }, @@ -420,7 +420,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Global Permissions", - to: constructPath("/role-manager/global-permissions"), + to: constructPath("/role-management/global-permissions"), }; }, }, @@ -433,7 +433,7 @@ export const router = createBrowserRouter([ return { type: "link", label: "Object Permissions", - to: constructPath("/role-manager/object-permissions"), + to: constructPath("/role-management/object-permissions"), }; }, }, From 44cbf420ac4cbd2ee43932cec37ecebaa925519a Mon Sep 17 00:00:00 2001 From: pa-lem Date: Mon, 13 Jan 2025 10:03:56 +0100 Subject: [PATCH 18/25] fix link --- frontend/app/src/entities/role-manager/ui/index.tsx | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/app/src/entities/role-manager/ui/index.tsx b/frontend/app/src/entities/role-manager/ui/index.tsx index b7c301042a..07a669b548 100644 --- a/frontend/app/src/entities/role-manager/ui/index.tsx +++ b/frontend/app/src/entities/role-manager/ui/index.tsx @@ -17,7 +17,7 @@ export function RoleManagementNavigation() { const tabs = [ { - to: constructPath("/role-manager"), + to: constructPath("/role-management"), label: (
@@ -29,7 +29,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-manager/groups"), + to: constructPath("/role-management/groups"), label: (
@@ -41,7 +41,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-manager/roles"), + to: constructPath("/role-management/roles"), label: (
@@ -53,7 +53,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-manager/global-permissions"), + to: constructPath("/role-management/global-permissions"), label: (
@@ -65,7 +65,7 @@ export function RoleManagementNavigation() { error: !!error, }, { - to: constructPath("/role-manager/object-permissions"), + to: constructPath("/role-management/object-permissions"), label: (
From f73dc7082f7265b46f939de2e580ae9a3740c89d Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 10:05:35 +0100 Subject: [PATCH 19/25] import --- frontend/app/src/pages/role-management/index.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/app/src/pages/role-management/index.tsx b/frontend/app/src/pages/role-management/index.tsx index c4892a0cb0..f8ce18fc1f 100644 --- a/frontend/app/src/pages/role-management/index.tsx +++ b/frontend/app/src/pages/role-management/index.tsx @@ -1,5 +1,6 @@ import { GLOBAL_PERMISSION_OBJECT } from "@/config/constants"; import { getObjectPermissionsQuery } from "@/entities/permission/queries/getObjectPermissions"; +import { RoleManagementNavigation } from "@/entities/role-manager/ui"; import useQuery from "@/shared/api/graphql/useQuery"; import ErrorScreen from "@/shared/components/errors/error-screen"; import UnauthorizedScreen from "@/shared/components/errors/unauthorized-screen"; @@ -7,7 +8,6 @@ import Content from "@/shared/components/layout/content"; import LoadingScreen from "@/shared/components/loading-screen"; import { gql } from "@apollo/client"; import { Outlet } from "react-router-dom"; -import { RoleManagementNavigation } from "../../entities/role-manager/ui"; function RoleManagement() { const { loading, error } = useQuery(gql(getObjectPermissionsQuery(GLOBAL_PERMISSION_OBJECT))); From 6915d25ee78beaa020556e77575dbad11c9fe63c Mon Sep 17 00:00:00 2001 From: pa-lem Date: Mon, 13 Jan 2025 10:15:24 +0100 Subject: [PATCH 20/25] fix expect url --- .../e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts index 8a5ec56095..89153ae9cd 100644 --- a/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts +++ b/frontend/app/tests/e2e/objects/CoreGraphQLQuery/core-graphql-query.spec.ts @@ -90,7 +90,7 @@ test.describe("/objects/CoreGraphQLQuery/:graphqlQueryId - GraphQL Query details .getByTestId("breadcrumb-navigation") .getByRole("link", { name: "GraphQL Query" }) .click(); - expect(page.url()).toContain("/nodes/CoreGraphQLQuery"); + expect(page.url()).toContain("/objects/CoreGraphQLQuery"); }); }); From 44ba9c2c2d369ba6b7e62457f5cdb6a3ceed9a55 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 10:24:38 +0100 Subject: [PATCH 21/25] fix --- .../app/src/entities/groups/ui/add-group-trigger-button.tsx | 2 +- frontend/app/src/entities/proposed-changes/ui/counter.tsx | 2 +- frontend/app/tests/e2e/objects/profiles/profiles.spec.ts | 2 +- frontend/app/tests/integrations/screens/object-fields.cy.tsx | 4 ++-- .../tests/integrations/screens/object-items-deletion.cy.tsx | 4 ++-- frontend/app/tests/integrations/screens/object-items.cy.tsx | 4 ++-- 6 files changed, 9 insertions(+), 9 deletions(-) diff --git a/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx b/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx index 24259fcd94..60b8dde468 100644 --- a/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx +++ b/frontend/app/src/entities/groups/ui/add-group-trigger-button.tsx @@ -1,13 +1,13 @@ import { GroupDataFromAPI } from "@/entities/groups/api/types"; import AddGroupForm from "@/entities/groups/ui/add-group-form"; import { useObjectDetails } from "@/entities/nodes/hooks/useObjectDetails"; +import { Permission } from "@/entities/permission/types"; import { iNodeSchema } from "@/entities/schema/stores/schema.atom"; import graphqlClient from "@/shared/api/graphql/graphqlClientApollo"; import { ButtonWithTooltip } from "@/shared/components/buttons/button-primitive"; import SlideOver, { SlideOverTitle } from "@/shared/components/display/slide-over"; import { Icon } from "@iconify-icon/react"; import { useState } from "react"; -import { Permission } from "../../permission/types"; type AddGroupTriggerButtonProps = { schema: iNodeSchema; diff --git a/frontend/app/src/entities/proposed-changes/ui/counter.tsx b/frontend/app/src/entities/proposed-changes/ui/counter.tsx index 9bf9176c92..b5b4b71131 100644 --- a/frontend/app/src/entities/proposed-changes/ui/counter.tsx +++ b/frontend/app/src/entities/proposed-changes/ui/counter.tsx @@ -1,7 +1,7 @@ import useQuery from "@/shared/api/graphql/useQuery"; +import LoadingScreen from "@/shared/components/loading-screen"; import { Badge } from "@/shared/components/ui/badge"; import { gql } from "@apollo/client"; -import LoadingScreen from "../../../shared/components/loading-screen"; type tProposedChangesCounter = { query: string; diff --git a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts index 4a74a5d788..7233b8a76a 100644 --- a/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts +++ b/frontend/app/tests/e2e/objects/profiles/profiles.spec.ts @@ -179,7 +179,7 @@ test.describe("/objects/CoreProfile - Profiles page", () => { }); }); -test.describe("/nodes/CoreProfile - Profile for Interface L2 and fields verification", () => { +test.describe("/objects/CoreProfile - Profile for Interface L2 and fields verification", () => { test.describe.configure({ mode: "serial" }); test.use({ storageState: ACCOUNT_STATE_PATH.ADMIN }); diff --git a/frontend/app/tests/integrations/screens/object-fields.cy.tsx b/frontend/app/tests/integrations/screens/object-fields.cy.tsx index e6d42cdbb4..cb6bf6aca6 100644 --- a/frontend/app/tests/integrations/screens/object-fields.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-fields.cy.tsx @@ -63,10 +63,10 @@ import { import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/nodes/TestTask"; +const mockedUrl = "/objects/TestTask"; // Path that will match the route to display the component -const mockedPath = "/nodes/:objectKind"; +const mockedPath = "/objects/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx index 9722956939..2fd0c6abc9 100644 --- a/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items-deletion.cy.tsx @@ -20,10 +20,10 @@ import { schemaMocks } from "../../mocks/data/schema"; import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/nodes/CoreGraphQLQuery"; +const mockedUrl = "/objects/CoreGraphQLQuery"; // Path that will match the route to display the component -const mockedPath = "/nodes/:objectKind"; +const mockedPath = "/objects/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ diff --git a/frontend/app/tests/integrations/screens/object-items.cy.tsx b/frontend/app/tests/integrations/screens/object-items.cy.tsx index ddd6622851..fd9b064d1f 100644 --- a/frontend/app/tests/integrations/screens/object-items.cy.tsx +++ b/frontend/app/tests/integrations/screens/object-items.cy.tsx @@ -14,10 +14,10 @@ import { schemaMocks } from "../../mocks/data/schema"; import { TestProvider } from "../../mocks/jotai/atom"; // URL for the current view -const mockedUrl = "/nodes/CoreGraphQLQuery"; +const mockedUrl = "/objects/CoreGraphQLQuery"; // Path that will match the route to display the component -const mockedPath = "/nodes/:objectKind"; +const mockedPath = "/objects/:objectKind"; // Mock the apollo query and data const mocks: any[] = [ From 8cafcd73f67dfda284993d96313bd9e2d273ca6b Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 11:23:18 +0100 Subject: [PATCH 22/25] fix --- frontend/app/tests/e2e/objects/object-list.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/app/tests/e2e/objects/object-list.spec.ts b/frontend/app/tests/e2e/objects/object-list.spec.ts index 95992d0277..ed715e85d7 100644 --- a/frontend/app/tests/e2e/objects/object-list.spec.ts +++ b/frontend/app/tests/e2e/objects/object-list.spec.ts @@ -16,7 +16,7 @@ test.describe("/objects/:objectKind", () => { await expect(page.getByRole("heading", { name: "Tag" })).toBeVisible(); await expect( - page.getByText("Standard Tag object to attached to other nodes to provide some context.") + page.getByText("Standard Tag object to attached to other objects to provide some context.") ).toBeVisible(); await expect(page.getByTestId("create-object-button")).toBeDisabled(); await expect(page.getByRole("row", { name: "blue" }).getByRole("button")).toBeDisabled(); From 8c36b64dbf146fd46f16aabe9842bc6c3c975bd3 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 12:02:40 +0100 Subject: [PATCH 23/25] chore --- frontend/app/tests/fake/schema.ts | 2 +- frontend/app/vite.config.ts | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/frontend/app/tests/fake/schema.ts b/frontend/app/tests/fake/schema.ts index 33a8168a80..4b99d01372 100644 --- a/frontend/app/tests/fake/schema.ts +++ b/frontend/app/tests/fake/schema.ts @@ -8,7 +8,7 @@ export const generateNodeSchema = ( state: "present", name: "Tag", namespace: "Builtin", - description: "Standard Tag object to attached to other nodes to provide some context.", + description: "Standard Tag object to attached to other objects to provide some context.", label: "Tag", branch: "aware", default_filter: "name__value", diff --git a/frontend/app/vite.config.ts b/frontend/app/vite.config.ts index 0d695c82f4..64b169f02e 100644 --- a/frontend/app/vite.config.ts +++ b/frontend/app/vite.config.ts @@ -18,7 +18,6 @@ export default defineConfig({ test: { browser: { enabled: true, - headless: true, provider: "playwright", name: "chromium", }, From 57fe0080ab0e2ca0a51fb53f5e49555b44810147 Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 12:05:22 +0100 Subject: [PATCH 24/25] update types --- .../src/shared/api/rest/types.generated.ts | 27 +++++++++++-------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/frontend/app/src/shared/api/rest/types.generated.ts b/frontend/app/src/shared/api/rest/types.generated.ts index 4a09371107..24f2cfa9ac 100644 --- a/frontend/app/src/shared/api/rest/types.generated.ts +++ b/frontend/app/src/shared/api/rest/types.generated.ts @@ -525,7 +525,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if nodes of this kind should be included in the menu. + * @description Defines if objects of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -639,7 +639,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if nodes of this kind should be included in the menu. + * @description Defines if objects of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -762,7 +762,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if nodes of this kind should be included in the menu. + * @description Defines if objects of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1240,7 +1240,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if nodes of this kind should be included in the menu. + * @description Defines if objects of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1420,6 +1420,11 @@ export interface components { * ] */ permission_backends: string[]; + /** + * Public Url + * @description Define the public URL of the Infrahub, might be required for OAuth2 and OIDC depending on your infrastructure. + */ + public_url?: string | null; }; /** Menu */ Menu: { @@ -1469,7 +1474,7 @@ export interface components { permissions?: string[]; /** * Children - * @description Child nodes + * @description Child objects */ children?: components["schemas"]["MenuItemList"][]; }; @@ -1545,7 +1550,7 @@ export interface components { display_labels?: string[] | null; /** * Include In Menu - * @description Defines if nodes of this kind should be included in the menu. + * @description Defines if objects of this kind should be included in the menu. */ include_in_menu?: boolean | null; /** @@ -1669,7 +1674,7 @@ export interface components { name: string; /** * Peer - * @description Type (kind) of nodes supported on the other end of the relationship. + * @description Type (kind) of objects supported on the other end of the relationship. */ peer: string; /** @@ -1693,19 +1698,19 @@ export interface components { */ identifier?: string | null; /** - * @description Defines how many nodes are expected on the other side of the relationship. + * @description Defines how many objects are expected on the other side of the relationship. * @default many */ cardinality: components["schemas"]["RelationshipCardinality"]; /** * Min Count - * @description Defines the minimum nodes allowed on the other side of the relationship. + * @description Defines the minimum objects allowed on the other side of the relationship. * @default 0 */ min_count: number; /** * Max Count - * @description Defines the maximum nodes allowed on the other side of the relationship. + * @description Defines the maximum objects allowed on the other side of the relationship. * @default 0 */ max_count: number; @@ -2101,7 +2106,7 @@ export interface operations { [name: string]: unknown; }; content: { - "application/json": unknown; + "application/json": null; }; }; }; From 2a6de130b6a6ba699bf14a8bc6f92108242453cb Mon Sep 17 00:00:00 2001 From: bilalabbad Date: Mon, 13 Jan 2025 12:30:08 +0100 Subject: [PATCH 25/25] moved some unit test files --- .../getMutationMetaDetailsFromFormData.test.ts | 8 ++++---- .../filters/utils}/getFiltersFromFormData.test.ts | 0 .../components/form/utils/getFieldDefaultValue.test.ts | 0 .../components/form/utils/getFormFieldsFromSchema.test.ts | 0 .../form/utils/getRelationshipDefaultValue.test.ts | 0 .../components/form/utils/getRelationshipsForForm.test.ts | 0 .../shared}/components/form/utils/isFieldDisabled.test.ts | 0 .../mutations}/getCreateMutationFromFormData.test.ts | 0 .../mutations}/getUpdateMutationFromFormData.test.ts | 2 +- .../unit/components/filters/getObjectFromFilters.test.ts | 2 +- 10 files changed, 6 insertions(+), 6 deletions(-) rename frontend/app/{tests/unit/utils => src/entities/nodes/object-item-meta-edit}/getMutationMetaDetailsFromFormData.test.ts (83%) rename frontend/app/{tests/unit/components/filters => src/shared/components/filters/utils}/getFiltersFromFormData.test.ts (100%) rename frontend/app/{tests/unit => src/shared}/components/form/utils/getFieldDefaultValue.test.ts (100%) rename frontend/app/{tests/unit => src/shared}/components/form/utils/getFormFieldsFromSchema.test.ts (100%) rename frontend/app/{tests/unit => src/shared}/components/form/utils/getRelationshipDefaultValue.test.ts (100%) rename frontend/app/{tests/unit => src/shared}/components/form/utils/getRelationshipsForForm.test.ts (100%) rename frontend/app/{tests/unit => src/shared}/components/form/utils/isFieldDisabled.test.ts (100%) rename frontend/app/{tests/unit/components/form/utils => src/shared/components/form/utils/mutations}/getCreateMutationFromFormData.test.ts (100%) rename frontend/app/{tests/unit/components/form/utils => src/shared/components/form/utils/mutations}/getUpdateMutationFromFormData.test.ts (98%) diff --git a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts b/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.test.ts similarity index 83% rename from frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts rename to frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.test.ts index a87abf681f..e6f75f2e35 100644 --- a/frontend/app/tests/unit/utils/getMutationMetaDetailsFromFormData.test.ts +++ b/frontend/app/src/entities/nodes/object-item-meta-edit/getMutationMetaDetailsFromFormData.test.ts @@ -8,15 +8,15 @@ import { mutationStringForMetaEdit, newDataForMetaEdit, updatedObjectForMetaEdit, -} from "../../mocks/data/devices"; +} from "../../../../tests/mocks/data/devices"; const updatedObject = getMutationMetaDetailsFromFormData( deviceDetailsMocksSchema[0], newDataForMetaEdit, - deviceDetailsMocksData.InfraDevice.edges[0].node, + deviceDetailsMocksData.InfraDevice.edges[0]!.node, "relationship", "site", - deviceDetailsMocksData.InfraDevice.edges[0].node.site.properties + deviceDetailsMocksData.InfraDevice.edges[0]!.node.site.properties ); describe("Mutation details from object data", () => { @@ -26,7 +26,7 @@ describe("Mutation details from object data", () => { it("should return a correct mutation from the updated object", () => { const mutationString = updateObjectWithId({ - kind: deviceDetailsMocksSchema[0].kind, + kind: deviceDetailsMocksSchema[0]!.kind, data: stringifyWithoutQuotes(updatedObject), }); diff --git a/frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts b/frontend/app/src/shared/components/filters/utils/getFiltersFromFormData.test.ts similarity index 100% rename from frontend/app/tests/unit/components/filters/getFiltersFromFormData.test.ts rename to frontend/app/src/shared/components/filters/utils/getFiltersFromFormData.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts b/frontend/app/src/shared/components/form/utils/getFieldDefaultValue.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/getFieldDefaultValue.test.ts rename to frontend/app/src/shared/components/form/utils/getFieldDefaultValue.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts b/frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/getFormFieldsFromSchema.test.ts rename to frontend/app/src/shared/components/form/utils/getFormFieldsFromSchema.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts b/frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/getRelationshipDefaultValue.test.ts rename to frontend/app/src/shared/components/form/utils/getRelationshipDefaultValue.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts b/frontend/app/src/shared/components/form/utils/getRelationshipsForForm.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/getRelationshipsForForm.test.ts rename to frontend/app/src/shared/components/form/utils/getRelationshipsForForm.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts b/frontend/app/src/shared/components/form/utils/isFieldDisabled.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/isFieldDisabled.test.ts rename to frontend/app/src/shared/components/form/utils/isFieldDisabled.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts b/frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.test.ts similarity index 100% rename from frontend/app/tests/unit/components/form/utils/getCreateMutationFromFormData.test.ts rename to frontend/app/src/shared/components/form/utils/mutations/getCreateMutationFromFormData.test.ts diff --git a/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts b/frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.test.ts similarity index 98% rename from frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts rename to frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.test.ts index a4e332d2aa..fe408dfd0e 100644 --- a/frontend/app/tests/unit/components/form/utils/getUpdateMutationFromFormData.test.ts +++ b/frontend/app/src/shared/components/form/utils/mutations/getUpdateMutationFromFormData.test.ts @@ -4,9 +4,9 @@ import { FormRelationshipValue, RelationshipValueFromPool, } from "@/shared/components/form/type"; +import { buildField } from "@/shared/components/form/utils/mutations/getCreateMutationFromFormData.test"; import { getUpdateMutationFromFormData } from "@/shared/components/form/utils/mutations/getUpdateMutationFromFormData"; import { describe, expect } from "vitest"; -import { buildField } from "./getCreateMutationFromFormData.test"; describe("getUpdateMutationFromFormData - test", () => { it("returns empty if there is no fields in form", () => { diff --git a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts index dca53c52bc..a56b981941 100644 --- a/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts +++ b/frontend/app/tests/unit/components/filters/getObjectFromFilters.test.ts @@ -1,8 +1,8 @@ import { IModelSchema } from "@/entities/schema/stores/schema.atom"; import { getObjectFromFilters } from "@/shared/components/filters/utils/getObjectFromFilters"; +import { buildRelationshipSchema } from "@/shared/components/form/utils/getFormFieldsFromSchema.test"; import { Filter } from "@/shared/hooks/useFilters"; import { describe, expect } from "vitest"; -import { buildRelationshipSchema } from "../form/utils/getFormFieldsFromSchema.test"; describe("getObjectFromFilters - test", () => { it("returns value for a attribute correctly", () => {