@furystack/shades-common-components
Version:
18 lines • 1.07 kB
JavaScript
import { Shade, createComponent } from '@furystack/shades';
import { DataGridRow } from './data-grid-row.js';
export const DataGridBody = Shade({
shadowDomName: 'shade-data-grid-body',
elementBase: HTMLTableSectionElement,
elementBaseName: 'tbody',
style: {
display: 'table-row-group',
},
render: ({ props, useObservable }) => {
const [data] = useObservable('data', props.service.data);
if (!data?.entries?.length) {
return props.emptyComponent || createComponent("div", null, " - No Data - ");
}
return (createComponent(createComponent, null, data?.entries?.map((entry) => (createComponent(DataGridRow, { columns: props.columns, entry: entry, service: props.service, rowComponents: props.rowComponents, onRowClick: props.onRowClick, onRowDoubleClick: props.onRowDoubleClick, focusedRowStyle: props.focusedRowStyle, unfocusedRowStyle: props.unfocusedRowStyle, selectedRowStyle: props.selectedRowStyle, unselectedRowStyle: props.unselectedRowStyle })))));
},
});
//# sourceMappingURL=body.js.map