diff --git a/code/client/package.json b/code/client/package.json
index b6fe61c9..61497db5 100644
--- a/code/client/package.json
+++ b/code/client/package.json
@@ -29,6 +29,7 @@
"lodash": "^4.17.21",
"react": "^18.3.1",
"react-dom": "^18.3.1",
+ "react-error-boundary": "^4.0.13",
"react-icons": "^5.2.1",
"react-router-dom": "^6.23.0",
"slate": "^0.103.0",
diff --git a/code/client/src/App.tsx b/code/client/src/App.tsx
index 9deefe6f..ce97652e 100644
--- a/code/client/src/App.tsx
+++ b/code/client/src/App.tsx
@@ -15,8 +15,8 @@ import Login from '@ui/pages/login/Login';
import Search from '@ui/pages/search/Search';
import CommitHistory from '@ui/pages/document/components/commit-history/CommitHistory';
import Commit from '@ui/pages/document/components/commit/Commit';
-import './App.scss';
import Recent from '@ui/pages/recent/Recent';
+import './App.scss';
function App() {
return (
diff --git a/code/client/src/contexts/error/ErrorContext.tsx b/code/client/src/contexts/error/ErrorContext.tsx
index fe0cf01b..2d39c431 100644
--- a/code/client/src/contexts/error/ErrorContext.tsx
+++ b/code/client/src/contexts/error/ErrorContext.tsx
@@ -1,6 +1,7 @@
import * as React from 'react';
import { useState, createContext, useEffect, useCallback } from 'react';
import ErrorComponent from '@ui/components/error/Error';
+import { ErrorBoundary } from 'react-error-boundary';
const ERROR_TIMEOUT = 5000;
@@ -39,7 +40,7 @@ export function ErrorProvider({ children }: { children: React.ReactNode }) {
return (
{error && }
- {children}
+ {children}
);
}
diff --git a/code/client/src/domain/workspaces/tree/utils.ts b/code/client/src/domain/workspaces/tree/utils.ts
index ae82812a..35e16024 100644
--- a/code/client/src/domain/workspaces/tree/utils.ts
+++ b/code/client/src/domain/workspaces/tree/utils.ts
@@ -1,10 +1,10 @@
import { TreeNode } from '@domain/workspaces/tree/types';
import { Resources } from '@/contexts/workspace/WorkspaceContext';
-export function getTree(id: string, nodes: Resources): TreeNode {
+export function traverseWorkspaceTree(id: string, nodes: Resources): TreeNode {
const node = nodes[id];
return {
node,
- children: node.children.map(id => getTree(id, nodes)),
+ children: node.children.map(id => traverseWorkspaceTree(id, nodes)),
};
}
diff --git a/code/client/src/ui/components/sidebar/components/workspace-tree/WorkspaceTree.tsx b/code/client/src/ui/components/sidebar/components/workspace-tree/WorkspaceTree.tsx
index 5482f04a..b6f742b0 100644
--- a/code/client/src/ui/components/sidebar/components/workspace-tree/WorkspaceTree.tsx
+++ b/code/client/src/ui/components/sidebar/components/workspace-tree/WorkspaceTree.tsx
@@ -1,6 +1,6 @@
import TreeResourceView from '@ui/components/sidebar/components/workspace-tree/TreeResourceView';
import { WorkspaceMeta } from '@notespace/shared/src/workspace/types/workspace';
-import { getTree } from '@domain/workspaces/tree/utils';
+import { traverseWorkspaceTree } from '@domain/workspaces/tree/utils';
import { ResourceType } from '@notespace/shared/src/workspace/types/resource';
import { DragEvent, useState } from 'react';
import { Resources, WorkspaceOperations } from '@/contexts/workspace/WorkspaceContext';
@@ -49,7 +49,7 @@ function WorkspaceTree({ workspace, resources, operations }: WorkspaceTreeProps)
{resources[workspace.id] &&
- getTree(workspace.id, resources).children.map(node => (
+ traverseWorkspaceTree(workspace.id, resources).children.map(node => (
-