diff --git a/resources/ts/back/Components/Filters/EnumFilter.tsx b/resources/ts/back/Components/Filters/EnumFilter.tsx
index 77f66b2..ade5c42 100644
--- a/resources/ts/back/Components/Filters/EnumFilter.tsx
+++ b/resources/ts/back/Components/Filters/EnumFilter.tsx
@@ -8,14 +8,20 @@ import AddFilterToUrl from "@/back/lib/filters";
type Props = {
enums: LaravelEnum;
fieldName: string;
- modelName: string;
+ modelRoute: string;
+ prefixRoute: string;
label: string;
placeholder: string;
};
-function EnumFilter(props: Props) {
- const { enums, fieldName, modelName, label, placeholder } = props;
-
+export default function EnumFilter({
+ enums,
+ fieldName,
+ modelRoute,
+ prefixRoute,
+ label,
+ placeholder,
+}: Props) {
const selectedEnumParam = Object.values(enums).find(
(status) => status.name === route().params.status,
);
@@ -35,10 +41,8 @@ function EnumFilter(props: Props) {
...route().params,
[name]: selectedStatusName,
};
- AddFilterToUrl({ modelName, params });
+ AddFilterToUrl({ modelRoute, prefixRoute, params });
}}
/>
);
}
-
-export default EnumFilter;
diff --git a/resources/ts/back/Components/Filters/MultiSelectRelationFilter.tsx b/resources/ts/back/Components/Filters/MultiSelectRelationFilter.tsx
index 0a77b22..648275f 100644
--- a/resources/ts/back/Components/Filters/MultiSelectRelationFilter.tsx
+++ b/resources/ts/back/Components/Filters/MultiSelectRelationFilter.tsx
@@ -6,16 +6,22 @@ import AddFilterToUrl from "@/back/lib/filters";
type Props = {
fieldName: string;
- modelName: string;
+ modelRoute: string;
+ prefixRoute: string;
label: string;
placeholder: string;
/** Model target to display options */
targetModel?: string;
};
-function MultiSelectRelationFilter(props: Props) {
- const { targetModel, fieldName, label, placeholder, modelName } = props;
-
+export default function MultiSelectRelationFilter({
+ targetModel,
+ fieldName,
+ label,
+ placeholder,
+ modelRoute,
+ prefixRoute,
+}: Props) {
const valuesFromUrl: string[] =
typeof route().params[fieldName] === "string"
? route().params[fieldName].split(",")
@@ -37,7 +43,7 @@ function MultiSelectRelationFilter(props: Props) {
...route().params,
[name]: valuesArray.length ? valuesArray.join(",") : undefined,
};
- AddFilterToUrl({ modelName, params });
+ AddFilterToUrl({ modelRoute, prefixRoute, params });
}}
defaultValue={valuesFromUrl}
responsive={{
@@ -54,5 +60,3 @@ function MultiSelectRelationFilter(props: Props) {
/>
);
}
-
-export default MultiSelectRelationFilter;
diff --git a/resources/ts/back/Components/Filters/SwitchFilter.tsx b/resources/ts/back/Components/Filters/SwitchFilter.tsx
index b1f179b..8967963 100644
--- a/resources/ts/back/Components/Filters/SwitchFilter.tsx
+++ b/resources/ts/back/Components/Filters/SwitchFilter.tsx
@@ -5,13 +5,13 @@ import SimpleSwitch from "@/back/Components/Inputs/SimpleSwitch";
import AddFilterToUrl from "@/back/lib/filters";
type Props = {
- fieldName: string;
- modelName: string;
label: string;
+ fieldName: string;
+ modelRoute: string;
+ prefixRoute: string;
};
-function SwitchFilter(props: Props) {
- const { label, fieldName, modelName } = props;
+export default function SwitchFilter({ label, fieldName, modelRoute, prefixRoute }: Props) {
return (
);
}
-
-export default SwitchFilter;
diff --git a/resources/ts/back/Components/Table/DataTableSearch.tsx b/resources/ts/back/Components/Table/DataTableSearch.tsx
index 914c932..168b2f5 100644
--- a/resources/ts/back/Components/Table/DataTableSearch.tsx
+++ b/resources/ts/back/Components/Table/DataTableSearch.tsx
@@ -11,6 +11,7 @@ import AddFilterToUrl from "@/back/lib/filters";
type DataTableSearchProps = {
modelRoute: string;
+ prefixRoute: string;
searchFields: string;
isArchiveRoute?: boolean;
children?: ReactNode;
@@ -18,6 +19,7 @@ type DataTableSearchProps = {
export default function DataTableSearch({
modelRoute,
+ prefixRoute,
searchFields,
isArchiveRoute = false,
children,
@@ -34,11 +36,13 @@ export default function DataTableSearch({
search,
};
AddFilterToUrl({
- modelName: modelRoute,
+ modelRoute,
+ prefixRoute,
params,
isArchiveRoute,
});
};
+
const onDeleteSearch = () => {
setSearch(null);
const params = {
@@ -46,11 +50,13 @@ export default function DataTableSearch({
search: undefined,
};
AddFilterToUrl({
- modelName: modelRoute,
+ modelRoute,
+ prefixRoute,
params,
isArchiveRoute,
});
};
+
return (
<>
}
diff --git a/resources/ts/back/Pages/InvoiceCompanies/Index.tsx b/resources/ts/back/Pages/InvoiceCompanies/Index.tsx
index 34daaa4..83a465b 100644
--- a/resources/ts/back/Pages/InvoiceCompanies/Index.tsx
+++ b/resources/ts/back/Pages/InvoiceCompanies/Index.tsx
@@ -150,6 +150,7 @@ export default function Index({
{isArchiveRoute && }
diff --git a/resources/ts/back/Pages/InvoicePackages/Index.tsx b/resources/ts/back/Pages/InvoicePackages/Index.tsx
index c698bf3..30059a4 100644
--- a/resources/ts/back/Pages/InvoicePackages/Index.tsx
+++ b/resources/ts/back/Pages/InvoicePackages/Index.tsx
@@ -207,6 +207,7 @@ export default function Index({
{isArchiveRoute && }
diff --git a/resources/ts/back/Pages/Notices/Index.tsx b/resources/ts/back/Pages/Notices/Index.tsx
index 7e8dd4f..39b361e 100644
--- a/resources/ts/back/Pages/Notices/Index.tsx
+++ b/resources/ts/back/Pages/Notices/Index.tsx
@@ -189,6 +189,7 @@ export default function Index({
{isArchiveRoute && }
diff --git a/resources/ts/back/Pages/Sites/Index.tsx b/resources/ts/back/Pages/Sites/Index.tsx
index a641113..a09fc83 100644
--- a/resources/ts/back/Pages/Sites/Index.tsx
+++ b/resources/ts/back/Pages/Sites/Index.tsx
@@ -305,6 +305,7 @@ export default function Index({
{isArchiveRoute && }
diff --git a/resources/ts/back/Pages/Users/Index.tsx b/resources/ts/back/Pages/Users/Index.tsx
index 4a95494..e4a62e8 100644
--- a/resources/ts/back/Pages/Users/Index.tsx
+++ b/resources/ts/back/Pages/Users/Index.tsx
@@ -253,6 +253,7 @@ export default function Index({
{isArchiveRoute && }
diff --git a/resources/ts/back/lib/filters.tsx b/resources/ts/back/lib/filters.tsx
index 641a212..8e5d0a9 100644
--- a/resources/ts/back/lib/filters.tsx
+++ b/resources/ts/back/lib/filters.tsx
@@ -1,20 +1,22 @@
// * Packages
-import { AppEnv } from "@/types/global";
-import { router, usePage } from "@inertiajs/react";
+import { router } from "@inertiajs/react";
import { route } from "ziggy-js";
type RouterFiltersProps = {
- modelName: string;
+ modelRoute: string;
+ prefixRoute: string;
params: {
[x: string]: string | boolean | undefined;
};
isArchiveRoute?: boolean;
};
-export default function AddFilterToUrl(props: RouterFiltersProps) {
- const { modelName, params, isArchiveRoute = false } = props;
- const routeName = (usePage().props.appEnv as AppEnv).routes.name;
-
- const targetRoute = `${routeName}${modelName}.${isArchiveRoute ? "trash" : "index"}`;
+export default function AddFilterToUrl({
+ modelRoute,
+ prefixRoute,
+ params,
+ isArchiveRoute = false,
+}: RouterFiltersProps) {
+ const targetRoute = `${prefixRoute}${modelRoute}.${isArchiveRoute ? "trash" : "index"}`;
return router.visit(route(targetRoute), {
method: "get",