@electron-forge/plugin-vite 7.4.0 → 7.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/README.md +2 -0
  2. package/dist/Config.d.ts +7 -2
  3. package/dist/Config.d.ts.map +1 -1
  4. package/dist/ViteConfig.d.ts +4 -6
  5. package/dist/ViteConfig.d.ts.map +1 -1
  6. package/dist/ViteConfig.js +26 -13
  7. package/dist/VitePlugin.d.ts +1 -2
  8. package/dist/VitePlugin.d.ts.map +1 -1
  9. package/dist/VitePlugin.js +34 -43
  10. package/dist/config/vite.base.config.d.ts +11 -0
  11. package/dist/config/vite.base.config.d.ts.map +1 -0
  12. package/dist/config/vite.base.config.js +90 -0
  13. package/dist/config/vite.main.config.d.ts +3 -0
  14. package/dist/config/vite.main.config.d.ts.map +1 -0
  15. package/dist/config/vite.main.config.js +34 -0
  16. package/dist/config/vite.preload.config.d.ts +3 -0
  17. package/dist/config/vite.preload.config.d.ts.map +1 -0
  18. package/dist/config/vite.preload.config.js +30 -0
  19. package/dist/config/vite.renderer.config.d.ts +3 -0
  20. package/dist/config/vite.renderer.config.d.ts.map +1 -0
  21. package/dist/config/vite.renderer.config.js +26 -0
  22. package/dist/util/plugins.d.ts.map +1 -1
  23. package/dist/util/plugins.js +1 -1
  24. package/forge-vite-env.d.ts +23 -0
  25. package/package.json +9 -8
  26. package/src/Config.ts +7 -3
  27. package/src/ViteConfig.ts +28 -13
  28. package/src/VitePlugin.ts +36 -46
  29. package/src/config/vite.base.config.ts +97 -0
  30. package/src/config/vite.main.config.ts +33 -0
  31. package/src/config/vite.preload.config.ts +28 -0
  32. package/src/config/vite.renderer.config.ts +25 -0
  33. package/src/util/plugins.ts +0 -1
  34. package/dist/util/package.d.ts +0 -14
  35. package/dist/util/package.d.ts.map +0 -1
  36. package/dist/util/package.js +0 -93
  37. package/src/util/package.ts +0 -108
package/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  ## plugin-vite
2
2
 
3
+ _Note: This plugin is considered experimental and is under active development; we do not offer API stability guarantees as development continues. Minor versions may include breaking changes - see release notes for details on migration._
4
+
3
5
  This plugin makes it easy to set up standard vite tooling to compile both your main process code and your renderer process code, with built-in support for Hot Module Replacement (HMR) in the renderer process and support for multiple renderers.
4
6
 
