@patternfly/react-core 5.0.0-alpha.105 → 5.0.0-alpha.106
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 +4 -0
- package/dist/esm/components/AboutModal/package.json +1 -1
- package/dist/esm/components/Accordion/package.json +1 -1
- package/dist/esm/components/ActionList/package.json +1 -1
- package/dist/esm/components/Alert/package.json +1 -1
- package/dist/esm/components/Avatar/package.json +1 -1
- package/dist/esm/components/BackToTop/package.json +1 -1
- package/dist/esm/components/Backdrop/package.json +1 -1
- package/dist/esm/components/BackgroundImage/package.json +1 -1
- package/dist/esm/components/Badge/package.json +1 -1
- package/dist/esm/components/Banner/package.json +1 -1
- package/dist/esm/components/Brand/package.json +1 -1
- package/dist/esm/components/Breadcrumb/package.json +1 -1
- package/dist/esm/components/Button/package.json +1 -1
- package/dist/esm/components/CalendarMonth/package.json +1 -1
- package/dist/esm/components/Card/package.json +1 -1
- package/dist/esm/components/Checkbox/package.json +1 -1
- package/dist/esm/components/Chip/package.json +1 -1
- package/dist/esm/components/ClipboardCopy/package.json +1 -1
- package/dist/esm/components/CodeBlock/package.json +1 -1
- package/dist/esm/components/DataList/package.json +1 -1
- package/dist/esm/components/DatePicker/package.json +1 -1
- package/dist/esm/components/DescriptionList/package.json +1 -1
- package/dist/esm/components/Divider/package.json +1 -1
- package/dist/esm/components/DragDrop/package.json +1 -1
- package/dist/esm/components/Drawer/package.json +1 -1
- package/dist/esm/components/Dropdown/package.json +1 -1
- package/dist/esm/components/DualListSelector/package.json +1 -1
- package/dist/esm/components/EmptyState/package.json +1 -1
- package/dist/esm/components/ExpandableSection/package.json +1 -1
- package/dist/esm/components/FileUpload/package.json +1 -1
- package/dist/esm/components/Form/package.json +1 -1
- package/dist/esm/components/FormSelect/package.json +1 -1
- package/dist/esm/components/HelperText/package.json +1 -1
- package/dist/esm/components/Hint/package.json +1 -1
- package/dist/esm/components/Icon/package.json +1 -1
- package/dist/esm/components/InputGroup/package.json +1 -1
- package/dist/esm/components/JumpLinks/package.json +1 -1
- package/dist/esm/components/Label/package.json +1 -1
- package/dist/esm/components/List/package.json +1 -1
- package/dist/esm/components/LoginPage/package.json +1 -1
- package/dist/esm/components/Masthead/package.json +1 -1
- package/dist/esm/components/Menu/package.json +1 -1
- package/dist/esm/components/MenuToggle/package.json +1 -1
- package/dist/esm/components/Modal/package.json +1 -1
- package/dist/esm/components/MultipleFileUpload/package.json +1 -1
- package/dist/esm/components/Nav/package.json +1 -1
- package/dist/esm/components/NotificationBadge/package.json +1 -1
- package/dist/esm/components/NotificationDrawer/package.json +1 -1
- package/dist/esm/components/NumberInput/package.json +1 -1
- package/dist/esm/components/OverflowMenu/package.json +1 -1
- package/dist/esm/components/Page/package.json +1 -1
- package/dist/esm/components/Pagination/package.json +1 -1
- package/dist/esm/components/Panel/package.json +1 -1
- package/dist/esm/components/Popover/package.json +1 -1
- package/dist/esm/components/Progress/package.json +1 -1
- package/dist/esm/components/ProgressStepper/package.json +1 -1
- package/dist/esm/components/Radio/package.json +1 -1
- package/dist/esm/components/SearchInput/package.json +1 -1
- package/dist/esm/components/Select/package.json +1 -1
- package/dist/esm/components/Sidebar/package.json +1 -1
- package/dist/esm/components/SimpleList/package.json +1 -1
- package/dist/esm/components/Skeleton/package.json +1 -1
- package/dist/esm/components/SkipToContent/package.json +1 -1
- package/dist/esm/components/Slider/package.json +1 -1
- package/dist/esm/components/Spinner/package.json +1 -1
- package/dist/esm/components/Switch/package.json +1 -1
- package/dist/esm/components/Tabs/package.json +1 -1
- package/dist/esm/components/Text/package.json +1 -1
- package/dist/esm/components/TextArea/package.json +1 -1
- package/dist/esm/components/TextInput/package.json +1 -1
- package/dist/esm/components/TextInputGroup/package.json +1 -1
- package/dist/esm/components/Tile/package.json +1 -1
- package/dist/esm/components/TimePicker/package.json +1 -1
- package/dist/esm/components/Timestamp/package.json +1 -1
- package/dist/esm/components/Title/package.json +1 -1
- package/dist/esm/components/ToggleGroup/package.json +1 -1
- package/dist/esm/components/Toolbar/package.json +1 -1
- package/dist/esm/components/Tooltip/package.json +1 -1
- package/dist/esm/components/TreeView/package.json +1 -1
- package/dist/esm/components/Truncate/package.json +1 -1
- package/dist/esm/components/Wizard/hooks/package.json +1 -1
- package/dist/esm/components/Wizard/package.json +1 -1
- package/dist/esm/components/package.json +1 -1
- package/dist/esm/deprecated/components/ApplicationLauncher/package.json +1 -1
- package/dist/esm/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/esm/deprecated/components/Dropdown/package.json +1 -1
- package/dist/esm/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/esm/deprecated/components/PageHeader/package.json +1 -1
- package/dist/esm/deprecated/components/Select/package.json +1 -1
- package/dist/esm/deprecated/components/Wizard/package.json +1 -1
- package/dist/esm/deprecated/components/package.json +1 -1
- package/dist/esm/deprecated/package.json +1 -1
- package/dist/esm/helpers/Popper/thirdparty/popper-core/package.json +1 -1
- package/dist/esm/helpers/package.json +1 -1
- package/dist/esm/layouts/Bullseye/package.json +1 -1
- package/dist/esm/layouts/Flex/package.json +1 -1
- package/dist/esm/layouts/Gallery/package.json +1 -1
- package/dist/esm/layouts/Grid/package.json +1 -1
- package/dist/esm/layouts/Level/package.json +1 -1
- package/dist/esm/layouts/Split/package.json +1 -1
- package/dist/esm/layouts/Stack/package.json +1 -1
- package/dist/esm/layouts/package.json +1 -1
- package/dist/esm/next/components/package.json +1 -1
- package/dist/esm/next/package.json +1 -1
- package/dist/esm/package.json +1 -1
- package/dist/js/components/AboutModal/package.json +1 -1
- package/dist/js/components/Accordion/package.json +1 -1
- package/dist/js/components/ActionList/package.json +1 -1
- package/dist/js/components/Alert/package.json +1 -1
- package/dist/js/components/Avatar/package.json +1 -1
- package/dist/js/components/BackToTop/package.json +1 -1
- package/dist/js/components/Backdrop/package.json +1 -1
- package/dist/js/components/BackgroundImage/package.json +1 -1
- package/dist/js/components/Badge/package.json +1 -1
- package/dist/js/components/Banner/package.json +1 -1
- package/dist/js/components/Brand/package.json +1 -1
- package/dist/js/components/Breadcrumb/package.json +1 -1
- package/dist/js/components/Button/package.json +1 -1
- package/dist/js/components/CalendarMonth/package.json +1 -1
- package/dist/js/components/Card/package.json +1 -1
- package/dist/js/components/Checkbox/package.json +1 -1
- package/dist/js/components/Chip/package.json +1 -1
- package/dist/js/components/ClipboardCopy/package.json +1 -1
- package/dist/js/components/CodeBlock/package.json +1 -1
- package/dist/js/components/DataList/package.json +1 -1
- package/dist/js/components/DatePicker/package.json +1 -1
- package/dist/js/components/DescriptionList/package.json +1 -1
- package/dist/js/components/Divider/package.json +1 -1
- package/dist/js/components/DragDrop/package.json +1 -1
- package/dist/js/components/Drawer/package.json +1 -1
- package/dist/js/components/Dropdown/package.json +1 -1
- package/dist/js/components/DualListSelector/package.json +1 -1
- package/dist/js/components/EmptyState/package.json +1 -1
- package/dist/js/components/ExpandableSection/package.json +1 -1
- package/dist/js/components/FileUpload/package.json +1 -1
- package/dist/js/components/Form/package.json +1 -1
- package/dist/js/components/FormSelect/package.json +1 -1
- package/dist/js/components/HelperText/package.json +1 -1
- package/dist/js/components/Hint/package.json +1 -1
- package/dist/js/components/Icon/package.json +1 -1
- package/dist/js/components/InputGroup/package.json +1 -1
- package/dist/js/components/JumpLinks/package.json +1 -1
- package/dist/js/components/Label/package.json +1 -1
- package/dist/js/components/List/package.json +1 -1
- package/dist/js/components/LoginPage/package.json +1 -1
- package/dist/js/components/Masthead/package.json +1 -1
- package/dist/js/components/Menu/package.json +1 -1
- package/dist/js/components/MenuToggle/package.json +1 -1
- package/dist/js/components/Modal/package.json +1 -1
- package/dist/js/components/MultipleFileUpload/package.json +1 -1
- package/dist/js/components/Nav/package.json +1 -1
- package/dist/js/components/NotificationBadge/package.json +1 -1
- package/dist/js/components/NotificationDrawer/package.json +1 -1
- package/dist/js/components/NumberInput/package.json +1 -1
- package/dist/js/components/OverflowMenu/package.json +1 -1
- package/dist/js/components/Page/package.json +1 -1
- package/dist/js/components/Pagination/package.json +1 -1
- package/dist/js/components/Panel/package.json +1 -1
- package/dist/js/components/Popover/package.json +1 -1
- package/dist/js/components/Progress/package.json +1 -1
- package/dist/js/components/ProgressStepper/package.json +1 -1
- package/dist/js/components/Radio/package.json +1 -1
- package/dist/js/components/SearchInput/package.json +1 -1
- package/dist/js/components/Select/package.json +1 -1
- package/dist/js/components/Sidebar/package.json +1 -1
- package/dist/js/components/SimpleList/package.json +1 -1
- package/dist/js/components/Skeleton/package.json +1 -1
- package/dist/js/components/SkipToContent/package.json +1 -1
- package/dist/js/components/Slider/package.json +1 -1
- package/dist/js/components/Spinner/package.json +1 -1
- package/dist/js/components/Switch/package.json +1 -1
- package/dist/js/components/Tabs/package.json +1 -1
- package/dist/js/components/Text/package.json +1 -1
- package/dist/js/components/TextArea/package.json +1 -1
- package/dist/js/components/TextInput/package.json +1 -1
- package/dist/js/components/TextInputGroup/package.json +1 -1
- package/dist/js/components/Tile/package.json +1 -1
- package/dist/js/components/TimePicker/package.json +1 -1
- package/dist/js/components/Timestamp/package.json +1 -1
- package/dist/js/components/Title/package.json +1 -1
- package/dist/js/components/ToggleGroup/package.json +1 -1
- package/dist/js/components/Toolbar/package.json +1 -1
- package/dist/js/components/Tooltip/package.json +1 -1
- package/dist/js/components/TreeView/package.json +1 -1
- package/dist/js/components/Truncate/package.json +1 -1
- package/dist/js/components/Wizard/hooks/package.json +1 -1
- package/dist/js/components/Wizard/package.json +1 -1
- package/dist/js/components/package.json +1 -1
- package/dist/js/deprecated/components/ApplicationLauncher/package.json +1 -1
- package/dist/js/deprecated/components/ContextSelector/package.json +1 -1
- package/dist/js/deprecated/components/Dropdown/package.json +1 -1
- package/dist/js/deprecated/components/OptionsMenu/package.json +1 -1
- package/dist/js/deprecated/components/PageHeader/package.json +1 -1
- package/dist/js/deprecated/components/Select/package.json +1 -1
- package/dist/js/deprecated/components/Wizard/package.json +1 -1
- package/dist/js/deprecated/components/package.json +1 -1
- package/dist/js/deprecated/package.json +1 -1
- package/dist/js/helpers/Popper/thirdparty/popper-core/package.json +1 -1
- package/dist/js/helpers/package.json +1 -1
- package/dist/js/layouts/Bullseye/package.json +1 -1
- package/dist/js/layouts/Flex/package.json +1 -1
- package/dist/js/layouts/Gallery/package.json +1 -1
- package/dist/js/layouts/Grid/package.json +1 -1
- package/dist/js/layouts/Level/package.json +1 -1
- package/dist/js/layouts/Split/package.json +1 -1
- package/dist/js/layouts/Stack/package.json +1 -1
- package/dist/js/layouts/package.json +1 -1
- package/dist/js/next/components/package.json +1 -1
- package/dist/js/next/package.json +1 -1
- package/dist/js/package.json +1 -1
- package/package.json +2 -2
- package/src/demos/Card/Card.md +30 -41
- package/src/demos/Card/CardData.jsx +62 -0
- package/src/demos/PrimaryDetail.md +10 -20
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-next-next-cjs","main":"index.js","module":"./dist/js/next/index.js","typings":"index.d.ts","version":"5.0.0-alpha.
|
|
1
|
+
{"name":"@patternfly/react-core-next-next-cjs","main":"index.js","module":"./dist/js/next/index.js","typings":"index.d.ts","version":"5.0.0-alpha.105"}
|
package/dist/js/package.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"name":"@patternfly/react-core-js-cjs","main":"index.js","module":"./dist/js/index.js","typings":"index.d.ts","version":"5.0.0-alpha.
|
|
1
|
+
{"name":"@patternfly/react-core-js-cjs","main":"index.js","module":"./dist/js/index.js","typings":"index.d.ts","version":"5.0.0-alpha.105"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@patternfly/react-core",
|
|
3
|
-
"version": "5.0.0-alpha.
|
|
3
|
+
"version": "5.0.0-alpha.106",
|
|
4
4
|
"description": "This library provides a set of common React components for use with the PatternFly reference implementation.",
|
|
5
5
|
"main": "dist/js/index.js",
|
|
6
6
|
"module": "dist/esm/index.js",
|
|
@@ -71,5 +71,5 @@
|
|
|
71
71
|
"react": "^17 || ^18",
|
|
72
72
|
"react-dom": "^17 || ^18"
|
|
73
73
|
},
|
|
74
|
-
"gitHead": "
|
|
74
|
+
"gitHead": "5627bdc7f27951dc9485026dd832585760749a66"
|
|
75
75
|
}
|
package/src/demos/Card/Card.md
CHANGED
|
@@ -19,6 +19,7 @@ import swaggerIcon from './camel-swagger-java_200x150.png';
|
|
|
19
19
|
import azureIcon from './FuseConnector_Icons_AzureServices.png';
|
|
20
20
|
import restIcon from './FuseConnector_Icons_REST.png';
|
|
21
21
|
import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
|
|
22
|
+
import { data } from './CardData.jsx';
|
|
22
23
|
|
|
23
24
|
## Demos
|
|
24
25
|
|
|
@@ -84,6 +85,7 @@ import sparkIcon from './camel-spark_200x150.png';
|
|
|
84
85
|
import swaggerIcon from './camel-swagger-java_200x150.png';
|
|
85
86
|
import azureIcon from './FuseConnector_Icons_AzureServices.png';
|
|
86
87
|
import restIcon from './FuseConnector_Icons_REST.png';
|
|
88
|
+
import { data } from './CardData.jsx';
|
|
87
89
|
|
|
88
90
|
class CardViewBasic extends React.Component {
|
|
89
91
|
constructor(props) {
|
|
@@ -93,7 +95,7 @@ class CardViewBasic extends React.Component {
|
|
|
93
95
|
filters: {
|
|
94
96
|
products: []
|
|
95
97
|
},
|
|
96
|
-
|
|
98
|
+
cardData: data,
|
|
97
99
|
isChecked: false,
|
|
98
100
|
selectedItems: [],
|
|
99
101
|
areAllSelected: false,
|
|
@@ -134,7 +136,8 @@ class CardViewBasic extends React.Component {
|
|
|
134
136
|
});
|
|
135
137
|
};
|
|
136
138
|
|
|
137
|
-
this.onCardKebabDropdownToggle = (key) => {
|
|
139
|
+
this.onCardKebabDropdownToggle = (key, event) => {
|
|
140
|
+
event?.stopPropagation();
|
|
138
141
|
this.setState((prevState) => ({
|
|
139
142
|
[key]: !prevState[key]
|
|
140
143
|
}));
|
|
@@ -149,7 +152,7 @@ class CardViewBasic extends React.Component {
|
|
|
149
152
|
this.deleteItem = (item) => (event) => {
|
|
150
153
|
const filter = (getter) => (val) => getter(val) !== item.id;
|
|
151
154
|
this.setState({
|
|
152
|
-
|
|
155
|
+
cardData: this.state.cardData.filter(filter(({ id }) => id)),
|
|
153
156
|
selectedItems: this.state.selectedItems.filter(filter((id) => id))
|
|
154
157
|
});
|
|
155
158
|
};
|
|
@@ -162,7 +165,8 @@ class CardViewBasic extends React.Component {
|
|
|
162
165
|
|
|
163
166
|
this.onPerPageSelect = (_event, perPage) => {
|
|
164
167
|
this.setState({
|
|
165
|
-
perPage
|
|
168
|
+
perPage,
|
|
169
|
+
page: 1
|
|
166
170
|
});
|
|
167
171
|
};
|
|
168
172
|
|
|
@@ -264,7 +268,7 @@ class CardViewBasic extends React.Component {
|
|
|
264
268
|
|
|
265
269
|
splitCheckboxSelectAll(e) {
|
|
266
270
|
const { checked } = e.target;
|
|
267
|
-
const { isChecked,
|
|
271
|
+
const { isChecked, cardData } = this.state;
|
|
268
272
|
let collection = [];
|
|
269
273
|
|
|
270
274
|
if (checked) {
|
|
@@ -329,9 +333,9 @@ class CardViewBasic extends React.Component {
|
|
|
329
333
|
}
|
|
330
334
|
|
|
331
335
|
getAllItems() {
|
|
332
|
-
const {
|
|
336
|
+
const { cardData } = this.state;
|
|
333
337
|
const collection = [];
|
|
334
|
-
for (const items of
|
|
338
|
+
for (const items of cardData) {
|
|
335
339
|
collection.push(items.id);
|
|
336
340
|
}
|
|
337
341
|
|
|
@@ -339,31 +343,19 @@ class CardViewBasic extends React.Component {
|
|
|
339
343
|
}
|
|
340
344
|
|
|
341
345
|
updateSelected() {
|
|
342
|
-
const {
|
|
343
|
-
let rows =
|
|
346
|
+
const { cardData, selectedItems } = this.state;
|
|
347
|
+
let rows = cardData.map((post) => {
|
|
344
348
|
post.selected = selectedItems.includes(post.id);
|
|
345
349
|
return post;
|
|
346
350
|
});
|
|
347
351
|
|
|
348
352
|
this.setState({
|
|
349
|
-
|
|
353
|
+
cardData: rows
|
|
350
354
|
});
|
|
351
355
|
}
|
|
352
356
|
|
|
353
|
-
fetch(page, perPage) {
|
|
354
|
-
fetch(`https://my-json-server.typicode.com/jenny-s51/cardviewdata/posts?_page=${page}&_limit=${perPage}`)
|
|
355
|
-
.then((resp) => resp.json())
|
|
356
|
-
.then((resp) => this.setState({ res: resp, perPage, page }))
|
|
357
|
-
.then(() => this.updateSelected())
|
|
358
|
-
.catch((err) => this.setState({ error: err }));
|
|
359
|
-
}
|
|
360
|
-
|
|
361
|
-
componentDidMount() {
|
|
362
|
-
this.fetch(this.state.page, this.state.perPage);
|
|
363
|
-
}
|
|
364
|
-
|
|
365
357
|
renderPagination() {
|
|
366
|
-
const { page, perPage, totalItemCount } = this.state;
|
|
358
|
+
const { page, perPage, totalItemCount, cardData } = this.state;
|
|
367
359
|
|
|
368
360
|
const defaultPerPageOptions = [
|
|
369
361
|
{
|
|
@@ -386,12 +378,8 @@ class CardViewBasic extends React.Component {
|
|
|
386
378
|
page={page}
|
|
387
379
|
perPage={perPage}
|
|
388
380
|
perPageOptions={defaultPerPageOptions}
|
|
389
|
-
onSetPage={
|
|
390
|
-
|
|
391
|
-
}}
|
|
392
|
-
onPerPageSelect={(_evt, value) => {
|
|
393
|
-
this.fetch(1, value);
|
|
394
|
-
}}
|
|
381
|
+
onSetPage={this.onSetPage}
|
|
382
|
+
onPerPageSelect={this.onPerPageSelect}
|
|
395
383
|
variant="top"
|
|
396
384
|
isCompact
|
|
397
385
|
/>
|
|
@@ -399,7 +387,7 @@ class CardViewBasic extends React.Component {
|
|
|
399
387
|
}
|
|
400
388
|
|
|
401
389
|
buildSelectDropdown() {
|
|
402
|
-
const { splitButtonDropdownIsOpen, selectedItems, areAllSelected } = this.state;
|
|
390
|
+
const { splitButtonDropdownIsOpen, selectedItems, areAllSelected, filters, cardData } = this.state;
|
|
403
391
|
const numSelected = selectedItems.length;
|
|
404
392
|
const allSelected = areAllSelected;
|
|
405
393
|
const anySelected = numSelected > 0;
|
|
@@ -508,7 +496,7 @@ class CardViewBasic extends React.Component {
|
|
|
508
496
|
splitButtonDropdownIsOpen,
|
|
509
497
|
activeItem,
|
|
510
498
|
filters,
|
|
511
|
-
|
|
499
|
+
cardData,
|
|
512
500
|
checked,
|
|
513
501
|
selectedItems,
|
|
514
502
|
areAllSelected,
|
|
@@ -576,13 +564,6 @@ class CardViewBasic extends React.Component {
|
|
|
576
564
|
</React.Fragment>
|
|
577
565
|
);
|
|
578
566
|
|
|
579
|
-
const filtered =
|
|
580
|
-
filters.products.length > 0
|
|
581
|
-
? res.filter((card) => {
|
|
582
|
-
return filters.products.length === 0 || filters.products.includes(card.name);
|
|
583
|
-
})
|
|
584
|
-
: res;
|
|
585
|
-
|
|
586
567
|
const icons = {
|
|
587
568
|
pfIcon,
|
|
588
569
|
activeMQIcon,
|
|
@@ -595,6 +576,13 @@ class CardViewBasic extends React.Component {
|
|
|
595
576
|
restIcon,
|
|
596
577
|
swaggerIcon
|
|
597
578
|
};
|
|
579
|
+
|
|
580
|
+
const filtered =
|
|
581
|
+
filters.products.length > 0
|
|
582
|
+
? data.filter((card) => {
|
|
583
|
+
return filters.products.length === 0 || filters.products.includes(card.name);
|
|
584
|
+
})
|
|
585
|
+
: cardData.slice((page - 1) * perPage, perPage === 1 ? page * perPage : page * perPage - 1);
|
|
598
586
|
|
|
599
587
|
return (
|
|
600
588
|
<React.Fragment>
|
|
@@ -630,6 +618,7 @@ class CardViewBasic extends React.Component {
|
|
|
630
618
|
<Card
|
|
631
619
|
hasSelectableInput
|
|
632
620
|
isCompact
|
|
621
|
+
isSelectableRaised
|
|
633
622
|
key={product.name}
|
|
634
623
|
id={product.name.replace(/ /g, '-')}
|
|
635
624
|
onKeyDown={(e) => this.onKeyDown(e, product.id)}
|
|
@@ -642,14 +631,14 @@ class CardViewBasic extends React.Component {
|
|
|
642
631
|
actions: (
|
|
643
632
|
<>
|
|
644
633
|
<Dropdown
|
|
645
|
-
isOpen={this.state[key]}
|
|
634
|
+
isOpen={this.state[key] ?? false}
|
|
646
635
|
onOpenChange={(isOpen) => this.setState({ [key]: isOpen })}
|
|
647
|
-
toggle={(toggleRef) => (
|
|
636
|
+
toggle={(toggleRef: React.Ref<MenuToggleElement>) => (
|
|
648
637
|
<MenuToggle
|
|
649
638
|
ref={toggleRef}
|
|
650
639
|
aria-label={`${product.name} actions`}
|
|
651
640
|
variant="plain"
|
|
652
|
-
onClick={() => this.onCardKebabDropdownToggle(key)}
|
|
641
|
+
onClick={(e) => this.onCardKebabDropdownToggle(key, e)}
|
|
653
642
|
isExpanded={this.state[key]}
|
|
654
643
|
>
|
|
655
644
|
<EllipsisVIcon />
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
export const data = [
|
|
2
|
+
{
|
|
3
|
+
"id": 0,
|
|
4
|
+
"name": "PatternFly",
|
|
5
|
+
"description": "PatternFly is a community project that promotes design commonality and improves user experience.",
|
|
6
|
+
"icon": "pfIcon"
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
"id": 1,
|
|
10
|
+
"name": "ActiveMQ",
|
|
11
|
+
"description": "The ActiveMQ component allows messages to be sent to a JMS Queue or Topic; or messages to be consumed from a JMS Queue or Topic using Apache ActiveMQ.",
|
|
12
|
+
"icon": "activeMQIcon"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"id": 2,
|
|
16
|
+
"name": "Apache Spark",
|
|
17
|
+
"description": "This documentation page covers the Apache Spark component for the Apache Camel.",
|
|
18
|
+
"icon": "sparkIcon"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"id": 3,
|
|
22
|
+
"name": "Avro",
|
|
23
|
+
"description": "This component provides a dataformat for avro, which allows serialization and deserialization of messages using Apache Avro’s binary dataformat. Moreover, it provides support for Apache Avro’s rpc, by providing producers and consumers endpoint for using avro over netty or http.",
|
|
24
|
+
"icon": "avroIcon"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"id": 4,
|
|
28
|
+
"name": "Azure Services",
|
|
29
|
+
"description": "The Camel Components for Windows Azure Services provide connectivity to Azure services from Camel.",
|
|
30
|
+
"icon": "azureIcon"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": 5,
|
|
34
|
+
"name": "Crypto",
|
|
35
|
+
"description": "For providing flexible endpoints to sign and verify exchanges using the Signature Service of the Java Cryptographic Extension.",
|
|
36
|
+
"icon": "saxonIcon"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"id": 6,
|
|
40
|
+
"name": "DropBox",
|
|
41
|
+
"description": "The dropbox component allows you to treat Dropbox remote folders as a producer or consumer of messages.",
|
|
42
|
+
"icon": "dropBoxIcon"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"id": 7,
|
|
46
|
+
"name": "JBoss Data Grid",
|
|
47
|
+
"description": "Read or write to a fully-supported distributed cache and data grid for faster integration services.",
|
|
48
|
+
"icon": "infinispanIcon"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"id": 8,
|
|
52
|
+
"name": "REST",
|
|
53
|
+
"description": "The rest component allows to define REST endpoints (consumer) using the Rest DSL and plugin to other Camel components as the REST transport. From Camel 2.18 onwards the rest component can also be used as a client (producer) to call REST services.",
|
|
54
|
+
"icon": "restIcon"
|
|
55
|
+
},
|
|
56
|
+
{
|
|
57
|
+
"id": 9,
|
|
58
|
+
"name": "SWAGGER",
|
|
59
|
+
"description": "Expose REST services and their APIs using Swagger specification.",
|
|
60
|
+
"icon": "swaggerIcon"
|
|
61
|
+
}
|
|
62
|
+
]
|
|
@@ -25,6 +25,7 @@ import swaggerIcon from './Card/camel-swagger-java_200x150.png';
|
|
|
25
25
|
import azureIcon from './Card/FuseConnector_Icons_AzureServices.png';
|
|
26
26
|
import restIcon from './Card/FuseConnector_Icons_REST.png';
|
|
27
27
|
import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
|
|
28
|
+
import { data } from '@patternfly/react-core/src/demos/Card/CardData.jsx';
|
|
28
29
|
|
|
29
30
|
## Demos
|
|
30
31
|
|
|
@@ -1019,6 +1020,7 @@ import swaggerIcon from './camel-swagger-java_200x150.png';
|
|
|
1019
1020
|
import azureIcon from './FuseConnector_Icons_AzureServices.png';
|
|
1020
1021
|
import restIcon from './FuseConnector_Icons_REST.png';
|
|
1021
1022
|
import EllipsisVIcon from '@patternfly/react-icons/dist/esm/icons/ellipsis-v-icon';
|
|
1023
|
+
import { data } from '@patternfly/react-core/src/demos/Card/CardData.jsx';
|
|
1022
1024
|
|
|
1023
1025
|
class PrimaryDetailCardView extends React.Component {
|
|
1024
1026
|
constructor(props) {
|
|
@@ -1037,7 +1039,7 @@ class PrimaryDetailCardView extends React.Component {
|
|
|
1037
1039
|
filters: {
|
|
1038
1040
|
products: []
|
|
1039
1041
|
},
|
|
1040
|
-
|
|
1042
|
+
cardData: data,
|
|
1041
1043
|
isUpperToolbarDropdownOpen: false,
|
|
1042
1044
|
isUpperToolbarKebabDropdownOpen: false,
|
|
1043
1045
|
isLowerToolbarDropdownOpen: false,
|
|
@@ -1263,9 +1265,9 @@ class PrimaryDetailCardView extends React.Component {
|
|
|
1263
1265
|
this.deleteItem = (event, item) => {
|
|
1264
1266
|
event.stopPropagation();
|
|
1265
1267
|
const filter = (getter) => (val) => getter(val) !== item.id;
|
|
1266
|
-
const filteredCards = this.state.
|
|
1268
|
+
const filteredCards = this.state.cardData.filter(filter(({ id }) => id));
|
|
1267
1269
|
this.setState({
|
|
1268
|
-
|
|
1270
|
+
cardData: filteredCards,
|
|
1269
1271
|
selectedItems: this.state.selectedItems.filter(filter((id) => id)),
|
|
1270
1272
|
totalItemCount: this.state.totalItemCount - 1,
|
|
1271
1273
|
isDrawerExpanded: false,
|
|
@@ -1297,27 +1299,15 @@ class PrimaryDetailCardView extends React.Component {
|
|
|
1297
1299
|
}
|
|
1298
1300
|
|
|
1299
1301
|
getAllItems() {
|
|
1300
|
-
const {
|
|
1302
|
+
const { cardData } = this.state;
|
|
1301
1303
|
const collection = [];
|
|
1302
|
-
for (const items of
|
|
1304
|
+
for (const items of cardData) {
|
|
1303
1305
|
collection.push(items.id);
|
|
1304
1306
|
}
|
|
1305
1307
|
|
|
1306
1308
|
return collection;
|
|
1307
1309
|
}
|
|
1308
1310
|
|
|
1309
|
-
fetch(page, perPage) {
|
|
1310
|
-
fetch(`https://my-json-server.typicode.com/jenny-s51/cardviewdata/posts?_page=${page}&_limit=${perPage}`)
|
|
1311
|
-
.then((resp) => resp.json())
|
|
1312
|
-
.then((resp) => this.setState({ res: resp, perPage, page }))
|
|
1313
|
-
.then(() => this.updateSelected())
|
|
1314
|
-
.catch((err) => this.setState({ error: err }));
|
|
1315
|
-
}
|
|
1316
|
-
|
|
1317
|
-
componentDidMount() {
|
|
1318
|
-
this.fetch(this.state.page, this.state.perPage);
|
|
1319
|
-
}
|
|
1320
|
-
|
|
1321
1311
|
buildSelectDropdown() {
|
|
1322
1312
|
const { splitButtonDropdownIsOpen, selectedItems, areAllSelected } = this.state;
|
|
1323
1313
|
const numSelected = selectedItems.length;
|
|
@@ -1372,7 +1362,7 @@ class PrimaryDetailCardView extends React.Component {
|
|
|
1372
1362
|
}
|
|
1373
1363
|
|
|
1374
1364
|
render() {
|
|
1375
|
-
const { isDrawerExpanded, isChecked, selectedItems, activeCard, isLowerToolbarKebabDropdownOpen, filters,
|
|
1365
|
+
const { isDrawerExpanded, isChecked, selectedItems, activeCard, isLowerToolbarKebabDropdownOpen, filters, cardData } =
|
|
1376
1366
|
this.state;
|
|
1377
1367
|
|
|
1378
1368
|
const toolbarKebabDropdownItems = (
|
|
@@ -1438,8 +1428,8 @@ class PrimaryDetailCardView extends React.Component {
|
|
|
1438
1428
|
|
|
1439
1429
|
const filtered =
|
|
1440
1430
|
filters.products.length > 0
|
|
1441
|
-
?
|
|
1442
|
-
:
|
|
1431
|
+
? cardData.filter((card) => filters.products.length === 0 || filters.products.includes(card.name))
|
|
1432
|
+
: cardData;
|
|
1443
1433
|
|
|
1444
1434
|
const icons = {
|
|
1445
1435
|
pfIcon,
|