From b8d64c5ecde5eaa56142a8ca75b66053ab023efa Mon Sep 17 00:00:00 2001 From: Jinny You Date: Fri, 15 Dec 2023 16:45:30 +0900 Subject: [PATCH] web: Add config to support npm module --- web/package.json | 20 ++++++++++++++++++-- web/rollup.config.js | 7 ++++--- web/tsconfig.json | 6 +++--- 3 files changed, 25 insertions(+), 8 deletions(-) diff --git a/web/package.json b/web/package.json index 923ecf46..2d0fa299 100644 --- a/web/package.json +++ b/web/package.json @@ -2,7 +2,21 @@ "name": "@thorvg/lottie-player", "version": "1.0.0-beta.0", "description": "A web lottie player using ThorVG as a renderer", - "main": "index.js", + "main": "./dist/lottie-player.cjs.js", + "module": "./dist/lottie-player.esm.js", + "exports": { + ".": { + "import": "./dist/lottie-player.cjs.js", + "require": "./dist/lottie-player.esm.js" + } + }, + "publishConfig": { + "access": "public" + }, + "files": [ + "dist/" + ], + "types": "./dist/lottie-player.d.ts", "scripts": { "build": "npm run clean && npm run copy:wasm && THORVG_VERSION=$(sed -n -e 4p ../meson.build | sed 's/..$//' | sed -r 's/.{19}//') rollup -c --bundleConfigAsCjs && rm -rf ./dist/thorvg-wasm.js", "build:watch": "npm run clean && npm run copy:wasm && rollup -c --bundleConfigAsCjs --watch", @@ -44,9 +58,11 @@ "rollup-plugin-dts": "^6.1.0", "rollup-plugin-polyfill-node": "^0.13.0", "rollup-plugin-swc3": "^0.10.4", + "rollup-plugin-terser": "^7.0.2", "typescript": "*" }, "dependencies": { - "lit": "^3.1.0" + "lit": "^3.1.0", + "url": "^0.11.3" } } diff --git a/web/rollup.config.js b/web/rollup.config.js index 7c7fc18e..2dbf93ce 100644 --- a/web/rollup.config.js +++ b/web/rollup.config.js @@ -7,10 +7,11 @@ import nodePolyfills from 'rollup-plugin-polyfill-node'; import bakedEnv from 'rollup-plugin-baked-env'; import pkg from './package.json'; -const extensions = [".js", ".jsx", ".ts", ".tsx", ".mjs", ".wasm"]; +const name = 'lottie-player'; const globals = { - 'lit': 'lit', - 'lit/decorators.js': 'lit/decorators.js', + url: "url", + lit: "lit", + "lit/decorators.js": "lit/decorators.js", }; export default [ diff --git a/web/tsconfig.json b/web/tsconfig.json index 15abef35..a30084f0 100644 --- a/web/tsconfig.json +++ b/web/tsconfig.json @@ -32,11 +32,11 @@ "skipLibCheck": true }, "include": [ - "src/**/*.ts", - "types/**/*.ts" + "src/**/*.ts" ], "exclude": [ "node_modules", - "dist", + "example", + "dist" ], }