From e88a19c0e4251e9c4e9baf1695bdb9bf9aab9921 Mon Sep 17 00:00:00 2001 From: Hunter Perrin Date: Tue, 14 Sep 2021 11:05:40 -0700 Subject: [PATCH] fix: data table checkboxes and sorting --- packages/chips/Text.svelte | 2 +- packages/chips/TrailingAction.svelte | 2 +- packages/data-table/Body.svelte | 4 ++-- packages/data-table/Cell.svelte | 2 +- packages/data-table/DataTable.svelte | 6 ++++-- packages/data-table/Head.svelte | 4 ++-- packages/data-table/Row.svelte | 2 +- packages/site/src/routes/demo/dialog/_List.svelte | 2 +- 8 files changed, 13 insertions(+), 11 deletions(-) diff --git a/packages/chips/Text.svelte b/packages/chips/Text.svelte index 27afb4e26..dc0b57de6 100644 --- a/packages/chips/Text.svelte +++ b/packages/chips/Text.svelte @@ -74,7 +74,7 @@ dispatch(getElement(), 'SMUIChipsChipPrimaryAction:mount', accessor); return () => { - dispatch(getElement(), 'SMUIChipsChipPrimaryAction:unmount'); + dispatch(getElement(), 'SMUIChipsChipPrimaryAction:unmount', accessor); }; }); diff --git a/packages/chips/TrailingAction.svelte b/packages/chips/TrailingAction.svelte index e6d1153d8..20a2fe831 100644 --- a/packages/chips/TrailingAction.svelte +++ b/packages/chips/TrailingAction.svelte @@ -106,7 +106,7 @@ instance.init(); return () => { - dispatch(getElement(), 'SMUIChipsChipTrailingAction:unmount'); + dispatch(getElement(), 'SMUIChipsChipTrailingAction:unmount', accessor); instance.destroy(); }; diff --git a/packages/data-table/Body.svelte b/packages/data-table/Body.svelte index f8e861006..3bca0ff12 100644 --- a/packages/data-table/Body.svelte +++ b/packages/data-table/Body.svelte @@ -51,10 +51,10 @@ }, }; - dispatch(getElement(), 'SMUI:data-table:body:mount', accessor); + dispatch(getElement(), 'SMUIDataTableBody:mount', accessor); return () => { - dispatch(getElement(), 'SMUI:data-table:body:unmount'); + dispatch(getElement(), 'SMUIDataTableBody:unmount', accessor); }; }); diff --git a/packages/data-table/Cell.svelte b/packages/data-table/Cell.svelte index beb16c087..a66622d0b 100644 --- a/packages/data-table/Cell.svelte +++ b/packages/data-table/Cell.svelte @@ -144,7 +144,7 @@ dispatch(getElement(), 'SMUIDataTableCell:mount', accessor); return () => { - dispatch(getElement(), 'SMUIDataTableCell:unmount'); + dispatch(getElement(), 'SMUIDataTableCell:unmount', accessor); }; }); diff --git a/packages/data-table/DataTable.svelte b/packages/data-table/DataTable.svelte index 324ff2a24..f32b1f992 100644 --- a/packages/data-table/DataTable.svelte +++ b/packages/data-table/DataTable.svelte @@ -318,10 +318,12 @@ '.mdc-data-table__header-cell--with-sort' ) as HTMLTableCellElement; - if (!headerCell) { - return; + if (headerCell) { + handleSortAction(headerCell); } + } + function handleSortAction(headerCell: HTMLTableCellElement) { const orderedCells = header?.orderedCells ?? []; const columnIndex = orderedCells diff --git a/packages/data-table/Head.svelte b/packages/data-table/Head.svelte index 85a4d9afb..b5186bc2a 100644 --- a/packages/data-table/Head.svelte +++ b/packages/data-table/Head.svelte @@ -51,10 +51,10 @@ }, }; - dispatch(getElement(), 'SMUI:data-table:header:mount', accessor); + dispatch(getElement(), 'SMUIDataTableHeader:mount', accessor); return () => { - dispatch(getElement(), 'SMUI:data-table:header:unmount'); + dispatch(getElement(), 'SMUIDataTableHeader:unmount', accessor); }; }); diff --git a/packages/data-table/Row.svelte b/packages/data-table/Row.svelte index 38bb17d44..8c0326c4e 100644 --- a/packages/data-table/Row.svelte +++ b/packages/data-table/Row.svelte @@ -93,7 +93,7 @@ dispatch(getElement(), 'SMUIDataTableRow:mount', accessor); return () => { - dispatch(getElement(), 'SMUIDataTableRow:unmount'); + dispatch(getElement(), 'SMUIDataTableRow:unmount', accessor); }; }); diff --git a/packages/site/src/routes/demo/dialog/_List.svelte b/packages/site/src/routes/demo/dialog/_List.svelte index 8ffd7a471..f4f763121 100644 --- a/packages/site/src/routes/demo/dialog/_List.svelte +++ b/packages/site/src/routes/demo/dialog/_List.svelte @@ -24,7 +24,7 @@
Clicked: {clicked}{clicked === 69 ? ', nice' : clicked === 42 ? ', life, the universe, and everything' : ''}
+ class="status">Clicked: {clicked}{clicked === 69 ? ', nice' : clicked === 42 ? ', the answer to life, the universe, and everything' : ''}