From 3fdcc1604ed1df27dfaab1b611c8f93e5814fd88 Mon Sep 17 00:00:00 2001 From: Wybe van den Bosch Date: Fri, 19 Jun 2026 10:07:29 +0200 Subject: [PATCH 1/2] feat(vite-config): forward extra Vite config to base package config Capture unknown options passed to createBasePackageConfig as restConfig and deep-merge them onto the generated config via mergeConfig. This lets consumers pass standard Vite options (e.g. resolve.alias, server) directly to npmPackageConfig instead of wrapping them in a custom plugin. --- packages/vite-config/src/configs/base-package.js | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/vite-config/src/configs/base-package.js b/packages/vite-config/src/configs/base-package.js index 50ff650..d0a3f87 100644 --- a/packages/vite-config/src/configs/base-package.js +++ b/packages/vite-config/src/configs/base-package.js @@ -1,7 +1,7 @@ /** * External dependencies */ -import { defineConfig } from 'vite'; +import { defineConfig, mergeConfig } from 'vite'; import { viteExternalsPlugin } from 'vite-plugin-externals'; import { wordpressPlugin } from '@roots/vite-plugin'; import checker from 'vite-plugin-checker'; @@ -35,6 +35,7 @@ export const createBasePackageConfig = ( { externalizeReact = true, wordpressGlobals = true, classicJsx = false, + ...restConfig } = {} ) => { const cwd = process.cwd(); const normalizedEntries = toEntryObject( entryPoints ); @@ -71,7 +72,7 @@ export const createBasePackageConfig = ( { } ); } - return { + const baseConfig = { plugins: [ /** * Externalizes React, ReactDOM and ReactJSXRuntime & reference global versions @@ -137,5 +138,7 @@ export const createBasePackageConfig = ( { }, }, }; + + return mergeConfig( baseConfig, restConfig ); } ); }; From 2507bde934c3c1a4dfe8328625549274b3c4ad94 Mon Sep 17 00:00:00 2001 From: Wybe van den Bosch Date: Fri, 19 Jun 2026 10:45:14 +0200 Subject: [PATCH 2/2] chore: sync pnpm-lock.yaml with packages/toolkit/package.json --- pnpm-lock.yaml | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ab20c50..b758e48 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -212,6 +212,9 @@ importers: specifier: ^18.0.0 version: 18.0.0(stylelint@17.13.0(typescript@5.9.3)) optionalDependencies: + '@yardinternet/eslint-config': + specifier: ^1.2.12 + version: 1.2.12(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.7.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(stylelint@17.13.0(typescript@5.9.3))(typescript@5.9.3)(wp-prettier@3.0.3) '@yardinternet/prettier-config': specifier: ^2.0.11 version: 2.0.11(yaml@2.9.0) @@ -3828,6 +3831,9 @@ packages: '@xtuc/long@4.2.2': resolution: {integrity: sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==} + '@yardinternet/eslint-config@1.2.12': + resolution: {integrity: sha512-Z90Rk+NIX0RGQnFq1OvLWIfmJHSGYpm0hoI9z6LzM/r8JJPnXNHBXfvAhWIcUGXq+JUj/sKlwOgAFGzM7m1fvA==, tarball: https://npm.pkg.github.com/download/@yardinternet/eslint-config/1.2.12/42de882da855c9ffa61ff0de7fd1e311f6ee4e2b} + '@yardinternet/prettier-config@2.0.11': resolution: {integrity: sha512-6/L3XhHwzR5Alk+qqrfAU03RJHoSAR71cRtQzeLJB8zDud1sqat5PlMEJquDyHvWuvDypFAGun+QOA6jxx0qAw==, tarball: https://npm.pkg.github.com/download/@yardinternet/prettier-config/2.0.11/e25f89a6394c46ef6853a8eaac829da7e5e35567} @@ -13655,6 +13661,37 @@ snapshots: '@xtuc/long@4.2.2': {} + '@yardinternet/eslint-config@1.2.12(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.7.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(stylelint@17.13.0(typescript@5.9.3))(typescript@5.9.3)(wp-prettier@3.0.3)': + dependencies: + '@babel/eslint-parser': 7.25.7(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.7.0)) + '@babel/preset-react': 7.29.7(@babel/core@7.29.7) + '@eslint/compat': 2.1.0(eslint@9.39.4(jiti@2.7.0)) + '@eslint/eslintrc': 3.3.5 + '@eslint/js': 9.39.4 + '@typescript-eslint/eslint-plugin': 8.60.1(@typescript-eslint/parser@8.61.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) + '@typescript-eslint/parser': 8.61.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3) + '@wordpress/eslint-plugin': 24.5.0(@babel/core@7.29.7)(eslint@9.39.4(jiti@2.7.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(stylelint@17.13.0(typescript@5.9.3))(typescript@5.9.3)(wp-prettier@3.0.3) + eslint-config-prettier: 10.1.8(eslint@9.39.4(jiti@2.7.0)) + eslint-import-resolver-alias: 1.1.2(eslint-plugin-import@2.32.0) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.61.1(eslint@9.39.4(jiti@2.7.0))(typescript@5.9.3))(eslint@9.39.4(jiti@2.7.0)) + eslint-plugin-react-hooks: 7.1.1(eslint@9.39.4(jiti@2.7.0)) + globals: 17.6.0 + transitivePeerDependencies: + - '@babel/core' + - '@types/eslint' + - eslint + - eslint-import-resolver-typescript + - eslint-import-resolver-webpack + - eslint-plugin-import-x + - jest + - prettier + - react + - react-dom + - stylelint + - supports-color + - typescript + optional: true + '@yardinternet/prettier-config@2.0.11(yaml@2.9.0)': dependencies: '@shufo/prettier-plugin-blade': 1.16.2(yaml@2.9.0)