5
7
  ```javascript
package/dist/Config.d.ts CHANGED
@@ -3,17 +3,22 @@ export interface VitePluginBuildConfig {
3
3
  /**
4
4
  * Alias of `build.lib.entry` in `config`.
5
5
  */
6
- entry?: LibraryOptions['entry'];
6
+ entry: LibraryOptions['entry'];
7
7
  /**
8
8
  * Vite config file path.
9
9
  */
10
10
  config: string;
11
+ /**
12
+ * The build target is main process or preload script.
13
+ * @defaultValue 'main'
14
+ */
15
+ target?: 'main' | 'preload';
11
16
  }
12
17
  export interface VitePluginRendererConfig {
13
18
  /**
14
19
  * Human friendly name of your entry point.
15
20
  */
16
- name?: string;
21
+ name: string;
17
22
  /**
18
23
  * Vite config file path.
19
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAE3C,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,CAAC,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChC;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAK/B;;OAEG;IACH,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B;;OAEG;IACH,QAAQ,EAAE,wBAAwB,EAAE,CAAC;CACtC"}
1
+ {"version":3,"file":"Config.d.ts","sourceRoot":"","sources":["../src/Config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAE3C,MAAM,WAAW,qBAAqB;IACpC;;OAEG;IACH,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAC/B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC7B;AAED,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAgB;IAK/B;;OAEG;IACH,KAAK,EAAE,qBAAqB,EAAE,CAAC;IAC/B;;OAEG;IACH,QAAQ,EAAE,wBAAwB,EAAE,CAAC;CACtC"}
@@ -1,17 +1,15 @@
1
1
  import type { VitePluginBuildConfig, VitePluginConfig, VitePluginRendererConfig } from './Config';
2
- import type { ConfigEnv, UserConfig } from 'vite';
2
+ import type { UserConfig } from 'vite';
3
+ declare type Target = NonNullable<VitePluginBuildConfig['target']> | 'renderer';
3
4
  export default class ViteConfigGenerator {
4
5
  private readonly pluginConfig;
5
6
  private readonly projectDir;
6
7
  private readonly isProd;
7
8
  constructor(pluginConfig: VitePluginConfig, projectDir: string, isProd: boolean);
8
- resolveConfig(buildConfig: VitePluginBuildConfig | VitePluginRendererConfig, configEnv?: Partial<ConfigEnv>): Promise<{
9
- path: string;
10
- config: UserConfig;
11
- dependencies: string[];
12
- } | null>;
9
+ resolveConfig(buildConfig: VitePluginBuildConfig | VitePluginRendererConfig, target: Target): Promise<UserConfig>;
13
10
  get mode(): string;
14
11
  getBuildConfig(): Promise<UserConfig[]>;
15
12
  getRendererConfig(): Promise<UserConfig[]>;
16
13
  }
14
+ export {};
17
15
  //# sourceMappingURL=ViteConfig.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ViteConfig.d.ts","sourceRoot":"","sources":["../src/ViteConfig.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAElG,OAAO,KAAK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAIlD,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAAoB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAAU,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAA5F,YAAY,EAAE,gBAAgB,EAAmB,UAAU,EAAE,MAAM,EAAmB,MAAM,EAAE,OAAO;IAIlI,aAAa,CAAC,WAAW,EAAE,qBAAqB,GAAG,wBAAwB,EAAE,SAAS,GAAE,OAAO,CAAC,SAAS,CAAM;;;;;IAiB/G,IAAI,IAAI,IAAI,MAAM,CAKjB;IAEK,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAavC,iBAAiB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAWjD"}
1
+ {"version":3,"file":"ViteConfig.d.ts","sourceRoot":"","sources":["../src/ViteConfig.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,UAAU,CAAC;AAClG,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,MAAM,CAAC;AAIlD,aAAK,MAAM,GAAG,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC,GAAG,UAAU,CAAC;AAExE,MAAM,CAAC,OAAO,OAAO,mBAAmB;IAC1B,OAAO,CAAC,QAAQ,CAAC,YAAY;IAAoB,OAAO,CAAC,QAAQ,CAAC,UAAU;IAAU,OAAO,CAAC,QAAQ,CAAC,MAAM;gBAA5F,YAAY,EAAE,gBAAgB,EAAmB,UAAU,EAAE,MAAM,EAAmB,MAAM,EAAE,OAAO;IAI5H,aAAa,CAAC,WAAW,EAAE,qBAAqB,GAAG,wBAAwB,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IA2BvH,IAAI,IAAI,IAAI,MAAM,CAKjB;IAEK,cAAc,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;IAavC,iBAAiB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;CAYjD"}
@@ -4,8 +4,10 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const debug_1 = __importDefault(require("debug"));
7
- // eslint-disable-next-line node/no-unpublished-import
8
7
  const vite_1 = require("vite");
8
+ const vite_main_config_1 = require("./config/vite.main.config");
9
+ const vite_preload_config_1 = require("./config/vite.preload.config");
10
+ const vite_renderer_config_1 = require("./config/vite.renderer.config");
9
11
  const d = (0, debug_1.default)('@electron-forge/plugin-vite:ViteConfig');
10
12
  class ViteConfigGenerator {
11
13
  constructor(pluginConfig, projectDir, isProd) {
@@ -14,19 +16,29 @@ class ViteConfigGenerator {
14
16
  this.isProd = isProd;
15
17
  d('Config mode:', this.mode);
16
18
  }
17
- resolveConfig(buildConfig, configEnv = {}) {
18
- // @see - https://vitejs.dev/config/#conditional-config
19
- configEnv.command ??= this.isProd ? 'build' : 'serve';
20
- // `mode` affects `.env.[mode]` file load.
21
- configEnv.mode ??= this.mode;
22
- // Hack! Pass the forge runtime config to the vite config file in the template.
23
- Object.assign(configEnv, {
19
+ async resolveConfig(buildConfig, target) {
20
+ const configEnv = {
21
+ // @see - https://vitejs.dev/config/#conditional-config
22
+ command: this.isProd ? 'build' : 'serve',
23
+ // `mode` affects `.env.[mode]` file load.
24
+ mode: this.mode,
25
+ // Forge extension variables.
24
26
  root: this.projectDir,
25
27
  forgeConfig: this.pluginConfig,
26
28
  forgeConfigSelf: buildConfig,
27
- });
29
+ };
28
30
  // `configEnv` is to be passed as an arguments when the user export a function in `vite.config.js`.
29
- return (0, vite_1.loadConfigFromFile)(configEnv, buildConfig.config);
31
+ const userConfig = (await (0, vite_1.loadConfigFromFile)(configEnv, buildConfig.config))?.config;
32
+ switch (target) {
33
+ case 'main':
34
+ return (0, vite_main_config_1.getConfig)(configEnv, userConfig);
35
+ case 'preload':
36
+ return (0, vite_preload_config_1.getConfig)(configEnv, userConfig);
37
+ case 'renderer':
38
+ return (0, vite_renderer_config_1.getConfig)(configEnv, userConfig);
39
+ default:
40
+ throw new Error(`Unknown target: ${target}, expected 'main', 'preload' or 'renderer'`);
41
+ }
30
42
  }
31
43
  get mode() {
32
44
  // Vite's `mode` can be passed in via command.
@@ -41,7 +53,7 @@ class ViteConfigGenerator {
41
53
  const configs = this.pluginConfig.build
42
54
  // Prevent load the default `vite.config.js` file.
43
55
  .filter(({ config }) => config)
44
- .map(async (buildConfig) => (await this.resolveConfig(buildConfig))?.config ?? {});
56
+ .map((buildConfig) => this.resolveConfig(buildConfig, buildConfig.target ?? 'main'));
45
57
  return await Promise.all(configs);
46
58
  }
47
59
  async getRendererConfig() {
@@ -49,10 +61,11 @@ class ViteConfigGenerator {
49
61
  throw new Error('"config.renderer" must be an Array');
50
62
  }
51
63
  const configs = this.pluginConfig.renderer
64
+ // Prevent load the default `vite.config.js` file.
52
65
  .filter(({ config }) => config)
53
- .map(async (buildConfig) => (await this.resolveConfig(buildConfig))?.config ?? {});
66
+ .map((buildConfig) => this.resolveConfig(buildConfig, 'renderer'));
54
67
  return await Promise.all(configs);
55
68
  }
56
69
  }
57
70
  exports.default = ViteConfigGenerator;
58
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVml0ZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9WaXRlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLHNEQUFzRDtBQUN0RCwrQkFBMEM7QUFNMUMsTUFBTSxDQUFDLEdBQUcsSUFBQSxlQUFLLEVBQUMsd0NBQXdDLENBQUMsQ0FBQztBQUUxRCxNQUFxQixtQkFBbUI7SUFDdEMsWUFBNkIsWUFBOEIsRUFBbUIsVUFBa0IsRUFBbUIsTUFBZTtRQUFyRyxpQkFBWSxHQUFaLFlBQVksQ0FBa0I7UUFBbUIsZUFBVSxHQUFWLFVBQVUsQ0FBUTtRQUFtQixXQUFNLEdBQU4sTUFBTSxDQUFTO1FBQ2hJLENBQUMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9CLENBQUM7SUFFRCxhQUFhLENBQUMsV0FBNkQsRUFBRSxZQUFnQyxFQUFFO1FBQzdHLHVEQUF1RDtRQUN2RCxTQUFTLENBQUMsT0FBTyxLQUFLLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDO1FBQ3RELDBDQUEwQztRQUMxQyxTQUFTLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUM7UUFFN0IsK0VBQStFO1FBQy9FLE1BQU0sQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFO1lBQ3ZCLElBQUksRUFBRSxJQUFJLENBQUMsVUFBVTtZQUNyQixXQUFXLEVBQUUsSUFBSSxDQUFDLFlBQVk7WUFDOUIsZUFBZSxFQUFFLFdBQVc7U0FDN0IsQ0FBQyxDQUFDO1FBRUgsbUdBQW1HO1FBQ25HLE9BQU8sSUFBQSx5QkFBa0IsRUFBQyxTQUFzQixFQUFFLFdBQVcsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN4RSxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sOENBQThDO1FBQzlDLGlIQUFpSDtRQUNqSCw0RUFBNEU7UUFDNUUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUNwRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUs7WUFDckMsa0RBQWtEO2FBQ2pELE1BQU0sQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQzthQUM5QixHQUFHLENBQXNCLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTFHLE9BQU8sTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7SUFFRCxLQUFLLENBQUMsaUJBQWlCO1FBQ3JCLElBQUksQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUSxDQUFDLEVBQUU7WUFDOUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvQ0FBb0MsQ0FBQyxDQUFDO1NBQ3ZEO1FBRUQsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRO2FBQ3ZDLE1BQU0sQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQzthQUM5QixHQUFHLENBQXNCLEtBQUssRUFBRSxXQUFXLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLFdBQVcsQ0FBQyxDQUFDLEVBQUUsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBRTFHLE9BQU8sTUFBTSxPQUFPLENBQUMsR0FBRyxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BDLENBQUM7Q0FDRjtBQXJERCxzQ0FxREMifQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVml0ZUNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9WaXRlQ29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsa0RBQTBCO0FBQzFCLCtCQUEwQztBQUUxQyxnRUFBMkU7QUFDM0Usc0VBQWlGO0FBQ2pGLHdFQUFtRjtBQUtuRixNQUFNLENBQUMsR0FBRyxJQUFBLGVBQUssRUFBQyx3Q0FBd0MsQ0FBQyxDQUFDO0FBSTFELE1BQXFCLG1CQUFtQjtJQUN0QyxZQUE2QixZQUE4QixFQUFtQixVQUFrQixFQUFtQixNQUFlO1FBQXJHLGlCQUFZLEdBQVosWUFBWSxDQUFrQjtRQUFtQixlQUFVLEdBQVYsVUFBVSxDQUFRO1FBQW1CLFdBQU0sR0FBTixNQUFNLENBQVM7UUFDaEksQ0FBQyxDQUFDLGNBQWMsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDL0IsQ0FBQztJQUVELEtBQUssQ0FBQyxhQUFhLENBQUMsV0FBNkQsRUFBRSxNQUFjO1FBQy9GLE1BQU0sU0FBUyxHQUFjO1lBQzNCLHVEQUF1RDtZQUN2RCxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPO1lBQ3hDLDBDQUEwQztZQUMxQyxJQUFJLEVBQUUsSUFBSSxDQUFDLElBQUk7WUFFZiw2QkFBNkI7WUFDN0IsSUFBSSxFQUFFLElBQUksQ0FBQyxVQUFVO1lBQ3JCLFdBQVcsRUFBRSxJQUFJLENBQUMsWUFBWTtZQUM5QixlQUFlLEVBQUUsV0FBVztTQUM3QixDQUFDO1FBRUYsbUdBQW1HO1FBQ25HLE1BQU0sVUFBVSxHQUFHLENBQUMsTUFBTSxJQUFBLHlCQUFrQixFQUFDLFNBQVMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLENBQUM7UUFDckYsUUFBUSxNQUFNLEVBQUU7WUFDZCxLQUFLLE1BQU07Z0JBQ1QsT0FBTyxJQUFBLDRCQUFpQixFQUFDLFNBQStCLEVBQUUsVUFBVSxDQUFDLENBQUM7WUFDeEUsS0FBSyxTQUFTO2dCQUNaLE9BQU8sSUFBQSwrQkFBb0IsRUFBQyxTQUErQixFQUFFLFVBQVUsQ0FBQyxDQUFDO1lBQzNFLEtBQUssVUFBVTtnQkFDYixPQUFPLElBQUEsZ0NBQXFCLEVBQUMsU0FBa0MsRUFBRSxVQUFVLENBQUMsQ0FBQztZQUMvRTtnQkFDRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixNQUFNLDRDQUE0QyxDQUFDLENBQUM7U0FDMUY7SUFDSCxDQUFDO0lBRUQsSUFBSSxJQUFJO1FBQ04sOENBQThDO1FBQzlDLGlIQUFpSDtRQUNqSCw0RUFBNEU7UUFDNUUsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLGFBQWEsQ0FBQztJQUNwRCxDQUFDO0lBRUQsS0FBSyxDQUFDLGNBQWM7UUFDbEIsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUMzQyxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUM7U0FDcEQ7UUFFRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLEtBQUs7WUFDckMsa0RBQWtEO2FBQ2pELE1BQU0sQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsRUFBRSxDQUFDLE1BQU0sQ0FBQzthQUM5QixHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxFQUFFLFdBQVcsQ0FBQyxNQUFNLElBQUksTUFBTSxDQUFDLENBQUMsQ0FBQztRQUV2RixPQUFPLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFDLGlCQUFpQjtRQUNyQixJQUFJLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLFFBQVEsQ0FBQyxFQUFFO1lBQzlDLE1BQU0sSUFBSSxLQUFLLENBQUMsb0NBQW9DLENBQUMsQ0FBQztTQUN2RDtRQUVELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsUUFBUTtZQUN4QyxrREFBa0Q7YUFDakQsTUFBTSxDQUFDLENBQUMsRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLENBQUMsTUFBTSxDQUFDO2FBQzlCLEdBQUcsQ0FBQyxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxXQUFXLEVBQUUsVUFBVSxDQUFDLENBQUMsQ0FBQztRQUVyRSxPQUFPLE1BQU0sT0FBTyxDQUFDLEdBQUcsQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNwQyxDQUFDO0NBQ0Y7QUFoRUQsc0NBZ0VDIn0=
@@ -1,6 +1,6 @@
1
1
  import { PluginBase } from '@electron-forge/plugin-base';
2
2
  import type { VitePluginConfig } from './Config';
3
- import type { ForgeMultiHookMap, ResolvedForgeConfig, StartResult } from '@electron-forge/shared-types';
3
+ import type { ForgeMultiHookMap, ResolvedForgeConfig } from '@electron-forge/shared-types';
4
4
  export default class VitePlugin extends PluginBase<VitePluginConfig> {
5
5
  private static alreadyStarted;
6
6
  name: string;
@@ -16,7 +16,6 @@ export default class VitePlugin extends PluginBase<VitePluginConfig> {
16
16
  getHooks: () => ForgeMultiHookMap;
17
17
  resolveForgeConfig: (forgeConfig: ResolvedForgeConfig) => Promise<ResolvedForgeConfig>;
18
18
  packageAfterCopy: (_forgeConfig: ResolvedForgeConfig, buildPath: string) => Promise<void>;
19
- startLogic: () => Promise<StartResult>;
20
19
  build: () => Promise<void>;
21
20
  buildRenderer: () => Promise<void>;
22
21
  launchRendererDevServers: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"VitePlugin.d.ts","sourceRoot":"","sources":["../src/VitePlugin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAY9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAOxG,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,UAAU,CAAC,gBAAgB,CAAC;IAClE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAS;IAE/B,IAAI,SAAU;IAErB,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,UAAU,CAAU;IAG5B,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,QAAQ,CAAuB;IAEvC,OAAO,CAAC,OAAO,CAA4B;IAE3C,IAAI,QAAS,MAAM,KAAG,IAAI,CAMxB;IAEK,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKxC,OAAO,KAAK,eAAe,GAE1B;IAED,QAAQ,QAAO,iBAAiB,CAoB9B;IAEF,kBAAkB,gBAAuB,mBAAmB,KAAG,QAAQ,mBAAmB,CAAC,CAsBzF;IAEF,gBAAgB,iBAAwB,mBAAmB,aAAa,MAAM,KAAG,QAAQ,IAAI,CAAC,CAsB5F;IAEF,UAAU,QAAa,QAAQ,WAAW,CAAC,CA+BzC;IAGF,KAAK,QAAa,QAAQ,IAAI,CAAC,CA4B7B;IAGF,aAAa,QAAa,QAAQ,IAAI,CAAC,CAOrC;IAEF,wBAAwB,QAAa,QAAQ,IAAI,CAAC,CAuBhD;IAEF,WAAW,YAAa;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,8BAAgB,IAAI,CAmB/E;CACH;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
1
+ {"version":3,"file":"VitePlugin.d.ts","sourceRoot":"","sources":["../src/VitePlugin.ts"],"names":[],"mappings":"AAEA,OAAO,EAAuB,UAAU,EAAE,MAAM,6BAA6B,CAAC;AAU9E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AACjD,OAAO,KAAK,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AAO3F,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,UAAU,CAAC,gBAAgB,CAAC;IAClE,OAAO,CAAC,MAAM,CAAC,cAAc,CAAS;IAE/B,IAAI,SAAU;IAErB,OAAO,CAAC,MAAM,CAAS;IAGvB,OAAO,CAAC,UAAU,CAAU;IAG5B,OAAO,CAAC,OAAO,CAAU;IAEzB,OAAO,CAAC,oBAAoB,CAAuB;IAEnD,OAAO,CAAC,QAAQ,CAAuB;IAEvC,OAAO,CAAC,OAAO,CAA4B;IAE3C,IAAI,QAAS,MAAM,KAAG,IAAI,CAMxB;IAEK,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAKxC,OAAO,KAAK,eAAe,GAE1B;IAED,QAAQ,QAAO,iBAAiB,CAmD9B;IAEF,kBAAkB,gBAAuB,mBAAmB,KAAG,QAAQ,mBAAmB,CAAC,CAwBzF;IAEF,gBAAgB,iBAAwB,mBAAmB,aAAa,MAAM,KAAG,QAAQ,IAAI,CAAC,CAc5F;IAGF,KAAK,QAAa,QAAQ,IAAI,CAAC,CA4B7B;IAGF,aAAa,QAAa,QAAQ,IAAI,CAAC,CAOrC;IAEF,wBAAwB,QAAa,QAAQ,IAAI,CAAC,CAuBhD;IAEF,WAAW,YAAa;QAAE,OAAO,CAAC,EAAE,OAAO,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,8BAAgB,IAAI,CAmB/E;CACH;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
@@ -10,9 +10,7 @@ const chalk_1 = __importDefault(require("chalk"));
10
10
  const debug_1 = __importDefault(require("debug"));
11
11
  const fs_extra_1 = __importDefault(require("fs-extra"));
12
12
  const listr2_1 = require("listr2");
13
- // eslint-disable-next-line node/no-unpublished-import
14
13
  const vite_1 = __importDefault(require("vite"));
15
- const package_1 = require("./util/package");
16
14
  const plugins_1 = require("./util/plugins");
17
15
  const ViteConfig_1 = __importDefault(require("./ViteConfig"));
18
16
  const d = (0, debug_1.default)('electron-forge:plugin:vite');
@@ -31,6 +29,36 @@ class VitePlugin extends plugin_base_1.PluginBase {
31
29
  };
32
30
  this.getHooks = () => {
33
31
  return {
32
+ preStart: [
33
+ (0, plugin_base_1.namedHookWithTaskFn)(async (task) => {
34
+ if (VitePlugin.alreadyStarted)
35
+ return;
36
+ VitePlugin.alreadyStarted = true;
37
+ await fs_extra_1.default.remove(this.baseDir);
38
+ return task?.newListr([
39
+ {
40
+ title: 'Launching dev servers for renderer process code',
41
+ task: async () => {
42
+ await this.launchRendererDevServers();
43
+ },
44
+ rendererOptions: {
45
+ persistentOutput: true,
46
+ timer: { ...listr2_1.PRESET_TIMER },
47
+ },
48
+ },
49
+ // The main process depends on the `server.port` of the renderer process, so the renderer process is run first.
50
+ {
51
+ title: 'Compiling main process code',
52
+ task: async () => {
53
+ await this.build();
54
+ },
55
+ rendererOptions: {
56
+ timer: { ...listr2_1.PRESET_TIMER },
57
+ },
58
+ },
59
+ ]);
60
+ }, 'Preparing vite bundles'),
61
+ ],
34
62
  prePackage: [
35
63
  (0, plugin_base_1.namedHookWithTaskFn)(async () => {
36
64
  this.isProd = true;
@@ -63,15 +91,15 @@ Your packaged app may be larger than expected if you dont ignore everything othe
63
91
  forgeConfig.packagerConfig.ignore = (file) => {
64
92
  if (!file)
65
93
  return false;
66
- // Always starts with `/`
94
+ // `file` always starts with `/`
67
95
  // @see - https://github.com/electron/packager/blob/v18.1.3/src/copy-filter.ts#L89-L93
96
+ // Collect the files built by Vite
68
97
  return !file.startsWith('/.vite');
69
98
  };
70
99
  return forgeConfig;
71
100
  };
72
101
  this.packageAfterCopy = async (_forgeConfig, buildPath) => {
73
102
  const pj = await fs_extra_1.default.readJson(node_path_1.default.resolve(this.projectDir, 'package.json'));
74
- const flatDependencies = await (0, package_1.getFlatDependencies)(this.projectDir);
75
103
  if (!pj.main?.includes('.vite/')) {
76
104
  throw new Error(`Electron Forge is configured to use the Vite plugin. The plugin expects the
