wxt 0.20.13 → 0.20.15

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 (280) hide show
  1. package/dist/browser.d.mts +20 -0
  2. package/dist/browser.mjs +18 -3
  3. package/dist/builtin-modules/index.mjs +7 -2
  4. package/dist/builtin-modules/unimport.mjs +69 -75
  5. package/dist/cli/cli-utils.mjs +54 -50
  6. package/dist/cli/commands.mjs +78 -103
  7. package/dist/cli/index.d.mts +1 -0
  8. package/dist/cli/index.mjs +9 -4
  9. package/dist/core/{build.d.ts → build.d.mts} +6 -2
  10. package/dist/core/build.mjs +23 -4
  11. package/dist/core/builders/vite/index.mjs +293 -343
  12. package/dist/core/builders/vite/plugins/bundleAnalysis.mjs +11 -12
  13. package/dist/core/builders/vite/plugins/cssEntrypoints.mjs +27 -20
  14. package/dist/core/builders/vite/plugins/defineImportMeta.mjs +17 -12
  15. package/dist/core/builders/vite/plugins/devHtmlPrerender.mjs +105 -136
  16. package/dist/core/builders/vite/plugins/devServerGlobals.mjs +15 -14
  17. package/dist/core/builders/vite/plugins/download.mjs +23 -12
  18. package/dist/core/builders/vite/plugins/entrypointGroupGlobals.mjs +18 -14
  19. package/dist/core/builders/vite/plugins/extensionApiMock.mjs +31 -33
  20. package/dist/core/builders/vite/plugins/globals.mjs +14 -13
  21. package/dist/core/builders/vite/plugins/iifeFooter.mjs +17 -11
  22. package/dist/core/builders/vite/plugins/index.mjs +18 -16
  23. package/dist/core/builders/vite/plugins/noopBackground.mjs +21 -15
  24. package/dist/core/builders/vite/plugins/removeEntrypointMainFunction.mjs +26 -23
  25. package/dist/core/builders/vite/plugins/resolveAppConfig.mjs +26 -24
  26. package/dist/core/builders/vite/plugins/resolveVirtualModules.mjs +28 -26
  27. package/dist/core/builders/vite/plugins/tsconfigPaths.mjs +11 -11
  28. package/dist/core/builders/vite/plugins/wxtPluginLoader.mjs +42 -47
  29. package/dist/core/{clean.d.ts → clean.d.mts} +7 -3
  30. package/dist/core/clean.mjs +38 -35
  31. package/dist/core/{create-server.d.ts → create-server.d.mts} +6 -2
  32. package/dist/core/create-server.mjs +236 -247
  33. package/dist/core/define-config.d.mts +6 -0
  34. package/dist/core/define-config.mjs +6 -2
  35. package/dist/core/define-web-ext-config.d.mts +13 -0
  36. package/dist/core/define-web-ext-config.mjs +16 -7
  37. package/dist/core/generate-wxt-dir.mjs +110 -148
  38. package/dist/core/index.d.mts +9 -0
  39. package/dist/core/index.mjs +12 -8
  40. package/dist/core/initialize.d.mts +8 -0
  41. package/dist/core/initialize.mjs +110 -124
  42. package/dist/core/keyboard-shortcuts.mjs +30 -28
  43. package/dist/core/package-managers/bun.mjs +18 -16
  44. package/dist/core/package-managers/deno.mjs +12 -8
  45. package/dist/core/package-managers/index.mjs +52 -60
  46. package/dist/core/package-managers/npm.mjs +51 -52
  47. package/dist/core/package-managers/pnpm.mjs +21 -18
  48. package/dist/core/package-managers/yarn.mjs +31 -28
  49. package/dist/core/prepare.d.mts +6 -0
  50. package/dist/core/prepare.mjs +12 -7
  51. package/dist/core/resolve-config.mjs +393 -462
  52. package/dist/core/runners/index.mjs +15 -10
  53. package/dist/core/runners/manual.mjs +13 -14
  54. package/dist/core/runners/safari.mjs +13 -14
  55. package/dist/core/runners/web-ext.mjs +62 -83
  56. package/dist/core/runners/wsl.mjs +13 -14
  57. package/dist/core/utils/arrays.mjs +23 -12
  58. package/dist/core/utils/building/build-entrypoints.mjs +44 -40
  59. package/dist/core/utils/building/detect-dev-changes.mjs +84 -105
  60. package/dist/core/utils/building/find-entrypoints.mjs +278 -359
  61. package/dist/core/utils/building/group-entrypoints.mjs +42 -35
  62. package/dist/core/utils/building/index.mjs +8 -6
  63. package/dist/core/utils/building/internal-build.mjs +86 -102
  64. package/dist/core/utils/building/rebuild.mjs +50 -30
  65. package/dist/core/utils/cache.mjs +29 -18
  66. package/dist/core/utils/constants.mjs +9 -1
  67. package/dist/core/utils/content-scripts.mjs +56 -54
  68. package/dist/core/utils/content-security-policy.mjs +36 -39
  69. package/dist/core/utils/entrypoints.mjs +51 -28
  70. package/dist/core/utils/env.mjs +22 -17
  71. package/dist/core/utils/environments/browser-environment.mjs +13 -12
  72. package/dist/core/utils/environments/environment.mjs +36 -33
  73. package/dist/core/utils/environments/extension-environment.mjs +15 -10
  74. package/dist/core/utils/environments/index.mjs +4 -2
  75. package/dist/core/utils/eslint.mjs +11 -10
  76. package/dist/core/utils/fs.mjs +23 -11
  77. package/dist/core/utils/globals.mjs +53 -51
  78. package/dist/core/utils/i18n.mjs +41 -32
  79. package/dist/core/utils/index.mjs +3 -0
  80. package/dist/core/utils/log/index.mjs +6 -4
  81. package/dist/core/utils/log/printBuildSummary.mjs +20 -25
  82. package/dist/core/utils/log/printFileList.mjs +30 -33
  83. package/dist/core/utils/log/printHeader.mjs +9 -5
  84. package/dist/core/utils/log/printTable.mjs +19 -21
  85. package/dist/core/utils/manifest.mjs +366 -479
  86. package/dist/core/utils/minimatch-multiple.mjs +26 -15
  87. package/dist/core/utils/network.mjs +27 -33
  88. package/dist/core/utils/number.mjs +7 -3
  89. package/dist/core/utils/package.mjs +20 -13
  90. package/dist/core/utils/paths.d.mts +8 -0
  91. package/dist/core/utils/paths.mjs +26 -7
  92. package/dist/core/utils/strings.mjs +19 -14
  93. package/dist/core/utils/syntax-errors.mjs +14 -16
  94. package/dist/core/utils/time.mjs +19 -15
  95. package/dist/core/utils/transform.mjs +129 -160
  96. package/dist/core/utils/types.d.mts +6 -0
  97. package/dist/core/utils/validation.mjs +43 -50
  98. package/dist/core/utils/virtual-modules.mjs +20 -12
  99. package/dist/core/utils/wsl.mjs +11 -3
  100. package/dist/core/wxt.mjs +65 -60
  101. package/dist/core/{zip.d.ts → zip.d.mts} +6 -2
  102. package/dist/core/zip.mjs +118 -140
  103. package/dist/index.d.mts +13 -0
  104. package/dist/index.mjs +13 -3
  105. package/dist/{modules.d.ts → modules.d.mts} +14 -16
  106. package/dist/modules.mjs +179 -51
  107. package/dist/testing/fake-browser.d.mts +2 -0
  108. package/dist/testing/fake-browser.mjs +3 -1
  109. package/dist/testing/index.d.mts +3 -0
  110. package/dist/testing/index.mjs +4 -2
  111. package/dist/testing/{wxt-vitest-plugin.d.ts → wxt-vitest-plugin.d.mts} +7 -9
  112. package/dist/testing/wxt-vitest-plugin.mjs +38 -19
  113. package/dist/types.d.mts +1475 -0
  114. package/dist/utils/app-config.d.mts +6 -0
  115. package/dist/utils/app-config.mjs +8 -2
  116. package/dist/utils/content-script-context.d.mts +134 -0
  117. package/dist/utils/content-script-context.mjs +187 -175
  118. package/dist/utils/content-script-ui/iframe.d.mts +42 -0
  119. package/dist/utils/content-script-ui/iframe.mjs +42 -27
  120. package/dist/utils/content-script-ui/integrated.d.mts +37 -0
  121. package/dist/utils/content-script-ui/integrated.mjs +36 -29
  122. package/dist/utils/content-script-ui/shadow-root.d.mts +80 -0
  123. package/dist/utils/content-script-ui/shadow-root.mjs +75 -82
  124. package/dist/utils/content-script-ui/shared.mjs +115 -150
  125. package/dist/utils/content-script-ui/types.d.mts +107 -0
  126. package/dist/utils/content-script-ui/types.mjs +1 -0
  127. package/dist/utils/{define-app-config.d.ts → define-app-config.d.mts} +5 -3
  128. package/dist/utils/define-app-config.mjs +22 -2
  129. package/dist/utils/define-background.d.mts +7 -0
  130. package/dist/utils/define-background.mjs +7 -3
  131. package/dist/utils/define-content-script.d.mts +6 -0
  132. package/dist/utils/define-content-script.mjs +6 -2
  133. package/dist/utils/define-unlisted-script.d.mts +7 -0
  134. package/dist/utils/define-unlisted-script.mjs +7 -3
  135. package/dist/utils/define-wxt-plugin.d.mts +6 -0
  136. package/dist/utils/define-wxt-plugin.mjs +6 -2
  137. package/dist/utils/inject-script.d.mts +41 -0
  138. package/dist/utils/inject-script.mjs +44 -34
  139. package/dist/utils/internal/custom-events.d.mts +9 -0
  140. package/dist/utils/internal/custom-events.mjs +18 -10
  141. package/dist/utils/internal/location-watcher.mjs +23 -20
  142. package/dist/utils/internal/logger.mjs +15 -12
  143. package/dist/utils/match-patterns.d.mts +1 -0
  144. package/dist/utils/match-patterns.mjs +3 -1
  145. package/dist/utils/{split-shadow-root-css.d.ts → split-shadow-root-css.d.mts} +6 -3
  146. package/dist/utils/split-shadow-root-css.mjs +16 -7
  147. package/dist/utils/storage.d.mts +1 -0
  148. package/dist/utils/storage.mjs +3 -1
  149. package/dist/version.d.mts +4 -0
  150. package/dist/version.mjs +5 -1
  151. package/dist/virtual/background-entrypoint.d.mts +4 -0
  152. package/dist/virtual/background-entrypoint.mjs +143 -161
  153. package/dist/virtual/content-script-isolated-world-entrypoint.d.mts +4 -0
  154. package/dist/virtual/content-script-isolated-world-entrypoint.mjs +26 -27
  155. package/dist/virtual/content-script-main-world-entrypoint.d.mts +4 -0
  156. package/dist/virtual/content-script-main-world-entrypoint.mjs +24 -24
  157. package/dist/virtual/mock-browser.d.mts +6 -0
  158. package/dist/virtual/mock-browser.mjs +5 -3
  159. package/dist/virtual/reload-html.d.mts +1 -0
  160. package/dist/virtual/reload-html.mjs +57 -53
  161. package/dist/virtual/unlisted-script-entrypoint.d.mts +4 -0
  162. package/dist/virtual/unlisted-script-entrypoint.mjs +35 -43
  163. package/package.json +56 -50
  164. package/dist/browser.d.ts +0 -30
  165. package/dist/builtin-modules/index.d.ts +0 -2
  166. package/dist/builtin-modules/unimport.d.ts +0 -5
  167. package/dist/cli/cli-utils.d.ts +0 -25
  168. package/dist/cli/commands.d.ts +0 -2
  169. package/dist/cli/index.d.ts +0 -1
  170. package/dist/core/builders/vite/index.d.ts +0 -7
  171. package/dist/core/builders/vite/plugins/bundleAnalysis.d.ts +0 -7
  172. package/dist/core/builders/vite/plugins/cssEntrypoints.d.ts +0 -13
  173. package/dist/core/builders/vite/plugins/defineImportMeta.d.ts +0 -14
  174. package/dist/core/builders/vite/plugins/devHtmlPrerender.d.ts +0 -7
  175. package/dist/core/builders/vite/plugins/devServerGlobals.d.ts +0 -6
  176. package/dist/core/builders/vite/plugins/download.d.ts +0 -10
  177. package/dist/core/builders/vite/plugins/entrypointGroupGlobals.d.ts +0 -6
  178. package/dist/core/builders/vite/plugins/extensionApiMock.d.ts +0 -6
  179. package/dist/core/builders/vite/plugins/globals.d.ts +0 -3
  180. package/dist/core/builders/vite/plugins/iifeFooter.d.ts +0 -8
  181. package/dist/core/builders/vite/plugins/index.d.ts +0 -16
  182. package/dist/core/builders/vite/plugins/noopBackground.d.ts +0 -6
  183. package/dist/core/builders/vite/plugins/removeEntrypointMainFunction.d.ts +0 -6
  184. package/dist/core/builders/vite/plugins/resolveAppConfig.d.ts +0 -6
  185. package/dist/core/builders/vite/plugins/resolveVirtualModules.d.ts +0 -6
  186. package/dist/core/builders/vite/plugins/tsconfigPaths.d.ts +0 -3
  187. package/dist/core/builders/vite/plugins/wxtPluginLoader.d.ts +0 -6
  188. package/dist/core/define-config.d.ts +0 -2
  189. package/dist/core/define-web-ext-config.d.ts +0 -9
  190. package/dist/core/generate-wxt-dir.d.ts +0 -5
  191. package/dist/core/index.d.ts +0 -8
  192. package/dist/core/initialize.d.ts +0 -5
  193. package/dist/core/keyboard-shortcuts.d.ts +0 -12
  194. package/dist/core/package-managers/bun.d.ts +0 -2
  195. package/dist/core/package-managers/deno.d.ts +0 -2
  196. package/dist/core/package-managers/index.d.ts +0 -2
  197. package/dist/core/package-managers/npm.d.ts +0 -17
  198. package/dist/core/package-managers/pnpm.d.ts +0 -2
  199. package/dist/core/package-managers/types.d.ts +0 -2
  200. package/dist/core/package-managers/types.mjs +0 -0
  201. package/dist/core/package-managers/yarn.d.ts +0 -2
  202. package/dist/core/prepare.d.ts +0 -2
  203. package/dist/core/resolve-config.d.ts +0 -11
  204. package/dist/core/runners/index.d.ts +0 -2
  205. package/dist/core/runners/manual.d.ts +0 -5
  206. package/dist/core/runners/safari.d.ts +0 -5
  207. package/dist/core/runners/web-ext.d.ts +0 -5
  208. package/dist/core/runners/wsl.d.ts +0 -5
  209. package/dist/core/utils/arrays.d.ts +0 -13
  210. package/dist/core/utils/building/build-entrypoints.d.ts +0 -3
  211. package/dist/core/utils/building/detect-dev-changes.d.ts +0 -61
  212. package/dist/core/utils/building/find-entrypoints.d.ts +0 -5
  213. package/dist/core/utils/building/group-entrypoints.d.ts +0 -8
  214. package/dist/core/utils/building/index.d.ts +0 -6
  215. package/dist/core/utils/building/internal-build.d.ts +0 -12
  216. package/dist/core/utils/building/rebuild.d.ts +0 -23
  217. package/dist/core/utils/cache.d.ts +0 -8
  218. package/dist/core/utils/cli.d.ts +0 -3
  219. package/dist/core/utils/cli.mjs +0 -26
  220. package/dist/core/utils/constants.d.ts +0 -5
  221. package/dist/core/utils/content-scripts.d.ts +0 -12
  222. package/dist/core/utils/content-security-policy.d.ts +0 -14
  223. package/dist/core/utils/entrypoints.d.ts +0 -31
  224. package/dist/core/utils/env.d.ts +0 -5
  225. package/dist/core/utils/environments/browser-environment.d.ts +0 -3
  226. package/dist/core/utils/environments/environment.d.ts +0 -8
  227. package/dist/core/utils/environments/extension-environment.d.ts +0 -6
  228. package/dist/core/utils/environments/index.d.ts +0 -2
  229. package/dist/core/utils/eslint.d.ts +0 -1
  230. package/dist/core/utils/fs.d.ts +0 -13
  231. package/dist/core/utils/globals.d.ts +0 -11
  232. package/dist/core/utils/i18n.d.ts +0 -11
  233. package/dist/core/utils/log/index.d.ts +0 -4
  234. package/dist/core/utils/log/printBuildSummary.d.ts +0 -2
  235. package/dist/core/utils/log/printFileList.d.ts +0 -1
  236. package/dist/core/utils/log/printHeader.d.ts +0 -1
  237. package/dist/core/utils/log/printTable.d.ts +0 -1
  238. package/dist/core/utils/manifest.d.ts +0 -40
  239. package/dist/core/utils/minimatch-multiple.d.ts +0 -15
  240. package/dist/core/utils/network.d.ts +0 -7
  241. package/dist/core/utils/number.d.ts +0 -1
  242. package/dist/core/utils/package.d.ts +0 -6
  243. package/dist/core/utils/paths.d.ts +0 -11
  244. package/dist/core/utils/strings.d.ts +0 -14
  245. package/dist/core/utils/syntax-errors.d.ts +0 -11
  246. package/dist/core/utils/testing/fake-objects.d.ts +0 -11665
  247. package/dist/core/utils/testing/fake-objects.mjs +0 -326
  248. package/dist/core/utils/time.d.ts +0 -9
  249. package/dist/core/utils/transform.d.ts +0 -11
  250. package/dist/core/utils/types.d.ts +0 -13
  251. package/dist/core/utils/types.mjs +0 -0
  252. package/dist/core/utils/validation.d.ts +0 -15
  253. package/dist/core/utils/virtual-modules.d.ts +0 -22
  254. package/dist/core/utils/wsl.d.ts +0 -4
  255. package/dist/core/wxt.d.ts +0 -24
  256. package/dist/index.d.ts +0 -11
  257. package/dist/testing/fake-browser.d.ts +0 -10
  258. package/dist/testing/index.d.ts +0 -10
  259. package/dist/types.d.ts +0 -1459
  260. package/dist/types.mjs +0 -0
  261. package/dist/utils/app-config.d.ts +0 -2
  262. package/dist/utils/content-script-context.d.ts +0 -134
  263. package/dist/utils/content-script-ui/iframe.d.ts +0 -32
  264. package/dist/utils/content-script-ui/integrated.d.ts +0 -34
  265. package/dist/utils/content-script-ui/shadow-root.d.ts +0 -76
  266. package/dist/utils/content-script-ui/shared.d.ts +0 -5
  267. package/dist/utils/content-script-ui/types.d.ts +0 -104
  268. package/dist/utils/define-background.d.ts +0 -4
  269. package/dist/utils/define-content-script.d.ts +0 -3
  270. package/dist/utils/define-unlisted-script.d.ts +0 -4
  271. package/dist/utils/define-wxt-plugin.d.ts +0 -3
  272. package/dist/utils/inject-script.d.ts +0 -36
  273. package/dist/utils/internal/custom-events.d.ts +0 -10
  274. package/dist/utils/internal/dev-server-websocket.d.ts +0 -21
  275. package/dist/utils/internal/dev-server-websocket.mjs +0 -37
  276. package/dist/utils/internal/location-watcher.d.ts +0 -12
  277. package/dist/utils/internal/logger.d.ts +0 -9
  278. package/dist/utils/match-patterns.d.ts +0 -5
  279. package/dist/utils/storage.d.ts +0 -5
  280. package/dist/version.d.ts +0 -1
@@ -1,55 +1,48 @@
1
- export function validateEntrypoints(entrypoints) {
2
- const errors = entrypoints.flatMap((entrypoint) => {
3
- switch (entrypoint.type) {
4
- case "content-script":
5
- return validateContentScriptEntrypoint(entrypoint);
6
- default:
7
- return validateBaseEntrypoint(entrypoint);
8
- }
9
- });
10
- let errorCount = 0;
11
- let warningCount = 0;
12
- for (const err of errors) {
13
- if (err.type === "warning") warningCount++;
14
- else errorCount++;
15
- }
16
- return {
17
- errors,
18
- errorCount,
19
- warningCount
20
- };
1
+ //#region src/core/utils/validation.ts
2
+ function validateEntrypoints(entrypoints) {
3
+ const errors = entrypoints.flatMap((entrypoint) => {
4
+ switch (entrypoint.type) {
5
+ case "content-script": return validateContentScriptEntrypoint(entrypoint);
6
+ default: return validateBaseEntrypoint(entrypoint);
7
+ }
8
+ });
9
+ let errorCount = 0;
10
+ let warningCount = 0;
11
+ for (const err of errors) if (err.type === "warning") warningCount++;
12
+ else errorCount++;
13
+ return {
14
+ errors,
15
+ errorCount,
16
+ warningCount
17
+ };
21
18
  }
22
19
  function validateContentScriptEntrypoint(definition) {
23
- const errors = validateBaseEntrypoint(definition);
24
- if (definition.options.registration !== "runtime" && definition.options.matches == null) {
25
- errors.push({
26
- type: "error",
27
- message: "`matches` is required for manifest registered content scripts",
28
- value: definition.options.matches,
29
- entrypoint: definition
30
- });
31
- }
32
- return errors;
20
+ const errors = validateBaseEntrypoint(definition);
21
+ if (definition.options.registration !== "runtime" && definition.options.matches == null) errors.push({
22
+ type: "error",
23
+ message: "`matches` is required for manifest registered content scripts",
24
+ value: definition.options.matches,
25
+ entrypoint: definition
26
+ });
27
+ return errors;
33
28
  }
34
29
  function validateBaseEntrypoint(definition) {
35
- const errors = [];
36
- if (definition.options.exclude != null && !Array.isArray(definition.options.exclude)) {
37
- errors.push({
38
- type: "error",
39
- message: "`exclude` must be an array of browser names",
40
- value: definition.options.exclude,
41
- entrypoint: definition
42
- });
43
- }
44
- if (definition.options.include != null && !Array.isArray(definition.options.include)) {
45
- errors.push({
46
- type: "error",
47
- message: "`include` must be an array of browser names",
48
- value: definition.options.include,
49
- entrypoint: definition
50
- });
51
- }
52
- return errors;
53
- }
54
- export class ValidationError extends Error {
30
+ const errors = [];
31
+ if (definition.options.exclude != null && !Array.isArray(definition.options.exclude)) errors.push({
32
+ type: "error",
33
+ message: "`exclude` must be an array of browser names",
34
+ value: definition.options.exclude,
35
+ entrypoint: definition
36
+ });
37
+ if (definition.options.include != null && !Array.isArray(definition.options.include)) errors.push({
38
+ type: "error",
39
+ message: "`include` must be an array of browser names",
40
+ value: definition.options.include,
41
+ entrypoint: definition
42
+ });
43
+ return errors;
55
44
  }
45
+ var ValidationError = class extends Error {};
46
+
47
+ //#endregion
48
+ export { ValidationError, validateEntrypoints };
@@ -1,14 +1,22 @@
1
- export const virtualEntrypointTypes = [
2
- "content-script-main-world",
3
- "content-script-isolated-world",
4
- "background",
5
- "unlisted-script"
1
+ //#region src/core/utils/virtual-modules.ts
2
+ const virtualEntrypointTypes = [
3
+ "content-script-main-world",
4
+ "content-script-isolated-world",
5
+ "background",
6
+ "unlisted-script"
6
7
  ];
7
- export const virtualEntrypointModuleNames = virtualEntrypointTypes.map(
8
- (name) => `${name}-entrypoint`
9
- );
10
- export const virtualModuleNames = [
11
- ...virtualEntrypointModuleNames,
12
- "mock-browser",
13
- "reload-html"
8
+ /**
9
+ * All the names of entrypoint files in the `src/virtual/` and `dist/virtual/` directories, minus the extension.
10
+ */
11
+ const virtualEntrypointModuleNames = virtualEntrypointTypes.map((name) => `${name}-entrypoint`);
12
+ /**
13
+ * All the names of files in the `src/virtual/` and `dist/virtual/` directories, minus the extension.
14
+ */
15
+ const virtualModuleNames = [
16
+ ...virtualEntrypointModuleNames,
17
+ "mock-browser",
18
+ "reload-html"
14
19
  ];
20
+
21
+ //#endregion
22
+ export { virtualModuleNames };
@@ -1,4 +1,12 @@
1
- export async function isWsl() {
2
- const { default: isWsl2 } = await import("is-wsl");
3
- return isWsl2;
1
+ import isWsl_ from "is-wsl";
2
+
3
+ //#region src/core/utils/wsl.ts
4
+ /**
5
+ * Returns true when running on WSL or WSL2.
6
+ */
7
+ function isWsl() {
8
+ return isWsl_;
4
9
  }
10
+
11
+ //#endregion
12
+ export { isWsl };
package/dist/core/wxt.mjs CHANGED
@@ -1,69 +1,74 @@
1
+ import { builtinModules } from "../builtin-modules/index.mjs";
1
2
  import { resolveConfig } from "./resolve-config.mjs";
2
- import { createHooks } from "hookable";
3
3
  import { createWxtPackageManager } from "./package-managers/index.mjs";
4
4
  import { createViteBuilder } from "./builders/vite/index.mjs";
5
- import { builtinModules } from "../builtin-modules/index.mjs";
6
5
  import { relative } from "path";
7
- export let wxt;
8
- export async function registerWxt(command, inlineConfig = {}) {
9
- process.env.NODE_ENV ??= inlineConfig.mode ?? (command === "serve" ? "development" : "production");
10
- const hooks = createHooks();
11
- const config = await resolveConfig(inlineConfig, command);
12
- const builder = await createViteBuilder(config, hooks, () => wxt.server);
13
- const pm = await createWxtPackageManager(config.root);
14
- wxt = {
15
- config,
16
- hooks,
17
- hook: hooks.hook.bind(hooks),
18
- get logger() {
19
- return config.logger;
20
- },
21
- async reloadConfig() {
22
- if (wxt.config.dev.server?.port) {
23
- inlineConfig.dev ??= {};
24
- inlineConfig.dev.server ??= {};
25
- inlineConfig.dev.server.port = wxt.config.dev.server.port;
26
- }
27
- wxt.config = await resolveConfig(inlineConfig, command);
28
- await wxt.hooks.callHook("config:resolved", wxt);
29
- },
30
- pm,
31
- builder,
32
- server: void 0
33
- };
34
- await initWxtModules();
6
+ import { createHooks } from "hookable";
7
+
8
+ //#region src/core/wxt.ts
9
+ /**
10
+ * Global variable set once `createWxt` is called once. Since this variable is used everywhere, this
11
+ * global can be used instead of passing the variable as a function parameter everywhere.
12
+ */
13
+ let wxt;
14
+ /**
15
+ * Create and register a global instance of the Wxt interface for use throughout the project.
16
+ */
17
+ async function registerWxt(command, inlineConfig = {}) {
18
+ process.env.NODE_ENV ??= inlineConfig.mode ?? (command === "serve" ? "development" : "production");
19
+ const hooks = createHooks();
20
+ const config = await resolveConfig(inlineConfig, command);
21
+ const [builder, pm] = await Promise.all([createViteBuilder(config, hooks, () => wxt.server), createWxtPackageManager(config.root)]);
22
+ wxt = {
23
+ config,
24
+ hooks,
25
+ hook: hooks.hook.bind(hooks),
26
+ get logger() {
27
+ return config.logger;
28
+ },
29
+ async reloadConfig() {
30
+ if (wxt.config.dev.server?.port) {
31
+ inlineConfig.dev ??= {};
32
+ inlineConfig.dev.server ??= {};
33
+ inlineConfig.dev.server.port = wxt.config.dev.server.port;
34
+ }
35
+ wxt.config = await resolveConfig(inlineConfig, command);
36
+ await wxt.hooks.callHook("config:resolved", wxt);
37
+ },
38
+ pm,
39
+ builder,
40
+ server: void 0
41
+ };
42
+ await initWxtModules();
35
43
  }
36
- export async function initWxtModules() {
37
- for (const mod of builtinModules) await initWxtModule(mod);
38
- for (const mod of wxt.config.userModules) await initWxtModule(mod);
39
- wxt.hooks.addHooks(wxt.config.hooks);
40
- if (wxt.config.debug) {
41
- const order = [
42
- ...builtinModules.map((module) => module.name),
43
- ...wxt.config.userModules.map(
44
- (module) => relative(wxt.config.root, module.id)
45
- ),
46
- "wxt.config.ts > hooks"
47
- ];
48
- wxt.logger.debug("Hook execution order:");
49
- order.forEach((name, i) => {
50
- wxt.logger.debug(` ${i + 1}. ${name}`);
51
- });
52
- }
53
- await wxt.hooks.callHook("ready", wxt);
54
- await wxt.hooks.callHook("config:resolved", wxt);
44
+ async function initWxtModules() {
45
+ for (const mod of builtinModules) await initWxtModule(mod);
46
+ for (const mod of wxt.config.userModules) await initWxtModule(mod);
47
+ wxt.hooks.addHooks(wxt.config.hooks);
48
+ if (wxt.config.debug) {
49
+ const order = [
50
+ ...builtinModules.map((module) => module.name),
51
+ ...wxt.config.userModules.map((module) => relative(wxt.config.root, module.id)),
52
+ "wxt.config.ts > hooks"
53
+ ];
54
+ wxt.logger.debug("Hook execution order:");
55
+ order.forEach((name, i) => {
56
+ wxt.logger.debug(` ${i + 1}. ${name}`);
57
+ });
58
+ }
59
+ await wxt.hooks.callHook("ready", wxt);
60
+ await wxt.hooks.callHook("config:resolved", wxt);
55
61
  }
56
62
  async function initWxtModule(module) {
57
- if (module.hooks) wxt.hooks.addHooks(module.hooks);
58
- await module.setup?.(
59
- wxt,
60
- // @ts-expect-error: Untyped configKey field
61
- module.configKey ? wxt.config[module.configKey] : void 0
62
- );
63
- }
64
- export function deinitWxtModules() {
65
- wxt.hooks.removeAllHooks();
63
+ if (module.hooks) wxt.hooks.addHooks(module.hooks);
64
+ await module.setup?.(wxt, module.configKey ? wxt.config[module.configKey] : void 0);
66
65
  }
67
- export function setWxtForTesting(testInstance) {
68
- wxt = testInstance;
66
+ /**
67
+ * Unloads WXT modules.
68
+ */
69
+ function deinitWxtModules() {
70
+ wxt.hooks.removeAllHooks();
69
71
  }
72
+
73
+ //#endregion
74
+ export { deinitWxtModules, initWxtModules, registerWxt, wxt };
@@ -1,7 +1,11 @@
1
- import { InlineConfig } from '../types';
1
+ import { InlineConfig } from "../types.mjs";
2
+
3
+ //#region src/core/zip.d.ts
2
4
  /**
3
5
  * Build and zip the extension for distribution.
4
6
  * @param config Optional config that will override your `<root>/wxt.config.ts`.
5
7
  * @returns A list of all files included in the ZIP.
6
8
  */
7
- export declare function zip(config?: InlineConfig): Promise<string[]>;
9
+ declare function zip(config?: InlineConfig): Promise<string[]>;
10
+ //#endregion
11
+ export { zip };
package/dist/core/zip.mjs CHANGED
@@ -1,150 +1,128 @@
1
- import path from "node:path";
2
- import fs from "fs-extra";
3
- import { safeFilename } from "./utils/strings.mjs";
4
- import { getPackageJson } from "./utils/package.mjs";
1
+ import { normalizePath } from "./utils/paths.mjs";
2
+ import "./utils/index.mjs";
5
3
  import { formatDuration } from "./utils/time.mjs";
6
- import { printFileList } from "./utils/log/printFileList.mjs";
7
- import { findEntrypoints, internalBuild } from "./utils/building/index.mjs";
4
+ import { safeFilename } from "./utils/strings.mjs";
8
5
  import { registerWxt, wxt } from "./wxt.mjs";
9
- import JSZip from "jszip";
10
- import glob from "fast-glob";
11
- import { normalizePath } from "./utils/paths.mjs";
6
+ import { findEntrypoints } from "./utils/building/find-entrypoints.mjs";
7
+ import { printFileList } from "./utils/log/printFileList.mjs";
8
+ import "./utils/log/index.mjs";
9
+ import { getPackageJson } from "./utils/package.mjs";
10
+ import { internalBuild } from "./utils/building/internal-build.mjs";
11
+ import "./utils/building/index.mjs";
12
12
  import { minimatchMultiple } from "./utils/minimatch-multiple.mjs";
13
- export async function zip(config) {
14
- await registerWxt("build", config);
15
- const output = await internalBuild();
16
- await wxt.hooks.callHook("zip:start", wxt);
17
- const start = Date.now();
18
- wxt.logger.info("Zipping extension...");
19
- const zipFiles = [];
20
- const packageJson = await getPackageJson();
21
- const projectName = wxt.config.zip.name ?? safeFilename(packageJson?.name || path.basename(process.cwd()));
22
- const applyTemplate = (template) => template.replaceAll("{{name}}", projectName).replaceAll("{{browser}}", wxt.config.browser).replaceAll(
23
- "{{version}}",
24
- output.manifest.version_name ?? output.manifest.version
25
- ).replaceAll("{{packageVersion}}", packageJson?.version).replaceAll("{{mode}}", wxt.config.mode).replaceAll("{{manifestVersion}}", `mv${wxt.config.manifestVersion}`);
26
- await fs.ensureDir(wxt.config.outBaseDir);
27
- await wxt.hooks.callHook("zip:extension:start", wxt);
28
- const outZipFilename = applyTemplate(wxt.config.zip.artifactTemplate);
29
- const outZipPath = path.resolve(wxt.config.outBaseDir, outZipFilename);
30
- await zipDir(wxt.config.outDir, outZipPath, {
31
- exclude: wxt.config.zip.exclude
32
- });
33
- zipFiles.push(outZipPath);
34
- await wxt.hooks.callHook("zip:extension:done", wxt, outZipPath);
35
- if (wxt.config.zip.zipSources) {
36
- const entrypoints = await findEntrypoints();
37
- const skippedEntrypoints = entrypoints.filter((entry) => entry.skipped);
38
- const excludeSources = [
39
- ...wxt.config.zip.excludeSources,
40
- ...skippedEntrypoints.map(
41
- (entry) => path.relative(wxt.config.zip.sourcesRoot, entry.inputPath)
42
- )
43
- ].map((paths) => paths.replaceAll("\\", "/"));
44
- await wxt.hooks.callHook("zip:sources:start", wxt);
45
- const { overrides, files: downloadedPackages } = await downloadPrivatePackages();
46
- const sourcesZipFilename = applyTemplate(wxt.config.zip.sourcesTemplate);
47
- const sourcesZipPath = path.resolve(
48
- wxt.config.outBaseDir,
49
- sourcesZipFilename
50
- );
51
- await zipDir(wxt.config.zip.sourcesRoot, sourcesZipPath, {
52
- include: wxt.config.zip.includeSources,
53
- exclude: excludeSources,
54
- transform(absolutePath, zipPath, content) {
55
- if (zipPath.endsWith("package.json")) {
56
- return addOverridesToPackageJson(absolutePath, content, overrides);
57
- }
58
- },
59
- additionalFiles: downloadedPackages
60
- });
61
- zipFiles.push(sourcesZipPath);
62
- await wxt.hooks.callHook("zip:sources:done", wxt, sourcesZipPath);
63
- }
64
- await printFileList(
65
- wxt.logger.success,
66
- `Zipped extension in ${formatDuration(Date.now() - start)}`,
67
- wxt.config.outBaseDir,
68
- zipFiles
69
- );
70
- await wxt.hooks.callHook("zip:done", wxt, zipFiles);
71
- return zipFiles;
13
+ import fs from "fs-extra";
14
+ import glob from "fast-glob";
15
+ import path from "node:path";
16
+ import JSZip from "jszip";
17
+
18
+ //#region src/core/zip.ts
19
+ /**
20
+ * Build and zip the extension for distribution.
21
+ * @param config Optional config that will override your `<root>/wxt.config.ts`.
22
+ * @returns A list of all files included in the ZIP.
23
+ */
24
+ async function zip(config) {
25
+ await registerWxt("build", config);
26
+ const output = await internalBuild();
27
+ await wxt.hooks.callHook("zip:start", wxt);
28
+ const start = Date.now();
29
+ wxt.logger.info("Zipping extension...");
30
+ const zipFiles = [];
31
+ const packageJson = await getPackageJson();
32
+ const projectName = wxt.config.zip.name ?? safeFilename(packageJson?.name || path.basename(process.cwd()));
33
+ const applyTemplate = (template) => template.replaceAll("{{name}}", projectName).replaceAll("{{browser}}", wxt.config.browser).replaceAll("{{version}}", output.manifest.version_name ?? output.manifest.version).replaceAll("{{packageVersion}}", packageJson?.version).replaceAll("{{mode}}", wxt.config.mode).replaceAll("{{manifestVersion}}", `mv${wxt.config.manifestVersion}`);
34
+ await fs.ensureDir(wxt.config.outBaseDir);
35
+ await wxt.hooks.callHook("zip:extension:start", wxt);
36
+ const outZipFilename = applyTemplate(wxt.config.zip.artifactTemplate);
37
+ const outZipPath = path.resolve(wxt.config.outBaseDir, outZipFilename);
38
+ await zipDir(wxt.config.outDir, outZipPath, { exclude: wxt.config.zip.exclude });
39
+ zipFiles.push(outZipPath);
40
+ await wxt.hooks.callHook("zip:extension:done", wxt, outZipPath);
41
+ if (wxt.config.zip.zipSources) {
42
+ const skippedEntrypoints = (await findEntrypoints()).filter((entry) => entry.skipped);
43
+ const excludeSources = [...wxt.config.zip.excludeSources, ...skippedEntrypoints.map((entry) => path.relative(wxt.config.zip.sourcesRoot, entry.inputPath))].map((paths) => paths.replaceAll("\\", "/"));
44
+ await wxt.hooks.callHook("zip:sources:start", wxt);
45
+ const { overrides, files: downloadedPackages } = await downloadPrivatePackages();
46
+ const sourcesZipFilename = applyTemplate(wxt.config.zip.sourcesTemplate);
47
+ const sourcesZipPath = path.resolve(wxt.config.outBaseDir, sourcesZipFilename);
48
+ await zipDir(wxt.config.zip.sourcesRoot, sourcesZipPath, {
49
+ include: wxt.config.zip.includeSources,
50
+ exclude: excludeSources,
51
+ transform(absolutePath, zipPath, content) {
52
+ if (zipPath.endsWith("package.json")) return addOverridesToPackageJson(absolutePath, content, overrides);
53
+ },
54
+ additionalFiles: downloadedPackages
55
+ });
56
+ zipFiles.push(sourcesZipPath);
57
+ await wxt.hooks.callHook("zip:sources:done", wxt, sourcesZipPath);
58
+ }
59
+ await printFileList(wxt.logger.success, `Zipped extension in ${formatDuration(Date.now() - start)}`, wxt.config.outBaseDir, zipFiles);
60
+ await wxt.hooks.callHook("zip:done", wxt, zipFiles);
61
+ return zipFiles;
72
62
  }
73
63
  async function zipDir(directory, outputPath, options) {
74
- const archive = new JSZip();
75
- const files = (await glob(["**/*", ...options?.include || []], {
76
- cwd: directory,
77
- // Ignore node_modules, otherwise this glob step takes forever
78
- ignore: ["**/node_modules"],
79
- onlyFiles: true
80
- })).filter((relativePath) => {
81
- return minimatchMultiple(relativePath, options?.include) || !minimatchMultiple(relativePath, options?.exclude);
82
- });
83
- const filesToZip = [
84
- ...files,
85
- ...(options?.additionalFiles ?? []).map(
86
- (file) => path.relative(directory, file)
87
- )
88
- ];
89
- for (const file of filesToZip) {
90
- const absolutePath = path.resolve(directory, file);
91
- if (file.endsWith(".json")) {
92
- const content = await fs.readFile(absolutePath, "utf-8");
93
- archive.file(
94
- file,
95
- await options?.transform?.(absolutePath, file, content) || content
96
- );
97
- } else {
98
- const content = await fs.readFile(absolutePath);
99
- archive.file(file, content);
100
- }
101
- }
102
- await options?.additionalWork?.(archive);
103
- await new Promise(
104
- (resolve, reject) => archive.generateNodeStream({
105
- type: "nodebuffer",
106
- ...wxt.config.zip.compressionLevel === 0 ? { compression: "STORE" } : {
107
- compression: "DEFLATE",
108
- compressionOptions: { level: wxt.config.zip.compressionLevel }
109
- }
110
- }).pipe(fs.createWriteStream(outputPath)).on("error", reject).on("close", resolve)
111
- );
64
+ const archive = new JSZip();
65
+ const filesToZip = [...(await glob(["**/*", ...options?.include || []], {
66
+ cwd: directory,
67
+ ignore: ["**/node_modules"],
68
+ onlyFiles: true
69
+ })).filter((relativePath) => {
70
+ return minimatchMultiple(relativePath, options?.include) || !minimatchMultiple(relativePath, options?.exclude);
71
+ }), ...(options?.additionalFiles ?? []).map((file) => path.relative(directory, file))];
72
+ for (const file of filesToZip) {
73
+ const absolutePath = path.resolve(directory, file);
74
+ if (file.endsWith(".json")) {
75
+ const content = await fs.readFile(absolutePath, "utf-8");
76
+ archive.file(file, await options?.transform?.(absolutePath, file, content) || content);
77
+ } else {
78
+ const content = await fs.readFile(absolutePath);
79
+ archive.file(file, content);
80
+ }
81
+ }
82
+ await options?.additionalWork?.(archive);
83
+ await new Promise((resolve, reject) => archive.generateNodeStream({
84
+ type: "nodebuffer",
85
+ ...wxt.config.zip.compressionLevel === 0 ? { compression: "STORE" } : {
86
+ compression: "DEFLATE",
87
+ compressionOptions: { level: wxt.config.zip.compressionLevel }
88
+ }
89
+ }).pipe(fs.createWriteStream(outputPath)).on("error", reject).on("close", resolve));
112
90
  }
113
91
  async function downloadPrivatePackages() {
114
- const overrides = {};
115
- const files = [];
116
- if (wxt.config.zip.downloadPackages.length > 0) {
117
- const _downloadPackages = new Set(wxt.config.zip.downloadPackages);
118
- const allPackages = await wxt.pm.listDependencies({
119
- all: true,
120
- cwd: wxt.config.root
121
- });
122
- const downloadPackages = allPackages.filter(
123
- (pkg) => _downloadPackages.has(pkg.name)
124
- );
125
- for (const pkg of downloadPackages) {
126
- wxt.logger.info(`Downloading package: ${pkg.name}@${pkg.version}`);
127
- const id = `${pkg.name}@${pkg.version}`;
128
- const tgzPath = await wxt.pm.downloadDependency(
129
- id,
130
- wxt.config.zip.downloadedPackagesDir
131
- );
132
- files.push(tgzPath);
133
- overrides[id] = tgzPath;
134
- }
135
- }
136
- return { overrides, files };
92
+ const overrides = {};
93
+ const files = [];
94
+ if (wxt.config.zip.downloadPackages.length > 0) {
95
+ const _downloadPackages = new Set(wxt.config.zip.downloadPackages);
96
+ const downloadPackages = (await wxt.pm.listDependencies({
97
+ all: true,
98
+ cwd: wxt.config.root
99
+ })).filter((pkg) => _downloadPackages.has(pkg.name));
100
+ for (const pkg of downloadPackages) {
101
+ wxt.logger.info(`Downloading package: ${pkg.name}@${pkg.version}`);
102
+ const id = `${pkg.name}@${pkg.version}`;
103
+ const tgzPath = await wxt.pm.downloadDependency(id, wxt.config.zip.downloadedPackagesDir);
104
+ files.push(tgzPath);
105
+ overrides[id] = tgzPath;
106
+ }
107
+ }
108
+ return {
109
+ overrides,
110
+ files
111
+ };
137
112
  }
138
113
  function addOverridesToPackageJson(absolutePackageJsonPath, content, overrides) {
139
- if (Object.keys(overrides).length === 0) return content;
140
- const packageJsonDir = path.dirname(absolutePackageJsonPath);
141
- const oldPackage = JSON.parse(content);
142
- const newPackage = {
143
- ...oldPackage,
144
- [wxt.pm.overridesKey]: { ...oldPackage[wxt.pm.overridesKey] }
145
- };
146
- Object.entries(overrides).forEach(([key, absolutePath]) => {
147
- newPackage[wxt.pm.overridesKey][key] = "file://./" + normalizePath(path.relative(packageJsonDir, absolutePath));
148
- });
149
- return JSON.stringify(newPackage, null, 2);
114
+ if (Object.keys(overrides).length === 0) return content;
115
+ const packageJsonDir = path.dirname(absolutePackageJsonPath);
116
+ const oldPackage = JSON.parse(content);
117
+ const newPackage = {
118
+ ...oldPackage,
119
+ [wxt.pm.overridesKey]: { ...oldPackage[wxt.pm.overridesKey] }
120
+ };
121
+ Object.entries(overrides).forEach(([key, absolutePath]) => {
122
+ newPackage[wxt.pm.overridesKey][key] = "file://./" + normalizePath(path.relative(packageJsonDir, absolutePath));
123
+ });
124
+ return JSON.stringify(newPackage, null, 2);
150
125
  }
126
+
127
+ //#endregion
128
+ export { zip };
@@ -0,0 +1,13 @@
1
+ import { BackgroundDefinition, BackgroundEntrypoint, BackgroundEntrypointOptions, BaseContentScriptEntrypointOptions, BaseEntrypoint, BaseEntrypointOptions, BuildOutput, BuildStepOutput, ConfigEnv, ContentScriptDefinition, ContentScriptEntrypoint, CopiedPublicFile, Dependency, Entrypoint, EntrypointGroup, EntrypointInfo, EslintGlobalsPropValue, Eslintrc, ExtensionRunner, ExtensionRunnerConfig, FsCache, GeneratedPublicFile, GenericEntrypoint, HookResult, InlineConfig, IsolatedWorldContentScriptDefinition, IsolatedWorldContentScriptEntrypointOptions, Logger, MainWorldContentScriptDefinition, MainWorldContentScriptEntrypointOptions, OnContentScriptStopped, OptionsEntrypoint, OptionsEntrypointOptions, OutputAsset, OutputChunk, OutputFile, PerBrowserMap, PerBrowserOption, PopupEntrypoint, PopupEntrypointOptions, ReloadContentScriptPayload, ResolvedBasePublicFile, ResolvedConfig, ResolvedEslintrc, ResolvedPerBrowserOptions, ResolvedPublicFile, ServerInfo, SidepanelEntrypoint, SidepanelEntrypointOptions, TargetBrowser, TargetManifestVersion, ThemeIcon, UnlistedScriptDefinition, UserConfig, UserManifest, UserManifestFn, WebExtConfig, Wxt, WxtBuilder, WxtBuilderServer, WxtCommand, WxtDevServer, WxtDirEntry, WxtDirFileEntry, WxtDirTypeReferenceEntry, WxtHooks, WxtModule, WxtModuleOptions, WxtModuleSetup, WxtModuleWithMetadata, WxtPackageManager, WxtPlugin, WxtResolvedUnimportOptions, WxtUnimportOptions, WxtViteConfig } from "./types.mjs";
2
+ import { build } from "./core/build.mjs";
3
+ import { clean } from "./core/clean.mjs";
4
+ import { defineConfig } from "./core/define-config.mjs";
5
+ import { defineRunnerConfig, defineWebExtConfig } from "./core/define-web-ext-config.mjs";
6
+ import { createServer } from "./core/create-server.mjs";
7
+ import { initialize } from "./core/initialize.mjs";
8
+ import { prepare } from "./core/prepare.mjs";
9
+ import { zip } from "./core/zip.mjs";
10
+ import { normalizePath } from "./core/utils/paths.mjs";
11
+ import "./core/index.mjs";
12
+ import { version } from "./version.mjs";
13
+ export { BackgroundDefinition, BackgroundEntrypoint, BackgroundEntrypointOptions, BaseContentScriptEntrypointOptions, BaseEntrypoint, BaseEntrypointOptions, BuildOutput, BuildStepOutput, ConfigEnv, ContentScriptDefinition, ContentScriptEntrypoint, CopiedPublicFile, Dependency, Entrypoint, EntrypointGroup, EntrypointInfo, EslintGlobalsPropValue, Eslintrc, ExtensionRunner, ExtensionRunnerConfig, FsCache, GeneratedPublicFile, GenericEntrypoint, HookResult, InlineConfig, IsolatedWorldContentScriptDefinition, IsolatedWorldContentScriptEntrypointOptions, Logger, MainWorldContentScriptDefinition, MainWorldContentScriptEntrypointOptions, OnContentScriptStopped, OptionsEntrypoint, OptionsEntrypointOptions, OutputAsset, OutputChunk, OutputFile, PerBrowserMap, PerBrowserOption, PopupEntrypoint, PopupEntrypointOptions, ReloadContentScriptPayload, ResolvedBasePublicFile, ResolvedConfig, ResolvedEslintrc, ResolvedPerBrowserOptions, ResolvedPublicFile, ServerInfo, SidepanelEntrypoint, SidepanelEntrypointOptions, TargetBrowser, TargetManifestVersion, ThemeIcon, UnlistedScriptDefinition, UserConfig, UserManifest, UserManifestFn, WebExtConfig, Wxt, WxtBuilder, WxtBuilderServer, WxtCommand, WxtDevServer, WxtDirEntry, WxtDirFileEntry, WxtDirTypeReferenceEntry, WxtHooks, WxtModule, WxtModuleOptions, WxtModuleSetup, WxtModuleWithMetadata, WxtPackageManager, WxtPlugin, WxtResolvedUnimportOptions, WxtUnimportOptions, WxtViteConfig, build, clean, createServer, defineConfig, defineRunnerConfig, defineWebExtConfig, initialize, normalizePath, prepare, version, zip };
package/dist/index.mjs CHANGED
@@ -1,3 +1,13 @@
1
- export * from "./core/index.mjs";
2
- export * from "./types.mjs";
3
- export * from "./version.mjs";
1
+ import { normalizePath } from "./core/utils/paths.mjs";
2
+ import { version } from "./version.mjs";
3
+ import { build } from "./core/build.mjs";
4
+ import { clean } from "./core/clean.mjs";
5
+ import { defineConfig } from "./core/define-config.mjs";
6
+ import { defineRunnerConfig, defineWebExtConfig } from "./core/define-web-ext-config.mjs";
7
+ import { createServer } from "./core/create-server.mjs";
8
+ import { initialize } from "./core/initialize.mjs";
9
+ import { prepare } from "./core/prepare.mjs";
10
+ import { zip } from "./core/zip.mjs";
11
+ import "./core/index.mjs";
12
+
13
+ export { build, clean, createServer, defineConfig, defineRunnerConfig, defineWebExtConfig, initialize, normalizePath, prepare, version, zip };