@mrii/react-table-builder
Version:
library to easily build tables using MUI grid
1 lines • 1.68 kB
Source Map (JSON)
{"version":3,"file":"index.mjs","sources":["../../../../src/components/columns/select/index.tsx"],"sourcesContent":["import { memo } from 'react';\nimport { useAddTableColumn } from '$hooks';\nimport type { ColumnBaseProps, SelectItem } from '$types';\nimport type { GridColDef } from '@mui/x-data-grid';\nimport { omitNil } from '$utils/omit-nil';\n\nexport const selectColumnValueFormatter =\n ({ items }: SelectColumnExtraProps): GridColDef['valueFormatter'] =>\n ({ value }) =>\n omitNil(value, items.find(el => el.value === value)?.label ?? value);\n\nexport type SelectColumnExtraProps = { items: SelectItem[] };\n\nexport const SelectColumn: React.FC<ColumnBaseProps<SelectColumnExtraProps>> = memo(\n function SelectColumn({ items, ...props }) {\n useAddTableColumn({\n type: 'singleSelect',\n extraProps: { items },\n valueFormatter: selectColumnValueFormatter({ items }),\n ...props,\n });\n return null;\n }\n);\n"],"names":["selectColumnValueFormatter","items","value","omitNil","find","el","label","SelectColumn","memo","props","useAddTableColumn","type","extraProps","valueFormatter"],"mappings":";;;;AAMO,MAAMA,0BACX,GAAA,CAAC,EAAEC,KAAAA,GAA+B,GAClC,CAAC,EAAEC,KAAAA,GAAO,GACRC,QAAQD,KAAOD,EAAAA,KAAAA,CAAMG,IAAI,CAACC,CAAAA,EAAAA,GAAMA,GAAGH,KAAK,KAAKA,KAAQI,CAAAA,EAAAA,KAAAA,IAASJ,KAAO,EAAA;AAIlE,MAAMK,YAAkEC,iBAAAA,IAAAA,CAC7E,SAASD,YAAAA,CAAa,EAAEN,KAAK,GAAE,GAAGQ,KAAAA,EAAO,EAAE;IACzCC,iBAAkB,CAAA;QAChBC,IAAM,EAAA,cAAA;QACNC,UAAY,EAAA;AAAEX,YAAAA,KAAAA;AAAM,SAAA;AACpBY,QAAAA,cAAAA,EAAgBb,0BAA2B,CAAA;AAAEC,YAAAA,KAAAA;AAAM,SAAA,CAAA;AACnD,QAAA,GAAGQ,KAAK;AACV,KAAA,CAAA,CAAA;AACA,IAAA,OAAO,IAAI,CAAA;AACb,CACA;;;;"}