From 579ea82e5f38ea77816bf5e029e3d5f2e7fffb70 Mon Sep 17 00:00:00 2001 From: Mason Hu Date: Wed, 19 Feb 2025 13:47:59 +0200 Subject: [PATCH] review: review changes Signed-off-by: Mason Hu --- src/api/storage-pools.tsx | 23 +++------------------ src/components/forms/YamlForm.tsx | 9 +++----- src/context/useStoragePools.tsx | 11 ++-------- src/pages/instances/EditInstance.tsx | 2 +- src/pages/storage/EditStoragePool.tsx | 9 ++++---- src/pages/storage/forms/StoragePoolForm.tsx | 2 +- 6 files changed, 15 insertions(+), 41 deletions(-) diff --git a/src/api/storage-pools.tsx b/src/api/storage-pools.tsx index 00b9fd1837..d3bfa18621 100644 --- a/src/api/storage-pools.tsx +++ b/src/api/storage-pools.tsx @@ -22,10 +22,10 @@ import { withEntitlementsQuery } from "util/entitlements/api"; export const storagePoolEntitlements = ["can_delete", "can_edit"]; export const storageVolumeEntitlements = ["can_delete"]; -export const fetchStoragePoolOnMember = ( +export const fetchStoragePool = ( pool: string, - target: string, isFineGrained: boolean | null, + target?: string, ): Promise => { const entitlements = `&${withEntitlementsQuery(isFineGrained, storagePoolEntitlements)}`; return new Promise((resolve, reject) => { @@ -37,19 +37,6 @@ export const fetchStoragePoolOnMember = ( }); }; -export const fetchStoragePool = ( - pool: string, - isFineGrained: boolean | null, -): Promise => { - const entitlements = `&${withEntitlementsQuery(isFineGrained, storagePoolEntitlements)}`; - return new Promise((resolve, reject) => { - fetch(`/1.0/storage-pools/${pool}?recursion=1${entitlements}`) - .then(handleResponse) - .then((data: LxdApiResponse) => resolve(data.metadata)) - .catch(reject); - }); -}; - export const fetchStoragePools = ( isFineGrained: boolean | null, ): Promise => { @@ -231,11 +218,7 @@ export const fetchPoolFromClusterMembers = ( return new Promise((resolve, reject) => { Promise.allSettled( clusterMembers.map((member) => { - return fetchStoragePoolOnMember( - poolName, - member.server_name, - isFineGrained, - ); + return fetchStoragePool(poolName, isFineGrained, member.server_name); }), ) .then((results) => { diff --git a/src/components/forms/YamlForm.tsx b/src/components/forms/YamlForm.tsx index edff933dfd..a7f8512eab 100644 --- a/src/components/forms/YamlForm.tsx +++ b/src/components/forms/YamlForm.tsx @@ -2,10 +2,7 @@ import { FC, ReactNode, useEffect, useRef, useState } from "react"; import { Editor, loader } from "@monaco-editor/react"; import { updateMaxHeight } from "util/updateMaxHeight"; import useEventListener from "util/useEventListener"; -import { - editor, - IMarkdownString, -} from "monaco-editor/esm/vs/editor/editor.api"; +import { editor } from "monaco-editor/esm/vs/editor/editor.api"; import IStandaloneCodeEditor = editor.IStandaloneCodeEditor; import classnames from "classnames"; @@ -19,7 +16,7 @@ interface Props { children?: ReactNode; autoResize?: boolean; readOnly?: boolean; - readOnlyMessage?: IMarkdownString; + readOnlyMessage?: string; } const YamlForm: FC = ({ @@ -75,7 +72,7 @@ const YamlForm: FC = ({ }, overviewRulerLanes: 0, readOnly: readOnly, - readOnlyMessage: readOnlyMessage, + readOnlyMessage: { value: readOnlyMessage ?? "" }, }} onMount={(editor: IStandaloneCodeEditor) => { setEditor(editor); diff --git a/src/context/useStoragePools.tsx b/src/context/useStoragePools.tsx index 109754fa75..fb4f648261 100644 --- a/src/context/useStoragePools.tsx +++ b/src/context/useStoragePools.tsx @@ -3,11 +3,7 @@ import { queryKeys } from "util/queryKeys"; import { UseQueryResult } from "@tanstack/react-query"; import { useAuth } from "./auth"; import { LxdStoragePool } from "types/storage"; -import { - fetchStoragePool, - fetchStoragePoolOnMember, - fetchStoragePools, -} from "api/storage-pools"; +import { fetchStoragePool, fetchStoragePools } from "api/storage-pools"; export const useStoragePool = ( pool: string, @@ -15,12 +11,9 @@ export const useStoragePool = ( enabled?: boolean, ): UseQueryResult => { const { isFineGrained } = useAuth(); - const queryFn = target - ? () => fetchStoragePoolOnMember(pool, target, isFineGrained) - : () => fetchStoragePool(pool, isFineGrained); return useQuery({ queryKey: [queryKeys.storage, pool, target], - queryFn: queryFn, + queryFn: () => fetchStoragePool(pool, isFineGrained, target), enabled: (enabled ?? true) && isFineGrained !== null, }); }; diff --git a/src/pages/instances/EditInstance.tsx b/src/pages/instances/EditInstance.tsx index 60d90f8010..c7940b087f 100644 --- a/src/pages/instances/EditInstance.tsx +++ b/src/pages/instances/EditInstance.tsx @@ -276,7 +276,7 @@ const EditInstance: FC = ({ instance }) => { void formik.setFieldValue("yaml", yaml); }} readOnly={!!formik.values.editRestriction} - readOnlyMessage={{ value: formik.values.editRestriction ?? "" }} + readOnlyMessage={formik.values.editRestriction} > = ({ pool }) => { , ); const member = clusterMembers[0]?.server_name ?? undefined; - const updatedPool = member - ? await fetchStoragePoolOnMember(values.name, member, isFineGrained) - : await fetchStoragePool(values.name, isFineGrained); + const updatedPool = await fetchStoragePool( + values.name, + isFineGrained, + member, + ); const updatedPoolOnMembers = await fetchPoolFromClusterMembers( pool.name, clusterMembers, diff --git a/src/pages/storage/forms/StoragePoolForm.tsx b/src/pages/storage/forms/StoragePoolForm.tsx index c04a0d2258..5bc0050038 100644 --- a/src/pages/storage/forms/StoragePoolForm.tsx +++ b/src/pages/storage/forms/StoragePoolForm.tsx @@ -266,7 +266,7 @@ const StoragePoolForm: FC = ({ void formik.setFieldValue("yaml", yaml); }} readOnly={!!formik.values.editRestriction} - readOnlyMessage={{ value: formik.values.editRestriction ?? "" }} + readOnlyMessage={formik.values.editRestriction} > {`${isSupportedStorageDriver ? "" : `The ${formik.values.driver} driver is not fully supported in the web interface. `}This is the YAML representation of the storage pool.`}