|
@@ -31,8 +31,9 @@ const CustomSidebar: FC<Props> = (props: Props) => {
|
|
|
|
|
|
|
|
const renderer = appContainer.getRenderer('sidebar');
|
|
const renderer = appContainer.getRenderer('sidebar');
|
|
|
|
|
|
|
|
- const { data: page, mutate } = useSWRxPageByPath('/Sidebar');
|
|
|
|
|
|
|
+ const { data: page, error, mutate } = useSWRxPageByPath('/Sidebar');
|
|
|
|
|
|
|
|
|
|
+ const isLoading = page === undefined && error == null;
|
|
|
const markdown = (page?.revision as IRevision | undefined)?.body;
|
|
const markdown = (page?.revision as IRevision | undefined)?.body;
|
|
|
|
|
|
|
|
return (
|
|
return (
|
|
@@ -46,14 +47,23 @@ const CustomSidebar: FC<Props> = (props: Props) => {
|
|
|
<i className="icon icon-reload"></i>
|
|
<i className="icon icon-reload"></i>
|
|
|
</button>
|
|
</button>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+
|
|
|
|
|
+ {
|
|
|
|
|
+ isLoading && (
|
|
|
|
|
+ <div className="text-muted text-center">
|
|
|
|
|
+ <i className="fa fa-2x fa-spinner fa-pulse mr-1"></i>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ )
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
{
|
|
{
|
|
|
- markdown != null ? (
|
|
|
|
|
|
|
+ !isLoading && markdown != null ? (
|
|
|
<div className="p-3">
|
|
<div className="p-3">
|
|
|
<RevisionRenderer
|
|
<RevisionRenderer
|
|
|
- isRenderable
|
|
|
|
|
growiRenderer={renderer}
|
|
growiRenderer={renderer}
|
|
|
markdown={markdown}
|
|
markdown={markdown}
|
|
|
additionalClassName="grw-custom-sidebar-content"
|
|
additionalClassName="grw-custom-sidebar-content"
|
|
|
|
|
+ isRenderable
|
|
|
/>
|
|
/>
|
|
|
</div>
|
|
</div>
|
|
|
) : (
|
|
) : (
|