diff --git a/packages/data-controls/CHANGELOG.md b/packages/data-controls/CHANGELOG.md index 88c17d89a40159..9d48389c46d0a6 100644 --- a/packages/data-controls/CHANGELOG.md +++ b/packages/data-controls/CHANGELOG.md @@ -6,6 +6,10 @@ - Raise the minimum required Node.js version to `>=22.13.0`, for stable `require(esm)` support ([#84313](https://github.com/WordPress/gutenberg/pull/84313)). +### Internal + +- Convert the tests to TypeScript, and split tsconfig into a build project and a default dev project so the tests are type checked without publishing their declarations ([#84852](https://github.com/WordPress/gutenberg/pull/84852)). + ## 4.57.0 (2026-10-07) ### Bug Fixes diff --git a/packages/data-controls/src/test/index.js b/packages/data-controls/src/test/index.ts similarity index 75% rename from packages/data-controls/src/test/index.js rename to packages/data-controls/src/test/index.ts index b22f3ca08990e2..306e3b4f87f43d 100644 --- a/packages/data-controls/src/test/index.js +++ b/packages/data-controls/src/test/index.ts @@ -11,12 +11,14 @@ describe( 'controls', () => { mockedTriggerFetch.mockClear(); } ); it( 'invokes the triggerFetch function', () => { - controls.API_FETCH( { request: '' } ); + controls.API_FETCH( { request: { path: '' } } ); expect( mockedTriggerFetch ).toHaveBeenCalledTimes( 1 ); } ); it( 'invokes the triggerFetch function with the passed in request', () => { - controls.API_FETCH( { request: 'foo' } ); - expect( mockedTriggerFetch ).toHaveBeenCalledWith( 'foo' ); + controls.API_FETCH( { request: { path: 'foo' } } ); + expect( mockedTriggerFetch ).toHaveBeenCalledWith( { + path: 'foo', + } ); } ); } ); } ); diff --git a/packages/data-controls/tsconfig.build.json b/packages/data-controls/tsconfig.build.json new file mode 100644 index 00000000000000..fc33b902d4a832 --- /dev/null +++ b/packages/data-controls/tsconfig.build.json @@ -0,0 +1,12 @@ +{ + "$schema": "https://json.schemastore.org/tsconfig.json", + "extends": "@wordpress/monorepo-tools/tsconfig/base.json", + "compilerOptions": { + "types": [ "gutenberg-env" ] + }, + "references": [ + { "path": "../api-fetch/tsconfig.build.json" }, + { "path": "../data" }, + { "path": "../deprecated/tsconfig.build.json" } + ] +} diff --git a/packages/data-controls/tsconfig.json b/packages/data-controls/tsconfig.json index fc33b902d4a832..f5ece948ea1f5e 100644 --- a/packages/data-controls/tsconfig.json +++ b/packages/data-controls/tsconfig.json @@ -1,12 +1,8 @@ { "$schema": "https://json.schemastore.org/tsconfig.json", - "extends": "@wordpress/monorepo-tools/tsconfig/base.json", + "extends": "@wordpress/monorepo-tools/tsconfig/dev.base.json", "compilerOptions": { - "types": [ "gutenberg-env" ] + "types": [ "gutenberg-env", "gutenberg-vitest-test-env" ] }, - "references": [ - { "path": "../api-fetch/tsconfig.build.json" }, - { "path": "../data" }, - { "path": "../deprecated/tsconfig.build.json" } - ] + "references": [ { "path": "./tsconfig.build.json" } ] } diff --git a/tsconfig.build.json b/tsconfig.build.json index 73d2ba3a553ba2..6379cb9ed71c24 100644 --- a/tsconfig.build.json +++ b/tsconfig.build.json @@ -23,7 +23,7 @@ { "path": "packages/core-data/tsconfig.build.json" }, { "path": "packages/core-fields/tsconfig.build.json" }, { "path": "packages/data" }, - { "path": "packages/data-controls" }, + { "path": "packages/data-controls/tsconfig.build.json" }, { "path": "packages/dataviews/tsconfig.build.json" }, { "path": "packages/date/tsconfig.build.json" }, { "path": "packages/deprecated/tsconfig.build.json" }, diff --git a/tsconfig.json b/tsconfig.json index 5eec41b28093a0..6e922bb40bf165 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -18,6 +18,7 @@ { "path": "packages/core-actions" }, { "path": "packages/core-data" }, { "path": "packages/core-fields" }, + { "path": "packages/data-controls" }, { "path": "packages/dataviews" }, { "path": "packages/dataviews/tsconfig.stories.json" }, { "path": "packages/date" },