diff --git a/.eslintignore b/.eslintignore index ab3116f9aff..01b3d3cee37 100644 --- a/.eslintignore +++ b/.eslintignore @@ -12,6 +12,8 @@ coverage **/Generated **/build css +packages/react-icons/src/index.js +packages/react-icons/src/icons # package managers yarn-error.log diff --git a/package.json b/package.json index b65c9341ebc..5b719b63bc6 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,6 @@ "jest": "24.1.0", "jest-cli": "24.1.0", "lerna": "3.16.2", - "minimist": "^1.2.0", "mutation-observer": "^1.0.3", "plop": "^2.0.0", "prettier": "^1.18.2", @@ -75,7 +74,7 @@ "generate": "yarn plop", "lint:md": "yarn eslint packages --ext md --no-eslintrc --config .eslintrc-md.json --cache", "lint:ts": "node --max-old-space-size=4096 node_modules/.bin/eslint packages --ext js,jsx,ts,tsx --cache", - "lint:versions": "node ./scripts/verifyCoreVersions.js", + "lint:versions": "node ./scripts/verifyPatternflyVersions.js", "prettier": "node node_modules/.bin/prettier --write \"packages/**/*.{js,ts,tsx}\" \"scripts/**/*.{js,ts,tsx}\"", "serve:docs": "lerna run serve", "serve:integration": "lerna run serve:demo-app", diff --git a/packages/react-catalog-view-extension/package.json b/packages/react-catalog-view-extension/package.json index 7c9998da60c..3ab44291a60 100644 --- a/packages/react-catalog-view-extension/package.json +++ b/packages/react-catalog-view-extension/package.json @@ -41,8 +41,8 @@ }, "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-styles": "^3.7.6", + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-styles": "^4.0.2", "classnames": "^2.2.5", "patternfly": "^3.59.4" }, diff --git a/packages/react-charts/package.json b/packages/react-charts/package.json index 207d5268a9c..8dadd42fbb0 100644 --- a/packages/react-charts/package.json +++ b/packages/react-charts/package.json @@ -30,8 +30,8 @@ "homepage": "https://github.com/patternfly/patternfly-react#readme", "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-tokens": "^2.8.6", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-tokens": "^4.0.2", "hoist-non-react-statics": "^3.3.0", "lodash": "^4.17.15", "victory": "^33.0.5", diff --git a/packages/react-charts/src/declarations.d.ts b/packages/react-charts/src/declarations.d.ts index 31573b4b28d..c04bcf9ceb4 100644 --- a/packages/react-charts/src/declarations.d.ts +++ b/packages/react-charts/src/declarations.d.ts @@ -5,3 +5,8 @@ declare module 'victory-core' { export const Path: any; export const TextSize: any; } + +declare module 'hoist-non-react-statics' { + const hoist: any; + export default hoist; +} diff --git a/packages/react-codemods/transforms/pf3-pf4.button.test.js b/packages/react-codemods/transforms/pf3-pf4.button.test.js index a4b04757af1..14879f24bec 100644 --- a/packages/react-codemods/transforms/pf3-pf4.button.test.js +++ b/packages/react-codemods/transforms/pf3-pf4.button.test.js @@ -1,4 +1,3 @@ -import { EOL as SYSTEM_EOL } from 'os'; import prettier from 'prettier'; import { defineInlineTest } from 'jscodeshift/dist/testUtils'; import transform from './pf3-pf4'; diff --git a/packages/react-codemods/transforms/pf3-pf4.js b/packages/react-codemods/transforms/pf3-pf4.js index 22c5b820cee..b06e335ec86 100644 --- a/packages/react-codemods/transforms/pf3-pf4.js +++ b/packages/react-codemods/transforms/pf3-pf4.js @@ -13,6 +13,9 @@ try { const oldPackage = 'patternfly-react'; const newPackage = '@patternfly/react-core'; +/** + * @param {string} specifiedComponents glob of specified components + */ function getFilteredComponentConfig(specifiedComponents = '*') { if (specifiedComponents === '*') { return componentConfigs; @@ -37,6 +40,10 @@ module.exports = (file, api, options) => { const root = j(file.source); const filteredConfig = getFilteredComponentConfig(options.components); + /** + * @param {string} importName import name + * @param {string} localName local name + */ function addComponentToReactCoreImport(importName, localName) { const reactCoreImport = getReactCoreImport(); if (reactCoreImport.length > 0) { @@ -66,6 +73,9 @@ module.exports = (file, api, options) => { } } + /** + * @returns {string} import after react core + */ function findImportAfterReactCore() { let target; let targetName; @@ -81,18 +91,28 @@ module.exports = (file, api, options) => { return target; } + /** + * @returns {object} @patternfly/react-core import + */ function getReactCoreImport() { return root.find(j.ImportDeclaration, { source: { value: newPackage } }); } + /** + * @returns {object} patternfly-react import + */ function getPatternflyReactImport() { return root.find(j.ImportDeclaration, { source: { value: oldPackage } }); } + /** + * @param {object[]} jsxElements array of JSX Elements + * @param {object[]} unsupportedProps deprecated props + */ function verifyNoUnsupportedPropReferences(jsxElements, unsupportedProps) { let hasSupportedPropReferences = false; jsxElements.find(j.JSXAttribute).forEach(attrPath => { @@ -106,11 +126,20 @@ module.exports = (file, api, options) => { return hasSupportedPropReferences; } + /** + * @param {object} componentConfig component config + * @param {string} propName prop name + */ function getConfigForProp(componentConfig, propName) { const propConfig = componentConfig.props[propName]; return typeof propConfig === 'string' ? { name: propConfig } : propConfig; } + /** + * @param {string} prop property + * @param {string} jsxElementPath element path + * @param {object} propConfig property config + */ function transformProp(prop, jsxElementPath, propConfig) { const propInstances = j(jsxElementPath).find(j.JSXAttribute, { name: { name: prop } @@ -133,6 +162,9 @@ module.exports = (file, api, options) => { }); } + /** + * Removes patternfly-react import + */ function removePatternflyReactImport() { getPatternflyReactImport().forEach(path => { if (path.node.specifiers.length === 0) { @@ -141,6 +173,9 @@ module.exports = (file, api, options) => { }); } + /** + * @returns {string} pretty babel'ed version of source + */ function getPrettySource() { const transformedSource = root.toSource({ quote: 'auto', diff --git a/packages/react-codemods/transforms/pf3-pf4.test.js b/packages/react-codemods/transforms/pf3-pf4.test.js index 1f305e2ba19..b879360dd3c 100644 --- a/packages/react-codemods/transforms/pf3-pf4.test.js +++ b/packages/react-codemods/transforms/pf3-pf4.test.js @@ -1,4 +1,3 @@ -import { EOL as SYSTEM_EOL } from 'os'; import prettier from 'prettier'; import { defineInlineTest, runInlineTest } from 'jscodeshift/dist/testUtils'; import transform from './pf3-pf4'; diff --git a/packages/react-core/package.json b/packages/react-core/package.json index cf3289685b7..436281a7248 100644 --- a/packages/react-core/package.json +++ b/packages/react-core/package.json @@ -40,9 +40,9 @@ "gen:tests": "yo tsx-docgen" }, "dependencies": { - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-tokens": "^2.8.6", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-tokens": "^4.0.2", "emotion": "^9.2.9", "exenv": "^1.2.2", "focus-trap-react": "^4.0.1", diff --git a/packages/react-core/src/components/Drawer/DrawerPanelContent.tsx b/packages/react-core/src/components/Drawer/DrawerPanelContent.tsx index 9942a247ac8..8c94360bc6d 100644 --- a/packages/react-core/src/components/Drawer/DrawerPanelContent.tsx +++ b/packages/react-core/src/components/Drawer/DrawerPanelContent.tsx @@ -18,6 +18,6 @@ export const DrawerPanelContent: React.SFC = ({ ...props }: DrawerPanelContentProps) => ( ); diff --git a/packages/react-core/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap b/packages/react-core/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap index d4ba766eebc..9d85498007b 100644 --- a/packages/react-core/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap +++ b/packages/react-core/src/components/Drawer/__snapshots__/Drawer.test.tsx.snap @@ -20,7 +20,7 @@ exports[`Drawer isExpanded = false and isInline = false 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -50,7 +50,7 @@ exports[`Drawer isExpanded = false and isInline = true 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -80,7 +80,7 @@ exports[`Drawer isExpanded = true and isInline = false 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -110,7 +110,7 @@ exports[`Drawer isExpanded = true and isInline = true 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
diff --git a/packages/react-core/src/components/Drawer/__tests__/Generated/__snapshots__/DrawerPanelContent.test.tsx.snap b/packages/react-core/src/components/Drawer/__tests__/Generated/__snapshots__/DrawerPanelContent.test.tsx.snap index 0c17ea00dad..c9e64cd125d 100644 --- a/packages/react-core/src/components/Drawer/__tests__/Generated/__snapshots__/DrawerPanelContent.test.tsx.snap +++ b/packages/react-core/src/components/Drawer/__tests__/Generated/__snapshots__/DrawerPanelContent.test.tsx.snap @@ -5,7 +5,7 @@ exports[`DrawerPanelContent should match snapshot (auto-generated) 1`] = ` className="pf-c-drawer__panel ''" >
ReactNode diff --git a/packages/react-core/src/components/Drawer/__tests__/__snapshots__/Drawer.test.tsx.snap b/packages/react-core/src/components/Drawer/__tests__/__snapshots__/Drawer.test.tsx.snap index d4ba766eebc..9d85498007b 100644 --- a/packages/react-core/src/components/Drawer/__tests__/__snapshots__/Drawer.test.tsx.snap +++ b/packages/react-core/src/components/Drawer/__tests__/__snapshots__/Drawer.test.tsx.snap @@ -20,7 +20,7 @@ exports[`Drawer isExpanded = false and isInline = false 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -50,7 +50,7 @@ exports[`Drawer isExpanded = false and isInline = true 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -80,7 +80,7 @@ exports[`Drawer isExpanded = true and isInline = false 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
@@ -110,7 +110,7 @@ exports[`Drawer isExpanded = true and isInline = true 1`] = ` className="pf-c-drawer__panel" >
drawer-panel
diff --git a/packages/react-core/src/components/Tabs/Tab.tsx b/packages/react-core/src/components/Tabs/Tab.tsx index aca5294a085..e4a2d4fa68f 100644 --- a/packages/react-core/src/components/Tabs/Tab.tsx +++ b/packages/react-core/src/components/Tabs/Tab.tsx @@ -18,4 +18,4 @@ export interface TabProps extends Omit; } -export const Tab: React.FunctionComponent = ({ className = '' }: TabProps) => null; +export const Tab: React.FunctionComponent = () => null; diff --git a/packages/react-docs/package.json b/packages/react-docs/package.json index 4331e0c3ae8..831d4072b3d 100644 --- a/packages/react-docs/package.json +++ b/packages/react-docs/package.json @@ -19,17 +19,17 @@ "@mdx-js/mdx": "^1.1.5", "@mdx-js/react": "^1.1.5", "@patternfly/patternfly": "4.0.4", - "@patternfly/react-catalog-view-extension": "^1.4.21", - "@patternfly/react-charts": "^5.3.9", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-inline-edit-extension": "^2.17.21", - "@patternfly/react-styled-system": "^3.8.8", - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-table": "^2.28.2", - "@patternfly/react-tokens": "^2.8.6", - "@patternfly/react-topology": "^2.14.21", - "@patternfly/react-virtualized-extension": "^1.4.22", + "@patternfly/react-catalog-view-extension": "^4.0.2", + "@patternfly/react-charts": "^6.0.1", + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-inline-edit-extension": "^4.0.3", + "@patternfly/react-styled-system": "^4.0.2", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-table": "^4.0.3", + "@patternfly/react-tokens": "^4.0.2", + "@patternfly/react-topology": "^4.0.3", + "@patternfly/react-virtualized-extension": "^4.0.3", "gatsby": "2.19.12", "gatsby-cli": "2.8.29", "gatsby-theme-patternfly-org": "^1.4.1", diff --git a/packages/react-icons/src/createIcon.js b/packages/react-icons/src/createIcon.js index 6d059c8bdd7..e687f56373e 100644 --- a/packages/react-icons/src/createIcon.js +++ b/packages/react-icons/src/createIcon.js @@ -19,7 +19,7 @@ const createIcon = iconDefinition => { id = `icon-title-${currentId++}`; render() { - const { size, color, title, noStyle, noVerticalAlign, ...props } = this.props; + const { size, color, title, noVerticalAlign, ...props } = this.props; const hasTitle = Boolean(title); const heightWidth = getSize(size); diff --git a/packages/react-inline-edit-extension/package.json b/packages/react-inline-edit-extension/package.json index 6a453eb8fe5..db00ada24b0 100644 --- a/packages/react-inline-edit-extension/package.json +++ b/packages/react-inline-edit-extension/package.json @@ -28,10 +28,10 @@ "homepage": "https://github.com/patternfly/patternfly-react/tree/master/packages/patternfly-4/", "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-table": "^2.28.2", + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-table": "^4.0.3", "classnames": "^2.2.5", "exenv": "^1.2.2", "reactabular-table": "^8.14.0" diff --git a/packages/react-integration/demo-app-ts/package.json b/packages/react-integration/demo-app-ts/package.json index e0d1f3b975b..94768e115db 100644 --- a/packages/react-integration/demo-app-ts/package.json +++ b/packages/react-integration/demo-app-ts/package.json @@ -7,7 +7,7 @@ "start:demo-app": "react-scripts start" }, "dependencies": { - "@patternfly/react-core": "^3.142.2", + "@patternfly/react-core": "^4.0.3", "react": "^16.8.0", "react-dom": "^16.8.0", "react-router": "^4.3.1", diff --git a/packages/react-styled-system/package.json b/packages/react-styled-system/package.json index 9c9c285ea6a..a47d205027b 100644 --- a/packages/react-styled-system/package.json +++ b/packages/react-styled-system/package.json @@ -35,8 +35,8 @@ "develop": "yarn build:babel:esm --skip-initial-build --watch --verbose" }, "dependencies": { - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-tokens": "^2.8.6", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-tokens": "^4.0.2", "emotion-theming": "^9.2.9", "react-emotion": "^9.2.9", "styled-system": "^3.1.11" diff --git a/packages/react-table/package.json b/packages/react-table/package.json index 6a0e3c34972..c663dd6f1c3 100644 --- a/packages/react-table/package.json +++ b/packages/react-table/package.json @@ -28,10 +28,10 @@ "homepage": "https://github.com/patternfly/patternfly-react/tree/master/packages/react-table#readme", "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-styles": "^3.7.6", - "@patternfly/react-tokens": "^2.8.6", + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-styles": "^4.0.2", + "@patternfly/react-tokens": "^4.0.2", "classnames": "^2.2.5", "exenv": "^1.2.2", "lodash": "^4.17.15" diff --git a/packages/react-topology/package.json b/packages/react-topology/package.json index 720c32cb7ed..639243562c5 100644 --- a/packages/react-topology/package.json +++ b/packages/react-topology/package.json @@ -26,9 +26,9 @@ "homepage": "https://github.com/patternfly/patternfly-react/tree/master/packages/react-topology#readme", "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-styles": "^3.7.6" + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-styles": "^4.0.2" }, "peerDependencies": { "prop-types": "^15.6.1", @@ -54,7 +54,7 @@ "@babel/plugin-transform-typescript": "^7.0.0", "@babel/preset-env": "^7.0.0", "@babel/preset-react": "^7.0.0", - "@patternfly/react-tokens": "^2.8.6", + "@patternfly/react-tokens": "^4.0.2", "@types/prop-types": "^15.7.0", "@types/react": "^16.4.0", "@types/react-dom": "^16.4.0", diff --git a/packages/react-virtualized-extension/package.json b/packages/react-virtualized-extension/package.json index 9f11f0d0f7a..e63630a74ad 100644 --- a/packages/react-virtualized-extension/package.json +++ b/packages/react-virtualized-extension/package.json @@ -28,9 +28,9 @@ "homepage": "https://github.com/patternfly/patternfly-react/tree/master/packages/react-virtualized-extension/", "dependencies": { "@patternfly/patternfly": "4.0.4", - "@patternfly/react-core": "^3.142.2", - "@patternfly/react-icons": "^3.15.7", - "@patternfly/react-styles": "^3.7.6", + "@patternfly/react-core": "^4.0.3", + "@patternfly/react-icons": "^4.0.1", + "@patternfly/react-styles": "^4.0.2", "@types/react-virtualized": "^9.21.5", "clsx": "^1.0.1", "dom-helpers": "^2.4.0 || ^3.0.0", diff --git a/scripts/lernaHelpers.js b/scripts/lernaHelpers.js deleted file mode 100644 index 9c2390413e3..00000000000 --- a/scripts/lernaHelpers.js +++ /dev/null @@ -1,14 +0,0 @@ -const filterPackages = require('@lerna/filter-packages'); -const { getPackages } = require('@lerna/project'); -const minimist = require('minimist'); - -module.exports = { - getPfPackages -}; - -async function getPfPackages(ignorePrivatePackages) { - const { scope, ignore } = minimist(process.argv.slice(2)); - const packages = await getPackages(__dirname); - const filtered = filterPackages(packages, scope, ignore, ignorePrivatePackages); - return filtered; -} diff --git a/scripts/verifyCoreVersions.js b/scripts/verifyCoreVersions.js deleted file mode 100644 index 4e9553a5bbb..00000000000 --- a/scripts/verifyCoreVersions.js +++ /dev/null @@ -1,34 +0,0 @@ -/* eslint-disable no-console, import/no-extraneous-dependencies */ -const helpers = require('./lernaHelpers'); - -const versions = new Map(); -const corePackageName = '@patternfly/patternfly'; - -async function verify() { - const packages = await helpers.getPfPackages(false); - const pkgConfigs = packages.map(pkg => pkg.toJSON()); - pkgConfigs.forEach( - ({ name, dependencies = {}, devDependencies = {}, optionalDependencies = {}, peerDependencies = {} }) => { - [ - ...Object.entries(dependencies), - ...Object.entries(devDependencies), - ...Object.entries(optionalDependencies), - ...Object.entries(peerDependencies) - ] - .filter(dep => dep[0] === corePackageName) - .forEach(([, version]) => { - versions.set(version, [...(versions.get(version) || []), name]); - }); - } - ); - if (versions.size > 1) { - console.error(`error: @patternfly/patternfly versions must match for all packages`); - console.error('-'.repeat(10)); - versions.forEach((packagesNames, version) => { - console.error(`v${version}: ${packagesNames.join(', ')}`); - }); - console.error('-'.repeat(10)); - process.exit(1); - } -} -verify(); diff --git a/scripts/verifyPatternflyVersions.js b/scripts/verifyPatternflyVersions.js new file mode 100644 index 00000000000..867dcd952bb --- /dev/null +++ b/scripts/verifyPatternflyVersions.js @@ -0,0 +1,70 @@ +const fs = require('fs'); +const Project = require('@lerna/project'); + +// '@patternfly/patternfly': {'4.0.4': ['@patternfly/react-styles', ...]}, +// '@patternfly/react-core': {'^4.0.3': ['@patternfly/react-docs', ...]] +const patternflyDeps = {}; + +async function accumulateDependencies(package, dependencies) { + if (!dependencies) { + return; + } + Object.entries(dependencies) + .filter(([dep, _version]) => dep.startsWith('@patternfly')) + .forEach(([dep, version]) => { + patternflyDeps[dep] = patternflyDeps[dep] || {}; + patternflyDeps[dep][version] = patternflyDeps[dep][version] || []; + patternflyDeps[dep][version].push(package); + }); +} + +function setDependency(dependencies, package, version) { + if (dependencies[package]) { + dependencies[package] = version; + } +} + +async function verifyPatternflyVersions() { + const packages = (await new Project(__dirname).getPackages()); + + packages.forEach(package => { + accumulateDependencies(package.name, { [package.name]: `^${package.version}` }); + accumulateDependencies(package.name, package.dependencies); + accumulateDependencies(package.name, package.devDependencies); + }); + + let failed = false; + const mismatchedVersions = Object.entries(patternflyDeps) + .filter(([_dep, versions]) => Object.keys(versions).length > 1); + + mismatchedVersions.forEach(([dep, versions]) => { + failed = true; + console.error(`Mismatching versions for ${dep}:`); + Object.entries(versions).forEach(([version, packages]) => console.error(`${version}: ${packages.join(' ')}`)); + }); + + if (process.argv[2] === '--fix') { + mismatchedVersions.forEach(([dep, versions]) => { + const highestVersion = Object.keys(versions).sort().reverse()[0]; + Object.keys(versions) + .filter(version => version !== highestVersion) + .map(version => versions[version]) + .forEach(mismatchedPackages => { + console.log(`Writing ${dep}@${highestVersion}:`); + mismatchedPackages + .map(package => packages.find(p => p.name === package)) + .forEach(package => { + console.log(package.manifestLocation); + setDependency(package.dependencies, dep, highestVersion); + setDependency(package.devDependencies, dep, highestVersion); + package.serialize(); + }); + }); + }); + } else if (failed) { + console.error('\nRun script again with --fix to bump to latest version'); + process.exit(1); + } +} + +verifyPatternflyVersions(); diff --git a/yarn.lock b/yarn.lock index b08b70a9457..fd714dd6562 100644 --- a/yarn.lock +++ b/yarn.lock @@ -3558,125 +3558,16 @@ xmldoc "^1.1.2" yargs "^15.0.2" -"@patternfly/patternfly@2.65.3": - version "2.65.3" - resolved "https://registry.yarnpkg.com/@patternfly/patternfly/-/patternfly-2.65.3.tgz#0856d6ca13d971f18b1d7889a60a73eb78cad3c8" - "@patternfly/patternfly@4.0.4": version "4.0.4" resolved "https://registry.yarnpkg.com/@patternfly/patternfly/-/patternfly-4.0.4.tgz#b4ba2db3d958c15a610e694a96d975e57e5a1db6" integrity sha512-ABfuvG0y0Z12Jtd8bxsfjWc9yt9jtQyWonuC0AKRktvn9bFULr7vWJ3Lg+PIXP5WUefPD7D+vGTz8SxdbWgLDA== -"@patternfly/react-catalog-view-extension@^1.4.21": - version "1.4.21" - resolved "https://registry.yarnpkg.com/@patternfly/react-catalog-view-extension/-/react-catalog-view-extension-1.4.21.tgz#068a89c4c7d257799c8d589f0a608d106975c749" - integrity sha512-KewwyApsxDmzKol+mQDYVLUwhKZ2VENR2BIUW1cHmdLF/YgLl9l5XpJREAqxgdqhPubRjH6HivSrwUr8VOzX8w== - dependencies: - "@patternfly/patternfly" "2.65.3" - "@patternfly/react-core" "^3.142.2" - "@patternfly/react-styles" "^3.7.6" - classnames "^2.2.5" - patternfly "^3.59.4" - -"@patternfly/react-core@^3.142.2": - version "3.142.2" - resolved "https://registry.yarnpkg.com/@patternfly/react-core/-/react-core-3.142.2.tgz#aaab6f9b13c3b0e87380600ec213be5ad226b6a7" - integrity sha512-+Tnc8mfFz+H+zioYB1SmdLvlPmvnVQX51w6RKP10AEvDgddML8i9g04QkkNb/AwwnIuGcF95b7YgzQc00cfNrA== - dependencies: - "@patternfly/react-icons" "^3.15.5" - "@patternfly/react-styles" "^3.7.6" - "@patternfly/react-tokens" "^2.8.6" - emotion "^9.2.9" - exenv "^1.2.2" - focus-trap-react "^4.0.1" - tippy.js "5.1.2" - -"@patternfly/react-inline-edit-extension@^2.17.21": - version "2.17.21" - resolved "https://registry.yarnpkg.com/@patternfly/react-inline-edit-extension/-/react-inline-edit-extension-2.17.21.tgz#194f52d6bbcadd0cadd64cc6561be28a99dd01fc" - integrity sha512-xm3wf0nwW5KEZKMb4HNfTjYsC8dSGQKGkOP4sXF9+2acLpj13I4V1BBj0nzUMvvnPE8xDeDzYh0oB42whfpeXw== - dependencies: - "@patternfly/patternfly" "2.65.3" - "@patternfly/react-core" "^3.142.2" - "@patternfly/react-icons" "^3.15.5" - "@patternfly/react-styles" "^3.7.6" - "@patternfly/react-table" "^2.28.2" - classnames "^2.2.5" - exenv "^1.2.2" - reactabular-table "^8.14.0" - optionalDependencies: - "@patternfly/react-tokens" "^2.8.6" - -"@patternfly/react-styled-system@^3.8.8": - version "3.8.8" - resolved "https://registry.yarnpkg.com/@patternfly/react-styled-system/-/react-styled-system-3.8.8.tgz#85ce43ffa5c49832576dd66fa4f51c0c30ecfe81" - integrity sha512-syZIHNmjJ7OaDTPP5CYrTB2AV52VY0AQAnbJZVtKpV1ySQXbju/eNAFhmcq41FhCcDAHsvsk5zs8wVAPAMNDeQ== - dependencies: - "@patternfly/react-styles" "^3.7.6" - "@patternfly/react-tokens" "^2.8.6" - emotion-theming "^9.2.9" - react-emotion "^9.2.9" - styled-system "^3.1.11" - optionalDependencies: - "@types/styled-system" "^3.0.7" - -"@patternfly/react-styles@^3.7.6": - version "3.7.6" - resolved "https://registry.yarnpkg.com/@patternfly/react-styles/-/react-styles-3.7.6.tgz#86b151688089ff049ab42a60eba71de50731686b" - integrity sha512-ISwqNcpq6WI82trer/fJxRdDnxYjDsGds6SV4TBv/Z919zQSQAIomw6UAO/fFMsmkTzSriGYQz3pZaLtVNtpJw== - dependencies: - camel-case "^3.0.0" - css "^2.2.3" - cssstyle "^0.3.1" - emotion "^9.2.9" - emotion-server "^9.2.9" - -"@patternfly/react-table@^2.28.2": - version "2.28.2" - resolved "https://registry.yarnpkg.com/@patternfly/react-table/-/react-table-2.28.2.tgz#82cafa099b6e6439ab08fcb16db216eb1ac1570f" - integrity sha512-axCwXooClL1ZKFQYO3vDtblOrWpnZ2LksusXjFrTSsLh89AZDXxehqD+PFCtetEbeqODl9wklwKi+mUTLH5v+w== - dependencies: - "@patternfly/patternfly" "2.65.3" - "@patternfly/react-core" "^3.142.2" - "@patternfly/react-icons" "^3.15.5" - "@patternfly/react-styles" "^3.7.6" - "@patternfly/react-tokens" "^2.8.6" - classnames "^2.2.5" - exenv "^1.2.2" - lodash "^4.17.15" - "@patternfly/react-tokens@^2.8.6": version "2.8.6" resolved "https://registry.yarnpkg.com/@patternfly/react-tokens/-/react-tokens-2.8.6.tgz#dbdf91e354814d2efc3e7409d6161cc7eb926e8c" integrity sha512-3GtE1o0NF4V2by4VK2mgpF1jWQCkbWzA5WyOSkhcCYUDerLhlarfuRWJrUOugM6ZmIDEOtrqRuXyXgfEjJFIqQ== -"@patternfly/react-topology@^2.14.21": - version "2.14.21" - resolved "https://registry.yarnpkg.com/@patternfly/react-topology/-/react-topology-2.14.21.tgz#f1f568bebef3769a595f933c41e0aafa8aaf4cc9" - integrity sha512-QmEgLtdZeeSm4/rogUm+YslCr947vOl27TqvNjdy857zcPTDpzpBkMsa4o0MGI7KIZOzfDYKwKTVOUDt3Wsbhw== - dependencies: - "@patternfly/patternfly" "2.65.3" - "@patternfly/react-core" "^3.142.2" - "@patternfly/react-icons" "^3.15.5" - "@patternfly/react-styles" "^3.7.6" - -"@patternfly/react-virtualized-extension@^1.4.22": - version "1.4.22" - resolved "https://registry.yarnpkg.com/@patternfly/react-virtualized-extension/-/react-virtualized-extension-1.4.22.tgz#7f32123f934fd6f51cf5a77ca89054f7e67d05ec" - integrity sha512-cBSmxRnEgq9VPAIqDr7AZkzLfhtBKNsz7GE6MMyeRier7w5UbC7EvXnKMQhOxAL1ZvF9eH/NmU204uuzF3vqdA== - dependencies: - "@patternfly/patternfly" "2.65.3" - "@patternfly/react-core" "^3.142.2" - "@patternfly/react-icons" "^3.15.5" - "@patternfly/react-styles" "^3.7.6" - "@types/react-virtualized" "^9.21.5" - clsx "^1.0.1" - dom-helpers "^2.4.0 || ^3.0.0" - exenv "^1.2.2" - linear-layout-vector "0.0.1" - react-lifecycles-compat "^3.0.4" - react-virtualized "^9.21.1" - "@pieh/friendly-errors-webpack-plugin@1.7.0-chalk-2": version "1.7.0-chalk-2" resolved "https://registry.yarnpkg.com/@pieh/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.7.0-chalk-2.tgz#2e9da9d3ade9d18d013333eb408c457d04eabac0"