From 193a676cf6a8b3a07470ded12b4c5ad28b18768b Mon Sep 17 00:00:00 2001 From: Marin Atanasov Date: Mon, 18 Jul 2022 17:55:56 +0300 Subject: [PATCH 1/4] Lodash: Refactor away from _.isPlainObject() --- .eslintrc.js | 1 + package-lock.json | 61 ++++++++++++++++++- packages/blocks/package.json | 1 + packages/blocks/src/store/actions.js | 3 +- packages/components/src/text/hook.js | 8 ++- packages/data/package.json | 1 + .../data/src/plugins/persistence/index.js | 3 +- packages/element/package.json | 1 + packages/element/src/serialize.js | 3 +- .../npm-package-json-lint-config/package.json | 3 + .../test/index.test.js | 14 ++--- packages/prettier-config/package.json | 3 + packages/prettier-config/test/index.js | 14 ++--- packages/redux-routine/package.json | 1 + packages/redux-routine/src/is-action.js | 2 +- test/native/jest.config.js | 2 +- test/unit/jest.config.js | 1 + 17 files changed, 94 insertions(+), 28 deletions(-) diff --git a/.eslintrc.js b/.eslintrc.js index a5c1d80254f7c..6d91043574dd9 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -106,6 +106,7 @@ module.exports = { 'isNumber', 'isObject', 'isObjectLike', + 'isPlainObject', 'isString', 'isUndefined', 'keyBy', diff --git a/package-lock.json b/package-lock.json index 8b37b07093057..47c54daa9a1a7 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16653,6 +16653,7 @@ "@wordpress/shortcode": "file:packages/shortcode", "colord": "^2.7.0", "hpq": "^1.3.0", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "memize": "^1.1.0", "rememo": "^4.0.0", @@ -16665,6 +16666,11 @@ "version": "2.8.0", "resolved": "https://registry.npmjs.org/colord/-/colord-2.8.0.tgz", "integrity": "sha512-kNkVV4KFta3TYQv0bzs4xNwLaeag261pxgzGQSh4cQ1rEhYjcTJfFRP0SDlbhLONg0eSoLzrDd79PosjbltufA==" + }, + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" } } }, @@ -16739,6 +16745,11 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.10.tgz", "integrity": "sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==" }, + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" + }, "moment": { "version": "2.29.3", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz", @@ -16889,11 +16900,19 @@ "@wordpress/priority-queue": "file:packages/priority-queue", "@wordpress/redux-routine": "file:packages/redux-routine", "equivalent-key-map": "^0.2.2", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "redux": "^4.1.2", "turbo-combine-reducers": "^1.0.2", "use-memo-one": "^1.1.1" + }, + "dependencies": { + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" + } } }, "@wordpress/data-controls": { @@ -17180,9 +17199,17 @@ "@types/react": "^17.0.37", "@types/react-dom": "^17.0.11", "@wordpress/escape-html": "file:packages/escape-html", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "react": "^17.0.2", "react-dom": "^17.0.2" + }, + "dependencies": { + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" + } } }, "@wordpress/env": { @@ -17577,7 +17604,18 @@ }, "@wordpress/npm-package-json-lint-config": { "version": "file:packages/npm-package-json-lint-config", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "^4.1.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "dev": true + } + } }, "@wordpress/nux": { "version": "file:packages/nux", @@ -17637,7 +17675,18 @@ }, "@wordpress/prettier-config": { "version": "file:packages/prettier-config", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "^4.1.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", + "dev": true + } + } }, "@wordpress/primitives": { "version": "file:packages/primitives", @@ -17745,9 +17794,17 @@ "version": "file:packages/redux-routine", "requires": { "@babel/runtime": "^7.16.0", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "rungen": "^0.3.2" + }, + "dependencies": { + "is-plain-obj": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" + } } }, "@wordpress/report-flaky-tests": { diff --git a/packages/blocks/package.json b/packages/blocks/package.json index 7cbb0e9673bfa..b756451e81990 100644 --- a/packages/blocks/package.json +++ b/packages/blocks/package.json @@ -43,6 +43,7 @@ "@wordpress/shortcode": "file:../shortcode", "colord": "^2.7.0", "hpq": "^1.3.0", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "memize": "^1.1.0", "rememo": "^4.0.0", diff --git a/packages/blocks/src/store/actions.js b/packages/blocks/src/store/actions.js index 141fd9e79d431..0ef38acfc2e0c 100644 --- a/packages/blocks/src/store/actions.js +++ b/packages/blocks/src/store/actions.js @@ -1,7 +1,8 @@ /** * External dependencies */ -import { castArray, isPlainObject, omit, pick, some } from 'lodash'; +import isPlainObject from 'is-plain-obj'; +import { castArray, omit, pick, some } from 'lodash'; /** * WordPress dependencies diff --git a/packages/components/src/text/hook.js b/packages/components/src/text/hook.js index c914293c70e5e..7a83bc9c33699 100644 --- a/packages/components/src/text/hook.js +++ b/packages/components/src/text/hook.js @@ -2,7 +2,6 @@ * External dependencies */ import { css } from '@emotion/react'; -import { isPlainObject } from 'lodash'; /** * WordPress dependencies @@ -167,8 +166,11 @@ export default function useText( props ) { */ if ( ! truncate && Array.isArray( children ) ) { content = Children.map( children, ( child ) => { - // @ts-ignore - if ( ! isPlainObject( child ) || ! ( 'props' in child ) ) { + if ( + typeof child !== 'object' || + child === null || + ! ( 'props' in child ) + ) { return child; } diff --git a/packages/data/package.json b/packages/data/package.json index 7f50bbd8383b0..5aeadf1ed6bf6 100644 --- a/packages/data/package.json +++ b/packages/data/package.json @@ -35,6 +35,7 @@ "@wordpress/priority-queue": "file:../priority-queue", "@wordpress/redux-routine": "file:../redux-routine", "equivalent-key-map": "^0.2.2", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "redux": "^4.1.2", diff --git a/packages/data/src/plugins/persistence/index.js b/packages/data/src/plugins/persistence/index.js index 3029b459b3ad9..a9eb1d21bd1e9 100644 --- a/packages/data/src/plugins/persistence/index.js +++ b/packages/data/src/plugins/persistence/index.js @@ -1,7 +1,8 @@ /** * External dependencies */ -import { merge, isPlainObject } from 'lodash'; +import isPlainObject from 'is-plain-obj'; +import { merge } from 'lodash'; /** * Internal dependencies diff --git a/packages/element/package.json b/packages/element/package.json index 769dfcfa44c7a..051b396793abb 100644 --- a/packages/element/package.json +++ b/packages/element/package.json @@ -32,6 +32,7 @@ "@types/react": "^17.0.37", "@types/react-dom": "^17.0.11", "@wordpress/escape-html": "file:../escape-html", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "react": "^17.0.2", "react-dom": "^17.0.2" diff --git a/packages/element/src/serialize.js b/packages/element/src/serialize.js index 9e14a089f8eb4..dd3d26b6c4b8f 100644 --- a/packages/element/src/serialize.js +++ b/packages/element/src/serialize.js @@ -28,7 +28,8 @@ /** * External dependencies */ -import { kebabCase, isPlainObject } from 'lodash'; +import isPlainObject from 'is-plain-obj'; +import { kebabCase } from 'lodash'; /** * WordPress dependencies diff --git a/packages/npm-package-json-lint-config/package.json b/packages/npm-package-json-lint-config/package.json index fc82b9cd8aba4..f18cb00b57bf4 100644 --- a/packages/npm-package-json-lint-config/package.json +++ b/packages/npm-package-json-lint-config/package.json @@ -26,6 +26,9 @@ "index.js" ], "main": "index.js", + "dependencies": { + "is-plain-obj": "^4.1.0" + }, "peerDependencies": { "npm-package-json-lint": ">=3.6.0" }, diff --git a/packages/npm-package-json-lint-config/test/index.test.js b/packages/npm-package-json-lint-config/test/index.test.js index 16dd989d61fd3..15733d7d0198c 100644 --- a/packages/npm-package-json-lint-config/test/index.test.js +++ b/packages/npm-package-json-lint-config/test/index.test.js @@ -1,17 +1,13 @@ +/** + * External dependencies + */ +import isPlainObject from 'is-plain-obj'; + /** * Internal dependencies */ import config from '../'; -const isPlainObject = ( obj ) => { - return ( - typeof obj === 'object' && - obj !== null && - obj.constructor === Object && - Object.prototype.toString.call( obj ) === '[object Object]' - ); -}; - describe( 'npm-package-json-lint config tests', () => { it( 'should be an object', () => { expect( isPlainObject( config ) ).toBeTruthy(); diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index b8afd52844bc3..ecae559e7c9ae 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -27,6 +27,9 @@ ], "main": "lib/index.js", "types": "build-types", + "dependencies": { + "is-plain-obj": "^4.1.0" + }, "peerDependencies": { "prettier": ">=2" }, diff --git a/packages/prettier-config/test/index.js b/packages/prettier-config/test/index.js index 991ed5d3bbe5e..13b136107db88 100644 --- a/packages/prettier-config/test/index.js +++ b/packages/prettier-config/test/index.js @@ -1,17 +1,13 @@ +/** + * External dependencies + */ +import isPlainObject from 'is-plain-obj'; + /** * Internal dependencies */ import config from '../lib/'; -const isPlainObject = ( obj ) => { - return ( - typeof obj === 'object' && - obj !== null && - obj.constructor === Object && - Object.prototype.toString.call( obj ) === '[object Object]' - ); -}; - describe( 'prettier config tests', () => { it( 'should be an object', () => { expect( isPlainObject( config ) ).toBeTruthy(); diff --git a/packages/redux-routine/package.json b/packages/redux-routine/package.json index f99a2f87d8b75..321d66b563649 100644 --- a/packages/redux-routine/package.json +++ b/packages/redux-routine/package.json @@ -30,6 +30,7 @@ "sideEffects": false, "dependencies": { "@babel/runtime": "^7.16.0", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "rungen": "^0.3.2" diff --git a/packages/redux-routine/src/is-action.js b/packages/redux-routine/src/is-action.js index bcabab4e07a88..cdd59c8cd63d2 100644 --- a/packages/redux-routine/src/is-action.js +++ b/packages/redux-routine/src/is-action.js @@ -1,7 +1,7 @@ /** * External dependencies */ -import { isPlainObject } from 'lodash'; +import isPlainObject from 'is-plain-obj'; /* eslint-disable jsdoc/valid-types */ /** diff --git a/test/native/jest.config.js b/test/native/jest.config.js index a6ccf676882fb..0a7bf84287f42 100644 --- a/test/native/jest.config.js +++ b/test/native/jest.config.js @@ -65,7 +65,7 @@ module.exports = { // See: https://github.com/wordpress-mobile/gutenberg-mobile/pull/257#discussion_r234978268 // There is no overloading in jest so we need to rewrite the config from react-native-jest-preset: // https://github.com/facebook/react-native/blob/HEAD/jest-preset.json#L20 - 'node_modules/(?!(simple-html-tokenizer|(jest-)?react-native|@react-native|react-clone-referenced-element|@react-navigation))', + 'node_modules/(?!(simple-html-tokenizer|is-plain-obj|(jest-)?react-native|@react-native|react-clone-referenced-element|@react-navigation))', ], snapshotSerializers: [ '@emotion/jest/serializer' ], reporters: [ 'default', 'jest-junit' ], diff --git a/test/unit/jest.config.js b/test/unit/jest.config.js index c430aae0ed244..2294974ffea32 100644 --- a/test/unit/jest.config.js +++ b/test/unit/jest.config.js @@ -36,6 +36,7 @@ module.exports = { transform: { '^.+\\.[jt]sx?$': '/test/unit/scripts/babel-transformer.js', }, + transformIgnorePatterns: [ 'node_modules/(?!(is-plain-obj))' ], snapshotSerializers: [ 'enzyme-to-json/serializer', '@emotion/jest/serializer', From c7c900e8a1450a53e22dac95dc753bcd5d9f5652 Mon Sep 17 00:00:00 2001 From: Marin Atanasov Date: Tue, 2 Aug 2022 12:05:39 +0300 Subject: [PATCH 2/4] Revert package-lock.json changes --- package-lock.json | 61 ++--------------------------------------------- 1 file changed, 2 insertions(+), 59 deletions(-) diff --git a/package-lock.json b/package-lock.json index 47c54daa9a1a7..8b37b07093057 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16653,7 +16653,6 @@ "@wordpress/shortcode": "file:packages/shortcode", "colord": "^2.7.0", "hpq": "^1.3.0", - "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "memize": "^1.1.0", "rememo": "^4.0.0", @@ -16666,11 +16665,6 @@ "version": "2.8.0", "resolved": "https://registry.npmjs.org/colord/-/colord-2.8.0.tgz", "integrity": "sha512-kNkVV4KFta3TYQv0bzs4xNwLaeag261pxgzGQSh4cQ1rEhYjcTJfFRP0SDlbhLONg0eSoLzrDd79PosjbltufA==" - }, - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" } } }, @@ -16745,11 +16739,6 @@ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.10.tgz", "integrity": "sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA==" }, - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" - }, "moment": { "version": "2.29.3", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.3.tgz", @@ -16900,19 +16889,11 @@ "@wordpress/priority-queue": "file:packages/priority-queue", "@wordpress/redux-routine": "file:packages/redux-routine", "equivalent-key-map": "^0.2.2", - "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "redux": "^4.1.2", "turbo-combine-reducers": "^1.0.2", "use-memo-one": "^1.1.1" - }, - "dependencies": { - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" - } } }, "@wordpress/data-controls": { @@ -17199,17 +17180,9 @@ "@types/react": "^17.0.37", "@types/react-dom": "^17.0.11", "@wordpress/escape-html": "file:packages/escape-html", - "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "react": "^17.0.2", "react-dom": "^17.0.2" - }, - "dependencies": { - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" - } } }, "@wordpress/env": { @@ -17604,18 +17577,7 @@ }, "@wordpress/npm-package-json-lint-config": { "version": "file:packages/npm-package-json-lint-config", - "dev": true, - "requires": { - "is-plain-obj": "^4.1.0" - }, - "dependencies": { - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true - } - } + "dev": true }, "@wordpress/nux": { "version": "file:packages/nux", @@ -17675,18 +17637,7 @@ }, "@wordpress/prettier-config": { "version": "file:packages/prettier-config", - "dev": true, - "requires": { - "is-plain-obj": "^4.1.0" - }, - "dependencies": { - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true - } - } + "dev": true }, "@wordpress/primitives": { "version": "file:packages/primitives", @@ -17794,17 +17745,9 @@ "version": "file:packages/redux-routine", "requires": { "@babel/runtime": "^7.16.0", - "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "rungen": "^0.3.2" - }, - "dependencies": { - "is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" - } } }, "@wordpress/report-flaky-tests": { From 567c4f264eb62970f7f9f95f1ba8e3871cd3c79e Mon Sep 17 00:00:00 2001 From: Marin Atanasov Date: Tue, 2 Aug 2022 12:12:40 +0300 Subject: [PATCH 3/4] Dedupe is-plain-obj --- package-lock.json | 61 ++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 55 insertions(+), 6 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8b37b07093057..22623d619137f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16653,6 +16653,7 @@ "@wordpress/shortcode": "file:packages/shortcode", "colord": "^2.7.0", "hpq": "^1.3.0", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "memize": "^1.1.0", "rememo": "^4.0.0", @@ -16889,6 +16890,7 @@ "@wordpress/priority-queue": "file:packages/priority-queue", "@wordpress/redux-routine": "file:packages/redux-routine", "equivalent-key-map": "^0.2.2", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "redux": "^4.1.2", @@ -17180,6 +17182,7 @@ "@types/react": "^17.0.37", "@types/react-dom": "^17.0.11", "@wordpress/escape-html": "file:packages/escape-html", + "is-plain-obj": "^4.1.0", "lodash": "^4.17.21", "react": "^17.0.2", "react-dom": "^17.0.2" @@ -17577,7 +17580,10 @@ }, "@wordpress/npm-package-json-lint-config": { "version": "file:packages/npm-package-json-lint-config", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "^4.1.0" + } }, "@wordpress/nux": { "version": "file:packages/nux", @@ -17637,7 +17643,10 @@ }, "@wordpress/prettier-config": { "version": "file:packages/prettier-config", - "dev": true + "dev": true, + "requires": { + "is-plain-obj": "^4.1.0" + } }, "@wordpress/primitives": { "version": "file:packages/primitives", @@ -17745,6 +17754,7 @@ "version": "file:packages/redux-routine", "requires": { "@babel/runtime": "^7.16.0", + "is-plain-obj": "^4.1.0", "is-promise": "^4.0.0", "lodash": "^4.17.21", "rungen": "^0.3.2" @@ -38668,10 +38678,9 @@ } }, "is-plain-obj": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", - "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=", - "dev": true + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", + "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==" }, "is-plain-object": { "version": "2.0.4", @@ -44360,6 +44369,14 @@ "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", "kind-of": "^6.0.3" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + } } }, "normalize-package-data": { @@ -45703,6 +45720,14 @@ "requires": { "arrify": "^1.0.1", "is-plain-obj": "^1.1.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + } } }, "minipass": { @@ -54034,6 +54059,14 @@ "dev": true, "requires": { "is-plain-obj": "^1.0.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + } } }, "source-list-map": { @@ -55846,6 +55879,14 @@ "arrify": "^1.0.1", "is-plain-obj": "^1.1.0", "kind-of": "^6.0.3" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + } } }, "ms": { @@ -57591,6 +57632,14 @@ "trough": "^1.0.0", "vfile": "^3.0.0", "x-is-string": "^0.1.0" + }, + "dependencies": { + "is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "dev": true + } } }, "union-value": { From d413d8d78eeb616eb85c37c86025428cb176d94c Mon Sep 17 00:00:00 2001 From: Marin Atanasov Date: Tue, 2 Aug 2022 12:41:30 +0300 Subject: [PATCH 4/4] Get rid of dev deps --- package-lock.json | 10 ++-------- packages/npm-package-json-lint-config/package.json | 3 --- packages/prettier-config/package.json | 3 --- 3 files changed, 2 insertions(+), 14 deletions(-) diff --git a/package-lock.json b/package-lock.json index 22623d619137f..2a6eda7808148 100644 --- a/package-lock.json +++ b/package-lock.json @@ -17580,10 +17580,7 @@ }, "@wordpress/npm-package-json-lint-config": { "version": "file:packages/npm-package-json-lint-config", - "dev": true, - "requires": { - "is-plain-obj": "^4.1.0" - } + "dev": true }, "@wordpress/nux": { "version": "file:packages/nux", @@ -17643,10 +17640,7 @@ }, "@wordpress/prettier-config": { "version": "file:packages/prettier-config", - "dev": true, - "requires": { - "is-plain-obj": "^4.1.0" - } + "dev": true }, "@wordpress/primitives": { "version": "file:packages/primitives", diff --git a/packages/npm-package-json-lint-config/package.json b/packages/npm-package-json-lint-config/package.json index f18cb00b57bf4..fc82b9cd8aba4 100644 --- a/packages/npm-package-json-lint-config/package.json +++ b/packages/npm-package-json-lint-config/package.json @@ -26,9 +26,6 @@ "index.js" ], "main": "index.js", - "dependencies": { - "is-plain-obj": "^4.1.0" - }, "peerDependencies": { "npm-package-json-lint": ">=3.6.0" }, diff --git a/packages/prettier-config/package.json b/packages/prettier-config/package.json index ecae559e7c9ae..b8afd52844bc3 100644 --- a/packages/prettier-config/package.json +++ b/packages/prettier-config/package.json @@ -27,9 +27,6 @@ ], "main": "lib/index.js", "types": "build-types", - "dependencies": { - "is-plain-obj": "^4.1.0" - }, "peerDependencies": { "prettier": ">=2" },