@patternfly/react-core 4.227.9 → 4.228.0

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.
Files changed (48) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/dist/esm/components/Tabs/OverflowTab.d.ts +16 -0
  3. package/dist/esm/components/Tabs/OverflowTab.d.ts.map +1 -0
  4. package/dist/esm/components/Tabs/OverflowTab.js +74 -0
  5. package/dist/esm/components/Tabs/OverflowTab.js.map +1 -0
  6. package/dist/esm/components/Tabs/Tabs.d.ts +12 -0
  7. package/dist/esm/components/Tabs/Tabs.d.ts.map +1 -1
  8. package/dist/esm/components/Tabs/Tabs.js +36 -13
  9. package/dist/esm/components/Tabs/Tabs.js.map +1 -1
  10. package/dist/esm/components/TreeView/TreeView.d.ts +2 -0
  11. package/dist/esm/components/TreeView/TreeView.d.ts.map +1 -1
  12. package/dist/esm/components/TreeView/TreeView.js +3 -3
  13. package/dist/esm/components/TreeView/TreeView.js.map +1 -1
  14. package/dist/esm/components/TreeView/TreeViewListItem.d.ts +2 -0
  15. package/dist/esm/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  16. package/dist/esm/components/TreeView/TreeViewListItem.js +23 -14
  17. package/dist/esm/components/TreeView/TreeViewListItem.js.map +1 -1
  18. package/dist/js/components/Tabs/OverflowTab.d.ts +16 -0
  19. package/dist/js/components/Tabs/OverflowTab.d.ts.map +1 -0
  20. package/dist/js/components/Tabs/OverflowTab.js +78 -0
  21. package/dist/js/components/Tabs/OverflowTab.js.map +1 -0
  22. package/dist/js/components/Tabs/Tabs.d.ts +12 -0
  23. package/dist/js/components/Tabs/Tabs.d.ts.map +1 -1
  24. package/dist/js/components/Tabs/Tabs.js +36 -13
  25. package/dist/js/components/Tabs/Tabs.js.map +1 -1
  26. package/dist/js/components/TreeView/TreeView.d.ts +2 -0
  27. package/dist/js/components/TreeView/TreeView.d.ts.map +1 -1
  28. package/dist/js/components/TreeView/TreeView.js +3 -3
  29. package/dist/js/components/TreeView/TreeView.js.map +1 -1
  30. package/dist/js/components/TreeView/TreeViewListItem.d.ts +2 -0
  31. package/dist/js/components/TreeView/TreeViewListItem.d.ts.map +1 -1
  32. package/dist/js/components/TreeView/TreeViewListItem.js +23 -14
  33. package/dist/js/components/TreeView/TreeViewListItem.js.map +1 -1
  34. package/dist/styles/base-no-reset.css +9 -0
  35. package/dist/styles/base.css +9 -0
  36. package/dist/umd/react-core.css +37 -44
  37. package/dist/umd/react-core.js +132 -36
  38. package/dist/umd/react-core.min.css +6 -13
  39. package/dist/umd/react-core.min.js +4 -4
  40. package/package.json +6 -6
  41. package/src/components/Tabs/OverflowTab.tsx +141 -0
  42. package/src/components/Tabs/Tabs.tsx +72 -25
  43. package/src/components/Tabs/examples/Tabs.md +6 -1
  44. package/src/components/Tabs/examples/TabsHorizontalOverflow.tsx +67 -0
  45. package/src/components/TreeView/TreeView.tsx +5 -0
  46. package/src/components/TreeView/TreeViewListItem.tsx +31 -17
  47. package/src/components/TreeView/__tests__/__snapshots__/TreeView.test.tsx.snap +299 -299
  48. package/src/components/TreeView/examples/TreeView.md +125 -7
