From 9837dd5b81ef7439d5822eeb5172cb00480f3eb3 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 28 Nov 2025 01:27:20 +0000 Subject: [PATCH 1/2] Initial plan From 2c347f3ba198ca854a4ef25eb842b985f13f75c1 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 28 Nov 2025 01:51:06 +0000 Subject: [PATCH 2/2] refactor: replace lodash with lodash-es for better tree-shaking Co-authored-by: meet-student <59312002+meet-student@users.noreply.github.com> --- package.json | 2 +- packages/hooks/package.json | 2 +- packages/hooks/src/useDebounceFn/index.ts | 11 ++- packages/hooks/src/useReactive/index.ts | 2 +- .../refreshDeps/demo/refreshDepsAction.tsx | 2 +- .../src/plugins/useDebouncePlugin.ts | 4 +- .../src/plugins/useThrottlePlugin.ts | 4 +- packages/hooks/src/useSelections/index.ts | 2 +- packages/hooks/src/useThrottleFn/index.ts | 13 +++- packages/hooks/src/utils/lodash-polyfill.ts | 2 +- pnpm-lock.yaml | 71 +++++++++---------- 11 files changed, 65 insertions(+), 50 deletions(-) diff --git a/package.json b/package.json index 89d394fa73..b04b93767e 100755 --- a/package.json +++ b/package.json @@ -43,7 +43,7 @@ "@commitlint/cli": "^17.1.2", "@commitlint/config-conventional": "^17.1.0", "@testing-library/react": "^16.3.0", - "@types/lodash": "^4.17.20", + "@types/lodash-es": "^4.17.12", "@types/mockjs": "^1.0.7", "@types/react": "^19.1.8", "@types/react-dom": "^19.1.6", diff --git a/packages/hooks/package.json b/packages/hooks/package.json index 05dbf23757..d9fd482e9e 100644 --- a/packages/hooks/package.json +++ b/packages/hooks/package.json @@ -41,7 +41,7 @@ "dayjs": "^1.9.1", "intersection-observer": "^0.12.0", "js-cookie": "^3.0.5", - "lodash": "^4.17.21", + "lodash-es": "^4.17.21", "react-fast-compare": "^3.2.2", "resize-observer-polyfill": "^1.5.1", "screenfull": "^5.0.0", diff --git a/packages/hooks/src/useDebounceFn/index.ts b/packages/hooks/src/useDebounceFn/index.ts index 24910f4b37..5a629d4801 100644 --- a/packages/hooks/src/useDebounceFn/index.ts +++ b/packages/hooks/src/useDebounceFn/index.ts @@ -8,7 +8,16 @@ import isDev from '../utils/isDev'; type noop = (...args: any[]) => any; -function useDebounceFn(fn: T, options?: DebounceOptions) { +export interface DebouncedFn { + run: ((...args: Parameters) => ReturnType | undefined) & { + cancel: () => void; + flush: () => ReturnType | undefined; + }; + cancel: () => void; + flush: () => ReturnType | undefined; +} + +function useDebounceFn(fn: T, options?: DebounceOptions): DebouncedFn { if (isDev) { if (!isFunction(fn)) { console.error(`useDebounceFn expected parameter is a function, got ${typeof fn}`); diff --git a/packages/hooks/src/useReactive/index.ts b/packages/hooks/src/useReactive/index.ts index 48b04fda2b..94503240fe 100644 --- a/packages/hooks/src/useReactive/index.ts +++ b/packages/hooks/src/useReactive/index.ts @@ -1,5 +1,5 @@ import { useRef } from 'react'; -import isPlainObject from 'lodash/isPlainObject'; +import isPlainObject from 'lodash-es/isPlainObject'; import useCreation from '../useCreation'; import useUpdate from '../useUpdate'; diff --git a/packages/hooks/src/useRequest/doc/refreshDeps/demo/refreshDepsAction.tsx b/packages/hooks/src/useRequest/doc/refreshDeps/demo/refreshDepsAction.tsx index 3003045cd0..aaff01b8f9 100644 --- a/packages/hooks/src/useRequest/doc/refreshDeps/demo/refreshDepsAction.tsx +++ b/packages/hooks/src/useRequest/doc/refreshDeps/demo/refreshDepsAction.tsx @@ -8,7 +8,7 @@ import { useState } from 'react'; import Mock from 'mockjs'; -import isNumber from 'lodash/isNumber'; +import isNumber from 'lodash-es/isNumber'; import { Button, Space } from 'antd'; import { useRequest } from 'ahooks'; diff --git a/packages/hooks/src/useRequest/src/plugins/useDebouncePlugin.ts b/packages/hooks/src/useRequest/src/plugins/useDebouncePlugin.ts index facf01deaf..c7cd60f1c7 100644 --- a/packages/hooks/src/useRequest/src/plugins/useDebouncePlugin.ts +++ b/packages/hooks/src/useRequest/src/plugins/useDebouncePlugin.ts @@ -1,5 +1,5 @@ -import type { DebouncedFunc, DebounceSettings } from 'lodash'; -import debounce from 'lodash/debounce'; +import type { DebouncedFunc, DebounceSettings } from 'lodash-es'; +import debounce from 'lodash-es/debounce'; import { useEffect, useMemo, useRef } from 'react'; import type { Plugin } from '../types'; diff --git a/packages/hooks/src/useRequest/src/plugins/useThrottlePlugin.ts b/packages/hooks/src/useRequest/src/plugins/useThrottlePlugin.ts index 085492e4d9..641edb7995 100644 --- a/packages/hooks/src/useRequest/src/plugins/useThrottlePlugin.ts +++ b/packages/hooks/src/useRequest/src/plugins/useThrottlePlugin.ts @@ -1,5 +1,5 @@ -import type { DebouncedFunc, ThrottleSettings } from 'lodash'; -import throttle from 'lodash/throttle'; +import type { DebouncedFunc, ThrottleSettings } from 'lodash-es'; +import throttle from 'lodash-es/throttle'; import { useEffect, useRef } from 'react'; import type { Plugin } from '../types'; diff --git a/packages/hooks/src/useSelections/index.ts b/packages/hooks/src/useSelections/index.ts index facbb1597f..890dded194 100644 --- a/packages/hooks/src/useSelections/index.ts +++ b/packages/hooks/src/useSelections/index.ts @@ -1,4 +1,4 @@ -import isPlainObject from 'lodash/isPlainObject'; +import isPlainObject from 'lodash-es/isPlainObject'; import useMemoizedFn from '../useMemoizedFn'; import { isFunction, isString } from '../utils'; import { useMemo, useState } from 'react'; diff --git a/packages/hooks/src/useThrottleFn/index.ts b/packages/hooks/src/useThrottleFn/index.ts index 4575b32cf8..20917f9110 100644 --- a/packages/hooks/src/useThrottleFn/index.ts +++ b/packages/hooks/src/useThrottleFn/index.ts @@ -1,4 +1,4 @@ -import throttle from 'lodash/throttle'; +import throttle from 'lodash-es/throttle'; import { useMemo } from 'react'; import useLatest from '../useLatest'; import type { ThrottleOptions } from '../useThrottle/throttleOptions'; @@ -8,7 +8,16 @@ import isDev from '../utils/isDev'; type noop = (...args: any[]) => any; -function useThrottleFn(fn: T, options?: ThrottleOptions) { +export interface ThrottledFn { + run: ((...args: Parameters) => ReturnType | undefined) & { + cancel: () => void; + flush: () => ReturnType | undefined; + }; + cancel: () => void; + flush: () => ReturnType | undefined; +} + +function useThrottleFn(fn: T, options?: ThrottleOptions): ThrottledFn { if (isDev) { if (!isFunction(fn)) { console.error(`useThrottleFn expected parameter is a function, got ${typeof fn}`); diff --git a/packages/hooks/src/utils/lodash-polyfill.ts b/packages/hooks/src/utils/lodash-polyfill.ts index a02dd2a563..2a5a4ffbc2 100644 --- a/packages/hooks/src/utils/lodash-polyfill.ts +++ b/packages/hooks/src/utils/lodash-polyfill.ts @@ -1,4 +1,4 @@ -import debounce from 'lodash/debounce'; +import debounce from 'lodash-es/debounce'; function isNodeOrWeb() { const freeGlobal = diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5e0ffa241e..4ac942ab80 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -35,9 +35,9 @@ importers: '@testing-library/react': specifier: ^16.3.0 version: 16.3.0(@testing-library/dom@10.4.1)(@types/react-dom@19.1.7(@types/react@19.1.11))(@types/react@19.1.11)(react-dom@19.1.1(react@19.1.1))(react@19.1.1) - '@types/lodash': - specifier: ^4.17.20 - version: 4.17.20 + '@types/lodash-es': + specifier: ^4.17.12 + version: 4.17.12 '@types/mockjs': specifier: ^1.0.7 version: 1.0.10 @@ -164,7 +164,7 @@ importers: js-cookie: specifier: ^3.0.5 version: 3.0.5 - lodash: + lodash-es: specifier: ^4.17.21 version: 4.17.21 react: @@ -954,28 +954,24 @@ packages: engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - libc: [musl] '@biomejs/cli-linux-arm64@2.2.2': resolution: {integrity: sha512-JfrK3gdmWWTh2J5tq/rcWCOsImVyzUnOS2fkjhiYKCQ+v8PqM+du5cfB7G1kXas+7KQeKSWALv18iQqdtIMvzw==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - libc: [glibc] '@biomejs/cli-linux-x64-musl@2.2.2': resolution: {integrity: sha512-ZCLXcZvjZKSiRY/cFANKg+z6Fhsf9MHOzj+NrDQcM+LbqYRT97LyCLWy2AS+W2vP+i89RyRM+kbGpUzbRTYWig==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - libc: [musl] '@biomejs/cli-linux-x64@2.2.2': resolution: {integrity: sha512-Ogb+77edO5LEP/xbNicACOWVLt8mgC+E1wmpUakr+O4nKwLt9vXe74YNuT3T1dUBxC/SnrVmlzZFC7kQJEfquQ==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - libc: [glibc] '@biomejs/cli-win32-arm64@2.2.2': resolution: {integrity: sha512-wBe2wItayw1zvtXysmHJQoQqXlTzHSpQRyPpJKiNIR21HzH/CrZRDFic1C1jDdp+zAPtqhNExa0owKMbNwW9cQ==} @@ -1443,67 +1439,56 @@ packages: resolution: {integrity: sha512-JWnrj8qZgLWRNHr7NbpdnrQ8kcg09EBBq8jVOjmtlB3c8C6IrynAJSMhMVGME4YfTJzIkJqvSUSVJRqkDnu/aA==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.48.0': resolution: {integrity: sha512-9xu92F0TxuMH0tD6tG3+GtngwdgSf8Bnz+YcsPG91/r5Vgh5LNofO48jV55priA95p3c92FLmPM7CvsVlnSbGQ==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.48.0': resolution: {integrity: sha512-NLtvJB5YpWn7jlp1rJiY0s+G1Z1IVmkDuiywiqUhh96MIraC0n7XQc2SZ1CZz14shqkM+XN2UrfIo7JB6UufOA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.48.0': resolution: {integrity: sha512-QJ4hCOnz2SXgCh+HmpvZkM+0NSGcZACyYS8DGbWn2PbmA0e5xUk4bIP8eqJyNXLtyB4gZ3/XyvKtQ1IFH671vQ==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-loongarch64-gnu@4.48.0': resolution: {integrity: sha512-Pk0qlGJnhILdIC5zSKQnprFjrGmjfDM7TPZ0FKJxRkoo+kgMRAg4ps1VlTZf8u2vohSicLg7NP+cA5qE96PaFg==} cpu: [loong64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-ppc64-gnu@4.48.0': resolution: {integrity: sha512-/dNFc6rTpoOzgp5GKoYjT6uLo8okR/Chi2ECOmCZiS4oqh3mc95pThWma7Bgyk6/WTEvjDINpiBCuecPLOgBLQ==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-gnu@4.48.0': resolution: {integrity: sha512-YBwXsvsFI8CVA4ej+bJF2d9uAeIiSkqKSPQNn0Wyh4eMDY4wxuSp71BauPjQNCKK2tD2/ksJ7uhJ8X/PVY9bHQ==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.48.0': resolution: {integrity: sha512-FI3Rr2aGAtl1aHzbkBIamsQyuauYtTF9SDUJ8n2wMXuuxwchC3QkumZa1TEXYIv/1AUp1a25Kwy6ONArvnyeVQ==} cpu: [riscv64] os: [linux] - libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.48.0': resolution: {integrity: sha512-Dx7qH0/rvNNFmCcIRe1pyQ9/H0XO4v/f0SDoafwRYwc2J7bJZ5N4CHL/cdjamISZ5Cgnon6iazAVRFlxSoHQnQ==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.48.0': resolution: {integrity: sha512-GUdZKTeKBq9WmEBzvFYuC88yk26vT66lQV8D5+9TgkfbewhLaTHRNATyzpQwwbHIfJvDJ3N9WJ90wK/uR3cy3Q==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-musl@4.48.0': resolution: {integrity: sha512-ao58Adz/v14MWpQgYAb4a4h3fdw73DrDGtaiF7Opds5wNyEQwtO6M9dBh89nke0yoZzzaegq6J/EXs7eBebG8A==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-win32-arm64-msvc@4.48.0': resolution: {integrity: sha512-kpFno46bHtjZVdRIOxqaGeiABiToo2J+st7Yce+aiAoo1H0xPi2keyQIP04n2JjDVuxBN6bSz9R6RdTK5hIppw==} @@ -1612,6 +1597,9 @@ packages: '@types/keyv@3.1.4': resolution: {integrity: sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==} + '@types/lodash-es@4.17.12': + resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==} + '@types/lodash@4.17.20': resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==} @@ -5053,6 +5041,9 @@ packages: resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} engines: {node: '>=10'} + lodash-es@4.17.21: + resolution: {integrity: sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw==} + lodash.camelcase@4.3.0: resolution: {integrity: sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==} @@ -10019,18 +10010,18 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.48.0': optional: true - '@stylelint/postcss-css-in-js@0.37.3(postcss-syntax@0.36.2)(postcss@7.0.39)': + '@stylelint/postcss-css-in-js@0.37.3(postcss-syntax@0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39))(postcss@7.0.39)': dependencies: '@babel/core': 7.28.3 postcss: 7.0.39 - postcss-syntax: 0.36.2(postcss-html@0.36.0)(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) + postcss-syntax: 0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) transitivePeerDependencies: - supports-color - '@stylelint/postcss-markdown@0.36.2(postcss-syntax@0.36.2)(postcss@7.0.39)': + '@stylelint/postcss-markdown@0.36.2(postcss-syntax@0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39))(postcss@7.0.39)': dependencies: postcss: 7.0.39 - postcss-syntax: 0.36.2(postcss-html@0.36.0)(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) + postcss-syntax: 0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) remark: 13.0.0 unist-util-find-all-after: 3.0.2 transitivePeerDependencies: @@ -10115,6 +10106,10 @@ snapshots: dependencies: '@types/node': 24.3.0 + '@types/lodash-es@4.17.12': + dependencies: + '@types/lodash': 4.17.20 + '@types/lodash@4.17.20': {} '@types/mathjax@0.0.36': {} @@ -10211,7 +10206,7 @@ snapshots: '@types/unist@2.0.11': {} - '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@5.9.2)': + '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5)': dependencies: '@eslint-community/regexpp': 4.12.1 '@typescript-eslint/parser': 5.62.0(eslint@7.32.0)(typescript@4.9.5) @@ -10226,7 +10221,7 @@ snapshots: semver: 7.7.2 tsutils: 3.21.0(typescript@4.9.5) optionalDependencies: - typescript: 5.9.2 + typescript: 4.9.5 transitivePeerDependencies: - supports-color @@ -10458,14 +10453,14 @@ snapshots: '@babel/preset-env': 7.28.3(@babel/core@7.28.3) '@babel/preset-react': 7.27.1(@babel/core@7.28.3) '@babel/preset-typescript': 7.27.1(@babel/core@7.28.3) - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@5.9.2) + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5) '@typescript-eslint/parser': 5.62.0(eslint@7.32.0)(typescript@4.9.5) chalk: 4.1.2 eslint: 7.32.0 eslint-config-prettier: 8.10.2(eslint@7.32.0) eslint-formatter-pretty: 4.1.0 eslint-plugin-babel: 5.3.1(eslint@7.32.0) - eslint-plugin-jest: 24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5) + eslint-plugin-jest: 24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5) eslint-plugin-promise: 6.6.0(eslint@7.32.0) eslint-plugin-react: 7.37.5(eslint@7.32.0) eslint-plugin-react-hooks: 4.6.2(eslint@7.32.0) @@ -12663,12 +12658,12 @@ snapshots: eslint: 7.32.0 eslint-rule-composer: 0.3.0 - eslint-plugin-jest@24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5))(eslint@7.32.0)(typescript@4.9.5): + eslint-plugin-jest@24.7.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5): dependencies: '@typescript-eslint/experimental-utils': 4.33.0(eslint@7.32.0)(typescript@4.9.5) eslint: 7.32.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@5.9.2) + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@7.32.0)(typescript@5.9.2))(eslint@7.32.0)(typescript@4.9.5) transitivePeerDependencies: - supports-color - typescript @@ -14530,6 +14525,8 @@ snapshots: dependencies: p-locate: 5.0.0 + lodash-es@4.17.21: {} + lodash.camelcase@4.3.0: {} lodash.clonedeep@4.5.0: {} @@ -15625,11 +15622,11 @@ snapshots: dependencies: postcss: 7.0.32 - postcss-html@0.36.0(postcss-syntax@0.36.2)(postcss@7.0.39): + postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39): dependencies: htmlparser2: 3.10.1 postcss: 7.0.39 - postcss-syntax: 0.36.2(postcss-html@0.36.0)(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) + postcss-syntax: 0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) postcss-image-set-function@3.0.1: dependencies: @@ -15788,11 +15785,11 @@ snapshots: lodash: 4.17.21 postcss: 8.5.6 - postcss-syntax@0.36.2(postcss-html@0.36.0)(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39): + postcss-syntax@0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39): dependencies: postcss: 7.0.39 optionalDependencies: - postcss-html: 0.36.0(postcss-syntax@0.36.2)(postcss@7.0.39) + postcss-html: 0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39) postcss-less: 3.1.4 postcss-scss: 2.1.1 @@ -17520,8 +17517,8 @@ snapshots: stylelint@13.13.1: dependencies: - '@stylelint/postcss-css-in-js': 0.37.3(postcss-syntax@0.36.2)(postcss@7.0.39) - '@stylelint/postcss-markdown': 0.36.2(postcss-syntax@0.36.2)(postcss@7.0.39) + '@stylelint/postcss-css-in-js': 0.37.3(postcss-syntax@0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39))(postcss@7.0.39) + '@stylelint/postcss-markdown': 0.36.2(postcss-syntax@0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39))(postcss@7.0.39) autoprefixer: 9.8.8 balanced-match: 2.0.0 chalk: 4.1.2 @@ -17547,7 +17544,7 @@ snapshots: micromatch: 4.0.8 normalize-selector: 0.2.0 postcss: 7.0.39 - postcss-html: 0.36.0(postcss-syntax@0.36.2)(postcss@7.0.39) + postcss-html: 0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39) postcss-less: 3.1.4 postcss-media-query-parser: 0.2.3 postcss-resolve-nested-selector: 0.1.6 @@ -17555,7 +17552,7 @@ snapshots: postcss-sass: 0.4.4 postcss-scss: 2.1.1 postcss-selector-parser: 6.1.2 - postcss-syntax: 0.36.2(postcss-html@0.36.0)(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) + postcss-syntax: 0.36.2(postcss-html@0.36.0(postcss-syntax@0.36.2(postcss@7.0.39))(postcss@7.0.39))(postcss-less@3.1.4)(postcss-scss@2.1.1)(postcss@7.0.39) postcss-value-parser: 4.2.0 resolve-from: 5.0.0 slash: 3.0.0