Skip to content

fix(AnalyticalTable): control row-selection explicitly by setting selectRowIds #676

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 5 commits into from

Conversation

Lukas742
Copy link
Contributor

BREAKING CHANGE: The row-selection has now manually be handled if selectedRowIds is set. If you want a row initially selected, but still want the table to handle row-selection, please use reactTableOptions={{ initialState: { selectedRowIds: { [key: string]: boolean } } }}

In my opinion we need to change the behavior of selectedRowIds. If the user sets this prop, the table's row selection should then be controlled manually. This will prevent cases where the table's selection logic breaks, because of double fired toggleRowSelected and also is more consistent to how the other react-table props are implemented. If the user wants to select a row initially, it's still possible by setting the initialState.

What do you think? @vbersch @MarcusNotheis

@github-actions
Copy link

github-actions bot commented Sep 10, 2020

Size Change: +10 B (0%)

Total Size: 157 kB

Filename Size Change
packages/main/lib/AnalyticalTable.js 16.1 kB +10 B (0%)
ℹ️ View Unchanged
Filename Size Change
packages/base/lib/createComponentStyles.js 206 B 0 B
packages/base/lib/CssSizeVariables.js 918 B 0 B
packages/base/lib/Device.js 6.47 kB 0 B
packages/base/lib/hooks.js 1.38 kB 0 B
packages/base/lib/Logger.js 1.2 kB 0 B
packages/base/lib/spacing.js 997 B 0 B
packages/base/lib/StyleClassHelper.js 610 B 0 B
packages/base/lib/ThemingParameters.js 3.4 kB 0 B
packages/base/lib/useConsolidatedRef.js 271 B 0 B
packages/base/lib/usePassThroughHtmlProps.js 318 B 0 B
packages/base/lib/useViewportRange.js 460 B 0 B
packages/base/lib/Utils.js 647 B 0 B
packages/charts/lib/BarChart.js 3.81 kB 0 B
packages/charts/lib/BarChartPlaceholder.js 456 B 0 B
packages/charts/lib/ColumnChart.js 4.04 kB 0 B
packages/charts/lib/ColumnChartPlaceholder.js 514 B 0 B
packages/charts/lib/components/ChartContainer.js 880 B 0 B
packages/charts/lib/components/ChartDataLabel.js 605 B 0 B
packages/charts/lib/components/ComposedChartPlaceholder.js 878 B 0 B
packages/charts/lib/components/XAxisTicks.js 596 B 0 B
packages/charts/lib/components/YAxisTicks.js 513 B 0 B
packages/charts/lib/ComposedChart.js 4.77 kB 0 B
packages/charts/lib/DonutChart.js 2.73 kB 0 B
packages/charts/lib/LineChart.js 3.92 kB 0 B
packages/charts/lib/LineChartPlaceholder.js 529 B 0 B
packages/charts/lib/MicroBarChart.js 1.87 kB 0 B
packages/charts/lib/PieChart.js 2.67 kB 0 B
packages/charts/lib/PieChartPlaceholder.js 445 B 0 B
packages/charts/lib/RadarChart.js 2.01 kB 0 B
packages/charts/lib/RadialChart.js 1.08 kB 0 B
packages/charts/lib/ScatterChart.js 3.56 kB 0 B
packages/charts/lib/ScatterChartPlaceholder.js 535 B 0 B
packages/charts/lib/useLegendItemClick.js 391 B 0 B
packages/charts/lib/Utils.js 534 B 0 B
packages/main/lib/ActionSheet.js 1.21 kB 0 B
packages/main/lib/AnalyticalCard.js 748 B 0 B
packages/main/lib/AnalyticalCardHeader.js 2.69 kB 0 B
packages/main/lib/AnalyticalTableScrollMode.js 177 B 0 B
packages/main/lib/Avatar.js 417 B 0 B
packages/main/lib/AvatarBackgroundColor.js 219 B 0 B
packages/main/lib/AvatarFitType.js 151 B 0 B
packages/main/lib/AvatarShape.js 150 B 0 B
packages/main/lib/AvatarSize.js 155 B 0 B
packages/main/lib/Badge.js 300 B 0 B
packages/main/lib/Bar.js 1.28 kB 0 B
packages/main/lib/BarDesign.js 177 B 0 B
packages/main/lib/Breadcrumbs.js 718 B 0 B
packages/main/lib/BreadcrumbsSeparatorStyle.js 198 B 0 B
packages/main/lib/BusyIndicator.js 337 B 0 B
packages/main/lib/BusyIndicatorSize.js 167 B 0 B
packages/main/lib/Button.js 351 B 0 B
packages/main/lib/ButtonDesign.js 190 B 0 B
packages/main/lib/Calendar.js 352 B 0 B
packages/main/lib/CalendarType.js 212 B 0 B
packages/main/lib/Card.js 327 B 0 B
packages/main/lib/Carousel.js 424 B 0 B
packages/main/lib/CarouselArrowsPlacement.js 166 B 0 B
packages/main/lib/CheckBox.js 370 B 0 B
packages/main/lib/ComboBox.js 408 B 0 B
packages/main/lib/ComboBoxItem.js 289 B 0 B
packages/main/lib/ContentDensity.js 151 B 0 B
packages/main/lib/CustomListItem.js 344 B 0 B
packages/main/lib/DatePicker.js 465 B 0 B
packages/main/lib/DateRangePicker.js 484 B 0 B
packages/main/lib/DateTimePicker.js 471 B 0 B
packages/main/lib/DeviationIndicator.js 160 B 0 B
packages/main/lib/Dialog.js 363 B 0 B
packages/main/lib/DurationPicker.js 433 B 0 B
packages/main/lib/FCLLayout.js 236 B 0 B
packages/main/lib/FileUploader.js 383 B 0 B
packages/main/lib/FilterBar.js 6.75 kB 0 B
packages/main/lib/FilterGroupItem.js 1.23 kB 0 B
packages/main/lib/FilterItem.js 1.62 kB 0 B
packages/main/lib/FilterType.js 170 B 0 B
packages/main/lib/FlexBox.js 967 B 0 B
packages/main/lib/FlexBoxAlignItems.js 189 B 0 B
packages/main/lib/FlexBoxDirection.js 169 B 0 B
packages/main/lib/FlexBoxJustifyContent.js 194 B 0 B
packages/main/lib/FlexBoxWrap.js 154 B 0 B
packages/main/lib/FlexibleColumnLayout.js 370 B 0 B
packages/main/lib/Form.js 2.58 kB 0 B
packages/main/lib/FormGroup.js 400 B 0 B
packages/main/lib/FormItem.js 999 B 0 B
packages/main/lib/GlobalStyleClasses.js 151 B 0 B
packages/main/lib/Grid.js 1.58 kB 0 B
packages/main/lib/GridPosition.js 157 B 0 B
packages/main/lib/GroupHeaderListItem.js 313 B 0 B
packages/main/lib/Icon.js 323 B 0 B
packages/main/lib/Input.js 472 B 0 B
packages/main/lib/InputType.js 184 B 0 B
packages/main/lib/Label.js 322 B 0 B
packages/main/lib/Link.js 341 B 0 B
packages/main/lib/LinkDesign.js 191 B 0 B
packages/main/lib/List.js 432 B 0 B
packages/main/lib/ListItemTypes.js 160 B 0 B
packages/main/lib/ListMode.js 191 B 0 B
packages/main/lib/ListSeparators.js 186 B 0 B
packages/main/lib/Loader.js 1.3 kB 0 B
packages/main/lib/LoaderType.js 152 B 0 B
packages/main/lib/MessageBox.js 2.35 kB 0 B
packages/main/lib/MessageBoxActions.js 231 B 0 B
packages/main/lib/MessageBoxTypes.js 232 B 0 B
packages/main/lib/MessageStrip.js 351 B 0 B
packages/main/lib/MessageStripType.js 181 B 0 B
packages/main/lib/MultiComboBox.js 419 B 0 B
packages/main/lib/MultiComboBoxItem.js 309 B 0 B
packages/main/lib/NotificationListGroupItem.js 410 B 0 B
packages/main/lib/NotificationListItem.js 404 B 0 B
packages/main/lib/NotificationOverflowAction.js 310 B 0 B
packages/main/lib/ObjectPage.js 9.13 kB 0 B
packages/main/lib/ObjectPageMode.js 159 B 0 B
packages/main/lib/ObjectPageSection.js 1.25 kB 0 B
packages/main/lib/ObjectPageSubSection.js 1.08 kB 0 B
packages/main/lib/ObjectStatus.js 1.2 kB 0 B
packages/main/lib/Option.js 303 B 0 B
packages/main/lib/Page.js 2.03 kB 0 B
packages/main/lib/PageBackgroundDesign.js 183 B 0 B
packages/main/lib/Panel.js 379 B 0 B
packages/main/lib/PanelAccessibleRoles.js 201 B 0 B
packages/main/lib/PlacementType.js 175 B 0 B
packages/main/lib/Popover.js 485 B 0 B
packages/main/lib/PopoverHorizontalAlign.js 181 B 0 B
packages/main/lib/PopoverPlacementType.js 172 B 0 B
packages/main/lib/PopoverVerticalAlign.js 204 B 0 B
packages/main/lib/Priority.js 163 B 0 B
packages/main/lib/ProductSwitch.js 288 B 0 B
packages/main/lib/ProductSwitchItem.js 340 B 0 B
packages/main/lib/ProgressIndicator.js 359 B 0 B
packages/main/lib/RadioButton.js 378 B 0 B
packages/main/lib/RatingIndicator.js 345 B 0 B
packages/main/lib/ResponsivePopover.js 500 B 0 B
packages/main/lib/SegmentedButton.js 300 B 0 B
packages/main/lib/Select.js 333 B 0 B
packages/main/lib/SemanticColor.js 181 B 0 B
packages/main/lib/ShellBar.js 436 B 0 B
packages/main/lib/ShellBarItem.js 327 B 0 B
packages/main/lib/SideNavigation.js 328 B 0 B
packages/main/lib/SideNavigationItem.js 337 B 0 B
packages/main/lib/SideNavigationSubItem.js 329 B 0 B
packages/main/lib/Size.js 151 B 0 B
packages/main/lib/Spinner.js 1.2 kB 0 B
packages/main/lib/StandardListItem.js 407 B 0 B
packages/main/lib/SuggestionItem.js 397 B 0 B
packages/main/lib/Switch.js 330 B 0 B
packages/main/lib/Tab.js 362 B 0 B
packages/main/lib/TabContainer.js 393 B 0 B
packages/main/lib/TabContainerTabsPlacement.js 161 B 0 B
packages/main/lib/TabLayout.js 150 B 0 B
packages/main/lib/Table.js 346 B 0 B
packages/main/lib/TableCell.js 283 B 0 B
packages/main/lib/TableColumn.js 332 B 0 B
packages/main/lib/TablePlaceholder.js 771 B 0 B
packages/main/lib/TableRow.js 281 B 0 B
packages/main/lib/TableScaleWidthMode.js 169 B 0 B
packages/main/lib/TableSelectionBehavior.js 178 B 0 B
packages/main/lib/TableSelectionMode.js 182 B 0 B
packages/main/lib/TabSeparator.js 283 B 0 B
packages/main/lib/Text.js 798 B 0 B
packages/main/lib/TextAlign.js 183 B 0 B
packages/main/lib/TextArea.js 450 B 0 B
packages/main/lib/ThemeProvider.js 1.05 kB 0 B
packages/main/lib/Themes.js 188 B 0 B
packages/main/lib/Timeline.js 277 B 0 B
packages/main/lib/TimelineItem.js 337 B 0 B
packages/main/lib/TimePicker.js 399 B 0 B
packages/main/lib/Title.js 317 B 0 B
packages/main/lib/TitleLevel.js 163 B 0 B
packages/main/lib/Toast.js 330 B 0 B
packages/main/lib/ToastPlacement.js 208 B 0 B
packages/main/lib/ToggleButton.js 371 B 0 B
packages/main/lib/Token.js 206 B 0 B
packages/main/lib/Tokenizer.js 223 B 0 B
packages/main/lib/Toolbar.js 3 kB 0 B
packages/main/lib/ToolbarDesign.js 175 B 0 B
packages/main/lib/ToolbarSeparator.js 477 B 0 B
packages/main/lib/ToolbarSpacer.js 220 B 0 B
packages/main/lib/ToolbarStyle.js 153 B 0 B
packages/main/lib/Tree.js 363 B 0 B
packages/main/lib/TreeItem.js 334 B 0 B
packages/main/lib/UploadCollection.js 378 B 0 B
packages/main/lib/UploadCollectionItem.js 436 B 0 B
packages/main/lib/UploadState.js 170 B 0 B
packages/main/lib/ValueState.js 182 B 0 B
packages/main/lib/VariantManagement.js 1.98 kB 0 B
packages/main/lib/VerticalAlign.js 174 B 0 B
packages/main/lib/withWebComponent.js 1.58 kB 0 B

compressed-size-action

@coveralls
Copy link

coveralls commented Sep 10, 2020

Coverage Status

Coverage decreased (-0.02%) to 63.804% when pulling d39c2a4 on fix/analytical-table-row-selection-custom into 95a1078 on master.

@Lukas742
Copy link
Contributor Author

closed in favor of #685

@Lukas742 Lukas742 closed this Sep 22, 2020
@Lukas742 Lukas742 deleted the fix/analytical-table-row-selection-custom branch September 22, 2020 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants