diff --git a/.configs/just.config.ts b/.configs/just.config.ts index 671a39b..d30319a 100644 --- a/.configs/just.config.ts +++ b/.configs/just.config.ts @@ -51,7 +51,7 @@ task('+rollup:dev', async () => { task('+rollup:prod', async () => { const cmd = 'rollup'; - const option = '--config ./.configs/rollup.config.prod.ts --configPlugin ts'; + const option = '--config ./.configs/rollup.config.prod.ts --configPlugin ts --bundleConfigAsCjs'; logger.info('Rollup: ', cmd, option); diff --git a/.configs/rollup.config.dev.ts b/.configs/rollup.config.dev.ts index a5f2cfb..0c7e8aa 100644 --- a/.configs/rollup.config.dev.ts +++ b/.configs/rollup.config.dev.ts @@ -10,12 +10,12 @@ export default [ output: [ { format: 'cjs', - file: 'dist/cjs/index.js', + file: 'dist/cjs/index.cjs', sourcemap: true, }, { format: 'esm', - file: 'dist/esm/index.js', + file: 'dist/esm/index.mjs', sourcemap: true, }, ], diff --git a/.configs/rollup.config.prod.ts b/.configs/rollup.config.prod.ts index ca76dd7..9a28598 100644 --- a/.configs/rollup.config.prod.ts +++ b/.configs/rollup.config.prod.ts @@ -1,4 +1,5 @@ import { nodeResolve } from '@rollup/plugin-node-resolve'; +import terser from '@rollup/plugin-terser'; import readPackage from 'read-pkg'; import ts from 'rollup-plugin-ts'; @@ -10,13 +11,13 @@ export default [ output: [ { format: 'cjs', - file: 'dist/cjs/index.js', - sourcemap: true, + file: 'dist/cjs/index.cjs', + sourcemap: false, }, { format: 'esm', - file: 'dist/esm/index.js', - sourcemap: true, + file: 'dist/esm/index.mjs', + sourcemap: false, }, ], plugins: [ @@ -29,7 +30,10 @@ export default [ pkg?.peerDependencies?.[module] == null; }, }), - ts({ tsconfig: 'tsconfig.prod.json' }), + ts({ + tsconfig: 'tsconfig.prod.json', + }), + terser(), ], }, ]; diff --git a/package-lock.json b/package-lock.json index cfbf309..dbd2d00 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,6 +1,6 @@ { "name": "jin-frame", - "version": "3.0.1", + "version": "3.0.2", "lockfileVersion": 1, "requires": true, "dependencies": { @@ -1053,6 +1053,17 @@ "resolve": "^1.22.1" } }, + "@rollup/plugin-terser": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/@rollup/plugin-terser/-/plugin-terser-0.2.0.tgz", + "integrity": "sha512-UBr4WNXBFipKW2C2db9JIzIdq9bFZsaTZwKeAd9Y0N9Pv9G2XgRhaimGdotx1+Wf/2XTuTJ+FVS2SO+y2WyiUQ==", + "dev": true, + "requires": { + "serialize-javascript": "^6.0.0", + "smob": "^0.0.6", + "terser": "^5.15.1" + } + }, "@rollup/pluginutils": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.2.tgz", @@ -1733,9 +1744,9 @@ "dev": true }, "axios": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.1.tgz", - "integrity": "sha512-I88cFiGu9ryt/tfVEi4kX2SITsvDddTajXTOFmt2uK1ZVA8LytjtdeyefdQWEf5PU8w+4SSJDoYnggflB5tW4A==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.1.3.tgz", + "integrity": "sha512-00tXVRwKx/FZr/IDVFt4C+f9FYairX517WoGCL6dpOntqLkZofjhu43F/Xl44UOpqa+9sLFDrG/XAnFsUYgkDA==", "requires": { "follow-redirects": "^1.15.0", "form-data": "^4.0.0", @@ -2824,17 +2835,6 @@ } } }, - "eslint-config-airbnb": { - "version": "19.0.4", - "resolved": "https://registry.npmjs.org/eslint-config-airbnb/-/eslint-config-airbnb-19.0.4.tgz", - "integrity": "sha512-T75QYQVQX57jiNgpF9r1KegMICE94VYwoFQyMGhrvc+lB8YF2E/M/PYDaQe1AJcWaEgqLE+ErXV1Og/+6Vyzew==", - "dev": true, - "requires": { - "eslint-config-airbnb-base": "^15.0.0", - "object.assign": "^4.1.2", - "object.entries": "^1.1.5" - } - }, "eslint-config-airbnb-base": { "version": "15.0.0", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-15.0.0.tgz", @@ -6202,40 +6202,6 @@ "fsevents": "~2.3.2" } }, - "rollup-plugin-terser": { - "version": "7.0.2", - "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", - "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==", - "dev": true, - "requires": { - "@babel/code-frame": "^7.10.4", - "jest-worker": "^26.2.1", - "serialize-javascript": "^4.0.0", - "terser": "^5.0.0" - }, - "dependencies": { - "jest-worker": { - "version": "26.6.2", - "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz", - "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==", - "dev": true, - "requires": { - "@types/node": "*", - "merge-stream": "^2.0.0", - "supports-color": "^7.0.0" - } - }, - "serialize-javascript": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz", - "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==", - "dev": true, - "requires": { - "randombytes": "^2.1.0" - } - } - } - }, "rollup-plugin-ts": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/rollup-plugin-ts/-/rollup-plugin-ts-3.0.2.tgz", @@ -6263,18 +6229,6 @@ "estree-walker": "^2.0.1", "picomatch": "^2.2.2" } - }, - "estree-walker": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", - "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", - "dev": true - }, - "tslib": { - "version": "2.4.1", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.4.1.tgz", - "integrity": "sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA==", - "dev": true } } }, @@ -6348,6 +6302,15 @@ "upper-case-first": "^2.0.2" } }, + "serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "requires": { + "randombytes": "^2.1.0" + } + }, "shallow-clone": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", @@ -6423,6 +6386,12 @@ "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", "dev": true }, + "smob": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/smob/-/smob-0.0.6.tgz", + "integrity": "sha512-V21+XeNni+tTyiST1MHsa84AQhT1aFZipzPpOFAVB8DkHzwJyjjAmt9bgwnuZiZWnIbMo2duE29wybxv/7HWUw==", + "dev": true + }, "snake-case": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/snake-case/-/snake-case-3.0.4.tgz", @@ -6635,9 +6604,9 @@ "dev": true }, "terser": { - "version": "5.15.1", - "resolved": "https://registry.npmjs.org/terser/-/terser-5.15.1.tgz", - "integrity": "sha512-K1faMUvpm/FBxjBXud0LWVAGxmvoPbZbfTCYbSgaaYQaIXI3/TdI7a7ZGA73Zrou6Q8Zmz3oeUTsp/dj+ag2Xw==", + "version": "5.16.1", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.16.1.tgz", + "integrity": "sha512-xvQfyfA1ayT0qdK47zskQgRZeWLoOQ8JQ6mIgRGVNwZKdQMU+5FkCBjmv4QjcrTzyZquRw2FVtlJSRUmMKQslw==", "dev": true, "requires": { "@jridgewell/source-map": "^0.3.2", diff --git a/package.json b/package.json index 1f86c30..827a516 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "jin-frame", - "version": "3.0.1", + "version": "3.0.2", "description": "Reusable HTTP API request definition library", "scripts": { "debug": "node --inspect-brk -r ts-node/register ./node_modules/jest/bin/jest --no-cache --runInBand --detectOpenHandles", @@ -41,15 +41,22 @@ "bugs": { "url": "https://github.com/imjuni/jin-frame/issues" }, - "main": "./dist/cjs/index.js", - "module": "./dist/esm/index.js", - "typings": "./dist/typings/index.d.ts", + "main": "./dist/cjs/index.cjs", + "module": "./dist/esm/index.mjs", + "typings": "./dist/esm/index.d.mts", + "exports": { + ".": { + "require": "./dist/cjs/index.cjs", + "import": "./dist/esm/index.mjs", + "typings": "./dist/esm/index.d.mts" + } + }, "files": [ "dist" ], "homepage": "https://imjuni.github.io/jin-frame", "dependencies": { - "axios": "^1.2.1", + "axios": "1.1.3", "dot-prop": "^6.0.1", "fast-safe-stringify": "^2.1.1", "form-data": "^4.0.0", @@ -63,6 +70,7 @@ }, "devDependencies": { "@rollup/plugin-node-resolve": "^15.0.1", + "@rollup/plugin-terser": "^0.2.0", "@tsconfig/node14": "^1.0.3", "@types/clone-deep": "^4.0.1", "@types/debug": "^4.1.7", @@ -77,7 +85,6 @@ "debug": "^4.3.4", "deps-diff": "^1.0.1", "eslint": "^8.29.0", - "eslint-config-airbnb": "^19.0.4", "eslint-config-airbnb-base": "^15.0.0", "eslint-config-airbnb-typescript": "^17.0.0", "eslint-config-prettier": "^8.5.0", @@ -98,7 +105,6 @@ "read-pkg": "^5.2.0", "rimraf": "^3.0.2", "rollup": "^3.7.2", - "rollup-plugin-terser": "^7.0.2", "rollup-plugin-ts": "^3.0.2", "ts-jest": "^29.0.3", "ts-node": "^10.9.1", @@ -111,4 +117,4 @@ "directories": { "test": "test" } -} \ No newline at end of file +} diff --git a/tsconfig.json b/tsconfig.json index 92d1abb..eecbce1 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -11,8 +11,8 @@ "DOM" ], "declaration": true, - "declarationDir": "dist/typings", - "declarationMap": true, + // "declarationDir": "dist/typings", + // "declarationMap": true, "sourceMap": true, "removeComments": false, "importHelpers": false,