From 12c9cb7df5b61ff0c055e90b6dae61f9dda934ae Mon Sep 17 00:00:00 2001 From: Jonghyeon Ko Date: Sun, 3 Sep 2023 23:10:23 +0900 Subject: [PATCH] fix(esm): cjs to esm as default (#125) * fix(esm): cjs to esm as default * Create fuzzy-lizards-build.md --- .changeset/fuzzy-lizards-build.md | 6 +++ .github/workflows/ci.yml | 4 +- commitlint.config.js => commitlint.config.cjs | 0 configs/babel/{.eslintrc.js => .eslintrc.cjs} | 0 .../{.eslintrc.js => .eslintrc.cjs} | 0 .../{.eslintrc.js => .eslintrc.cjs} | 0 .../{.eslintrc.js => .eslintrc.cjs} | 0 configs/jest/{.eslintrc.js => .eslintrc.cjs} | 0 configs/tsup/{.eslintrc.js => .eslintrc.cjs} | 0 package.json | 3 ++ .../{.eslintrc.js => .eslintrc.cjs} | 0 .../{babel.config.js => babel.config.cjs} | 0 packages/react-query/jest.config.cjs | 4 ++ packages/react-query/jest.config.js | 6 --- packages/react-query/package.json | 16 ++++--- packages/react-query/src/index.ts | 2 +- .../react/{.eslintrc.js => .eslintrc.cjs} | 0 .../{babel.config.js => babel.config.cjs} | 0 packages/react/jest.config.cjs | 4 ++ packages/react/jest.config.js | 6 --- packages/react/package.json | 16 ++++--- pnpm-lock.yaml | 43 +++++++++++++++++++ turbo.json | 3 ++ websites/docs/{.eslintrc.js => .eslintrc.cjs} | 0 .../{.eslintrc.js => .eslintrc.cjs} | 0 25 files changed, 88 insertions(+), 25 deletions(-) create mode 100644 .changeset/fuzzy-lizards-build.md rename commitlint.config.js => commitlint.config.cjs (100%) rename configs/babel/{.eslintrc.js => .eslintrc.cjs} (100%) rename configs/eslint-config-js/{.eslintrc.js => .eslintrc.cjs} (100%) rename configs/eslint-config-ts/{.eslintrc.js => .eslintrc.cjs} (100%) rename configs/eslint-config/{.eslintrc.js => .eslintrc.cjs} (100%) rename configs/jest/{.eslintrc.js => .eslintrc.cjs} (100%) rename configs/tsup/{.eslintrc.js => .eslintrc.cjs} (100%) rename packages/react-query/{.eslintrc.js => .eslintrc.cjs} (100%) rename packages/react-query/{babel.config.js => babel.config.cjs} (100%) create mode 100644 packages/react-query/jest.config.cjs delete mode 100644 packages/react-query/jest.config.js rename packages/react/{.eslintrc.js => .eslintrc.cjs} (100%) rename packages/react/{babel.config.js => babel.config.cjs} (100%) create mode 100644 packages/react/jest.config.cjs delete mode 100644 packages/react/jest.config.js rename websites/docs/{.eslintrc.js => .eslintrc.cjs} (100%) rename websites/visualization/{.eslintrc.js => .eslintrc.cjs} (100%) diff --git a/.changeset/fuzzy-lizards-build.md b/.changeset/fuzzy-lizards-build.md new file mode 100644 index 000000000..44cd9b3e6 --- /dev/null +++ b/.changeset/fuzzy-lizards-build.md @@ -0,0 +1,6 @@ +--- +"@suspensive/react-query": patch +"@suspensive/react": patch +--- + +fix(esm): cjs to esm as default diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index a2604c650..cc198d450 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -17,7 +17,7 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - command: ['pnpm lint', 'pnpm test', 'pnpm test:tsd', 'pnpm type:check'] + command: ['pnpm lint', 'pnpm lint:pub', 'pnpm test', 'pnpm test:tsd', 'pnpm type:check'] steps: - uses: actions/checkout@v3 - uses: pnpm/action-setup@v2 @@ -29,6 +29,6 @@ jobs: cache-dependency-path: 'pnpm-lock.yaml' node-version-file: '.nvmrc' - run: pnpm install --frozen-lockfile - - run: pnpm build --filter=@suspensive/react --filter=@suspensive/react-query + - run: pnpm build - name: Run commands run: ${{ matrix.command }} diff --git a/commitlint.config.js b/commitlint.config.cjs similarity index 100% rename from commitlint.config.js rename to commitlint.config.cjs diff --git a/configs/babel/.eslintrc.js b/configs/babel/.eslintrc.cjs similarity index 100% rename from configs/babel/.eslintrc.js rename to configs/babel/.eslintrc.cjs diff --git a/configs/eslint-config-js/.eslintrc.js b/configs/eslint-config-js/.eslintrc.cjs similarity index 100% rename from configs/eslint-config-js/.eslintrc.js rename to configs/eslint-config-js/.eslintrc.cjs diff --git a/configs/eslint-config-ts/.eslintrc.js b/configs/eslint-config-ts/.eslintrc.cjs similarity index 100% rename from configs/eslint-config-ts/.eslintrc.js rename to configs/eslint-config-ts/.eslintrc.cjs diff --git a/configs/eslint-config/.eslintrc.js b/configs/eslint-config/.eslintrc.cjs similarity index 100% rename from configs/eslint-config/.eslintrc.js rename to configs/eslint-config/.eslintrc.cjs diff --git a/configs/jest/.eslintrc.js b/configs/jest/.eslintrc.cjs similarity index 100% rename from configs/jest/.eslintrc.js rename to configs/jest/.eslintrc.cjs diff --git a/configs/tsup/.eslintrc.js b/configs/tsup/.eslintrc.cjs similarity index 100% rename from configs/tsup/.eslintrc.js rename to configs/tsup/.eslintrc.cjs diff --git a/package.json b/package.json index 71831b476..371a34670 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ }, "license": "MIT", "packageManager": "pnpm@8.5.1", + "type": "module", "workspaces": [ "configs/*", "packages/*", @@ -31,6 +32,7 @@ "graph": "mkdir graph && turbo run build --graph=graph/index.html", "lint": "turbo run lint", "lint:pack": "packlint sort -R", + "lint:pub": "turbo run lint:pub", "postinstall": "husky install", "prepack": "turbo run prepack", "test": "turbo run test", @@ -52,6 +54,7 @@ "lint-staged": "^13.2.2", "packlint": "^0.2.4", "prettier": "^2.8.8", + "publint": "^0.2.2", "turbo": "latest", "typescript": "^5.1.6" } diff --git a/packages/react-query/.eslintrc.js b/packages/react-query/.eslintrc.cjs similarity index 100% rename from packages/react-query/.eslintrc.js rename to packages/react-query/.eslintrc.cjs diff --git a/packages/react-query/babel.config.js b/packages/react-query/babel.config.cjs similarity index 100% rename from packages/react-query/babel.config.js rename to packages/react-query/babel.config.cjs diff --git a/packages/react-query/jest.config.cjs b/packages/react-query/jest.config.cjs new file mode 100644 index 000000000..cdeba2df2 --- /dev/null +++ b/packages/react-query/jest.config.cjs @@ -0,0 +1,4 @@ +module.exports = { + ...require('@suspensive/jest'), + rootDir: __dirname, +} diff --git a/packages/react-query/jest.config.js b/packages/react-query/jest.config.js deleted file mode 100644 index 65b8000bc..000000000 --- a/packages/react-query/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -const config = require('@suspensive/jest') - -module.exports = { - ...config, - rootDir: __dirname, -} diff --git a/packages/react-query/package.json b/packages/react-query/package.json index a7fcb6c56..5953af832 100644 --- a/packages/react-query/package.json +++ b/packages/react-query/package.json @@ -14,16 +14,21 @@ }, "license": "MIT", "sideEffects": false, + "type": "module", "exports": { ".": { - "require": "./dist/index.js", - "import": "./dist/index.mjs", - "types": "./dist/index.d.ts" + "import": { + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } }, "./package.json": "./package.json" }, - "main": "dist/index.js", - "module": "dist/index.mjs", + "main": "dist/index.cjs", "types": "dist/index.d.ts", "files": [ "dist", @@ -34,6 +39,7 @@ "scripts": { "build": "tsup", "lint": "eslint \"**/*.ts*\"", + "lint:pub": "publint --strict", "prepack": "pnpm build && pnpm test:tsd", "test": "jest", "test:tsd": "tsd -t ./dist/index.d.ts", diff --git a/packages/react-query/src/index.ts b/packages/react-query/src/index.ts index 5e80d69a7..677c5d732 100644 --- a/packages/react-query/src/index.ts +++ b/packages/react-query/src/index.ts @@ -1,11 +1,11 @@ export { useSuspenseQuery } from './useSuspenseQuery' -export { useSuspenseQueries } from './useSuspenseQueries' export type { BaseUseSuspenseQueryResult, UseSuspenseQueryOptions, UseSuspenseQueryResultOnLoading, UseSuspenseQueryResultOnSuccess, } from './useSuspenseQuery' +export { useSuspenseQueries } from './useSuspenseQueries' export { useSuspenseInfiniteQuery } from './useSuspenseInfiniteQuery' export type { BaseUseSuspenseInfiniteQueryResult, diff --git a/packages/react/.eslintrc.js b/packages/react/.eslintrc.cjs similarity index 100% rename from packages/react/.eslintrc.js rename to packages/react/.eslintrc.cjs diff --git a/packages/react/babel.config.js b/packages/react/babel.config.cjs similarity index 100% rename from packages/react/babel.config.js rename to packages/react/babel.config.cjs diff --git a/packages/react/jest.config.cjs b/packages/react/jest.config.cjs new file mode 100644 index 000000000..cdeba2df2 --- /dev/null +++ b/packages/react/jest.config.cjs @@ -0,0 +1,4 @@ +module.exports = { + ...require('@suspensive/jest'), + rootDir: __dirname, +} diff --git a/packages/react/jest.config.js b/packages/react/jest.config.js deleted file mode 100644 index 65b8000bc..000000000 --- a/packages/react/jest.config.js +++ /dev/null @@ -1,6 +0,0 @@ -const config = require('@suspensive/jest') - -module.exports = { - ...config, - rootDir: __dirname, -} diff --git a/packages/react/package.json b/packages/react/package.json index 116a00ab9..01f0e042b 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -14,16 +14,21 @@ }, "license": "MIT", "sideEffects": false, + "type": "module", "exports": { ".": { - "require": "./dist/index.js", - "import": "./dist/index.mjs", - "types": "./dist/index.d.ts" + "import": { + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + }, + "require": { + "types": "./dist/index.d.cts", + "default": "./dist/index.cjs" + } }, "./package.json": "./package.json" }, - "main": "dist/index.js", - "module": "dist/index.mjs", + "main": "dist/index.cjs", "types": "dist/index.d.ts", "files": [ "dist", @@ -34,6 +39,7 @@ "scripts": { "build": "tsup", "lint": "eslint \"**/*.ts*\"", + "lint:pub": "publint --strict", "prepack": "pnpm build", "test": "jest", "test:watchAll": "jest --watchAll", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b100a0c30..e37448c80 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -46,6 +46,9 @@ importers: prettier: specifier: ^2.8.8 version: 2.8.8 + publint: + specifier: ^0.2.2 + version: 0.2.2 turbo: specifier: latest version: 1.10.13 @@ -8568,6 +8571,13 @@ packages: resolution: {integrity: sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==} dev: true + /ignore-walk@5.0.1: + resolution: {integrity: sha512-yemi4pMf51WKT7khInJqAvsIGzoqYXblnsz0ql8tM+yi1EKYTY1evX4NAbJrLL/Aanr2HyZeluqU+Oi7MGHokw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + minimatch: 5.1.6 + dev: true + /ignore@5.2.4: resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==} engines: {node: '>= 4'} @@ -10869,6 +10879,29 @@ packages: resolution: {integrity: sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==} engines: {node: '>=10'} + /npm-bundled@2.0.1: + resolution: {integrity: sha512-gZLxXdjEzE/+mOstGDqR6b0EkhJ+kM6fxM6vUuckuctuVPh80Q6pw/rSZj9s4Gex9GxWtIicO1pc8DB9KZWudw==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dependencies: + npm-normalize-package-bin: 2.0.0 + dev: true + + /npm-normalize-package-bin@2.0.0: + resolution: {integrity: sha512-awzfKUO7v0FscrSpRoogyNm0sajikhBWpU0QMrW09AMi9n1PoKU6WaIqUzuJSQnpciZZmJ/jMZ2Egfmb/9LiWQ==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + dev: true + + /npm-packlist@5.1.3: + resolution: {integrity: sha512-263/0NGrn32YFYi4J533qzrQ/krmmrWwhKkzwTuM4f/07ug51odoaNjUexxO4vxlzURHcmYMH1QjvHjsNDKLVg==} + engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} + hasBin: true + dependencies: + glob: 8.1.0 + ignore-walk: 5.0.1 + npm-bundled: 2.0.1 + npm-normalize-package-bin: 2.0.0 + dev: true + /npm-run-path@4.0.1: resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} engines: {node: '>=8'} @@ -11863,6 +11896,16 @@ packages: resolution: {integrity: sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==} dev: true + /publint@0.2.2: + resolution: {integrity: sha512-2t2IO6Y8Z+QBNLG89bpRhTQH7Ifn/83Kr0dVVdmOybq7GAT6+M4YGZd5AhtfMJbYPmbT7YD469pDKLCK94Q2+Q==} + engines: {node: '>=16'} + hasBin: true + dependencies: + npm-packlist: 5.1.3 + picocolors: 1.0.0 + sade: 1.8.1 + dev: true + /pump@3.0.0: resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} dependencies: diff --git a/turbo.json b/turbo.json index 82444d813..95dc685e7 100644 --- a/turbo.json +++ b/turbo.json @@ -11,6 +11,9 @@ "lint": { "outputs": [] }, + "lint:pub": { + "outputs": [] + }, "test": { "outputs": [] }, diff --git a/websites/docs/.eslintrc.js b/websites/docs/.eslintrc.cjs similarity index 100% rename from websites/docs/.eslintrc.js rename to websites/docs/.eslintrc.cjs diff --git a/websites/visualization/.eslintrc.js b/websites/visualization/.eslintrc.cjs similarity index 100% rename from websites/visualization/.eslintrc.js rename to websites/visualization/.eslintrc.cjs