@@ -1,7 +1,7 @@
|
|||||||
import { Refine } from "@refinedev/core";
|
import { Refine } from "@refinedev/core";
|
||||||
import { RefineKbar, RefineKbarProvider } from "@refinedev/kbar";
|
import { RefineKbar, RefineKbarProvider } from "@refinedev/kbar";
|
||||||
|
|
||||||
import { ErrorComponent, notificationProvider, ThemedLayoutV2, ThemedSiderV2, ThemedTitleV2 } from "@refinedev/antd";
|
import { ErrorComponent, ThemedLayoutV2, ThemedSiderV2, ThemedTitleV2 } from "@refinedev/antd";
|
||||||
import "@refinedev/antd/dist/reset.css";
|
import "@refinedev/antd/dist/reset.css";
|
||||||
|
|
||||||
import routerBindings, {
|
import routerBindings, {
|
||||||
@@ -23,6 +23,7 @@ import React from "react";
|
|||||||
import { Locale } from "antd/es/locale";
|
import { Locale } from "antd/es/locale";
|
||||||
import { languages } from "./i18n";
|
import { languages } from "./i18n";
|
||||||
import loadable from "@loadable/component";
|
import loadable from "@loadable/component";
|
||||||
|
import SpoolmanNotificationProvider from "./components/notificationProvider";
|
||||||
|
|
||||||
interface PageProps {
|
interface PageProps {
|
||||||
resource: "spools" | "filaments" | "vendors";
|
resource: "spools" | "filaments" | "vendors";
|
||||||
@@ -82,7 +83,7 @@ function App() {
|
|||||||
>
|
>
|
||||||
<Refine
|
<Refine
|
||||||
dataProvider={dataProvider(import.meta.env.VITE_APIURL)}
|
dataProvider={dataProvider(import.meta.env.VITE_APIURL)}
|
||||||
notificationProvider={notificationProvider}
|
notificationProvider={SpoolmanNotificationProvider}
|
||||||
i18nProvider={i18nProvider}
|
i18nProvider={i18nProvider}
|
||||||
routerProvider={routerBindings}
|
routerProvider={routerBindings}
|
||||||
resources={[
|
resources={[
|
||||||
|
|||||||
32
client/src/components/notificationProvider.tsx
Normal file
32
client/src/components/notificationProvider.tsx
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
import { NotificationProvider } from "@refinedev/core";
|
||||||
|
import { message } from "antd";
|
||||||
|
|
||||||
|
import { UndoableNotification } from "@refinedev/antd/src/components/undoableNotification";
|
||||||
|
|
||||||
|
const SpoolmanNotificationProvider: NotificationProvider = {
|
||||||
|
open: ({ key, message: content, type, cancelMutation, undoableTimeout }) => {
|
||||||
|
if (type === "progress") {
|
||||||
|
message.open({
|
||||||
|
key,
|
||||||
|
content: (
|
||||||
|
<UndoableNotification
|
||||||
|
notificationKey={key}
|
||||||
|
message={content}
|
||||||
|
cancelMutation={cancelMutation}
|
||||||
|
undoableTimeout={undoableTimeout}
|
||||||
|
/>
|
||||||
|
),
|
||||||
|
duration: 0,
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
message.open({
|
||||||
|
key,
|
||||||
|
content,
|
||||||
|
type,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
close: (key) => message.destroy(key),
|
||||||
|
};
|
||||||
|
|
||||||
|
export default SpoolmanNotificationProvider;
|
||||||
Reference in New Issue
Block a user