UNPKG

@mrii/react-table-builder

Version:
1 lines 2.54 kB
{"version":3,"file":"index.mjs","sources":["../../../../src/components/custom/custom-grid-filter-panel/index.tsx"],"sourcesContent":["import { useTableBuilderColumns, useTableBuilderFilters } from '$context';\nimport { useGridApiContext } from '@mui/x-data-grid';\nimport { useEffect } from 'react';\n\nexport const CustomGridFilterPanel: React.FC = () => {\n const apiRef = useGridApiContext();\n const [filters, addFilter, deleteFilter] = useTableBuilderFilters(s => [\n s.filters,\n s.addFilter,\n s.deleteFilter,\n ]);\n\n const columns = useTableBuilderColumns(s => s.columns);\n\n useEffect(() => {\n const source = apiRef.current.state.tabIndex.columnHeader?.field;\n if (!source) return;\n\n const active = filters.findIndex(e => e.field === source) !== -1;\n const columnDef = columns.find(c => c.field === source);\n\n if (active) return deleteFilter(source);\n if (!columnDef) return;\n\n addFilter({\n field: source,\n column: columnDef,\n value: columnDef.type === 'date' ? [null, null] : '',\n });\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n return null;\n};\n"],"names":["CustomGridFilterPanel","apiRef","useGridApiContext","filters","addFilter","deleteFilter","useTableBuilderFilters","s","columns","useTableBuilderColumns","useEffect","source","current","state","tabIndex","columnHeader","field","active","findIndex","e","columnDef","find","c","column","value","type"],"mappings":";;;;;AAIO,MAAMA,wBAAkC,IAAM;AACnD,IAAA,MAAMC,MAASC,GAAAA,iBAAAA,EAAAA,CAAAA;AACf,IAAA,MAAM,CAACC,OAASC,EAAAA,SAAAA,EAAWC,aAAa,GAAGC,sBAAAA,CAAuBC,CAAAA,CAAK,GAAA;AACrEA,YAAAA,CAAAA,CAAEJ,OAAO;AACTI,YAAAA,CAAAA,CAAEH,SAAS;AACXG,YAAAA,CAAAA,CAAEF,YAAY;AACf,SAAA,CAAA,CAAA;AAED,IAAA,MAAMG,OAAUC,GAAAA,sBAAAA,CAAuBF,CAAAA,CAAAA,GAAKA,EAAEC,OAAO,CAAA,CAAA;AAErDE,IAAAA,SAAAA,CAAU,IAAM;QACd,MAAMC,MAAAA,GAASV,OAAOW,OAAO,CAACC,KAAK,CAACC,QAAQ,CAACC,YAAY,EAAEC,KAAAA,CAAAA;AAC3D,QAAA,IAAI,CAACL,MAAQ,EAAA,OAAA;QAEb,MAAMM,MAAAA,GAASd,OAAQe,CAAAA,SAAS,CAACC,CAAAA,IAAKA,CAAEH,CAAAA,KAAK,KAAKL,MAAAA,CAAAA,KAAY,CAAC,CAAA,CAAA;QAC/D,MAAMS,SAAAA,GAAYZ,QAAQa,IAAI,CAACC,CAAAA,CAAKA,GAAAA,CAAAA,CAAEN,KAAK,KAAKL,MAAAA,CAAAA,CAAAA;QAEhD,IAAIM,MAAAA,EAAQ,OAAOZ,YAAaM,CAAAA,MAAAA,CAAAA,CAAAA;AAChC,QAAA,IAAI,CAACS,SAAW,EAAA,OAAA;QAEhBhB,SAAU,CAAA;YACRY,KAAOL,EAAAA,MAAAA;YACPY,MAAQH,EAAAA,SAAAA;YACRI,KAAOJ,EAAAA,SAAAA,CAAUK,IAAI,KAAK,MAAS,GAAA;gBAAC,IAAI;gBAAE,IAAI;AAAC,aAAA,GAAG,EAAE;AACtD,SAAA,CAAA,CAAA;;AAEF,KAAA,EAAG,EAAE,CAAA,CAAA;AAEL,IAAA,OAAO,IAAI,CAAA;AACb;;;;"}