@patternfly/react-table 5.4.0-prerelease.3 → 5.4.0-prerelease.30
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/CHANGELOG.md +118 -0
- package/README.md +2 -17
- package/components/package.json +1 -1
- package/deprecated/package.json +1 -1
- package/dist/dynamic/components/Table/package.json +1 -1
- package/dist/dynamic/components/Table/utils/decorators/package.json +1 -1
- package/dist/dynamic/components/Table/utils/package.json +1 -1
- package/dist/dynamic/deprecated/components/Table/base/package.json +1 -1
- package/dist/dynamic/deprecated/components/Table/package.json +1 -1
- package/dist/dynamic/deprecated/components/package.json +1 -1
- package/dist/esm/components/Table/ActionsColumn.js.map +1 -1
- package/dist/esm/components/Table/RowWrapper.js.map +1 -1
- package/dist/esm/components/Table/SortColumn.js.map +1 -1
- package/dist/esm/components/Table/Table.js.map +1 -1
- package/dist/esm/components/Table/TableText.js.map +1 -1
- package/dist/esm/components/Table/TableTypes.d.ts +22 -22
- package/dist/esm/components/Table/TableTypes.d.ts.map +1 -1
- package/dist/esm/components/Table/Td.js.map +1 -1
- package/dist/esm/components/Table/Th.js.map +1 -1
- package/dist/esm/components/Table/Tr.d.ts +2 -0
- package/dist/esm/components/Table/Tr.d.ts.map +1 -1
- package/dist/esm/components/Table/Tr.js +2 -2
- package/dist/esm/components/Table/Tr.js.map +1 -1
- package/dist/esm/components/Table/base/columns-are-equal.js.map +1 -1
- package/dist/esm/components/Table/base/evaluate-transforms.js.map +1 -1
- package/dist/esm/components/Table/base/merge-props.js.map +1 -1
- package/dist/esm/components/Table/base/provider.js.map +1 -1
- package/dist/esm/components/Table/base/types.d.ts +10 -10
- package/dist/esm/components/Table/base/types.d.ts.map +1 -1
- package/dist/esm/components/Table/utils/decorators/compoundExpand.js.map +1 -1
- package/dist/esm/components/Table/utils/decorators/editable.js.map +1 -1
- package/dist/esm/components/Table/utils/decorators/favoritable.js.map +1 -1
- package/dist/esm/components/Table/utils/decorators/selectable.js.map +1 -1
- package/dist/esm/components/Table/utils/decorators/sortable.js.map +1 -1
- package/dist/esm/components/Table/utils/headerUtils.js.map +1 -1
- package/dist/esm/components/Table/utils/utils.js.map +1 -1
- package/dist/esm/demos/DashboardWrapper.js.map +1 -1
- package/dist/esm/deprecated/components/Table/Body.d.ts +1 -1
- package/dist/esm/deprecated/components/Table/Body.d.ts.map +1 -1
- package/dist/esm/deprecated/components/Table/Body.js.map +1 -1
- package/dist/esm/deprecated/components/Table/BodyCell.js.map +1 -1
- package/dist/esm/deprecated/components/Table/BodyWrapper.js.map +1 -1
- package/dist/esm/deprecated/components/Table/Table.js.map +1 -1
- package/dist/esm/deprecated/components/Table/base/body-row.js.map +1 -1
- package/dist/esm/deprecated/components/Table/base/body.js.map +1 -1
- package/dist/esm/deprecated/components/Table/base/header-row.js.map +1 -1
- package/dist/esm/deprecated/components/Table/base/resolve-row-key.js.map +1 -1
- package/dist/esm/test-helpers/data-helpers.js.map +1 -1
- package/dist/js/components/Table/ActionsColumn.js.map +1 -1
- package/dist/js/components/Table/CollapseColumn.js.map +1 -1
- package/dist/js/components/Table/DraggableCell.js.map +1 -1
- package/dist/js/components/Table/EditColumn.js.map +1 -1
- package/dist/js/components/Table/EditableSelectInputCell.js.map +1 -1
- package/dist/js/components/Table/EditableTextCell.js.map +1 -1
- package/dist/js/components/Table/FavoritesCell.js.map +1 -1
- package/dist/js/components/Table/HeaderCellInfoWrapper.js.map +1 -1
- package/dist/js/components/Table/RowWrapper.js +0 -1
- package/dist/js/components/Table/RowWrapper.js.map +1 -1
- package/dist/js/components/Table/SelectColumn.js +1 -1
- package/dist/js/components/Table/SelectColumn.js.map +1 -1
- package/dist/js/components/Table/SortColumn.js +1 -2
- package/dist/js/components/Table/SortColumn.js.map +1 -1
- package/dist/js/components/Table/Table.js.map +1 -1
- package/dist/js/components/Table/TableText.js +2 -2
- package/dist/js/components/Table/TableText.js.map +1 -1
- package/dist/js/components/Table/TableTypes.d.ts +22 -22
- package/dist/js/components/Table/TableTypes.d.ts.map +1 -1
- package/dist/js/components/Table/TableTypes.js +2 -6
- package/dist/js/components/Table/TableTypes.js.map +1 -1
- package/dist/js/components/Table/Td.js.map +1 -1
- package/dist/js/components/Table/Th.js.map +1 -1
- package/dist/js/components/Table/Tr.d.ts +2 -0
- package/dist/js/components/Table/Tr.d.ts.map +1 -1
- package/dist/js/components/Table/Tr.js +2 -2
- package/dist/js/components/Table/Tr.js.map +1 -1
- package/dist/js/components/Table/base/columns-are-equal.js.map +1 -1
- package/dist/js/components/Table/base/evaluate-transforms.js.map +1 -1
- package/dist/js/components/Table/base/merge-props.js.map +1 -1
- package/dist/js/components/Table/base/provider.js.map +1 -1
- package/dist/js/components/Table/base/types.d.ts +10 -10
- package/dist/js/components/Table/base/types.d.ts.map +1 -1
- package/dist/js/components/Table/base/types.js +0 -4
- package/dist/js/components/Table/base/types.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/compoundExpand.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/editable.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/favoritable.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/selectable.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/sortable.js.map +1 -1
- package/dist/js/components/Table/utils/decorators/treeRow.js.map +1 -1
- package/dist/js/components/Table/utils/headerUtils.js.map +1 -1
- package/dist/js/components/Table/utils/utils.js.map +1 -1
- package/dist/js/demos/DashboardHeader.js.map +1 -1
- package/dist/js/demos/DashboardWrapper.js.map +1 -1
- package/dist/js/deprecated/components/Table/Body.d.ts +1 -1
- package/dist/js/deprecated/components/Table/Body.d.ts.map +1 -1
- package/dist/js/deprecated/components/Table/Body.js.map +1 -1
- package/dist/js/deprecated/components/Table/BodyCell.js +0 -1
- package/dist/js/deprecated/components/Table/BodyCell.js.map +1 -1
- package/dist/js/deprecated/components/Table/BodyWrapper.js.map +1 -1
- package/dist/js/deprecated/components/Table/Table.js.map +1 -1
- package/dist/js/deprecated/components/Table/base/body-row.js.map +1 -1
- package/dist/js/deprecated/components/Table/base/body.js.map +1 -1
- package/dist/js/deprecated/components/Table/base/header-row.js.map +1 -1
- package/dist/js/deprecated/components/Table/base/resolve-row-key.js.map +1 -1
- package/dist/js/test-helpers/data-helpers.js.map +1 -1
- package/dist/umd/assets/output-C9SGt1J5.css +30664 -0
- package/dist/umd/react-table.min.js +4 -5
- package/package.json +8 -11
- package/rollup.config.mjs +8 -0
- package/src/components/Table/TableTypes.tsx +5 -5
- package/src/components/Table/Tr.tsx +4 -0
- package/src/components/Table/examples/Table.md +11 -0
- package/src/components/Table/examples/TableCompoundExpandable.tsx +1 -1
- package/src/components/Table/examples/TableEditable.tsx +313 -0
- package/src/components/Table/utils/__snapshots__/transformers.test.tsx.snap +2 -2
- package/src/demos/examples/TableColumnManagement.tsx +1 -1
- package/src/demos/examples/TableColumnManagementWithDraggable.tsx +1 -1
- package/src/deprecated/components/Table/__tests__/__snapshots__/Table.test.tsx.snap +57 -0
- package/src/deprecated/components/Table/examples/Table.md +36 -18
- package/rollup.config.js +0 -7
|
@@ -163,6 +163,9 @@ exports[`Table Actions table 1`] = `
|
|
|
163
163
|
aria-expanded="false"
|
|
164
164
|
aria-label="Kebab toggle"
|
|
165
165
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
166
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-11"
|
|
167
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
168
|
+
data-ouia-safe="true"
|
|
166
169
|
type="button"
|
|
167
170
|
>
|
|
168
171
|
<svg
|
|
@@ -237,6 +240,9 @@ exports[`Table Actions table 1`] = `
|
|
|
237
240
|
aria-expanded="false"
|
|
238
241
|
aria-label="Kebab toggle"
|
|
239
242
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
243
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-12"
|
|
244
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
245
|
+
data-ouia-safe="true"
|
|
240
246
|
type="button"
|
|
241
247
|
>
|
|
242
248
|
<svg
|
|
@@ -311,6 +317,9 @@ exports[`Table Actions table 1`] = `
|
|
|
311
317
|
aria-expanded="false"
|
|
312
318
|
aria-label="Kebab toggle"
|
|
313
319
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
320
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-13"
|
|
321
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
322
|
+
data-ouia-safe="true"
|
|
314
323
|
type="button"
|
|
315
324
|
>
|
|
316
325
|
<svg
|
|
@@ -385,6 +394,9 @@ exports[`Table Actions table 1`] = `
|
|
|
385
394
|
aria-expanded="false"
|
|
386
395
|
aria-label="Kebab toggle"
|
|
387
396
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
397
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-14"
|
|
398
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
399
|
+
data-ouia-safe="true"
|
|
388
400
|
type="button"
|
|
389
401
|
>
|
|
390
402
|
<svg
|
|
@@ -459,6 +471,9 @@ exports[`Table Actions table 1`] = `
|
|
|
459
471
|
aria-expanded="false"
|
|
460
472
|
aria-label="Kebab toggle"
|
|
461
473
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
474
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-15"
|
|
475
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
476
|
+
data-ouia-safe="true"
|
|
462
477
|
type="button"
|
|
463
478
|
>
|
|
464
479
|
<svg
|
|
@@ -533,6 +548,9 @@ exports[`Table Actions table 1`] = `
|
|
|
533
548
|
aria-expanded="false"
|
|
534
549
|
aria-label="Kebab toggle"
|
|
535
550
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
551
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-16"
|
|
552
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
553
|
+
data-ouia-safe="true"
|
|
536
554
|
type="button"
|
|
537
555
|
>
|
|
538
556
|
<svg
|
|
@@ -607,6 +625,9 @@ exports[`Table Actions table 1`] = `
|
|
|
607
625
|
aria-expanded="false"
|
|
608
626
|
aria-label="Kebab toggle"
|
|
609
627
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
628
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-17"
|
|
629
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
630
|
+
data-ouia-safe="true"
|
|
610
631
|
type="button"
|
|
611
632
|
>
|
|
612
633
|
<svg
|
|
@@ -681,6 +702,9 @@ exports[`Table Actions table 1`] = `
|
|
|
681
702
|
aria-expanded="false"
|
|
682
703
|
aria-label="Kebab toggle"
|
|
683
704
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
705
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-18"
|
|
706
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
707
|
+
data-ouia-safe="true"
|
|
684
708
|
type="button"
|
|
685
709
|
>
|
|
686
710
|
<svg
|
|
@@ -755,6 +779,9 @@ exports[`Table Actions table 1`] = `
|
|
|
755
779
|
aria-expanded="false"
|
|
756
780
|
aria-label="Kebab toggle"
|
|
757
781
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
782
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-19"
|
|
783
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
784
|
+
data-ouia-safe="true"
|
|
758
785
|
type="button"
|
|
759
786
|
>
|
|
760
787
|
<svg
|
|
@@ -5777,6 +5804,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
5777
5804
|
aria-expanded="false"
|
|
5778
5805
|
aria-label="Kebab toggle"
|
|
5779
5806
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
5807
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-1"
|
|
5808
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
5809
|
+
data-ouia-safe="true"
|
|
5780
5810
|
type="button"
|
|
5781
5811
|
>
|
|
5782
5812
|
<svg
|
|
@@ -5851,6 +5881,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
5851
5881
|
aria-expanded="false"
|
|
5852
5882
|
aria-label="Kebab toggle"
|
|
5853
5883
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
5884
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-2"
|
|
5885
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
5886
|
+
data-ouia-safe="true"
|
|
5854
5887
|
type="button"
|
|
5855
5888
|
>
|
|
5856
5889
|
<svg
|
|
@@ -5925,6 +5958,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
5925
5958
|
aria-expanded="false"
|
|
5926
5959
|
aria-label="Kebab toggle"
|
|
5927
5960
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
5961
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-3"
|
|
5962
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
5963
|
+
data-ouia-safe="true"
|
|
5928
5964
|
type="button"
|
|
5929
5965
|
>
|
|
5930
5966
|
<svg
|
|
@@ -5999,6 +6035,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
5999
6035
|
aria-expanded="false"
|
|
6000
6036
|
aria-label="Kebab toggle"
|
|
6001
6037
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6038
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-4"
|
|
6039
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6040
|
+
data-ouia-safe="true"
|
|
6002
6041
|
type="button"
|
|
6003
6042
|
>
|
|
6004
6043
|
<svg
|
|
@@ -6073,6 +6112,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6073
6112
|
aria-expanded="false"
|
|
6074
6113
|
aria-label="Kebab toggle"
|
|
6075
6114
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6115
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-5"
|
|
6116
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6117
|
+
data-ouia-safe="true"
|
|
6076
6118
|
type="button"
|
|
6077
6119
|
>
|
|
6078
6120
|
<svg
|
|
@@ -6147,6 +6189,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6147
6189
|
aria-expanded="false"
|
|
6148
6190
|
aria-label="Kebab toggle"
|
|
6149
6191
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6192
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-6"
|
|
6193
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6194
|
+
data-ouia-safe="true"
|
|
6150
6195
|
type="button"
|
|
6151
6196
|
>
|
|
6152
6197
|
<svg
|
|
@@ -6221,6 +6266,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6221
6266
|
aria-expanded="false"
|
|
6222
6267
|
aria-label="Kebab toggle"
|
|
6223
6268
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6269
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-7"
|
|
6270
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6271
|
+
data-ouia-safe="true"
|
|
6224
6272
|
type="button"
|
|
6225
6273
|
>
|
|
6226
6274
|
<svg
|
|
@@ -6295,6 +6343,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6295
6343
|
aria-expanded="false"
|
|
6296
6344
|
aria-label="Kebab toggle"
|
|
6297
6345
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6346
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-8"
|
|
6347
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6348
|
+
data-ouia-safe="true"
|
|
6298
6349
|
type="button"
|
|
6299
6350
|
>
|
|
6300
6351
|
<svg
|
|
@@ -6369,6 +6420,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6369
6420
|
aria-expanded="false"
|
|
6370
6421
|
aria-label="Kebab toggle"
|
|
6371
6422
|
class="pf-v5-c-menu-toggle pf-m-plain"
|
|
6423
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-9"
|
|
6424
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6425
|
+
data-ouia-safe="true"
|
|
6372
6426
|
type="button"
|
|
6373
6427
|
>
|
|
6374
6428
|
<svg
|
|
@@ -6443,6 +6497,9 @@ exports[`Table Simple Actions table 1`] = `
|
|
|
6443
6497
|
aria-expanded="false"
|
|
6444
6498
|
aria-label="Kebab toggle"
|
|
6445
6499
|
class="pf-v5-c-menu-toggle pf-m-plain pf-m-disabled"
|
|
6500
|
+
data-ouia-component-id="OUIA-Generated-MenuToggle-plain-10"
|
|
6501
|
+
data-ouia-component-type="PF5/MenuToggle"
|
|
6502
|
+
data-ouia-safe="true"
|
|
6446
6503
|
disabled=""
|
|
6447
6504
|
type="button"
|
|
6448
6505
|
>
|
|
@@ -22,14 +22,13 @@ import FolderIcon from '@patternfly/react-icons/dist/esm/icons/folder-icon';
|
|
|
22
22
|
import FolderOpenIcon from '@patternfly/react-icons/dist/esm/icons/folder-open-icon';
|
|
23
23
|
import SortAmountDownIcon from '@patternfly/react-icons/dist/esm/icons/sort-amount-down-icon';
|
|
24
24
|
import { SelectOption as SelectOptionDeprecated } from '@patternfly/react-core/deprecated';
|
|
25
|
-
import {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
import {
|
|
26
|
+
Select as NewSelect,
|
|
27
|
+
SelectGroup as NewSelectGroup,
|
|
28
|
+
SelectList as NewSelectList,
|
|
29
|
+
SelectOption as NewSelectOption,
|
|
30
30
|
} from '@patternfly/react-core/dist/esm/components/Select';
|
|
31
31
|
|
|
32
|
-
|
|
33
32
|
import { css } from '@patternfly/react-styles';
|
|
34
33
|
import styles from '@patternfly/react-styles/css/components/Table/table';
|
|
35
34
|
import spacing from '@patternfly/react-styles/css/utilities/Spacing/spacing';
|
|
@@ -48,7 +47,7 @@ cells: (ICell | string)[];
|
|
|
48
47
|
```
|
|
49
48
|
interface ICell {
|
|
50
49
|
/* cell contents */
|
|
51
|
-
title?:
|
|
50
|
+
title?: React.ReactNode;
|
|
52
51
|
/** transformations applied to the header cell */
|
|
53
52
|
transforms?: ITransform[];
|
|
54
53
|
/** transformations applied to the cells within the column's body */
|
|
@@ -111,7 +110,7 @@ interface IRow extends RowType {
|
|
|
111
110
|
noPadding?: boolean;
|
|
112
111
|
}
|
|
113
112
|
interface IRowCell {
|
|
114
|
-
title?:
|
|
113
|
+
title?: React.ReactNode | RowCellContent;
|
|
115
114
|
props?: any;
|
|
116
115
|
formatters?: IFormatter[];
|
|
117
116
|
}
|
|
@@ -122,6 +121,7 @@ interface IRowCell {
|
|
|
122
121
|
### Basic
|
|
123
122
|
|
|
124
123
|
```ts file="LegacyTableBasic.tsx"
|
|
124
|
+
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
### Custom row wrapper
|
|
@@ -152,6 +152,7 @@ interface RowWrapperProps {
|
|
|
152
152
|
```
|
|
153
153
|
|
|
154
154
|
```ts file="LegacyTableMisc.tsx"
|
|
155
|
+
|
|
155
156
|
```
|
|
156
157
|
|
|
157
158
|
### Sortable & wrapping column headers
|
|
@@ -169,6 +170,7 @@ Note: If you want to add a tooltip/popover to a sortable header, in the `transfo
|
|
|
169
170
|
The built in display for sorting is not fully responsive, as the column headers will be displayed per row when the screen size is small. The example below showcases how sorting may have a custom control display that can be used for small screen sizes.
|
|
170
171
|
|
|
171
172
|
```ts file="LegacyTableSortable.tsx"
|
|
173
|
+
|
|
172
174
|
```
|
|
173
175
|
|
|
174
176
|
### Sortable - custom control
|
|
@@ -176,6 +178,7 @@ The built in display for sorting is not fully responsive, as the column headers
|
|
|
176
178
|
Sorting a table may also be controlled with a toolbar. This toolbar item may also be hidden at large screen sizes and only displayed when the screen size is small to support responsive tables.
|
|
177
179
|
|
|
178
180
|
```ts file="LegacyTableSortableCustom.tsx"
|
|
181
|
+
|
|
179
182
|
```
|
|
180
183
|
|
|
181
184
|
### Selectable with checkbox
|
|
@@ -196,6 +199,7 @@ of using `td` elements, the cells in that column use `th` elements.
|
|
|
196
199
|
checking checkboxes will check intermediate rows' checkboxes.
|
|
197
200
|
|
|
198
201
|
```ts file="LegacyTableSelectable.tsx"
|
|
202
|
+
|
|
199
203
|
```
|
|
200
204
|
|
|
201
205
|
### Selectable radio input
|
|
@@ -206,6 +210,7 @@ To enable row radio selection, set the `onSelect` callback prop on the Table, an
|
|
|
206
210
|
To disable selection for a row, set `disableSelection: true` on the row definition.
|
|
207
211
|
|
|
208
212
|
```ts file="LegacyTableSelectableRadio.tsx"
|
|
213
|
+
|
|
209
214
|
```
|
|
210
215
|
|
|
211
216
|
### Clickable rows, selectable rows, and header cell tooltips/popovers
|
|
@@ -213,6 +218,7 @@ To disable selection for a row, set `disableSelection: true` on the row definiti
|
|
|
213
218
|
This selectable rows feature is intended for use when a table is used to present a list of objects in a Primary-detail view.
|
|
214
219
|
|
|
215
220
|
```ts file="LegacyTableClickable.tsx"
|
|
221
|
+
|
|
216
222
|
```
|
|
217
223
|
|
|
218
224
|
### Actions and first cell in body rows as th
|
|
@@ -222,6 +228,7 @@ To use actions you can either specify an array of actions and pass that into the
|
|
|
222
228
|
If actions menus are getting clipped by other items on the page, such as sticky columns or rows, the `Table` can be passed a `actionsMenuAppendTo` prop to adjust where the actions menu is appended.
|
|
223
229
|
|
|
224
230
|
```ts file="LegacyTableActions.tsx"
|
|
231
|
+
|
|
225
232
|
```
|
|
226
233
|
|
|
227
234
|
### Expandable
|
|
@@ -232,6 +239,7 @@ The parent row can have an `isOpen` field for managing the expanded state of the
|
|
|
232
239
|
Also, pass an `onCollapse` event handler via the prop on the Table
|
|
233
240
|
|
|
234
241
|
```ts file="LegacyTableExpandable.tsx"
|
|
242
|
+
|
|
235
243
|
```
|
|
236
244
|
|
|
237
245
|
### Compound expandable
|
|
@@ -248,26 +256,31 @@ To build a compound expandable table:
|
|
|
248
256
|
4. An `onExpand` event handler prop should be passed to the Table.
|
|
249
257
|
|
|
250
258
|
```ts file="LegacyTableCompoundExpandable.tsx"
|
|
259
|
+
|
|
251
260
|
```
|
|
252
261
|
|
|
253
262
|
### With width and breakpoint visibility modifiers
|
|
254
263
|
|
|
255
264
|
```ts file="LegacyTableCellWidth.tsx"
|
|
265
|
+
|
|
256
266
|
```
|
|
257
267
|
|
|
258
268
|
### Controlling text
|
|
259
269
|
|
|
260
270
|
```ts file="LegacyTableControllingText.tsx"
|
|
271
|
+
|
|
261
272
|
```
|
|
262
273
|
|
|
263
274
|
### Modifiers with table text
|
|
264
275
|
|
|
265
276
|
```ts file="LegacyTableTextModifiers.tsx"
|
|
277
|
+
|
|
266
278
|
```
|
|
267
279
|
|
|
268
280
|
### Empty state
|
|
269
281
|
|
|
270
282
|
```ts file="LegacyTableEmptyState.tsx"
|
|
283
|
+
|
|
271
284
|
```
|
|
272
285
|
|
|
273
286
|
### Editable rows
|
|
@@ -330,13 +343,13 @@ class EditableRowsTable extends React.Component {
|
|
|
330
343
|
],
|
|
331
344
|
rows: [
|
|
332
345
|
{
|
|
333
|
-
rowEditBtnAriaLabel: idx => `Edit row ${idx}`,
|
|
334
|
-
rowSaveBtnAriaLabel: idx => `Save edits for row ${idx}`,
|
|
335
|
-
rowCancelBtnAriaLabel: idx => `Cancel edits for row ${idx}`,
|
|
346
|
+
rowEditBtnAriaLabel: (idx) => `Edit row ${idx}`,
|
|
347
|
+
rowSaveBtnAriaLabel: (idx) => `Save edits for row ${idx}`,
|
|
348
|
+
rowCancelBtnAriaLabel: (idx) => `Cancel edits for row ${idx}`,
|
|
336
349
|
rowEditValidationRules: [
|
|
337
350
|
{
|
|
338
351
|
name: 'required',
|
|
339
|
-
validator: value => value.trim() !== '',
|
|
352
|
+
validator: (value) => value.trim() !== '',
|
|
340
353
|
errorText: 'This field is required'
|
|
341
354
|
}
|
|
342
355
|
],
|
|
@@ -537,22 +550,22 @@ class EditableRowsTable extends React.Component {
|
|
|
537
550
|
rowEditValidationRules: [
|
|
538
551
|
{
|
|
539
552
|
name: 'required',
|
|
540
|
-
validator: value => value.trim() !== '',
|
|
553
|
+
validator: (value) => value.trim() !== '',
|
|
541
554
|
errorText: 'This field is required'
|
|
542
555
|
},
|
|
543
556
|
{
|
|
544
557
|
name: 'notFoo',
|
|
545
|
-
validator: value => value.trim().toLowerCase() !== 'foo',
|
|
558
|
+
validator: (value) => value.trim().toLowerCase() !== 'foo',
|
|
546
559
|
errorText: 'Value cannot be "foo"'
|
|
547
560
|
},
|
|
548
561
|
{
|
|
549
562
|
name: 'minLength',
|
|
550
|
-
validator: value => value.trim().length >= 7,
|
|
563
|
+
validator: (value) => value.trim().length >= 7,
|
|
551
564
|
errorText: 'Value must be at least 7 characters'
|
|
552
565
|
},
|
|
553
566
|
{
|
|
554
567
|
name: 'notXyz',
|
|
555
|
-
validator: value => value.trim().toLowerCase() !== 'xyz',
|
|
568
|
+
validator: (value) => value.trim().toLowerCase() !== 'xyz',
|
|
556
569
|
errorText: 'Value cannot be xyz'
|
|
557
570
|
}
|
|
558
571
|
],
|
|
@@ -703,7 +716,7 @@ class EditableRowsTable extends React.Component {
|
|
|
703
716
|
if (!newSelected.includes(newValue)) {
|
|
704
717
|
newSelected.push(newValue);
|
|
705
718
|
} else {
|
|
706
|
-
newSelected = newSelected.filter(el => el !== newValue);
|
|
719
|
+
newSelected = newSelected.filter((el) => el !== newValue);
|
|
707
720
|
}
|
|
708
721
|
newSelectOpen = true;
|
|
709
722
|
break;
|
|
@@ -734,7 +747,7 @@ class EditableRowsTable extends React.Component {
|
|
|
734
747
|
};
|
|
735
748
|
|
|
736
749
|
this.onToggle = (isOpen, rowIndex, cellIndex) => {
|
|
737
|
-
console.log(
|
|
750
|
+
console.log('isOpen', isOpen);
|
|
738
751
|
let newRows = Array.from(this.state.rows);
|
|
739
752
|
newRows[rowIndex].cells[cellIndex].props.isSelectOpen = isOpen;
|
|
740
753
|
this.setState({
|
|
@@ -774,6 +787,7 @@ When you also pass a sort callback through the `onSort` prop, favorites sorting
|
|
|
774
787
|
If you want to exclude favorites from sorting, set `canSortFavorites={false}` on the Table.
|
|
775
788
|
|
|
776
789
|
```ts file="LegacyTableFavoritable.tsx"
|
|
790
|
+
|
|
777
791
|
```
|
|
778
792
|
|
|
779
793
|
### Tree table
|
|
@@ -803,6 +817,7 @@ aria-posinset, and aria-setsize as violations. This is an intentional choice at
|
|
|
803
817
|
the voice over technologies will recognize the flat table structure as a tree.
|
|
804
818
|
|
|
805
819
|
```ts file="LegacyTableTree.tsx"
|
|
820
|
+
|
|
806
821
|
```
|
|
807
822
|
|
|
808
823
|
### Striped
|
|
@@ -810,6 +825,7 @@ the voice over technologies will recognize the flat table structure as a tree.
|
|
|
810
825
|
To apply striping to a basic table, add the `isStriped` property to `Table`.
|
|
811
826
|
|
|
812
827
|
```ts file="LegacyTableStriped.tsx"
|
|
828
|
+
|
|
813
829
|
```
|
|
814
830
|
|
|
815
831
|
### Striped expandable
|
|
@@ -817,6 +833,7 @@ To apply striping to a basic table, add the `isStriped` property to `Table`.
|
|
|
817
833
|
To apply striping to an expandable table, add the `isStriped` and `isExpandable` properties to `Table`.
|
|
818
834
|
|
|
819
835
|
```ts file="LegacyTableStripedExpandable.tsx"
|
|
836
|
+
|
|
820
837
|
```
|
|
821
838
|
|
|
822
839
|
### Striped custom tr
|
|
@@ -824,4 +841,5 @@ To apply striping to an expandable table, add the `isStriped` and `isExpandable`
|
|
|
824
841
|
To manually control striping, use a custom row wrapper that applies the `pf-m-striped` css class for each desired row.
|
|
825
842
|
|
|
826
843
|
```ts file="LegacyTableStripedCustomTr.tsx"
|
|
844
|
+
|
|
827
845
|
```
|