77
105
  "main" entry point in "package.json" to be ".vite/*" (where the plugin outputs
@@ -80,44 +108,7 @@ the generated files). Instead, it is ${JSON.stringify(pj.main)}`);
80
108
  if (pj.config) {
81
109
  delete pj.config.forge;
82
110
  }
83
- await fs_extra_1.default.writeJson(node_path_1.default.resolve(buildPath, 'package.json'), pj, {
84
- spaces: 2,
85
- });
86
- // Copy the dependencies in package.json
87
- for (const dep of flatDependencies) {
88
- await fs_extra_1.default.copy(dep.src, node_path_1.default.resolve(buildPath, dep.dest));
89
- }
90
- };
91
- this.startLogic = async () => {
92
- if (VitePlugin.alreadyStarted)
93
- return false;
94
- VitePlugin.alreadyStarted = true;
95
- await fs_extra_1.default.remove(this.baseDir);
96
- return {
97
- tasks: [
98
- {
99
- title: 'Launching dev servers for renderer process code',
100
- task: async () => {
101
- await this.launchRendererDevServers();
102
- },
103
- rendererOptions: {
104
- persistentOutput: true,
105
- timer: { ...listr2_1.PRESET_TIMER },
106
- },
107
- },
108
- // The main process depends on the `server.port` of the renderer process, so the renderer process is run first.
109
- {
110
- title: 'Compiling main process code',
111
- task: async () => {
112
- await this.build();
113
- },
114
- rendererOptions: {
115
- timer: { ...listr2_1.PRESET_TIMER },
116
- },
117
- },
118
- ],
119
- result: false,
120
- };
111
+ await fs_extra_1.default.writeJson(node_path_1.default.resolve(buildPath, 'package.json'), pj, { spaces: 2 });
121
112
  };
122
113
  // Main process, Preload scripts and Worker process, etc.
123
114
  this.build = async () => {
@@ -207,4 +198,4 @@ the generated files). Instead, it is ${JSON.stringify(pj.main)}`);
207
198
  exports.default = VitePlugin;
