diff --git a/gui/rpk-gui/package-lock.json b/gui/rpk-gui/package-lock.json
index 990ce35..c53753f 100644
--- a/gui/rpk-gui/package-lock.json
+++ b/gui/rpk-gui/package-lock.json
@@ -43,6 +43,7 @@
"mui-tiptap": "^1.18.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
+ "react-error-boundary": "^6.0.0",
"react-hook-form": "^7.30.0",
"react-i18next": "^15.5.1",
"react-router": "^7.0.2"
@@ -9180,6 +9181,18 @@
"react": "^18.3.1"
}
},
+ "node_modules/react-error-boundary": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/react-error-boundary/-/react-error-boundary-6.0.0.tgz",
+ "integrity": "sha512-gdlJjD7NWr0IfkPlaREN2d9uUZUlksrfOx7SX62VRerwXbMY6ftGCIZua1VG1aXFNOimhISsTq+Owp725b9SiA==",
+ "license": "MIT",
+ "dependencies": {
+ "@babel/runtime": "^7.12.5"
+ },
+ "peerDependencies": {
+ "react": ">=16.13.1"
+ }
+ },
"node_modules/react-hook-form": {
"version": "7.56.1",
"resolved": "https://registry.npmjs.org/react-hook-form/-/react-hook-form-7.56.1.tgz",
diff --git a/gui/rpk-gui/package.json b/gui/rpk-gui/package.json
index 75cf051..747a0b4 100644
--- a/gui/rpk-gui/package.json
+++ b/gui/rpk-gui/package.json
@@ -39,6 +39,7 @@
"mui-tiptap": "^1.18.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
+ "react-error-boundary": "^6.0.0",
"react-hook-form": "^7.30.0",
"react-i18next": "^15.5.1",
"react-router": "^7.0.2"
diff --git a/gui/rpk-gui/src/pages/ErrorPage.tsx b/gui/rpk-gui/src/pages/ErrorPage.tsx
new file mode 100644
index 0000000..1209ec4
--- /dev/null
+++ b/gui/rpk-gui/src/pages/ErrorPage.tsx
@@ -0,0 +1,4 @@
+
+export const Error404Page = () => {
+ return
EROR NO FUND
+};
diff --git a/gui/rpk-gui/src/pages/firm/base-page/Edit.tsx b/gui/rpk-gui/src/pages/firm/base-page/Edit.tsx
index 817c63c..91fd3d6 100644
--- a/gui/rpk-gui/src/pages/firm/base-page/Edit.tsx
+++ b/gui/rpk-gui/src/pages/firm/base-page/Edit.tsx
@@ -38,6 +38,10 @@ const Edit = (props: EditProps) => {
return
}
+ if (query.error?.status == 404) {
+ throw query.error
+ }
+
const record = query.data.data;
return (
<>
diff --git a/gui/rpk-gui/src/pages/firm/base-page/List.tsx b/gui/rpk-gui/src/pages/firm/base-page/List.tsx
index 89734bc..54cfe74 100644
--- a/gui/rpk-gui/src/pages/firm/base-page/List.tsx
+++ b/gui/rpk-gui/src/pages/firm/base-page/List.tsx
@@ -85,6 +85,10 @@ const List = (props: ListProps) => {
return
}
+ if (tableQueryResult.error?.status == 404) {
+ throw tableQueryResult.error
+ }
+
return (
diff --git a/gui/rpk-gui/src/pages/firm/index.tsx b/gui/rpk-gui/src/pages/firm/index.tsx
index f95c539..b6183fd 100644
--- a/gui/rpk-gui/src/pages/firm/index.tsx
+++ b/gui/rpk-gui/src/pages/firm/index.tsx
@@ -1,7 +1,7 @@
import { Route, Routes, Link } from "react-router";
-import React, { useContext } from "react";
-import { useForm, useOne, useTranslation } from "@refinedev/core";
-import { FirmContext, FirmContextProvider } from "../../contexts/FirmContext";
+import React from "react";
+import { useForm, useTranslation } from "@refinedev/core";
+import { FirmContextProvider } from "../../contexts/FirmContext";
import { Header } from "../../components";
import { CrudForm } from "../../lib/crud/components/crud-form";
import { IFirm } from "../../interfaces";
@@ -10,22 +10,26 @@ import { ContractRoutes } from "./ContractRoutes";
import { DraftRoutes } from "./DraftRoutes";
import { TemplateRoutes } from "./TemplateRoutes";
import { ProvisionRoutes } from "./ProvisionRoutes";
+import { ErrorBoundary } from "react-error-boundary";
+import { Error404Page } from "../ErrorPage";
export const FirmRoutes = () => {
return (
-
-
- } />
- } />
- } />
- } />
- } />
- } />
-
-
+ >} >
+
+
+
+ } />
+ } />
+ } />
+ } />
+ } />
+ } />
+
+
+
} />
);