@furystack/shades-common-components
Version:
17 lines • 758 B
JavaScript
import { createComponent, Shade } from '@furystack/shades';
export const SelectionCell = Shade({
shadowDomName: 'shades-data-grid-selection-cell',
render: ({ props, useObservable, element }) => {
const [selection] = useObservable('selection', props.service.selection, {
onChange: (newSelection) => {
;
element.querySelector('input').checked = newSelection.includes(props.entry);
},
});
const isSelected = selection.includes(props.entry);
return (createComponent("input", { onchange: () => {
props.service.toggleSelection(props.entry);
}, type: "checkbox", checked: isSelected }));
},
});
//# sourceMappingURL=selection-cell.js.map