WIP: Adding entity crud to front
This commit is contained in:
16
gui/rpk-gui/src/pages/firm/EntityRoutes.tsx
Normal file
16
gui/rpk-gui/src/pages/firm/EntityRoutes.tsx
Normal file
@@ -0,0 +1,16 @@
|
||||
import { Route, Routes } from "react-router";
|
||||
import React, { useContext } from "react";
|
||||
import { FirmContext } from "../../contexts/FirmContext";
|
||||
import List from "./base-page/List";
|
||||
|
||||
export const EntityRoutes = () => {
|
||||
const { currentFirm } = useContext(FirmContext);
|
||||
|
||||
return (
|
||||
<>
|
||||
<Routes>
|
||||
<Route index element={ <List resource={`${currentFirm.instance}/${currentFirm.firm}/entities/`} /> } />
|
||||
</Routes>
|
||||
</>
|
||||
);
|
||||
}
|
||||
25
gui/rpk-gui/src/pages/firm/base-page/Card.tsx
Normal file
25
gui/rpk-gui/src/pages/firm/base-page/Card.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import { CrudForm } from "../../../lib/crud/components/crud-form";
|
||||
import { UiSchema } from "@rjsf/utils";
|
||||
import { useParams } from "react-router";
|
||||
|
||||
type CardProps = {
|
||||
resource: string,
|
||||
schemaName: string,
|
||||
uiSchema?: UiSchema,
|
||||
}
|
||||
|
||||
const Card = (props: CardProps) => {
|
||||
const { schemaName, resource, uiSchema } = props;
|
||||
const { record_id } = useParams();
|
||||
|
||||
return (
|
||||
<CrudForm
|
||||
schemaName={schemaName}
|
||||
uiSchema={uiSchema}
|
||||
resource={resource}
|
||||
id={record_id}
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
||||
export default Card;
|
||||
23
gui/rpk-gui/src/pages/firm/base-page/List.tsx
Normal file
23
gui/rpk-gui/src/pages/firm/base-page/List.tsx
Normal file
@@ -0,0 +1,23 @@
|
||||
import { UiSchema } from "@rjsf/utils";
|
||||
import { List as RefineList } from "@refinedev/mui";
|
||||
import { DataGrid } from "@mui/x-data-grid";
|
||||
|
||||
type ListProps = {
|
||||
resource: string,
|
||||
schemaName?: string,
|
||||
uiSchema?: UiSchema,
|
||||
}
|
||||
|
||||
const List = (props: ListProps) => {
|
||||
const { schemaName, resource, uiSchema } = props;
|
||||
|
||||
return (
|
||||
<RefineList
|
||||
resource={resource}
|
||||
>
|
||||
<DataGrid columns={} />
|
||||
</RefineList>
|
||||
)
|
||||
}
|
||||
|
||||
export default List;
|
||||
22
gui/rpk-gui/src/pages/firm/base-page/New.tsx
Normal file
22
gui/rpk-gui/src/pages/firm/base-page/New.tsx
Normal file
@@ -0,0 +1,22 @@
|
||||
import { CrudForm } from "../../../lib/crud/components/crud-form";
|
||||
import { UiSchema } from "@rjsf/utils";
|
||||
|
||||
type NewProps = {
|
||||
resource: string,
|
||||
schemaName: string,
|
||||
uiSchema?: UiSchema,
|
||||
}
|
||||
|
||||
const New = (props: NewProps) => {
|
||||
const { schemaName, resource, uiSchema } = props;
|
||||
|
||||
return (
|
||||
<CrudForm
|
||||
schemaName={schemaName}
|
||||
uiSchema={uiSchema}
|
||||
resource={resource}
|
||||
/>
|
||||
)
|
||||
}
|
||||
|
||||
export default New;
|
||||
@@ -5,6 +5,7 @@ import { Header } from "../../components";
|
||||
import { useOne } from "@refinedev/core";
|
||||
import { CrudForm } from "../../lib/crud/components/crud-form";
|
||||
import { IFirm } from "../../interfaces";
|
||||
import { EntityRoutes } from "./EntityRoutes";
|
||||
|
||||
export const FirmRoutes = () => {
|
||||
return (
|
||||
@@ -15,6 +16,7 @@ export const FirmRoutes = () => {
|
||||
<Header />
|
||||
<Routes>
|
||||
<Route index element={ <FirmHome /> } />
|
||||
<Route path="/entities/*" element={ <EntityRoutes /> } />
|
||||
</Routes>
|
||||
</FirmContextProvider>
|
||||
} />
|
||||
|
||||
Reference in New Issue
Block a user