Merge pull request #5580 from mabashian/upgrade-pf-deps

Upgrades pf deps to latest

Reviewed-by: https://github.com/apps/softwarefactory-project-zuul
This commit is contained in:
softwarefactory-project-zuul[bot] 2020-01-06 14:39:28 +00:00 committed by GitHub
commit f0882aba7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
35 changed files with 162 additions and 115 deletions

View File

@ -1787,43 +1787,51 @@
"dev": true
},
"@patternfly/patternfly": {
"version": "2.40.2",
"resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-2.40.2.tgz",
"integrity": "sha512-KCPQ6EL39xJen/B67MGv56i3h6bU5l7FD6f5IYU30z+ed2gM8zAYI3mPKNV05TMJv6+EQfp6O7dqCM3PJ8Q1yw=="
"version": "2.46.1",
"resolved": "https://registry.npmjs.org/@patternfly/patternfly/-/patternfly-2.46.1.tgz",
"integrity": "sha512-3lReQMQvedwEhKOcOw7rE3RPRXMtRit+Yj1IOO7fl5EHaZaNqA1/3w9mWNCpx52M+WD8scBkgqtVx74OU7Jemw=="
},
"@patternfly/react-core": {
"version": "3.120.2",
"resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-3.120.2.tgz",
"integrity": "sha512-PgV5w+3NlXK7hKvu0YY1pjXgd56dLwbIWE4m72JstxJIp/vpRShB6bfiSYNQGVi2ZQUudQTSH5sVWaBqXUaquw==",
"version": "3.129.3",
"resolved": "https://registry.npmjs.org/@patternfly/react-core/-/react-core-3.129.3.tgz",
"integrity": "sha512-QiTTUqA0y55YbDtzjlzKmZ6pGQqxyCF14TBQFH3rXI2RV8Z4C6HyyILm09BD/D/ITQIhT82dp+6nRY/mQOqlkw==",
"requires": {
"@patternfly/react-icons": "^3.14.15",
"@patternfly/react-styles": "^3.6.2",
"@patternfly/react-tokens": "^2.7.2",
"@patternfly/react-icons": "^3.14.28",
"@patternfly/react-styles": "^3.6.15",
"@patternfly/react-tokens": "^2.7.14",
"emotion": "^9.2.9",
"exenv": "^1.2.2",
"focus-trap-react": "^4.0.1",
"tippy.js": "3.4.1"
"tippy.js": "5.1.2"
},
"dependencies": {
"@patternfly/react-icons": {
"version": "3.14.28",
"resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.14.28.tgz",
"integrity": "sha512-xrmcaLaHvkixPdTuBfR+vPD2prUYxKq97TGs97lfo0K4g7Wi6lD30zMlmwzonWy1IuOHATiEwf3j7mXAqQXHlQ==",
"requires": {
"@fortawesome/free-brands-svg-icons": "^5.8.1"
}
},
"@patternfly/react-tokens": {
"version": "2.7.2",
"resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.7.2.tgz",
"integrity": "sha512-3QslQUErDLXGTzp2iGQNJD1UjZ+1NqwavOlsbxACUZ6LjXyJ7Y4TZbxDQrpgzPsD1SFPEVWufzpdjjtRBZ/b7g=="
"version": "2.7.14",
"resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.7.14.tgz",
"integrity": "sha512-HVa1fe7H4NRRv6lmezpvW2TfIDF7bSbKvhMmCVqBk80Fd3wfLcPhacnWdt6PLWq7WX4dVx7dF7+v4sFh8RczSg=="
}
}
},
"@patternfly/react-icons": {
"version": "3.14.15",
"resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.14.15.tgz",
"integrity": "sha512-7mIr1nzAXu6CdxKnhJGggIghx3DCaFXv6an+mfP/IwWifsLhcpE1c0iYkmVkvlI9X4cQAzeg9VfEGR7quhPOlA==",
"version": "3.14.28",
"resolved": "https://registry.npmjs.org/@patternfly/react-icons/-/react-icons-3.14.28.tgz",
"integrity": "sha512-xrmcaLaHvkixPdTuBfR+vPD2prUYxKq97TGs97lfo0K4g7Wi6lD30zMlmwzonWy1IuOHATiEwf3j7mXAqQXHlQ==",
"requires": {
"@fortawesome/free-brands-svg-icons": "^5.8.1"
}
},
"@patternfly/react-styles": {
"version": "3.6.2",
"resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.6.2.tgz",
"integrity": "sha512-WRXPC1R/qL+i/ANnrA0nEe6CcLHLZJIKWzSJ4gS2h9VdHvKySEdIlk9EtAZ0dNkv3whANjaKlR/n2/uFuXlzyw==",
"version": "3.6.15",
"resolved": "https://registry.npmjs.org/@patternfly/react-styles/-/react-styles-3.6.15.tgz",
"integrity": "sha512-9phudtz138QV82o60XvbNkeYPzLgz0DekEeu8cIX2A2yO1WzZbgXL5VPWB8bF/y+9EFyl+w8tu3ReQcvh7ULEw==",
"requires": {
"@babel/helper-plugin-utils": "^7.0.0-beta.48",
"camel-case": "^3.0.0",
@ -1855,9 +1863,9 @@
},
"dependencies": {
"acorn": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.3.0.tgz",
"integrity": "sha512-/czfa8BwS88b9gWQVhc8eknunSA2DoJpJyTQkhheIf5E48u1N0R4q/YxxsAeqRrmK9TQ/uYfgLDfZo91UlANIA=="
"version": "6.4.0",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.0.tgz",
"integrity": "sha512-gac8OEcQ2Li1dxIEWGZzsp2BitJxwkwcOm0zHAJLcPJaVvm58FRnk6RkuLRpU1EujipU2ZFODv2P9DLMfnV8mw=="
}
}
},
@ -1879,9 +1887,9 @@
"integrity": "sha1-/cpRzuYTOJXjyI1TXOSdv/YqRjM="
},
"jsdom": {
"version": "15.2.0",
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.0.tgz",
"integrity": "sha512-+hRyEfjRPFwTYMmSQ3/f7U9nP8ZNZmbkmUek760ZpxnCPWJIhaaLRuUSvpJ36fZKCGENxLwxClzwpOpnXNfChQ==",
"version": "15.2.1",
"resolved": "https://registry.npmjs.org/jsdom/-/jsdom-15.2.1.tgz",
"integrity": "sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g==",
"requires": {
"abab": "^2.0.0",
"acorn": "^7.1.0",
@ -1893,7 +1901,7 @@
"domexception": "^1.0.1",
"escodegen": "^1.11.1",
"html-encoding-sniffer": "^1.0.2",
"nwsapi": "^2.1.4",
"nwsapi": "^2.2.0",
"parse5": "5.1.0",
"pn": "^1.1.0",
"request": "^2.88.0",
@ -1912,9 +1920,9 @@
},
"dependencies": {
"cssom": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.1.tgz",
"integrity": "sha512-6Aajq0XmukE7HdXUU6IoSWuH1H6gH9z6qmagsstTiN7cW2FNTsb+J2Chs+ufPgZCsV/yo8oaEudQLrb9dGxSVQ=="
"version": "0.4.4",
"resolved": "https://registry.npmjs.org/cssom/-/cssom-0.4.4.tgz",
"integrity": "sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw=="
},
"cssstyle": {
"version": "2.0.0",
@ -1934,9 +1942,9 @@
}
},
"nwsapi": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.1.4.tgz",
"integrity": "sha512-iGfd9Y6SFdTNldEy2L0GUhcarIutFmk+MPWIn9dmj8NMIup03G08uUF2KGbbmv/Ux4RT0VZJoP/sVbWA6d/VIw=="
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.0.tgz",
"integrity": "sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ=="
},
"parse5": {
"version": "5.1.0",
@ -1944,19 +1952,19 @@
"integrity": "sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ=="
},
"request-promise-core": {
"version": "1.1.2",
"resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.2.tgz",
"integrity": "sha512-UHYyq1MO8GsefGEt7EprS8UrXsm1TxEvFUX1IMTuSLU2Rh7fTIdFtl8xD7JiEYiWU2dl+NYAjCTksTehQUxPag==",
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.3.tgz",
"integrity": "sha512-QIs2+ArIGQVp5ZYbWD5ZLCY29D5CfWizP8eWnm8FoGD1TX61veauETVQbrV60662V0oFBkrDOuaBI8XgtuyYAQ==",
"requires": {
"lodash": "^4.17.11"
"lodash": "^4.17.15"
}
},
"request-promise-native": {
"version": "1.0.7",
"resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.7.tgz",
"integrity": "sha512-rIMnbBdgNViL37nZ1b3L/VfPOpSi0TqVDQPAvO6U14lMzOLrt5nilxCQqtDKhZeDiW0/hkCXGoQjhgJd/tCh6w==",
"version": "1.0.8",
"resolved": "https://registry.npmjs.org/request-promise-native/-/request-promise-native-1.0.8.tgz",
"integrity": "sha512-dapwLGqkHtwL5AEbfenuzjTYg35Jd6KPytsC2/TLkVMz8rm+tNt72MGUWT1RP/aYawMpN6HqbNGBQaRcBtjQMQ==",
"requires": {
"request-promise-core": "1.1.2",
"request-promise-core": "1.1.3",
"stealthy-require": "^1.1.1",
"tough-cookie": "^2.3.3"
},
@ -2003,19 +2011,16 @@
}
},
"ws": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/ws/-/ws-7.2.0.tgz",
"integrity": "sha512-+SqNqFbwTm/0DC18KYzIsMTnEWpLwJsiasW/O17la4iDRRIO9uaHbvKiAS3AHgTiuuWerK/brj4O6MYZkei9xg==",
"requires": {
"async-limiter": "^1.0.0"
}
"version": "7.2.1",
"resolved": "https://registry.npmjs.org/ws/-/ws-7.2.1.tgz",
"integrity": "sha512-sucePNSafamSKoOqoNfBd8V0StlkzJKL2ZAhGQinCfNQ+oacw+Pk7lcdAElecBF2VkLNZRiIb5Oi1Q5lVUVt2A=="
}
}
},
"@patternfly/react-tokens": {
"version": "2.6.31",
"resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.6.31.tgz",
"integrity": "sha512-K9semfLIdf2vECefAbheXPVwZqq8nXY0Hf/VkWh6OBCL6R4FekxajpSBgobeoTQUotmvz5boMngqhkUjE7yChA=="
"version": "2.7.14",
"resolved": "https://registry.npmjs.org/@patternfly/react-tokens/-/react-tokens-2.7.14.tgz",
"integrity": "sha512-HVa1fe7H4NRRv6lmezpvW2TfIDF7bSbKvhMmCVqBk80Fd3wfLcPhacnWdt6PLWq7WX4dVx7dF7+v4sFh8RczSg=="
},
"@types/babel__core": {
"version": "7.1.1",
@ -3107,7 +3112,8 @@
"async-limiter": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.0.tgz",
"integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg=="
"integrity": "sha512-jp/uFnooOiO+L211eZOoSyzpOITMXx1rBITauYykG3BRYPu8h0UcxsPNB04RR5vo4Tyz3+ay17tR6JVf9qzYWg==",
"dev": true
},
"asynckit": {
"version": "0.4.0",
@ -4997,7 +5003,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -5354,9 +5360,9 @@
}
},
"csstype": {
"version": "2.6.7",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.7.tgz",
"integrity": "sha512-9Mcn9sFbGBAdmimWb2gLVDtFJzeKtDGIr76TUqmjZrw9LFXBMSU70lcs+C0/7fyCd6iBDqmksUcCOUIkisPHsQ=="
"version": "2.6.8",
"resolved": "https://registry.npmjs.org/csstype/-/csstype-2.6.8.tgz",
"integrity": "sha512-msVS9qTuMT5zwAGCVm4mxfrZ18BNc6Csd0oJAtiFMZ1FAx1CCvy2+5MDmYoix63LM/6NDbNtodCiGYGmFgO0dA=="
},
"currently-unhandled": {
"version": "0.4.1",
@ -6110,7 +6116,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -7552,7 +7558,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -7696,7 +7702,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -7768,8 +7774,7 @@
"ansi-regex": {
"version": "2.1.1",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"aproba": {
"version": "1.2.0",
@ -7790,14 +7795,12 @@
"balanced-match": {
"version": "1.0.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"brace-expansion": {
"version": "1.1.11",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"balanced-match": "^1.0.0",
"concat-map": "0.0.1"
@ -7812,20 +7815,17 @@
"code-point-at": {
"version": "1.1.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"concat-map": {
"version": "0.0.1",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"console-control-strings": {
"version": "1.1.0",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"core-util-is": {
"version": "1.0.2",
@ -7942,8 +7942,7 @@
"inherits": {
"version": "2.0.3",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"ini": {
"version": "1.3.5",
@ -7955,7 +7954,6 @@
"version": "1.0.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"number-is-nan": "^1.0.0"
}
@ -7970,7 +7968,6 @@
"version": "3.0.4",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"brace-expansion": "^1.1.7"
}
@ -7978,14 +7975,12 @@
"minimist": {
"version": "0.0.8",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"minipass": {
"version": "2.3.5",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"safe-buffer": "^5.1.2",
"yallist": "^3.0.0"
@ -8004,7 +7999,6 @@
"version": "0.5.1",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"minimist": "0.0.8"
}
@ -8085,8 +8079,7 @@
"number-is-nan": {
"version": "1.0.1",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"object-assign": {
"version": "4.1.1",
@ -8098,7 +8091,6 @@
"version": "1.4.0",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"wrappy": "1"
}
@ -8184,8 +8176,7 @@
"safe-buffer": {
"version": "5.1.2",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"safer-buffer": {
"version": "2.1.2",
@ -8221,7 +8212,6 @@
"version": "1.0.2",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0",
@ -8241,7 +8231,6 @@
"version": "3.0.1",
"bundled": true,
"dev": true,
"optional": true,
"requires": {
"ansi-regex": "^2.0.0"
}
@ -8285,14 +8274,12 @@
"wrappy": {
"version": "1.0.2",
"bundled": true,
"dev": true,
"optional": true
"dev": true
},
"yallist": {
"version": "3.0.3",
"bundled": true,
"dev": true,
"optional": true
"dev": true
}
}
},
@ -12027,7 +12014,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -13078,7 +13065,7 @@
},
"readable-stream": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
"integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
"dev": true,
"requires": {
@ -16227,11 +16214,11 @@
"integrity": "sha512-rru86D9CpQRLvsFG5XFdy0KdLAvjdQDyZCsRcuu60WtzFylDM3eAWSxEVz5kzL2Gp544XiUvPbVKtOA/txLi9Q=="
},
"tippy.js": {
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-3.4.1.tgz",
"integrity": "sha512-ZiyGP9WZyCCcjxKM4G88cm4U1r1ytjeMDGa5FSKPaPzwc/3yZJVZsb1ffcmqUMCpryRp5LNxRNGKLzbs11sb/Q==",
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-5.1.2.tgz",
"integrity": "sha512-Qtrv2wqbRbaKMUb6bWWBQWPayvcDKNrGlvihxtsyowhT7RLGEh1STWuy6EMXC6QLkfKPB2MLnf8W2mzql9VDAw==",
"requires": {
"popper.js": "^1.14.6"
"popper.js": "^1.16.0"
}
},
"tmp": {

View File

@ -58,10 +58,10 @@
},
"dependencies": {
"@lingui/react": "^2.7.2",
"@patternfly/patternfly": "^2.40.2",
"@patternfly/react-core": "^3.120.2",
"@patternfly/react-icons": "^3.14.15",
"@patternfly/react-tokens": "^2.6.31",
"@patternfly/patternfly": "^2.46.1",
"@patternfly/react-core": "^3.129.3",
"@patternfly/react-icons": "^3.14.28",
"@patternfly/react-tokens": "^2.7.14",
"ansi-to-html": "^0.6.11",
"axios": "^0.18.1",
"codemirror": "^5.47.0",

View File

@ -100,6 +100,7 @@ class SelectResourceStep extends React.Component {
itemCount={count}
qsConfig={this.qsConfig}
toolbarColumns={columns}
onRowClick={onRowClick}
renderItem={item => (
<CheckboxListItem
isSelected={selectedResourceRows.some(i => i.id === item.id)}

View File

@ -21,7 +21,11 @@ const CheckboxListItem = ({
}) => {
const CheckboxRadio = isRadio ? DataListRadio : DataListCheck;
return (
<DataListItem key={itemId} aria-labelledby={`check-action-item-${itemId}`}>
<DataListItem
key={itemId}
aria-labelledby={`check-action-item-${itemId}`}
id={`${itemId}`}
>
<DataListItemRow>
<CheckboxRadio
id={`selected-${itemId}`}

View File

@ -51,6 +51,7 @@ function OptionsList({
qsConfig={qsConfig}
toolbarColumns={columns}
hasContentLoading={isLoading}
onRowClick={selectItem}
renderItem={item => (
<CheckboxListItem
key={item.id}

View File

@ -35,7 +35,7 @@ describe('<MultiSelect />', () => {
/>
);
const component = wrapper.find('MultiSelect');
const input = component.find('TextInput');
const input = component.find('TextInputBase');
input.invoke('onChange')('Flabadoo');
input.simulate('keydown', { key: 'Enter' });
@ -58,7 +58,7 @@ describe('<MultiSelect />', () => {
/>
);
const input = wrapper.find('TextInput');
const input = wrapper.find('TextInputBase');
input.simulate('focus');
wrapper.update();
const event = {

View File

@ -41,6 +41,7 @@ function NotificationListItem(props) {
<DataListItem
aria-labelledby={`items-list-item-${notification.id}`}
key={notification.id}
id={`${notification.id}`}
>
<DataListItemRow>
<DataListItemCells

View File

@ -24,11 +24,13 @@ exports[`<NotificationListItem canToggleNotifications /> initially renders succe
>
<DataListItem
aria-labelledby="items-list-item-9000"
id="9000"
key="9000"
>
<li
aria-labelledby="items-list-item-9000"
className="pf-c-data-list__item"
id="9000"
>
<DataListItemRow
key=".0"

View File

@ -27,8 +27,15 @@ class PaginatedDataList extends React.Component {
super(props);
this.handleSetPage = this.handleSetPage.bind(this);
this.handleSetPageSize = this.handleSetPageSize.bind(this);
this.handleListItemSelect = this.handleListItemSelect.bind(this);
}
handleListItemSelect = (id = 0) => {
const { items, onRowClick } = this.props;
const match = items.find(item => item.id === Number(id));
onRowClick(match);
};
handleSetPage(event, pageNumber) {
const { history, qsConfig } = this.props;
const { search } = history.location;
@ -95,7 +102,12 @@ class PaginatedDataList extends React.Component {
);
} else {
Content = (
<DataList aria-label={dataListLabel}>{items.map(renderItem)}</DataList>
<DataList
aria-label={dataListLabel}
onSelectDataListItem={id => this.handleListItemSelect(id)}
>
{items.map(renderItem)}
</DataList>
);
}
@ -157,6 +169,7 @@ PaginatedDataList.propTypes = {
renderToolbar: PropTypes.func,
hasContentLoading: PropTypes.bool,
contentError: PropTypes.shape(),
onRowClick: PropTypes.func,
};
PaginatedDataList.defaultProps = {
@ -167,6 +180,7 @@ PaginatedDataList.defaultProps = {
showPageSizeOptions: true,
renderItem: item => <PaginatedDataListItem key={item.id} item={item} />,
renderToolbar: props => <DataListToolbar {...props} />,
onRowClick: () => null,
};
export { PaginatedDataList as _PaginatedDataList };

View File

@ -19,7 +19,11 @@ const DetailWrapper = styled(TextContent)`
export default function PaginatedDataListItem({ item }) {
return (
<DataListItem aria-labelledby={`items-list-item-${item.id}`} key={item.id}>
<DataListItem
aria-labelledby={`items-list-item-${item.id}`}
key={item.id}
id={`${item.id}`}
>
<DataListItemRow>
<DataListItemCells
dataListCells={[

View File

@ -39,7 +39,6 @@ exports[`<ToolbarDeleteButton /> should render button 1`] = `
zIndex={9999}
>
<PopoverBase
animateFill={false}
appendTo={[Function]}
aria="describedby"
arrow={true}
@ -80,7 +79,6 @@ exports[`<ToolbarDeleteButton /> should render button 1`] = `
lazy={true}
maxWidth="18.75rem"
onCreate={[Function]}
performance={true}
placement="top"
popperOptions={
Object {

View File

@ -72,7 +72,11 @@ class ResourceAccessListItem extends React.Component {
const [teamRoles, userRoles] = this.getRoleLists();
return (
<DataListItem aria-labelledby="access-list-item" key={accessRecord.id}>
<DataListItem
aria-labelledby="access-list-item"
key={accessRecord.id}
id={`${accessRecord.id}`}
>
<DataListItemRow>
<DataListItemCells
dataListCells={[

View File

@ -34,11 +34,13 @@ exports[`<ResourceAccessListItem /> initially renders succesfully 1`] = `
>
<DataListItem
aria-labelledby="access-list-item"
id="2"
key="2"
>
<li
aria-labelledby="access-list-item"
className="pf-c-data-list__item"
id="2"
>
<DataListItemRow
key=".0"

View File

@ -122,6 +122,7 @@ function CredentialList({ i18n }) {
items={credentials}
itemCount={credentialCount}
qsConfig={QS_CONFIG}
onRowClick={handleSelect}
renderItem={item => (
<CredentialListItem
key={item.id}

View File

@ -36,7 +36,11 @@ function CredentialListItem({
const canEdit = credential.summary_fields.user_capabilities.edit;
return (
<DataListItem key={credential.id} aria-labelledby={labelId}>
<DataListItem
key={credential.id}
aria-labelledby={labelId}
id={`${credential.id}`}
>
<DataListItemRow>
<DataListCheck
id={`select-credential-${credential.id}`}

View File

@ -189,6 +189,7 @@ class HostsList extends Component {
itemCount={itemCount}
pluralizedItemName={i18n._(t`Hosts`)}
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -40,7 +40,7 @@ class HostListItem extends React.Component {
} = this.props;
const labelId = `check-action-${host.id}`;
return (
<DataListItem key={host.id} aria-labelledby={labelId}>
<DataListItem key={host.id} aria-labelledby={labelId} id={`${host.id}`}>
<DataListItemRow>
<DataListCheck
id={`select-host-${host.id}`}

View File

@ -31,7 +31,7 @@ function InventoryGroupItem({
const editUrl = `/inventories/inventory/${inventoryId}/groups/${group.id}/edit`;
return (
<DataListItem key={group.id} aria-labelledby={labelId}>
<DataListItem key={group.id} aria-labelledby={labelId} id={`${group.id}`}>
<DataListItemRow>
<DataListCheck
aria-labelledby={labelId}

View File

@ -176,6 +176,7 @@ function InventoryGroupsList({ i18n, location, match }) {
items={groups}
itemCount={groupCount}
qsConfig={QS_CONFIG}
onRowClick={handleSelect}
renderItem={item => (
<InventoryGroupItem
key={item.id}

View File

@ -35,7 +35,7 @@ function InventoryHostItem(props) {
const labelId = `check-action-${host.id}`;
return (
<DataListItem key={host.id} aria-labelledby={labelId}>
<DataListItem key={host.id} aria-labelledby={labelId} id={`${host.id}`}>
<DataListItemRow>
<DataListCheck
id={`select-host-${host.id}`}

View File

@ -131,6 +131,7 @@ function InventoryHosts({ i18n, location, match }) {
itemCount={hostCount}
pluralizedItemName={i18n._(t`Hosts`)}
qsConfig={QS_CONFIG}
onRowClick={handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -173,6 +173,7 @@ class InventoriesList extends Component {
itemCount={itemCount}
pluralizedItemName={i18n._(t`Inventories`)}
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -30,7 +30,11 @@ class InventoryListItem extends React.Component {
const { inventory, isSelected, onSelect, detailUrl, i18n } = this.props;
const labelId = `check-action-${inventory.id}`;
return (
<DataListItem key={inventory.id} aria-labelledby={labelId}>
<DataListItem
key={inventory.id}
aria-labelledby={labelId}
id={`${inventory.id}`}
>
<DataListItemRow>
<DataListCheck
id={`select-inventory-${inventory.id}`}

View File

@ -162,6 +162,7 @@ class JobList extends Component {
itemCount={itemCount}
pluralizedItemName="Jobs"
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -32,6 +32,7 @@ class JobListItem extends Component {
<DataListItem
aria-labelledby={`check-action-${job.id}`}
css="--pf-c-data-list__expandable-content--BoxShadow: none;"
id={`${job.id}`}
>
<DataListItemRow>
<DataListCheck

View File

@ -118,6 +118,7 @@ function OrganizationsList({ i18n }) {
itemCount={itemCount}
pluralizedItemName="Organizations"
qsConfig={QS_CONFIG}
onRowClick={handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -49,7 +49,11 @@ function OrganizationListItem({
}) {
const labelId = `check-action-${organization.id}`;
return (
<DataListItem key={organization.id} aria-labelledby={labelId}>
<DataListItem
key={organization.id}
aria-labelledby={labelId}
id={`${organization.id}`}
>
<DataListItemRow>
<DataListCheck
id={`select-organization-${organization.id}`}

View File

@ -155,6 +155,7 @@ class ProjectsList extends Component {
itemCount={itemCount}
pluralizedItemName={i18n._(t`Projects`)}
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -60,7 +60,11 @@ class ProjectListItem extends React.Component {
const { project, isSelected, onSelect, detailUrl, i18n } = this.props;
const labelId = `check-action-${project.id}`;
return (
<DataListItem key={project.id} aria-labelledby={labelId}>
<DataListItem
key={project.id}
aria-labelledby={labelId}
id={`${project.id}`}
>
<DataListItemRow>
<DataListCheck
id={`select-project-${project.id}`}

View File

@ -153,6 +153,7 @@ class TeamsList extends Component {
itemCount={itemCount}
pluralizedItemName={i18n._(t`Teams`)}
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -30,7 +30,7 @@ class TeamListItem extends React.Component {
const { team, isSelected, onSelect, detailUrl, i18n } = this.props;
const labelId = `check-action-${team.id}`;
return (
<DataListItem key={team.id} aria-labelledby={labelId}>
<DataListItem key={team.id} aria-labelledby={labelId} id={`${team.id}`}>
<DataListItemRow>
<DataListCheck
id={`select-team-${team.id}`}

View File

@ -211,8 +211,9 @@ class TemplatesList extends Component {
hasContentLoading={hasContentLoading}
items={templates}
itemCount={itemCount}
pluralizedItemName="Templates"
pluralizedItemName={i18n._(t`Templates`)}
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Name`),

View File

@ -70,6 +70,7 @@ class TemplateListItem extends Component {
<DataListItem
aria-labelledby={`check-action-${template.id}`}
css="--pf-c-data-list__expandable-content--BoxShadow: none;"
id={`${template.id}`}
>
<DataListItemRow>
<DataListCheck

View File

@ -153,6 +153,7 @@ class UsersList extends Component {
itemCount={itemCount}
pluralizedItemName="Users"
qsConfig={QS_CONFIG}
onRowClick={this.handleSelect}
toolbarColumns={[
{
name: i18n._(t`Username`),

View File

@ -30,7 +30,7 @@ class UserListItem extends React.Component {
const { user, isSelected, onSelect, detailUrl, i18n } = this.props;
const labelId = `check-action-${user.id}`;
return (
<DataListItem key={user.id} aria-labelledby={labelId}>
<DataListItem key={user.id} aria-labelledby={labelId} id={`${user.id}`}>
<DataListItemRow>
<DataListCheck
id={`select-user-${user.id}`}