diff options
author | Kristóf Marussy <kristof@marussy.com> | 2021-12-30 00:26:01 +0100 |
---|---|---|
committer | Kristóf Marussy <kristof@marussy.com> | 2021-12-30 02:24:28 +0100 |
commit | 61fd13c55f5e69a9d8b32dd0d74b08870783bcce (patch) | |
tree | 4f3f97b1629f3c262bea076b596bc7245ccbc0bd /packages/preload | |
parent | Revert "refactor: Switch back to consola for prettyness" (diff) | |
download | sophie-61fd13c55f5e69a9d8b32dd0d74b08870783bcce.tar.gz sophie-61fd13c55f5e69a9d8b32dd0d74b08870783bcce.tar.zst sophie-61fd13c55f5e69a9d8b32dd0d74b08870783bcce.zip |
build: Switch to esbuild
We will build all packages except the frontend (where vite remains in
use) with esbuild.
For some reason, the @yarnpkg/esbuild-plugin-pnp doesn't allow esbuild
to load esm modules and we fall back to commonjs for dependencies.
Hence we had to switch back to node_modules (but still rely on yarn
hardlinking for a more efficient install).
Diffstat (limited to 'packages/preload')
-rw-r--r-- | packages/preload/esbuild.config.js | 19 | ||||
-rw-r--r-- | packages/preload/package.json | 4 | ||||
-rw-r--r-- | packages/preload/vite.config.js | 31 |
3 files changed, 20 insertions, 34 deletions
diff --git a/packages/preload/esbuild.config.js b/packages/preload/esbuild.config.js new file mode 100644 index 0000000..76ac33f --- /dev/null +++ b/packages/preload/esbuild.config.js | |||
@@ -0,0 +1,19 @@ | |||
1 | // @ts-check | ||
2 | |||
3 | const { chrome } = require('../../config/build-common'); | ||
4 | const { getConfig } = require('../../config/esbuild-config'); | ||
5 | |||
6 | module.exports = getConfig({ | ||
7 | absWorkingDir: __dirname, | ||
8 | entryPoints: [ | ||
9 | 'src/index.ts', | ||
10 | ], | ||
11 | outfile: 'dist/index.cjs', | ||
12 | format: 'cjs', | ||
13 | platform: 'node', | ||
14 | target: chrome, | ||
15 | sourcemap: 'inline', | ||
16 | external: [ | ||
17 | 'electron', | ||
18 | ], | ||
19 | }); | ||
diff --git a/packages/preload/package.json b/packages/preload/package.json index caa23b6..5eb6055 100644 --- a/packages/preload/package.json +++ b/packages/preload/package.json | |||
@@ -8,7 +8,6 @@ | |||
8 | "scripts": { | 8 | "scripts": { |
9 | "clean": "rimraf dist", | 9 | "clean": "rimraf dist", |
10 | "test": "jest", | 10 | "test": "jest", |
11 | "build": "vite build", | ||
12 | "typecheck": "tsc" | 11 | "typecheck": "tsc" |
13 | }, | 12 | }, |
14 | "dependencies": { | 13 | "dependencies": { |
@@ -24,7 +23,6 @@ | |||
24 | "jsdom": "^19.0.0", | 23 | "jsdom": "^19.0.0", |
25 | "rimraf": "^3.0.2", | 24 | "rimraf": "^3.0.2", |
26 | "ts-jest": "^27.1.2", | 25 | "ts-jest": "^27.1.2", |
27 | "typescript": "^4.5.4", | 26 | "typescript": "^4.5.4" |
28 | "vite": "^2.7.7" | ||
29 | } | 27 | } |
30 | } | 28 | } |
diff --git a/packages/preload/vite.config.js b/packages/preload/vite.config.js deleted file mode 100644 index 409d912..0000000 --- a/packages/preload/vite.config.js +++ /dev/null | |||
@@ -1,31 +0,0 @@ | |||
1 | // @ts-check | ||
2 | |||
3 | import { builtinModules } from 'module'; | ||
4 | |||
5 | import { chrome, makeConfig } from '../../config/vite-common'; | ||
6 | |||
7 | /** @type {string} */ | ||
8 | const PACKAGE_ROOT = __dirname; | ||
9 | |||
10 | /** | ||
11 | * @type {import('vite').UserConfig} | ||
12 | * @see https://vitejs.dev/config/ | ||
13 | */ | ||
14 | const config = makeConfig({ | ||
15 | root: PACKAGE_ROOT, | ||
16 | build: { | ||
17 | target: chrome, | ||
18 | lib: { | ||
19 | entry: 'src/index.ts', | ||
20 | formats: ['cjs'], | ||
21 | }, | ||
22 | rollupOptions: { | ||
23 | external: [ | ||
24 | 'electron', | ||
25 | ...builtinModules, | ||
26 | ], | ||
27 | }, | ||
28 | }, | ||
29 | }); | ||
30 | |||
31 | export default config; | ||