soumaeda 2 лет назад
Родитель
Сommit
a77bd37da2

+ 5 - 5
apps/app/src/features/growi-plugin/client/components/Admin/PluginsExtensionPageContents/PluginDeleteModal.tsx

@@ -16,11 +16,11 @@ export const PluginDeleteModal: React.FC = () => {
 
 
   const { t } = useTranslation('admin');
   const { t } = useTranslation('admin');
   const { mutate } = useSWRxAdminPlugins();
   const { mutate } = useSWRxAdminPlugins();
-  const { data: pluginDeleteModal, close: closePluginDeleteModal } = usePluginDeleteModal();
-  const isOpen = pluginDeleteModal?.isOpen;
-  const name = pluginDeleteModal?.name;
-  const url = pluginDeleteModal?.url;
-  const id = pluginDeleteModal?.id;
+  const { data: pluginDeleteModalData, close: closePluginDeleteModal } = usePluginDeleteModal();
+  const isOpen = pluginDeleteModalData?.isOpen;
+  const id = pluginDeleteModalData?.id;
+  const name = pluginDeleteModalData?.name;
+  const url = pluginDeleteModalData?.url;
 
 
   const toggleHandler = useCallback(() => {
   const toggleHandler = useCallback(() => {
     closePluginDeleteModal();
     closePluginDeleteModal();

+ 11 - 28
apps/app/src/features/growi-plugin/client/components/Admin/PluginsExtensionPageContents/PluginsExtensionPageContents.tsx

@@ -47,34 +47,17 @@ export const PluginsExtensionPageContents = (): JSX.Element => {
                 { data.plugins.length === 0 && (
                 { data.plugins.length === 0 && (
                   <div>{t('plugins.plugin_is_not_installed')}</div>
                   <div>{t('plugins.plugin_is_not_installed')}</div>
                 )}
                 )}
-                {data.plugins.map((plugin) => {
-                  const pluginId = plugin._id;
-                  const pluginName = plugin.meta.name;
-                  const pluginUrl = plugin.origin.url;
-                  const pluginIsEnabled = plugin.isEnabled;
-                  const pluginDiscription = plugin.meta.desc;
-                  const onDeleteClicked = () => {
-                    openPluginDeleteModal({
-                      _id: pluginId,
-                      meta: { name: pluginName, types: [], desc: pluginDiscription },
-                      origin: { url: pluginUrl },
-                      isEnabled: pluginIsEnabled,
-                      installedPath: '',
-                      organizationName: '',
-                    });
-                  };
-                  return (
-                    <PluginCard
-                      key={pluginId}
-                      id={pluginId}
-                      name={pluginName}
-                      url={pluginUrl}
-                      isEnalbed={pluginIsEnabled}
-                      desc={pluginDiscription}
-                      onDelete={onDeleteClicked}
-                    />
-                  );
-                })}
+                {data.plugins.map(plugin => (
+                  <PluginCard
+                    key={plugin._id}
+                    id={plugin._id}
+                    name={plugin.meta.name}
+                    url={plugin.origin.url}
+                    isEnalbed={plugin.isEnabled}
+                    desc={plugin.meta.desc}
+                    onDelete={() => openPluginDeleteModal(plugin)}
+                  />
+                ))}
               </div>
               </div>
             )}
             )}
         </div>
         </div>

+ 3 - 3
apps/app/src/stores/modal.tsx

@@ -747,9 +747,9 @@ export const useLinkEditModal = (): SWRResponse<LinkEditModalStatus, Error> & Li
  */
  */
 type PluginDeleteModalStatus = {
 type PluginDeleteModalStatus = {
   isOpen: boolean,
   isOpen: boolean,
+  id: string,
   name: string,
   name: string,
   url: string,
   url: string,
-  id: string,
 }
 }
 
 
 type PluginDeleteModalUtils = {
 type PluginDeleteModalUtils = {
@@ -760,9 +760,9 @@ type PluginDeleteModalUtils = {
 export const usePluginDeleteModal = (): SWRResponse<PluginDeleteModalStatus, Error> & PluginDeleteModalUtils => {
 export const usePluginDeleteModal = (): SWRResponse<PluginDeleteModalStatus, Error> & PluginDeleteModalUtils => {
   const initialStatus: PluginDeleteModalStatus = {
   const initialStatus: PluginDeleteModalStatus = {
     isOpen: false,
     isOpen: false,
+    id: '',
     name: '',
     name: '',
     url: '',
     url: '',
-    id: '',
   };
   };
 
 
   const swrResponse = useStaticSWR<PluginDeleteModalStatus, Error>('pluginDeleteModal', undefined, { fallbackData: initialStatus });
   const swrResponse = useStaticSWR<PluginDeleteModalStatus, Error>('pluginDeleteModal', undefined, { fallbackData: initialStatus });
@@ -771,9 +771,9 @@ export const usePluginDeleteModal = (): SWRResponse<PluginDeleteModalStatus, Err
   const open = useCallback((plugin: IGrowiPluginHasId) => {
   const open = useCallback((plugin: IGrowiPluginHasId) => {
     mutate({
     mutate({
       isOpen: true,
       isOpen: true,
+      id: plugin._id,
       name: plugin.meta.name,
       name: plugin.meta.name,
       url: plugin.origin.url,
       url: plugin.origin.url,
-      id: plugin._id,
     });
     });
   }, [mutate]);
   }, [mutate]);