208
199
  exports.VitePlugin = VitePlugin;
209
200
  VitePlugin.alreadyStarted = false;
210
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVml0ZVBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9WaXRlUGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUE2QjtBQUU3Qiw2REFBOEU7QUFDOUUsa0RBQTBCO0FBQzFCLGtEQUEwQjtBQUMxQix3REFBMEI7QUFDMUIsbUNBQXNDO0FBQ3RDLHNEQUFzRDtBQUN0RCxnREFBdUM7QUFFdkMsNENBQXFEO0FBQ3JELDRDQUE2QztBQUM3Qyw4REFBK0M7QUFRL0MsTUFBTSxDQUFDLEdBQUcsSUFBQSxlQUFLLEVBQUMsNEJBQTRCLENBQUMsQ0FBQztBQUU5QyxNQUFxQixVQUFXLFNBQVEsd0JBQTRCO0lBQXBFOztRQUdTLFNBQUksR0FBRyxNQUFNLENBQUM7UUFFYixXQUFNLEdBQUcsS0FBSyxDQUFDO1FBVWYsYUFBUSxHQUFvQixFQUFFLENBQUM7UUFFL0IsWUFBTyxHQUF5QixFQUFFLENBQUM7UUFFM0MsU0FBSSxHQUFHLENBQUMsR0FBVyxFQUFRLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGNBQWMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUV6QixDQUFDLENBQUMsd0JBQXdCLENBQUMsQ0FBQztZQUM1QixPQUFPLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7WUFDbkUsT0FBTyxDQUFDLEVBQUUsQ0FBQyxRQUEwQixFQUFFLENBQUMsT0FBTyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN4RixDQUFDLENBQUM7UUFXRixhQUFRLEdBQUcsR0FBc0IsRUFBRTtZQUNqQyxPQUFPO2dCQUNMLFVBQVUsRUFBRTtvQkFDVixJQUFBLGlDQUFtQixFQUFlLEtBQUss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
201
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVml0ZVBsdWdpbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9WaXRlUGx1Z2luLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLDBEQUE2QjtBQUU3Qiw2REFBOEU7QUFDOUUsa0RBQTBCO0FBQzFCLGtEQUEwQjtBQUMxQix3REFBMEI7QUFDMUIsbUNBQXNDO0FBQ3RDLGdEQUF1QztBQUV2Qyw0Q0FBNkM7QUFDN0MsOERBQStDO0FBUS9DLE1BQU0sQ0FBQyxHQUFHLElBQUEsZUFBSyxFQUFDLDRCQUE0QixDQUFDLENBQUM7QUFFOUMsTUFBcUIsVUFBVyxTQUFRLHdCQUE0QjtJQUFwRTs7UUFHUyxTQUFJLEdBQUcsTUFBTSxDQUFDO1FBRWIsV0FBTSxHQUFHLEtBQUssQ0FBQztRQVVmLGFBQVEsR0FBb0IsRUFBRSxDQUFDO1FBRS9CLFlBQU8sR0FBeUIsRUFBRSxDQUFDO1FBRTNDLFNBQUksR0FBRyxDQUFDLEdBQVcsRUFBUSxFQUFFO1lBQzNCLElBQUksQ0FBQyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUM7WUFFekIsQ0FBQyxDQUFDLHdCQUF3QixDQUFDLENBQUM7WUFDNUIsT0FBTyxDQUFDLEVBQUUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1lBQ25FLE9BQU8sQ0FBQyxFQUFFLENBQUMsUUFBMEIsRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDeEYsQ0FBQyxDQUFDO1FBV0YsYUFBUSxHQUFHLEdBQXNCLEVBQUU7WUFDakMsT0FBTztnQkFDTCxRQUFRLEVBQUU7b0JBQ1IsSUFBQSxpQ0FBbUIsRUFBYSxLQUFLLEVBQUUsSUFBSSxFQUFFLEVBQUU7d0JBQzdD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
@@ -0,0 +1,11 @@
1
+ import type { ConfigEnv, Plugin, UserConfig } from 'vite';
2
+ export declare const builtins: string[];
3
+ export declare const external: string[];
4
+ export declare function getBuildConfig(env: ConfigEnv<'build'>): UserConfig;
5
+ export declare function getDefineKeys(names: string[]): {
6
+ [name: string]: VitePluginRuntimeKeys;
7
+ };
8
+ export declare function getBuildDefine(env: ConfigEnv<'build'>): Record<string, any>;
9
+ export declare function pluginExposeRenderer(name: string): Plugin;
10
+ export declare function pluginHotRestart(command: 'reload' | 'restart'): Plugin;
11
+ //# sourceMappingURL=vite.base.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.base.config.d.ts","sourceRoot":"","sources":["../../src/config/vite.base.config.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAiB,MAAM,MAAM,CAAC;AAEzE,eAAO,MAAM,QAAQ,UAAsE,CAAC;AAE5F,eAAO,MAAM,QAAQ,UAAgB,CAAC;AAMtC,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,GAAG,UAAU,CAgBlE;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE;;EAY5C;AAED,wBAAgB,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,OAAO,CAAC,uBAcrD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAgBzD;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,QAAQ,GAAG,SAAS,GAAG,MAAM,CAiBtE"}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pluginHotRestart = exports.pluginExposeRenderer = exports.getBuildDefine = exports.getDefineKeys = exports.getBuildConfig = exports.external = exports.builtins = void 0;
4
+ const node_module_1 = require("node:module");
5
+ exports.builtins = ['electron', ...node_module_1.builtinModules.map((m) => [m, `node:${m}`]).flat()];
6
+ exports.external = [...exports.builtins];
7
+ // Used for hot reload after preload scripts.
8
+ const viteDevServers = {};
9
+ const viteDevServerUrls = {};
10
+ function getBuildConfig(env) {
11
+ const { root, mode, command } = env;
12
+ return {
13
+ root,
14
+ mode,
15
+ build: {
16
+ // Prevent multiple builds from interfering with each other.
17
+ emptyOutDir: false,
18
+ // 🚧 Multiple builds may conflict.
19
+ outDir: '.vite/build',
20
+ watch: command === 'serve' ? {} : null,
21
+ minify: command === 'build',
22
+ },
23
+ clearScreen: false,
24
+ };
25
+ }
26
+ exports.getBuildConfig = getBuildConfig;
27
+ function getDefineKeys(names) {
28
+ const define = {};
29
+ return names.reduce((acc, name) => {
30
+ const NAME = name.toUpperCase();
31
+ const keys = {
32
+ VITE_DEV_SERVER_URL: `${NAME}_VITE_DEV_SERVER_URL`,
33
+ VITE_NAME: `${NAME}_VITE_NAME`,
34
+ };
35
+ return { ...acc, [name]: keys };
36
+ }, define);
37
+ }
38
+ exports.getDefineKeys = getDefineKeys;
39
+ function getBuildDefine(env) {
40
+ const { command, forgeConfig } = env;
41
+ const names = forgeConfig.renderer.filter(({ name }) => name != null).map(({ name }) => name);
42
+ const defineKeys = getDefineKeys(names);
43
+ const define = Object.entries(defineKeys).reduce((acc, [name, keys]) => {
44
+ const { VITE_DEV_SERVER_URL, VITE_NAME } = keys;
45
+ const def = {
46
+ [VITE_DEV_SERVER_URL]: command === 'serve' ? JSON.stringify(viteDevServerUrls[VITE_DEV_SERVER_URL]) : undefined,
47
+ [VITE_NAME]: JSON.stringify(name),
48
+ };
49
+ return { ...acc, ...def };
50
+ }, {});
51
+ return define;
52
+ }
53
+ exports.getBuildDefine = getBuildDefine;
54
+ function pluginExposeRenderer(name) {
55
+ const { VITE_DEV_SERVER_URL } = getDefineKeys([name])[name];
56
+ return {
57
+ name: '@electron-forge/plugin-vite:expose-renderer',
58
+ configureServer(server) {
59
+ // Expose server for preload scripts hot reload.
60
+ viteDevServers[name] = server;
61
+ server.httpServer?.once('listening', () => {
62
+ const addressInfo = server.httpServer?.address();
63
+ // Expose env constant for main process use.
64
+ viteDevServerUrls[VITE_DEV_SERVER_URL] = `http://localhost:${addressInfo?.port}`;
65
+ });
66
+ },
67
+ };
68
+ }
69
+ exports.pluginExposeRenderer = pluginExposeRenderer;
70
+ function pluginHotRestart(command) {
71
+ return {
72
+ name: '@electron-forge/plugin-vite:hot-restart',
73
+ closeBundle() {
74
+ if (command === 'reload') {
75
+ for (const server of Object.values(viteDevServers)) {
76
+ // Preload scripts hot reload.
77
+ server.ws.send({ type: 'full-reload' });
78
+ }
79
+ }
80
+ else if (command === 'restart') {
81
+ // Main process hot restart.
82
+ // https://github.com/electron/forge/blob/v7.2.0/packages/api/core/src/api/start.ts#L216-L223
83
+ // TODO: blocked in #3380
84
+ // process.stdin.emit('data', 'rs');
85
+ }
86
+ },
87
+ };
88
+ }
89
+ exports.pluginHotRestart = pluginHotRestart;
90
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZS5iYXNlLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvdml0ZS5iYXNlLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSw2Q0FBNkM7QUFLaEMsUUFBQSxRQUFRLEdBQUcsQ0FBQyxVQUFVLEVBQUUsR0FBRyw0QkFBYyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQztBQUUvRSxRQUFBLFFBQVEsR0FBRyxDQUFDLEdBQUcsZ0JBQVEsQ0FBQyxDQUFDO0FBRXRDLDZDQUE2QztBQUM3QyxNQUFNLGNBQWMsR0FBa0MsRUFBRSxDQUFDO0FBQ3pELE1BQU0saUJBQWlCLEdBQTJCLEVBQUUsQ0FBQztBQUVyRCxTQUFnQixjQUFjLENBQUMsR0FBdUI7SUFDcEQsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLEdBQUcsR0FBRyxDQUFDO0lBRXBDLE9BQU87UUFDTCxJQUFJO1FBQ0osSUFBSTtRQUNKLEtBQUssRUFBRTtZQUNMLDREQUE0RDtZQUM1RCxXQUFXLEVBQUUsS0FBSztZQUNsQixtQ0FBbUM7WUFDbkMsTUFBTSxFQUFFLGFBQWE7WUFDckIsS0FBSyxFQUFFLE9BQU8sS0FBSyxPQUFPLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSTtZQUN0QyxNQUFNLEVBQUUsT0FBTyxLQUFLLE9BQU87U0FDNUI7UUFDRCxXQUFXLEVBQUUsS0FBSztLQUNuQixDQUFDO0FBQ0osQ0FBQztBQWhCRCx3Q0FnQkM7QUFFRCxTQUFnQixhQUFhLENBQUMsS0FBZTtJQUMzQyxNQUFNLE1BQU0sR0FBOEMsRUFBRSxDQUFDO0lBRTdELE9BQU8sS0FBSyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEdBQUcsRUFBRSxJQUFJLEVB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
@@ -0,0 +1,3 @@
1
+ import { type ConfigEnv, type UserConfig } from 'vite';
2
+ export declare function getConfig(forgeEnv: ConfigEnv<'build'>, userConfig?: UserConfig): UserConfig;
3
+ //# sourceMappingURL=vite.main.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.main.config.d.ts","sourceRoot":"","sources":["../../src/config/vite.main.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAe,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAIpE,wBAAgB,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,GAAE,UAAe,GAAG,UAAU,CA4B/F"}
@@ -0,0 +1,34 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConfig = void 0;
4
+ const vite_1 = require("vite");
5
+ const vite_base_config_1 = require("./vite.base.config");
6
+ function getConfig(forgeEnv, userConfig = {}) {
7
+ const { forgeConfigSelf } = forgeEnv;
8
+ const define = (0, vite_base_config_1.getBuildDefine)(forgeEnv);
9
+ const config = {
10
+ build: {
11
+ rollupOptions: {
12
+ external: vite_base_config_1.external,
13
+ },
14
+ },
15
+ plugins: [(0, vite_base_config_1.pluginHotRestart)('restart')],
16
+ define,
17
+ resolve: {
18
+ // Load the Node.js entry.
19
+ conditions: ['node'],
20
+ mainFields: ['module', 'jsnext:main', 'jsnext'],
21
+ },
22
+ };
23
+ const buildConfig = (0, vite_base_config_1.getBuildConfig)(forgeEnv);
24
+ if (userConfig.build?.lib == null) {
25
+ config.build.lib = {
26
+ entry: forgeConfigSelf.entry,
27
+ fileName: () => '[name].js',
28
+ formats: ['cjs'],
29
+ };
30
+ }
31
+ return (0, vite_1.mergeConfig)((0, vite_1.mergeConfig)(buildConfig, config), userConfig);
32
+ }
33
+ exports.getConfig = getConfig;
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZS5tYWluLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvdml0ZS5tYWluLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBb0U7QUFFcEUseURBQWdHO0FBRWhHLFNBQWdCLFNBQVMsQ0FBQyxRQUE0QixFQUFFLGFBQXlCLEVBQUU7SUFDakYsTUFBTSxFQUFFLGVBQWUsRUFBRSxHQUFHLFFBQVEsQ0FBQztJQUNyQyxNQUFNLE1BQU0sR0FBRyxJQUFBLGlDQUFjLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFDeEMsTUFBTSxNQUFNLEdBQWU7UUFDekIsS0FBSyxFQUFFO1lBQ0wsYUFBYSxFQUFFO2dCQUNiLFFBQVEsRUFBUiwyQkFBUTthQUNUO1NBQ0Y7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFBLG1DQUFnQixFQUFDLFNBQVMsQ0FBQyxDQUFDO1FBQ3RDLE1BQU07UUFDTixPQUFPLEVBQUU7WUFDUCwwQkFBMEI7WUFDMUIsVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDO1lBQ3BCLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRSxhQUFhLEVBQUUsUUFBUSxDQUFDO1NBQ2hEO0tBQ0YsQ0FBQztJQUNGLE1BQU0sV0FBVyxHQUFHLElBQUEsaUNBQWMsRUFBQyxRQUFRLENBQUMsQ0FBQztJQUU3QyxJQUFJLFVBQVUsQ0FBQyxLQUFLLEVBQUUsR0FBRyxJQUFJLElBQUksRUFBRTtRQUNqQyxNQUFNLENBQUMsS0FBTSxDQUFDLEdBQUcsR0FBRztZQUNsQixLQUFLLEVBQUUsZUFBZSxDQUFDLEtBQUs7WUFDNUIsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLFdBQVc7WUFDM0IsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDO1NBQ2pCLENBQUM7S0FDSDtJQUVELE9BQU8sSUFBQSxrQkFBVyxFQUFDLElBQUEsa0JBQVcsRUFBQyxXQUFXLEVBQUUsTUFBTSxDQUFDLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDbkUsQ0FBQztBQTVCRCw4QkE0QkMifQ==
@@ -0,0 +1,3 @@
1
+ import { type ConfigEnv, type UserConfig } from 'vite';
2
+ export declare function getConfig(forgeEnv: ConfigEnv<'build'>, userConfig?: UserConfig): UserConfig;
3
+ //# sourceMappingURL=vite.preload.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.preload.config.d.ts","sourceRoot":"","sources":["../../src/config/vite.preload.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAe,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAIpE,wBAAgB,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,UAAU,GAAE,UAAe,GAAG,UAAU,CAuB/F"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConfig = void 0;
4
+ const vite_1 = require("vite");
5
+ const vite_base_config_1 = require("./vite.base.config");
6
+ function getConfig(forgeEnv, userConfig = {}) {
7
+ const { forgeConfigSelf } = forgeEnv;
8
+ const config = {
9
+ build: {
10
+ rollupOptions: {
11
+ external: vite_base_config_1.external,
12
+ // Preload scripts may contain Web assets, so use the `build.rollupOptions.input` instead `build.lib.entry`.
13
+ input: forgeConfigSelf.entry,
14
+ output: {
15
+ format: 'cjs',
16
+ // It should not be split chunks.
17
+ inlineDynamicImports: true,
18
+ entryFileNames: '[name].js',
19
+ chunkFileNames: '[name].js',
20
+ assetFileNames: '[name].[ext]',
21
+ },
22
+ },
23
+ },
24
+ plugins: [(0, vite_base_config_1.pluginHotRestart)('reload')],
25
+ };
26
+ const buildConfig = (0, vite_base_config_1.getBuildConfig)(forgeEnv);
27
+ return (0, vite_1.mergeConfig)((0, vite_1.mergeConfig)(buildConfig, config), userConfig);
28
+ }
29
+ exports.getConfig = getConfig;
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZS5wcmVsb2FkLmNvbmZpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9jb25maWcvdml0ZS5wcmVsb2FkLmNvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7QUFBQSwrQkFBb0U7QUFFcEUseURBQWdGO0FBRWhGLFNBQWdCLFNBQVMsQ0FBQyxRQUE0QixFQUFFLGFBQXlCLEVBQUU7SUFDakYsTUFBTSxFQUFFLGVBQWUsRUFBRSxHQUFHLFFBQVEsQ0FBQztJQUNyQyxNQUFNLE1BQU0sR0FBZTtRQUN6QixLQUFLLEVBQUU7WUFDTCxhQUFhLEVBQUU7Z0JBQ2IsUUFBUSxFQUFSLDJCQUFRO2dCQUNSLDRHQUE0RztnQkFDNUcsS0FBSyxFQUFFLGVBQWUsQ0FBQyxLQUFLO2dCQUM1QixNQUFNLEVBQUU7b0JBQ04sTUFBTSxFQUFFLEtBQUs7b0JBQ2IsaUNBQWlDO29CQUNqQyxvQkFBb0IsRUFBRSxJQUFJO29CQUMxQixjQUFjLEVBQUUsV0FBVztvQkFDM0IsY0FBYyxFQUFFLFdBQVc7b0JBQzNCLGNBQWMsRUFBRSxjQUFjO2lCQUMvQjthQUNGO1NBQ0Y7UUFDRCxPQUFPLEVBQUUsQ0FBQyxJQUFBLG1DQUFnQixFQUFDLFFBQVEsQ0FBQyxDQUFDO0tBQ3RDLENBQUM7SUFDRixNQUFNLFdBQVcsR0FBRyxJQUFBLGlDQUFjLEVBQUMsUUFBUSxDQUFDLENBQUM7SUFFN0MsT0FBTyxJQUFBLGtCQUFXLEVBQUMsSUFBQSxrQkFBVyxFQUFDLFdBQVcsRUFBRSxNQUFNLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztBQUNuRSxDQUFDO0FBdkJELDhCQXVCQyJ9
@@ -0,0 +1,3 @@
1
+ import { type ConfigEnv, type UserConfig } from 'vite';
2
+ export declare function getConfig(forgeEnv: ConfigEnv<'renderer'>, userConfig?: UserConfig): Record<string, any>;
3
+ //# sourceMappingURL=vite.renderer.config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vite.renderer.config.d.ts","sourceRoot":"","sources":["../../src/config/vite.renderer.config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,SAAS,EAAe,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAKpE,wBAAgB,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,UAAU,CAAC,EAAE,UAAU,GAAE,UAAe,uBAmBrF"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getConfig = void 0;
4
+ const vite_1 = require("vite");
5
+ const vite_base_config_1 = require("./vite.base.config");
6
+ // https://vitejs.dev/config
7
+ function getConfig(forgeEnv, userConfig = {}) {
8
+ const { root, mode, forgeConfigSelf } = forgeEnv;
9
+ const name = forgeConfigSelf.name ?? '';
10
+ const config = {
11
+ root,
12
+ mode,
13
+ base: './',
14
+ build: {
15
+ outDir: `.vite/renderer/${name}`,
16
+ },
17
+ plugins: [(0, vite_base_config_1.pluginExposeRenderer)(name)],
18
+ resolve: {
19
+ preserveSymlinks: true,
20
+ },
21
+ clearScreen: false,
22
+ };
23
+ return (0, vite_1.mergeConfig)(config, userConfig);
24
+ }
25
+ exports.getConfig = getConfig;
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidml0ZS5yZW5kZXJlci5jb25maWcuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvY29uZmlnL3ZpdGUucmVuZGVyZXIuY29uZmlnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7OztBQUFBLCtCQUFvRTtBQUVwRSx5REFBMEQ7QUFFMUQsNEJBQTRCO0FBQzVCLFNBQWdCLFNBQVMsQ0FBQyxRQUErQixFQUFFLGFBQXlCLEVBQUU7SUFDcEYsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLEdBQUcsUUFBUSxDQUFDO0lBQ2pELE1BQU0sSUFBSSxHQUFHLGVBQWUsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDO0lBRXhDLE1BQU0sTUFBTSxHQUFlO1FBQ3pCLElBQUk7UUFDSixJQUFJO1FBQ0osSUFBSSxFQUFFLElBQUk7UUFDVixLQUFLLEVBQUU7WUFDTCxNQUFNLEVBQUUsa0JBQWtCLElBQUksRUFBRTtTQUNqQztRQUNELE9BQU8sRUFBRSxDQUFDLElBQUEsdUNBQW9CLEVBQUMsSUFBSSxDQUFDLENBQUM7UUFDckMsT0FBTyxFQUFFO1lBQ1AsZ0JBQWdCLEVBQUUsSUFBSTtTQUN2QjtRQUNELFdBQVcsRUFBRSxLQUFLO0tBQ25CLENBQUM7SUFFRixPQUFPLElBQUEsa0JBQVcsRUFBQyxNQUFNLEVBQUUsVUFBVSxDQUFDLENBQUM7QUFDekMsQ0FBQztBQW5CRCw4QkFtQkMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/util/plugins.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,eAO/C"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/util/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,wBAAgB,WAAW,CAAC,QAAQ,EAAE,MAAM,IAAI,eAO/C"}
@@ -10,4 +10,4 @@ function onBuildDone(callback) {
10
10
  };
