diff --git a/package-lock.json b/package-lock.json index fef33387..0a394d9a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,9 @@ "name": "ods-charts", "version": "0.1.0-alpha.2", "license": "MIT", + "dependencies": { + "@types/echarts": "^4.9.22" + }, "devDependencies": { "echarts": "^5.4.3", "serve": "^14.2.1", @@ -85,6 +88,14 @@ "@jridgewell/sourcemap-codec": "1.4.14" } }, + "node_modules/@types/echarts": { + "version": "4.9.22", + "resolved": "https://registry.npmjs.org/@types/echarts/-/echarts-4.9.22.tgz", + "integrity": "sha512-7Fo6XdWpoi8jxkwP7BARUOM7riq8bMhmsCtSG8gzUcJmFhLo387tihoBYS/y5j7jl3PENT5RxeWZdN9RiwO7HQ==", + "dependencies": { + "@types/zrender": "*" + } + }, "node_modules/@types/eslint": { "version": "8.44.2", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.44.2.tgz", @@ -123,6 +134,11 @@ "integrity": "sha512-0mHckf6D2DiIAzh8fM8f3HQCvMKDpK94YQ0DSVkfWTG9BZleYIWudw9cJxX8oCk9bM+vAkDyujDV6dmKHbvQpg==", "dev": true }, + "node_modules/@types/zrender": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/@types/zrender/-/zrender-4.0.6.tgz", + "integrity": "sha512-1jZ9bJn2BsfmYFPBHtl5o3uV+ILejAtGrDcYSpT4qaVKEI/0YY+arw3XHU04Ebd8Nca3SQ7uNcLaqiL+tTFVMg==" + }, "node_modules/@webassemblyjs/ast": { "version": "1.11.6", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.6.tgz", @@ -562,9 +578,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.10", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.10.tgz", - "integrity": "sha512-bipEBdZfVH5/pwrvqc+Ub0kUPVfGUhlKxbvfD+z1BDnPEO/X98ruXGA1WP5ASpAFKan7Qr6j736IacbZQuAlKQ==", + "version": "4.22.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.22.2.tgz", + "integrity": "sha512-0UgcrvQmBDvZHFGdYUehrCNIazki7/lUP3kkoi/r3YB2amZbFM9J43ZRkJTXBUZK4gmx56+Sqk9+Vs9mwZx9+A==", "dev": true, "funding": [ { @@ -581,10 +597,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001517", - "electron-to-chromium": "^1.4.477", - "node-releases": "^2.0.13", - "update-browserslist-db": "^1.0.11" + "caniuse-lite": "^1.0.30001565", + "electron-to-chromium": "^1.4.601", + "node-releases": "^2.0.14", + "update-browserslist-db": "^1.0.13" }, "bin": { "browserslist": "cli.js" @@ -621,9 +637,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001519", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001519.tgz", - "integrity": "sha512-0QHgqR+Jv4bxHMp8kZ1Kn8CH55OikjKJ6JmKkZYP1F3D7w+lnFXF70nG5eNfsZS89jadi5Ywy5UCSKLAglIRkg==", + "version": "1.0.30001570", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001570.tgz", + "integrity": "sha512-+3e0ASu4sw1SWaoCtvPeyXp+5PsjigkSt8OXZbF9StH5pQWbxEjLAZE3n8Aup5udop1uRiKA7a4utUk/uoSpUw==", "dev": true, "funding": [ { @@ -853,9 +869,9 @@ } }, "node_modules/electron-to-chromium": { - "version": "1.4.485", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.485.tgz", - "integrity": "sha512-1ndQ5IBNEnFirPwvyud69GHL+31FkE09gH/CJ6m3KCbkx3i0EVOrjwz4UNxRmN9H8OVHbC6vMRZGN1yCvjSs9w==", + "version": "1.4.613", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.613.tgz", + "integrity": "sha512-r4x5+FowKG6q+/Wj0W9nidx7QO31BJwmR2uEo+Qh3YLGQ8SbBAFuDFpTxzly/I2gsbrFwBuIjrMp423L3O5U3w==", "dev": true }, "node_modules/emoji-regex": { @@ -1441,9 +1457,9 @@ "dev": true }, "node_modules/node-releases": { - "version": "2.0.13", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.13.tgz", - "integrity": "sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ==", + "version": "2.0.14", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", + "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", "dev": true }, "node_modules/npm-run-path": { @@ -2188,9 +2204,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.13", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz", + "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==", "dev": true, "funding": [ { diff --git a/package.json b/package.json index f632a9cf..f499a8c8 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,7 @@ "./dist/**/*" ], "main": "./dist/ods-charts.js", + "module": "./dist/ods-charts.esm.js", "types": "./dist/ods-charts.d.js", "scripts": { "build": "webpack", @@ -28,6 +29,7 @@ "typedoc": "^0.25.4", "typescript": "^5.3.3", "webpack": "^5.89.0", - "webpack-cli": "^5.1.4" + "webpack-cli": "^5.1.4", + "@types/echarts": "^4.9.22" } } diff --git a/test/angular-ngx-echarts/package-lock.json b/test/angular-ngx-echarts/package-lock.json index bac11b83..6ab6199b 100644 --- a/test/angular-ngx-echarts/package-lock.json +++ b/test/angular-ngx-echarts/package-lock.json @@ -41,11 +41,12 @@ "version": "0.1.0-alpha.2", "license": "MIT", "devDependencies": { + "@types/echarts": "^4.9.22", "echarts": "^5.4.3", "serve": "^14.2.1", "ts-loader": "^9.5.1", "typedoc": "^0.25.4", - "typescript": "^5.3.2", + "typescript": "^5.3.3", "webpack": "^5.89.0", "webpack-cli": "^5.1.4" } diff --git a/test/angular-tour-of-heroes/package-lock.json b/test/angular-tour-of-heroes/package-lock.json index e3972783..4dbcd4cb 100644 --- a/test/angular-tour-of-heroes/package-lock.json +++ b/test/angular-tour-of-heroes/package-lock.json @@ -39,12 +39,15 @@ "../..": { "version": "0.1.0-alpha.2", "license": "MIT", + "dependencies": { + "@types/echarts": "^4.9.22" + }, "devDependencies": { "echarts": "^5.4.3", "serve": "^14.2.1", "ts-loader": "^9.5.1", "typedoc": "^0.25.4", - "typescript": "^5.3.2", + "typescript": "^5.3.3", "webpack": "^5.89.0", "webpack-cli": "^5.1.4" } diff --git a/test/react/package-lock.json b/test/react/package-lock.json index deef87d4..98759302 100644 --- a/test/react/package-lock.json +++ b/test/react/package-lock.json @@ -20,16 +20,18 @@ } }, "../..": { - "name": "ods-charts", "version": "0.1.0-alpha.2", "license": "MIT", + "dependencies": { + "@types/echarts": "^4.9.22" + }, "devDependencies": { "echarts": "^5.4.3", "serve": "^14.2.1", - "ts-loader": "^9.4.4", - "typedoc": "^0.25.3", - "typescript": "^5.1.6", - "webpack": "^5.88.2", + "ts-loader": "^9.5.1", + "typedoc": "^0.25.4", + "typescript": "^5.3.3", + "webpack": "^5.89.0", "webpack-cli": "^5.1.4" } }, diff --git a/test/react/src/LineChartComponent.js b/test/react/src/LineChartComponent.js index ad4e493e..2ced3ba0 100644 --- a/test/react/src/LineChartComponent.js +++ b/test/react/src/LineChartComponent.js @@ -61,7 +61,6 @@ class LineChartComponent extends Component { }); console.log('>>', ODSCharts); - console.log('>>', ODSCharts.theme); console.log(lineChartODSTheme); echarts.registerTheme(lineChartODSTheme.name, lineChartODSTheme.theme); diff --git a/test/vue/package-lock.json b/test/vue/package-lock.json index 4bc926f1..fc1175f3 100644 --- a/test/vue/package-lock.json +++ b/test/vue/package-lock.json @@ -31,15 +31,17 @@ } }, "../..": { - "name": "ods-charts", "version": "0.1.0-alpha.2", "license": "MIT", + "dependencies": { + "@types/echarts": "^4.9.22" + }, "devDependencies": { "echarts": "^5.4.3", "serve": "^14.2.1", "ts-loader": "^9.5.1", "typedoc": "^0.25.4", - "typescript": "^5.3.2", + "typescript": "^5.3.3", "webpack": "^5.89.0", "webpack-cli": "^5.1.4" } diff --git a/test/vue/src/components/LineChartComponent.vue b/test/vue/src/components/LineChartComponent.vue index ba014e83..91c4b685 100644 --- a/test/vue/src/components/LineChartComponent.vue +++ b/test/vue/src/components/LineChartComponent.vue @@ -56,7 +56,6 @@ onMounted(() => { }) console.log('>>', ODSCharts) - console.log('>>', ODSCharts.theme) console.log(lineChartODSTheme) echarts.registerTheme(lineChartODSTheme.name, lineChartODSTheme.theme) diff --git a/tsconfig.json b/tsconfig.json index 58eea592..1e0128ce 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -26,7 +26,7 @@ // "moduleDetection": "auto", /* Control what method is used to detect module-format JS files. */ /* Modules */ - "module": "commonjs" /* Specify what module code is generated. */, + "module": "ESNext" /* Specify what module code is generated. */, // "rootDir": "./", /* Specify the root folder within your source files. */ // "moduleResolution": "node10", /* Specify how TypeScript looks up a file from a given module specifier. */ // "baseUrl": "./", /* Specify the base directory to resolve non-relative module names. */ @@ -40,7 +40,7 @@ // "resolvePackageJsonExports": true, /* Use the package.json 'exports' field when resolving package imports. */ // "resolvePackageJsonImports": true, /* Use the package.json 'imports' field when resolving imports. */ // "customConditions": [], /* Conditions to set in addition to the resolver-specific defaults when resolving imports. */ - "resolveJsonModule": true /* Enable importing .json files. */, + // "resolveJsonModule": true /* Enable importing .json files. */, // "allowArbitraryExtensions": true, /* Enable importing files with any extension, provided a declaration file is present. */ // "noResolve": true, /* Disallow 'import's, 'require's or ''s from expanding the number of files TypeScript should add to a project. */ @@ -107,7 +107,5 @@ // "skipDefaultLibCheck": true, /* Skip type checking .d.ts files that are included with TypeScript. */ "skipLibCheck": true /* Skip type checking all .d.ts files. */ }, - "exclude": [ - "./test/" - ] + "exclude": ["./test/"] } diff --git a/webpack.config.js b/webpack.config.js index 2531e843..1e59277a 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,17 +1,11 @@ const path = require('path'); -module.exports = { +const defaultConfig = { mode: 'development', devtool: 'inline-source-map', entry: { main: './index.ts', }, - output: { - path: path.resolve(__dirname, './dist'), - filename: 'ods-charts.js', - libraryTarget: 'umd', - library: 'ODSCharts', - }, resolve: { extensions: ['.ts', '.tsx', '.js'], }, @@ -24,3 +18,30 @@ module.exports = { ], }, }; + +module.exports = [ + { + ...defaultConfig, + output: { + path: path.resolve(__dirname, './dist'), + filename: 'ods-charts.js', + library: { + type: 'umd', + name: 'ODSCharts', + }, + }, + }, + { + ...defaultConfig, + output: { + path: path.resolve(__dirname, './dist'), + filename: 'ods-charts.esm.js', + library: { + type: 'module', + }, + }, + experiments: { + outputModule: true, + }, + }, +];