Skip to content

Commit 1eb4efe

Browse files
authored
build: use svelte-package (#75)
migrate to svelte-package and vitest BREAKING CHANGE: now package is module type, new exports in package.json
1 parent bafa1f0 commit 1eb4efe

37 files changed

+3298
-1938
lines changed

.babelrc

Lines changed: 0 additions & 14 deletions
This file was deleted.

.clean-publish

Lines changed: 0 additions & 4 deletions
This file was deleted.

.size-limit.cjs

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
function modifyWebpackConfig(config) {
2+
config.module.rules.push({
3+
test: /\.svelte$/,
4+
use: 'svelte-loader'
5+
});
6+
7+
return config;
8+
}
9+
10+
module.exports = [
11+
{
12+
path: 'package/index.js',
13+
limit: '840 B',
14+
import: '{ Chart }',
15+
modifyWebpackConfig
16+
},
17+
{
18+
path: 'package/index.js',
19+
limit: '1.2 KB',
20+
import: '{ Bar }',
21+
modifyWebpackConfig
22+
},
23+
{
24+
path: 'package/index.js',
25+
limit: '1.55 KB',
26+
import: '{ Bar, Bubble, Chart, Doughnut, Line, Pie, PolarArea, Radar, Scatter }',
27+
modifyWebpackConfig
28+
}
29+
];

.size-limit.json

Lines changed: 0 additions & 24 deletions
This file was deleted.

.storybook/main.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,14 @@
11
const path = require('path');
2+
const ResolveTypeScriptPlugin = require('resolve-typescript-plugin');
23

34
module.exports = {
45
webpackFinal: async config => {
56
const svelteLoader = config.module.rules.find(
67
r => r.loader && r.loader.includes('svelte-loader')
78
);
89
svelteLoader.options.preprocess = require('svelte-preprocess')({});
9-
config.resolve.alias['svelte-chartjs'] = path.resolve(
10-
__dirname,
11-
'../src'
12-
);
10+
config.resolve.alias['svelte-chartjs'] = path.resolve(__dirname, '../src');
11+
config.resolve.plugins.push(new ResolveTypeScriptPlugin());
1312
return config;
1413
},
1514
stories: ['../stories/*.stories.(js|ts)'],

.storybook/package.json

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
{
2+
"type": "commonjs"
3+
}

jest.config.json

Lines changed: 0 additions & 30 deletions
This file was deleted.

package.json

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,18 @@
11
{
22
"name": "svelte-chartjs",
3+
"type": "module",
34
"version": "2.1.1",
45
"author": "Saurav Kanchan",
56
"homepage": "https://saurav.tech/mdbsvelte/?path=/story/charts--examples",
67
"license": "MIT",
7-
"main": "src/index.ts",
8-
"types": "./dist/index.d.ts",
98
"publishConfig": {
10-
"main": "./dist/index.cjs",
11-
"module": "./dist/index.js",
129
"directory": "package"
1310
},
1411
"files": [
15-
"dist"
12+
"**/*.js",
13+
"**/*.ts",
14+
"**/*.svelte",
15+
"**/*.map"
1616
],
1717
"keywords": [
1818
"svelte",
@@ -26,15 +26,14 @@
2626
"url": "https://github.com/SauravKanchan/svelte-chartjs"
2727
},
2828
"scripts": {
29-
"emitDeclarations": "node scripts/emitSvelteDeclarations.cjs",
30-
"build": "rollup -c && pnpm emitDeclarations",
31-
"prepublishOnly": "pnpm test && pnpm build && del ./package && clean-publish",
29+
"build": "del ./package && svelte-package && clear-package-json package/package.json -o package/package.json",
30+
"prepublishOnly": "pnpm test && pnpm build",
3231
"postpublish": "del ./package",
3332
"commit": "cz",
3433
"format": "prettier --write 'src/**/*.{js,ts,svelte}'",
3534
"test:lint": "eslint src --ext .js,.svelte",
3635
"test:size": "size-limit",
37-
"test:unit": "jest -c jest.config.json",
36+
"test:unit": "vitest run --coverage",
3837
"test": "pnpm test:lint && pnpm test:unit",
3938
"start:storybook": "start-storybook -p 6006 --ci",
4039
"build:storybook": "del ./storybook-static; NODE_ENV=production build-storybook",
@@ -48,22 +47,19 @@
4847
"svelte": "^3.45.0"
4948
},
5049
"devDependencies": {
51-
"@babel/core": "^7.18.6",
52-
"@babel/preset-env": "^7.18.6",
5350
"@commitlint/cli": "^17.0.2",
5451
"@commitlint/config-conventional": "^17.0.2",
5552
"@commitlint/cz-commitlint": "^17.0.0",
56-
"@rollup/plugin-node-resolve": "^13.3.0",
5753
"@size-limit/preset-big-lib": "^7.0.8",
5854
"@storybook/addon-actions": "^6.5.9",
5955
"@storybook/addon-essentials": "^6.5.9",
6056
"@storybook/svelte": "^6.5.9",
61-
"@swc/core": "^1.2.207",
62-
"@swc/jest": "^0.2.21",
63-
"@testing-library/svelte": "^3.1.3",
64-
"@types/jest": "^28.1.5",
57+
"@sveltejs/package": "^1.0.0-next.3",
58+
"@sveltejs/vite-plugin-svelte": "^1.0.5",
59+
"@testing-library/svelte": "^3.2.1",
6560
"@typescript-eslint/eslint-plugin": "^5.30.6",
6661
"@typescript-eslint/parser": "^5.30.6",
62+
"@vitest/coverage-c8": "^0.23.2",
6763
"chart.js": "^3.8.0",
6864
"clean-publish": "^4.0.1",
6965
"commitizen": "^4.2.4",
@@ -72,24 +68,21 @@
7268
"eslint": "^8.18.0",
7369
"eslint-plugin-import": "^2.26.0",
7470
"eslint-plugin-svelte3": "^4.0.0",
75-
"jest": "^28.1.2",
76-
"jest-canvas-mock": "^2.4.0",
77-
"jest-environment-jsdom": "^28.1.2",
71+
"jsdom": "^20.0.0",
7872
"nano-staged": "^0.8.0",
7973
"prettier": "^2.7.1",
8074
"prettier-plugin-svelte": "^2.7.0",
81-
"rollup": "^2.75.7",
82-
"rollup-plugin-svelte": "^7.1.0",
83-
"rollup-plugin-swc": "^0.2.1",
75+
"resolve-typescript-plugin": "^1.2.0",
8476
"simple-git-hooks": "^2.8.0",
8577
"simple-github-release": "^1.0.0",
8678
"size-limit": "^7.0.8",
8779
"standard-version": "^9.5.0",
8880
"svelte": "^3.45.0",
89-
"svelte-jester": "^2.3.2",
9081
"svelte-loader": "^3.1.3",
9182
"svelte-preprocess": "^4.10.7",
92-
"svelte2tsx": "^0.5.11",
93-
"typescript": "^4.7.4"
83+
"typescript": "^4.7.4",
84+
"vite": "^3.1.1",
85+
"vitest": "^0.23.2",
86+
"vitest-canvas-mock": "^0.2.0"
9487
}
9588
}

0 commit comments

Comments
 (0)