@@ -16,6 +16,7 @@ import { TableRow } from '../TableRow/index.js';
1616import { TableRowAction } from '../TableRowAction/index.js' ;
1717import { TableRowActionNavigation } from '../TableRowActionNavigation/index.js' ;
1818import { TableSelectionMulti } from '../TableSelectionMulti/index.js' ;
19+ import type { TableSelectionSinglePropTypes } from '../TableSelectionSingle/index.js' ;
1920import { TableSelectionSingle } from '../TableSelectionSingle/index.js' ;
2021import type { TableVirtualizerPropTypes } from '../TableVirtualizer/index.js' ;
2122import { TableVirtualizer } from '../TableVirtualizer/index.js' ;
@@ -33,7 +34,7 @@ const popInColumns = (
3334 < TableHeaderCell minWidth = { '200px' } >
3435 < span > Dimensions</ span >
3536 </ TableHeaderCell >
36- < TableHeaderCell minWidth = { '100px' } maxWidth = "200px" >
37+ < TableHeaderCell minWidth = { '100px' } >
3738 < span > Weight</ span >
3839 </ TableHeaderCell >
3940 < TableHeaderCell minWidth = "200px" >
@@ -72,7 +73,7 @@ export const Default: Story = {
7273 render : ( args ) => {
7374 return (
7475 < Table { ...args } >
75- < TableRow >
76+ < TableRow rowKey = { '0' } >
7677 < TableCell >
7778 < span > Notebook Basic</ span >
7879 </ TableCell >
@@ -89,7 +90,7 @@ export const Default: Story = {
8990 < span > 956EUR</ span >
9091 </ TableCell >
9192 </ TableRow >
92- < TableRow >
93+ < TableRow rowKey = { '1' } >
9394 < TableCell >
9495 < span > Notebook Basic 17HT-1001</ span >
9596 </ TableCell >
@@ -166,6 +167,7 @@ export const GrowingTable: Story = {
166167export const WithSelection : Story = {
167168 render ( args ) {
168169 const [ mode , setMode ] = useState < 'Single' | 'Multi' | 'None' > ( 'Single' ) ;
170+ const [ behavior , setBehavior ] = useState < TableSelectionSinglePropTypes [ 'behavior' ] > ( 'RowSelector' ) ;
169171 return (
170172 < >
171173 < SegmentedButton
@@ -177,16 +179,27 @@ export const WithSelection: Story = {
177179 < SegmentedButtonItem selected = { 'Single' === mode } > Single</ SegmentedButtonItem >
178180 < SegmentedButtonItem selected = { 'Multi' === mode } > Multi</ SegmentedButtonItem >
179181 </ SegmentedButton >
182+ < Label aria-hidden style = { { marginInline : '0.25rem' } } >
183+ |
184+ </ Label >
185+ < SegmentedButton
186+ onSelectionChange = { ( e ) => {
187+ setBehavior ( e . detail . selectedItems [ 0 ] . textContent as TableSelectionSinglePropTypes [ 'behavior' ] ) ;
188+ } }
189+ >
190+ < SegmentedButtonItem selected = { 'RowSelector' === behavior } > RowSelector</ SegmentedButtonItem >
191+ < SegmentedButtonItem selected = { 'RowOnly' === behavior } > RowOnly</ SegmentedButtonItem >
192+ </ SegmentedButton >
180193 < Table
181194 { ...args }
182195 features = {
183196 < >
184- { 'Single' === mode && < TableSelectionSingle /> }
185- { 'Multi' === mode && < TableSelectionMulti /> }
197+ { 'Single' === mode && < TableSelectionSingle behavior = { behavior } /> }
198+ { 'Multi' === mode && < TableSelectionMulti behavior = { behavior } /> }
186199 </ >
187200 }
188201 >
189- < TableRow >
202+ < TableRow rowKey = { '0' } >
190203 < TableCell >
191204 < span > Notebook Basic</ span >
192205 </ TableCell >
@@ -203,7 +216,7 @@ export const WithSelection: Story = {
203216 < span > 956EUR</ span >
204217 </ TableCell >
205218 </ TableRow >
206- < TableRow >
219+ < TableRow rowKey = { '1' } >
207220 < TableCell >
208221 < span > Notebook Basic 17HT-1001</ span >
209222 </ TableCell >
0 commit comments