package.build.lib.utils.getFacetedRowModel.js.map Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of table-core Show documentation
Show all versions of table-core Show documentation
Headless UI for building powerful tables & datagrids for TS/JS.
The newest version!
{"version":3,"file":"getFacetedRowModel.js","sources":["../../../src/utils/getFacetedRowModel.ts"],"sourcesContent":["import { Table, RowModel, Row, RowData } from '../types'\nimport { memo } from '../utils'\nimport { filterRows } from './filterRowsUtils'\n\nexport function getFacetedRowModel(): (\n table: Table,\n columnId: string\n) => () => RowModel {\n return (table, columnId) =>\n memo(\n () => [\n table.getPreFilteredRowModel(),\n table.getState().columnFilters,\n table.getState().globalFilter,\n table.getFilteredRowModel(),\n ],\n (preRowModel, columnFilters, globalFilter) => {\n if (\n !preRowModel.rows.length ||\n (!columnFilters?.length && !globalFilter)\n ) {\n return preRowModel\n }\n\n const filterableIds = [\n ...columnFilters.map(d => d.id).filter(d => d !== columnId),\n globalFilter ? '__global__' : undefined,\n ].filter(Boolean) as string[]\n\n const filterRowsImpl = (row: Row) => {\n // Horizontally filter rows through each column\n for (let i = 0; i < filterableIds.length; i++) {\n if (row.columnFilters[filterableIds[i]!] === false) {\n return false\n }\n }\n return true\n }\n\n return filterRows(preRowModel.rows, filterRowsImpl, table)\n },\n {\n key:\n process.env.NODE_ENV === 'development' &&\n 'getFacetedRowModel_' + columnId,\n debug: () => table.options.debugAll ?? table.options.debugTable,\n onChange: () => {},\n }\n )\n}\n"],"names":["getFacetedRowModel","table","columnId","memo","getPreFilteredRowModel","getState","columnFilters","globalFilter","getFilteredRowModel","preRowModel","rows","length","filterableIds","map","d","id","filter","undefined","Boolean","filterRowsImpl","row","i","filterRows","key","process","env","NODE_ENV","debug","_table$options$debugA","options","debugAll","debugTable","onChange"],"mappings":";;;;;;;;;;;;;;;;;AAIO,SAASA,kBAAkBA,GAGP;EACzB,OAAO,CAACC,KAAK,EAAEC,QAAQ,KACrBC,UAAI,CACF,MAAM,CACJF,KAAK,CAACG,sBAAsB,EAAE,EAC9BH,KAAK,CAACI,QAAQ,EAAE,CAACC,aAAa,EAC9BL,KAAK,CAACI,QAAQ,EAAE,CAACE,YAAY,EAC7BN,KAAK,CAACO,mBAAmB,EAAE,CAC5B,EACD,CAACC,WAAW,EAAEH,aAAa,EAAEC,YAAY,KAAK;AAC5C,IAAA,IACE,CAACE,WAAW,CAACC,IAAI,CAACC,MAAM,IACvB,EAACL,aAAa,IAAA,IAAA,IAAbA,aAAa,CAAEK,MAAM,CAAI,IAAA,CAACJ,YAAa,EACzC;AACA,MAAA,OAAOE,WAAW,CAAA;AACpB,KAAA;AAEA,IAAA,MAAMG,aAAa,GAAG,CACpB,GAAGN,aAAa,CAACO,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACC,EAAE,CAAC,CAACC,MAAM,CAACF,CAAC,IAAIA,CAAC,KAAKZ,QAAQ,CAAC,EAC3DK,YAAY,GAAG,YAAY,GAAGU,SAAS,CACxC,CAACD,MAAM,CAACE,OAAO,CAAa,CAAA;IAE7B,MAAMC,cAAc,GAAIC,GAAe,IAAK;AAC1C;AACA,MAAA,KAAK,IAAIC,CAAC,GAAG,CAAC,EAAEA,CAAC,GAAGT,aAAa,CAACD,MAAM,EAAEU,CAAC,EAAE,EAAE;QAC7C,IAAID,GAAG,CAACd,aAAa,CAACM,aAAa,CAACS,CAAC,CAAC,CAAE,KAAK,KAAK,EAAE;AAClD,UAAA,OAAO,KAAK,CAAA;AACd,SAAA;AACF,OAAA;AACA,MAAA,OAAO,IAAI,CAAA;KACZ,CAAA;IAED,OAAOC,0BAAU,CAACb,WAAW,CAACC,IAAI,EAAES,cAAc,EAAElB,KAAK,CAAC,CAAA;AAC5D,GAAC,EACD;IACEsB,GAAG,EACDC,OAAO,CAACC,GAAG,CAACC,QAAQ,KAAK,aAAa,IACtC,qBAAqB,GAAGxB,QAAQ;AAClCyB,IAAAA,KAAK,EAAEA,MAAA;AAAA,MAAA,IAAAC,qBAAA,CAAA;AAAA,MAAA,OAAA,CAAAA,qBAAA,GAAM3B,KAAK,CAAC4B,OAAO,CAACC,QAAQ,KAAAF,IAAAA,GAAAA,qBAAA,GAAI3B,KAAK,CAAC4B,OAAO,CAACE,UAAU,CAAA;AAAA,KAAA;IAC/DC,QAAQ,EAAEA,MAAM,EAAC;AACnB,GACF,CAAC,CAAA;AACL;;;;"}
© 2015 - 2024 Weber Informatics LLC | Privacy Policy