@rio-cloud/uikit-mcp 1.1.10 → 1.1.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/dist/doc-metadata.json +92 -92
- package/dist/docs/components/accentBar.md +1 -1
- package/dist/docs/components/activity.md +1 -1
- package/dist/docs/components/analyticsAnalysisOverlay.md +3 -1
- package/dist/docs/components/animatedNumber.md +2 -2
- package/dist/docs/components/animatedTextReveal.md +6 -6
- package/dist/docs/components/animations.md +22 -22
- package/dist/docs/components/appHeader.md +1 -1
- package/dist/docs/components/appLayout.md +31 -65
- package/dist/docs/components/appNavigationBar.md +1 -1
- package/dist/docs/components/areaCharts.md +7 -5
- package/dist/docs/components/aspectRatioPlaceholder.md +1 -1
- package/dist/docs/components/assetTree.md +160 -142
- package/dist/docs/components/autosuggests.md +1 -1
- package/dist/docs/components/avatar.md +1 -1
- package/dist/docs/components/banner.md +2 -2
- package/dist/docs/components/barCharts.md +16 -14
- package/dist/docs/components/barList.md +9 -9
- package/dist/docs/components/basicMap.md +45 -1
- package/dist/docs/components/bottomSheet.md +1 -1
- package/dist/docs/components/button.md +1 -1
- package/dist/docs/components/buttonToolbar.md +1 -1
- package/dist/docs/components/calendarStripe.md +56 -56
- package/dist/docs/components/card.md +1 -1
- package/dist/docs/components/carousel.md +1 -1
- package/dist/docs/components/chartColors.md +3 -1
- package/dist/docs/components/chartsGettingStarted.md +3 -1
- package/dist/docs/components/chat.md +1 -1
- package/dist/docs/components/checkbox.md +3 -1
- package/dist/docs/components/circularProgress.md +5 -5
- package/dist/docs/components/clearableInput.md +1 -1
- package/dist/docs/components/collapse.md +4 -2
- package/dist/docs/components/composedCharts.md +17 -15
- package/dist/docs/components/contentLoader.md +1 -1
- package/dist/docs/components/dataTabs.md +1 -1
- package/dist/docs/components/datepickers.md +662 -660
- package/dist/docs/components/dayPicker.md +55 -5
- package/dist/docs/components/dayPickerCalendar.md +488 -468
- package/dist/docs/components/dialogs.md +1 -1
- package/dist/docs/components/divider.md +1 -1
- package/dist/docs/components/dropdowns.md +3270 -3244
- package/dist/docs/components/editableContent.md +1 -1
- package/dist/docs/components/expander.md +1 -1
- package/dist/docs/components/fade.md +1 -1
- package/dist/docs/components/fadeExpander.md +1 -1
- package/dist/docs/components/fadeUp.md +2 -2
- package/dist/docs/components/feedback.md +1 -1
- package/dist/docs/components/filePickers.md +1 -1
- package/dist/docs/components/formLabel.md +1 -1
- package/dist/docs/components/groupedItemList.md +1 -1
- package/dist/docs/components/htmlTable.md +113 -115
- package/dist/docs/components/iconList.md +3 -3
- package/dist/docs/components/imagePreloader.md +1 -1
- package/dist/docs/components/labeledElement.md +1 -1
- package/dist/docs/components/licensePlate.md +1 -1
- package/dist/docs/components/lineCharts.md +6 -4
- package/dist/docs/components/listMenu.md +1 -1
- package/dist/docs/components/loadMore.md +1 -1
- package/dist/docs/components/mainNavigation.md +1 -1
- package/dist/docs/components/mapCircle.md +1 -1
- package/dist/docs/components/mapCluster.md +3 -1
- package/dist/docs/components/mapContext.md +1 -1
- package/dist/docs/components/mapDraggableMarker.md +1 -1
- package/dist/docs/components/mapGettingStarted.md +39 -1
- package/dist/docs/components/mapInfoBubble.md +1 -1
- package/dist/docs/components/mapLayerGroup.md +1 -1
- package/dist/docs/components/mapMarker.md +3 -1
- package/dist/docs/components/mapPolygon.md +1 -1
- package/dist/docs/components/mapRoute.md +1 -1
- package/dist/docs/components/mapSettings.md +36 -9
- package/dist/docs/components/mapUtils.md +65 -2
- package/dist/docs/components/mapViewportHistory.md +287 -0
- package/dist/docs/components/multiselects.md +171 -1
- package/dist/docs/components/noData.md +1 -1
- package/dist/docs/components/notifications.md +1 -1
- package/dist/docs/components/numbercontrol.md +1 -1
- package/dist/docs/components/onboarding.md +1 -1
- package/dist/docs/components/page.md +1 -1
- package/dist/docs/components/pager.md +1 -1
- package/dist/docs/components/pieCharts.md +38 -36
- package/dist/docs/components/popover.md +1 -1
- package/dist/docs/components/position.md +1 -1
- package/dist/docs/components/radialBarCharts.md +27 -25
- package/dist/docs/components/radioCardGroup.md +1 -1
- package/dist/docs/components/radiobutton.md +3 -1
- package/dist/docs/components/releaseNotes.md +1 -1
- package/dist/docs/components/resizer.md +3 -1
- package/dist/docs/components/responsiveColumnStripe.md +3 -1
- package/dist/docs/components/responsiveVideo.md +1 -1
- package/dist/docs/components/rioglyph.md +1 -1
- package/dist/docs/components/rules.md +1 -1
- package/dist/docs/components/saveableInput.md +247 -247
- package/dist/docs/components/selects.md +168 -51
- package/dist/docs/components/sidebar.md +1 -1
- package/dist/docs/components/sliders.md +1 -1
- package/dist/docs/components/smoothScrollbars.md +3 -1
- package/dist/docs/components/spinners.md +1 -1
- package/dist/docs/components/states.md +15 -1
- package/dist/docs/components/statsWidgets.md +1 -1
- package/dist/docs/components/statusBar.md +3 -1
- package/dist/docs/components/stepButton.md +1 -1
- package/dist/docs/components/steppedProgressBars.md +1 -1
- package/dist/docs/components/subNavigation.md +1 -1
- package/dist/docs/components/supportMarker.md +1 -1
- package/dist/docs/components/svgImage.md +1 -1
- package/dist/docs/components/switch.md +3 -1
- package/dist/docs/components/table.md +1998 -221
- package/dist/docs/components/tableControls.md +51 -51
- package/dist/docs/components/tagManager.md +1 -1
- package/dist/docs/components/tags.md +1 -1
- package/dist/docs/components/teaser.md +3 -1
- package/dist/docs/components/textTruncateMiddle.md +1 -1
- package/dist/docs/components/timeline.md +1 -1
- package/dist/docs/components/timepicker.md +3 -1
- package/dist/docs/components/toggleButton.md +1 -1
- package/dist/docs/components/tooltip.md +5 -1
- package/dist/docs/components/tracker.md +1 -1
- package/dist/docs/components/virtualList.md +58 -56
- package/dist/docs/foundations.md +271 -105
- package/dist/docs/start/changelog.md +44 -212
- package/dist/docs/start/goodtoknow.md +8 -2
- package/dist/docs/start/guidelines/color-combinations.md +5 -1
- package/dist/docs/start/guidelines/custom-css.md +26 -2
- package/dist/docs/start/guidelines/custom-rioglyph.md +20 -2
- package/dist/docs/start/guidelines/formatting.md +2256 -249
- package/dist/docs/start/guidelines/iframe.md +37 -1
- package/dist/docs/start/guidelines/obfuscate-data.md +26 -2
- package/dist/docs/start/guidelines/print-css.md +16 -2
- package/dist/docs/start/guidelines/spinner.md +1 -1
- package/dist/docs/start/guidelines/state-in-url.md +1138 -11
- package/dist/docs/start/guidelines/supported-browsers.md +9 -2
- package/dist/docs/start/guidelines/writing.md +228 -2
- package/dist/docs/start/howto.md +160 -10
- package/dist/docs/start/intro.md +40 -2
- package/dist/docs/start/responsiveness.md +29 -1
- package/dist/docs/templates/ai-assistant.md +1 -1
- package/dist/docs/templates/common-table.md +55 -55
- package/dist/docs/templates/detail-views.md +2 -2
- package/dist/docs/templates/expandable-details.md +1 -1
- package/dist/docs/templates/feature-cards.md +37 -37
- package/dist/docs/templates/form-summary.md +15 -15
- package/dist/docs/templates/form-toggle.md +1 -1
- package/dist/docs/templates/list-blocks.md +137 -137
- package/dist/docs/templates/loading-progress.md +1 -1
- package/dist/docs/templates/options-panel.md +1 -1
- package/dist/docs/templates/panel-variants.md +1 -1
- package/dist/docs/templates/progress-cards.md +1 -1
- package/dist/docs/templates/progress-success.md +1 -1
- package/dist/docs/templates/settings-form.md +18 -18
- package/dist/docs/templates/stats-blocks.md +10 -10
- package/dist/docs/templates/table-panel.md +1 -1
- package/dist/docs/templates/usage-cards.md +1 -1
- package/dist/docs/utilities/classNames.md +89 -1
- package/dist/docs/utilities/deviceUtils.md +1 -1
- package/dist/docs/utilities/featureToggles.md +182 -2
- package/dist/docs/utilities/fuelTypeUtils.md +1 -1
- package/dist/docs/utilities/getTrackingAttributes.md +46 -1
- package/dist/docs/utilities/routeUtils.md +210 -2
- package/dist/docs/utilities/useAfterMount.md +1 -1
- package/dist/docs/utilities/useAutoAnimate.md +1 -1
- package/dist/docs/utilities/useAverage.md +1 -1
- package/dist/docs/utilities/useClickOutside.md +1 -1
- package/dist/docs/utilities/useClipboard.md +2 -2
- package/dist/docs/utilities/useCookies.md +1 -1
- package/dist/docs/utilities/useCount.md +1 -1
- package/dist/docs/utilities/useDarkMode.md +1 -1
- package/dist/docs/utilities/useDebugInfo.md +3 -3
- package/dist/docs/utilities/useDraggableElement.md +1 -1
- package/dist/docs/utilities/useEffectOnce.md +1 -1
- package/dist/docs/utilities/useElapsedTime.md +1 -1
- package/dist/docs/utilities/useElementSize.md +1 -1
- package/dist/docs/utilities/useEsc.md +1 -1
- package/dist/docs/utilities/useEvent.md +1 -1
- package/dist/docs/utilities/useFocusTrap.md +1 -1
- package/dist/docs/utilities/useFullscreen.md +1 -1
- package/dist/docs/utilities/useHover.md +1 -1
- package/dist/docs/utilities/useIncomingPostMessages.md +1 -1
- package/dist/docs/utilities/useInterval.md +1 -1
- package/dist/docs/utilities/useIsFocusWithin.md +1 -1
- package/dist/docs/utilities/useKey.md +1 -1
- package/dist/docs/utilities/useLocalStorage.md +1 -1
- package/dist/docs/utilities/useLocationSuggestions.md +1 -1
- package/dist/docs/utilities/useMax.md +1 -1
- package/dist/docs/utilities/useMin.md +1 -1
- package/dist/docs/utilities/useMutationObserver.md +1 -1
- package/dist/docs/utilities/useOnScreen.md +1 -1
- package/dist/docs/utilities/useOnlineStatus.md +1 -1
- package/dist/docs/utilities/usePostMessage.md +1 -1
- package/dist/docs/utilities/usePostMessageSender.md +1 -1
- package/dist/docs/utilities/usePrevious.md +111 -1
- package/dist/docs/utilities/useResizeObserver.md +1 -1
- package/dist/docs/utilities/useRioCookieConsent.md +1 -1
- package/dist/docs/utilities/useScrollPosition.md +1 -1
- package/dist/docs/utilities/useSearch.md +1 -1
- package/dist/docs/utilities/useSearchHighlight.md +1 -1
- package/dist/docs/utilities/useSorting.md +1 -1
- package/dist/docs/utilities/useStateWithValidation.md +1 -1
- package/dist/docs/utilities/useSum.md +1 -1
- package/dist/docs/utilities/useTableExport.md +61 -61
- package/dist/docs/utilities/useTableSelection.md +72 -72
- package/dist/docs/utilities/useTimeout.md +1 -1
- package/dist/docs/utilities/useToggle.md +1 -1
- package/dist/docs/utilities/useUrlState.md +1 -1
- package/dist/docs/utilities/useWindowResize.md +1 -1
- package/dist/index.mjs +174 -70
- package/dist/search-synonyms.json +214 -76
- package/dist/version.json +2 -2
- package/package.json +8 -6
- package/dist/docs/components/mapRouteGenerator.md +0 -6
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*Category:* Components
|
|
4
4
|
*Section:* Table
|
|
5
5
|
*Source:* https://uikit.developers.rio.cloud/#/components/table
|
|
6
|
-
*Captured:* 2026-
|
|
6
|
+
*Captured:* 2026-05-06T12:15:46.902Z
|
|
7
7
|
|
|
8
8
|
The new Table component is the preferred approach for building tables in the UIKIT. It provides a declarative API for headers, rows, cells, and footers while keeping table and card views consistent across responsive layouts.
|
|
9
9
|
|
|
@@ -1445,6 +1445,7 @@ const TableResizableSortableExample = () => {
|
|
|
1445
1445
|
sortBy: String(sortKey),
|
|
1446
1446
|
sortDirection,
|
|
1447
1447
|
});
|
|
1448
|
+
const visibleColumns = columns.filter(column => column.visible !== false);
|
|
1448
1449
|
|
|
1449
1450
|
const selection = useTableSelection({
|
|
1450
1451
|
rows: sortedItems,
|
|
@@ -1518,41 +1519,84 @@ const TableResizableSortableExample = () => {
|
|
|
1518
1519
|
onColumnOrderChange={handleColumnOrderChange}
|
|
1519
1520
|
>
|
|
1520
1521
|
<TableHeader>
|
|
1521
|
-
{
|
|
1522
|
-
|
|
1523
|
-
|
|
1524
|
-
|
|
1525
|
-
|
|
1526
|
-
|
|
1527
|
-
|
|
1528
|
-
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
</TableHeaderColumn>
|
|
1537
|
-
))}
|
|
1522
|
+
{visibleColumns.map(column => (
|
|
1523
|
+
<TableHeaderColumn
|
|
1524
|
+
key={column.key}
|
|
1525
|
+
columnKey={column.key}
|
|
1526
|
+
width={column.width}
|
|
1527
|
+
sortable={column.sortable}
|
|
1528
|
+
resizeable={column.resizeable}
|
|
1529
|
+
draggable={column.draggable}
|
|
1530
|
+
horizontalAlign={column.horizontalAlign}
|
|
1531
|
+
icon={column.icon}
|
|
1532
|
+
hideLabel={column.hideLabel}
|
|
1533
|
+
>
|
|
1534
|
+
{column.label}
|
|
1535
|
+
</TableHeaderColumn>
|
|
1536
|
+
))}
|
|
1538
1537
|
</TableHeader>
|
|
1539
1538
|
|
|
1540
1539
|
<TableBody>
|
|
1541
1540
|
{sortedItems.map(row => (
|
|
1542
1541
|
<TableRow key={row.id} id={row.id}>
|
|
1543
|
-
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
|
-
|
|
1547
|
-
|
|
1548
|
-
|
|
1549
|
-
|
|
1550
|
-
|
|
1551
|
-
|
|
1552
|
-
|
|
1553
|
-
|
|
1554
|
-
|
|
1555
|
-
|
|
1542
|
+
{visibleColumns.map(column => {
|
|
1543
|
+
switch (column.key) {
|
|
1544
|
+
case 'status':
|
|
1545
|
+
return (
|
|
1546
|
+
<TableColumn key={column.key} columnKey={column.key}>
|
|
1547
|
+
<span className={resolveStatusLabelClassName(row.status)}>
|
|
1548
|
+
{row.status}
|
|
1549
|
+
</span>
|
|
1550
|
+
</TableColumn>
|
|
1551
|
+
);
|
|
1552
|
+
case 'eta':
|
|
1553
|
+
return (
|
|
1554
|
+
<TableColumn
|
|
1555
|
+
key={column.key}
|
|
1556
|
+
columnKey={column.key}
|
|
1557
|
+
horizontalAlign='right'
|
|
1558
|
+
>
|
|
1559
|
+
{row.eta}
|
|
1560
|
+
</TableColumn>
|
|
1561
|
+
);
|
|
1562
|
+
case 'actions':
|
|
1563
|
+
return (
|
|
1564
|
+
<TableColumn
|
|
1565
|
+
key={column.key}
|
|
1566
|
+
columnKey={column.key}
|
|
1567
|
+
horizontalAlign='right'
|
|
1568
|
+
>
|
|
1569
|
+
<Button bsStyle='default' iconName='rioglyph-pencil' iconOnly />
|
|
1570
|
+
</TableColumn>
|
|
1571
|
+
);
|
|
1572
|
+
case 'orderId':
|
|
1573
|
+
return (
|
|
1574
|
+
<TableColumn key={column.key} columnKey={column.key}>
|
|
1575
|
+
{row.orderId}
|
|
1576
|
+
</TableColumn>
|
|
1577
|
+
);
|
|
1578
|
+
case 'vehicle':
|
|
1579
|
+
return (
|
|
1580
|
+
<TableColumn key={column.key} columnKey={column.key}>
|
|
1581
|
+
{row.vehicle}
|
|
1582
|
+
</TableColumn>
|
|
1583
|
+
);
|
|
1584
|
+
case 'route':
|
|
1585
|
+
return (
|
|
1586
|
+
<TableColumn key={column.key} columnKey={column.key}>
|
|
1587
|
+
{row.route}
|
|
1588
|
+
</TableColumn>
|
|
1589
|
+
);
|
|
1590
|
+
case 'cargo':
|
|
1591
|
+
return (
|
|
1592
|
+
<TableColumn key={column.key} columnKey={column.key}>
|
|
1593
|
+
{row.cargo}
|
|
1594
|
+
</TableColumn>
|
|
1595
|
+
);
|
|
1596
|
+
default:
|
|
1597
|
+
return null;
|
|
1598
|
+
}
|
|
1599
|
+
})}
|
|
1556
1600
|
</TableRow>
|
|
1557
1601
|
))}
|
|
1558
1602
|
</TableBody>
|
|
@@ -1637,7 +1681,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1637
1681
|
<div class="table-toolbar-group-right">
|
|
1638
1682
|
<div class="table-toolbar-column align-self-end">
|
|
1639
1683
|
<div class="dropdown btn-group">
|
|
1640
|
-
<button type="button" id="
|
|
1684
|
+
<button type="button" id="d77tyokvyod" class="btn btn-default btn-md btn-component dropdown-toggle" tabindex="0">
|
|
1641
1685
|
<span class="display-inline-flex align-items-center gap-5">
|
|
1642
1686
|
<span class="rioglyph rioglyph-table-view">
|
|
1643
1687
|
</span>
|
|
@@ -1652,7 +1696,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1652
1696
|
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(0, 100px) minmax(0, 100px) minmax(0, 68px); --table-areas: "table-selection table-col-1 table-col-2 table-col-3 table-col-4 table-col-5 table-col-6 table-col-7"; --table-column-count: 8; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="8">
|
|
1653
1697
|
<div class="table-head" role="rowgroup">
|
|
1654
1698
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
1655
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1699
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1656
1700
|
<div class="table-selection-control">
|
|
1657
1701
|
<label class="checkbox" tabindex="0">
|
|
1658
1702
|
<input type="checkbox" class="indeterminate">
|
|
@@ -1696,7 +1740,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1696
1740
|
<div class="table-head-cell-content-row">
|
|
1697
1741
|
<span class="table-head-label-wrapper table-head-drag-label" tabindex="0" aria-disabled="false" aria-roledescription="sortable" aria-describedby="DndDescribedBy-0">
|
|
1698
1742
|
<span class="table-head-label">
|
|
1699
|
-
<span class="display-
|
|
1743
|
+
<span class="display-flex align-items-center gap-5">
|
|
1700
1744
|
<span class="text-color-dark rioglyph rioglyph-route">
|
|
1701
1745
|
</span>
|
|
1702
1746
|
<span>Route</span>
|
|
@@ -1716,7 +1760,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1716
1760
|
<span class="sort-arrows ">
|
|
1717
1761
|
</span>
|
|
1718
1762
|
<span class="table-head-label">
|
|
1719
|
-
<span class="display-
|
|
1763
|
+
<span class="display-flex align-items-center gap-5">
|
|
1720
1764
|
<span class="text-color-dark rioglyph rioglyph-palette">
|
|
1721
1765
|
</span>
|
|
1722
1766
|
<span>Cargo</span>
|
|
@@ -1778,7 +1822,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1778
1822
|
</div>
|
|
1779
1823
|
<div class="table-body" role="rowgroup">
|
|
1780
1824
|
<div id="row-1" class="table-row" data-index="0" data-row-id="row-1" role="row">
|
|
1781
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1825
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1782
1826
|
<div class="table-selection-control">
|
|
1783
1827
|
<label class="checkbox" tabindex="0">
|
|
1784
1828
|
<input type="checkbox" class="">
|
|
@@ -1817,7 +1861,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1817
1861
|
</div>
|
|
1818
1862
|
</div>
|
|
1819
1863
|
<div id="row-2" class="table-row table-row-selected" data-index="1" data-row-id="row-2" role="row">
|
|
1820
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1864
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1821
1865
|
<div class="table-selection-control">
|
|
1822
1866
|
<label class="checkbox" tabindex="0">
|
|
1823
1867
|
<input type="checkbox" class="" checked="">
|
|
@@ -1856,7 +1900,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1856
1900
|
</div>
|
|
1857
1901
|
</div>
|
|
1858
1902
|
<div id="row-3" class="table-row" data-index="2" data-row-id="row-3" role="row">
|
|
1859
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1903
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1860
1904
|
<div class="table-selection-control">
|
|
1861
1905
|
<label class="checkbox" tabindex="0">
|
|
1862
1906
|
<input type="checkbox" class="">
|
|
@@ -1895,7 +1939,7 @@ const useTableDemoUrlState = (params: {
|
|
|
1895
1939
|
</div>
|
|
1896
1940
|
</div>
|
|
1897
1941
|
<div id="row-4" class="table-row" data-index="3" data-row-id="row-4" role="row">
|
|
1898
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1942
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
1899
1943
|
<div class="table-selection-control">
|
|
1900
1944
|
<label class="checkbox" tabindex="0">
|
|
1901
1945
|
<input type="checkbox" class="">
|
|
@@ -2092,7 +2136,7 @@ export default TableSelectionExample;
|
|
|
2092
2136
|
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3"; --table-column-count: 4; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="4">
|
|
2093
2137
|
<div class="table-head" role="rowgroup">
|
|
2094
2138
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
2095
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2139
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2096
2140
|
<div class="table-selection-control">
|
|
2097
2141
|
<label class="checkbox" tabindex="0">
|
|
2098
2142
|
<input type="checkbox" class="">
|
|
@@ -2132,7 +2176,7 @@ export default TableSelectionExample;
|
|
|
2132
2176
|
</div>
|
|
2133
2177
|
<div class="table-body" role="rowgroup">
|
|
2134
2178
|
<div id="101" class="table-row table-row-clickable" data-index="0" data-row-id="101" role="row" tabindex="0">
|
|
2135
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2179
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2136
2180
|
<div class="table-selection-control">
|
|
2137
2181
|
<label class="checkbox" tabindex="0">
|
|
2138
2182
|
<input type="checkbox" class="">
|
|
@@ -2152,7 +2196,7 @@ export default TableSelectionExample;
|
|
|
2152
2196
|
</div>
|
|
2153
2197
|
</div>
|
|
2154
2198
|
<div id="102" class="table-row table-row-active table-row-clickable" data-index="1" data-row-id="102" role="row" tabindex="0">
|
|
2155
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2199
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2156
2200
|
<div class="table-selection-control">
|
|
2157
2201
|
<label class="checkbox" tabindex="0">
|
|
2158
2202
|
<input type="checkbox" class="">
|
|
@@ -2172,7 +2216,7 @@ export default TableSelectionExample;
|
|
|
2172
2216
|
</div>
|
|
2173
2217
|
</div>
|
|
2174
2218
|
<div id="103" class="table-row table-row-clickable" data-index="2" data-row-id="103" role="row" tabindex="0">
|
|
2175
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2219
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2176
2220
|
<div class="table-selection-control">
|
|
2177
2221
|
<label class="checkbox" tabindex="0">
|
|
2178
2222
|
<input type="checkbox" class="">
|
|
@@ -2192,7 +2236,7 @@ export default TableSelectionExample;
|
|
|
2192
2236
|
</div>
|
|
2193
2237
|
</div>
|
|
2194
2238
|
<div id="104" class="table-row table-row-clickable" data-index="3" data-row-id="104" role="row" tabindex="0">
|
|
2195
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2239
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2196
2240
|
<div class="table-selection-control">
|
|
2197
2241
|
<label class="checkbox" tabindex="0">
|
|
2198
2242
|
<input type="checkbox" class="">
|
|
@@ -2402,10 +2446,10 @@ export default TableSelectionBatchExample;
|
|
|
2402
2446
|
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3"; --table-column-count: 4; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="4">
|
|
2403
2447
|
<div class="table-head" role="rowgroup">
|
|
2404
2448
|
<div class="table-head-grid table-head-grid-custom-selection" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
2405
|
-
<div class="table-head-cell table-selection-cell table-align-center table-selection-cell-custom-content" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2449
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle table-selection-cell-custom-content" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2406
2450
|
<div class="table-selection-control">
|
|
2407
2451
|
<div class="dropdown btn-group">
|
|
2408
|
-
<button type="button" id="
|
|
2452
|
+
<button type="button" id="6gdh9taa73u" class="btn btn-default btn-outline btn-sm btn-icon-only btn-component dropdown-toggle table-batch-dropdown-button no-hover-scale" tabindex="0">
|
|
2409
2453
|
<span class="rioglyph rioglyph-checkboxes">
|
|
2410
2454
|
</span>
|
|
2411
2455
|
</button>
|
|
@@ -2443,7 +2487,7 @@ export default TableSelectionBatchExample;
|
|
|
2443
2487
|
</div>
|
|
2444
2488
|
<div class="table-body" role="rowgroup">
|
|
2445
2489
|
<div id="101" class="table-row table-row-clickable" data-index="0" data-row-id="101" role="row" tabindex="0">
|
|
2446
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2490
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2447
2491
|
<div class="table-selection-control">
|
|
2448
2492
|
<label class="checkbox" tabindex="0">
|
|
2449
2493
|
<input type="checkbox" class="">
|
|
@@ -2463,7 +2507,7 @@ export default TableSelectionBatchExample;
|
|
|
2463
2507
|
</div>
|
|
2464
2508
|
</div>
|
|
2465
2509
|
<div id="102" class="table-row table-row-clickable" data-index="1" data-row-id="102" role="row" tabindex="0">
|
|
2466
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2510
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2467
2511
|
<div class="table-selection-control">
|
|
2468
2512
|
<label class="checkbox" tabindex="0">
|
|
2469
2513
|
<input type="checkbox" class="">
|
|
@@ -2483,7 +2527,7 @@ export default TableSelectionBatchExample;
|
|
|
2483
2527
|
</div>
|
|
2484
2528
|
</div>
|
|
2485
2529
|
<div id="103" class="table-row table-row-clickable" data-index="2" data-row-id="103" role="row" tabindex="0">
|
|
2486
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2530
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2487
2531
|
<div class="table-selection-control">
|
|
2488
2532
|
<label class="checkbox" tabindex="0">
|
|
2489
2533
|
<input type="checkbox" class="">
|
|
@@ -2503,7 +2547,7 @@ export default TableSelectionBatchExample;
|
|
|
2503
2547
|
</div>
|
|
2504
2548
|
</div>
|
|
2505
2549
|
<div id="104" class="table-row table-row-clickable" data-index="3" data-row-id="104" role="row" tabindex="0">
|
|
2506
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2550
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2507
2551
|
<div class="table-selection-control">
|
|
2508
2552
|
<label class="checkbox" tabindex="0">
|
|
2509
2553
|
<input type="checkbox" class="">
|
|
@@ -2714,7 +2758,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2714
2758
|
<div class="table table-view-table table-hover border table-rounded table-has-head table-has-footer" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3"; --table-column-count: 4; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="4">
|
|
2715
2759
|
<div class="table-head" role="rowgroup">
|
|
2716
2760
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
2717
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2761
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2718
2762
|
<div class="table-selection-control">
|
|
2719
2763
|
<label class="checkbox" tabindex="0">
|
|
2720
2764
|
<input type="checkbox" class="">
|
|
@@ -2754,7 +2798,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2754
2798
|
</div>
|
|
2755
2799
|
<div class="table-body" role="rowgroup">
|
|
2756
2800
|
<div id="201" class="table-row" data-index="0" data-row-id="201" role="row">
|
|
2757
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2801
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2758
2802
|
<div class="table-selection-control">
|
|
2759
2803
|
<label class="checkbox" tabindex="0">
|
|
2760
2804
|
<input type="checkbox" class="">
|
|
@@ -2774,7 +2818,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2774
2818
|
</div>
|
|
2775
2819
|
</div>
|
|
2776
2820
|
<div id="202" class="table-row" data-index="1" data-row-id="202" role="row">
|
|
2777
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2821
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2778
2822
|
<div class="table-selection-control">
|
|
2779
2823
|
<label class="checkbox" tabindex="0">
|
|
2780
2824
|
<input type="checkbox" class="">
|
|
@@ -2794,7 +2838,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2794
2838
|
</div>
|
|
2795
2839
|
</div>
|
|
2796
2840
|
<div id="203" class="table-row" data-index="2" data-row-id="203" role="row">
|
|
2797
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2841
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2798
2842
|
<div class="table-selection-control">
|
|
2799
2843
|
<label class="checkbox" tabindex="0">
|
|
2800
2844
|
<input type="checkbox" class="">
|
|
@@ -2814,7 +2858,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2814
2858
|
</div>
|
|
2815
2859
|
</div>
|
|
2816
2860
|
<div id="204" class="table-row" data-index="3" data-row-id="204" role="row">
|
|
2817
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2861
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
2818
2862
|
<div class="table-selection-control">
|
|
2819
2863
|
<label class="checkbox" tabindex="0">
|
|
2820
2864
|
<input type="checkbox" class="">
|
|
@@ -2840,7 +2884,7 @@ export default TableSelectionFooterBatchExample;
|
|
|
2840
2884
|
<div class="table-cell-content">
|
|
2841
2885
|
<div class="display-flex gap-15 align-items-center">
|
|
2842
2886
|
<div class="dropdown btn-group">
|
|
2843
|
-
<button type="button" id="
|
|
2887
|
+
<button type="button" id="71i91m21ver" class="btn btn-default btn-outline btn-sm btn-icon-only btn-component dropdown-toggle table-batch-dropdown-button no-hover-scale" tabindex="0">
|
|
2844
2888
|
<span class="rioglyph rioglyph-checkboxes">
|
|
2845
2889
|
</span>
|
|
2846
2890
|
</button>
|
|
@@ -3036,7 +3080,7 @@ export default TableSelectiveRowsExample;
|
|
|
3036
3080
|
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3"; --table-column-count: 4; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="4">
|
|
3037
3081
|
<div class="table-head" role="rowgroup">
|
|
3038
3082
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
3039
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3083
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3040
3084
|
<div class="table-selection-control">
|
|
3041
3085
|
<label class="checkbox" tabindex="0">
|
|
3042
3086
|
<input type="checkbox" class="">
|
|
@@ -3076,7 +3120,7 @@ export default TableSelectiveRowsExample;
|
|
|
3076
3120
|
</div>
|
|
3077
3121
|
<div class="table-body" role="rowgroup">
|
|
3078
3122
|
<div id="101" class="table-row table-row-clickable" data-index="0" data-row-id="101" role="row" tabindex="0">
|
|
3079
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3123
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3080
3124
|
<div class="table-selection-control">
|
|
3081
3125
|
<label class="checkbox" tabindex="0">
|
|
3082
3126
|
<input type="checkbox" class="">
|
|
@@ -3096,7 +3140,7 @@ export default TableSelectiveRowsExample;
|
|
|
3096
3140
|
</div>
|
|
3097
3141
|
</div>
|
|
3098
3142
|
<div id="102" class="table-row table-row-clickable" data-index="1" data-row-id="102" role="row" tabindex="0">
|
|
3099
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3143
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3100
3144
|
</div>
|
|
3101
3145
|
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
3102
3146
|
<div class="table-cell-content overflow-hidden">Munich to Cologne</div>
|
|
@@ -3110,7 +3154,7 @@ export default TableSelectiveRowsExample;
|
|
|
3110
3154
|
</div>
|
|
3111
3155
|
</div>
|
|
3112
3156
|
<div id="103" class="table-row table-row-clickable" data-index="2" data-row-id="103" role="row" tabindex="0">
|
|
3113
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3157
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3114
3158
|
<div class="table-selection-control">
|
|
3115
3159
|
<label class="checkbox" tabindex="0">
|
|
3116
3160
|
<input type="checkbox" class="">
|
|
@@ -3130,7 +3174,7 @@ export default TableSelectiveRowsExample;
|
|
|
3130
3174
|
</div>
|
|
3131
3175
|
</div>
|
|
3132
3176
|
<div id="104" class="table-row table-row-clickable" data-index="3" data-row-id="104" role="row" tabindex="0">
|
|
3133
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3177
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3134
3178
|
</div>
|
|
3135
3179
|
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
3136
3180
|
<div class="table-cell-content overflow-hidden">Nürnberg to Frankfurt</div>
|
|
@@ -3300,7 +3344,7 @@ export default TableDisabledRowsExample;
|
|
|
3300
3344
|
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3 table-col-4"; --table-column-count: 5; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="5">
|
|
3301
3345
|
<div class="table-head" role="rowgroup">
|
|
3302
3346
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
3303
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3347
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3304
3348
|
<div class="table-selection-control">
|
|
3305
3349
|
<label class="checkbox" tabindex="0">
|
|
3306
3350
|
<input type="checkbox" class="indeterminate">
|
|
@@ -3349,7 +3393,7 @@ export default TableDisabledRowsExample;
|
|
|
3349
3393
|
</div>
|
|
3350
3394
|
<div class="table-body" role="rowgroup">
|
|
3351
3395
|
<div id="row-1" class="table-row table-row-selected table-row-clickable" data-index="0" data-row-id="row-1" role="row" tabindex="0">
|
|
3352
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3396
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3353
3397
|
<div class="table-selection-control">
|
|
3354
3398
|
<label class="checkbox" tabindex="0">
|
|
3355
3399
|
<input type="checkbox" class="" checked="">
|
|
@@ -3372,7 +3416,7 @@ export default TableDisabledRowsExample;
|
|
|
3372
3416
|
</div>
|
|
3373
3417
|
</div>
|
|
3374
3418
|
<div id="row-2" class="table-row table-row-disabled table-row-no-hover" data-index="1" data-row-id="row-2" role="row">
|
|
3375
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3419
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3376
3420
|
<div class="table-selection-control">
|
|
3377
3421
|
<label class="checkbox disabled" tabindex="0">
|
|
3378
3422
|
<input type="checkbox" disabled="" class="">
|
|
@@ -3395,7 +3439,7 @@ export default TableDisabledRowsExample;
|
|
|
3395
3439
|
</div>
|
|
3396
3440
|
</div>
|
|
3397
3441
|
<div id="row-3" class="table-row table-row-clickable" data-index="2" data-row-id="row-3" role="row" tabindex="0">
|
|
3398
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3442
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
3399
3443
|
<div class="table-selection-control">
|
|
3400
3444
|
<label class="checkbox" tabindex="0">
|
|
3401
3445
|
<input type="checkbox" class="">
|
|
@@ -3961,7 +4005,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
3961
4005
|
</div>
|
|
3962
4006
|
<div class="table-toolbar-column align-self-end table-toolbar-column-separator">
|
|
3963
4007
|
<div class="dropdown btn-group">
|
|
3964
|
-
<button type="button" id="
|
|
4008
|
+
<button type="button" id="xbcdoub07go" class="btn btn-default btn-md btn-icon-only btn-component dropdown-toggle" tabindex="0">
|
|
3965
4009
|
<span class="rioglyph rioglyph-filter">
|
|
3966
4010
|
</span>
|
|
3967
4011
|
</button>
|
|
@@ -4038,7 +4082,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4038
4082
|
</div>
|
|
4039
4083
|
</div>
|
|
4040
4084
|
<div class="dropdown btn-group">
|
|
4041
|
-
<button type="button" id="
|
|
4085
|
+
<button type="button" id="rka0nzxen7" class="btn btn-default btn-md btn-component dropdown-toggle" tabindex="0">
|
|
4042
4086
|
<span class="display-inline-flex align-items-center gap-5">
|
|
4043
4087
|
<span class="rioglyph rioglyph-table-view">
|
|
4044
4088
|
</span>
|
|
@@ -4054,10 +4098,10 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4054
4098
|
<div class="table table-view-table border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3 table-col-4"; --table-column-count: 5; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="5">
|
|
4055
4099
|
<div class="table-head" role="rowgroup">
|
|
4056
4100
|
<div class="table-head-grid table-head-grid-custom-selection" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
4057
|
-
<div class="table-head-cell table-selection-cell table-align-center table-selection-cell-custom-content" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4101
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle table-selection-cell-custom-content" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4058
4102
|
<div class="table-selection-control">
|
|
4059
4103
|
<div class="dropdown btn-group">
|
|
4060
|
-
<button type="button" id="
|
|
4104
|
+
<button type="button" id="kye79jtq46l" class="btn btn-default btn-outline btn-sm btn-icon-only btn-component dropdown-toggle table-batch-dropdown-button no-hover-scale" tabindex="0">
|
|
4061
4105
|
<span class="rioglyph rioglyph-checkboxes">
|
|
4062
4106
|
</span>
|
|
4063
4107
|
</button>
|
|
@@ -4104,7 +4148,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4104
4148
|
</div>
|
|
4105
4149
|
<div class="table-body" role="rowgroup">
|
|
4106
4150
|
<div id="request-1" class="table-row" data-index="0" data-row-id="request-1" role="row">
|
|
4107
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4151
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4108
4152
|
<div class="table-selection-control">
|
|
4109
4153
|
<label class="checkbox" tabindex="0">
|
|
4110
4154
|
<input type="checkbox" class="">
|
|
@@ -4127,7 +4171,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4127
4171
|
</div>
|
|
4128
4172
|
</div>
|
|
4129
4173
|
<div id="request-2" class="table-row table-row-selected" data-index="1" data-row-id="request-2" role="row">
|
|
4130
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4174
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4131
4175
|
<div class="table-selection-control">
|
|
4132
4176
|
<label class="checkbox" tabindex="0">
|
|
4133
4177
|
<input type="checkbox" class="" checked="">
|
|
@@ -4150,7 +4194,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4150
4194
|
</div>
|
|
4151
4195
|
</div>
|
|
4152
4196
|
<div id="request-3" class="table-row" data-index="2" data-row-id="request-3" role="row">
|
|
4153
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4197
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4154
4198
|
<div class="table-selection-control">
|
|
4155
4199
|
<label class="checkbox" tabindex="0">
|
|
4156
4200
|
<input type="checkbox" class="">
|
|
@@ -4173,7 +4217,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4173
4217
|
</div>
|
|
4174
4218
|
</div>
|
|
4175
4219
|
<div id="request-4" class="table-row table-row-selected" data-index="3" data-row-id="request-4" role="row">
|
|
4176
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4220
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4177
4221
|
<div class="table-selection-control">
|
|
4178
4222
|
<label class="checkbox" tabindex="0">
|
|
4179
4223
|
<input type="checkbox" class="" checked="">
|
|
@@ -4196,7 +4240,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4196
4240
|
</div>
|
|
4197
4241
|
</div>
|
|
4198
4242
|
<div id="request-5" class="table-row" data-index="4" data-row-id="request-5" role="row">
|
|
4199
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4243
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4200
4244
|
<div class="table-selection-control">
|
|
4201
4245
|
<label class="checkbox" tabindex="0">
|
|
4202
4246
|
<input type="checkbox" class="">
|
|
@@ -4219,7 +4263,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4219
4263
|
</div>
|
|
4220
4264
|
</div>
|
|
4221
4265
|
<div id="request-6" class="table-row" data-index="5" data-row-id="request-6" role="row">
|
|
4222
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4266
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4223
4267
|
<div class="table-selection-control">
|
|
4224
4268
|
<label class="checkbox" tabindex="0">
|
|
4225
4269
|
<input type="checkbox" class="">
|
|
@@ -4242,7 +4286,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4242
4286
|
</div>
|
|
4243
4287
|
</div>
|
|
4244
4288
|
<div id="request-7" class="table-row" data-index="6" data-row-id="request-7" role="row">
|
|
4245
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4289
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4246
4290
|
<div class="table-selection-control">
|
|
4247
4291
|
<label class="checkbox" tabindex="0">
|
|
4248
4292
|
<input type="checkbox" class="">
|
|
@@ -4265,7 +4309,7 @@ export default TableToolbarLayoutGuidelineExample;
|
|
|
4265
4309
|
</div>
|
|
4266
4310
|
</div>
|
|
4267
4311
|
<div id="request-8" class="table-row" data-index="7" data-row-id="request-8" role="row">
|
|
4268
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4312
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
4269
4313
|
<div class="table-selection-control">
|
|
4270
4314
|
<label class="checkbox" tabindex="0">
|
|
4271
4315
|
<input type="checkbox" class="">
|
|
@@ -5670,7 +5714,7 @@ export default TableToolbarDropdownFilterExample;
|
|
|
5670
5714
|
<div class="table-toolbar-group-right">
|
|
5671
5715
|
<div class="table-toolbar-column align-self-end table-toolbar-column-separator">
|
|
5672
5716
|
<div class="dropdown btn-group">
|
|
5673
|
-
<button type="button" id="
|
|
5717
|
+
<button type="button" id="4pdt96djmoi" class="btn btn-default btn-md btn-component dropdown-toggle" tabindex="0">
|
|
5674
5718
|
<span class="rioglyph rioglyph-filter">
|
|
5675
5719
|
</span>Filter</button>
|
|
5676
5720
|
</div>
|
|
@@ -7351,7 +7395,7 @@ export default TableColumnFilterExample;
|
|
|
7351
7395
|
</button>
|
|
7352
7396
|
<span class="table-head-filter">
|
|
7353
7397
|
<div class="dropdown btn-group">
|
|
7354
|
-
<button type="button" id="
|
|
7398
|
+
<button type="button" id="301ayxijtrt" class="btn btn-default btn-outline btn-xs btn-component dropdown-toggle table-head-filter-button no-hover-scale border-color-light bg-decent hover-bg-lighter rounded-small padding-left-2" tabindex="0">
|
|
7355
7399
|
<span class="display-flex gap-0 align-items-center text-color-dark">
|
|
7356
7400
|
<span class="text-size-16 rioglyph rioglyph-filter-active" aria-hidden="true">
|
|
7357
7401
|
</span>
|
|
@@ -7375,7 +7419,7 @@ export default TableColumnFilterExample;
|
|
|
7375
7419
|
</button>
|
|
7376
7420
|
<span class="table-head-filter">
|
|
7377
7421
|
<div class="dropdown btn-group">
|
|
7378
|
-
<button type="button" id="
|
|
7422
|
+
<button type="button" id="v2mj5nb9dad" class="btn btn-default btn-outline btn-xs btn-icon-only btn-component dropdown-toggle table-head-filter-button no-hover-scale border-color-light bg-decent hover-bg-lighter rounded-small" tabindex="0">
|
|
7379
7423
|
<span class="display-flex gap-0 align-items-center text-color-dark">
|
|
7380
7424
|
<span class="text-size-16 rioglyph rioglyph-filter-active" aria-hidden="true">
|
|
7381
7425
|
</span>
|
|
@@ -7560,7 +7604,7 @@ export default TableHeaderTruncationExample;
|
|
|
7560
7604
|
</span>
|
|
7561
7605
|
<span class="table-head-filter">
|
|
7562
7606
|
<div class="dropdown btn-group">
|
|
7563
|
-
<button type="button" id="
|
|
7607
|
+
<button type="button" id="d3bx5yb31it" class="btn btn-default btn-outline btn-xs btn-icon-only btn-component dropdown-toggle table-head-filter-button no-hover-scale border-color-light bg-decent hover-bg-lighter rounded-small" tabindex="0">
|
|
7564
7608
|
<span class="display-flex gap-0 align-items-center text-color-dark">
|
|
7565
7609
|
<span class="text-size-16 rioglyph rioglyph-filter" aria-hidden="true">
|
|
7566
7610
|
</span>
|
|
@@ -7774,7 +7818,7 @@ export default TableHeaderContentVariantsExample;
|
|
|
7774
7818
|
<div class="table-head-cell-content-row">
|
|
7775
7819
|
<span class="table-head-label-wrapper">
|
|
7776
7820
|
<span class="table-head-label">
|
|
7777
|
-
<span class="display-
|
|
7821
|
+
<span class="display-flex align-items-center gap-5">
|
|
7778
7822
|
<span class="text-color-dark rioglyph rioglyph-volume">
|
|
7779
7823
|
</span>
|
|
7780
7824
|
<span>
|
|
@@ -9818,7 +9862,7 @@ export default TableGroupedStickyRowsExample;
|
|
|
9818
9862
|
<div class="scrollbar-view" style="position: relative; overflow: scroll; margin-right: 0px; margin-bottom: 0px; min-height: 0px; max-height: calc(320px);">
|
|
9819
9863
|
<div class="scrollbar-content-wrapper">
|
|
9820
9864
|
<div class="table-body" role="rowgroup">
|
|
9821
|
-
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="0" role="row">
|
|
9865
|
+
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="0" data-row-id="group-0" role="row">
|
|
9822
9866
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
9823
9867
|
<div class="table-cell-content">
|
|
9824
9868
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -9890,7 +9934,7 @@ export default TableGroupedStickyRowsExample;
|
|
|
9890
9934
|
<div class="table-cell-content">Total projects for Amy Elsner: 5</div>
|
|
9891
9935
|
</div>
|
|
9892
9936
|
</div>
|
|
9893
|
-
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="7" role="row">
|
|
9937
|
+
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="7" data-row-id="group-7" role="row">
|
|
9894
9938
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
9895
9939
|
<div class="table-cell-content">
|
|
9896
9940
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -9962,7 +10006,7 @@ export default TableGroupedStickyRowsExample;
|
|
|
9962
10006
|
<div class="table-cell-content">Total projects for Anna Fali: 5</div>
|
|
9963
10007
|
</div>
|
|
9964
10008
|
</div>
|
|
9965
|
-
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="14" role="row">
|
|
10009
|
+
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="14" data-row-id="group-14" role="row">
|
|
9966
10010
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
9967
10011
|
<div class="table-cell-content">
|
|
9968
10012
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -10034,7 +10078,7 @@ export default TableGroupedStickyRowsExample;
|
|
|
10034
10078
|
<div class="table-cell-content">Total projects for Ben Turner: 5</div>
|
|
10035
10079
|
</div>
|
|
10036
10080
|
</div>
|
|
10037
|
-
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="21" role="row">
|
|
10081
|
+
<div class="table-row table-row-group table-row-group-sticky table-row-sticky-in-container" data-index="21" data-row-id="group-21" role="row">
|
|
10038
10082
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
10039
10083
|
<div class="table-cell-content">
|
|
10040
10084
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -10575,6 +10619,10 @@ Use stickyColumns={{ left: 1 }} to keep the currently first visible data column
|
|
|
10575
10619
|
|
|
10576
10620
|
> Note: Sticky columns currently work reliably only when no TableBody maxHeight is set.
|
|
10577
10621
|
|
|
10622
|
+
> Note
|
|
10623
|
+
|
|
10624
|
+
Sticky columns currently work reliably only when no TableBody maxHeight is set.
|
|
10625
|
+
|
|
10578
10626
|
### Example: Vehicle access handover
|
|
10579
10627
|
|
|
10580
10628
|
Request
|
|
@@ -10930,7 +10978,7 @@ export default TableStickyFirstColumnExample;
|
|
|
10930
10978
|
<div class="table-scroll-content" role="presentation">
|
|
10931
10979
|
<div class="table-head" role="rowgroup">
|
|
10932
10980
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
10933
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
10981
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
10934
10982
|
<div class="table-selection-control">
|
|
10935
10983
|
<label class="checkbox" tabindex="0">
|
|
10936
10984
|
<input type="checkbox" class="">
|
|
@@ -11021,13 +11069,13 @@ export default TableStickyFirstColumnExample;
|
|
|
11021
11069
|
</div>
|
|
11022
11070
|
</div>
|
|
11023
11071
|
<div class="table-body" role="rowgroup">
|
|
11024
|
-
<div class="table-row table-row-group" data-index="0" role="row">
|
|
11072
|
+
<div class="table-row table-row-group" data-index="0" data-row-id="group-0" role="row">
|
|
11025
11073
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="9">
|
|
11026
11074
|
<div class="table-cell-content">Morning shift</div>
|
|
11027
11075
|
</div>
|
|
11028
11076
|
</div>
|
|
11029
11077
|
<div id="REQ-3004" class="table-row" data-index="1" data-row-id="REQ-3004" role="row">
|
|
11030
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11078
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11031
11079
|
<div class="table-selection-control">
|
|
11032
11080
|
<label class="checkbox" tabindex="0">
|
|
11033
11081
|
<input type="checkbox" class="">
|
|
@@ -11069,7 +11117,7 @@ export default TableStickyFirstColumnExample;
|
|
|
11069
11117
|
</div>
|
|
11070
11118
|
</div>
|
|
11071
11119
|
<div id="REQ-3021" class="table-row" data-index="2" data-row-id="REQ-3021" role="row">
|
|
11072
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11120
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11073
11121
|
<div class="table-selection-control">
|
|
11074
11122
|
<label class="checkbox" tabindex="0">
|
|
11075
11123
|
<input type="checkbox" class="">
|
|
@@ -11115,13 +11163,13 @@ export default TableStickyFirstColumnExample;
|
|
|
11115
11163
|
<div class="table-cell-content">2 requests in morning shift</div>
|
|
11116
11164
|
</div>
|
|
11117
11165
|
</div>
|
|
11118
|
-
<div class="table-row table-row-group" data-index="4" role="row">
|
|
11166
|
+
<div class="table-row table-row-group" data-index="4" data-row-id="group-4" role="row">
|
|
11119
11167
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="9">
|
|
11120
11168
|
<div class="table-cell-content">Night shift</div>
|
|
11121
11169
|
</div>
|
|
11122
11170
|
</div>
|
|
11123
11171
|
<div id="REQ-3057" class="table-row" data-index="5" data-row-id="REQ-3057" role="row">
|
|
11124
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11172
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11125
11173
|
<div class="table-selection-control">
|
|
11126
11174
|
<label class="checkbox" tabindex="0">
|
|
11127
11175
|
<input type="checkbox" class="">
|
|
@@ -11163,7 +11211,7 @@ export default TableStickyFirstColumnExample;
|
|
|
11163
11211
|
</div>
|
|
11164
11212
|
</div>
|
|
11165
11213
|
<div id="REQ-3072" class="table-row" data-index="6" data-row-id="REQ-3072" role="row">
|
|
11166
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11214
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11167
11215
|
<div class="table-selection-control">
|
|
11168
11216
|
<label class="checkbox" tabindex="0">
|
|
11169
11217
|
<input type="checkbox" class="">
|
|
@@ -11286,6 +11334,10 @@ Use stickyColumns={{ right: 1 }} to keep the currently last visible data column
|
|
|
11286
11334
|
|
|
11287
11335
|
> Note: Sticky columns currently work reliably only when no TableBody maxHeight is set.
|
|
11288
11336
|
|
|
11337
|
+
> Note
|
|
11338
|
+
|
|
11339
|
+
Sticky columns currently work reliably only when no TableBody maxHeight is set.
|
|
11340
|
+
|
|
11289
11341
|
### Example: Vehicle access handover
|
|
11290
11342
|
|
|
11291
11343
|
Request
|
|
@@ -11662,7 +11714,7 @@ export default TableStickyLastColumnExample;
|
|
|
11662
11714
|
<div class="table-scroll-content" role="presentation">
|
|
11663
11715
|
<div class="table-head" role="rowgroup">
|
|
11664
11716
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
11665
|
-
<div class="table-head-cell table-selection-cell table-align-center" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11717
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11666
11718
|
<div class="table-selection-control">
|
|
11667
11719
|
<label class="checkbox" tabindex="0">
|
|
11668
11720
|
<input type="checkbox" class="">
|
|
@@ -11753,13 +11805,13 @@ export default TableStickyLastColumnExample;
|
|
|
11753
11805
|
</div>
|
|
11754
11806
|
</div>
|
|
11755
11807
|
<div class="table-body" role="rowgroup">
|
|
11756
|
-
<div class="table-row table-row-group" data-index="0" role="row">
|
|
11808
|
+
<div class="table-row table-row-group" data-index="0" data-row-id="group-0" role="row">
|
|
11757
11809
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="9">
|
|
11758
11810
|
<div class="table-cell-content">Morning shift</div>
|
|
11759
11811
|
</div>
|
|
11760
11812
|
</div>
|
|
11761
11813
|
<div id="REQ-3004" class="table-row" data-index="1" data-row-id="REQ-3004" role="row">
|
|
11762
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11814
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11763
11815
|
<div class="table-selection-control">
|
|
11764
11816
|
<label class="checkbox" tabindex="0">
|
|
11765
11817
|
<input type="checkbox" class="">
|
|
@@ -11807,7 +11859,7 @@ export default TableStickyLastColumnExample;
|
|
|
11807
11859
|
</div>
|
|
11808
11860
|
</div>
|
|
11809
11861
|
<div id="REQ-3021" class="table-row" data-index="2" data-row-id="REQ-3021" role="row">
|
|
11810
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11862
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11811
11863
|
<div class="table-selection-control">
|
|
11812
11864
|
<label class="checkbox" tabindex="0">
|
|
11813
11865
|
<input type="checkbox" class="">
|
|
@@ -11859,13 +11911,13 @@ export default TableStickyLastColumnExample;
|
|
|
11859
11911
|
<div class="table-cell-content">2 requests in morning shift</div>
|
|
11860
11912
|
</div>
|
|
11861
11913
|
</div>
|
|
11862
|
-
<div class="table-row table-row-group" data-index="4" role="row">
|
|
11914
|
+
<div class="table-row table-row-group" data-index="4" data-row-id="group-4" role="row">
|
|
11863
11915
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="9">
|
|
11864
11916
|
<div class="table-cell-content">Night shift</div>
|
|
11865
11917
|
</div>
|
|
11866
11918
|
</div>
|
|
11867
11919
|
<div id="REQ-3057" class="table-row" data-index="5" data-row-id="REQ-3057" role="row">
|
|
11868
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11920
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11869
11921
|
<div class="table-selection-control">
|
|
11870
11922
|
<label class="checkbox" tabindex="0">
|
|
11871
11923
|
<input type="checkbox" class="">
|
|
@@ -11913,7 +11965,7 @@ export default TableStickyLastColumnExample;
|
|
|
11913
11965
|
</div>
|
|
11914
11966
|
</div>
|
|
11915
11967
|
<div id="REQ-3072" class="table-row" data-index="6" data-row-id="REQ-3072" role="row">
|
|
11916
|
-
<div class="table-cell table-selection-cell" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11968
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
11917
11969
|
<div class="table-selection-control">
|
|
11918
11970
|
<label class="checkbox" tabindex="0">
|
|
11919
11971
|
<input type="checkbox" class="">
|
|
@@ -12450,10 +12502,10 @@ const TableMultiRowHeaderExample = () => (
|
|
|
12450
12502
|
<Table rowKey='id' {...tableStyle}>
|
|
12451
12503
|
<TableHeader>
|
|
12452
12504
|
<TableHeaderRow>
|
|
12453
|
-
<TableHeaderColumn columnKey='product' rowSpan={2}>
|
|
12505
|
+
<TableHeaderColumn columnKey='product' rowSpan={2} verticalAlign='bottom'>
|
|
12454
12506
|
Product
|
|
12455
12507
|
</TableHeaderColumn>
|
|
12456
|
-
<TableHeaderColumn columnKey='metric' rowSpan={2}>
|
|
12508
|
+
<TableHeaderColumn columnKey='metric' rowSpan={2} verticalAlign='bottom'>
|
|
12457
12509
|
Metric
|
|
12458
12510
|
</TableHeaderColumn>
|
|
12459
12511
|
<TableHeaderColumn colSpan={3} horizontalAlign='center'>
|
|
@@ -12508,7 +12560,7 @@ export default TableMultiRowHeaderExample;
|
|
|
12508
12560
|
<div class="table table-view-table table-grid-lines border table-rounded table-has-head table-has-footer" role="table" style="--table-columns: minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-col-1 table-col-2 table-col-3 table-col-4 table-col-5"; --table-column-count: 5; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="5">
|
|
12509
12561
|
<div class="table-head" role="rowgroup">
|
|
12510
12562
|
<div class="table-head-grid" role="presentation" style="grid-template-rows: repeat(2, auto);">
|
|
12511
|
-
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-
|
|
12563
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-bottom" data-column="product" role="columnheader" aria-colindex="1" aria-rowindex="1" aria-rowspan="2" style="grid-area: 1 / 1 / span 2 / span 1;">
|
|
12512
12564
|
<div class="table-head-cell-content">
|
|
12513
12565
|
<div class="table-head-cell-content-row">
|
|
12514
12566
|
<span class="table-head-label-wrapper">
|
|
@@ -12517,7 +12569,7 @@ export default TableMultiRowHeaderExample;
|
|
|
12517
12569
|
</div>
|
|
12518
12570
|
</div>
|
|
12519
12571
|
</div>
|
|
12520
|
-
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-
|
|
12572
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-bottom" data-column="metric" role="columnheader" aria-colindex="2" aria-rowindex="1" aria-rowspan="2" style="grid-area: 1 / 2 / span 2 / span 1;">
|
|
12521
12573
|
<div class="table-head-cell-content">
|
|
12522
12574
|
<div class="table-head-cell-content-row">
|
|
12523
12575
|
<span class="table-head-label-wrapper">
|
|
@@ -12566,10 +12618,10 @@ export default TableMultiRowHeaderExample;
|
|
|
12566
12618
|
</div>
|
|
12567
12619
|
<div class="table-body" role="rowgroup">
|
|
12568
12620
|
<div id="1" class="table-row" data-index="0" data-row-id="1" role="row">
|
|
12569
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12621
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="product" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
12570
12622
|
<div class="table-cell-content overflow-hidden">Product 1</div>
|
|
12571
12623
|
</div>
|
|
12572
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12624
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="metric" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
12573
12625
|
<div class="table-cell-content overflow-hidden">Income</div>
|
|
12574
12626
|
</div>
|
|
12575
12627
|
<div class="table-cell table-align-right table-vertical-align-middle" data-column="year2023" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
@@ -12583,10 +12635,10 @@ export default TableMultiRowHeaderExample;
|
|
|
12583
12635
|
</div>
|
|
12584
12636
|
</div>
|
|
12585
12637
|
<div id="2" class="table-row" data-index="1" data-row-id="2" role="row">
|
|
12586
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12638
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="product" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
12587
12639
|
<div class="table-cell-content overflow-hidden">Product 1</div>
|
|
12588
12640
|
</div>
|
|
12589
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12641
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="metric" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
12590
12642
|
<div class="table-cell-content overflow-hidden">Profit</div>
|
|
12591
12643
|
</div>
|
|
12592
12644
|
<div class="table-cell table-align-right table-vertical-align-middle" data-column="year2023" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
@@ -12604,10 +12656,10 @@ export default TableMultiRowHeaderExample;
|
|
|
12604
12656
|
</div>
|
|
12605
12657
|
</div>
|
|
12606
12658
|
<div id="3" class="table-row" data-index="3" data-row-id="3" role="row">
|
|
12607
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12659
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="product" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
12608
12660
|
<div class="table-cell-content overflow-hidden">Product 2</div>
|
|
12609
12661
|
</div>
|
|
12610
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12662
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="metric" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
12611
12663
|
<div class="table-cell-content overflow-hidden">Income</div>
|
|
12612
12664
|
</div>
|
|
12613
12665
|
<div class="table-cell table-align-right table-vertical-align-middle" data-column="year2023" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
@@ -12621,10 +12673,10 @@ export default TableMultiRowHeaderExample;
|
|
|
12621
12673
|
</div>
|
|
12622
12674
|
</div>
|
|
12623
12675
|
<div id="4" class="table-row" data-index="4" data-row-id="4" role="row">
|
|
12624
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12676
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="product" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
12625
12677
|
<div class="table-cell-content overflow-hidden">Product 2</div>
|
|
12626
12678
|
</div>
|
|
12627
|
-
<div class="table-cell table-align-left table-vertical-align-
|
|
12679
|
+
<div class="table-cell table-align-left table-vertical-align-bottom" data-column="metric" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
12628
12680
|
<div class="table-cell-content overflow-hidden">Profit</div>
|
|
12629
12681
|
</div>
|
|
12630
12682
|
<div class="table-cell table-align-right table-vertical-align-middle" data-column="year2023" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
@@ -12640,7 +12692,7 @@ export default TableMultiRowHeaderExample;
|
|
|
12640
12692
|
</div>
|
|
12641
12693
|
<div class="table-footer" role="rowgroup">
|
|
12642
12694
|
<div class="table-row table-row-footer bg-white text-bold" role="row">
|
|
12643
|
-
<div class="table-cell table-footer-cell table-align-left table-vertical-align-
|
|
12695
|
+
<div class="table-cell table-footer-cell table-align-left table-vertical-align-bottom" data-column="product" role="cell" aria-colindex="1" aria-colspan="2" style="grid-area: 1 / 1 / span 1 / span 2;">
|
|
12644
12696
|
<div class="table-cell-content overflow-hidden">Total Profit</div>
|
|
12645
12697
|
</div>
|
|
12646
12698
|
<div class="table-cell table-footer-cell table-align-right table-vertical-align-middle" data-column="year2023" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
@@ -15065,7 +15117,7 @@ export default TableRowActionsExample;
|
|
|
15065
15117
|
<div class="table-cell table-align-right table-vertical-align-middle padding-10" data-column="actions" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
15066
15118
|
<div class="table-cell-content overflow-hidden">
|
|
15067
15119
|
<div class="dropdown btn-group">
|
|
15068
|
-
<button type="button" aria-label="Row actions" id="
|
|
15120
|
+
<button type="button" aria-label="Row actions" id="0r0xcntfo24a" class="btn btn-muted btn-md btn-icon-only btn-component dropdown-toggle" tabindex="0">
|
|
15069
15121
|
<span class="rioglyph rioglyph-option-horizontal" aria-hidden="true">
|
|
15070
15122
|
</span>
|
|
15071
15123
|
</button>
|
|
@@ -15087,7 +15139,7 @@ export default TableRowActionsExample;
|
|
|
15087
15139
|
<span class="rioglyph rioglyph-unassigned">
|
|
15088
15140
|
</span>Assign</button>
|
|
15089
15141
|
<div class="dropdown btn-group">
|
|
15090
|
-
<button type="button" aria-label="Row actions" id="
|
|
15142
|
+
<button type="button" aria-label="Row actions" id="a6ax7llrezs" class="btn btn-muted btn-md btn-icon-only btn-component dropdown-toggle" tabindex="0">
|
|
15091
15143
|
<span class="rioglyph rioglyph-option-horizontal" aria-hidden="true">
|
|
15092
15144
|
</span>
|
|
15093
15145
|
</button>
|
|
@@ -15613,8 +15665,8 @@ export default TableExpandedRowsExample;
|
|
|
15613
15665
|
</div>
|
|
15614
15666
|
<div class="table-cell table-align-right table-vertical-align-middle padding-y-0" data-column="actions" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
15615
15667
|
<div class="table-cell-content overflow-hidden">
|
|
15616
|
-
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
15617
|
-
<span class="rioglyph rioglyph-chevron-
|
|
15668
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button table-expander-button-expanded" tabindex="0">
|
|
15669
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
15618
15670
|
</span>
|
|
15619
15671
|
</button>
|
|
15620
15672
|
</div>
|
|
@@ -15949,8 +16001,8 @@ export default TableExpandedChildRowsExample;
|
|
|
15949
16001
|
</div>
|
|
15950
16002
|
<div class="table-cell table-align-right table-vertical-align-middle padding-y-0" data-column="actions" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
15951
16003
|
<div class="table-cell-content overflow-hidden">
|
|
15952
|
-
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
15953
|
-
<span class="rioglyph rioglyph-chevron-
|
|
16004
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button table-expander-button-expanded" tabindex="0">
|
|
16005
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
15954
16006
|
</span>
|
|
15955
16007
|
</button>
|
|
15956
16008
|
</div>
|
|
@@ -16535,12 +16587,12 @@ export default TableExpandableGroupRowsExample;
|
|
|
16535
16587
|
</div>
|
|
16536
16588
|
</div>
|
|
16537
16589
|
<div class="table-body" role="rowgroup">
|
|
16538
|
-
<div class="table-row table-row-group" data-index="0" role="row">
|
|
16590
|
+
<div class="table-row table-row-group" data-index="0" data-row-id="group-0" role="row">
|
|
16539
16591
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
16540
16592
|
<div class="table-cell-content">
|
|
16541
16593
|
<div class="display-flex align-items-center gap-10">
|
|
16542
|
-
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
16543
|
-
<span class="rioglyph rioglyph-chevron-
|
|
16594
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button table-expander-button-expanded" tabindex="0">
|
|
16595
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
16544
16596
|
</span>
|
|
16545
16597
|
</button>
|
|
16546
16598
|
<div class="Avatar bg-lighter" style="height: 35px;">
|
|
@@ -16600,7 +16652,7 @@ export default TableExpandableGroupRowsExample;
|
|
|
16600
16652
|
<div class="table-cell-content">Total projects for Amy Elsner: 4</div>
|
|
16601
16653
|
</div>
|
|
16602
16654
|
</div>
|
|
16603
|
-
<div class="table-row table-row-group" data-index="6" role="row">
|
|
16655
|
+
<div class="table-row table-row-group" data-index="6" data-row-id="group-6" role="row">
|
|
16604
16656
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
16605
16657
|
<div class="table-cell-content">
|
|
16606
16658
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -16616,7 +16668,7 @@ export default TableExpandableGroupRowsExample;
|
|
|
16616
16668
|
</div>
|
|
16617
16669
|
</div>
|
|
16618
16670
|
</div>
|
|
16619
|
-
<div class="table-row table-row-group" data-index="7" role="row">
|
|
16671
|
+
<div class="table-row table-row-group" data-index="7" data-row-id="group-7" role="row">
|
|
16620
16672
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
16621
16673
|
<div class="table-cell-content">
|
|
16622
16674
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -16632,7 +16684,7 @@ export default TableExpandableGroupRowsExample;
|
|
|
16632
16684
|
</div>
|
|
16633
16685
|
</div>
|
|
16634
16686
|
</div>
|
|
16635
|
-
<div class="table-row table-row-group" data-index="8" role="row">
|
|
16687
|
+
<div class="table-row table-row-group" data-index="8" data-row-id="group-8" role="row">
|
|
16636
16688
|
<div class="table-cell table-group-cell" role="cell" aria-colspan="3">
|
|
16637
16689
|
<div class="table-cell-content">
|
|
16638
16690
|
<div class="display-flex align-items-center gap-10">
|
|
@@ -16658,148 +16710,1857 @@ export default TableExpandableGroupRowsExample;
|
|
|
16658
16710
|
rowClassName={(row) => (row.disabled ? 'my-class-name' : '')}
|
|
16659
16711
|
```
|
|
16660
16712
|
|
|
16661
|
-
##
|
|
16713
|
+
## Grouped rows with selection
|
|
16662
16714
|
|
|
16663
|
-
|
|
16715
|
+
Group rows can control which rows are shown while the expanded data rows still render against the table columns. Keep multi-selection controlled on Table with selectedRowIds, onSelectionChange, and showSelectionColumn.
|
|
16664
16716
|
|
|
16665
|
-
|
|
16717
|
+
### Example: 5 of 33 departures
|
|
16666
16718
|
|
|
16667
|
-
|
|
16719
|
+
Vehicle
|
|
16668
16720
|
|
|
16669
|
-
|
|
16721
|
+
Driver
|
|
16670
16722
|
|
|
16671
|
-
|
|
16723
|
+
Route
|
|
16724
|
+
|
|
16725
|
+
ETA
|
|
16672
16726
|
|
|
16673
16727
|
Status
|
|
16674
16728
|
|
|
16675
|
-
|
|
16729
|
+
Berlin Hub 5 of 33 departures
|
|
16676
16730
|
|
|
16677
|
-
|
|
16731
|
+
R-2041
|
|
16678
16732
|
|
|
16679
|
-
|
|
16733
|
+
Lena Vogt
|
|
16680
16734
|
|
|
16681
|
-
|
|
16735
|
+
Berlin - Hamburg
|
|
16682
16736
|
|
|
16683
|
-
|
|
16737
|
+
08:40
|
|
16684
16738
|
|
|
16685
|
-
|
|
16739
|
+
Ready
|
|
16686
16740
|
|
|
16687
|
-
|
|
16741
|
+
R-2042
|
|
16688
16742
|
|
|
16689
|
-
|
|
16743
|
+
Milan Weber
|
|
16690
16744
|
|
|
16691
|
-
|
|
16745
|
+
Berlin - Leipzig
|
|
16692
16746
|
|
|
16693
|
-
|
|
16747
|
+
09:10
|
|
16694
16748
|
|
|
16695
|
-
|
|
16749
|
+
Loading
|
|
16696
16750
|
|
|
16697
|
-
|
|
16751
|
+
R-2043
|
|
16698
16752
|
|
|
16699
|
-
|
|
16753
|
+
Eva Kruger
|
|
16700
16754
|
|
|
16701
|
-
|
|
16755
|
+
Berlin - Dresden
|
|
16702
16756
|
|
|
16703
|
-
|
|
16757
|
+
09:35
|
|
16704
16758
|
|
|
16705
|
-
|
|
16759
|
+
Ready
|
|
16706
16760
|
|
|
16707
|
-
|
|
16761
|
+
R-2044
|
|
16708
16762
|
|
|
16709
|
-
|
|
16763
|
+
Jonas Brandt
|
|
16710
16764
|
|
|
16711
|
-
|
|
16765
|
+
Berlin - Rostock
|
|
16712
16766
|
|
|
16713
|
-
|
|
16767
|
+
10:05
|
|
16714
16768
|
|
|
16715
|
-
|
|
16769
|
+
Delayed
|
|
16716
16770
|
|
|
16717
|
-
|
|
16771
|
+
R-2045
|
|
16718
16772
|
|
|
16719
|
-
|
|
16773
|
+
Nora Seidel
|
|
16720
16774
|
|
|
16721
|
-
|
|
16775
|
+
Berlin - Bremen
|
|
16776
|
+
|
|
16777
|
+
10:30
|
|
16778
|
+
|
|
16779
|
+
Ready
|
|
16780
|
+
|
|
16781
|
+
Hamburg Yard 6 of 33 departures
|
|
16782
|
+
|
|
16783
|
+
Munich Depot 5 of 33 departures
|
|
16784
|
+
|
|
16785
|
+
Cologne Crossdock 6 of 33 departures
|
|
16786
|
+
|
|
16787
|
+
Frankfurt Gate 5 of 33 departures
|
|
16788
|
+
|
|
16789
|
+
Stuttgart Terminal 6 of 33 departures
|
|
16722
16790
|
|
|
16723
16791
|
#### React (tsx)
|
|
16724
16792
|
|
|
16725
16793
|
```tsx
|
|
16726
|
-
import { useState } from 'react';
|
|
16794
|
+
import { Fragment, useMemo, useState } from 'react';
|
|
16727
16795
|
|
|
16728
|
-
import
|
|
16729
|
-
import Table, {
|
|
16730
|
-
|
|
16731
|
-
|
|
16796
|
+
import Checkbox from '@rio-cloud/rio-uikit/Checkbox';
|
|
16797
|
+
import Table, {
|
|
16798
|
+
TableBody,
|
|
16799
|
+
TableColumn,
|
|
16800
|
+
TableExpandAllGroupsButton,
|
|
16801
|
+
TableExpandedRow,
|
|
16802
|
+
TableExpanderButton,
|
|
16803
|
+
TableGroupRow,
|
|
16804
|
+
TableHeader,
|
|
16805
|
+
TableHeaderColumn,
|
|
16806
|
+
type TableRowId,
|
|
16807
|
+
} from '@rio-cloud/rio-uikit/Table';
|
|
16732
16808
|
|
|
16733
|
-
type
|
|
16734
|
-
id:
|
|
16735
|
-
|
|
16736
|
-
|
|
16809
|
+
type DemoGroupedRowsSelectionRow = {
|
|
16810
|
+
id: string;
|
|
16811
|
+
groupId: string;
|
|
16812
|
+
vehicle: string;
|
|
16813
|
+
driver: string;
|
|
16814
|
+
route: string;
|
|
16815
|
+
eta: string;
|
|
16737
16816
|
status: string;
|
|
16738
16817
|
};
|
|
16739
16818
|
|
|
16740
|
-
|
|
16819
|
+
type DemoGroupedRowsSelectionGroup = {
|
|
16820
|
+
id: string;
|
|
16821
|
+
terminal: string;
|
|
16822
|
+
};
|
|
16823
|
+
|
|
16824
|
+
const groups: DemoGroupedRowsSelectionGroup[] = [
|
|
16825
|
+
{ id: 'berlin', terminal: 'Berlin Hub' },
|
|
16826
|
+
{ id: 'hamburg', terminal: 'Hamburg Yard' },
|
|
16827
|
+
{ id: 'munich', terminal: 'Munich Depot' },
|
|
16828
|
+
{ id: 'cologne', terminal: 'Cologne Crossdock' },
|
|
16829
|
+
{ id: 'frankfurt', terminal: 'Frankfurt Gate' },
|
|
16830
|
+
{ id: 'stuttgart', terminal: 'Stuttgart Terminal' },
|
|
16831
|
+
];
|
|
16832
|
+
|
|
16833
|
+
const groupIds = groups.map(group => group.id);
|
|
16834
|
+
|
|
16835
|
+
const rows: DemoGroupedRowsSelectionRow[] = [
|
|
16741
16836
|
{
|
|
16742
|
-
id: 1,
|
|
16743
|
-
|
|
16744
|
-
|
|
16745
|
-
|
|
16837
|
+
id: 'berlin-1',
|
|
16838
|
+
groupId: 'berlin',
|
|
16839
|
+
vehicle: 'R-2041',
|
|
16840
|
+
driver: 'Lena Vogt',
|
|
16841
|
+
route: 'Berlin - Hamburg',
|
|
16842
|
+
eta: '08:40',
|
|
16843
|
+
status: 'Ready',
|
|
16746
16844
|
},
|
|
16747
16845
|
{
|
|
16748
|
-
id: 2,
|
|
16749
|
-
|
|
16750
|
-
|
|
16751
|
-
|
|
16846
|
+
id: 'berlin-2',
|
|
16847
|
+
groupId: 'berlin',
|
|
16848
|
+
vehicle: 'R-2042',
|
|
16849
|
+
driver: 'Milan Weber',
|
|
16850
|
+
route: 'Berlin - Leipzig',
|
|
16851
|
+
eta: '09:10',
|
|
16852
|
+
status: 'Loading',
|
|
16752
16853
|
},
|
|
16753
16854
|
{
|
|
16754
|
-
id: 3,
|
|
16755
|
-
|
|
16756
|
-
|
|
16757
|
-
|
|
16855
|
+
id: 'berlin-3',
|
|
16856
|
+
groupId: 'berlin',
|
|
16857
|
+
vehicle: 'R-2043',
|
|
16858
|
+
driver: 'Eva Kruger',
|
|
16859
|
+
route: 'Berlin - Dresden',
|
|
16860
|
+
eta: '09:35',
|
|
16861
|
+
status: 'Ready',
|
|
16758
16862
|
},
|
|
16759
16863
|
{
|
|
16760
|
-
id: 4,
|
|
16761
|
-
|
|
16762
|
-
|
|
16763
|
-
|
|
16864
|
+
id: 'berlin-4',
|
|
16865
|
+
groupId: 'berlin',
|
|
16866
|
+
vehicle: 'R-2044',
|
|
16867
|
+
driver: 'Jonas Brandt',
|
|
16868
|
+
route: 'Berlin - Rostock',
|
|
16869
|
+
eta: '10:05',
|
|
16870
|
+
status: 'Delayed',
|
|
16764
16871
|
},
|
|
16765
16872
|
{
|
|
16766
|
-
id: 5,
|
|
16767
|
-
|
|
16768
|
-
|
|
16769
|
-
|
|
16873
|
+
id: 'berlin-5',
|
|
16874
|
+
groupId: 'berlin',
|
|
16875
|
+
vehicle: 'R-2045',
|
|
16876
|
+
driver: 'Nora Seidel',
|
|
16877
|
+
route: 'Berlin - Bremen',
|
|
16878
|
+
eta: '10:30',
|
|
16879
|
+
status: 'Ready',
|
|
16770
16880
|
},
|
|
16771
16881
|
{
|
|
16772
|
-
id:
|
|
16773
|
-
|
|
16774
|
-
|
|
16775
|
-
|
|
16882
|
+
id: 'hamburg-1',
|
|
16883
|
+
groupId: 'hamburg',
|
|
16884
|
+
vehicle: 'H-1180',
|
|
16885
|
+
driver: 'Oskar Klein',
|
|
16886
|
+
route: 'Hamburg - Kiel',
|
|
16887
|
+
eta: '08:55',
|
|
16888
|
+
status: 'In transit',
|
|
16889
|
+
},
|
|
16890
|
+
{
|
|
16891
|
+
id: 'hamburg-2',
|
|
16892
|
+
groupId: 'hamburg',
|
|
16893
|
+
vehicle: 'H-1181',
|
|
16894
|
+
driver: 'Mara Stein',
|
|
16895
|
+
route: 'Hamburg - Bremen',
|
|
16896
|
+
eta: '09:20',
|
|
16897
|
+
status: 'Ready',
|
|
16898
|
+
},
|
|
16899
|
+
{
|
|
16900
|
+
id: 'hamburg-3',
|
|
16901
|
+
groupId: 'hamburg',
|
|
16902
|
+
vehicle: 'H-1182',
|
|
16903
|
+
driver: 'Timo Wolf',
|
|
16904
|
+
route: 'Hamburg - Lubeck',
|
|
16905
|
+
eta: '09:45',
|
|
16906
|
+
status: 'Loading',
|
|
16907
|
+
},
|
|
16908
|
+
{
|
|
16909
|
+
id: 'hamburg-4',
|
|
16910
|
+
groupId: 'hamburg',
|
|
16911
|
+
vehicle: 'H-1183',
|
|
16912
|
+
driver: 'Sina Roth',
|
|
16913
|
+
route: 'Hamburg - Hannover',
|
|
16914
|
+
eta: '10:15',
|
|
16915
|
+
status: 'Ready',
|
|
16916
|
+
},
|
|
16917
|
+
{
|
|
16918
|
+
id: 'hamburg-5',
|
|
16919
|
+
groupId: 'hamburg',
|
|
16920
|
+
vehicle: 'H-1184',
|
|
16921
|
+
driver: 'Felix Graf',
|
|
16922
|
+
route: 'Hamburg - Schwerin',
|
|
16923
|
+
eta: '10:50',
|
|
16924
|
+
status: 'Delayed',
|
|
16925
|
+
},
|
|
16926
|
+
{
|
|
16927
|
+
id: 'hamburg-6',
|
|
16928
|
+
groupId: 'hamburg',
|
|
16929
|
+
vehicle: 'H-1185',
|
|
16930
|
+
driver: 'Iris Lind',
|
|
16931
|
+
route: 'Hamburg - Flensburg',
|
|
16932
|
+
eta: '11:10',
|
|
16933
|
+
status: 'Ready',
|
|
16934
|
+
},
|
|
16935
|
+
{
|
|
16936
|
+
id: 'munich-1',
|
|
16937
|
+
groupId: 'munich',
|
|
16938
|
+
vehicle: 'M-3301',
|
|
16939
|
+
driver: 'Anja Hofmann',
|
|
16940
|
+
route: 'Munich - Augsburg',
|
|
16941
|
+
eta: '08:25',
|
|
16942
|
+
status: 'Ready',
|
|
16943
|
+
},
|
|
16944
|
+
{
|
|
16945
|
+
id: 'munich-2',
|
|
16946
|
+
groupId: 'munich',
|
|
16947
|
+
vehicle: 'M-3302',
|
|
16948
|
+
driver: 'David Lang',
|
|
16949
|
+
route: 'Munich - Salzburg',
|
|
16950
|
+
eta: '09:05',
|
|
16951
|
+
status: 'In transit',
|
|
16952
|
+
},
|
|
16953
|
+
{
|
|
16954
|
+
id: 'munich-3',
|
|
16955
|
+
groupId: 'munich',
|
|
16956
|
+
vehicle: 'M-3303',
|
|
16957
|
+
driver: 'Clara Beck',
|
|
16958
|
+
route: 'Munich - Regensburg',
|
|
16959
|
+
eta: '09:40',
|
|
16960
|
+
status: 'Ready',
|
|
16961
|
+
},
|
|
16962
|
+
{
|
|
16963
|
+
id: 'munich-4',
|
|
16964
|
+
groupId: 'munich',
|
|
16965
|
+
vehicle: 'M-3304',
|
|
16966
|
+
driver: 'Erik Hahn',
|
|
16967
|
+
route: 'Munich - Ulm',
|
|
16968
|
+
eta: '10:20',
|
|
16969
|
+
status: 'Loading',
|
|
16970
|
+
},
|
|
16971
|
+
{
|
|
16972
|
+
id: 'munich-5',
|
|
16973
|
+
groupId: 'munich',
|
|
16974
|
+
vehicle: 'M-3305',
|
|
16975
|
+
driver: 'Paula Rehm',
|
|
16976
|
+
route: 'Munich - Passau',
|
|
16977
|
+
eta: '11:00',
|
|
16978
|
+
status: 'Ready',
|
|
16979
|
+
},
|
|
16980
|
+
{
|
|
16981
|
+
id: 'cologne-1',
|
|
16982
|
+
groupId: 'cologne',
|
|
16983
|
+
vehicle: 'C-7101',
|
|
16984
|
+
driver: 'Ben Keller',
|
|
16985
|
+
route: 'Cologne - Bonn',
|
|
16986
|
+
eta: '08:45',
|
|
16987
|
+
status: 'Ready',
|
|
16988
|
+
},
|
|
16989
|
+
{
|
|
16990
|
+
id: 'cologne-2',
|
|
16991
|
+
groupId: 'cologne',
|
|
16992
|
+
vehicle: 'C-7102',
|
|
16993
|
+
driver: 'Lea Sommer',
|
|
16994
|
+
route: 'Cologne - Essen',
|
|
16995
|
+
eta: '09:25',
|
|
16996
|
+
status: 'Delayed',
|
|
16997
|
+
},
|
|
16998
|
+
{
|
|
16999
|
+
id: 'cologne-3',
|
|
17000
|
+
groupId: 'cologne',
|
|
17001
|
+
vehicle: 'C-7103',
|
|
17002
|
+
driver: 'Noah Frey',
|
|
17003
|
+
route: 'Cologne - Dortmund',
|
|
17004
|
+
eta: '09:55',
|
|
17005
|
+
status: 'Loading',
|
|
17006
|
+
},
|
|
17007
|
+
{
|
|
17008
|
+
id: 'cologne-4',
|
|
17009
|
+
groupId: 'cologne',
|
|
17010
|
+
vehicle: 'C-7104',
|
|
17011
|
+
driver: 'Mia Busch',
|
|
17012
|
+
route: 'Cologne - Aachen',
|
|
17013
|
+
eta: '10:35',
|
|
17014
|
+
status: 'Ready',
|
|
17015
|
+
},
|
|
17016
|
+
{
|
|
17017
|
+
id: 'cologne-5',
|
|
17018
|
+
groupId: 'cologne',
|
|
17019
|
+
vehicle: 'C-7105',
|
|
17020
|
+
driver: 'Lars Kunz',
|
|
17021
|
+
route: 'Cologne - Koblenz',
|
|
17022
|
+
eta: '11:05',
|
|
17023
|
+
status: 'Ready',
|
|
17024
|
+
},
|
|
17025
|
+
{
|
|
17026
|
+
id: 'cologne-6',
|
|
17027
|
+
groupId: 'cologne',
|
|
17028
|
+
vehicle: 'C-7106',
|
|
17029
|
+
driver: 'Rosa Dietz',
|
|
17030
|
+
route: 'Cologne - Mainz',
|
|
17031
|
+
eta: '11:35',
|
|
17032
|
+
status: 'In transit',
|
|
17033
|
+
},
|
|
17034
|
+
{
|
|
17035
|
+
id: 'frankfurt-1',
|
|
17036
|
+
groupId: 'frankfurt',
|
|
17037
|
+
vehicle: 'F-5201',
|
|
17038
|
+
driver: 'Klara May',
|
|
17039
|
+
route: 'Frankfurt - Kassel',
|
|
17040
|
+
eta: '08:35',
|
|
17041
|
+
status: 'Ready',
|
|
17042
|
+
},
|
|
17043
|
+
{
|
|
17044
|
+
id: 'frankfurt-2',
|
|
17045
|
+
groupId: 'frankfurt',
|
|
17046
|
+
vehicle: 'F-5202',
|
|
17047
|
+
driver: 'Jan Otto',
|
|
17048
|
+
route: 'Frankfurt - Wurzburg',
|
|
17049
|
+
eta: '09:15',
|
|
17050
|
+
status: 'Loading',
|
|
17051
|
+
},
|
|
17052
|
+
{
|
|
17053
|
+
id: 'frankfurt-3',
|
|
17054
|
+
groupId: 'frankfurt',
|
|
17055
|
+
vehicle: 'F-5203',
|
|
17056
|
+
driver: 'Sarah Blum',
|
|
17057
|
+
route: 'Frankfurt - Mannheim',
|
|
17058
|
+
eta: '09:50',
|
|
17059
|
+
status: 'Ready',
|
|
17060
|
+
},
|
|
17061
|
+
{
|
|
17062
|
+
id: 'frankfurt-4',
|
|
17063
|
+
groupId: 'frankfurt',
|
|
17064
|
+
vehicle: 'F-5204',
|
|
17065
|
+
driver: 'Tom Ritter',
|
|
17066
|
+
route: 'Frankfurt - Trier',
|
|
17067
|
+
eta: '10:40',
|
|
17068
|
+
status: 'In transit',
|
|
17069
|
+
},
|
|
17070
|
+
{
|
|
17071
|
+
id: 'frankfurt-5',
|
|
17072
|
+
groupId: 'frankfurt',
|
|
17073
|
+
vehicle: 'F-5205',
|
|
17074
|
+
driver: 'Nina Adler',
|
|
17075
|
+
route: 'Frankfurt - Fulda',
|
|
17076
|
+
eta: '11:20',
|
|
17077
|
+
status: 'Delayed',
|
|
17078
|
+
},
|
|
17079
|
+
{
|
|
17080
|
+
id: 'stuttgart-1',
|
|
17081
|
+
groupId: 'stuttgart',
|
|
17082
|
+
vehicle: 'S-4101',
|
|
17083
|
+
driver: 'Luis Horn',
|
|
17084
|
+
route: 'Stuttgart - Karlsruhe',
|
|
17085
|
+
eta: '08:50',
|
|
17086
|
+
status: 'Ready',
|
|
17087
|
+
},
|
|
17088
|
+
{
|
|
17089
|
+
id: 'stuttgart-2',
|
|
17090
|
+
groupId: 'stuttgart',
|
|
17091
|
+
vehicle: 'S-4102',
|
|
17092
|
+
driver: 'Greta Vogler',
|
|
17093
|
+
route: 'Stuttgart - Freiburg',
|
|
17094
|
+
eta: '09:30',
|
|
17095
|
+
status: 'Loading',
|
|
17096
|
+
},
|
|
17097
|
+
{
|
|
17098
|
+
id: 'stuttgart-3',
|
|
17099
|
+
groupId: 'stuttgart',
|
|
17100
|
+
vehicle: 'S-4103',
|
|
17101
|
+
driver: 'Aron Weiss',
|
|
17102
|
+
route: 'Stuttgart - Ulm',
|
|
17103
|
+
eta: '10:00',
|
|
17104
|
+
status: 'Ready',
|
|
17105
|
+
},
|
|
17106
|
+
{
|
|
17107
|
+
id: 'stuttgart-4',
|
|
17108
|
+
groupId: 'stuttgart',
|
|
17109
|
+
vehicle: 'S-4104',
|
|
17110
|
+
driver: 'Lina Fuchs',
|
|
17111
|
+
route: 'Stuttgart - Tubingen',
|
|
17112
|
+
eta: '10:45',
|
|
17113
|
+
status: 'In transit',
|
|
17114
|
+
},
|
|
17115
|
+
{
|
|
17116
|
+
id: 'stuttgart-5',
|
|
17117
|
+
groupId: 'stuttgart',
|
|
17118
|
+
vehicle: 'S-4105',
|
|
17119
|
+
driver: 'Theo Bach',
|
|
17120
|
+
route: 'Stuttgart - Heilbronn',
|
|
17121
|
+
eta: '11:25',
|
|
17122
|
+
status: 'Ready',
|
|
17123
|
+
},
|
|
17124
|
+
{
|
|
17125
|
+
id: 'stuttgart-6',
|
|
17126
|
+
groupId: 'stuttgart',
|
|
17127
|
+
vehicle: 'S-4106',
|
|
17128
|
+
driver: 'Emma Koch',
|
|
17129
|
+
route: 'Stuttgart - Singen',
|
|
17130
|
+
eta: '12:00',
|
|
17131
|
+
status: 'Delayed',
|
|
16776
17132
|
},
|
|
16777
17133
|
];
|
|
16778
17134
|
|
|
16779
|
-
const
|
|
16780
|
-
const [
|
|
16781
|
-
|
|
16782
|
-
const { sortedItems, sortKey, sortDirection, setSortKey, setSortDirection } = useSorting(data, 'id');
|
|
17135
|
+
const TableGroupedRowsSelectionExample = () => {
|
|
17136
|
+
const [expandedGroups, setExpandedGroups] = useState<string[]>(['berlin']);
|
|
17137
|
+
const [selectedRowIds, setSelectedRowIds] = useState<TableRowId[]>([]);
|
|
16783
17138
|
|
|
16784
|
-
const
|
|
16785
|
-
|
|
17139
|
+
const rowsByGroupId = useMemo(() => Map.groupBy(rows, row => row.groupId), []);
|
|
17140
|
+
const rowIds = useMemo(() => rows.map(row => row.id), []);
|
|
17141
|
+
const areAllGroupsExpanded = groupIds.every(groupId => expandedGroups.includes(groupId));
|
|
17142
|
+
const areAllRowsSelected = rowIds.every(rowId => selectedRowIds.includes(rowId));
|
|
17143
|
+
const areSomeRowsSelected = selectedRowIds.some(rowId => rowIds.includes(String(rowId)));
|
|
17144
|
+
|
|
17145
|
+
const toggleGroup = (groupId: string) => {
|
|
17146
|
+
setExpandedGroups(currentExpandedGroups =>
|
|
17147
|
+
currentExpandedGroups.includes(groupId)
|
|
17148
|
+
? currentExpandedGroups.filter(expandedGroupId => expandedGroupId !== groupId)
|
|
17149
|
+
: [...currentExpandedGroups, groupId]
|
|
17150
|
+
);
|
|
16786
17151
|
};
|
|
16787
17152
|
|
|
16788
|
-
const
|
|
17153
|
+
const toggleAllGroups = () => {
|
|
17154
|
+
setExpandedGroups(currentExpandedGroups =>
|
|
17155
|
+
groupIds.every(groupId => currentExpandedGroups.includes(groupId)) ? [] : groupIds
|
|
17156
|
+
);
|
|
17157
|
+
};
|
|
16789
17158
|
|
|
16790
|
-
const
|
|
16791
|
-
|
|
16792
|
-
setSortDirection(direction);
|
|
17159
|
+
const toggleAllRowsSelection = () => {
|
|
17160
|
+
setSelectedRowIds(areAllRowsSelected ? [] : rowIds);
|
|
16793
17161
|
};
|
|
16794
17162
|
|
|
16795
17163
|
return (
|
|
16796
|
-
<
|
|
16797
|
-
|
|
16798
|
-
|
|
16799
|
-
|
|
16800
|
-
|
|
16801
|
-
|
|
16802
|
-
|
|
17164
|
+
<Table
|
|
17165
|
+
rowKey='id'
|
|
17166
|
+
hover
|
|
17167
|
+
selectedRowIds={selectedRowIds}
|
|
17168
|
+
onSelectionChange={setSelectedRowIds}
|
|
17169
|
+
showSelectionColumn
|
|
17170
|
+
selectionHeaderContent={
|
|
17171
|
+
<Checkbox
|
|
17172
|
+
checked={areAllRowsSelected}
|
|
17173
|
+
indeterminate={!areAllRowsSelected && areSomeRowsSelected}
|
|
17174
|
+
onChange={toggleAllRowsSelection}
|
|
17175
|
+
/>
|
|
17176
|
+
}
|
|
17177
|
+
>
|
|
17178
|
+
<TableHeader>
|
|
17179
|
+
<TableHeaderColumn columnKey='vehicle'>Vehicle</TableHeaderColumn>
|
|
17180
|
+
<TableHeaderColumn columnKey='driver'>Driver</TableHeaderColumn>
|
|
17181
|
+
<TableHeaderColumn columnKey='route'>Route</TableHeaderColumn>
|
|
17182
|
+
<TableHeaderColumn columnKey='eta'>ETA</TableHeaderColumn>
|
|
17183
|
+
<TableHeaderColumn columnKey='status'>Status</TableHeaderColumn>
|
|
17184
|
+
<TableHeaderColumn columnKey='actions' horizontalAlign='right' className='padding-y-0'>
|
|
17185
|
+
<TableExpandAllGroupsButton expanded={areAllGroupsExpanded} onClick={toggleAllGroups} />
|
|
17186
|
+
</TableHeaderColumn>
|
|
17187
|
+
</TableHeader>
|
|
17188
|
+
|
|
17189
|
+
<TableBody>
|
|
17190
|
+
{groups.map(group => {
|
|
17191
|
+
const isExpanded = expandedGroups.includes(group.id);
|
|
17192
|
+
const groupRows = rowsByGroupId.get(group.id) ?? [];
|
|
17193
|
+
|
|
17194
|
+
return (
|
|
17195
|
+
<Fragment key={group.id}>
|
|
17196
|
+
<TableGroupRow noHover>
|
|
17197
|
+
<div className='display-flex align-items-center justify-content-between gap-15 width-100pct'>
|
|
17198
|
+
<div className='display-flex align-items-center gap-10'>
|
|
17199
|
+
<span className='text-bold'>{group.terminal}</span>
|
|
17200
|
+
<span className='text-color-dark'>
|
|
17201
|
+
{groupRows.length} of {rows.length} departures
|
|
17202
|
+
</span>
|
|
17203
|
+
</div>
|
|
17204
|
+
<TableExpanderButton expanded={isExpanded} onClick={() => toggleGroup(group.id)} />
|
|
17205
|
+
</div>
|
|
17206
|
+
</TableGroupRow>
|
|
17207
|
+
|
|
17208
|
+
{isExpanded &&
|
|
17209
|
+
groupRows.map(row => (
|
|
17210
|
+
<TableExpandedRow key={row.id} parentKey={group.id} className='bg-white' {...row}>
|
|
17211
|
+
<TableColumn columnKey='vehicle'>{row.vehicle}</TableColumn>
|
|
17212
|
+
<TableColumn columnKey='driver'>{row.driver}</TableColumn>
|
|
17213
|
+
<TableColumn columnKey='route'>{row.route}</TableColumn>
|
|
17214
|
+
<TableColumn columnKey='eta'>{row.eta}</TableColumn>
|
|
17215
|
+
<TableColumn columnKey='status'>{row.status}</TableColumn>
|
|
17216
|
+
<TableColumn columnKey='actions' />
|
|
17217
|
+
</TableExpandedRow>
|
|
17218
|
+
))}
|
|
17219
|
+
</Fragment>
|
|
17220
|
+
);
|
|
17221
|
+
})}
|
|
17222
|
+
</TableBody>
|
|
17223
|
+
</Table>
|
|
17224
|
+
);
|
|
17225
|
+
};
|
|
17226
|
+
|
|
17227
|
+
export default TableGroupedRowsSelectionExample;
|
|
17228
|
+
```
|
|
17229
|
+
|
|
17230
|
+
#### HTML (html)
|
|
17231
|
+
|
|
17232
|
+
```html
|
|
17233
|
+
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3 table-col-4 table-col-5 table-col-6"; --table-column-count: 7; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="7">
|
|
17234
|
+
<div class="table-head" role="rowgroup">
|
|
17235
|
+
<div class="table-head-grid table-head-grid-custom-selection" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
17236
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle table-selection-cell-custom-content" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17237
|
+
<div class="table-selection-control">
|
|
17238
|
+
<label class="checkbox" tabindex="0">
|
|
17239
|
+
<input type="checkbox" class="">
|
|
17240
|
+
<span class="checkbox-text">
|
|
17241
|
+
</span>
|
|
17242
|
+
</label>
|
|
17243
|
+
</div>
|
|
17244
|
+
</div>
|
|
17245
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="vehicle" role="columnheader" aria-colindex="2" aria-rowindex="1" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17246
|
+
<div class="table-head-cell-content">
|
|
17247
|
+
<div class="table-head-cell-content-row">
|
|
17248
|
+
<span class="table-head-label-wrapper">
|
|
17249
|
+
<span class="table-head-label">Vehicle</span>
|
|
17250
|
+
</span>
|
|
17251
|
+
</div>
|
|
17252
|
+
</div>
|
|
17253
|
+
</div>
|
|
17254
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="driver" role="columnheader" aria-colindex="3" aria-rowindex="1" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17255
|
+
<div class="table-head-cell-content">
|
|
17256
|
+
<div class="table-head-cell-content-row">
|
|
17257
|
+
<span class="table-head-label-wrapper">
|
|
17258
|
+
<span class="table-head-label">Driver</span>
|
|
17259
|
+
</span>
|
|
17260
|
+
</div>
|
|
17261
|
+
</div>
|
|
17262
|
+
</div>
|
|
17263
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="route" role="columnheader" aria-colindex="4" aria-rowindex="1" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17264
|
+
<div class="table-head-cell-content">
|
|
17265
|
+
<div class="table-head-cell-content-row">
|
|
17266
|
+
<span class="table-head-label-wrapper">
|
|
17267
|
+
<span class="table-head-label">Route</span>
|
|
17268
|
+
</span>
|
|
17269
|
+
</div>
|
|
17270
|
+
</div>
|
|
17271
|
+
</div>
|
|
17272
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="eta" role="columnheader" aria-colindex="5" aria-rowindex="1" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17273
|
+
<div class="table-head-cell-content">
|
|
17274
|
+
<div class="table-head-cell-content-row">
|
|
17275
|
+
<span class="table-head-label-wrapper">
|
|
17276
|
+
<span class="table-head-label">ETA</span>
|
|
17277
|
+
</span>
|
|
17278
|
+
</div>
|
|
17279
|
+
</div>
|
|
17280
|
+
</div>
|
|
17281
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="status" role="columnheader" aria-colindex="6" aria-rowindex="1" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17282
|
+
<div class="table-head-cell-content">
|
|
17283
|
+
<div class="table-head-cell-content-row">
|
|
17284
|
+
<span class="table-head-label-wrapper">
|
|
17285
|
+
<span class="table-head-label">Status</span>
|
|
17286
|
+
</span>
|
|
17287
|
+
</div>
|
|
17288
|
+
</div>
|
|
17289
|
+
</div>
|
|
17290
|
+
<div class="table-head-cell table-align-right table-vertical-align-middle padding-y-0" data-column="actions" role="columnheader" aria-colindex="7" aria-rowindex="1" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17291
|
+
<div class="table-head-cell-content">
|
|
17292
|
+
<div class="table-head-cell-content-row">
|
|
17293
|
+
<span class="table-head-label-wrapper">
|
|
17294
|
+
<span class="table-head-label">
|
|
17295
|
+
<button type="button" class="btn btn-muted btn-sm btn-icon-only btn-component table-expand-all-groups-button" tabindex="0">
|
|
17296
|
+
<span class="rioglyph rioglyph-angle-double-down text-size-16">
|
|
17297
|
+
</span>
|
|
17298
|
+
</button>
|
|
17299
|
+
</span>
|
|
17300
|
+
</span>
|
|
17301
|
+
</div>
|
|
17302
|
+
</div>
|
|
17303
|
+
</div>
|
|
17304
|
+
</div>
|
|
17305
|
+
</div>
|
|
17306
|
+
<div class="table-body" role="rowgroup">
|
|
17307
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="0" data-row-id="group-0" role="row">
|
|
17308
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17309
|
+
<div class="table-cell-content">
|
|
17310
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17311
|
+
<div class="display-flex align-items-center gap-10">
|
|
17312
|
+
<span class="text-bold">Berlin Hub</span>
|
|
17313
|
+
<span class="text-color-dark">5 of 33 departures</span>
|
|
17314
|
+
</div>
|
|
17315
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button table-expander-button-expanded" tabindex="0">
|
|
17316
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17317
|
+
</span>
|
|
17318
|
+
</button>
|
|
17319
|
+
</div>
|
|
17320
|
+
</div>
|
|
17321
|
+
</div>
|
|
17322
|
+
</div>
|
|
17323
|
+
<div id="berlin-1" class="table-row table-row-expanded-data bg-white" data-index="1" data-row-id="berlin-1" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
17324
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17325
|
+
<div class="table-selection-control">
|
|
17326
|
+
<label class="checkbox" tabindex="0">
|
|
17327
|
+
<input type="checkbox" class="">
|
|
17328
|
+
<span class="checkbox-text">
|
|
17329
|
+
</span>
|
|
17330
|
+
</label>
|
|
17331
|
+
</div>
|
|
17332
|
+
</div>
|
|
17333
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17334
|
+
<div class="table-cell-content overflow-hidden">R-2041</div>
|
|
17335
|
+
</div>
|
|
17336
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17337
|
+
<div class="table-cell-content overflow-hidden">Lena Vogt</div>
|
|
17338
|
+
</div>
|
|
17339
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17340
|
+
<div class="table-cell-content overflow-hidden">Berlin - Hamburg</div>
|
|
17341
|
+
</div>
|
|
17342
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="eta" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17343
|
+
<div class="table-cell-content overflow-hidden">08:40</div>
|
|
17344
|
+
</div>
|
|
17345
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17346
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
17347
|
+
</div>
|
|
17348
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17349
|
+
<div class="table-cell-content overflow-hidden">
|
|
17350
|
+
</div>
|
|
17351
|
+
</div>
|
|
17352
|
+
</div>
|
|
17353
|
+
<div id="berlin-2" class="table-row table-row-expanded-data bg-white" data-index="2" data-row-id="berlin-2" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
17354
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17355
|
+
<div class="table-selection-control">
|
|
17356
|
+
<label class="checkbox" tabindex="0">
|
|
17357
|
+
<input type="checkbox" class="">
|
|
17358
|
+
<span class="checkbox-text">
|
|
17359
|
+
</span>
|
|
17360
|
+
</label>
|
|
17361
|
+
</div>
|
|
17362
|
+
</div>
|
|
17363
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17364
|
+
<div class="table-cell-content overflow-hidden">R-2042</div>
|
|
17365
|
+
</div>
|
|
17366
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17367
|
+
<div class="table-cell-content overflow-hidden">Milan Weber</div>
|
|
17368
|
+
</div>
|
|
17369
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17370
|
+
<div class="table-cell-content overflow-hidden">Berlin - Leipzig</div>
|
|
17371
|
+
</div>
|
|
17372
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="eta" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17373
|
+
<div class="table-cell-content overflow-hidden">09:10</div>
|
|
17374
|
+
</div>
|
|
17375
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17376
|
+
<div class="table-cell-content overflow-hidden">Loading</div>
|
|
17377
|
+
</div>
|
|
17378
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17379
|
+
<div class="table-cell-content overflow-hidden">
|
|
17380
|
+
</div>
|
|
17381
|
+
</div>
|
|
17382
|
+
</div>
|
|
17383
|
+
<div id="berlin-3" class="table-row table-row-expanded-data bg-white" data-index="3" data-row-id="berlin-3" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
17384
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17385
|
+
<div class="table-selection-control">
|
|
17386
|
+
<label class="checkbox" tabindex="0">
|
|
17387
|
+
<input type="checkbox" class="">
|
|
17388
|
+
<span class="checkbox-text">
|
|
17389
|
+
</span>
|
|
17390
|
+
</label>
|
|
17391
|
+
</div>
|
|
17392
|
+
</div>
|
|
17393
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17394
|
+
<div class="table-cell-content overflow-hidden">R-2043</div>
|
|
17395
|
+
</div>
|
|
17396
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17397
|
+
<div class="table-cell-content overflow-hidden">Eva Kruger</div>
|
|
17398
|
+
</div>
|
|
17399
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17400
|
+
<div class="table-cell-content overflow-hidden">Berlin - Dresden</div>
|
|
17401
|
+
</div>
|
|
17402
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="eta" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17403
|
+
<div class="table-cell-content overflow-hidden">09:35</div>
|
|
17404
|
+
</div>
|
|
17405
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17406
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
17407
|
+
</div>
|
|
17408
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17409
|
+
<div class="table-cell-content overflow-hidden">
|
|
17410
|
+
</div>
|
|
17411
|
+
</div>
|
|
17412
|
+
</div>
|
|
17413
|
+
<div id="berlin-4" class="table-row table-row-expanded-data bg-white" data-index="4" data-row-id="berlin-4" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
17414
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17415
|
+
<div class="table-selection-control">
|
|
17416
|
+
<label class="checkbox" tabindex="0">
|
|
17417
|
+
<input type="checkbox" class="">
|
|
17418
|
+
<span class="checkbox-text">
|
|
17419
|
+
</span>
|
|
17420
|
+
</label>
|
|
17421
|
+
</div>
|
|
17422
|
+
</div>
|
|
17423
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17424
|
+
<div class="table-cell-content overflow-hidden">R-2044</div>
|
|
17425
|
+
</div>
|
|
17426
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17427
|
+
<div class="table-cell-content overflow-hidden">Jonas Brandt</div>
|
|
17428
|
+
</div>
|
|
17429
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17430
|
+
<div class="table-cell-content overflow-hidden">Berlin - Rostock</div>
|
|
17431
|
+
</div>
|
|
17432
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="eta" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17433
|
+
<div class="table-cell-content overflow-hidden">10:05</div>
|
|
17434
|
+
</div>
|
|
17435
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17436
|
+
<div class="table-cell-content overflow-hidden">Delayed</div>
|
|
17437
|
+
</div>
|
|
17438
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17439
|
+
<div class="table-cell-content overflow-hidden">
|
|
17440
|
+
</div>
|
|
17441
|
+
</div>
|
|
17442
|
+
</div>
|
|
17443
|
+
<div id="berlin-5" class="table-row table-row-expanded-data bg-white" data-index="5" data-row-id="berlin-5" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
17444
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
17445
|
+
<div class="table-selection-control">
|
|
17446
|
+
<label class="checkbox" tabindex="0">
|
|
17447
|
+
<input type="checkbox" class="">
|
|
17448
|
+
<span class="checkbox-text">
|
|
17449
|
+
</span>
|
|
17450
|
+
</label>
|
|
17451
|
+
</div>
|
|
17452
|
+
</div>
|
|
17453
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
17454
|
+
<div class="table-cell-content overflow-hidden">R-2045</div>
|
|
17455
|
+
</div>
|
|
17456
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
17457
|
+
<div class="table-cell-content overflow-hidden">Nora Seidel</div>
|
|
17458
|
+
</div>
|
|
17459
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
17460
|
+
<div class="table-cell-content overflow-hidden">Berlin - Bremen</div>
|
|
17461
|
+
</div>
|
|
17462
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="eta" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
17463
|
+
<div class="table-cell-content overflow-hidden">10:30</div>
|
|
17464
|
+
</div>
|
|
17465
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
17466
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
17467
|
+
</div>
|
|
17468
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
17469
|
+
<div class="table-cell-content overflow-hidden">
|
|
17470
|
+
</div>
|
|
17471
|
+
</div>
|
|
17472
|
+
</div>
|
|
17473
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="6" data-row-id="group-6" role="row">
|
|
17474
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17475
|
+
<div class="table-cell-content">
|
|
17476
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17477
|
+
<div class="display-flex align-items-center gap-10">
|
|
17478
|
+
<span class="text-bold">Hamburg Yard</span>
|
|
17479
|
+
<span class="text-color-dark">6 of 33 departures</span>
|
|
17480
|
+
</div>
|
|
17481
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
17482
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17483
|
+
</span>
|
|
17484
|
+
</button>
|
|
17485
|
+
</div>
|
|
17486
|
+
</div>
|
|
17487
|
+
</div>
|
|
17488
|
+
</div>
|
|
17489
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="7" data-row-id="group-7" role="row">
|
|
17490
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17491
|
+
<div class="table-cell-content">
|
|
17492
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17493
|
+
<div class="display-flex align-items-center gap-10">
|
|
17494
|
+
<span class="text-bold">Munich Depot</span>
|
|
17495
|
+
<span class="text-color-dark">5 of 33 departures</span>
|
|
17496
|
+
</div>
|
|
17497
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
17498
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17499
|
+
</span>
|
|
17500
|
+
</button>
|
|
17501
|
+
</div>
|
|
17502
|
+
</div>
|
|
17503
|
+
</div>
|
|
17504
|
+
</div>
|
|
17505
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="8" data-row-id="group-8" role="row">
|
|
17506
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17507
|
+
<div class="table-cell-content">
|
|
17508
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17509
|
+
<div class="display-flex align-items-center gap-10">
|
|
17510
|
+
<span class="text-bold">Cologne Crossdock</span>
|
|
17511
|
+
<span class="text-color-dark">6 of 33 departures</span>
|
|
17512
|
+
</div>
|
|
17513
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
17514
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17515
|
+
</span>
|
|
17516
|
+
</button>
|
|
17517
|
+
</div>
|
|
17518
|
+
</div>
|
|
17519
|
+
</div>
|
|
17520
|
+
</div>
|
|
17521
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="9" data-row-id="group-9" role="row">
|
|
17522
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17523
|
+
<div class="table-cell-content">
|
|
17524
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17525
|
+
<div class="display-flex align-items-center gap-10">
|
|
17526
|
+
<span class="text-bold">Frankfurt Gate</span>
|
|
17527
|
+
<span class="text-color-dark">5 of 33 departures</span>
|
|
17528
|
+
</div>
|
|
17529
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
17530
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17531
|
+
</span>
|
|
17532
|
+
</button>
|
|
17533
|
+
</div>
|
|
17534
|
+
</div>
|
|
17535
|
+
</div>
|
|
17536
|
+
</div>
|
|
17537
|
+
<div class="table-row table-row-group table-row-no-hover" data-index="10" data-row-id="group-10" role="row">
|
|
17538
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="7">
|
|
17539
|
+
<div class="table-cell-content">
|
|
17540
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
17541
|
+
<div class="display-flex align-items-center gap-10">
|
|
17542
|
+
<span class="text-bold">Stuttgart Terminal</span>
|
|
17543
|
+
<span class="text-color-dark">6 of 33 departures</span>
|
|
17544
|
+
</div>
|
|
17545
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
17546
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
17547
|
+
</span>
|
|
17548
|
+
</button>
|
|
17549
|
+
</div>
|
|
17550
|
+
</div>
|
|
17551
|
+
</div>
|
|
17552
|
+
</div>
|
|
17553
|
+
</div>
|
|
17554
|
+
</div>
|
|
17555
|
+
```
|
|
17556
|
+
|
|
17557
|
+
#### Props (json)
|
|
17558
|
+
|
|
17559
|
+
```json
|
|
17560
|
+
rowClassName={(row) => (row.disabled ? 'my-class-name' : '')}
|
|
17561
|
+
```
|
|
17562
|
+
|
|
17563
|
+
## Selectable groups with expanded rows
|
|
17564
|
+
|
|
17565
|
+
When selection should apply to groups instead of expanded data rows, enable the table selection column and make only the TableGroupRow selectable. Expanded rows can opt out with selectable={false} and hide their empty selection controls via hideSelectionCheckboxesForExcludedRows.
|
|
17566
|
+
|
|
17567
|
+
### Example: 5 departures
|
|
17568
|
+
|
|
17569
|
+
Vehicle
|
|
17570
|
+
|
|
17571
|
+
Driver
|
|
17572
|
+
|
|
17573
|
+
Destination
|
|
17574
|
+
|
|
17575
|
+
Departure
|
|
17576
|
+
|
|
17577
|
+
Status
|
|
17578
|
+
|
|
17579
|
+
North region 5 departures
|
|
17580
|
+
|
|
17581
|
+
N-1041
|
|
17582
|
+
|
|
17583
|
+
Lena Vogt
|
|
17584
|
+
|
|
17585
|
+
Hamburg
|
|
17586
|
+
|
|
17587
|
+
08:00
|
|
17588
|
+
|
|
17589
|
+
Ready
|
|
17590
|
+
|
|
17591
|
+
N-1042
|
|
17592
|
+
|
|
17593
|
+
Milan Weber
|
|
17594
|
+
|
|
17595
|
+
Kiel
|
|
17596
|
+
|
|
17597
|
+
08:25
|
|
17598
|
+
|
|
17599
|
+
Loading
|
|
17600
|
+
|
|
17601
|
+
N-1043
|
|
17602
|
+
|
|
17603
|
+
Eva Kruger
|
|
17604
|
+
|
|
17605
|
+
Bremen
|
|
17606
|
+
|
|
17607
|
+
08:50
|
|
17608
|
+
|
|
17609
|
+
Ready
|
|
17610
|
+
|
|
17611
|
+
N-1044
|
|
17612
|
+
|
|
17613
|
+
Jonas Brandt
|
|
17614
|
+
|
|
17615
|
+
Lubeck
|
|
17616
|
+
|
|
17617
|
+
09:15
|
|
17618
|
+
|
|
17619
|
+
Delayed
|
|
17620
|
+
|
|
17621
|
+
N-1045
|
|
17622
|
+
|
|
17623
|
+
Nora Seidel
|
|
17624
|
+
|
|
17625
|
+
Rostock
|
|
17626
|
+
|
|
17627
|
+
09:40
|
|
17628
|
+
|
|
17629
|
+
Ready
|
|
17630
|
+
|
|
17631
|
+
East region 6 departures
|
|
17632
|
+
|
|
17633
|
+
South region 5 departures
|
|
17634
|
+
|
|
17635
|
+
West region 6 departures
|
|
17636
|
+
|
|
17637
|
+
Central region 5 departures
|
|
17638
|
+
|
|
17639
|
+
Southwest region 6 departures
|
|
17640
|
+
|
|
17641
|
+
#### React (tsx)
|
|
17642
|
+
|
|
17643
|
+
```tsx
|
|
17644
|
+
import { Fragment, useMemo, useState } from 'react';
|
|
17645
|
+
|
|
17646
|
+
import Table, {
|
|
17647
|
+
TableBody,
|
|
17648
|
+
TableColumn,
|
|
17649
|
+
TableExpandAllGroupsButton,
|
|
17650
|
+
TableExpandedRow,
|
|
17651
|
+
TableExpanderButton,
|
|
17652
|
+
TableGroupRow,
|
|
17653
|
+
TableHeader,
|
|
17654
|
+
TableHeaderColumn,
|
|
17655
|
+
type TableRowId,
|
|
17656
|
+
} from '@rio-cloud/rio-uikit/Table';
|
|
17657
|
+
|
|
17658
|
+
type DemoSelectableGroupRow = {
|
|
17659
|
+
id: string;
|
|
17660
|
+
groupId: string;
|
|
17661
|
+
vehicle: string;
|
|
17662
|
+
driver: string;
|
|
17663
|
+
destination: string;
|
|
17664
|
+
departure: string;
|
|
17665
|
+
status: string;
|
|
17666
|
+
};
|
|
17667
|
+
|
|
17668
|
+
type DemoSelectableGroup = {
|
|
17669
|
+
id: string;
|
|
17670
|
+
name: string;
|
|
17671
|
+
};
|
|
17672
|
+
|
|
17673
|
+
const groups: DemoSelectableGroup[] = [
|
|
17674
|
+
{ id: 'north', name: 'North region' },
|
|
17675
|
+
{ id: 'east', name: 'East region' },
|
|
17676
|
+
{ id: 'south', name: 'South region' },
|
|
17677
|
+
{ id: 'west', name: 'West region' },
|
|
17678
|
+
{ id: 'central', name: 'Central region' },
|
|
17679
|
+
{ id: 'southwest', name: 'Southwest region' },
|
|
17680
|
+
];
|
|
17681
|
+
|
|
17682
|
+
const groupIds = groups.map(group => group.id);
|
|
17683
|
+
|
|
17684
|
+
const rows: DemoSelectableGroupRow[] = [
|
|
17685
|
+
{
|
|
17686
|
+
id: 'north-1',
|
|
17687
|
+
groupId: 'north',
|
|
17688
|
+
vehicle: 'N-1041',
|
|
17689
|
+
driver: 'Lena Vogt',
|
|
17690
|
+
destination: 'Hamburg',
|
|
17691
|
+
departure: '08:00',
|
|
17692
|
+
status: 'Ready',
|
|
17693
|
+
},
|
|
17694
|
+
{
|
|
17695
|
+
id: 'north-2',
|
|
17696
|
+
groupId: 'north',
|
|
17697
|
+
vehicle: 'N-1042',
|
|
17698
|
+
driver: 'Milan Weber',
|
|
17699
|
+
destination: 'Kiel',
|
|
17700
|
+
departure: '08:25',
|
|
17701
|
+
status: 'Loading',
|
|
17702
|
+
},
|
|
17703
|
+
{
|
|
17704
|
+
id: 'north-3',
|
|
17705
|
+
groupId: 'north',
|
|
17706
|
+
vehicle: 'N-1043',
|
|
17707
|
+
driver: 'Eva Kruger',
|
|
17708
|
+
destination: 'Bremen',
|
|
17709
|
+
departure: '08:50',
|
|
17710
|
+
status: 'Ready',
|
|
17711
|
+
},
|
|
17712
|
+
{
|
|
17713
|
+
id: 'north-4',
|
|
17714
|
+
groupId: 'north',
|
|
17715
|
+
vehicle: 'N-1044',
|
|
17716
|
+
driver: 'Jonas Brandt',
|
|
17717
|
+
destination: 'Lubeck',
|
|
17718
|
+
departure: '09:15',
|
|
17719
|
+
status: 'Delayed',
|
|
17720
|
+
},
|
|
17721
|
+
{
|
|
17722
|
+
id: 'north-5',
|
|
17723
|
+
groupId: 'north',
|
|
17724
|
+
vehicle: 'N-1045',
|
|
17725
|
+
driver: 'Nora Seidel',
|
|
17726
|
+
destination: 'Rostock',
|
|
17727
|
+
departure: '09:40',
|
|
17728
|
+
status: 'Ready',
|
|
17729
|
+
},
|
|
17730
|
+
{
|
|
17731
|
+
id: 'east-1',
|
|
17732
|
+
groupId: 'east',
|
|
17733
|
+
vehicle: 'E-2081',
|
|
17734
|
+
driver: 'Oskar Klein',
|
|
17735
|
+
destination: 'Leipzig',
|
|
17736
|
+
departure: '08:10',
|
|
17737
|
+
status: 'Ready',
|
|
17738
|
+
},
|
|
17739
|
+
{
|
|
17740
|
+
id: 'east-2',
|
|
17741
|
+
groupId: 'east',
|
|
17742
|
+
vehicle: 'E-2082',
|
|
17743
|
+
driver: 'Mara Stein',
|
|
17744
|
+
destination: 'Dresden',
|
|
17745
|
+
departure: '08:35',
|
|
17746
|
+
status: 'Loading',
|
|
17747
|
+
},
|
|
17748
|
+
{
|
|
17749
|
+
id: 'east-3',
|
|
17750
|
+
groupId: 'east',
|
|
17751
|
+
vehicle: 'E-2083',
|
|
17752
|
+
driver: 'Timo Wolf',
|
|
17753
|
+
destination: 'Potsdam',
|
|
17754
|
+
departure: '09:05',
|
|
17755
|
+
status: 'In transit',
|
|
17756
|
+
},
|
|
17757
|
+
{
|
|
17758
|
+
id: 'east-4',
|
|
17759
|
+
groupId: 'east',
|
|
17760
|
+
vehicle: 'E-2084',
|
|
17761
|
+
driver: 'Sina Roth',
|
|
17762
|
+
destination: 'Cottbus',
|
|
17763
|
+
departure: '09:30',
|
|
17764
|
+
status: 'Ready',
|
|
17765
|
+
},
|
|
17766
|
+
{
|
|
17767
|
+
id: 'east-5',
|
|
17768
|
+
groupId: 'east',
|
|
17769
|
+
vehicle: 'E-2085',
|
|
17770
|
+
driver: 'Felix Graf',
|
|
17771
|
+
destination: 'Erfurt',
|
|
17772
|
+
departure: '10:00',
|
|
17773
|
+
status: 'Ready',
|
|
17774
|
+
},
|
|
17775
|
+
{
|
|
17776
|
+
id: 'east-6',
|
|
17777
|
+
groupId: 'east',
|
|
17778
|
+
vehicle: 'E-2086',
|
|
17779
|
+
driver: 'Iris Lind',
|
|
17780
|
+
destination: 'Jena',
|
|
17781
|
+
departure: '10:25',
|
|
17782
|
+
status: 'Delayed',
|
|
17783
|
+
},
|
|
17784
|
+
{
|
|
17785
|
+
id: 'south-1',
|
|
17786
|
+
groupId: 'south',
|
|
17787
|
+
vehicle: 'S-3301',
|
|
17788
|
+
driver: 'Anja Hofmann',
|
|
17789
|
+
destination: 'Munich',
|
|
17790
|
+
departure: '08:15',
|
|
17791
|
+
status: 'Ready',
|
|
17792
|
+
},
|
|
17793
|
+
{
|
|
17794
|
+
id: 'south-2',
|
|
17795
|
+
groupId: 'south',
|
|
17796
|
+
vehicle: 'S-3302',
|
|
17797
|
+
driver: 'David Lang',
|
|
17798
|
+
destination: 'Augsburg',
|
|
17799
|
+
departure: '08:45',
|
|
17800
|
+
status: 'In transit',
|
|
17801
|
+
},
|
|
17802
|
+
{
|
|
17803
|
+
id: 'south-3',
|
|
17804
|
+
groupId: 'south',
|
|
17805
|
+
vehicle: 'S-3303',
|
|
17806
|
+
driver: 'Clara Beck',
|
|
17807
|
+
destination: 'Ulm',
|
|
17808
|
+
departure: '09:10',
|
|
17809
|
+
status: 'Ready',
|
|
17810
|
+
},
|
|
17811
|
+
{
|
|
17812
|
+
id: 'south-4',
|
|
17813
|
+
groupId: 'south',
|
|
17814
|
+
vehicle: 'S-3304',
|
|
17815
|
+
driver: 'Erik Hahn',
|
|
17816
|
+
destination: 'Passau',
|
|
17817
|
+
departure: '09:50',
|
|
17818
|
+
status: 'Loading',
|
|
17819
|
+
},
|
|
17820
|
+
{
|
|
17821
|
+
id: 'south-5',
|
|
17822
|
+
groupId: 'south',
|
|
17823
|
+
vehicle: 'S-3305',
|
|
17824
|
+
driver: 'Paula Rehm',
|
|
17825
|
+
destination: 'Regensburg',
|
|
17826
|
+
departure: '10:20',
|
|
17827
|
+
status: 'Ready',
|
|
17828
|
+
},
|
|
17829
|
+
{
|
|
17830
|
+
id: 'west-1',
|
|
17831
|
+
groupId: 'west',
|
|
17832
|
+
vehicle: 'W-4101',
|
|
17833
|
+
driver: 'Ben Keller',
|
|
17834
|
+
destination: 'Cologne',
|
|
17835
|
+
departure: '08:05',
|
|
17836
|
+
status: 'Ready',
|
|
17837
|
+
},
|
|
17838
|
+
{
|
|
17839
|
+
id: 'west-2',
|
|
17840
|
+
groupId: 'west',
|
|
17841
|
+
vehicle: 'W-4102',
|
|
17842
|
+
driver: 'Lea Sommer',
|
|
17843
|
+
destination: 'Dortmund',
|
|
17844
|
+
departure: '08:30',
|
|
17845
|
+
status: 'Delayed',
|
|
17846
|
+
},
|
|
17847
|
+
{
|
|
17848
|
+
id: 'west-3',
|
|
17849
|
+
groupId: 'west',
|
|
17850
|
+
vehicle: 'W-4103',
|
|
17851
|
+
driver: 'Noah Frey',
|
|
17852
|
+
destination: 'Essen',
|
|
17853
|
+
departure: '09:00',
|
|
17854
|
+
status: 'Loading',
|
|
17855
|
+
},
|
|
17856
|
+
{
|
|
17857
|
+
id: 'west-4',
|
|
17858
|
+
groupId: 'west',
|
|
17859
|
+
vehicle: 'W-4104',
|
|
17860
|
+
driver: 'Mia Busch',
|
|
17861
|
+
destination: 'Aachen',
|
|
17862
|
+
departure: '09:35',
|
|
17863
|
+
status: 'Ready',
|
|
17864
|
+
},
|
|
17865
|
+
{
|
|
17866
|
+
id: 'west-5',
|
|
17867
|
+
groupId: 'west',
|
|
17868
|
+
vehicle: 'W-4105',
|
|
17869
|
+
driver: 'Lars Kunz',
|
|
17870
|
+
destination: 'Bonn',
|
|
17871
|
+
departure: '10:05',
|
|
17872
|
+
status: 'Ready',
|
|
17873
|
+
},
|
|
17874
|
+
{
|
|
17875
|
+
id: 'west-6',
|
|
17876
|
+
groupId: 'west',
|
|
17877
|
+
vehicle: 'W-4106',
|
|
17878
|
+
driver: 'Rosa Dietz',
|
|
17879
|
+
destination: 'Koblenz',
|
|
17880
|
+
departure: '10:35',
|
|
17881
|
+
status: 'In transit',
|
|
17882
|
+
},
|
|
17883
|
+
{
|
|
17884
|
+
id: 'central-1',
|
|
17885
|
+
groupId: 'central',
|
|
17886
|
+
vehicle: 'C-5201',
|
|
17887
|
+
driver: 'Klara May',
|
|
17888
|
+
destination: 'Frankfurt',
|
|
17889
|
+
departure: '08:20',
|
|
17890
|
+
status: 'Ready',
|
|
17891
|
+
},
|
|
17892
|
+
{
|
|
17893
|
+
id: 'central-2',
|
|
17894
|
+
groupId: 'central',
|
|
17895
|
+
vehicle: 'C-5202',
|
|
17896
|
+
driver: 'Jan Otto',
|
|
17897
|
+
destination: 'Kassel',
|
|
17898
|
+
departure: '08:55',
|
|
17899
|
+
status: 'Loading',
|
|
17900
|
+
},
|
|
17901
|
+
{
|
|
17902
|
+
id: 'central-3',
|
|
17903
|
+
groupId: 'central',
|
|
17904
|
+
vehicle: 'C-5203',
|
|
17905
|
+
driver: 'Sarah Blum',
|
|
17906
|
+
destination: 'Mannheim',
|
|
17907
|
+
departure: '09:25',
|
|
17908
|
+
status: 'Ready',
|
|
17909
|
+
},
|
|
17910
|
+
{
|
|
17911
|
+
id: 'central-4',
|
|
17912
|
+
groupId: 'central',
|
|
17913
|
+
vehicle: 'C-5204',
|
|
17914
|
+
driver: 'Tom Ritter',
|
|
17915
|
+
destination: 'Mainz',
|
|
17916
|
+
departure: '09:55',
|
|
17917
|
+
status: 'In transit',
|
|
17918
|
+
},
|
|
17919
|
+
{
|
|
17920
|
+
id: 'central-5',
|
|
17921
|
+
groupId: 'central',
|
|
17922
|
+
vehicle: 'C-5205',
|
|
17923
|
+
driver: 'Nina Adler',
|
|
17924
|
+
destination: 'Fulda',
|
|
17925
|
+
departure: '10:30',
|
|
17926
|
+
status: 'Delayed',
|
|
17927
|
+
},
|
|
17928
|
+
{
|
|
17929
|
+
id: 'southwest-1',
|
|
17930
|
+
groupId: 'southwest',
|
|
17931
|
+
vehicle: 'SW-6101',
|
|
17932
|
+
driver: 'Luis Horn',
|
|
17933
|
+
destination: 'Stuttgart',
|
|
17934
|
+
departure: '08:30',
|
|
17935
|
+
status: 'Ready',
|
|
17936
|
+
},
|
|
17937
|
+
{
|
|
17938
|
+
id: 'southwest-2',
|
|
17939
|
+
groupId: 'southwest',
|
|
17940
|
+
vehicle: 'SW-6102',
|
|
17941
|
+
driver: 'Greta Vogler',
|
|
17942
|
+
destination: 'Freiburg',
|
|
17943
|
+
departure: '09:00',
|
|
17944
|
+
status: 'Loading',
|
|
17945
|
+
},
|
|
17946
|
+
{
|
|
17947
|
+
id: 'southwest-3',
|
|
17948
|
+
groupId: 'southwest',
|
|
17949
|
+
vehicle: 'SW-6103',
|
|
17950
|
+
driver: 'Aron Weiss',
|
|
17951
|
+
destination: 'Karlsruhe',
|
|
17952
|
+
departure: '09:30',
|
|
17953
|
+
status: 'Ready',
|
|
17954
|
+
},
|
|
17955
|
+
{
|
|
17956
|
+
id: 'southwest-4',
|
|
17957
|
+
groupId: 'southwest',
|
|
17958
|
+
vehicle: 'SW-6104',
|
|
17959
|
+
driver: 'Lina Fuchs',
|
|
17960
|
+
destination: 'Tubingen',
|
|
17961
|
+
departure: '10:10',
|
|
17962
|
+
status: 'In transit',
|
|
17963
|
+
},
|
|
17964
|
+
{
|
|
17965
|
+
id: 'southwest-5',
|
|
17966
|
+
groupId: 'southwest',
|
|
17967
|
+
vehicle: 'SW-6105',
|
|
17968
|
+
driver: 'Theo Bach',
|
|
17969
|
+
destination: 'Heilbronn',
|
|
17970
|
+
departure: '10:45',
|
|
17971
|
+
status: 'Ready',
|
|
17972
|
+
},
|
|
17973
|
+
{
|
|
17974
|
+
id: 'southwest-6',
|
|
17975
|
+
groupId: 'southwest',
|
|
17976
|
+
vehicle: 'SW-6106',
|
|
17977
|
+
driver: 'Emma Koch',
|
|
17978
|
+
destination: 'Singen',
|
|
17979
|
+
departure: '11:15',
|
|
17980
|
+
status: 'Delayed',
|
|
17981
|
+
},
|
|
17982
|
+
];
|
|
17983
|
+
|
|
17984
|
+
const TableSelectableGroupRowsExample = () => {
|
|
17985
|
+
const [expandedGroups, setExpandedGroups] = useState<string[]>(['north']);
|
|
17986
|
+
const [selectedGroupIds, setSelectedGroupIds] = useState<TableRowId[]>([]);
|
|
17987
|
+
|
|
17988
|
+
const rowsByGroupId = useMemo(() => Map.groupBy(rows, row => row.groupId), []);
|
|
17989
|
+
const areAllGroupsExpanded = groupIds.every(groupId => expandedGroups.includes(groupId));
|
|
17990
|
+
|
|
17991
|
+
const toggleGroup = (groupId: string) => {
|
|
17992
|
+
setExpandedGroups(currentExpandedGroups =>
|
|
17993
|
+
currentExpandedGroups.includes(groupId)
|
|
17994
|
+
? currentExpandedGroups.filter(expandedGroupId => expandedGroupId !== groupId)
|
|
17995
|
+
: [...currentExpandedGroups, groupId]
|
|
17996
|
+
);
|
|
17997
|
+
};
|
|
17998
|
+
|
|
17999
|
+
const toggleAllGroups = () => {
|
|
18000
|
+
setExpandedGroups(currentExpandedGroups =>
|
|
18001
|
+
groupIds.every(groupId => currentExpandedGroups.includes(groupId)) ? [] : groupIds
|
|
18002
|
+
);
|
|
18003
|
+
};
|
|
18004
|
+
|
|
18005
|
+
return (
|
|
18006
|
+
<Table
|
|
18007
|
+
rowKey='id'
|
|
18008
|
+
hover
|
|
18009
|
+
selectedRowIds={selectedGroupIds}
|
|
18010
|
+
onSelectionChange={setSelectedGroupIds}
|
|
18011
|
+
showSelectionColumn
|
|
18012
|
+
hideSelectionCheckboxesForExcludedRows
|
|
18013
|
+
>
|
|
18014
|
+
<TableHeader>
|
|
18015
|
+
<TableHeaderColumn columnKey='vehicle'>Vehicle</TableHeaderColumn>
|
|
18016
|
+
<TableHeaderColumn columnKey='driver'>Driver</TableHeaderColumn>
|
|
18017
|
+
<TableHeaderColumn columnKey='destination'>Destination</TableHeaderColumn>
|
|
18018
|
+
<TableHeaderColumn columnKey='departure'>Departure</TableHeaderColumn>
|
|
18019
|
+
<TableHeaderColumn columnKey='status'>Status</TableHeaderColumn>
|
|
18020
|
+
<TableHeaderColumn columnKey='actions' horizontalAlign='right' className='padding-y-0'>
|
|
18021
|
+
<TableExpandAllGroupsButton expanded={areAllGroupsExpanded} onClick={toggleAllGroups} />
|
|
18022
|
+
</TableHeaderColumn>
|
|
18023
|
+
</TableHeader>
|
|
18024
|
+
|
|
18025
|
+
<TableBody>
|
|
18026
|
+
{groups.map(group => {
|
|
18027
|
+
const isExpanded = expandedGroups.includes(group.id);
|
|
18028
|
+
const groupRows = rowsByGroupId.get(group.id) ?? [];
|
|
18029
|
+
|
|
18030
|
+
return (
|
|
18031
|
+
<Fragment key={group.id}>
|
|
18032
|
+
<TableGroupRow id={group.id} selectable noHover>
|
|
18033
|
+
<div className='display-flex align-items-center justify-content-between gap-15 width-100pct'>
|
|
18034
|
+
<div className='display-flex align-items-center gap-10'>
|
|
18035
|
+
<span className='text-bold'>{group.name}</span>
|
|
18036
|
+
<span className='text-color-dark'>{groupRows.length} departures</span>
|
|
18037
|
+
</div>
|
|
18038
|
+
<TableExpanderButton expanded={isExpanded} onClick={() => toggleGroup(group.id)} />
|
|
18039
|
+
</div>
|
|
18040
|
+
</TableGroupRow>
|
|
18041
|
+
|
|
18042
|
+
{isExpanded &&
|
|
18043
|
+
groupRows.map(row => (
|
|
18044
|
+
<TableExpandedRow
|
|
18045
|
+
key={row.id}
|
|
18046
|
+
parentKey={group.id}
|
|
18047
|
+
selectable={false}
|
|
18048
|
+
className='bg-white'
|
|
18049
|
+
{...row}
|
|
18050
|
+
>
|
|
18051
|
+
<TableColumn columnKey='vehicle'>{row.vehicle}</TableColumn>
|
|
18052
|
+
<TableColumn columnKey='driver'>{row.driver}</TableColumn>
|
|
18053
|
+
<TableColumn columnKey='destination'>{row.destination}</TableColumn>
|
|
18054
|
+
<TableColumn columnKey='departure'>{row.departure}</TableColumn>
|
|
18055
|
+
<TableColumn columnKey='status'>{row.status}</TableColumn>
|
|
18056
|
+
<TableColumn columnKey='actions' />
|
|
18057
|
+
</TableExpandedRow>
|
|
18058
|
+
))}
|
|
18059
|
+
</Fragment>
|
|
18060
|
+
);
|
|
18061
|
+
})}
|
|
18062
|
+
</TableBody>
|
|
18063
|
+
</Table>
|
|
18064
|
+
);
|
|
18065
|
+
};
|
|
18066
|
+
|
|
18067
|
+
export default TableSelectableGroupRowsExample;
|
|
18068
|
+
```
|
|
18069
|
+
|
|
18070
|
+
#### HTML (html)
|
|
18071
|
+
|
|
18072
|
+
```html
|
|
18073
|
+
<div class="table table-view-table table-hover border table-rounded table-has-head" role="table" style="--table-columns: 50px minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr) minmax(50px, 1fr); --table-areas: "table-selection table-col-1 table-col-2 table-col-3 table-col-4 table-col-5 table-col-6"; --table-column-count: 7; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="7">
|
|
18074
|
+
<div class="table-head" role="rowgroup">
|
|
18075
|
+
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
18076
|
+
<div class="table-head-cell table-selection-cell table-align-center table-vertical-align-middle" role="columnheader" aria-colindex="1" aria-rowindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18077
|
+
<div class="table-selection-control">
|
|
18078
|
+
<label class="checkbox" tabindex="0">
|
|
18079
|
+
<input type="checkbox" class="">
|
|
18080
|
+
<span class="checkbox-text">
|
|
18081
|
+
</span>
|
|
18082
|
+
</label>
|
|
18083
|
+
</div>
|
|
18084
|
+
</div>
|
|
18085
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="vehicle" role="columnheader" aria-colindex="2" aria-rowindex="1" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18086
|
+
<div class="table-head-cell-content">
|
|
18087
|
+
<div class="table-head-cell-content-row">
|
|
18088
|
+
<span class="table-head-label-wrapper">
|
|
18089
|
+
<span class="table-head-label">Vehicle</span>
|
|
18090
|
+
</span>
|
|
18091
|
+
</div>
|
|
18092
|
+
</div>
|
|
18093
|
+
</div>
|
|
18094
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="driver" role="columnheader" aria-colindex="3" aria-rowindex="1" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18095
|
+
<div class="table-head-cell-content">
|
|
18096
|
+
<div class="table-head-cell-content-row">
|
|
18097
|
+
<span class="table-head-label-wrapper">
|
|
18098
|
+
<span class="table-head-label">Driver</span>
|
|
18099
|
+
</span>
|
|
18100
|
+
</div>
|
|
18101
|
+
</div>
|
|
18102
|
+
</div>
|
|
18103
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="destination" role="columnheader" aria-colindex="4" aria-rowindex="1" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18104
|
+
<div class="table-head-cell-content">
|
|
18105
|
+
<div class="table-head-cell-content-row">
|
|
18106
|
+
<span class="table-head-label-wrapper">
|
|
18107
|
+
<span class="table-head-label">Destination</span>
|
|
18108
|
+
</span>
|
|
18109
|
+
</div>
|
|
18110
|
+
</div>
|
|
18111
|
+
</div>
|
|
18112
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="departure" role="columnheader" aria-colindex="5" aria-rowindex="1" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18113
|
+
<div class="table-head-cell-content">
|
|
18114
|
+
<div class="table-head-cell-content-row">
|
|
18115
|
+
<span class="table-head-label-wrapper">
|
|
18116
|
+
<span class="table-head-label">Departure</span>
|
|
18117
|
+
</span>
|
|
18118
|
+
</div>
|
|
18119
|
+
</div>
|
|
18120
|
+
</div>
|
|
18121
|
+
<div class="table-head-cell table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="status" role="columnheader" aria-colindex="6" aria-rowindex="1" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18122
|
+
<div class="table-head-cell-content">
|
|
18123
|
+
<div class="table-head-cell-content-row">
|
|
18124
|
+
<span class="table-head-label-wrapper">
|
|
18125
|
+
<span class="table-head-label">Status</span>
|
|
18126
|
+
</span>
|
|
18127
|
+
</div>
|
|
18128
|
+
</div>
|
|
18129
|
+
</div>
|
|
18130
|
+
<div class="table-head-cell table-align-right table-vertical-align-middle padding-y-0" data-column="actions" role="columnheader" aria-colindex="7" aria-rowindex="1" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18131
|
+
<div class="table-head-cell-content">
|
|
18132
|
+
<div class="table-head-cell-content-row">
|
|
18133
|
+
<span class="table-head-label-wrapper">
|
|
18134
|
+
<span class="table-head-label">
|
|
18135
|
+
<button type="button" class="btn btn-muted btn-sm btn-icon-only btn-component table-expand-all-groups-button" tabindex="0">
|
|
18136
|
+
<span class="rioglyph rioglyph-angle-double-down text-size-16">
|
|
18137
|
+
</span>
|
|
18138
|
+
</button>
|
|
18139
|
+
</span>
|
|
18140
|
+
</span>
|
|
18141
|
+
</div>
|
|
18142
|
+
</div>
|
|
18143
|
+
</div>
|
|
18144
|
+
</div>
|
|
18145
|
+
</div>
|
|
18146
|
+
<div class="table-body" role="rowgroup">
|
|
18147
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="0" data-row-id="north" role="row">
|
|
18148
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18149
|
+
<div class="table-selection-control">
|
|
18150
|
+
<label class="checkbox" tabindex="0">
|
|
18151
|
+
<input type="checkbox" class="">
|
|
18152
|
+
<span class="checkbox-text">
|
|
18153
|
+
</span>
|
|
18154
|
+
</label>
|
|
18155
|
+
</div>
|
|
18156
|
+
</div>
|
|
18157
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18158
|
+
<div class="table-cell-content">
|
|
18159
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18160
|
+
<div class="display-flex align-items-center gap-10">
|
|
18161
|
+
<span class="text-bold">North region</span>
|
|
18162
|
+
<span class="text-color-dark">5 departures</span>
|
|
18163
|
+
</div>
|
|
18164
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button table-expander-button-expanded" tabindex="0">
|
|
18165
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18166
|
+
</span>
|
|
18167
|
+
</button>
|
|
18168
|
+
</div>
|
|
18169
|
+
</div>
|
|
18170
|
+
</div>
|
|
18171
|
+
</div>
|
|
18172
|
+
<div id="north-1" class="table-row table-row-expanded-data bg-white" data-index="1" data-row-id="north-1" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
18173
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18174
|
+
</div>
|
|
18175
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18176
|
+
<div class="table-cell-content overflow-hidden">N-1041</div>
|
|
18177
|
+
</div>
|
|
18178
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18179
|
+
<div class="table-cell-content overflow-hidden">Lena Vogt</div>
|
|
18180
|
+
</div>
|
|
18181
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="destination" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18182
|
+
<div class="table-cell-content overflow-hidden">Hamburg</div>
|
|
18183
|
+
</div>
|
|
18184
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="departure" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18185
|
+
<div class="table-cell-content overflow-hidden">08:00</div>
|
|
18186
|
+
</div>
|
|
18187
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18188
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
18189
|
+
</div>
|
|
18190
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18191
|
+
<div class="table-cell-content overflow-hidden">
|
|
18192
|
+
</div>
|
|
18193
|
+
</div>
|
|
18194
|
+
</div>
|
|
18195
|
+
<div id="north-2" class="table-row table-row-expanded-data bg-white" data-index="2" data-row-id="north-2" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
18196
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18197
|
+
</div>
|
|
18198
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18199
|
+
<div class="table-cell-content overflow-hidden">N-1042</div>
|
|
18200
|
+
</div>
|
|
18201
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18202
|
+
<div class="table-cell-content overflow-hidden">Milan Weber</div>
|
|
18203
|
+
</div>
|
|
18204
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="destination" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18205
|
+
<div class="table-cell-content overflow-hidden">Kiel</div>
|
|
18206
|
+
</div>
|
|
18207
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="departure" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18208
|
+
<div class="table-cell-content overflow-hidden">08:25</div>
|
|
18209
|
+
</div>
|
|
18210
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18211
|
+
<div class="table-cell-content overflow-hidden">Loading</div>
|
|
18212
|
+
</div>
|
|
18213
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18214
|
+
<div class="table-cell-content overflow-hidden">
|
|
18215
|
+
</div>
|
|
18216
|
+
</div>
|
|
18217
|
+
</div>
|
|
18218
|
+
<div id="north-3" class="table-row table-row-expanded-data bg-white" data-index="3" data-row-id="north-3" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
18219
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18220
|
+
</div>
|
|
18221
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18222
|
+
<div class="table-cell-content overflow-hidden">N-1043</div>
|
|
18223
|
+
</div>
|
|
18224
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18225
|
+
<div class="table-cell-content overflow-hidden">Eva Kruger</div>
|
|
18226
|
+
</div>
|
|
18227
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="destination" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18228
|
+
<div class="table-cell-content overflow-hidden">Bremen</div>
|
|
18229
|
+
</div>
|
|
18230
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="departure" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18231
|
+
<div class="table-cell-content overflow-hidden">08:50</div>
|
|
18232
|
+
</div>
|
|
18233
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18234
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
18235
|
+
</div>
|
|
18236
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18237
|
+
<div class="table-cell-content overflow-hidden">
|
|
18238
|
+
</div>
|
|
18239
|
+
</div>
|
|
18240
|
+
</div>
|
|
18241
|
+
<div id="north-4" class="table-row table-row-expanded-data bg-white" data-index="4" data-row-id="north-4" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
18242
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18243
|
+
</div>
|
|
18244
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18245
|
+
<div class="table-cell-content overflow-hidden">N-1044</div>
|
|
18246
|
+
</div>
|
|
18247
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18248
|
+
<div class="table-cell-content overflow-hidden">Jonas Brandt</div>
|
|
18249
|
+
</div>
|
|
18250
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="destination" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18251
|
+
<div class="table-cell-content overflow-hidden">Lubeck</div>
|
|
18252
|
+
</div>
|
|
18253
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="departure" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18254
|
+
<div class="table-cell-content overflow-hidden">09:15</div>
|
|
18255
|
+
</div>
|
|
18256
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18257
|
+
<div class="table-cell-content overflow-hidden">Delayed</div>
|
|
18258
|
+
</div>
|
|
18259
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18260
|
+
<div class="table-cell-content overflow-hidden">
|
|
18261
|
+
</div>
|
|
18262
|
+
</div>
|
|
18263
|
+
</div>
|
|
18264
|
+
<div id="north-5" class="table-row table-row-expanded-data bg-white" data-index="5" data-row-id="north-5" role="row" style="overflow: hidden; opacity: 1; height: auto; transform: none;">
|
|
18265
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18266
|
+
</div>
|
|
18267
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="vehicle" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
18268
|
+
<div class="table-cell-content overflow-hidden">N-1045</div>
|
|
18269
|
+
</div>
|
|
18270
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="driver" role="cell" aria-colindex="3" style="grid-area: 1 / 3 / span 1 / span 1;">
|
|
18271
|
+
<div class="table-cell-content overflow-hidden">Nora Seidel</div>
|
|
18272
|
+
</div>
|
|
18273
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="destination" role="cell" aria-colindex="4" style="grid-area: 1 / 4 / span 1 / span 1;">
|
|
18274
|
+
<div class="table-cell-content overflow-hidden">Rostock</div>
|
|
18275
|
+
</div>
|
|
18276
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="departure" role="cell" aria-colindex="5" style="grid-area: 1 / 5 / span 1 / span 1;">
|
|
18277
|
+
<div class="table-cell-content overflow-hidden">09:40</div>
|
|
18278
|
+
</div>
|
|
18279
|
+
<div class="table-cell table-align-left table-vertical-align-middle" data-column="status" role="cell" aria-colindex="6" style="grid-area: 1 / 6 / span 1 / span 1;">
|
|
18280
|
+
<div class="table-cell-content overflow-hidden">Ready</div>
|
|
18281
|
+
</div>
|
|
18282
|
+
<div class="table-cell table-align-right table-vertical-align-middle" data-column="actions" role="cell" aria-colindex="7" style="grid-area: 1 / 7 / span 1 / span 1;">
|
|
18283
|
+
<div class="table-cell-content overflow-hidden">
|
|
18284
|
+
</div>
|
|
18285
|
+
</div>
|
|
18286
|
+
</div>
|
|
18287
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="6" data-row-id="east" role="row">
|
|
18288
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18289
|
+
<div class="table-selection-control">
|
|
18290
|
+
<label class="checkbox" tabindex="0">
|
|
18291
|
+
<input type="checkbox" class="">
|
|
18292
|
+
<span class="checkbox-text">
|
|
18293
|
+
</span>
|
|
18294
|
+
</label>
|
|
18295
|
+
</div>
|
|
18296
|
+
</div>
|
|
18297
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18298
|
+
<div class="table-cell-content">
|
|
18299
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18300
|
+
<div class="display-flex align-items-center gap-10">
|
|
18301
|
+
<span class="text-bold">East region</span>
|
|
18302
|
+
<span class="text-color-dark">6 departures</span>
|
|
18303
|
+
</div>
|
|
18304
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
18305
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18306
|
+
</span>
|
|
18307
|
+
</button>
|
|
18308
|
+
</div>
|
|
18309
|
+
</div>
|
|
18310
|
+
</div>
|
|
18311
|
+
</div>
|
|
18312
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="7" data-row-id="south" role="row">
|
|
18313
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18314
|
+
<div class="table-selection-control">
|
|
18315
|
+
<label class="checkbox" tabindex="0">
|
|
18316
|
+
<input type="checkbox" class="">
|
|
18317
|
+
<span class="checkbox-text">
|
|
18318
|
+
</span>
|
|
18319
|
+
</label>
|
|
18320
|
+
</div>
|
|
18321
|
+
</div>
|
|
18322
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18323
|
+
<div class="table-cell-content">
|
|
18324
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18325
|
+
<div class="display-flex align-items-center gap-10">
|
|
18326
|
+
<span class="text-bold">South region</span>
|
|
18327
|
+
<span class="text-color-dark">5 departures</span>
|
|
18328
|
+
</div>
|
|
18329
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
18330
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18331
|
+
</span>
|
|
18332
|
+
</button>
|
|
18333
|
+
</div>
|
|
18334
|
+
</div>
|
|
18335
|
+
</div>
|
|
18336
|
+
</div>
|
|
18337
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="8" data-row-id="west" role="row">
|
|
18338
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18339
|
+
<div class="table-selection-control">
|
|
18340
|
+
<label class="checkbox" tabindex="0">
|
|
18341
|
+
<input type="checkbox" class="">
|
|
18342
|
+
<span class="checkbox-text">
|
|
18343
|
+
</span>
|
|
18344
|
+
</label>
|
|
18345
|
+
</div>
|
|
18346
|
+
</div>
|
|
18347
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18348
|
+
<div class="table-cell-content">
|
|
18349
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18350
|
+
<div class="display-flex align-items-center gap-10">
|
|
18351
|
+
<span class="text-bold">West region</span>
|
|
18352
|
+
<span class="text-color-dark">6 departures</span>
|
|
18353
|
+
</div>
|
|
18354
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
18355
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18356
|
+
</span>
|
|
18357
|
+
</button>
|
|
18358
|
+
</div>
|
|
18359
|
+
</div>
|
|
18360
|
+
</div>
|
|
18361
|
+
</div>
|
|
18362
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="9" data-row-id="central" role="row">
|
|
18363
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18364
|
+
<div class="table-selection-control">
|
|
18365
|
+
<label class="checkbox" tabindex="0">
|
|
18366
|
+
<input type="checkbox" class="">
|
|
18367
|
+
<span class="checkbox-text">
|
|
18368
|
+
</span>
|
|
18369
|
+
</label>
|
|
18370
|
+
</div>
|
|
18371
|
+
</div>
|
|
18372
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18373
|
+
<div class="table-cell-content">
|
|
18374
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18375
|
+
<div class="display-flex align-items-center gap-10">
|
|
18376
|
+
<span class="text-bold">Central region</span>
|
|
18377
|
+
<span class="text-color-dark">5 departures</span>
|
|
18378
|
+
</div>
|
|
18379
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
18380
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18381
|
+
</span>
|
|
18382
|
+
</button>
|
|
18383
|
+
</div>
|
|
18384
|
+
</div>
|
|
18385
|
+
</div>
|
|
18386
|
+
</div>
|
|
18387
|
+
<div class="table-row table-row-group table-row-group-selectable table-row-no-hover" data-index="10" data-row-id="southwest" role="row">
|
|
18388
|
+
<div class="table-cell table-selection-cell table-vertical-align-middle" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
18389
|
+
<div class="table-selection-control">
|
|
18390
|
+
<label class="checkbox" tabindex="0">
|
|
18391
|
+
<input type="checkbox" class="">
|
|
18392
|
+
<span class="checkbox-text">
|
|
18393
|
+
</span>
|
|
18394
|
+
</label>
|
|
18395
|
+
</div>
|
|
18396
|
+
</div>
|
|
18397
|
+
<div class="table-cell table-group-cell" role="cell" aria-colspan="6">
|
|
18398
|
+
<div class="table-cell-content">
|
|
18399
|
+
<div class="display-flex align-items-center justify-content-between gap-15 width-100pct">
|
|
18400
|
+
<div class="display-flex align-items-center gap-10">
|
|
18401
|
+
<span class="text-bold">Southwest region</span>
|
|
18402
|
+
<span class="text-color-dark">6 departures</span>
|
|
18403
|
+
</div>
|
|
18404
|
+
<button type="button" class="btn btn-muted btn-xs btn-icon-only btn-component table-expander-button" tabindex="0">
|
|
18405
|
+
<span class="rioglyph rioglyph-chevron-down">
|
|
18406
|
+
</span>
|
|
18407
|
+
</button>
|
|
18408
|
+
</div>
|
|
18409
|
+
</div>
|
|
18410
|
+
</div>
|
|
18411
|
+
</div>
|
|
18412
|
+
</div>
|
|
18413
|
+
</div>
|
|
18414
|
+
```
|
|
18415
|
+
|
|
18416
|
+
#### Props (json)
|
|
18417
|
+
|
|
18418
|
+
```json
|
|
18419
|
+
rowClassName={(row) => (row.disabled ? 'my-class-name' : '')}
|
|
18420
|
+
```
|
|
18421
|
+
|
|
18422
|
+
## Row animation
|
|
18423
|
+
|
|
18424
|
+
### Example: Example 42
|
|
18425
|
+
|
|
18426
|
+
Remove row Reset table
|
|
18427
|
+
|
|
18428
|
+
Id
|
|
18429
|
+
|
|
18430
|
+
Name
|
|
18431
|
+
|
|
18432
|
+
VIN
|
|
18433
|
+
|
|
18434
|
+
Status
|
|
18435
|
+
|
|
18436
|
+
1
|
|
18437
|
+
|
|
18438
|
+
Lorem
|
|
18439
|
+
|
|
18440
|
+
7354
|
|
18441
|
+
|
|
18442
|
+
Active
|
|
18443
|
+
|
|
18444
|
+
2
|
|
18445
|
+
|
|
18446
|
+
Ipsum
|
|
18447
|
+
|
|
18448
|
+
456457
|
|
18449
|
+
|
|
18450
|
+
Inactive
|
|
18451
|
+
|
|
18452
|
+
3
|
|
18453
|
+
|
|
18454
|
+
Dolor
|
|
18455
|
+
|
|
18456
|
+
895
|
|
18457
|
+
|
|
18458
|
+
Active
|
|
18459
|
+
|
|
18460
|
+
4
|
|
18461
|
+
|
|
18462
|
+
Sit
|
|
18463
|
+
|
|
18464
|
+
3456
|
|
18465
|
+
|
|
18466
|
+
Active
|
|
18467
|
+
|
|
18468
|
+
5
|
|
18469
|
+
|
|
18470
|
+
Amet
|
|
18471
|
+
|
|
18472
|
+
2445
|
|
18473
|
+
|
|
18474
|
+
Active
|
|
18475
|
+
|
|
18476
|
+
6
|
|
18477
|
+
|
|
18478
|
+
Consectetur
|
|
18479
|
+
|
|
18480
|
+
878
|
|
18481
|
+
|
|
18482
|
+
Active
|
|
18483
|
+
|
|
18484
|
+
#### React (tsx)
|
|
18485
|
+
|
|
18486
|
+
```tsx
|
|
18487
|
+
import { useState } from 'react';
|
|
18488
|
+
|
|
18489
|
+
import Button from '@rio-cloud/rio-uikit/Button';
|
|
18490
|
+
import Table, { TableBody, TableColumn, TableHeader, TableHeaderColumn, TableRow } from '@rio-cloud/rio-uikit/Table';
|
|
18491
|
+
import TableToolbar, { TableToolbarColumn } from '@rio-cloud/rio-uikit/TableToolbar';
|
|
18492
|
+
import useSorting from '@rio-cloud/rio-uikit/useSorting';
|
|
18493
|
+
|
|
18494
|
+
type TableRowAnimationItem = {
|
|
18495
|
+
id: number;
|
|
18496
|
+
name: string;
|
|
18497
|
+
vin: string;
|
|
18498
|
+
status: string;
|
|
18499
|
+
};
|
|
18500
|
+
|
|
18501
|
+
const tableData: TableRowAnimationItem[] = [
|
|
18502
|
+
{
|
|
18503
|
+
id: 1,
|
|
18504
|
+
name: 'Lorem',
|
|
18505
|
+
vin: '7354',
|
|
18506
|
+
status: 'Active',
|
|
18507
|
+
},
|
|
18508
|
+
{
|
|
18509
|
+
id: 2,
|
|
18510
|
+
name: 'Ipsum',
|
|
18511
|
+
vin: '456457',
|
|
18512
|
+
status: 'Inactive',
|
|
18513
|
+
},
|
|
18514
|
+
{
|
|
18515
|
+
id: 3,
|
|
18516
|
+
name: 'Dolor',
|
|
18517
|
+
vin: '895',
|
|
18518
|
+
status: 'Active',
|
|
18519
|
+
},
|
|
18520
|
+
{
|
|
18521
|
+
id: 4,
|
|
18522
|
+
name: 'Sit',
|
|
18523
|
+
vin: '3456',
|
|
18524
|
+
status: 'Active',
|
|
18525
|
+
},
|
|
18526
|
+
{
|
|
18527
|
+
id: 5,
|
|
18528
|
+
name: 'Amet',
|
|
18529
|
+
vin: '2445',
|
|
18530
|
+
status: 'Active',
|
|
18531
|
+
},
|
|
18532
|
+
{
|
|
18533
|
+
id: 6,
|
|
18534
|
+
name: 'Consectetur',
|
|
18535
|
+
vin: '878',
|
|
18536
|
+
status: 'Active',
|
|
18537
|
+
},
|
|
18538
|
+
];
|
|
18539
|
+
|
|
18540
|
+
const TableRowAnimationExample = () => {
|
|
18541
|
+
const [data, setData] = useState(tableData);
|
|
18542
|
+
|
|
18543
|
+
const { sortedItems, sortKey, sortDirection, setSortKey, setSortDirection } = useSorting(data, 'id');
|
|
18544
|
+
|
|
18545
|
+
const handleRemoveRow = (fatalRow: number) => {
|
|
18546
|
+
setData(previousData => previousData.filter(item => item.id !== fatalRow));
|
|
18547
|
+
};
|
|
18548
|
+
|
|
18549
|
+
const handleReset = () => setData(tableData);
|
|
18550
|
+
|
|
18551
|
+
const handleSortChange = (columnKey: string, direction: 'asc' | 'desc') => {
|
|
18552
|
+
setSortKey(columnKey as keyof TableRowAnimationItem);
|
|
18553
|
+
setSortDirection(direction);
|
|
18554
|
+
};
|
|
18555
|
+
|
|
18556
|
+
return (
|
|
18557
|
+
<div>
|
|
18558
|
+
<TableToolbar disableResponsiveCollapse>
|
|
18559
|
+
<TableToolbarColumn>
|
|
18560
|
+
<div className='btn-toolbar'>
|
|
18561
|
+
<Button bsStyle={Button.PRIMARY} onClick={() => handleRemoveRow(3)}>
|
|
18562
|
+
Remove row
|
|
18563
|
+
</Button>
|
|
16803
18564
|
<Button onClick={handleReset}>Reset table</Button>
|
|
16804
18565
|
</div>
|
|
16805
18566
|
</TableToolbarColumn>
|
|
@@ -17738,7 +19499,7 @@ bottom
|
|
|
17738
19499
|
|
|
17739
19500
|
Table flags
|
|
17740
19501
|
|
|
17741
|
-
Selection column Virtualized 3rd row sticky
|
|
19502
|
+
Selection column Selection checkbox top aligned Virtualized 3rd row sticky
|
|
17742
19503
|
|
|
17743
19504
|
#### React (tsx)
|
|
17744
19505
|
|
|
@@ -17785,18 +19546,14 @@ const styleToggles: { key: keyof DemoTableStyle; label: string }[] = [
|
|
|
17785
19546
|
|
|
17786
19547
|
type DemoTableFlags = {
|
|
17787
19548
|
showSelectionColumn: boolean;
|
|
19549
|
+
selectionCheckboxVerticalAlignmentTop: boolean;
|
|
17788
19550
|
virtualizedRows: boolean;
|
|
17789
19551
|
stickyThirdRow: boolean;
|
|
17790
19552
|
};
|
|
17791
19553
|
|
|
17792
|
-
const flagToggles: { key: keyof DemoTableFlags; label: string }[] = [
|
|
17793
|
-
{ key: 'showSelectionColumn', label: 'Selection column' },
|
|
17794
|
-
{ key: 'virtualizedRows', label: 'Virtualized' },
|
|
17795
|
-
{ key: 'stickyThirdRow', label: '3rd row sticky' },
|
|
17796
|
-
];
|
|
17797
|
-
|
|
17798
19554
|
const defaultTableFlags: DemoTableFlags = {
|
|
17799
19555
|
showSelectionColumn: false,
|
|
19556
|
+
selectionCheckboxVerticalAlignmentTop: false,
|
|
17800
19557
|
virtualizedRows: false,
|
|
17801
19558
|
stickyThirdRow: false,
|
|
17802
19559
|
};
|
|
@@ -17899,6 +19656,17 @@ const TableWithSettingsExample = () => {
|
|
|
17899
19656
|
setColumns(demoTableColumnsForComponents.map(column => ({ ...column })));
|
|
17900
19657
|
};
|
|
17901
19658
|
|
|
19659
|
+
const flagToggles: { key: keyof DemoTableFlags; label: string; disabled?: boolean }[] = [
|
|
19660
|
+
{ key: 'showSelectionColumn', label: 'Selection column' },
|
|
19661
|
+
{
|
|
19662
|
+
key: 'selectionCheckboxVerticalAlignmentTop',
|
|
19663
|
+
label: 'Selection checkbox top aligned',
|
|
19664
|
+
disabled: !tableFlags.showSelectionColumn,
|
|
19665
|
+
},
|
|
19666
|
+
{ key: 'virtualizedRows', label: 'Virtualized' },
|
|
19667
|
+
{ key: 'stickyThirdRow', label: '3rd row sticky' },
|
|
19668
|
+
];
|
|
19669
|
+
|
|
17902
19670
|
const cardSortingSelectOptions = sortableColumns.map(column => ({
|
|
17903
19671
|
id: column.key,
|
|
17904
19672
|
label: column.label,
|
|
@@ -17969,6 +19737,7 @@ const TableWithSettingsExample = () => {
|
|
|
17969
19737
|
cardsStyle={demoTableCardsStyle}
|
|
17970
19738
|
{...tableStyle}
|
|
17971
19739
|
showSelectionColumn={tableFlags.showSelectionColumn}
|
|
19740
|
+
selectionCheckboxVerticalAlignment={tableFlags.selectionCheckboxVerticalAlignmentTop ? 'top' : 'middle'}
|
|
17972
19741
|
virtualizedRows={isTableView && tableFlags.virtualizedRows}
|
|
17973
19742
|
sortBy={String(displayedSortKey)}
|
|
17974
19743
|
sortDirection={sortDirection}
|
|
@@ -17987,7 +19756,6 @@ const TableWithSettingsExample = () => {
|
|
|
17987
19756
|
sortable={column.sortable}
|
|
17988
19757
|
draggable={column.draggable}
|
|
17989
19758
|
icon={column.icon}
|
|
17990
|
-
verticalAlign={column.verticalAlign}
|
|
17991
19759
|
resizeable
|
|
17992
19760
|
minResizeWidth={100}
|
|
17993
19761
|
maxResizeWidth={500}
|
|
@@ -18012,6 +19780,7 @@ const TableWithSettingsExample = () => {
|
|
|
18012
19780
|
key={column.key}
|
|
18013
19781
|
columnKey={column.key}
|
|
18014
19782
|
horizontalAlign={column.horizontalAlign}
|
|
19783
|
+
verticalAlign={column.verticalAlign}
|
|
18015
19784
|
>
|
|
18016
19785
|
<div className='max-width-100'>
|
|
18017
19786
|
<LicensePlate>{row.licensePlate}</LicensePlate>
|
|
@@ -18026,6 +19795,7 @@ const TableWithSettingsExample = () => {
|
|
|
18026
19795
|
key={column.key}
|
|
18027
19796
|
columnKey={column.key}
|
|
18028
19797
|
horizontalAlign={column.horizontalAlign}
|
|
19798
|
+
verticalAlign={column.verticalAlign}
|
|
18029
19799
|
>
|
|
18030
19800
|
<div className='margin-bottom-3'>{row.route.name}</div>
|
|
18031
19801
|
<div>
|
|
@@ -18042,6 +19812,7 @@ const TableWithSettingsExample = () => {
|
|
|
18042
19812
|
key={column.key}
|
|
18043
19813
|
columnKey={column.key}
|
|
18044
19814
|
horizontalAlign={column.horizontalAlign}
|
|
19815
|
+
verticalAlign={column.verticalAlign}
|
|
18045
19816
|
>
|
|
18046
19817
|
<div>{row.cargo}</div>
|
|
18047
19818
|
</TableColumn>
|
|
@@ -18232,7 +20003,7 @@ export default TableWithSettingsExample;
|
|
|
18232
20003
|
</div>
|
|
18233
20004
|
</div>
|
|
18234
20005
|
<div class="dropdown btn-group">
|
|
18235
|
-
<button type="button" id="
|
|
20006
|
+
<button type="button" id="k4fkypb9c6p" class="btn btn-default btn-md btn-component dropdown-toggle" tabindex="0">
|
|
18236
20007
|
<span class="display-inline-flex align-items-center gap-5">
|
|
18237
20008
|
<span class="rioglyph rioglyph-table-view">
|
|
18238
20009
|
</span>
|
|
@@ -18248,7 +20019,7 @@ export default TableWithSettingsExample;
|
|
|
18248
20019
|
<div class="table table-view-table shadow-default border table-rounded table-has-head table-has-footer" role="table" style="--table-columns: minmax(0, 180px) minmax(0, 280px) minmax(50px, 1fr); --table-areas: "table-col-1 table-col-2 table-col-3"; --table-cards-min: 280px; --table-cards-max: 380px; --table-column-count: 3; --table-sticky-reference-top: var(--table-sticky-offset); --table-width: 908px;" aria-colcount="3">
|
|
18249
20020
|
<div class="table-head" role="rowgroup">
|
|
18250
20021
|
<div class="table-head-grid" role="row" style="grid-template-rows: repeat(1, auto);">
|
|
18251
|
-
<div class="table-head-cell table-head-cell-sortable table-head-cell-draggable table-head-cell-resizable table-head-cell-has-column-divider table-align-left table-vertical-align-
|
|
20022
|
+
<div class="table-head-cell table-head-cell-sortable table-head-cell-draggable table-head-cell-resizable table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="licensePlate" role="columnheader" aria-colindex="1" aria-rowindex="1" aria-sort="ascending" style="grid-area: 1 / 1 / span 1 / span 1; transition: transform linear;">
|
|
18252
20023
|
<div class="table-head-cell-content">
|
|
18253
20024
|
<div class="table-head-cell-content-row">
|
|
18254
20025
|
<button type="button" class="table-head-button">
|
|
@@ -18263,7 +20034,7 @@ export default TableWithSettingsExample;
|
|
|
18263
20034
|
<div class="table-column-resize-handle">
|
|
18264
20035
|
</div>
|
|
18265
20036
|
</div>
|
|
18266
|
-
<div class="table-head-cell table-head-cell-sortable table-head-cell-draggable table-head-cell-resizable table-head-cell-has-column-divider table-align-left table-vertical-align-
|
|
20037
|
+
<div class="table-head-cell table-head-cell-sortable table-head-cell-draggable table-head-cell-resizable table-head-cell-has-column-divider table-align-left table-vertical-align-middle" data-column="route" role="columnheader" aria-colindex="2" aria-rowindex="1" aria-sort="none" style="grid-area: 1 / 2 / span 1 / span 1; transition: transform linear;">
|
|
18267
20038
|
<div class="table-head-cell-content">
|
|
18268
20039
|
<div class="table-head-cell-content-row">
|
|
18269
20040
|
<button type="button" class="table-head-button">
|
|
@@ -18278,12 +20049,12 @@ export default TableWithSettingsExample;
|
|
|
18278
20049
|
<div class="table-column-resize-handle">
|
|
18279
20050
|
</div>
|
|
18280
20051
|
</div>
|
|
18281
|
-
<div class="table-head-cell table-head-cell-draggable table-align-left table-vertical-align-
|
|
20052
|
+
<div class="table-head-cell table-head-cell-draggable table-align-left table-vertical-align-middle" data-column="cargo" role="columnheader" aria-colindex="3" aria-rowindex="1" style="grid-area: 1 / 3 / span 1 / span 1; transition: transform linear;">
|
|
18282
20053
|
<div class="table-head-cell-content">
|
|
18283
20054
|
<div class="table-head-cell-content-row">
|
|
18284
20055
|
<span class="table-head-label-wrapper table-head-drag-label" tabindex="0" aria-disabled="false" aria-roledescription="sortable" aria-describedby="DndDescribedBy-7">
|
|
18285
20056
|
<span class="table-head-label">
|
|
18286
|
-
<span class="display-
|
|
20057
|
+
<span class="display-flex align-items-center gap-5">
|
|
18287
20058
|
<span class="text-color-dark rioglyph rioglyph-comment">
|
|
18288
20059
|
</span>
|
|
18289
20060
|
<span>Comment</span>
|
|
@@ -19130,10 +20901,10 @@ export default TableWithSettingsExample;
|
|
|
19130
20901
|
</div>
|
|
19131
20902
|
<div class="table-footer" role="rowgroup">
|
|
19132
20903
|
<div class="table-row table-row-footer" role="row">
|
|
19133
|
-
<div class="table-cell table-footer-cell table-align-left table-vertical-align-
|
|
20904
|
+
<div class="table-cell table-footer-cell table-align-left table-vertical-align-middle" data-column="licensePlate" role="cell" aria-colindex="1" style="grid-area: 1 / 1 / span 1 / span 1;">
|
|
19134
20905
|
<div class="table-cell-content overflow-hidden">Trucks: 30</div>
|
|
19135
20906
|
</div>
|
|
19136
|
-
<div class="table-cell table-footer-cell table-align-left table-vertical-align-
|
|
20907
|
+
<div class="table-cell table-footer-cell table-align-left table-vertical-align-middle" data-column="route" role="cell" aria-colindex="2" style="grid-area: 1 / 2 / span 1 / span 1;">
|
|
19137
20908
|
<div class="table-cell-content overflow-hidden">Total: 17490 km</div>
|
|
19138
20909
|
</div>
|
|
19139
20910
|
</div>
|
|
@@ -19557,6 +21328,12 @@ export default TableWithSettingsExample;
|
|
|
19557
21328
|
<span>Selection column</span>
|
|
19558
21329
|
</span>
|
|
19559
21330
|
</label>
|
|
21331
|
+
<label class="checkbox disabled" tabindex="0">
|
|
21332
|
+
<input type="checkbox" disabled="" class="">
|
|
21333
|
+
<span class="checkbox-text">
|
|
21334
|
+
<span>Selection checkbox top aligned</span>
|
|
21335
|
+
</span>
|
|
21336
|
+
</label>
|
|
19560
21337
|
<label class="checkbox" tabindex="0">
|
|
19561
21338
|
<input type="checkbox" class="">
|
|
19562
21339
|
<span class="checkbox-text">
|