Просмотр исходного кода

Impl & use useGrowiRendererConfig

Taichi Masuyama 3 лет назад
Родитель
Сommit
b69c6c8e43
2 измененных файлов с 35 добавлено и 14 удалено
  1. 5 0
      packages/app/src/stores/context.tsx
  2. 30 14
      packages/app/src/stores/renderer.tsx

+ 5 - 0
packages/app/src/stores/context.tsx

@@ -4,6 +4,7 @@ import useSWRImmutable from 'swr/immutable';
 
 
 
 
 import { SupportedActionType } from '~/interfaces/activity';
 import { SupportedActionType } from '~/interfaces/activity';
+import { GrowiRendererConfig } from '~/interfaces/services/renderer';
 
 
 import { TargetAndAncestors } from '../interfaces/page-listing-results';
 import { TargetAndAncestors } from '../interfaces/page-listing-results';
 import { IUser } from '../interfaces/user';
 import { IUser } from '../interfaces/user';
@@ -185,6 +186,10 @@ export const useGrowiVersion = (initialData?: string): SWRResponse<string, any>
   return useStaticSWR('growiVersion', initialData);
   return useStaticSWR('growiVersion', initialData);
 };
 };
 
 
+export const useGrowiRendererConfig = (initialData?: GrowiRendererConfig): SWRResponse<GrowiRendererConfig, any> => {
+  return useStaticSWR('growiRendererConfig', initialData);
+};
+
 
 
 /** **********************************************************
 /** **********************************************************
  *                     Computed contexts
  *                     Computed contexts

+ 30 - 14
packages/app/src/stores/renderer.tsx

@@ -4,6 +4,8 @@ import { RendererSettings } from '~/interfaces/services/renderer';
 import GrowiRenderer, { generateCommentPreviewRenderer, generatePreviewRenderer, generateViewRenderer } from '~/services/renderer/growi-renderer';
 import GrowiRenderer, { generateCommentPreviewRenderer, generatePreviewRenderer, generateViewRenderer } from '~/services/renderer/growi-renderer';
 import { useStaticSWR } from '~/stores/use-static-swr';
 import { useStaticSWR } from '~/stores/use-static-swr';
 
 
+import { useCurrentPagePath, useGrowiRendererConfig } from './context';
+
 export const useRendererSettings = (initialData?: RendererSettings): SWRResponse<RendererSettings, any> => {
 export const useRendererSettings = (initialData?: RendererSettings): SWRResponse<RendererSettings, any> => {
   return useStaticSWR('rendererSettings', initialData);
   return useStaticSWR('rendererSettings', initialData);
 };
 };
@@ -13,13 +15,15 @@ export const useViewRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateViewRenderer(rendererSettings);
+    const generated = generateViewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -31,13 +35,15 @@ export const usePreviewRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generatePreviewRenderer();
+    const generated = generatePreviewRenderer(growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -49,13 +55,15 @@ export const useCommentPreviewRenderer = (): SWRResponse<GrowiRenderer, any> =>
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateCommentPreviewRenderer(rendererSettings);
+    const generated = generateCommentPreviewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -67,13 +75,15 @@ export const useSearchResultRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateViewRenderer(rendererSettings);
+    const generated = generateViewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -85,13 +95,15 @@ export const useTimelineRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateViewRenderer(rendererSettings);
+    const generated = generateViewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -103,13 +115,15 @@ export const useDraftRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateViewRenderer(rendererSettings);
+    const generated = generateViewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }
 
 
@@ -121,13 +135,15 @@ export const useCustomSidebarRenderer = (): SWRResponse<GrowiRenderer, any> => {
 
 
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: renderer, mutate: mutateRenderer } = useStaticSWR(key);
   const { data: rendererSettings } = useRendererSettings();
   const { data: rendererSettings } = useRendererSettings();
+  const { data: currentPath } = useCurrentPagePath();
+  const { data: growiRendererConfig } = useGrowiRendererConfig();
 
 
-  if (rendererSettings == null) {
+  if (rendererSettings == null || growiRendererConfig == null) {
     key = null;
     key = null;
   }
   }
   // Initialize renderer
   // Initialize renderer
   else if (renderer == null) {
   else if (renderer == null) {
-    const generated = generateViewRenderer(rendererSettings);
+    const generated = generateViewRenderer(rendererSettings, growiRendererConfig, currentPath);
     mutateRenderer(generated);
     mutateRenderer(generated);
   }
   }