11
11
  }
12
12
  exports.onBuildDone = onBuildDone;
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL3BsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsU0FBZ0IsV0FBVyxDQUFDLFFBQW9CO0lBQzlDLE9BQU87UUFDTCxJQUFJLEVBQUUsd0NBQXdDO1FBQzlDLFdBQVc7WUFDVCxRQUFRLEVBQUUsQ0FBQztRQUNiLENBQUM7S0FDUSxDQUFDO0FBQ2QsQ0FBQztBQVBELGtDQU9DIn0=
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGx1Z2lucy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL3BsdWdpbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBRUEsU0FBZ0IsV0FBVyxDQUFDLFFBQW9CO0lBQzlDLE9BQU87UUFDTCxJQUFJLEVBQUUsd0NBQXdDO1FBQzlDLFdBQVc7WUFDVCxRQUFRLEVBQUUsQ0FBQztRQUNiLENBQUM7S0FDUSxDQUFDO0FBQ2QsQ0FBQztBQVBELGtDQU9DIn0=
@@ -0,0 +1,23 @@
1
+ export {}; // Make this a module
2
+ import type { VitePluginConfig } from './src/Config';
3
+
4
+ declare global {
5
+ // This allows TypeScript to pick up the magic constants that's auto-generated by Forge's Vite
6
+ // plugin that tells the Electron app where to look for the Vite-bundled app code (depending on
7
+ // whether you're running in development or production).
8
+ const MAIN_WINDOW_VITE_DEV_SERVER_URL: string;
9
+ const MAIN_WINDOW_VITE_NAME: string;
10
+
11
+ interface VitePluginRuntimeKeys {
12
+ VITE_DEV_SERVER_URL: `${string}_VITE_DEV_SERVER_URL`;
13
+ VITE_NAME: `${string}_VITE_NAME`;
14
+ }
15
+ }
16
+
17
+ declare module 'vite' {
18
+ interface ConfigEnv<K extends keyof VitePluginConfig = keyof VitePluginConfig> {
19
+ root: string;
20
+ forgeConfig: VitePluginConfig;
21
+ forgeConfigSelf: VitePluginConfig[K][number];
22
+ }
23
+ }