@@ -88,7 +88,9 @@ class DefaultTreeView extends React.Component {
88
88
  {
89
89
  name: 'Sources',
90
90
  id: 'example1-Sources',
91
- children: [{ name: 'Application 4', id: 'example1-App4', children: [{ name: 'Settings', id: 'example1-App4Settings' }] }]
91
+ children: [
92
+ { name: 'Application 4', id: 'example1-App4', children: [{ name: 'Settings', id: 'example1-App4Settings' }] }
93
+ ]
92
94
  },
93
95
  {
94
96
  name: 'Really really really long folder name that overflows the container it is in',
@@ -109,6 +111,106 @@ class DefaultTreeView extends React.Component {
109
111
  }
110
112
  ```
111
113
 
114
+ ### With separate selection and expansion
115
+
116
+ The `hasSelectableNodes` modifier will separate the expansion and selection behaviors, allowing a parent node to be selected or deselected with toggling its expansion.
117
+
118
+ ```js
119
+ import React from 'react';
120
+ import { TreeView, Button } from '@patternfly/react-core';
121
+
122
+ class SelectableNodesTreeView extends React.Component {
123
+ constructor(props) {
124
+ super(props);
125
+
126
+ this.state = { activeItems: {} };
127
+
128
+ this.onSelect = (evt, treeViewItem) => {
129
+ this.setState({
130
+ activeItems: [treeViewItem]
131
+ });
132
+ };
133
+ }
134
+
135
+ render() {
136
+ const { activeItems, allExpanded } = this.state;
137
+
138
+ const options = [
139
+ {
140
+ name: 'Application launcher',
141
+ id: 'SelNodesTreeView-AppLaunch',
142
+ children: [
143
+ {
144
+ name: 'Application 1',
145
+ id: 'SelNodesTreeView-App1',
146
+ children: [
147
+ { name: 'Settings', id: 'SelNodesTreeView-App1Settings' },
148
+ { name: 'Current', id: 'SelNodesTreeView-App1Current' }
149
+ ]
150
+ },
151
+ {
152
+ name: 'Application 2',
153
+ id: 'SelNodesTreeView-App2',
154
+ children: [
155
+ { name: 'Settings', id: 'SelNodesTreeView-App2Settings' },
156
+ {
157
+ name: 'Loader',
158
+ id: 'SelNodesTreeView-App2Loader',
159
+ children: [
160
+ { name: 'Loading App 1', id: 'SelNodesTreeView-LoadApp1' },
161
+ { name: 'Loading App 2', id: 'SelNodesTreeView-LoadApp2' },
162
+ { name: 'Loading App 3', id: 'SelNodesTreeView-LoadApp3' }
163
+ ]
164
+ }
165
+ ]
166
+ }
167
+ ],
168
+ defaultExpanded: true
169
+ },
170
+ {
171
+ name: 'Cost management',
172
+ id: 'SelNodesTreeView-Cost',
173
+ children: [
174
+ {
175
+ name: 'Application 3',
176
+ id: 'SelNodesTreeView-App3',
177
+ children: [
178
+ { name: 'Settings', id: 'SelNodesTreeView-App3Settings' },
179
+ { name: 'Current', id: 'SelNodesTreeView-App3Current' }
180
+ ]
181
+ }
182
+ ]
183
+ },
184
+ {
185
+ name: 'Sources',
186
+ id: 'SelNodesTreeView-Sources',
187
+ children: [
188
+ {
189
+ name: 'Application 4',
190
+ id: 'SelNodesTreeView-App4',
191
+ children: [{ name: 'Settings', id: 'SelNodesTreeView-App4Settings' }]
192
+ }
193
+ ]
194
+ },
195
+ {
196
+ name: 'Really really really long folder name that overflows the container it is in',
197
+ id: 'SelNodesTreeView-Long',
198
+ children: [{ name: 'Application 5', id: 'SelNodesTreeView-App5' }]
199
+ }
200
+ ];
201
+ return (
202
+ <TreeView
203
+ hasSelectableNodes
204
+ data={options}
205
+ activeItems={activeItems}
206
+ onSelect={this.onSelect}
207
+ allExpanded={allExpanded}
208
+ />
209
+ );
210
+ }
211
+ }
212
+ ```
213
+
112
214
  ### With search
113
215
 
114
216
  ```js
@@ -168,7 +270,13 @@ class SearchTreeView extends React.Component {
168
270
  {
169
271
  name: 'Sources',
170
272
  id: 'example2-Sources',
171
- children: [{ name: 'Application 4', id: 'example2-App4', children: [{ name: 'Settingexample2-s', id: 'example2-App4Settings' }] }]
273
+ children: [
274
+ {
275
+ name: 'Application 4',
276
+ id: 'example2-App4',
277
+ children: [{ name: 'Settingexample2-s', id: 'example2-App4Settings' }]
278
+ }
279
+ ]
172
280
  },
173
281
  {
174
282
  name: 'Really really really long folder name that overflows the container it is in',
@@ -357,7 +465,9 @@ class CheckboxTreeView extends React.Component {
357
465
  name: 'Really really really long folder name that overflows the container it is in',
358
466
  id: 'example3-Long',
359
467
  checkProps: { 'aria-label': 'long-check', checked: false },
360
- children: [{ name: 'Application 5', id: 'example3-App5', checkProps: { 'aria-label': 'app-5-check', checked: false } }]
468
+ children: [
469
+ { name: 'Application 5', id: 'example3-App5', checkProps: { 'aria-label': 'app-5-check', checked: false } }
470
+ ]
361
471
  }
362
472
  ];
363
473
 
@@ -522,7 +632,9 @@ class IconTreeView extends React.Component {
522
632
  {
523
633
  name: 'Sources',
524
634
  id: 'example4-Sources',
525
- children: [{ name: 'Application 4', id: 'example4-App4', children: [{ name: 'Settings', id: 'example4-App4Settings' }] }]
635
+ children: [
636
+ { name: 'Application 4', id: 'example4-App4', children: [{ name: 'Settings', id: 'example4-App4Settings' }] }
637
+ ]
526
638
  },
527
639
  {
528
640
  name: 'Really really really long folder name that overflows the container it is in',
@@ -613,7 +725,9 @@ class BadgesTreeView extends React.Component {
613
725
  {
614
726
  name: 'Sources',
615
727
  id: 'example5-Sources',
616
- children: [{ name: 'Application 4', id: 'example5-App4', children: [{ name: 'Settings', id: 'example5-App4Settings' }] }]
728
+ children: [
729
+ { name: 'Application 4', id: 'example5-App4', children: [{ name: 'Settings', id: 'example5-App4Settings' }] }
730
+ ]
617
731
  },
618
732
  {
619
733
  name: 'Really really really long folder name that overflows the container it is in',
@@ -842,7 +956,9 @@ class IconTreeView extends React.Component {
842
956
  {
843
957
  name: 'Sources',
844
958
  id: 'example7-Sources',
845
- children: [{ name: 'Application 4', id: 'example7-App4', children: [{ name: 'Settings', id: 'example7-App4Settings' }] }]
959
+ children: [
960
+ { name: 'Application 4', id: 'example7-App4', children: [{ name: 'Settings', id: 'example7-App4Settings' }] }
961
+ ]
846
962
  },
847
963
  {
848
964
  name: 'Really really really long folder name that overflows the container it is in',
@@ -911,7 +1027,9 @@ const GuidesTreeView: React.FunctionComponent = () => {
911
1027
  {
912
1028
  name: 'Sources',
913
1029
  id: 'example8-Sources',
914
- children: [{ name: 'Application 4', id: 'example8-App4', children: [{ name: 'Settings', id: 'example8-App4Settings' }] }]
1030
+ children: [
1031
+ { name: 'Application 4', id: 'example8-App4', children: [{ name: 'Settings', id: 'example8-App4Settings' }] }
1032
+ ]
915
1033
  },
916
1034
  {
917
1035
  name: 'Really really really long folder name that overflows the container it is in',