removing soft delete where

This commit is contained in:
rizky 2024-08-09 03:33:03 -07:00
parent 01e65b4858
commit c30dee6181
2 changed files with 52 additions and 11 deletions

View File

@ -1,14 +1,12 @@
import { GFCol, parseGenField } from "lib/gen/utils";
import { getFilter } from "../utils/get-filter";
import { parseSingleFilter } from "./single-filter";
import { softDeleteFilter } from "./soft-delete-filter";
export const filterWhere = (filter_name: string, p: any) => {
const f = getFilter(filter_name);
let where: any = {};
if (f) {
let fields: GFCol[] = [];
//
if (p.gen__fields) {
fields = parseGenField(p.gen__fields);
}
@ -27,12 +25,5 @@ export const filterWhere = (filter_name: string, p: any) => {
}
}
if (p && p.opt__feature && p.sft__fields && p.sft__type) {
where = softDeleteFilter(where, {
feature: p.opt_feature,
field: p.sft__fields,
type: p.sft__type,
});
}
return where;
};

View File

@ -175,6 +175,7 @@ export const TableList: FC<TableListProp> = ({
},
collapsed: new Set<number>(),
cached_row: new WeakMap<any, ReactElement>(),
filtering: "" as ReactNode | string | true,
sort: {
columns: (ls_sort?.columns || []) as SortColumn[],
on_change: (cols: SortColumn[]) => {
@ -260,6 +261,7 @@ export const TableList: FC<TableListProp> = ({
if (arg?.toast === false) should_toast = false;
local.should_toast = should_toast;
local.filtering = "";
if (typeof on_load === "function") {
local.status = "loading";
local.render();
@ -267,6 +269,26 @@ export const TableList: FC<TableListProp> = ({
const orderBy = local.sort.orderBy || undefined;
const where = filterWhere(filter_name, __props);
if (where?.OR?.length > 0) {
const key = Object.keys(where.OR[0])[0];
if (key && where.OR[0][key]) {
let filtering = where.OR[0][key].contains;
if (typeof local.filtering === "string") {
filtering = filtering.slice(1, -1);
} else {
filtering = "";
}
if (filtering) {
local.filtering = (
<div className="c-pt-2">
Searching for: <pre>"{filtering.trim()}"</pre>
</div>
);
}
}
}
if (md) {
const last = md.params.links[md.params.links.length - 1];
if (last && last.where) {
@ -846,7 +868,21 @@ export const TableList: FC<TableListProp> = ({
<div className="c-flex-1 c-w-full absolute inset-0 c-flex c-flex-col c-items-center c-justify-center">
<div className="c-max-w-[15%] c-flex c-flex-col c-items-center">
<Sticker size={35} strokeWidth={1} />
<div className="c-pt-1">No&nbsp;Data</div>
<div className="c-pt-1 c-text-center">
No&nbsp;Data
<br />
{local.filtering && (
<div
className={css`
color: gray;
font-style: italic;
font-size: 90%;
`}
>
{local.filtering}
</div>
)}
</div>
</div>
</div>
),
@ -929,7 +965,21 @@ export const TableList: FC<TableListProp> = ({
) : (
<div className="c-flex c-items-center c-justify-center c-flex-1 w-full h-full c-flex-col ">
<Sticker size={35} strokeWidth={1} />
<div className="c-pt-1">No&nbsp;Data</div>
<div className="c-pt-1">
No&nbsp;Data
<br />
{local.filtering && (
<div
className={css`
color: gray;
font-style: italic;
font-size: 90%;
`}
>
{local.filtering}
</div>
)}
</div>
</div>
)}
</>