diff --git a/.changeset/young-seals-train.md b/.changeset/young-seals-train.md new file mode 100644 index 0000000000..048920de7e --- /dev/null +++ b/.changeset/young-seals-train.md @@ -0,0 +1,5 @@ +--- +"@lynx-js/test-environment": minor +--- + +Switch to ESM package format by setting `"type": "module"`. diff --git a/packages/testing-library/test-environment/package.json b/packages/testing-library/test-environment/package.json index 9447b0b51a..f899154167 100644 --- a/packages/testing-library/test-environment/package.json +++ b/packages/testing-library/test-environment/package.json @@ -17,23 +17,31 @@ "name": "Yiming Li", "email": "yimingli.cs@gmail.com" }, + "type": "module", "exports": { ".": { - "default": "./dist/index.mjs", "types": "./dist/index.d.ts", - "import": "./dist/index.mjs", - "require": "./dist/index.js" + "import": "./dist/index.js", + "require": "./dist/index.cjs", + "default": "./dist/index.js" }, "./env/vitest": { - "default": "./dist/env/vitest/index.mjs", "types": "./dist/env/vitest/index.d.ts", - "import": "./dist/env/vitest/index.mjs", - "require": "./dist/env/vitest/index.js" + "import": "./dist/env/vitest/index.js", + "require": "./dist/env/vitest/index.cjs", + "default": "./dist/env/vitest/index.js" } }, - "main": "./dist/index.js", - "module": "./dist/index.mjs", + "main": "./dist/index.cjs", + "module": "./dist/index.js", "types": "./dist/index.d.ts", + "typesVersions": { + "*": { + "env/vitest": [ + "./dist/env/vitest/index.d.ts" + ] + } + }, "files": [ "dist" ], @@ -44,6 +52,7 @@ }, "devDependencies": { "@testing-library/jest-dom": "^6.6.3", - "@types/jsdom": "^21.1.7" + "@types/jsdom": "^21.1.7", + "rsbuild-plugin-publint": "0.3.1" } } diff --git a/packages/testing-library/test-environment/rslib.config.ts b/packages/testing-library/test-environment/rslib.config.ts index aaf377d7a0..63873106a0 100644 --- a/packages/testing-library/test-environment/rslib.config.ts +++ b/packages/testing-library/test-environment/rslib.config.ts @@ -1,4 +1,5 @@ import { defineConfig } from '@rslib/core'; +import { pluginPublint } from 'rsbuild-plugin-publint'; export default defineConfig({ source: { @@ -22,4 +23,7 @@ export default defineConfig({ syntax: 'es2021', }, ], + plugins: [ + pluginPublint(), + ], }); diff --git a/packages/testing-library/test-environment/src/index.ts b/packages/testing-library/test-environment/src/index.ts index d0eb8349ba..c3aac013a8 100644 --- a/packages/testing-library/test-environment/src/index.ts +++ b/packages/testing-library/test-environment/src/index.ts @@ -7,11 +7,11 @@ import EventEmitter from 'events'; import { JSDOM } from 'jsdom'; -import { createGlobalThis, LynxGlobalThis } from './lynx/GlobalThis'; -import { initElementTree } from './lynx/ElementPAPI'; -export { initElementTree } from './lynx/ElementPAPI'; -export type { LynxElement } from './lynx/ElementPAPI'; -export type { LynxGlobalThis } from './lynx/GlobalThis'; +import { createGlobalThis, LynxGlobalThis } from './lynx/GlobalThis.js'; +import { initElementTree } from './lynx/ElementPAPI.js'; +export { initElementTree } from './lynx/ElementPAPI.js'; +export type { LynxElement } from './lynx/ElementPAPI.js'; +export type { LynxGlobalThis } from './lynx/GlobalThis.js'; /** * @public * The lynx element tree diff --git a/packages/testing-library/test-environment/src/lynx/GlobalThis.ts b/packages/testing-library/test-environment/src/lynx/GlobalThis.ts index b7210dba4b..7c3f05af5b 100644 --- a/packages/testing-library/test-environment/src/lynx/GlobalThis.ts +++ b/packages/testing-library/test-environment/src/lynx/GlobalThis.ts @@ -1,4 +1,4 @@ -import { define } from '../util'; +import { define } from '../util.js'; function installOwnProperties(globalThis: any) { define(globalThis, { diff --git a/packages/testing-library/test-environment/turbo.json b/packages/testing-library/test-environment/turbo.json index 3b4189eea4..6c031d7435 100644 --- a/packages/testing-library/test-environment/turbo.json +++ b/packages/testing-library/test-environment/turbo.json @@ -9,6 +9,12 @@ "cache": false }, "build": { + "dependsOn": [], + "inputs": [ + "src/**", + "!src/**/__tests__/**", + "rslib.config.ts" + ], "outputs": ["dist/**"] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e5f1457482..d0c39e3b03 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -588,6 +588,9 @@ importers: '@types/jsdom': specifier: ^21.1.7 version: 21.1.7 + rsbuild-plugin-publint: + specifier: 0.3.1 + version: 0.3.1(@rsbuild/core@1.3.15) packages/third-party/tailwind-preset: devDependencies: