@visulima/packem 1.0.0-alpha.2 → 1.0.0-alpha.21

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 (54) hide show
  1. package/CHANGELOG.md +163 -0
  2. package/README.md +16 -3
  3. package/dist/cli.cjs +7 -1
  4. package/dist/cli.mjs +15 -1
  5. package/dist/config.cjs +1 -1
  6. package/dist/config.d.cts +5 -2
  7. package/dist/config.d.mts +5 -2
  8. package/dist/config.d.ts +5 -2
  9. package/dist/config.mjs +9 -1
  10. package/dist/create-bundler.cjs +93 -1
  11. package/dist/create-bundler.d.cts +4 -1
  12. package/dist/create-bundler.d.mts +4 -1
  13. package/dist/create-bundler.d.ts +4 -1
  14. package/dist/create-bundler.mjs +101 -1
  15. package/dist/rollup/plugins/esbuild/index.cjs +1 -0
  16. package/dist/rollup/plugins/esbuild/index.d.cts +9 -0
  17. package/dist/rollup/plugins/esbuild/index.d.mts +9 -0
  18. package/dist/rollup/plugins/esbuild/index.d.ts +9 -0
  19. package/dist/rollup/plugins/esbuild/index.mjs +9 -0
  20. package/dist/rollup/plugins/sucrase/index.cjs +1 -0
  21. package/dist/rollup/plugins/sucrase/index.d.cts +8 -0
  22. package/dist/rollup/plugins/sucrase/index.d.mts +8 -0
  23. package/dist/rollup/plugins/sucrase/index.d.ts +8 -0
  24. package/dist/rollup/plugins/sucrase/index.mjs +9 -0
  25. package/dist/rollup/plugins/swc/index.cjs +1 -0
  26. package/dist/rollup/plugins/swc/index.d.cts +7 -0
  27. package/dist/rollup/plugins/swc/index.d.mts +7 -0
  28. package/dist/rollup/plugins/swc/index.d.ts +7 -0
  29. package/dist/rollup/plugins/swc/index.mjs +9 -0
  30. package/dist/shared/packem.BAcY88If.mjs +9 -0
  31. package/dist/shared/packem.BK03IQfP.d.ts +176 -0
  32. package/dist/shared/packem.BchP_OVQ.d.mts +176 -0
  33. package/dist/shared/{packem.eS2oNfLM.d.ts → packem.C44tLE3n.d.cts} +1 -193
  34. package/dist/shared/{packem.eS2oNfLM.d.cts → packem.C44tLE3n.d.mts} +1 -193
  35. package/dist/shared/{packem.eS2oNfLM.d.mts → packem.C44tLE3n.d.ts} +1 -193
  36. package/dist/shared/packem.CGAPjagQ.d.cts +176 -0
  37. package/dist/shared/packem.CKW9adaV.cjs +1 -0
  38. package/dist/shared/packem.CxExFSHU.mjs +9 -0
  39. package/dist/shared/packem.D09xRBAa.d.cts +25 -0
  40. package/dist/shared/packem.D09xRBAa.d.mts +25 -0
  41. package/dist/shared/packem.D09xRBAa.d.ts +25 -0
  42. package/dist/shared/packem.DvWhOdt5.d.cts +10 -0
  43. package/dist/shared/packem.DvWhOdt5.d.mts +10 -0
  44. package/dist/shared/packem.DvWhOdt5.d.ts +10 -0
  45. package/package.json +57 -17
  46. package/dist/chunks/index.cjs +0 -1
  47. package/dist/chunks/index.mjs +0 -1
  48. package/dist/chunks/index2.cjs +0 -1
  49. package/dist/chunks/index2.mjs +0 -9
  50. package/dist/chunks/sucrase.cjs +0 -1
  51. package/dist/chunks/sucrase.mjs +0 -1
  52. package/dist/shared/packem.BF9udlBc.mjs +0 -91
  53. package/dist/shared/packem.Bdmp1hC5.mjs +0 -1
  54. package/dist/shared/packem.e4bzQy8N.cjs +0 -91
package/CHANGELOG.md CHANGED
@@ -1,3 +1,166 @@
1
+ ## @visulima/packem [1.0.0-alpha.21](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.20...@visulima/packem@1.0.0-alpha.21) (2024-05-28)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * optimized logs ([63d9d45](https://github.com/visulima/packem/commit/63d9d4557d1ae3e7eb8c85d43df9a645c2e3af57))
7
+
8
+ ## @visulima/packem [1.0.0-alpha.20](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.19...@visulima/packem@1.0.0-alpha.20) (2024-05-28)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * extended logs ([984a1ea](https://github.com/visulima/packem/commit/984a1eac339f12b6683b5284325bf97d0b606334))
14
+
15
+ ## @visulima/packem [1.0.0-alpha.19](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.18...@visulima/packem@1.0.0-alpha.19) (2024-05-28)
16
+
17
+
18
+ ### Bug Fixes
19
+
20
+ * fixed error handling of promises ([be3b055](https://github.com/visulima/packem/commit/be3b055d68f2544c4271d1da9899e6ea40ebdb04))
21
+
22
+ ## @visulima/packem [1.0.0-alpha.18](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.17...@visulima/packem@1.0.0-alpha.18) (2024-05-28)
23
+
24
+
25
+ ### Bug Fixes
26
+
27
+ * new debug message ([ef7db6f](https://github.com/visulima/packem/commit/ef7db6ff4af9a91372ae57241dc38a38093e5d6b))
28
+
29
+ ## @visulima/packem [1.0.0-alpha.17](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.16...@visulima/packem@1.0.0-alpha.17) (2024-05-28)
30
+
31
+
32
+ ### Bug Fixes
33
+
34
+ * working on better tests ([a6a569e](https://github.com/visulima/packem/commit/a6a569e88496ac30bfebebc05c0b0f967d8810b8))
35
+
36
+ ## @visulima/packem [1.0.0-alpha.16](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.15...@visulima/packem@1.0.0-alpha.16) (2024-05-28)
37
+
38
+
39
+ ### Bug Fixes
40
+
41
+ * working on better tests ([a612717](https://github.com/visulima/packem/commit/a6127174c0368a8d5dd5c94dde0777d0a7305a90))
42
+
43
+
44
+ ### Miscellaneous Chores
45
+
46
+ * updated readme ([637d0a8](https://github.com/visulima/packem/commit/637d0a8e63ac51071da0fc98c6f8458d0402a7ea))
47
+
48
+ ## @visulima/packem [1.0.0-alpha.15](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.14...@visulima/packem@1.0.0-alpha.15) (2024-05-27)
49
+
50
+
51
+ ### Features
52
+
53
+ * added a first version of the init command ([ab3b009](https://github.com/visulima/packem/commit/ab3b0091cb30d7632be3e6818cb76a03ecd13a4f))
54
+
55
+ ## @visulima/packem [1.0.0-alpha.14](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.13...@visulima/packem@1.0.0-alpha.14) (2024-05-27)
56
+
57
+
58
+ ### Bug Fixes
59
+
60
+ * optimized the code a bit ([c644e8a](https://github.com/visulima/packem/commit/c644e8a3b1926b55c3c4038943100260bb9de811))
61
+
62
+ ## @visulima/packem [1.0.0-alpha.13](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.12...@visulima/packem@1.0.0-alpha.13) (2024-05-27)
63
+
64
+
65
+ ### Bug Fixes
66
+
67
+ * optimized the code with memo calls ([fe27249](https://github.com/visulima/packem/commit/fe27249d25fabcf5f2f9a8717a0fe750667475d8))
68
+
69
+
70
+ ### Styles
71
+
72
+ * cs fixes ([44f813e](https://github.com/visulima/packem/commit/44f813e6a0f3bc787490c480eeb338530cd37ede))
73
+
74
+ ## @visulima/packem [1.0.0-alpha.12](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.11...@visulima/packem@1.0.0-alpha.12) (2024-05-27)
75
+
76
+
77
+ ### Bug Fixes
78
+
79
+ * fixed types validation ([f0f572e](https://github.com/visulima/packem/commit/f0f572ea04a001bd566371d67f3f0df2da35d09d))
80
+
81
+ ## @visulima/packem [1.0.0-alpha.11](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.10...@visulima/packem@1.0.0-alpha.11) (2024-05-27)
82
+
83
+
84
+ ### Bug Fixes
85
+
86
+ * optimize config loading of types, cjs and esm ([ed4368f](https://github.com/visulima/packem/commit/ed4368f833c2e577ae78bb7a89f18075d8fde6d9))
87
+
88
+ ## @visulima/packem [1.0.0-alpha.10](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.9...@visulima/packem@1.0.0-alpha.10) (2024-05-27)
89
+
90
+
91
+ ### Bug Fixes
92
+
93
+ * optimize the code a bit ([90fa3e4](https://github.com/visulima/packem/commit/90fa3e4e468a75fe9c764614473119ca6671661c))
94
+
95
+
96
+ ### Styles
97
+
98
+ * cs fix ([6a77847](https://github.com/visulima/packem/commit/6a778475666bd236eb9dee56797ba969989b99fa))
99
+
100
+
101
+ ### Code Refactoring
102
+
103
+ * optimize the code a bit ([0960712](https://github.com/visulima/packem/commit/0960712bac282a691bbf7b88c0492cf101d3e812))
104
+
105
+ ## @visulima/packem [1.0.0-alpha.9](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.8...@visulima/packem@1.0.0-alpha.9) (2024-05-25)
106
+
107
+
108
+ ### Features
109
+
110
+ * added build time ([5ad7b27](https://github.com/visulima/packem/commit/5ad7b27eedd056dc1ce127ad76bcc03a52fe5d31))
111
+
112
+
113
+ ### Miscellaneous Chores
114
+
115
+ * clean up of started node native plugin ([6b67ca9](https://github.com/visulima/packem/commit/6b67ca93299d876893028d80816defa5da27c5f0))
116
+
117
+ ## @visulima/packem [1.0.0-alpha.8](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.7...@visulima/packem@1.0.0-alpha.8) (2024-05-25)
118
+
119
+
120
+ ### Bug Fixes
121
+
122
+ * removed vue examples, removed jsx preserve error ([55f5571](https://github.com/visulima/packem/commit/55f55712e021a3a4a1aa24c2026a508597a28d14))
123
+
124
+ ## @visulima/packem [1.0.0-alpha.7](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.6...@visulima/packem@1.0.0-alpha.7) (2024-05-25)
125
+
126
+
127
+ ### Bug Fixes
128
+
129
+ * adjusted target on swc and esbuild ([5ee4937](https://github.com/visulima/packem/commit/5ee493757e5fc51945228df0ff97db77c35eac3e))
130
+
131
+ ## @visulima/packem [1.0.0-alpha.6](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.5...@visulima/packem@1.0.0-alpha.6) (2024-05-25)
132
+
133
+
134
+ ### Bug Fixes
135
+
136
+ * added target options to esbuild and swc ([5d3100b](https://github.com/visulima/packem/commit/5d3100b6bce15819a90b97f537b5626498bb6b18))
137
+
138
+
139
+ ### Styles
140
+
141
+ * cs fix ([78752e4](https://github.com/visulima/packem/commit/78752e434e62c20c5efb800015d321899770030f))
142
+
143
+ ## @visulima/packem [1.0.0-alpha.5](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.4...@visulima/packem@1.0.0-alpha.5) (2024-05-25)
144
+
145
+
146
+ ### Bug Fixes
147
+
148
+ * added better dx for invalid entries ([55fc8ed](https://github.com/visulima/packem/commit/55fc8ed9040dc40d751028e2143a85962aa6b54e))
149
+
150
+ ## @visulima/packem [1.0.0-alpha.4](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.3...@visulima/packem@1.0.0-alpha.4) (2024-05-25)
151
+
152
+
153
+ ### Features
154
+
155
+ * moved minify to the core config ([219782f](https://github.com/visulima/packem/commit/219782f2e5ea2275fd63fbac07b180bf05497bf1))
156
+
157
+ ## @visulima/packem [1.0.0-alpha.3](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.2...@visulima/packem@1.0.0-alpha.3) (2024-05-25)
158
+
159
+
160
+ ### Bug Fixes
161
+
162
+ * fixed lazy loading of transformers ([81e8f65](https://github.com/visulima/packem/commit/81e8f6548431deb720fe2c68ccff5c19aa70af2c))
163
+
1
164
  ## @visulima/packem [1.0.0-alpha.2](https://github.com/visulima/packem/compare/@visulima/packem@1.0.0-alpha.1...@visulima/packem@1.0.0-alpha.2) (2024-05-24)
2
165
 
3
166
 
package/README.md CHANGED
@@ -39,12 +39,24 @@ yarn add @visulima/packem
39
39
  pnpm add @visulima/packem
40
40
  ```
41
41
 
42
+ ### Choose you transformer
43
+
44
+ You choose which one of the three supported transformer to use.
45
+
46
+ - [esbuild](https://github.com/evanw/esbuild)
47
+ - [@swc/core](https://github.com/swc-project/swc)
48
+ - [sucrase](https://github.com/alangpierce/sucrase)
49
+
42
50
  ## Usage
43
51
 
44
52
  ```typescript
45
53
 
46
54
  ```
47
55
 
56
+ Links:
57
+
58
+ - https://github.com/frehner/modern-guide-to-packaging-js-library#set-the-main-field
59
+
48
60
  ## Related
49
61
 
50
62
  - [bunchee](https://github.com/huozhi/bunchee) - Zero config bundler for ECMAScript and TypeScript packages
@@ -74,7 +86,8 @@ The visulima pack is open-sourced software licensed under the [MIT][license-url]
74
86
 
75
87
  [typescript-image]: https://img.shields.io/badge/Typescript-294E80.svg?style=for-the-badge&logo=typescript
76
88
  [typescript-url]: "typescript"
77
- [license-image]: https://img.shields.io/npm/l/@visulima/pack?color=blueviolet&style=for-the-badge
89
+ [license-image]: https://img.shields.io/npm/l/@visulima/packem?color=blueviolet&style=for-the-badge
78
90
  [license-url]: LICENSE.md "license"
79
- [npm-image]: https://img.shields.io/npm/v/@visulima/pack/latest.svg?style=for-the-badge&logo=npm
80
- [npm-url]: https://www.npmjs.com/package/@visulima/pack/v/latest "npm"
91
+ [npm-image]: https://img.shields.io/npm/v/@visulima/packem/latest.svg?style=for-the-badge&logo=npm
92
+ [npm-url]: https://www.npmjs.com/package/@visulima/packem/v/latest "npm"
93
+
package/dist/cli.cjs CHANGED
@@ -1,2 +1,8 @@
1
1
  #!/usr/bin/env node
2
- "use strict";var s=Object.defineProperty;var a=(t,e)=>s(t,"name",{value:e,configurable:!0});const l=require("node:process"),p=require("@visulima/cerebro"),u=require("./shared/packem.e4bzQy8N.cjs");function m(t){return t&&typeof t=="object"&&"default"in t?t.default:t}a(m,"_interopDefaultCompat");const d=m(p),f="@visulima/packem",y="1.0.0-alpha.1";var g=Object.defineProperty,o=a((t,e)=>g(t,"name",{value:e,configurable:!0}),"n");const h=o(t=>{t.addCommand({description:"Demonstrate options required",execute:o(async({options:e})=>{let n="build";e.watch?n="watch":e.jit&&(n="jit");const i={};if(e.env)for(const c of e.env)i[c.key]=c.value;await u.ye(e.dir,n,{cjsInterop:e.cjsInterop,configPath:e.config??void 0,debug:e.debug,replace:{...i},rollup:{esbuild:{minify:e.minify,target:e.target},license:{path:e.license},metafile:e.metafile,...e.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:e.sourcemap,tsconfigPath:e.tsconfig??void 0})},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{description:"Watch for changes",name:"watch",type:Boolean},{description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:o(e=>{const[n,i]=e.split("=");return{key:n,value:i}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand"),r=new d("packem",{packageName:f,packageVersion:y});h(r),r.setDefaultCommand("build"),r.run().catch(t=>{console.error(t.message),l.exit(1)});
2
+ "use strict";var v=Object.defineProperty;var s=(n,e)=>v(n,"name",{value:e,configurable:!0});const r=require("node:process"),k=require("@visulima/cerebro"),b=require("./create-bundler.cjs"),h=require("@antfu/install-pkg"),i=require("@clack/prompts"),c=require("@visulima/fs"),j=require("@visulima/package/package-json"),l=require("@visulima/path"),w=s(n=>n&&typeof n=="object"&&"default"in n?n.default:n,"_interopDefaultCompat"),x=w(k),C="@visulima/packem",P="1.0.0-alpha.20";var S=Object.defineProperty,p=s((n,e)=>S(n,"name",{value:e,configurable:!0}),"n");const q=p(n=>{n.addCommand({description:"Demonstrate options required",execute:p(async({options:e})=>{let t="build";e.watch?t="watch":e.jit&&(t="jit");const a={};if(e.env)for(const o of e.env)a[o.key]=o.value;await b(e.dir,t,{cjsInterop:e.cjsInterop,configPath:e.config??void 0,debug:e.debug,minify:e.minify,replace:{...a},rollup:{esbuild:{target:e.target},license:{path:e.license},metafile:e.metafile,...e.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:e.sourcemap,tsconfigPath:e.tsconfig??void 0})},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{description:"Watch for changes",name:"watch",type:Boolean},{description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:p(e=>{const[t,a]=e.split("=");return{key:t,value:a}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand");var z=Object.defineProperty,g=s((n,e)=>z(n,"name",{value:e,configurable:!0}),"i");const B=g(n=>{n.addCommand({description:"Initialize packem configuration",execute:g(async({logger:e,options:t})=>{if(i.intro("Welcome to packem setup"),c.isAccessibleSync(l.join(t.dir,"packem.config.ts")))return e.info("Packem project already initialized, you can use `packem build` to build your project"),r.exit(0);if(i.isCancel(t.transformer))return i.cancel("Operation cancelled"),r.exit(0);if(t.transformer===void 0){const u=l.join(t.dir,"package.json");if(!c.isAccessibleSync(u))return e.error("No package.json found in the directory"),r.exit(1);const d=j.parsePackageJson(u),y=[...Object.keys(d.dependencies??{}),...Object.keys(d.devDependencies??{})];if(t.transformer=await i.select({message:"Pick a transformer",options:[{label:"esbuild",value:"esbuild"},{label:"swc",value:"swc"},{label:"Sucrase",value:"sucrase"}]}),!y.includes(t.transformer)&&await i.confirm({message:"Do you want to install "+t.transformer+"?"})){const f=i.spinner();f.start("Installing "+t.transformer),await h.installPackage(t.transformer==="swc"?"@swc/core":t.transformer,{cwd:t.dir,dev:!0,silent:!0}),f.stop("")}}const a=`import { defineConfig } from "@visulima/packem/config";
3
+ import transformer from "@visulima/packem/transformer/${t.transformer}";
4
+
5
+ export default defineConfig({
6
+ transformer
7
+ });
8
+ `,o=i.spinner();return o.start("Creating packem.config.ts"),c.writeFileSync(l.join(t.dir,"packem.config.ts"),a),o.stop("Created packem.config.ts"),i.outro("Now you can run `packem build` to build your project"),r.exit(0)},"execute"),name:"init",options:[{defaultValue:".",description:"The directory to initialize",name:"dir",type:String},{description:"Choose a transformer to use for packem",name:"transformer",type:String}]})},"createInitCommand"),m=new x("packem",{packageName:C,packageVersion:P});B(m);q(m);m.run().catch(n=>{console.error(n.message),r.exit(1)});
package/dist/cli.mjs CHANGED
@@ -1,2 +1,16 @@
1
1
  #!/usr/bin/env node
2
- var s=Object.defineProperty;var c=(t,e)=>s(t,"name",{value:e,configurable:!0});import{exit as p}from"node:process";import l from"@visulima/cerebro";import{y as m}from"./shared/packem.BF9udlBc.mjs";const d="@visulima/packem",u="1.0.0-alpha.1";var f=Object.defineProperty,a=c((t,e)=>f(t,"name",{value:e,configurable:!0}),"n");const y=a(t=>{t.addCommand({description:"Demonstrate options required",execute:a(async({options:e})=>{let i="build";e.watch?i="watch":e.jit&&(i="jit");const n={};if(e.env)for(const r of e.env)n[r.key]=r.value;await m(e.dir,i,{cjsInterop:e.cjsInterop,configPath:e.config??void 0,debug:e.debug,replace:{...n},rollup:{esbuild:{minify:e.minify,target:e.target},license:{path:e.license},metafile:e.metafile,...e.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:e.sourcemap,tsconfigPath:e.tsconfig??void 0})},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{description:"Watch for changes",name:"watch",type:Boolean},{description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:a(e=>{const[i,n]=e.split("=");return{key:i,value:n}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand"),o=new l("packem",{packageName:d,packageVersion:u});y(o),o.setDefaultCommand("build"),o.run().catch(t=>{console.error(t.message),p(1)});
2
+ var v=Object.defineProperty;var r=(i,e)=>v(i,"name",{value:e,configurable:!0});import{exit as a}from"node:process";import k from"@visulima/cerebro";import b from"./create-bundler.mjs";import{installPackage as h}from"@antfu/install-pkg";import{intro as j,isCancel as w,cancel as C,select as x,confirm as P,spinner as f,outro as S}from"@clack/prompts";import{isAccessibleSync as u,writeFileSync as z}from"@visulima/fs";import{parsePackageJson as B}from"@visulima/package/package-json";import{join as c}from"@visulima/path";
3
+ // -- pack CommonJS Shims --
4
+ import __cjs_url__ from "node:url";
5
+ import __cjs_path__ from "node:path";
6
+ import __cjs_mod__ from "node:module";
7
+ const __filename = __cjs_url__.fileURLToPath(import.meta.url);
8
+ const __dirname = __cjs_path__.dirname(__filename);
9
+ const require = __cjs_mod__.createRequire(import.meta.url);
10
+ const I="@visulima/packem",N="1.0.0-alpha.20";var O=Object.defineProperty,s=r((i,e)=>O(i,"name",{value:e,configurable:!0}),"n");const V=s(i=>{i.addCommand({description:"Demonstrate options required",execute:s(async({options:e})=>{let t="build";e.watch?t="watch":e.jit&&(t="jit");const n={};if(e.env)for(const o of e.env)n[o.key]=o.value;await b(e.dir,t,{cjsInterop:e.cjsInterop,configPath:e.config??void 0,debug:e.debug,minify:e.minify,replace:{...n},rollup:{esbuild:{target:e.target},license:{path:e.license},metafile:e.metafile,...e.analyze?{visualizer:{}}:{visualizer:!1}},sourcemap:e.sourcemap,tsconfigPath:e.tsconfig??void 0})},"execute"),name:"build",options:[{defaultValue:".",description:"The directory to build",name:"dir",type:String},{alias:"t",description:"Environments to support. `target` in tsconfig.json is automatically added. Defaults to the current Node.js version.",name:"target"},{description:"Use a custom config file",name:"config",type:String},{description:"Path to the tsconfig.json file",name:"tsconfig",type:String},{description:"Minify the output",name:"minify",type:Boolean},{description:"Generate sourcemaps (experimental)",name:"sourcemap",type:Boolean},{description:"Watch for changes",name:"watch",type:Boolean},{description:"Stub the package for JIT compilation",name:"jit",type:Boolean},{description:"Compile-time environment variables (eg. --env.NODE_ENV=production)",multiple:!0,name:"env",type:s(e=>{const[t,n]=e.split("=");return{key:t,value:n}},"type")},{defaultValue:!1,description:"Generate meta file (experimental)",name:"metafile",type:Boolean},{description:"Path to the license file",name:"license",type:String},{conflicts:"watch",description:"Visualize and analyze the bundle",name:"analyze",type:Boolean},{description:"CJS interop mode, can export default and named export, (experimental).",name:"cjsInterop",type:Boolean}]})},"createBuildCommand");var D=Object.defineProperty,g=r((i,e)=>D(i,"name",{value:e,configurable:!0}),"i");const E=g(i=>{i.addCommand({description:"Initialize packem configuration",execute:g(async({logger:e,options:t})=>{if(j("Welcome to packem setup"),u(c(t.dir,"packem.config.ts")))return e.info("Packem project already initialized, you can use `packem build` to build your project"),a(0);if(w(t.transformer))return C("Operation cancelled"),a(0);if(t.transformer===void 0){const p=c(t.dir,"package.json");if(!u(p))return e.error("No package.json found in the directory"),a(1);const l=B(p),y=[...Object.keys(l.dependencies??{}),...Object.keys(l.devDependencies??{})];if(t.transformer=await x({message:"Pick a transformer",options:[{label:"esbuild",value:"esbuild"},{label:"swc",value:"swc"},{label:"Sucrase",value:"sucrase"}]}),!y.includes(t.transformer)&&await P({message:"Do you want to install "+t.transformer+"?"})){const d=f();d.start("Installing "+t.transformer),await h(t.transformer==="swc"?"@swc/core":t.transformer,{cwd:t.dir,dev:!0,silent:!0}),d.stop("")}}const n=`import { defineConfig } from "@visulima/packem/config";
11
+ import transformer from "@visulima/packem/transformer/${t.transformer}";
12
+
13
+ export default defineConfig({
14
+ transformer
15
+ });
16
+ `,o=f();return o.start("Creating packem.config.ts"),z(c(t.dir,"packem.config.ts"),n),o.stop("Created packem.config.ts"),S("Now you can run `packem build` to build your project"),a(0)},"execute"),name:"init",options:[{defaultValue:".",description:"The directory to initialize",name:"dir",type:String},{description:"Choose a transformer to use for packem",name:"transformer",type:String}]})},"createInitCommand"),m=new k("packem",{packageName:I,packageVersion:N});E(m);V(m);m.run().catch(i=>{console.error(i.message),a(1)});
package/dist/config.cjs CHANGED
@@ -1 +1 @@
1
- "use strict";var f=Object.defineProperty;var r=(e,i)=>f(e,"name",{value:i,configurable:!0});var t=Object.defineProperty,n=r((e,i)=>t(e,"name",{value:i,configurable:!0}),"i");const a=n(e=>(Array.isArray(e)?e:[e]).filter(Boolean),"defineConfig"),o=n(e=>e,"definePreset");exports.defineConfig=a,exports.definePreset=o;
1
+ "use strict";var f=Object.defineProperty;var i=(e,r)=>f(e,"name",{value:r,configurable:!0});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});var t=Object.defineProperty,n=i((e,r)=>t(e,"name",{value:r,configurable:!0}),"i");const o=n(e=>(Array.isArray(e)?e:[e]).filter(Boolean),"defineConfig"),a=n(e=>e,"definePreset");exports.defineConfig=o;exports.definePreset=a;
package/dist/config.d.cts CHANGED
@@ -1,5 +1,5 @@
1
- import { B as BuildConfig, a as BuildPreset } from './shared/packem.eS2oNfLM.cjs';
2
- export { b as BuildHooks } from './shared/packem.eS2oNfLM.cjs';
1
+ import { B as BuildConfig, a as BuildPreset } from './shared/packem.CGAPjagQ.cjs';
2
+ export { b as BuildHooks } from './shared/packem.CGAPjagQ.cjs';
3
3
  import '@rollup/plugin-alias';
4
4
  import '@rollup/plugin-commonjs';
5
5
  import '@rollup/plugin-json';
@@ -15,8 +15,11 @@ import 'rollup';
15
15
  import 'rollup-plugin-dts';
16
16
  import 'rollup-plugin-polyfill-node';
17
17
  import 'rollup-plugin-visualizer';
18
+ import './shared/packem.D09xRBAa.cjs';
18
19
  import 'esbuild';
20
+ import './shared/packem.DvWhOdt5.cjs';
19
21
  import 'sucrase';
22
+ import './shared/packem.C44tLE3n.cjs';
20
23
 
21
24
  declare const defineConfig: (config: BuildConfig | BuildConfig[]) => BuildConfig[];
22
25
  declare const definePreset: (preset: BuildPreset) => BuildPreset;
package/dist/config.d.mts CHANGED
@@ -1,5 +1,5 @@
1
- import { B as BuildConfig, a as BuildPreset } from './shared/packem.eS2oNfLM.mjs';
2
- export { b as BuildHooks } from './shared/packem.eS2oNfLM.mjs';
1
+ import { B as BuildConfig, a as BuildPreset } from './shared/packem.BchP_OVQ.mjs';
2
+ export { b as BuildHooks } from './shared/packem.BchP_OVQ.mjs';
3
3
  import '@rollup/plugin-alias';
4
4
  import '@rollup/plugin-commonjs';
5
5
  import '@rollup/plugin-json';
@@ -15,8 +15,11 @@ import 'rollup';
15
15
  import 'rollup-plugin-dts';
16
16
  import 'rollup-plugin-polyfill-node';
17
17
  import 'rollup-plugin-visualizer';
18
+ import './shared/packem.D09xRBAa.mjs';
18
19
  import 'esbuild';
20
+ import './shared/packem.DvWhOdt5.mjs';
19
21
  import 'sucrase';
22
+ import './shared/packem.C44tLE3n.mjs';
20
23
 
21
24
  declare const defineConfig: (config: BuildConfig | BuildConfig[]) => BuildConfig[];
22
25
  declare const definePreset: (preset: BuildPreset) => BuildPreset;
package/dist/config.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import { B as BuildConfig, a as BuildPreset } from './shared/packem.eS2oNfLM.js';
2
- export { b as BuildHooks } from './shared/packem.eS2oNfLM.js';
1
+ import { B as BuildConfig, a as BuildPreset } from './shared/packem.BK03IQfP.js';
2
+ export { b as BuildHooks } from './shared/packem.BK03IQfP.js';
3
3
  import '@rollup/plugin-alias';
4
4
  import '@rollup/plugin-commonjs';
5
5
  import '@rollup/plugin-json';
@@ -15,8 +15,11 @@ import 'rollup';
15
15
  import 'rollup-plugin-dts';
16
16
  import 'rollup-plugin-polyfill-node';
17
17
  import 'rollup-plugin-visualizer';
18
+ import './shared/packem.D09xRBAa.js';
18
19
  import 'esbuild';
20
+ import './shared/packem.DvWhOdt5.js';
19
21
  import 'sucrase';
22
+ import './shared/packem.C44tLE3n.js';
20
23
 
21
24
  declare const defineConfig: (config: BuildConfig | BuildConfig[]) => BuildConfig[];
22
25
  declare const definePreset: (preset: BuildPreset) => BuildPreset;
package/dist/config.mjs CHANGED
@@ -1 +1,9 @@
1
- var f=Object.defineProperty;var i=(e,r)=>f(e,"name",{value:r,configurable:!0});var a=Object.defineProperty,n=i((e,r)=>a(e,"name",{value:r,configurable:!0}),"i");const o=n(e=>(Array.isArray(e)?e:[e]).filter(Boolean),"defineConfig"),t=n(e=>e,"definePreset");export{o as defineConfig,t as definePreset};
1
+
2
+ // -- pack CommonJS Shims --
3
+ import __cjs_url__ from "node:url";
4
+ import __cjs_path__ from "node:path";
5
+ import __cjs_mod__ from "node:module";
6
+ const __filename = __cjs_url__.fileURLToPath(import.meta.url);
7
+ const __dirname = __cjs_path__.dirname(__filename);
8
+ const require = __cjs_mod__.createRequire(import.meta.url);
9
+ var f=Object.defineProperty;var i=(e,r)=>f(e,"name",{value:r,configurable:!0});var a=Object.defineProperty,n=i((e,r)=>a(e,"name",{value:r,configurable:!0}),"i");const t=n(e=>(Array.isArray(e)?e:[e]).filter(Boolean),"defineConfig"),d=n(e=>e,"definePreset");export{t as defineConfig,d as definePreset};
@@ -1 +1,93 @@
1
- "use strict";require("node:fs/promises"),require("node:module"),require("node:process"),require("@visulima/colorize"),require("@visulima/fs"),require("@visulima/humanizer"),require("@visulima/package"),require("@visulima/pail"),require("@visulima/pail/processor"),require("@visulima/path"),require("defu"),require("hookable"),require("semver");const e=require("./shared/packem.e4bzQy8N.cjs");module.exports=e.ye;
1
+ "use strict";var Xe=Object.defineProperty;var d=(e,t)=>Xe(e,"name",{value:t,configurable:!0});const B=require("node:fs/promises"),Ge=require("node:module"),w=require("node:process"),g=require("@visulima/colorize"),b=require("@visulima/fs"),Ye=require("@visulima/fs/error"),P=require("@visulima/humanizer"),te=require("@visulima/package"),Ke=require("@visulima/package/package-json"),Qe=require("@visulima/pail"),W=require("@visulima/pail/processor"),f=require("@visulima/path"),Ze=require("defu"),et=require("hookable"),S=require("./shared/packem.CKW9adaV.cjs"),fe=require("node:url"),A=require("mlly"),tt=require("magic-string"),ot=require("jiti"),q=require("rollup"),nt=require("@rollup/plugin-alias"),rt=require("@rollup/plugin-commonjs"),st=require("@rollup/plugin-dynamic-import-vars"),ge=require("@rollup/plugin-node-resolve"),it=require("@rollup/plugin-replace"),at=require("@rollup/plugin-wasm"),lt=require("rollup-plugin-polyfill-node"),ct=require("rollup-plugin-visualizer"),he=require("semver"),pt=require("glob"),ut=require("glob-parent"),dt=require("@rollup/plugin-json"),C=require("@rollup/pluginutils"),mt=require("rollup-plugin-license"),ft=require("@babel/parser"),G=require("node:fs"),gt=require("fastest-levenshtein");var oe=typeof document<"u"?document.currentScript:null;const x=d(e=>e&&typeof e=="object"&&"default"in e?e.default:e,"_interopDefaultCompat"),ne=x(Ge),D=x(tt),ye=x(ot),ve=x(nt),ht=x(rt),yt=x(st),be=x(it),vt=x(lt),bt=x(ut),$t=x(dt),jt=x(mt);var wt=Object.defineProperty,L=d((e,t)=>wt(e,"name",{value:t,configurable:!0}),"i$9");const Y=/^#![^\n]*/,H=L(async e=>{await B.chmod(e,493).catch(()=>{})},"makeExecutable"),kt=L((e,t=`#!/usr/bin/env node
2
+ `)=>({name:"packem:shebang",renderChunk:{handler(o,n,r){if(!n.isEntry||!n.facadeModuleId||o.startsWith("#")&&o[1]==="!")return null;if(e.includes(n.name)){const s=new D(o);return s.prepend(t),{code:s.toString(),map:r.sourcemap?s.generateMap({hires:!0}):void 0}}return null},order:"post"},async writeBundle(o,n){for(const[r,s]of Object.entries(n))if(s.type==="chunk"&&Y.test(s.code)&&o.dir){const i=f.resolve(o.dir,r);await H(i)}}}),"shebangPlugin"),xt=L(()=>({name:"packem:remove-shebang",renderChunk(e){return e.replace(Y,"")}}),"removeShebangPlugin"),Et=L((e,t=`
3
+ `)=>{const o=Y.exec(e);return o?o+t:""},"getShebang");var Ot=Object.defineProperty,_t=d((e,t)=>Ot(e,"name",{value:t,configurable:!0}),"p$1");const K=_t((e,t)=>{let o={};if(e.pkg.name&&(o[e.pkg.name]=e.options.rootDir),e.pkg.imports){const{imports:n}=e.pkg;for(const r in n){if(r.startsWith("#"))continue;const s=n[r];typeof s=="string"&&(o[r]=f.join(e.rootDir,s))}}return o={...o,...e.options.alias},e.options.rollup.alias&&(Array.isArray(e.options.rollup.alias.entries)?Object.assign(o,Object.fromEntries(e.options.rollup.alias.entries.map(n=>[n.find,n.replacement]))):Object.assign(o,e.options.rollup.alias.entries||e.options.rollup.alias)),e.logger.debug({message:"Resolved aliases: "+JSON.stringify(o),prefix:t}),o},"resolveAliases");var St=Object.defineProperty,Dt=d((e,t)=>St(e,"name",{value:t,configurable:!0}),"o$3");const Nt=Dt((e,t)=>{const o=ye(t,{esmResolve:!0,interopDefault:!0});try{return o.resolve(e)}catch(n){if(n.code!=="MODULE_NOT_FOUND")throw new Error(`Error trying import ${e} from ${t}`,{cause:n});return e}},"tryResolve");var Pt=Object.defineProperty,Mt=d((e,t)=>Pt(e,"name",{value:t,configurable:!0}),"r$7");const I=Mt((e,t)=>{e.warnings.has(t)||e.warnings.add(t)},"warn");var Ft=Object.defineProperty,Ct=d((e,t)=>Ft(e,"name",{value:t,configurable:!0}),"u$7");const It=Ct(async e=>{const t=await A.resolvePath("jiti",{url:typeof document>"u"?require("url").pathToFileURL(__filename).href:oe&&oe.src||new URL("create-bundler.cjs",document.baseURI).href}),o=JSON.stringify({...e.options.stubOptions.jiti,alias:{...K(e,"jit"),...e.options.stubOptions.jiti.alias}},null,2);for(const n of e.options.entries){const r=f.resolve(e.options.rootDir,e.options.outDir,n.name),s=f.normalize(Nt(n.input,e.options.rootDir)||n.input),i=s.slice(0,Math.max(0,s.length-f.extname(s).length)),a=await b.readFile(s),p=Et(a);e.options.emitCJS&&await b.writeFile(`${r}.cjs`,p+[`const jiti = require(${JSON.stringify(t)})`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(i)})} */`,`module.exports = _jiti(${JSON.stringify(s)})`].join(`
4
+ `));let l=[];try{l=await A.resolveModuleExportNames(s,{extensions:S.DEFAULT_EXTENSIONS})}catch(c){I(e,`Cannot analyze ${s} for exports:${c}`);return}const u=l.includes("default")||l.length===0;await b.writeFile(`${r}.mjs`,p+[`import jiti from ${JSON.stringify(fe.pathToFileURL(t).href)};`,"",`const _jiti = jiti(null, ${o})`,"",`/** @type {import(${JSON.stringify(s)})} */`,`const _module = await _jiti.import(${JSON.stringify(s)});`,u?`
5
+ export default _module;`:"",...l.filter(c=>c!=="default").map(c=>`export const ${c} = _module.${c};`)].join(`
6
+ `)),await b.writeFile(`${r}.d.cts`,[`export * from ${JSON.stringify(i)};`,u?`export { default } from ${JSON.stringify(i)};`:""].join(`
7
+ `)),await b.writeFile(`${r}.d.mts`,[`export * from ${JSON.stringify(s)};`,u?`export { default } from ${JSON.stringify(s)};`:""].join(`
8
+ `)),p&&(await H(`${r}.cjs`),await H(`${r}.mjs`))}await e.hooks.callHook("rollup:done",e)},"createStub");var Rt=Object.defineProperty,Tt=d((e,t)=>Rt(e,"name",{value:t,configurable:!0}),"a$b");const V=Tt((e,t)=>e.some(o=>o instanceof RegExp?o.test(t):o===t),"arrayIncludes");var At=Object.defineProperty,qt=d((e,t)=>At(e,"name",{value:t,configurable:!0}),"a$a");const J=qt(e=>e===void 0?[]:Array.isArray(e)?e:[e],"arrayify");var Bt=Object.defineProperty,Lt=d((e,t)=>Bt(e,"name",{value:t,configurable:!0}),"e$1");const X=Lt((e="")=>{const t=e.split("/");return t[0][0]==="@"?`${t[0]}/${t[1]}`:t[0]},"getPackageName");var Wt=Object.defineProperty,$e=d((e,t)=>Wt(e,"name",{value:t,configurable:!0}),"s$c");const Jt=$e((e,t,o)=>{const n=o??new Map;return(...r)=>{const s=t?typeof t=="function"?t(...r):t:JSON.stringify({args:r}),i=n.get(s);if(i!==void 0)return i;const a=e(...r);return n.set(s,a),a}},"memoize"),zt=$e(e=>{const t=new Map;return o=>Jt(e,o,t)},"memoizeByKey");var Ut=Object.defineProperty,Ht=d((e,t)=>Ut(e,"name",{value:t,configurable:!0}),"m$5");const je=Ht(({addDefaultProperty:e=!1,logger:t,type:o})=>({name:"packem:cjs-interop",renderChunk(n,r,s){if(r.type!=="chunk"||!r.isEntry)return null;if(s.format==="cjs"&&s.exports==="auto"){const i=/(exports(?:\['default'\]|\.default)) = (.*);/i.exec(n);if(i===null||i.length<3)return null;const a=new D(n);a.replace("Object.defineProperty(exports, '__esModule', { value: true });",""),a.replaceAll(/exports\.(.*) = (.*);/g,"module.exports.$1 = $2;"),e&&a.append(`
9
+ module.exports.default = `+i[2]+";");let p=a.toString();return p=p.replace(/(?:module\.)?exports(?:\['default'\]|\.default)/i,"module.exports"),t.debug({message:"Applied CommonJS interop to entry chunk "+r.fileName+".",prefix:"plugin:cjs-interop"}),{code:p,map:a.generateMap({hires:!0})}}if(s.format==="es"&&/\.d\.(?:ts|cts)$/.test(r.fileName)){if(o!=="commonjs"&&r.fileName.endsWith(".d.ts"))return null;const i=/export\s\{\s(.*)\s\}/i.exec(n);if(i===null||i.length<2)return null;const a=i[1].split(", "),p=[];let l="";for(const c of a)if(!c.includes("type"))if(c.includes("as")){const[m,y]=c.split(" as ");if(y==="default"&&(l=m,!e))continue;p.push(y+": typeof "+m+";")}else p.push(c+": typeof "+c+";");const u=new D(n);return u.replace(" "+l+" as default,",""),u.append(`
10
+
11
+ declare const defaultExport: {
12
+ `+(p.length>0?" ":"")+p.join(`
13
+ `)+`
14
+ } & typeof `+l+`;
15
+
16
+ export default defaultExport;`),t.debug({message:"Applied CommonJS interop to entry chunk "+r.fileName+".",prefix:"plugin:cjs-interop"}),{code:u.toString(),map:u.generateMap({hires:!0})}}return null}}),"cjsInterop");var Vt=Object.defineProperty,Xt=d((e,t)=>Vt(e,"name",{value:t,configurable:!0}),"f$7");const Gt=Xt((e,t)=>{const o=new Map,n={copyOnce:!0,exactFileNames:!0,flatten:!1,...e};let{targets:r}=n;return Array.isArray(r)?r=r.map(s=>{if(typeof s=="string")return{src:s};if(typeof s=="object"&&"src"in s)return s}).filter(Boolean):typeof r=="string"&&(r=[{src:r}]),{async buildStart(){const s=await Promise.all(r.flatMap(i=>Array.isArray(i.src)?i.src.map(a=>({...i,src:a})):i).map(async i=>await pt.glob(i.src,{ignore:i.exclude}).then(a=>({dest:i.dest??"",parent:bt(i.src),src:a}))));for(const i of s)for(const a of i.src){let p;o.has(a)?p=o.get(a):(p={copied:[],dest:[],timestamp:0},o.set(a,p));const l=n.flatten?f.normalize(i.dest):f.join(i.dest,f.relative(i.parent,f.dirname(a)));p.dest.includes(l)||p.dest.push(l),this.addWatchFile(a)}t.info({message:"Copying files...",prefix:"plugin:copy"}),await Promise.all([...o].map(async([i,a])=>{let p;try{const l=await B.stat(i);if(!l.isFile())return;const u=l.mtime.getTime();u>a.timestamp&&(a.timestamp=u,a.copied=[]),p=await b.readFile(i,{buffer:!0})}catch(l){t.error({context:[l],message:`error reading file ${i}`,prefix:"plugin:copy"});return}for(const l of a.dest){if(n.copyOnce&&a.copied.includes(l))continue;const u=f.basename(i),c=f.join(l,u);try{this.emitFile({[n.exactFileNames?"fileName":"name"]:c,source:p,type:"asset"}),t.debug({message:`copied ${i} → ${c}`,prefix:"plugin:copy"}),a.copied.push(l)}catch(m){t.error({context:[m],message:`error copying file ${i} → ${c}`,prefix:"plugin:copy"})}}}))},name:"packem:copy"}},"copyPlugin");var Yt=Object.defineProperty,Kt=d((e,t)=>Yt(e,"name",{value:t,configurable:!0}),"n$8");const re="export default ",we=Kt(e=>{const t=$t(e);return{...t,name:"packem:json",transform(o,n){const r=t.transform?.call(this,o,n);return r&&typeof r!="string"&&"code"in r&&r.code?.startsWith(re)&&(r.code=r.code.replace(re,"module.exports = ")),r}}},"JSONPlugin");class Qt{static{d(this,"WalkerBase")}constructor(){this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(t=>this.replacement=t,"replace")}}replace(t,o,n,r){t&&o&&(n!=null?t[o][n]=r:t[o]=r)}remove(t,o,n){t&&o&&(n!=null?t[o].splice(n,1):delete t[o])}}class Zt extends Qt{static{d(this,"SyncWalker")}constructor(t,o){super(),this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.context={skip:d(()=>this.should_skip=!0,"skip"),remove:d(()=>this.should_remove=!0,"remove"),replace:d(n=>this.replacement=n,"replace")},this.enter=t,this.leave=o}visit(t,o,n,r){if(t){if(this.enter){const i=this.should_skip,a=this.should_remove,p=this.replacement;this.should_skip=!1,this.should_remove=!1,this.replacement=null,this.enter.call(this.context,t,o,n,r),this.replacement&&(t=this.replacement,this.replace(o,n,r,t)),this.should_remove&&this.remove(o,n,r);const l=this.should_skip,u=this.should_remove;if(this.should_skip=i,this.should_remove=a,this.replacement=p,l)return t;if(u)return null}let s;for(s in t){const i=t[s];if(i&&typeof i=="object")if(Array.isArray(i)){const a=i;for(let p=0;p<a.length;p+=1){const l=a[p];se(l)&&(this.visit(l,t,s,p)||p--)}}else se(i)&&this.visit(i,t,s,null)}if(this.leave){const i=this.replacement,a=this.should_remove;this.replacement=null,this.should_remove=!1,this.leave.call(this.context,t,o,n,r),this.replacement&&(t=this.replacement,this.replace(o,n,r,t)),this.should_remove&&this.remove(o,n,r);const p=this.should_remove;if(this.replacement=i,this.should_remove=a,p)return null}}return t}}function se(e){return e!==null&&typeof e=="object"&&"type"in e&&typeof e.type=="string"}d(se,"isNode");function ke(e,{enter:t,leave:o}){return new Zt(t,o).visit(e,null)}d(ke,"walk");var eo=Object.defineProperty,to=d((e,t)=>eo(e,"name",{value:t,configurable:!0}),"u$5");const oo=to(({attributes:e,logger:t})=>{const o=C.createFilter([/\.[tj]sx$/],/node_modules/);if(!Array.isArray(e)||e.length===0)throw new Error("[packem:jsx-remove-attributes]: attributes must be a non-empty array of strings.");return{name:"packem:jsx-remove-attributes",transform(n,r){if(!o(r))return null;let s=null;try{s=this.parse(n,{allowReturnOutsideFunction:!0})}catch(p){return this.warn({code:"PARSE_ERROR",message:`[packem:jsx-remove-attributes]: failed to parse "${r}" and remove the jsx attribute.`}),t.warn(p),null}let i=!1;const a=new D(n);return ke(s,{enter(p){if(p.type==="CallExpression"&&p.callee.type==="Identifier"&&p.callee.name==="jsx"){const l=p.arguments.filter(u=>u.type==="ObjectExpression"&&Array.isArray(u.properties));for(const u of l)for(const c of u.properties)c.type==="Property"&&c.key.type==="Literal"&&c.value.type==="Literal"&&e.includes(c.key.value)&&(a.overwrite(c.start-2,c.end,""),i=!0)}}}),i?{code:a.toString(),map:a.generateMap({hires:!0})}:null}}},"jsxRemoveAttributes");var no=Object.defineProperty,Q=d((e,t)=>no(e,"name",{value:t,configurable:!0}),"p");const ro=Q(e=>{const t=[],o=[];return e.forEach(n=>{n.startsWith("(")?t.push(n):o.push(n)}),[...o.sort(),...t.sort()]},"sortLicenses"),so=Q((e,t,o)=>{const n=new RegExp(`(<!-- ${t} -->)[\\s\\S]*?(<!-- ${t} -->)`,"g");if(n.test(e))return e.replace(n,`$1
17
+ ${o}
18
+ $2`)},"replaceContentWithin"),xe=Q(({licenseFilePath:e,licenseTemplate:t,logger:o,marker:n,mode:r,packageName:s})=>jt({thirdParty(i){const a=new Set,p=i.sort(({name:u},{name:c})=>u>c?1:c>u?-1:0).map(({author:u,contributors:c,license:m,licenseText:y,maintainers:h,name:v,repository:$})=>{let E="## "+v+`
19
+ `;m&&(E+=`License: ${m}
20
+ `);const N=new Set;for(const O of[u,...h,...c]){const F=typeof O=="string"?O:O?.name;F&&N.add(F)}return N.size>0&&(E+=`By: ${[...N].join(", ")}
21
+ `),$&&(E+=`Repository: ${typeof $=="string"?$:$.url}
22
+ `),y&&(E+=`
23
+ `+y.trim().replaceAll(/(\r\n|\r)/g,`
24
+ `).split(`
25
+ `).map(O=>`> ${O}`).join(`
26
+ `)+`
27
+ `),m&&a.add(m),E}).join(`
28
+ ---------------------------------------
29
+
30
+ `);if(p===""){o.info({message:"No dependencies license information found.",prefix:"plugin:license:"+r});return}const l=t(ro(a),p,s);try{const u=b.readFileSync(e),c=so(u,n,l);if(!c){o.error({message:`Could not find the license marker: <!-- ${n} --> in ${e}`,prefix:"plugin:license:"+r});return}u!==c&&(b.writeFileSync(e,c),o.info({message:`${e} updated.`,prefix:"plugin:license:"+r}))}catch(u){o.error(u)}}}),"license");var io=Object.defineProperty,ao=d((e,t)=>io(e,"name",{value:t,configurable:!0}),"i$6");const lo=ao(e=>({async buildEnd(){const t=[];for(const n of this.getModuleIds()){const r=this.getModuleInfo(n);if(r!=null&&!r.isExternal)for(const s of r.importedIds)t.push({source:n,target:s})}if(Array.isArray(t)&&t.length===0)return;const o=f.resolve(e.outDir,"graph.json");b.writeJsonSync(o,t)},name:"packem:metafile"}),"metafilePlugin");var co=Object.defineProperty,po=d((e,t)=>co(e,"name",{value:t,configurable:!0}),"c$4");const uo=/\.(?:m|c)?(?:j|t)sx?$/,mo=/^use \w+$/,fo=po(e=>{const t={},o={};return{name:"packem:preserve-directives",onLog(n,r){return r.code==="MODULE_LEVEL_DIRECTIVE"&&n==="warn"?!1:null},renderChunk:{handler(n,r,{sourcemap:s}){const i=r.moduleIds.map(l=>t[l]?t[l]:null).reduce((l,u)=>(u&&u.forEach(c=>{l.add(c)}),l),new Set),a=new D(n);i.size>0&&(e.debug({message:`directives for chunk "${r.fileName}" are preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${[...i].map(l=>`'${l}';`).join(`
31
+ `)}
32
+ `));let p=null;return r.facadeModuleId&&typeof o[r.facadeModuleId]=="string"&&(p=o[r.facadeModuleId]),p&&(e.debug({message:`shebang for chunk "${r.fileName}" is preserved.`,prefix:"plugin:preserve-directives"}),a.prepend(`${p}
33
+ `)),i.size===0&&p===null?null:{code:a.toString(),map:s?a.generateMap({hires:!0}):null}},order:"post"},transform:{handler(n,r){const s=f.extname(r);if(!uo.test(s))return null;let i=!1;const a=new D(n);if(n.startsWith("#")&&n[1]==="!"){let l=0;for(let u=2,c=n.length;u<c;u++){const m=n.codePointAt(u);if(m===10||m===13||m===8232||m===8233){l=u;break}}l&&(o[r]=n.slice(0,l),a.remove(0,l+1),i=!0,e.debug({message:`shebang for module "${r}" is preserved.`,prefix:"plugin:preserve-directives"}))}let p=null;try{p=this.parse(a.toString(),{allowReturnOutsideFunction:!0})}catch(l){return this.warn({code:"PARSE_ERROR",message:`[packem:preserve-directives]: failed to parse "${r}" and extract the directives.`}),e.warn(l),null}if(p.type!=="Program")return null;for(const l of p.body.filter(Boolean)){if(l.type!=="ExpressionStatement")break;let u=null;"directive"in l?u=l.directive:l.expression.type==="Literal"&&typeof l.expression.value=="string"&&mo.test(l.expression.value)&&(u=l.expression.value),u!=="use strict"&&u&&(t[r]||=new Set,t[r].add(u),"start"in l&&typeof l.start=="number"&&"end"in l&&typeof l.end=="number"&&(a.remove(l.start,l.end),i=!0),e.debug({message:`directive "${u}" for module "${r}" is preserved.`,prefix:"plugin:preserve-directives"}))}return i?{code:a.toString(),map:a.generateMap({hires:!0}),meta:{preserveDirectives:{directives:[...t[r]??[]],shebang:o[r]??null}}}:null},order:"post"}}},"preserveDirectives");var go=Object.defineProperty,ho=d((e,t)=>go(e,"name",{value:t,configurable:!0}),"r$5");const yo={exclude:[],include:[/\.(md|txt|css|htm|html)$/]},vo=ho((e={})=>{e={...e,...yo};const t=C.createFilter(e.include,e.exclude);return{name:"packem:raw",transform(o,n){return t(n)?{code:`export default ${JSON.stringify(o)}`,map:null}:null}}},"rawPlugin");var bo=Object.defineProperty,$o=d((e,t)=>bo(e,"name",{value:t,configurable:!0}),"l$5");const z="\0__file_url__",Ee=$o(()=>({async load(e){if(e.startsWith(z)){const t=fe.fileURLToPath(e.slice(z.length));return await b.readFile(t)}},name:"packem:resolve-file-url",resolveId(e){if(e.startsWith("file://"))return`${z}${e}`}}),"resolveFileUrl");var jo=Object.defineProperty,Oe=d((e,t)=>jo(e,"name",{value:t,configurable:!0}),"i$3");const wo=/__filename|__dirname|require\(|require\.resolve\(/,_e=`
34
+ // -- pack CommonJS Shims --
35
+ import __cjs_url__ from "node:url";
36
+ import __cjs_path__ from "node:path";
37
+ import __cjs_mod__ from "node:module";
38
+ const __filename = __cjs_url__.fileURLToPath(import.meta.url);
39
+ const __dirname = __cjs_path__.dirname(__filename);
40
+ const require = __cjs_mod__.createRequire(import.meta.url);
41
+ `,Se=`
42
+ // -- pack CommonJS Shims Node 20.11 --
43
+ import __cjs_mod__ from "node:module";
44
+ const __filename = import.meta.filename;
45
+ const __dirname = import.meta.dirname;
46
+ const require = __cjs_mod__.createRequire(import.meta.url);
47
+ `,ko=Oe((e,t)=>{if(w.env.INTERNAL_PACKEM_BUILD!=="1"&&(e.includes(_e)||e.includes(Se)||!wo.test(e)))return null;const o=A.findStaticImports(e).pop(),n=o?o.end:0,r=new D(e);return r.appendRight(n,t),{code:r.toString(),map:r.generateMap()}},"CJSToESM"),xo=Oe(e=>({name:"packem:cjs",renderChunk(t,o,n){if(n.format==="es"){let r=_e;if(e.engines?.node){const s=he.minVersion(e.engines.node);s&&s.major>=20&&s.minor>=11&&(r=Se)}return ko(t,r)}return null}}),"cjsPlugin");var Eo=Object.defineProperty,M=d((e,t)=>Eo(e,"name",{value:t,configurable:!0}),"s$9");const Oo=/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g,_o=/MIT License|MIT license|BSD license/,So=/\n{2,}/g,Do=/\b(\w+)\$\d+\b/g,No=/[-/\\^$*+?.()|[\]{}]/g,Po=M(e=>e.replaceAll(No,"\\$&"),"escapeRegex"),Mo=M(e=>[...new Set(e)],"unique"),Fo=M(e=>e.replaceAll(Oo,t=>_o.test(t)?"":t).replaceAll(So,`
48
+
49
+ `),"cleanUnnecessaryComments"),ie=new Map;function De(e,t,{identifierReplacements:o},n){const r=A.findStaticImports(e);for(const i in o){const a=r.find(l=>l.specifier===i&&l.imports.includes("{"));if(!a){this.warn(`${t.fileName} does not import "${i}" for replacement`),process.exitCode=1;continue}const p=o[i];for(const l in p){a.imports.includes(l)||(this.warn(`${t.fileName} does not import "${l}" from "${i}" for replacement`),w.exit(1));const u=p[l],c=Po(l);u.includes(".")&&(e=e.replace(new RegExp(`\\b\\w+\\b as ${c},?\\s?`),"")),e=e.replaceAll(new RegExp(`\\b${c}\\b`,"g"),u)}}const s=Mo(Array.from(e.matchAll(Do),i=>i[0]));if(s.length>0){const i=s.map(p=>`
50
+ - ${p}`).join(""),a=t.fileName.replace(/\.[^/.]+$/,"");ie.has(a)||n.warn({message:`${t.fileName} contains confusing identifier names${i}
51
+
52
+ To replace these, add them to the "rollup -> patchTypes -> identifierReplacements" option in your packem config.`,prefix:"plugin:patch-types"}),ie.set(a,!0)}return e}d(De,"v$2");M(De,"replaceConfusingTypeNames");function Ne(e,t){if(t.leadingComments?.some(o=>o.type==="CommentBlock"&&o.value.includes("@internal"))){const o=e.original[t.end]===","?t.end+1:t.end;return e.remove(t.leadingComments[0].start,o),!0}return!1}d(Ne,"N");M(Ne,"removeInternal");function Pe(e,t){if(e.includes("@internal")){const o=new D(e),n=ft.parse(e,{plugins:["typescript"],sourceType:"module"});ke(n,{enter(r){Ne(o,r)&&this.skip()}}),e=o.toString(),e.includes("@internal")&&(this.warn(`${t.fileName} has unhandled @internal declarations`),w.exit(1))}return e}d(Pe,"S");M(Pe,"stripInternalTypes");const Co=M((e,t)=>({name:"packem:patch-types",renderChunk(o,n){return o=De.call(this,o,n,e,t),o=Pe.call(this,o,n),o=Fo(o),o},resolveId(o){return o.startsWith("types/")?{external:!0,id:"../../"+(o.endsWith(".js")?o:o+".js")}:null}}),"patchTypescriptTypes");var Io=Object.defineProperty,Me=d((e,t)=>Io(e,"name",{value:t,configurable:!0}),"u$3");const Fe=Me((e,t=!0)=>{if(!e)return null;const{config:o,path:n}=e;if(!o.compilerOptions)return null;const{baseUrl:r,paths:s}=o.compilerOptions;if(!r)return null;const i=f.resolve(f.dirname(n),r),a=[];if(s)for(const[p,l]of Object.entries(s)){const u=new RegExp(`^${[...p].map(m=>m==="*"?"(.+)":m.replace(/[\\^$*+?.()|[\]{}]/,"\\$&")).join("")}$`);let c=0;for(const m of l){const y=[...C.normalizePath(f.resolve(i,m))].map(h=>h==="*"?`$${++c}`:h==="$"?"$$":h).join("");a.push({find:u,replacement:y})}}return t&&a.push({find:/^(?!\.*\/|\.*$|\w:)(.+)$/,replacement:`${[...C.normalizePath(i)].map(p=>p==="$"?"$$":p).join("")}/$1`}),a},"getConfigAlias"),Ce=Me((e,t)=>{const o=Fe(e);return{name:"packem:resolve-tsconfig-paths",async resolveId(n,r,s){if(!o||n.includes("\0"))return null;for(const{find:i,replacement:a}of o)if(i.test(n)){const p=n.replace(i,a),l=await this.resolve(p,r,{skipSelf:!0,...s});if(l)return t.debug({message:`Resolved ${n} to ${l.id} using paths from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-paths"}),l.id}return null}}},"resolveTsconfigPaths");var Ro=Object.defineProperty,Ie=d((e,t)=>Ro(e,"name",{value:t,configurable:!0}),"u$2");const To=Ie((e,t)=>{if(!t)return null;const{config:o,path:n}=t;if(!o.compilerOptions)return null;const{rootDirs:r}=o.compilerOptions;if(!r)return null;const s=[];for(const i of r){if(i.startsWith("."))throw new Error(`Invalid rootDir value '.' in ${n}.`);if(i.startsWith(".."))throw new Error(`Invalid rootDir value '..' in ${n}.`);s.push(f.resolve(e,i))}return s},"getRootDirectories"),Re=Ie((e,t,o)=>{const n=To(e,o);return{name:"packem:resolve-tsconfig-root-dirs",async resolveId(r,s,i){if(n===null||n.length===0)return null;if(r.startsWith("."))for(const a of n){const p=f.join(a,r),l=await this.resolve(p,s,{skipSelf:!0,...i});if(l)return t.debug({message:`Resolved ${r} to ${l.id} using rootDirs from tsconfig.json.`,prefix:"plugin:resolve-tsconfig-root-dirs"}),l.id}return null}}},"resolveTsconfigRootDirectories");var Ao=Object.defineProperty,qo=d((e,t)=>Ao(e,"name",{value:t,configurable:!0}),"r$4");const Te=qo(()=>{const e=/\.(?:[mc]?js|jsx)$/;return{name:"packem:resolve-typescript-mjs-cjs",async resolveId(t,o,n){return e.test(t)&&o?await this.resolve(t.replace(/js(x?)$/,"ts$1"),o,n):null}}},"resolveTypescriptMjsCts");var Bo=Object.defineProperty,Lo=d((e,t)=>Bo(e,"name",{value:t,configurable:!0}),"s$8");const Wo=Lo(e=>{const t=f.basename(e).split(".");if(t.length>=2){const[o,n]=t.slice(-2),r=t[0],s=/^(\w+)-runtime$/.exec(o)?.[1];if(S.DEFAULT_EXTENSIONS.includes(n)&&s&&s.length>0)return r+"-"+s}},"getCustomModuleLayer");var Jo=Object.defineProperty,zo=d((e,t)=>Jo(e,"name",{value:t,configurable:!0}),"i$2");const U=zo(e=>(e.preserveDirectives||{directives:[]}).directives.map(t=>t.replace(/^use /,"")).find(t=>t!=="strict"),"getModuleLayer");var Uo=Object.defineProperty,ae=d((e,t)=>Uo(e,"name",{value:t,configurable:!0}),"c$2");const le=ae((e,t)=>{const o=new Map;return ae(function(n,r){const s=r.getModuleInfo(n);if(!s)return;const{isEntry:i}=s,a=s.meta,p=U(a);if(!i){const l=o.get(n);if(l)return l;const u=Wo(n);if(u)return o.set(n,u),u}if(i){const l=r.getModuleIds();for(const u of l)r.getModuleInfo(u)&&U(a)===p&&(e.has(u)||e.set(u,new Set),e.get(u).add([n,p]))}if(p&&!i&&e.has(n)){const l=[...e.get(n)];if(l.some(([c])=>{if(console.log(c),t.some(m=>m.path===c)){const m=r.getModuleInfo(c);return U(m?m.meta:{})===p}return!1}))return;if(l.every(([,c])=>c===p))return o.has(n)?o.get(n):void 0;const u=`${f.basename(n,f.extname(n))}-${p}`;return o.set(n,u),u}},"splitChunks")},"createSplitChunks");var Ho=Object.defineProperty,Vo=d((e,t)=>Ho(e,"name",{value:t,configurable:!0}),"n$6");const _=Vo((e,t,o)=>t.isDynamicEntry?`chunks/[name].${o}`:`shared/${e.options.name}.[hash].${o}`,"getChunkFilename");var Xo=Object.defineProperty,Go=d((e,t)=>Xo(e,"name",{value:t,configurable:!0}),"s$6");const Yo=process.platform==="win32",ce=Go((e,t)=>{const o=Yo?"\\":"/";return e.name?.includes("node_modules"+o+".pnpm")?(e.name.replace("node_modules"+o+".pnpm","external")+"."+t).replace("node_modules"+o,""):e.name?.includes("node_modules")?e.name.replace("node_modules","external")+"."+t:"[name]."+t},"getEntryFileNames");var Ko=Object.defineProperty,j=d((e,t)=>Ko(e,"name",{value:t,configurable:!0}),"l$4");const Qo=j((e,t)=>{if(e==="esbuild"){if(!t.options.rollup.esbuild)throw new Error("No esbuild options found in your configuration.");t.tsconfig?.config.compilerOptions?.target?.toLowerCase()==="es3"&&(t.logger.warn(["ES3 target is not supported by esbuild, so ES5 will be used instead..","Please set 'target' option in tsconfig to at least ES5 to disable this error"].join(" ")),t.tsconfig.config.compilerOptions.target="es5",t.options.rollup.esbuild.target="es5");let o="node"+w.versions.node.split(".")[0];if(t.pkg.engines?.node){const n=he.minVersion(t.pkg.engines.node);n&&(o="node"+n.major)}if(t.options.rollup.esbuild.target){const n=J(t.options.rollup.esbuild.target);n.some(r=>r.startsWith("node"))||(t.options.rollup.esbuild.target=[...new Set([...J(o),...n])])}else t.options.rollup.esbuild.target=J(o);return t.tsconfig?.config.compilerOptions?.target==="es5"&&(t.options.rollup.esbuild.keepNames=!1,t.logger.debug("Disabling keepNames because target is set to es5")),{minify:t.options.minify,sourceMap:t.options.sourcemap,...t.options.rollup.esbuild,logger:t.logger}}if(e==="swc"){if(!t.options.rollup.swc)throw new Error("No swc options found in your configuration.");return{minify:t.options.minify,...t.options.rollup.swc,jsc:{minify:{compress:{directives:!1},format:{comments:"some"},mangle:{toplevel:!0},sourceMap:t.options.sourcemap,toplevel:t.options.emitCJS??t.options.emitESM},...t.options.rollup.swc.jsc},sourceMaps:t.options.sourcemap}}if(e==="sucrase"){if(!t.options.rollup.sucrase)throw new Error("No sucrase options found in your configuration.");return{...t.options.rollup.sucrase}}throw new Error("A Unknown transformer was provided")},"getTransformerConfig"),Ae=j((e,t)=>e.code==="CIRCULAR_DEPENDENCY"&&/Circular dependency:[\s\S]*node_modules/.test(e.message)?!0:e.code==="UNRESOLVED_IMPORT"?(t.logger.error(`Failed to resolve the module "${e.exporter}" imported by "${g.cyan(f.relative(f.resolve(),e.id))}"
53
+ Is the module installed? Note:
54
+ ↳ to inline a module into your bundle, install it to "devDependencies".
55
+ ↳ to depend on a module via import/require, install it to "dependencies".`),process.exitCode=1,!0):e.code==="MIXED_EXPORTS"&&t.options.cjsInterop===!0,"sharedOnWarn"),pe=new Map,qe=j((e,t,o)=>{const n=j(s=>{for(const[i,a]of Object.entries(t))if(s.startsWith(i))return s.replace(i,a)},"findAlias"),r=Fe(e.tsconfig,!1);return{external(s){const i=n(s);i&&(s=i);const a=X(s),p=V(e.options.externals,a)||V(e.options.externals,s);if(p)return!0;if(s.startsWith(".")||f.isAbsolute(s)||/src[/\\]/.test(s)||e.pkg.name&&s.startsWith(e.pkg.name))return!1;if(r){for(const{find:l}of r)if(l.test(s))return e.logger.debug({message:`Resolved alias ${s} to ${l.source}`,prefix:o}),!1}return!p&&!pe.has(s)&&e.logger.info({message:'Inlined implicit external "'+g.cyan(s)+'". If this is incorrect, add it to the "externals" option.',prefix:o}),pe.set(s,!0),p},input:Object.fromEntries(e.options.entries.map(s=>[s.name,f.resolve(e.options.rootDir,s.input)])),onLog:j((s,i)=>{let a=i.message;switch(i.stack&&(a=`${a}
56
+ ${i.stack}`),s){case"info":{e.logger.info({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"warn":{e.logger.warn({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")});return}case"debug":e.logger.debug({message:a,prefix:o+(i.plugin?":plugin:"+i.plugin:"")})}},"onLog"),onwarn(s,i){Ae(s,e)||s.code||i(s)},watch:e.mode==="watch"?e.options.rollup.watch:!1}},"baseRollupOptions"),Be=j(async e=>{const t=K(e,"build");let o;return e.options.rollup.resolve&&(o=ge.nodeResolve({extensions:S.DEFAULT_EXTENSIONS,...e.options.rollup.resolve})),{...qe(e,t,"dependencies"),output:[e.options.emitCJS&&{chunkFileNames:j(n=>_(e,n,"cjs"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:j(n=>ce(n,"cjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"cjs",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,interop:"compat",sourcemap:e.options.sourcemap,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:le(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}},e.options.emitESM&&{chunkFileNames:j(n=>_(e,n,"mjs"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:j(n=>ce(n,"mjs"),"entryFileNames"),exports:"auto",externalLiveBindings:!1,format:"esm",freeze:!1,generatedCode:{arrowFunctions:!0,constBindings:!0,objectShorthand:!0,preset:"es2015",reservedNamesAsProps:!0,symbols:!0},hoistTransitiveImports:!1,sourcemap:e.options.sourcemap,...e.options.rollup.output,...e.options.rollup.output?.preserveModules?{preserveModules:!0,preserveModulesRoot:e.options.rollup.output.preserveModulesRoot??"src"}:{manualChunks:le(e.dependencyGraphMap,e.buildEntries),preserveModules:!1}}].filter(Boolean),plugins:[Ee(),Te(),e.tsconfig&&Re(e.options.rootDir,e.logger,e.tsconfig),e.tsconfig&&Ce(e.tsconfig,e.logger),e.options.rollup.replace&&be({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&ve({customResolver:o?.resolveId,...e.options.rollup.alias,entries:t}),o,e.options.rollup.polyfillNode&&vt({sourceMap:e.options.sourcemap,...e.options.rollup.polyfillNode}),e.options.rollup.json&&we({...e.options.rollup.json}),fo(e.logger),kt(e.options.entries.filter(n=>n.isExecutable).map(n=>n.name).filter(Boolean)),e.options.rollup.wsam&&at.wasm(e.options.rollup.wsam),e.options.transformer?.(Qo(e.options.transformerName,e)),e.options.cjsInterop&&e.options.emitCJS&&je({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.dynamicVars&&yt(e.options.rollup.dynamicVars),e.options.rollup.commonjs&&ht({extensions:S.DEFAULT_EXTENSIONS,sourceMap:e.options.sourcemap,...e.options.rollup.commonjs}),e.options.rollup.preserveDynamicImports&&{renderDynamicImport(){return{left:"import(",right:")"}}},e.options.rollup.shim&&xo(e.pkg),e.options.rollup.raw&&vo(e.options.rollup.raw),e.options.rollup.jsxRemoveAttributes&&oo({attributes:e.options.rollup.jsxRemoveAttributes.attributes,logger:e.logger}),e.options.rollup.metafile&&lo({outDir:f.resolve(e.options.rootDir,e.options.outDir),rootDir:e.options.rootDir}),e.options.rollup.copy&&Gt(e.options.rollup.copy,e.logger),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dependenciesTemplate=="function"&&xe({licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dependenciesTemplate,logger:e.logger,marker:e.options.rollup.license.dependenciesMarker??"DEPENDENCIES",mode:"dependencies",packageName:e.pkg.name}),e.options.rollup.visualizer&&ct.visualizer({brotliSize:!0,filename:"packem-bundle-analyze.html",gzipSize:!0,projectRoot:e.options.rootDir,sourcemap:e.options.sourcemap,title:"Packem Visualizer",...e.options.rollup.visualizer})].filter(Boolean)}},"getRollupOptions"),Zo=j(async e=>{const{dts:t}=require("rollup-plugin-dts");return t({compilerOptions:{...e.options.rollup.dts.compilerOptions,incremental:void 0,inlineSources:void 0,sourceMap:void 0,tsBuildInfoFile:void 0},respectExternal:e.options.rollup.dts.respectExternal,tsconfig:e.tsconfig?.path})},"createDtsPlugin"),en=zt(Zo),Le=j(async e=>{const t=K(e,"types"),o={load(i){return/\.(?:js|cjs|mjs|jsx|ts|tsx|mts|json)$/.test(i)?null:""},name:"packem:ignore-files"},n=e.tsconfig?.config.compilerOptions;delete n?.lib;let r;e.options.rollup.resolve&&(r=ge.nodeResolve({extensions:S.DEFAULT_EXTENSIONS,...e.options.rollup.resolve}));const s="dts-plugin:"+process.pid+e.tsconfig.path;return{...qe(e,t,"dts"),onwarn(i,a){Ae(i,e)||i.code!=="EMPTY_BUNDLE"&&a(i)},output:[e.options.emitCJS&&{chunkFileNames:j(i=>_(e,i,"d.cts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output},{chunkFileNames:j(i=>_(e,i,"d.mts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts",format:"esm",sourcemap:e.options.sourcemap,...e.options.rollup.output},(e.options.declaration===!0||e.options.declaration==="compatible")&&{chunkFileNames:j(i=>_(e,i,"d.ts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts",format:"cjs",sourcemap:e.options.sourcemap,...e.options.rollup.output}].filter(Boolean),plugins:[Ee(),Te(),e.options.rollup.json&&we({...e.options.rollup.json}),o,e.tsconfig&&Re(e.options.rootDir,e.logger,e.tsconfig),e.tsconfig&&Ce(e.tsconfig,e.logger),e.options.rollup.replace&&be({...e.options.rollup.replace,values:{...e.options.replace,...e.options.rollup.replace.values}}),e.options.rollup.alias&&ve({customResolver:r?.resolveId,...e.options.rollup.alias,entries:t}),r,await en(s)(e),e.options.cjsInterop&&e.options.emitCJS&&je({...e.options.rollup.cjsInterop,logger:e.logger,type:e.pkg.type??"commonjs"}),e.options.rollup.patchTypes&&Co(e.options.rollup.patchTypes,e.logger),xt(),e.options.rollup.license&&e.options.rollup.license.path&&typeof e.options.rollup.license.dtsTemplate=="function"&&xe({licenseFilePath:e.options.rollup.license.path,licenseTemplate:e.options.rollup.license.dtsTemplate,logger:e.logger,marker:e.options.rollup.license.dependenciesMarker??"TYPE_DEPENDENCIES",mode:"types",packageName:e.pkg.name})].filter(Boolean)}},"getRollupDtsOptions");var tn=Object.defineProperty,on=d((e,t)=>tn(e,"name",{value:t,configurable:!0}),"a$3");const nn=on(async e=>{const t=await Be(e);if(await e.hooks.callHook("rollup:options",e,t),Object.keys(t.input).length===0)return;const o=await q.rollup(t);await e.hooks.callHook("rollup:build",e,o);const n=t.output,r=new Map;for(const s of n){const{output:i}=await o.write(s),a=new Set,p=i.filter(u=>u.type==="chunk");for(const u of p){a.add(u.fileName);for(const c of u.imports)e.usedImports.add(c);u.isEntry&&e.buildEntries.push({bytes:Buffer.byteLength(u.code,"utf8"),chunks:u.imports.filter(c=>p.find(m=>m.fileName===c)),exports:u.exports,modules:Object.entries(u.modules).map(([c,m])=>({bytes:m.renderedLength,id:c})),path:u.fileName,type:"entry"})}const l=i.filter(u=>u.type==="asset");for(const u of l)r.has(u.fileName)||r.set(u.fileName,{bytes:Buffer.byteLength(u.source,"utf8"),path:u.fileName,type:"asset"});for(const u of a)e.usedImports.delete(u)}e.buildEntries.push(...r.values())},"build");var rn=Object.defineProperty,R=d((e,t)=>rn(e,"name",{value:t,configurable:!0}),"r$2");const sn=R(async e=>{const t=await Le(e);if(await e.hooks.callHook("rollup:dts:options",e,t),Object.keys(t.input).length===0)return;const o=await q.rollup(t);await e.hooks.callHook("rollup:dts:build",e,o),e.logger.info({message:"Building declaration files...",prefix:"dts"}),e.options.emitCJS&&await o.write({chunkFileNames:R(n=>_(e,n,"d.cts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.cts"}),e.options.emitESM&&await o.write({chunkFileNames:R(n=>_(e,n,"d.mts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.mts"}),(e.options.declaration===!0||e.options.declaration==="compatible")&&await o.write({chunkFileNames:R(n=>_(e,n,"d.ts"),"chunkFileNames"),dir:f.resolve(e.options.rootDir,e.options.outDir),entryFileNames:"[name].d.ts"}),await e.hooks.callHook("rollup:dts:done",e)},"buildTypes");var an=Object.defineProperty,We=d((e,t)=>an(e,"name",{value:t,configurable:!0}),"l$3");const ue=We((e,t,o)=>{const n="watcher:"+t;e.on("change",(r,{event:s})=>{o.info({message:`${g.cyan(f.relative(".",r))} was ${s}d`,prefix:n})}),e.on("restart",()=>{o.info({message:"Rebuilding "+t+"...",prefix:n})}),e.on("event",r=>{r.code==="END"&&o.success({message:"Rebuild "+t+" finished",prefix:n}),r.code==="ERROR"&&o.error({context:[r.error],message:"Rebuild "+t+" failed: "+r.error.message,prefix:n})})},"watchHandler"),ln=We(async e=>{const t=await Be(e);if(await e.hooks.callHook("rollup:options",e,t),Object.keys(t.input).length===0)return;const o=q.watch(t);await e.hooks.callHook("rollup:watch",e,o);const n=[...Array.isArray(t.input)?t.input:typeof t.input=="string"?[t.input]:Object.keys(t.input??{})];let r="Starting watchers for entries:";for(const s of n)r+=g.gray(`
57
+ └─ ${f.relative(process.cwd(),s)}`);if(e.logger.info(r),ue(o,"bundle",e.logger),e.options.declaration){const s=await Le(e);await e.hooks.callHook("rollup:dts:options",e,s);const i=q.watch(s);await e.hooks.callHook("rollup:watch",e,i),ue(i,"types",e.logger)}},"watch");var cn=Object.defineProperty,pn=d((e,t)=>cn(e,"name",{value:t,configurable:!0}),"i$1");const Je=pn(e=>`{ ${Object.keys(e).map(t=>`${t}: ${JSON.stringify(e[t])}`).join(", ")} }`,"dumpObject");var un=Object.defineProperty,T=d((e,t)=>un(e,"name",{value:t,configurable:!0}),"l$2");const dn=C.createFilter,mn=T((e,t)=>{const{sideEffects:o}=t;let n;if(typeof o=="boolean")n=T(()=>o,"hasSideEffects");else if(Array.isArray(o))if(o.length<=0)n=T(()=>!1,"hasSideEffects");else{const r=o.map(s=>s.includes("/")?s:`**/${s}`);n=dn(r,null,{resolve:e})}else n=T(()=>null,"hasSideEffects");return n},"getPackageSideEffect");var fn=Object.defineProperty,gn=d((e,t)=>fn(e,"name",{value:t,configurable:!0}),"t$4");const hn=gn(e=>e.replace(/\.(js|mjs|cjs|ts|mts|cts|json|jsx|tsx)$/,""),"removeExtension");var yn=Object.defineProperty,ze=d((e,t)=>yn(e,"name",{value:t,configurable:!0}),"t$3");const Z=ze(e=>{if(e.endsWith(".mjs")||e.endsWith(".d.mts"))return"esm";if(e.endsWith(".cjs")||e.endsWith(".d.cts"))return"cjs"},"inferExportTypeFromFileName"),Ue=ze((e,t,o,n)=>{if(o){const i=Z(o);if(i)return i}if(e==="module"||e==="import")return"esm";if(e==="require")return"cjs";if(t.length===0)return n==="commonjs"?"cjs":"esm";const[r,...s]=t;return Ue(r,s,o,n)},"inferExportType");var vn=Object.defineProperty,bn=d((e,t)=>vn(e,"name",{value:t,configurable:!0}),"f$3");const ee=bn((e,t,o,n=[])=>{if(!e)return[];if(typeof e=="string"){const r=Z(e),s=t==="module"?"esm":"cjs";if(r&&r!==s)throw new Error(`Exported file "${e}" has an extension that does not match the package.json type "${t}".`);return[{file:e,type:r??s}]}return Object.entries(e).filter(([r])=>!r.endsWith(".json")).flatMap(([r,s])=>r==="types"&&!o?[]:typeof s=="string"?{file:s,type:Ue(r,n,s,t)}:ee(s,t,o,[...n,r]))},"extractExportFilenames");var $n=Object.defineProperty,jn=d((e,t)=>$n(e,"name",{value:t,configurable:!0}),"e");const wn=jn(e=>{const t=f.normalize(e).split("/");return t.map((o,n)=>t.slice(n).join("/")).filter(Boolean)},"getEntrypointPaths");var kn=Object.defineProperty,xn=d((e,t)=>kn(e,"name",{value:t,configurable:!0}),"h$1");const En=xn((e,t,o,n=".")=>{const r=[];t.sort((c,m)=>c.split("/").length-m.split("/").length);const s=ee(e.exports,e.type??"commonjs",o);if(e.bin){const c=typeof e.bin=="string"?[e.bin]:Object.values(e.bin);for(const m of c)s.push({file:m,isExecutable:!0})}e.main&&s.push({file:e.main,type:Z(e.main)??(e.type==="module"?"esm":"cjs")}),e.module&&s.push({file:e.module,type:"esm"}),o===void 0&&(e.types||e.typings)&&s.push({file:e.types??e.typings});const i=e.type==="module";for(const c of s.filter(m=>!m.type)){const m=c.file.endsWith(".js");i&&m||c.file.endsWith(".mjs")?c.type="esm":(!i&&m||c.file.endsWith(".cjs"))&&(c.type="cjs")}let a=!1,p=!1,l=!1;const u=[];for(const c of s){const m=c.file.replace(/(?:\*[^/\\]*|\.d\.(?:m|c)?ts|\.\w+)$/,""),y=m.endsWith("/");if(y&&["./","/"].includes(m))continue;const h=wn(m).reduce(($,E)=>{if($)return $;const N=new RegExp(`(?<=/|$)${E}${y?"":"\\.\\w+"}$`);return t.find(O=>N.test(O))?.replace(/(?:\.d\.(?:m|c)?ts|\.\w+)$/,"")},void 0);if(!h){G.existsSync(f.resolve(n,c.file))||r.push(`Could not find entrypoint for \`${c.file}\``);continue}c.type==="cjs"&&(a=!0),c.type==="esm"&&(p=!0);const v=u.find($=>$.input===h)??u[u.push({input:h})-1];/\.d\.(?:m|c)?ts$/.test(c.file)&&(l=!0),y&&(v.outDir=m),c.isExecutable&&(v.isExecutable=!0)}return{cjs:a,dts:l,entries:u,esm:p,warnings:r}},"inferEntries");var On=Object.defineProperty,_n=d((e,t)=>On(e,"name",{value:t,configurable:!0}),"t$2");const Sn=_n((e,t)=>{const{publishConfig:o}=e;return o&&(o.bin&&(typeof o.bin=="object"||typeof o.bin=="string")&&(e.bin=o.bin),o.type&&typeof o.type=="string"&&o.type!==""&&(e.type=o.type),o.main&&typeof o.main=="string"&&o.main!==""&&(e.main=o.main),o.module&&typeof o.module=="string"&&o.module!==""&&(e.module=o.module),t===void 0&&o.types&&typeof o.types=="string"&&o.types!==""?e.types=o.types:t===void 0&&o.typings&&typeof o.typings=="string"&&o.typings!==""&&(e.typings=o.typings),o.exports&&typeof o.exports=="object"&&(e.exports=o.exports)),e},"overwriteWithPublishConfig");var Dn=Object.defineProperty,Nn=d((e,t)=>Dn(e,"name",{value:t,configurable:!0}),"t$1");const Pn={hooks:{"build:prepare":Nn(function(e){if(e.options.entries.length>0)return;const t=f.join(e.options.rootDir,"src");if(!G.existsSync(t))throw new Error("No 'src' directory found. Please provide entries manually.");const o=b.collectSync(t,{extensions:[],includeDirs:!1,includeSymlinks:!1});if(o.length===0)throw new Error("No source files found in 'src' directory. Please provide entries manually.");let n={...e.pkg};n.publishConfig&&(n=Sn(n,e.options.declaration));const r=En(n,o,e.options.declaration,e.options.rootDir);for(const s of r.warnings)I(e,s);if(e.options.entries.push(...r.entries),e.options.emitCJS===void 0&&r.cjs&&(e.options.emitCJS=!0),e.options.emitESM===void 0&&r.esm&&(e.options.emitESM=!0),e.options.declaration===void 0&&r.dts&&(e.options.declaration=r.dts),e.options.entries.length===0)throw new Error("No entries detected. Please provide entries manually.");e.logger.info("Automatically detected entries:",g.cyan(e.options.entries.map(s=>g.bold(s.input.replace(`${e.options.rootDir}/`,"").replace(/\/$/,"/*"))).join(", ")),g.gray([r.esm&&"esm",r.cjs&&"cjs",r.dts&&"dts"].filter(Boolean).map(s=>`[${s}]`).join(" ")))},"build:prepare")}};var Mn=Object.defineProperty,Fn=d((e,t)=>Mn(e,"name",{value:t,configurable:!0}),"n$2");const He=Fn((e,t,o)=>{const n=ye(t,{esmResolve:!0,interopDefault:!0});try{return n(e)}catch(r){if(r.code!=="MODULE_NOT_FOUND")throw new Error(`Error trying import ${e} from ${t}`,{cause:r});return o}},"tryRequire");var Cn=Object.defineProperty,In=d((e,t)=>Cn(e,"name",{value:t,configurable:!0}),"t");const Rn=In((e,t)=>(e==="auto"?e=Pn:typeof e=="string"&&(e=He(e,t,{})),typeof e=="function"&&(e=e()),e),"resolvePreset");var Tn=Object.defineProperty,An=d((e,t)=>Tn(e,"name",{value:t,configurable:!0}),"o");const qn=An(e=>{const t=new Set,o=new Set(Object.keys(e.pkg.dependencies??{})),n=new Set;for(const r of e.usedImports)o.delete(r),t.add(r);if(Array.isArray(e.options.dependencies))for(const r of e.options.dependencies)o.delete(r);for(const r of t)!V(e.options.externals,r)&&!r.startsWith("chunks/")&&!e.options.dependencies.includes(X(r))&&!e.options.peerDependencies.includes(X(r))&&n.add(r);o.size>0&&I(e,`Potential unused dependencies found: ${[...o].map(r=>g.cyan(r)).join(", ")}`),n.size>0&&I(e,`Potential implicit dependencies found: ${[...n].map(r=>g.cyan(r)).join(", ")}`)},"validateDependencies");var Bn=Object.defineProperty,Ve=d((e,t)=>Bn(e,"name",{value:t,configurable:!0}),"i");const Ln=Ve((e,t)=>gt.distance(e,t)<=e.length/3||t.includes(e),"isSimilar"),Wn=Ve((e,t)=>{const o=e.toLowerCase();return t.filter(n=>Ln(n.toLowerCase(),o))},"findAlternatives");var Jn=Object.defineProperty,de=d((e,t)=>Jn(e,"name",{value:t,configurable:!0}),"n");const zn=de((e,t)=>{const o=new Set([...typeof e.bin=="string"?[e.bin]:Object.values(e.bin??{}),e.main,e.module,t.options.declaration?e.types:"",t.options.declaration?e.typings:"",...ee(e.exports,e.type??"commonjs",t.options.declaration).map(r=>r.file)].map(r=>r&&f.resolve(t.rootDir,r.replace(/\/[^*/]*\*[^\n\r/\u2028\u2029]*(?:[\n\r\u2028\u2029][^*/]*\*[^\n\r/\u2028\u2029]*)*(?:\/.*)?$/,"")))),n=[];for(const r of o)r&&!r.includes("*")&&!G.existsSync(r)&&n.push(r.replace(`${t.rootDir}/`,""));if(n.length>0){const r=de(a=>f.relative(t.rootDir,f.resolve(t.options.outDir,a)),"rPath"),s=t.buildEntries.filter(a=>!a.chunk).map(a=>r(a.path));let i="Potential missing or wrong package.json files:";for(const a of n){const p=Wn(a,s);i+=`
58
+ - `+g.cyan(a)+(p.length>0?g.grey` (did you mean ${p.map(l=>`"${l}"`).join(", ")}?)`:"")}I(t,i)}},"validatePackage");var Un=Object.defineProperty,k=d((e,t)=>Un(e,"name",{value:t,configurable:!0}),"m");const me=k((e,t)=>{e.warnings.size>0&&(t&&e.logger.raw(`
59
+ `),e.logger.warn(`Build is done with some warnings:
60
+
61
+ ${[...e.warnings].map(o=>`- ${o}`).join(`
62
+ `)}`),e.options.failOnWarn&&(e.logger.error("Exiting with code (1). You can change this behavior by setting `failOnWarn: false`."),w.exit(1)))},"logErrors"),Hn=k(e=>{switch(e){case"preserve":case"react-native":return"preserve";case"react":return"transform";case"react-jsx":case"react-jsxdev":return"automatic";default:return}},"resolveTsconfigJsxToJsxRuntime"),Vn=k((e,t,o,n,r,s,i,a)=>{const p=Hn(a?.config.compilerOptions?.jsx),l=Ze.defu(r,i.packem,n,s,{alias:{},clean:!0,declaration:void 0,dependencies:[],devDependencies:[],emitCJS:void 0,emitESM:void 0,entries:[],externals:[...ne.builtinModules,...ne.builtinModules.map(u=>`node:${u}`)],failOnWarn:!0,minify:w.env.NODE_ENV==="production",name:(i.name??"").split("/").pop()??"default",optionalDependencies:[],outDir:"dist",peerDependencies:[],replace:{},rollup:{alias:{},cjsInterop:{addDefaultProperty:!1},commonjs:{ignoreTryCatch:!0,preserveSymlinks:!0,transformMixedEsModules:!1},dts:{compilerOptions:{baseUrl:a?.config.compilerOptions?.baseUrl??".",checkJs:!1,composite:!1,declaration:!0,declarationMap:!1,emitDeclarationOnly:!0,incremental:!1,noEmit:!1,noEmitOnError:!0,preserveSymlinks:!1,skipLibCheck:!0,target:99},respectExternal:!0},dynamicVars:{errorWhenNoFilesFound:!0,include:/\bimport\s*[(/]/},esbuild:{charset:"utf8",include:/\.[jt]sx?$/,jsx:p,jsxDev:a?.config.compilerOptions?.jsx==="react-jsxdev",jsxFactory:a?.config.compilerOptions?.jsxFactory,jsxFragment:a?.config.compilerOptions?.jsxFragmentFactory,jsxImportSource:a?.config.compilerOptions?.jsxImportSource,jsxSideEffects:!0,keepNames:!0,minifyWhitespace:w.env.NODE_ENV==="production",sourcesContent:!1,target:a?.config.compilerOptions?.target,treeShaking:!0,tsconfigRaw:a?.config},json:{preferConst:!0},license:{dependenciesTemplate:k((u,c,m)=>`
63
+ # Licenses of bundled dependencies
64
+ The published ${m} artifact additionally contains code with the following licenses:
65
+ ${u.join(", ")}
66
+
67
+ # Bundled dependencies:
68
+ `+c,"dependenciesTemplate"),dtsTemplate:k((u,c,m)=>`
69
+ # Licenses of bundled types
70
+ The published ${m} artifact additionally contains code with the following licenses:
71
+ ${u.join(", ")}
72
+
73
+ # Bundled types:
74
+ `+c,"dtsTemplate")},patchTypes:{},polyfillNode:{},preserveDynamicImports:!0,raw:{exclude:S.EXCLUDE_REGEXP,include:["**/*.data","**/*.txt"]},replace:{objectGuards:!0,preventAssignment:!0},resolve:{allowExportsFolderMapping:!1,preferBuiltins:!1},shim:!0,sucrase:{disableESTransforms:!0,enableLegacyBabel5ModuleInterop:!1,enableLegacyTypeScriptModuleInterop:a?.config.compilerOptions?.esModuleInterop===!1,include:/\.[jt]sx?$/,injectCreateRequireForImportRequire:!1,preserveDynamicImport:!0,production:w.env.NODE_ENV==="production",...a?.config.compilerOptions?.jsx&&["react","react-jsx","react-jsxdev"].includes(a.config.compilerOptions.jsx)?{jsxFragmentPragma:a.config.compilerOptions.jsxFragmentFactory,jsxImportSource:a.config.compilerOptions.jsxImportSource,jsxPragma:a.config.compilerOptions.jsxFactory,jsxRuntime:p,transforms:["typescript","jsx",...a.config.compilerOptions.esModuleInterop?["imports"]:[]]}:{transforms:["typescript",...a?.config.compilerOptions?.esModuleInterop?["imports"]:[]]}},swc:{include:/\.[jt]sx?$/,inlineSourcesContent:!1,inputSourceMap:!1,isModule:!0,jsc:{experimental:{keepImportAttributes:!0},externalHelpers:!1,keepClassNames:!0,loose:!0,parser:{decorators:a?.config.compilerOptions?.experimentalDecorators,dynamicImport:!0,syntax:a?"typescript":"ecmascript",[a?"tsx":"jsx"]:!0},target:a?.config.compilerOptions?.target?.toLowerCase(),transform:{decoratorMetadata:a?.config.compilerOptions?.emitDecoratorMetadata,legacyDecorator:a?.config.compilerOptions?.experimentalDecorators,react:{development:w.env.NODE_ENV!=="production",pragma:a?.config.compilerOptions?.jsxFactory,pragmaFrag:a?.config.compilerOptions?.jsxFragmentFactory,runtime:p,throwIfNamespace:!0},treatConstEnumAsEnum:a?.config.compilerOptions?.preserveConstEnums,useDefineForClassFields:a?.config.compilerOptions?.useDefineForClassFields}},module:{ignoreDynamic:!0,importInterop:"none",preserveImportMeta:!0,strict:!1,strictMode:!1,type:"es6"}},treeshake:{moduleSideEffects:mn(t,i),preset:"recommended"},watch:{clearScreen:!0,exclude:S.EXCLUDE_REGEXP}},rootDir:t,sourcemap:!1,stub:o==="jit",stubOptions:{jiti:{alias:{},esmResolve:!0,interopDefault:!0}},transformerName:void 0});if(!l.transformerName){const u=new Set([...Object.keys(i.dependencies??{}),...Object.keys(i.devDependencies??{})]);if(u.has("esbuild"))l.transformerName="esbuild";else if(u.has("@swc/core"))l.transformerName="swc";else if(u.has("sucrase"))l.transformerName="sucrase";else throw new Error("Unknown transformer, check your transformer options or install one of the supported transformers: esbuild, swc, sucrase");e.info('Using "'+g.cyan(l.transformerName)+'" as transformer.')}return l.outDir=f.resolve(l.rootDir,l.outDir),l.rollup.resolve&&l.rollup.resolve.preferBuiltins===!0&&(l.rollup.polyfillNode=!1,e.debug("Disabling polyfillNode because preferBuiltins is set to true")),a?.config.compilerOptions?.isolatedModules||e.warn(`'compilerOptions.isolatedModules' is not enabled in tsconfig.
75
+ Because none of the third-party transpilers, packem uses under the hood is type-aware, some techniques or features often used in TypeScript are not properly checked and can cause mis-compilation or even runtime errors.
76
+ To mitigate this, you should set the isolatedModules option to true in tsconfig and let your IDE warn you when such incompatible constructs are used.`),l.dependencies=Object.keys(i.dependencies??{}),l.peerDependencies=Object.keys(i.peerDependencies??{}),l.devDependencies=Object.keys(i.devDependencies??{}),l.optionalDependencies=Object.keys(i.optionalDependencies??{}),l.externals.push(...l.dependencies,...l.peerDependencies,...l.optionalDependencies),l},"generateOptions"),Xn=k(async(e,t)=>{e.options.entries=e.options.entries.map(o=>typeof o=="string"?{input:o}:o);for await(const o of e.options.entries){if(typeof o.name!="string"){let n=f.isAbsolute(o.input)?f.relative(t,o.input):f.normalize(o.input);n.startsWith("./")&&(n=n.slice(2)),o.name=hn(n.replace(/^src\//,""))}if(!o.input)throw new Error(`Missing entry input: ${Je(o)}`);if(!e.options.declaration&&o.declaration===void 0&&(o.declaration=e.options.declaration),o.input=f.resolve(e.options.rootDir,o.input),!b.isAccessibleSync(o.input)){const n=new Set(await B.readdir(f.dirname(o.input)));let r=!1;for(const s of S.DEFAULT_EXTENSIONS)if(n.has(f.basename(o.input)+s)){r=!0;break}if(!r)throw new Ye.NotFoundError("Your configured entry: "+g.cyan(o.input)+" does not exist.")}o.outDir=f.resolve(e.options.rootDir,o.outDir??e.options.outDir)}},"prepareEntries"),Gn=k((e,t,o)=>{const n=k(s=>f.relative(t.rootDir,f.resolve(t.options.outDir,s)),"rPath");let r=!1;for(const s of t.buildEntries.filter(i=>!i.chunk)){let i=s.bytes??0;for(const p of s.chunks??[])i+=t.buildEntries.find(l=>l.path===p)?.bytes??0;let a=` ${g.bold(n(s.path))} (${["total size: "+g.cyan(P.formatBytes(i)),s.type!=="asset"&&s.bytes&&"chunk size: "+g.cyan(P.formatBytes(s.bytes))].filter(Boolean).join(", ")})`;if(a+=s.exports?.length?`
77
+ exports: `+g.gray(s.exports.join(", ")):"",s.chunks?.length&&(a+=`
78
+ ${s.chunks.map(p=>{const l=t.buildEntries.find(u=>u.path===p)??{};return g.gray(" └─ "+n(p)+g.bold(l.bytes?" ("+P.formatBytes(l?.bytes)+")":""))}).join(`
79
+ `)}`),s.modules&&s.modules.length>0){const p=s.modules.filter(l=>l.id.includes("node_modules")).sort((l,u)=>(u.bytes||0)-(l.bytes||0)).map(l=>g.gray(" 📦 "+n(l.id)+g.bold(l.bytes?" ("+P.formatBytes(l.bytes)+")":""))).join(`
80
+ `);a+=p.length>0?`
81
+ inlined modules:
82
+ `+p:""}if(t.options.declaration&&s.type==="entry"){let p=s.path.replace(/\.js$/,".d.ts"),l="commonjs";s.path.endsWith(".cjs")?p=s.path.replace(/\.cjs$/,".d.cts"):s.path.endsWith(".mjs")&&(l="module",p=s.path.replace(/\.mjs$/,".d.mts"));const u=t.buildEntries.find(c=>c.path.endsWith(p));if(u){let c;(t.options.declaration===!0||t.options.declaration==="compatible")&&!p.includes(".d.ts")&&(p=p.replace(l==="commonjs"?".d.c":".d.m",".d."),c=t.buildEntries.find(m=>m.path.endsWith(p))),a+=c&&l===o.type?`
83
+ types:
84
+ `+[u,c].map(m=>g.gray(" └─ ")+g.bold(n(m.path))+" (total size: "+g.cyan(P.formatBytes(m.bytes??0))+")").join(`
85
+ `):`
86
+ types: `+g.bold(n(u.path))+" (total size: "+g.cyan(P.formatBytes(u.bytes??0))+")"}}r=!0,a+=`
87
+
88
+ `,e.raw(s.chunk?g.gray(a):a)}return r&&e.raw("Σ Total dist size (byte size):",g.cyan(P.formatBytes(t.buildEntries.reduce((s,i)=>s+(i.bytes??0),0))),`
89
+ `),r},"showSizeInformation"),Yn=k(async(e,t,o,n,r,s,i,a,p)=>{const l=Rn(n,t),u=Vn(e,t,o,r,s,l,i,a);b.ensureDirSync(u.outDir);const c={buildEntries:[],dependencyGraphMap:new Map,hooks:et.createHooks(),logger:e,mode:o,options:u,pkg:i,rootDir:t,tsconfig:a,usedImports:new Set,warnings:new Set};if(l.hooks&&c.hooks.addHooks(l.hooks),r.hooks&&c.hooks.addHooks(r.hooks),s.hooks&&c.hooks.addHooks(s.hooks),await c.hooks.callHook("build:prepare",c),c.options.emitESM===!1&&c.options.emitCJS===!1)throw new Error("Both emitESM and emitCJS are disabled. At least one of them must be enabled.");if(c.options.declaration&&a===void 0)throw new Error("Cannot build declaration files without a tsconfig.json");c.options.emitESM===void 0&&e.info("Emitting ESM bundles, is disabled."),c.options.emitCJS===void 0&&e.info("Emitting CJS bundles, is disabled."),c.options.declaration||e.info("Declaration files, are disabled."),await Xn(c,t),await c.hooks.callHook("build:before",c);let m="Building";if(o==="watch"?m="Watching":o==="jit"&&(m="Stubbing"),e.info(g.cyan(`${m} ${c.options.name}`)),e.debug(`${g.bold("Root dir:")} ${c.options.rootDir}
90
+ ${g.bold("Entries:")}
91
+ ${c.options.entries.map(h=>` ${Je(h)}`).join(`
92
+ `)}`),c.options.clean)for(const h of new Set(c.options.entries.map(v=>v.outDir).filter(Boolean).sort()))h===c.options.rootDir||c.options.rootDir.startsWith(h.endsWith("/")?h:`${h}/`)||p.some(v=>h.startsWith(v))||(p.push(h),e.info(`Cleaning dist directory: \`./${f.relative(c.options.rootDir,h)}\``),await b.emptyDir(h));if(c.options.stub){await It(c),await c.hooks.callHook("build:done",c);return}if(o==="watch"){await ln(c),me(c,!1);return}await Promise.all([nn(c),c.options.declaration&&sn(c)]),e.success(g.green(`Build succeeded for ${c.options.name}`));for await(const h of b.walk(c.options.outDir)){let v=c.buildEntries.find($=>f.join(c.options.outDir,$.path)===h.path);if(v||(v={chunk:!0,path:h.path},c.buildEntries.push(v)),!v.bytes){const $=await B.stat(f.resolve(c.options.outDir,h.path));v.bytes=$.size}}const y=Gn(e,c,i);qn(c),zn(i,c),await c.hooks.callHook("build:done",c),me(c,y)},"build"),Kn=k(async(e,t,o={})=>{const{configPath:n,debug:r,tsconfigPath:s,...i}=o,a=[new W.MessageFormatterProcessor,new W.ErrorProcessor];r&&a.push(new W.CallerProcessor);const p=Qe.createPail({logLevel:r?"debug":"informational",processors:a,scope:"packem"});p.wrapAll(),e=f.resolve(w.cwd(),e),p.debug("Root directory:",e);let l;if(s)await b.isAccessible(s)||(p.error("tsconfig.json not found at",s),w.exit(1)),l={config:te.readTsConfig(s),path:s},p.info("Using tsconfig settings found at",s);else try{l=await te.findTSConfig(e),p.debug("Using tsconfig settings found at",l.path)}catch{p.info("No tsconfig.json or jsconfig.json found.")}try{const u=f.join(e,"package.json"),c=Ke.parsePackageJson(u);p.debug("Using package.json found at",u);const m=n??"./packem.config",y=He(m,e,[]);p.debug("Using packem.config.ts found at",f.join(e,m));const h=(Array.isArray(y)?y:[y]).filter(Boolean),v=Date.now(),$=k(()=>Math.floor(Date.now()-v)+"ms","getDuration");let E=c.packem?.preset??o.preset??"auto";const N=[],O=[];for(const F of h)F.preset&&(E=F.preset),O.push(Yn(p,e,t,E,i,F,c,l,N));await Promise.all(O),p.raw(`
93
+ ⚡️ Build run in ${$()}`),p.restoreAll(),w.exit(0)}catch(u){p.error("An error occurred while building",u),w.exit(1)}},"createBundler");module.exports=Kn;
@@ -1,4 +1,4 @@
1
- import { M as Mode, B as BuildConfig } from './shared/packem.eS2oNfLM.cjs';
1
+ import { M as Mode, B as BuildConfig } from './shared/packem.CGAPjagQ.cjs';
2
2
  import '@rollup/plugin-alias';
3
3
  import '@rollup/plugin-commonjs';
4
4
  import '@rollup/plugin-json';
@@ -14,8 +14,11 @@ import 'rollup';
14
14
  import 'rollup-plugin-dts';
15
15
  import 'rollup-plugin-polyfill-node';
16
16
  import 'rollup-plugin-visualizer';
17
+ import './shared/packem.D09xRBAa.cjs';
17
18
  import 'esbuild';
19
+ import './shared/packem.DvWhOdt5.cjs';
18
20
  import 'sucrase';
21
+ import './shared/packem.C44tLE3n.cjs';
19
22
 
20
23
  declare const createBundler: (rootDirectory: string, mode: Mode, inputConfig?: {
21
24
  configPath?: string;
@@ -1,4 +1,4 @@
1
- import { M as Mode, B as BuildConfig } from './shared/packem.eS2oNfLM.mjs';
1
+ import { M as Mode, B as BuildConfig } from './shared/packem.BchP_OVQ.mjs';
2
2
  import '@rollup/plugin-alias';
3
3
  import '@rollup/plugin-commonjs';
4
4
  import '@rollup/plugin-json';
@@ -14,8 +14,11 @@ import 'rollup';
14
14
  import 'rollup-plugin-dts';
15
15
  import 'rollup-plugin-polyfill-node';
16
16
  import 'rollup-plugin-visualizer';
17
+ import './shared/packem.D09xRBAa.mjs';
17
18
  import 'esbuild';
19
+ import './shared/packem.DvWhOdt5.mjs';
18
20
  import 'sucrase';
21
+ import './shared/packem.C44tLE3n.mjs';
19
22
 
20
23
  declare const createBundler: (rootDirectory: string, mode: Mode, inputConfig?: {
21
24
  configPath?: string;