@hyperfrontend/builder 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (561) hide show
  1. package/CHANGELOG.md +63 -0
  2. package/FUNDING.md +141 -0
  3. package/LICENSE.md +21 -0
  4. package/README.md +162 -0
  5. package/SECURITY.md +82 -0
  6. package/THIRD_PARTY_LICENSES.md +13 -0
  7. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.cjs.js +7 -0
  8. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js +5 -0
  9. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.cjs.js +13 -0
  10. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/console/index.esm.js +8 -0
  11. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.cjs.js +5 -0
  12. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/date/index.esm.js +4 -0
  13. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/encoding/index.cjs.js +1 -0
  14. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/encoding/index.esm.js +1 -0
  15. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.cjs.js +6 -0
  16. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js +5 -0
  17. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/function/index.cjs.js +1 -0
  18. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/function/index.esm.js +1 -0
  19. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.cjs.js +7 -0
  20. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.esm.js +5 -0
  21. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.cjs.js +6 -0
  22. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/map/index.esm.js +5 -0
  23. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.cjs.js +7 -0
  24. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/math/index.esm.js +5 -0
  25. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/messaging/index.cjs.js +1 -0
  26. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/messaging/index.esm.js +1 -0
  27. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.cjs.js +1 -0
  28. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/number/index.esm.js +1 -0
  29. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.cjs.js +13 -0
  30. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js +8 -0
  31. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.cjs.js +6 -0
  32. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.esm.js +5 -0
  33. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/reflect/index.cjs.js +1 -0
  34. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/reflect/index.esm.js +1 -0
  35. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/regexp/index.cjs.js +6 -0
  36. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/regexp/index.esm.js +5 -0
  37. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.cjs.js +6 -0
  38. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.esm.js +5 -0
  39. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/string/index.cjs.js +1 -0
  40. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/string/index.esm.js +1 -0
  41. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/symbol/index.cjs.js +1 -0
  42. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/symbol/index.esm.js +1 -0
  43. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/timers/index.cjs.js +13 -0
  44. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/timers/index.esm.js +10 -0
  45. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.cjs.js +1 -0
  46. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/typed-arrays/index.esm.js +1 -0
  47. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/url/index.cjs.js +6 -0
  48. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/url/index.esm.js +5 -0
  49. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-map/index.cjs.js +1 -0
  50. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-map/index.esm.js +1 -0
  51. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-set/index.cjs.js +1 -0
  52. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/weak-set/index.esm.js +1 -0
  53. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/websocket/index.cjs.js +1 -0
  54. package/_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/websocket/index.esm.js +1 -0
  55. package/_dependencies/@hyperfrontend/immutable-api-utils/index.cjs.js +1 -0
  56. package/_dependencies/@hyperfrontend/immutable-api-utils/index.esm.js +1 -0
  57. package/_dependencies/@hyperfrontend/immutable-api-utils/locked/index.cjs.js +1 -0
  58. package/_dependencies/@hyperfrontend/immutable-api-utils/locked/index.esm.js +1 -0
  59. package/_dependencies/@hyperfrontend/immutable-api-utils/locked-prop-descriptors/index.cjs.js +1 -0
  60. package/_dependencies/@hyperfrontend/immutable-api-utils/locked-prop-descriptors/index.esm.js +1 -0
  61. package/_dependencies/@hyperfrontend/immutable-api-utils/locked-props/index.cjs.js +1 -0
  62. package/_dependencies/@hyperfrontend/immutable-api-utils/locked-props/index.esm.js +1 -0
  63. package/_dependencies/@hyperfrontend/logging/index.cjs.js +191 -0
  64. package/_dependencies/@hyperfrontend/logging/index.esm.js +186 -0
  65. package/_dependencies/@hyperfrontend/project-scope/cli/index.cjs.js +196 -0
  66. package/_dependencies/@hyperfrontend/project-scope/cli/index.esm.js +196 -0
  67. package/_dependencies/@hyperfrontend/project-scope/core/encoding/index.cjs.js +82 -0
  68. package/_dependencies/@hyperfrontend/project-scope/core/encoding/index.esm.js +82 -0
  69. package/_dependencies/@hyperfrontend/project-scope/core/fs/index.cjs.js +154 -0
  70. package/_dependencies/@hyperfrontend/project-scope/core/fs/index.esm.js +149 -0
  71. package/_dependencies/@hyperfrontend/project-scope/core/index.cjs.js +459 -0
  72. package/_dependencies/@hyperfrontend/project-scope/core/index.esm.js +440 -0
  73. package/_dependencies/@hyperfrontend/project-scope/core/logger/index.cjs.js +84 -0
  74. package/_dependencies/@hyperfrontend/project-scope/core/logger/index.esm.js +80 -0
  75. package/_dependencies/@hyperfrontend/project-scope/core/path/index.cjs.js +26 -0
  76. package/_dependencies/@hyperfrontend/project-scope/core/path/index.esm.js +22 -0
  77. package/_dependencies/@hyperfrontend/project-scope/core/platform/index.cjs.js +1 -0
  78. package/_dependencies/@hyperfrontend/project-scope/core/platform/index.esm.js +1 -0
  79. package/_dependencies/@hyperfrontend/project-scope/heuristics/dependencies/index.cjs.js +90 -0
  80. package/_dependencies/@hyperfrontend/project-scope/heuristics/dependencies/index.esm.js +90 -0
  81. package/_dependencies/@hyperfrontend/project-scope/heuristics/entry-points/index.cjs.js +174 -0
  82. package/_dependencies/@hyperfrontend/project-scope/heuristics/entry-points/index.esm.js +174 -0
  83. package/_dependencies/@hyperfrontend/project-scope/heuristics/framework/index.cjs.js +174 -0
  84. package/_dependencies/@hyperfrontend/project-scope/heuristics/framework/index.esm.js +172 -0
  85. package/_dependencies/@hyperfrontend/project-scope/heuristics/index.cjs.js +184 -0
  86. package/_dependencies/@hyperfrontend/project-scope/heuristics/index.esm.js +184 -0
  87. package/_dependencies/@hyperfrontend/project-scope/heuristics/project-type/index.cjs.js +172 -0
  88. package/_dependencies/@hyperfrontend/project-scope/heuristics/project-type/index.esm.js +172 -0
  89. package/_dependencies/@hyperfrontend/project-scope/index.cjs.js +222 -0
  90. package/_dependencies/@hyperfrontend/project-scope/index.esm.js +219 -0
  91. package/_dependencies/@hyperfrontend/project-scope/models/index.cjs.js +2 -0
  92. package/_dependencies/@hyperfrontend/project-scope/models/index.esm.js +1 -0
  93. package/_dependencies/@hyperfrontend/project-scope/nx/index.cjs.js +94 -0
  94. package/_dependencies/@hyperfrontend/project-scope/nx/index.esm.js +94 -0
  95. package/_dependencies/@hyperfrontend/project-scope/project/config/index.cjs.js +172 -0
  96. package/_dependencies/@hyperfrontend/project-scope/project/config/index.esm.js +172 -0
  97. package/_dependencies/@hyperfrontend/project-scope/project/index.cjs.js +176 -0
  98. package/_dependencies/@hyperfrontend/project-scope/project/index.esm.js +176 -0
  99. package/_dependencies/@hyperfrontend/project-scope/project/package/index.cjs.js +88 -0
  100. package/_dependencies/@hyperfrontend/project-scope/project/package/index.esm.js +88 -0
  101. package/_dependencies/@hyperfrontend/project-scope/project/root/index.cjs.js +154 -0
  102. package/_dependencies/@hyperfrontend/project-scope/project/root/index.esm.js +153 -0
  103. package/_dependencies/@hyperfrontend/project-scope/project/traversal/index.cjs.js +91 -0
  104. package/_dependencies/@hyperfrontend/project-scope/project/traversal/index.esm.js +89 -0
  105. package/_dependencies/@hyperfrontend/project-scope/tech/backend/index.cjs.js +88 -0
  106. package/_dependencies/@hyperfrontend/project-scope/tech/backend/index.esm.js +88 -0
  107. package/_dependencies/@hyperfrontend/project-scope/tech/build/index.cjs.js +88 -0
  108. package/_dependencies/@hyperfrontend/project-scope/tech/build/index.esm.js +88 -0
  109. package/_dependencies/@hyperfrontend/project-scope/tech/frontend/index.cjs.js +88 -0
  110. package/_dependencies/@hyperfrontend/project-scope/tech/frontend/index.esm.js +88 -0
  111. package/_dependencies/@hyperfrontend/project-scope/tech/index.cjs.js +171 -0
  112. package/_dependencies/@hyperfrontend/project-scope/tech/index.esm.js +169 -0
  113. package/_dependencies/@hyperfrontend/project-scope/tech/legacy/index.cjs.js +88 -0
  114. package/_dependencies/@hyperfrontend/project-scope/tech/legacy/index.esm.js +88 -0
  115. package/_dependencies/@hyperfrontend/project-scope/tech/linting/index.cjs.js +88 -0
  116. package/_dependencies/@hyperfrontend/project-scope/tech/linting/index.esm.js +88 -0
  117. package/_dependencies/@hyperfrontend/project-scope/tech/monorepo/index.cjs.js +88 -0
  118. package/_dependencies/@hyperfrontend/project-scope/tech/monorepo/index.esm.js +88 -0
  119. package/_dependencies/@hyperfrontend/project-scope/tech/testing/index.cjs.js +88 -0
  120. package/_dependencies/@hyperfrontend/project-scope/tech/testing/index.esm.js +88 -0
  121. package/_dependencies/@hyperfrontend/project-scope/tech/types/index.cjs.js +88 -0
  122. package/_dependencies/@hyperfrontend/project-scope/tech/types/index.esm.js +88 -0
  123. package/_dependencies/@hyperfrontend/project-scope/vfs/index.cjs.js +102 -0
  124. package/_dependencies/@hyperfrontend/project-scope/vfs/index.esm.js +102 -0
  125. package/_dependencies/@hyperfrontend/versioning/changelog/compare/index.cjs.js +1 -0
  126. package/_dependencies/@hyperfrontend/versioning/changelog/compare/index.esm.js +1 -0
  127. package/_dependencies/@hyperfrontend/versioning/changelog/index.cjs.js +1 -0
  128. package/_dependencies/@hyperfrontend/versioning/changelog/index.esm.js +1 -0
  129. package/_dependencies/@hyperfrontend/versioning/changelog/models/index.cjs.js +1 -0
  130. package/_dependencies/@hyperfrontend/versioning/changelog/models/index.esm.js +1 -0
  131. package/_dependencies/@hyperfrontend/versioning/changelog/operations/index.cjs.js +1 -0
  132. package/_dependencies/@hyperfrontend/versioning/changelog/operations/index.esm.js +1 -0
  133. package/_dependencies/@hyperfrontend/versioning/changelog/parse/index.cjs.js +1 -0
  134. package/_dependencies/@hyperfrontend/versioning/changelog/parse/index.esm.js +1 -0
  135. package/_dependencies/@hyperfrontend/versioning/changelog/serialize/index.cjs.js +1 -0
  136. package/_dependencies/@hyperfrontend/versioning/changelog/serialize/index.esm.js +1 -0
  137. package/_dependencies/@hyperfrontend/versioning/commits/author/index.cjs.js +2403 -0
  138. package/_dependencies/@hyperfrontend/versioning/commits/author/index.esm.js +2381 -0
  139. package/_dependencies/@hyperfrontend/versioning/commits/classify/index.cjs.js +38 -0
  140. package/_dependencies/@hyperfrontend/versioning/commits/classify/index.esm.js +30 -0
  141. package/_dependencies/@hyperfrontend/versioning/commits/format/index.cjs.js +1 -0
  142. package/_dependencies/@hyperfrontend/versioning/commits/format/index.esm.js +1 -0
  143. package/_dependencies/@hyperfrontend/versioning/commits/index.cjs.js +2457 -0
  144. package/_dependencies/@hyperfrontend/versioning/commits/index.esm.js +2407 -0
  145. package/_dependencies/@hyperfrontend/versioning/commits/models/index.cjs.js +1 -0
  146. package/_dependencies/@hyperfrontend/versioning/commits/models/index.esm.js +1 -0
  147. package/_dependencies/@hyperfrontend/versioning/commits/parse/index.cjs.js +1 -0
  148. package/_dependencies/@hyperfrontend/versioning/commits/parse/index.esm.js +1 -0
  149. package/_dependencies/@hyperfrontend/versioning/commits/validate/index.cjs.js +27 -0
  150. package/_dependencies/@hyperfrontend/versioning/commits/validate/index.esm.js +25 -0
  151. package/_dependencies/@hyperfrontend/versioning/flow/executor/index.cjs.js +36 -0
  152. package/_dependencies/@hyperfrontend/versioning/flow/executor/index.esm.js +36 -0
  153. package/_dependencies/@hyperfrontend/versioning/flow/index.cjs.js +51 -0
  154. package/_dependencies/@hyperfrontend/versioning/flow/index.esm.js +51 -0
  155. package/_dependencies/@hyperfrontend/versioning/flow/models/index.cjs.js +30 -0
  156. package/_dependencies/@hyperfrontend/versioning/flow/models/index.esm.js +28 -0
  157. package/_dependencies/@hyperfrontend/versioning/flow/presets/index.cjs.js +47 -0
  158. package/_dependencies/@hyperfrontend/versioning/flow/presets/index.esm.js +45 -0
  159. package/_dependencies/@hyperfrontend/versioning/flow/steps/index.cjs.js +47 -0
  160. package/_dependencies/@hyperfrontend/versioning/flow/steps/index.esm.js +45 -0
  161. package/_dependencies/@hyperfrontend/versioning/git/index.cjs.js +8 -0
  162. package/_dependencies/@hyperfrontend/versioning/git/index.esm.js +9 -0
  163. package/_dependencies/@hyperfrontend/versioning/git/models/index.cjs.js +1 -0
  164. package/_dependencies/@hyperfrontend/versioning/git/models/index.esm.js +1 -0
  165. package/_dependencies/@hyperfrontend/versioning/git/operations/index.cjs.js +3 -0
  166. package/_dependencies/@hyperfrontend/versioning/git/operations/index.esm.js +3 -0
  167. package/_dependencies/@hyperfrontend/versioning/index.cjs.js +2481 -0
  168. package/_dependencies/@hyperfrontend/versioning/index.esm.js +2423 -0
  169. package/_dependencies/@hyperfrontend/versioning/registry/index.cjs.js +1 -0
  170. package/_dependencies/@hyperfrontend/versioning/registry/index.esm.js +1 -0
  171. package/_dependencies/@hyperfrontend/versioning/registry/models/index.cjs.js +1 -0
  172. package/_dependencies/@hyperfrontend/versioning/registry/models/index.esm.js +1 -0
  173. package/_dependencies/@hyperfrontend/versioning/registry/npm/index.cjs.js +1 -0
  174. package/_dependencies/@hyperfrontend/versioning/registry/npm/index.esm.js +1 -0
  175. package/_dependencies/@hyperfrontend/versioning/repository/index.cjs.js +18 -0
  176. package/_dependencies/@hyperfrontend/versioning/repository/index.esm.js +17 -0
  177. package/_dependencies/@hyperfrontend/versioning/repository/models/index.cjs.js +11 -0
  178. package/_dependencies/@hyperfrontend/versioning/repository/models/index.esm.js +10 -0
  179. package/_dependencies/@hyperfrontend/versioning/repository/parse/index.cjs.js +184 -0
  180. package/_dependencies/@hyperfrontend/versioning/repository/parse/index.esm.js +185 -0
  181. package/_dependencies/@hyperfrontend/versioning/repository/url/index.cjs.js +10 -0
  182. package/_dependencies/@hyperfrontend/versioning/repository/url/index.esm.js +8 -0
  183. package/_dependencies/@hyperfrontend/versioning/semver/compare/index.cjs.js +1 -0
  184. package/_dependencies/@hyperfrontend/versioning/semver/compare/index.esm.js +1 -0
  185. package/_dependencies/@hyperfrontend/versioning/semver/format/index.cjs.js +1 -0
  186. package/_dependencies/@hyperfrontend/versioning/semver/format/index.esm.js +1 -0
  187. package/_dependencies/@hyperfrontend/versioning/semver/increment/index.cjs.js +1 -0
  188. package/_dependencies/@hyperfrontend/versioning/semver/increment/index.esm.js +1 -0
  189. package/_dependencies/@hyperfrontend/versioning/semver/index.cjs.js +1 -0
  190. package/_dependencies/@hyperfrontend/versioning/semver/index.esm.js +1 -0
  191. package/_dependencies/@hyperfrontend/versioning/semver/models/index.cjs.js +1 -0
  192. package/_dependencies/@hyperfrontend/versioning/semver/models/index.esm.js +1 -0
  193. package/_dependencies/@hyperfrontend/versioning/semver/parse/index.cjs.js +1 -0
  194. package/_dependencies/@hyperfrontend/versioning/semver/parse/index.esm.js +1 -0
  195. package/_dependencies/@hyperfrontend/versioning/workspace/discovery/index.cjs.js +29 -0
  196. package/_dependencies/@hyperfrontend/versioning/workspace/discovery/index.esm.js +29 -0
  197. package/_dependencies/@hyperfrontend/versioning/workspace/index.cjs.js +29 -0
  198. package/_dependencies/@hyperfrontend/versioning/workspace/index.esm.js +29 -0
  199. package/_dependencies/@hyperfrontend/versioning/workspace/models/index.cjs.js +1 -0
  200. package/_dependencies/@hyperfrontend/versioning/workspace/models/index.esm.js +1 -0
  201. package/_dependencies/@hyperfrontend/versioning/workspace/operations/index.cjs.js +2 -0
  202. package/_dependencies/@hyperfrontend/versioning/workspace/operations/index.esm.js +2 -0
  203. package/_dependencies/@rollup/plugin-commonjs/index.cjs.js +6629 -0
  204. package/_dependencies/@rollup/plugin-commonjs/index.esm.js +6608 -0
  205. package/_dependencies/@rollup/plugin-json/index.cjs.js +2324 -0
  206. package/_dependencies/@rollup/plugin-json/index.esm.js +2322 -0
  207. package/_dependencies/@rollup/plugin-node-resolve/index.cjs.js +5430 -0
  208. package/_dependencies/@rollup/plugin-node-resolve/index.esm.js +5424 -0
  209. package/_dependencies/@rollup/plugin-terser/index.cjs.js +33220 -0
  210. package/_dependencies/@rollup/plugin-terser/index.esm.js +33217 -0
  211. package/_dependencies/@rollup/plugin-typescript/index.cjs.js +4840 -0
  212. package/_dependencies/@rollup/plugin-typescript/index.esm.js +4819 -0
  213. package/_dependencies/postject/index.cjs.js +5140 -0
  214. package/_dependencies/postject/index.esm.js +5131 -0
  215. package/_dependencies/rollup/index.cjs.js +24668 -0
  216. package/_dependencies/rollup/index.d.ts +1921 -0
  217. package/_dependencies/rollup/index.esm.js +24652 -0
  218. package/_dependencies/rollup-plugin-dts/index.cjs.js +6547 -0
  219. package/_dependencies/rollup-plugin-dts/index.esm.js +6537 -0
  220. package/_shared/bin/format/index.cjs.js +7 -0
  221. package/_shared/bin/format/index.esm.js +5 -0
  222. package/_shared/bin/native/codesign/index.cjs.js +30 -0
  223. package/_shared/bin/native/codesign/index.esm.js +26 -0
  224. package/_shared/bin/native/host-binary/index.cjs.js +13 -0
  225. package/_shared/bin/native/host-binary/index.esm.js +11 -0
  226. package/_shared/bin/native/inject/index.cjs.js +25 -0
  227. package/_shared/bin/native/inject/index.esm.js +18 -0
  228. package/_shared/bin/native/platform-check/index.cjs.js +13 -0
  229. package/_shared/bin/native/platform-check/index.esm.js +10 -0
  230. package/_shared/bin/native/sea-blob/index.cjs.js +21 -0
  231. package/_shared/bin/native/sea-blob/index.esm.js +19 -0
  232. package/_shared/bin/native/sea-config/index.cjs.js +9 -0
  233. package/_shared/bin/native/sea-config/index.esm.js +7 -0
  234. package/_shared/bin/script/bootstrap-footer/index.cjs.js +22 -0
  235. package/_shared/bin/script/bootstrap-footer/index.esm.js +19 -0
  236. package/_shared/bundle/declarations/flatten-paths/index.cjs.js +34 -0
  237. package/_shared/bundle/declarations/flatten-paths/index.esm.js +29 -0
  238. package/_shared/bundle/dependencies/collect-workspace-deps/index.cjs.js +24 -0
  239. package/_shared/bundle/dependencies/collect-workspace-deps/index.esm.js +21 -0
  240. package/_shared/bundle/dependencies/externalize-plugin/index.cjs.js +93 -0
  241. package/_shared/bundle/dependencies/externalize-plugin/index.esm.js +86 -0
  242. package/_shared/bundle/dependencies/prune/ast-utils/index.esm.js +31 -0
  243. package/_shared/bundle/dependencies/prune/namespace-usage/index.esm.js +208 -0
  244. package/_shared/bundle/dependencies/prune/specifiers/index.cjs.js +62 -0
  245. package/_shared/bundle/dependencies/prune/specifiers/index.esm.js +53 -0
  246. package/_shared/bundle/entries/discover-entries/index.cjs.js +87 -0
  247. package/_shared/bundle/entries/discover-entries/index.esm.js +80 -0
  248. package/_shared/bundle/entries/resolve-entries/index.cjs.js +38 -0
  249. package/_shared/bundle/entries/resolve-entries/index.esm.js +34 -0
  250. package/_shared/bundle/externals/validate-globals/index.cjs.js +14 -0
  251. package/_shared/bundle/externals/validate-globals/index.esm.js +12 -0
  252. package/_shared/bundle/fs/deps-root/index.cjs.js +7 -0
  253. package/_shared/bundle/fs/deps-root/index.esm.js +5 -0
  254. package/_shared/bundle/fs/empty-dirs/index.cjs.js +23 -0
  255. package/_shared/bundle/fs/empty-dirs/index.esm.js +21 -0
  256. package/_shared/bundle/fs/entry-dir/index.cjs.js +7 -0
  257. package/_shared/bundle/fs/entry-dir/index.esm.js +5 -0
  258. package/_shared/bundle/fs/posix-path/index.cjs.js +9 -0
  259. package/_shared/bundle/fs/posix-path/index.esm.js +4 -0
  260. package/_shared/bundle/fs/under-dir/index.cjs.js +5 -0
  261. package/_shared/bundle/fs/under-dir/index.esm.js +3 -0
  262. package/_shared/memory/recover/index.cjs.js +15 -0
  263. package/_shared/memory/recover/index.esm.js +14 -0
  264. package/_shared/package/finalize-files/index.cjs.js +16 -0
  265. package/_shared/package/finalize-files/index.esm.js +15 -0
  266. package/_shared/package/json/cdn-paths/index.cjs.js +13 -0
  267. package/_shared/package/json/cdn-paths/index.esm.js +11 -0
  268. package/_shared/package/json/filter-deps/index.cjs.js +37 -0
  269. package/_shared/package/json/filter-deps/index.esm.js +34 -0
  270. package/_shared/package/json/generate-exports/index.cjs.js +56 -0
  271. package/_shared/package/json/generate-exports/index.esm.js +52 -0
  272. package/_shared/package/json/inherit-fields/index.cjs.js +19 -0
  273. package/_shared/package/json/inherit-fields/index.esm.js +17 -0
  274. package/_shared/package/json/read-package-json/index.cjs.js +7 -0
  275. package/_shared/package/json/read-package-json/index.esm.js +6 -0
  276. package/_shared/package/json/reflect-files-allowlist/index.cjs.js +39 -0
  277. package/_shared/package/json/reflect-files-allowlist/index.esm.js +33 -0
  278. package/_shared/package/json/synthesize/index.cjs.js +72 -0
  279. package/_shared/package/json/synthesize/index.esm.js +68 -0
  280. package/_shared/package/json/write/index.cjs.js +9 -0
  281. package/_shared/package/json/write/index.esm.js +8 -0
  282. package/_shared/package/licenses/generate-content/index.cjs.js +17 -0
  283. package/_shared/package/licenses/generate-content/index.esm.js +17 -0
  284. package/_shared/package/licenses/license-url/index.esm.js +29 -0
  285. package/_shared/package/licenses/write/index.cjs.js +9 -0
  286. package/_shared/package/licenses/write/index.esm.js +8 -0
  287. package/_shared/presets/by-names/index.cjs.js +10 -0
  288. package/_shared/presets/by-names/index.esm.js +8 -0
  289. package/_shared/presets/by-prefix/index.cjs.js +7 -0
  290. package/_shared/presets/by-prefix/index.esm.js +5 -0
  291. package/bin/format.d.ts +18 -0
  292. package/bin/format.d.ts.map +1 -0
  293. package/bin/hf-build.d.ts +81 -0
  294. package/bin/hf-build.d.ts.map +1 -0
  295. package/bin/hf-build.js +208533 -0
  296. package/bin/hf-build.linux-x64 +0 -0
  297. package/bin/index.cjs.js +548 -0
  298. package/bin/index.d.ts +26 -0
  299. package/bin/index.d.ts.map +1 -0
  300. package/bin/index.esm.js +546 -0
  301. package/bin/native/build-native.d.ts +44 -0
  302. package/bin/native/build-native.d.ts.map +1 -0
  303. package/bin/native/codesign.d.ts +65 -0
  304. package/bin/native/codesign.d.ts.map +1 -0
  305. package/bin/native/dispatch.d.ts +75 -0
  306. package/bin/native/dispatch.d.ts.map +1 -0
  307. package/bin/native/host-binary.d.ts +36 -0
  308. package/bin/native/host-binary.d.ts.map +1 -0
  309. package/bin/native/index.cjs.js +264 -0
  310. package/bin/native/index.d.ts +407 -0
  311. package/bin/native/index.d.ts.map +1 -0
  312. package/bin/native/index.esm.js +249 -0
  313. package/bin/native/inject.d.ts +61 -0
  314. package/bin/native/inject.d.ts.map +1 -0
  315. package/bin/native/platform-check.d.ts +39 -0
  316. package/bin/native/platform-check.d.ts.map +1 -0
  317. package/bin/native/sea-blob.d.ts +40 -0
  318. package/bin/native/sea-blob.d.ts.map +1 -0
  319. package/bin/native/sea-config.d.ts +45 -0
  320. package/bin/native/sea-config.d.ts.map +1 -0
  321. package/bin/native/worker/index.cjs.js +88 -0
  322. package/bin/native/worker/index.d.ts +68 -0
  323. package/bin/native/worker/index.d.ts.map +1 -0
  324. package/bin/native/worker/index.esm.js +86 -0
  325. package/bin/native/worker/job-runner.d.ts +29 -0
  326. package/bin/native/worker/job-runner.d.ts.map +1 -0
  327. package/bin/native/worker/types.d.ts +38 -0
  328. package/bin/native/worker/types.d.ts.map +1 -0
  329. package/bin/run-bin-phase.d.ts +24 -0
  330. package/bin/run-bin-phase.d.ts.map +1 -0
  331. package/bin/script/bootstrap-footer.d.ts +41 -0
  332. package/bin/script/bootstrap-footer.d.ts.map +1 -0
  333. package/bin/script/build-bin.d.ts +36 -0
  334. package/bin/script/build-bin.d.ts.map +1 -0
  335. package/bin/script/index.cjs.js +265 -0
  336. package/bin/script/index.d.ts +79 -0
  337. package/bin/script/index.d.ts.map +1 -0
  338. package/bin/script/index.esm.js +262 -0
  339. package/build.d.ts +56 -0
  340. package/build.d.ts.map +1 -0
  341. package/bundle/declarations/dts-per-entry.d.ts +27 -0
  342. package/bundle/declarations/dts-per-entry.d.ts.map +1 -0
  343. package/bundle/declarations/dts-pre-pass.d.ts +18 -0
  344. package/bundle/declarations/dts-pre-pass.d.ts.map +1 -0
  345. package/bundle/declarations/flatten-paths.d.ts +28 -0
  346. package/bundle/declarations/flatten-paths.d.ts.map +1 -0
  347. package/bundle/declarations/generate-declarations.d.ts +33 -0
  348. package/bundle/declarations/generate-declarations.d.ts.map +1 -0
  349. package/bundle/declarations/index.cjs.js +868 -0
  350. package/bundle/declarations/index.d.ts +262 -0
  351. package/bundle/declarations/index.d.ts.map +1 -0
  352. package/bundle/declarations/index.esm.js +857 -0
  353. package/bundle/declarations/prune-orphan-dts.d.ts +33 -0
  354. package/bundle/declarations/prune-orphan-dts.d.ts.map +1 -0
  355. package/bundle/declarations/sibling-resolver.d.ts +125 -0
  356. package/bundle/declarations/sibling-resolver.d.ts.map +1 -0
  357. package/bundle/dedupe/attribute-modules.d.ts +178 -0
  358. package/bundle/dedupe/attribute-modules.d.ts.map +1 -0
  359. package/bundle/dedupe/extract-chunk.d.ts +103 -0
  360. package/bundle/dedupe/extract-chunk.d.ts.map +1 -0
  361. package/bundle/dedupe/hoist-shared.d.ts +37 -0
  362. package/bundle/dedupe/hoist-shared.d.ts.map +1 -0
  363. package/bundle/dedupe/index.cjs.js +818 -0
  364. package/bundle/dedupe/index.d.ts +400 -0
  365. package/bundle/dedupe/index.d.ts.map +1 -0
  366. package/bundle/dedupe/index.esm.js +766 -0
  367. package/bundle/dedupe/plan-hoists.d.ts +46 -0
  368. package/bundle/dedupe/plan-hoists.d.ts.map +1 -0
  369. package/bundle/dedupe/rewrite-entry.d.ts +39 -0
  370. package/bundle/dedupe/rewrite-entry.d.ts.map +1 -0
  371. package/bundle/dependencies/collect-workspace-deps.d.ts +34 -0
  372. package/bundle/dependencies/collect-workspace-deps.d.ts.map +1 -0
  373. package/bundle/dependencies/externalize-plugin.d.ts +100 -0
  374. package/bundle/dependencies/externalize-plugin.d.ts.map +1 -0
  375. package/bundle/dependencies/index.cjs.js +964 -0
  376. package/bundle/dependencies/index.d.ts +388 -0
  377. package/bundle/dependencies/index.d.ts.map +1 -0
  378. package/bundle/dependencies/index.esm.js +947 -0
  379. package/bundle/dependencies/pre-pass.d.ts +154 -0
  380. package/bundle/dependencies/pre-pass.d.ts.map +1 -0
  381. package/bundle/dependencies/prune/ast-utils.d.ts +121 -0
  382. package/bundle/dependencies/prune/ast-utils.d.ts.map +1 -0
  383. package/bundle/dependencies/prune/chunk-graph.d.ts +175 -0
  384. package/bundle/dependencies/prune/chunk-graph.d.ts.map +1 -0
  385. package/bundle/dependencies/prune/dead-export-pass.d.ts +32 -0
  386. package/bundle/dependencies/prune/dead-export-pass.d.ts.map +1 -0
  387. package/bundle/dependencies/prune/dead-exports.d.ts +36 -0
  388. package/bundle/dependencies/prune/dead-exports.d.ts.map +1 -0
  389. package/bundle/dependencies/prune/destructure-requires-pass.d.ts +31 -0
  390. package/bundle/dependencies/prune/destructure-requires-pass.d.ts.map +1 -0
  391. package/bundle/dependencies/prune/destructure-requires.d.ts +42 -0
  392. package/bundle/dependencies/prune/destructure-requires.d.ts.map +1 -0
  393. package/bundle/dependencies/prune/edits.d.ts +30 -0
  394. package/bundle/dependencies/prune/edits.d.ts.map +1 -0
  395. package/bundle/dependencies/prune/namespace-usage.d.ts +104 -0
  396. package/bundle/dependencies/prune/namespace-usage.d.ts.map +1 -0
  397. package/bundle/dependencies/prune/orphan-chunks.d.ts +69 -0
  398. package/bundle/dependencies/prune/orphan-chunks.d.ts.map +1 -0
  399. package/bundle/dependencies/prune/property-strip-pass.d.ts +38 -0
  400. package/bundle/dependencies/prune/property-strip-pass.d.ts.map +1 -0
  401. package/bundle/dependencies/prune/property-strip.d.ts +69 -0
  402. package/bundle/dependencies/prune/property-strip.d.ts.map +1 -0
  403. package/bundle/dependencies/prune/prune-dependencies.d.ts +52 -0
  404. package/bundle/dependencies/prune/prune-dependencies.d.ts.map +1 -0
  405. package/bundle/dependencies/prune/reachability.d.ts +36 -0
  406. package/bundle/dependencies/prune/reachability.d.ts.map +1 -0
  407. package/bundle/dependencies/prune/specifiers.d.ts +39 -0
  408. package/bundle/dependencies/prune/specifiers.d.ts.map +1 -0
  409. package/bundle/dependencies/prune/strip-comments.d.ts +47 -0
  410. package/bundle/dependencies/prune/strip-comments.d.ts.map +1 -0
  411. package/bundle/dependencies/prune/used-exports.d.ts +32 -0
  412. package/bundle/dependencies/prune/used-exports.d.ts.map +1 -0
  413. package/bundle/dependencies/resolve-bundled-deps.d.ts +37 -0
  414. package/bundle/dependencies/resolve-bundled-deps.d.ts.map +1 -0
  415. package/bundle/dependencies/resolve-dep-entry.d.ts +38 -0
  416. package/bundle/dependencies/resolve-dep-entry.d.ts.map +1 -0
  417. package/bundle/dependencies/resolve-workspace-bundled-deps.d.ts +96 -0
  418. package/bundle/dependencies/resolve-workspace-bundled-deps.d.ts.map +1 -0
  419. package/bundle/dependencies/worker/index.cjs.js +524 -0
  420. package/bundle/dependencies/worker/index.d.ts +102 -0
  421. package/bundle/dependencies/worker/index.d.ts.map +1 -0
  422. package/bundle/dependencies/worker/index.esm.js +515 -0
  423. package/bundle/dependencies/worker/job-runner.d.ts +115 -0
  424. package/bundle/dependencies/worker/job-runner.d.ts.map +1 -0
  425. package/bundle/entries/by-platform.d.ts +27 -0
  426. package/bundle/entries/by-platform.d.ts.map +1 -0
  427. package/bundle/entries/discover-entries.d.ts +24 -0
  428. package/bundle/entries/discover-entries.d.ts.map +1 -0
  429. package/bundle/entries/index.cjs.js +38 -0
  430. package/bundle/entries/index.d.ts +70 -0
  431. package/bundle/entries/index.d.ts.map +1 -0
  432. package/bundle/entries/index.esm.js +33 -0
  433. package/bundle/entries/resolve-entries.d.ts +19 -0
  434. package/bundle/entries/resolve-entries.d.ts.map +1 -0
  435. package/bundle/externals/index.cjs.js +54 -0
  436. package/bundle/externals/index.d.ts +74 -0
  437. package/bundle/externals/index.d.ts.map +1 -0
  438. package/bundle/externals/index.esm.js +51 -0
  439. package/bundle/externals/resolve-externals.d.ts +52 -0
  440. package/bundle/externals/resolve-externals.d.ts.map +1 -0
  441. package/bundle/externals/validate-globals.d.ts +19 -0
  442. package/bundle/externals/validate-globals.d.ts.map +1 -0
  443. package/bundle/fs/deps-root.d.ts +17 -0
  444. package/bundle/fs/deps-root.d.ts.map +1 -0
  445. package/bundle/fs/empty-dirs.d.ts +18 -0
  446. package/bundle/fs/empty-dirs.d.ts.map +1 -0
  447. package/bundle/fs/entry-dir.d.ts +21 -0
  448. package/bundle/fs/entry-dir.d.ts.map +1 -0
  449. package/bundle/fs/posix-path.d.ts +30 -0
  450. package/bundle/fs/posix-path.d.ts.map +1 -0
  451. package/bundle/fs/under-dir.d.ts +19 -0
  452. package/bundle/fs/under-dir.d.ts.map +1 -0
  453. package/bundle/index.cjs.js +4046 -0
  454. package/bundle/index.d.ts +25 -0
  455. package/bundle/index.d.ts.map +1 -0
  456. package/bundle/index.esm.js +3689 -0
  457. package/bundle/rollup/descriptor.d.ts +99 -0
  458. package/bundle/rollup/descriptor.d.ts.map +1 -0
  459. package/bundle/rollup/dispatch.d.ts +72 -0
  460. package/bundle/rollup/dispatch.d.ts.map +1 -0
  461. package/bundle/rollup/index.cjs.js +715 -0
  462. package/bundle/rollup/index.d.ts +174 -0
  463. package/bundle/rollup/index.d.ts.map +1 -0
  464. package/bundle/rollup/index.esm.js +698 -0
  465. package/bundle/rollup/worker/index.cjs.js +290 -0
  466. package/bundle/rollup/worker/index.d.ts +131 -0
  467. package/bundle/rollup/worker/index.d.ts.map +1 -0
  468. package/bundle/rollup/worker/index.esm.js +280 -0
  469. package/bundle/rollup/worker/job-runner.d.ts +18 -0
  470. package/bundle/rollup/worker/job-runner.d.ts.map +1 -0
  471. package/bundle/rollup/worker/types.d.ts +111 -0
  472. package/bundle/rollup/worker/types.d.ts.map +1 -0
  473. package/bundle/run-bundle-phase.d.ts +23 -0
  474. package/bundle/run-bundle-phase.d.ts.map +1 -0
  475. package/clean-output.d.ts +26 -0
  476. package/clean-output.d.ts.map +1 -0
  477. package/index.cjs.js +5317 -0
  478. package/index.d.ts +64 -0
  479. package/index.d.ts.map +1 -0
  480. package/index.esm.js +4910 -0
  481. package/memory/index.cjs.js +101 -0
  482. package/memory/index.d.ts +81 -0
  483. package/memory/index.d.ts.map +1 -0
  484. package/memory/index.esm.js +98 -0
  485. package/memory/monitor.d.ts +59 -0
  486. package/memory/monitor.d.ts.map +1 -0
  487. package/memory/recover.d.ts +19 -0
  488. package/memory/recover.d.ts.map +1 -0
  489. package/models/build-config.d.ts +266 -0
  490. package/models/build-config.d.ts.map +1 -0
  491. package/models/build-context.d.ts +68 -0
  492. package/models/build-context.d.ts.map +1 -0
  493. package/models/build-result.d.ts +43 -0
  494. package/models/build-result.d.ts.map +1 -0
  495. package/models/entry-point.d.ts +45 -0
  496. package/models/entry-point.d.ts.map +1 -0
  497. package/models/format-output.d.ts +34 -0
  498. package/models/format-output.d.ts.map +1 -0
  499. package/models/index.cjs.js +2 -0
  500. package/models/index.d.ts +581 -0
  501. package/models/index.d.ts.map +1 -0
  502. package/models/index.esm.js +1 -0
  503. package/models/package-json.d.ts +130 -0
  504. package/models/package-json.d.ts.map +1 -0
  505. package/package/assets/copy-assets.d.ts +31 -0
  506. package/package/assets/copy-assets.d.ts.map +1 -0
  507. package/package/assets/index.cjs.js +84 -0
  508. package/package/assets/index.d.ts +33 -0
  509. package/package/assets/index.d.ts.map +1 -0
  510. package/package/assets/index.esm.js +82 -0
  511. package/package/finalize-files.d.ts +25 -0
  512. package/package/finalize-files.d.ts.map +1 -0
  513. package/package/index.cjs.js +276 -0
  514. package/package/index.d.ts +56 -0
  515. package/package/index.d.ts.map +1 -0
  516. package/package/index.esm.js +231 -0
  517. package/package/json/cdn-paths.d.ts +41 -0
  518. package/package/json/cdn-paths.d.ts.map +1 -0
  519. package/package/json/filter-deps.d.ts +39 -0
  520. package/package/json/filter-deps.d.ts.map +1 -0
  521. package/package/json/generate-exports.d.ts +29 -0
  522. package/package/json/generate-exports.d.ts.map +1 -0
  523. package/package/json/index.cjs.js +24 -0
  524. package/package/json/index.d.ts +252 -0
  525. package/package/json/index.d.ts.map +1 -0
  526. package/package/json/index.esm.js +14 -0
  527. package/package/json/inherit-fields.d.ts +25 -0
  528. package/package/json/inherit-fields.d.ts.map +1 -0
  529. package/package/json/read-package-json.d.ts +18 -0
  530. package/package/json/read-package-json.d.ts.map +1 -0
  531. package/package/json/reflect-files-allowlist.d.ts +32 -0
  532. package/package/json/reflect-files-allowlist.d.ts.map +1 -0
  533. package/package/json/synthesize.d.ts +53 -0
  534. package/package/json/synthesize.d.ts.map +1 -0
  535. package/package/json/write.d.ts +18 -0
  536. package/package/json/write.d.ts.map +1 -0
  537. package/package/licenses/collect.d.ts +25 -0
  538. package/package/licenses/collect.d.ts.map +1 -0
  539. package/package/licenses/generate-content.d.ts +20 -0
  540. package/package/licenses/generate-content.d.ts.map +1 -0
  541. package/package/licenses/index.cjs.js +135 -0
  542. package/package/licenses/index.d.ts +73 -0
  543. package/package/licenses/index.d.ts.map +1 -0
  544. package/package/licenses/index.esm.js +89 -0
  545. package/package/licenses/license-url.d.ts +20 -0
  546. package/package/licenses/license-url.d.ts.map +1 -0
  547. package/package/licenses/types.d.ts +12 -0
  548. package/package/licenses/types.d.ts.map +1 -0
  549. package/package/licenses/write.d.ts +16 -0
  550. package/package/licenses/write.d.ts.map +1 -0
  551. package/package/run-package-phase.d.ts +30 -0
  552. package/package/run-package-phase.d.ts.map +1 -0
  553. package/package.json +347 -0
  554. package/presets/by-names.d.ts +20 -0
  555. package/presets/by-names.d.ts.map +1 -0
  556. package/presets/by-prefix.d.ts +22 -0
  557. package/presets/by-prefix.d.ts.map +1 -0
  558. package/presets/index.cjs.js +8 -0
  559. package/presets/index.d.ts +43 -0
  560. package/presets/index.d.ts.map +1 -0
  561. package/presets/index.esm.js +5 -0
@@ -0,0 +1,698 @@
1
+ import { join as join$3, getDirname } from '../../_dependencies/@hyperfrontend/project-scope/core/path/index.esm.js';
2
+ import { isBuiltin } from 'node:module';
3
+ import { join as join$1, relative, dirname } from 'node:path';
4
+ import { from } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/array/index.esm.js';
5
+ import { keys } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/object/index.esm.js';
6
+ import { createSet } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/set/index.esm.js';
7
+ import { exists, readJsonFile } from '../../_dependencies/@hyperfrontend/project-scope/core/fs/index.esm.js';
8
+ import { createError } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/error/index.esm.js';
9
+ import { join as join$2 } from '../../_dependencies/@hyperfrontend/project-scope/core/index.esm.js';
10
+ import { spawn } from 'node:child_process';
11
+ import { rmSync, existsSync, mkdtempSync, readFileSync, chmodSync, writeFileSync, mkdirSync, statSync } from 'node:fs';
12
+ import { tmpdir } from 'node:os';
13
+ import { stringify, parse } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/json/index.esm.js';
14
+ import { createPromise } from '../../_dependencies/@hyperfrontend/immutable-api-utils/built-in-copy/promise/index.esm.js';
15
+ import { logger } from '../../_dependencies/@hyperfrontend/logging/index.esm.js';
16
+ import commonjs from '../../_dependencies/@rollup/plugin-commonjs/index.esm.js';
17
+ import json from '../../_dependencies/@rollup/plugin-json/index.esm.js';
18
+ import nodeResolve from '../../_dependencies/@rollup/plugin-node-resolve/index.esm.js';
19
+ import terser from '../../_dependencies/@rollup/plugin-terser/index.esm.js';
20
+ import typescript from '../../_dependencies/@rollup/plugin-typescript/index.esm.js';
21
+ import { rollup } from '../../_dependencies/rollup/index.esm.js';
22
+ import { defaultBootstrap } from '../../_shared/bin/script/bootstrap-footer/index.esm.js';
23
+ import { join } from '../../_shared/bundle/fs/posix-path/index.esm.js';
24
+ import { buildWorkspaceRoutes, createExternalizeBundledDepsPlugin } from '../../_shared/bundle/dependencies/externalize-plugin/index.esm.js';
25
+ import { validateExternalsConfig } from '../../_shared/bundle/externals/validate-globals/index.esm.js';
26
+ import { depsRootOf } from '../../_shared/bundle/fs/deps-root/index.esm.js';
27
+
28
+ const readPkg = (packageJsonPath) => (exists(packageJsonPath) ? readJsonFile(packageJsonPath) : {});
29
+ /**
30
+ * Resolves the external package list for a single bundle.
31
+ *
32
+ * The output combines:
33
+ * - top-level `dependencies` from the project's `package.json`
34
+ * - `peerDependencies` (always external regardless of `bundleWorkspaceDeps`)
35
+ * - the caller-supplied `additional` list
36
+ *
37
+ * When `bundleWorkspaceDeps` is `true` and a workspace predicate is supplied, packages
38
+ * matching the predicate are stripped from `dependencies` and `additional` so they get
39
+ * inlined by the bundler. Peer dependencies are always preserved.
40
+ *
41
+ * @param options - Inputs controlling the resolution.
42
+ * @returns Sorted, de-duplicated list of external package names.
43
+ *
44
+ * @example Resolving externals while inlining workspace deps
45
+ * ```typescript
46
+ * const external = resolveExternals({
47
+ * packageJsonPath: '/abs/libs/foo/package.json',
48
+ * isWorkspacePackage: (n) => n.startsWith('@hyperfrontend/'),
49
+ * bundleWorkspaceDeps: true,
50
+ * })
51
+ * ```
52
+ */
53
+ const resolveExternals = (options) => {
54
+ const pkg = readPkg(options.packageJsonPath);
55
+ const deps = keys(pkg.dependencies ?? {});
56
+ const peerDeps = keys(pkg.peerDependencies ?? {});
57
+ const additional = options.additional ?? [];
58
+ const bundledSet = createSet(options.bundledDeps ?? []);
59
+ const workspaceBundledSet = createSet(options.workspaceBundledDepNames ?? []);
60
+ const inlineWorkspace = options.bundleWorkspaceDeps === true && options.isWorkspacePackage !== undefined;
61
+ const filterWorkspace = (names) => inlineWorkspace ? names.filter((n) => !options.isWorkspacePackage(n)) : names;
62
+ const filterBundled = (names) => (bundledSet.size === 0 ? names : names.filter((n) => !bundledSet.has(n)));
63
+ const filterWorkspaceBundled = (names) => workspaceBundledSet.size === 0 ? names : names.filter((n) => !workspaceBundledSet.has(n));
64
+ return from(createSet([
65
+ ...filterWorkspaceBundled(filterBundled(filterWorkspace(deps))),
66
+ ...filterWorkspaceBundled(filterBundled(peerDeps)),
67
+ ...filterWorkspaceBundled(filterBundled(filterWorkspace(additional))),
68
+ ]));
69
+ };
70
+
71
+ const computeEntryOutputDir = (entry, context) => entry.srcPath ? join$3(context.outputPath, entry.srcPath) : context.outputPath;
72
+ const computeBundleOutputDir = (bundleSubDir, context) => join$3(context.outputPath, bundleSubDir ?? 'bundle');
73
+ /**
74
+ * Builds the worker descriptor for the ESM output of a single entry point.
75
+ *
76
+ * The returned descriptor is fully serializable (no functions), ready to be
77
+ * passed to {@link dispatchRollupWorker}.
78
+ *
79
+ * @param entry - Entry point to compile.
80
+ * @param config - ESM-format configuration.
81
+ * @param context - Resolved build context.
82
+ * @param reportPath - Absolute path the worker will write its JSON report to.
83
+ * @returns Descriptor ready to be JSON-serialized for the worker.
84
+ *
85
+ * @example Producing the descriptor for the root entry
86
+ * ```typescript
87
+ * const descriptor = toEsmBuildDescriptor(entry, esmConfig, context, '/tmp/report.json')
88
+ * ```
89
+ */
90
+ const toEsmBuildDescriptor = (entry, config, context, reportPath) => {
91
+ const outputDir = computeEntryOutputDir(entry, context);
92
+ const sourcemap = config.sourcemap ?? false;
93
+ const bundleWorkspaceDeps = config.bundleWorkspaceDeps ?? true;
94
+ const bundleAllRequested = Boolean(config.bundleAllDeps);
95
+ const bundledDeps = bundleAllRequested ? context.bundledDeps : [];
96
+ const workspaceRoutes = bundleAllRequested ? buildWorkspaceRoutes(context.workspaceBundledDeps) : [];
97
+ const useExternalizePlugin = bundledDeps.length > 0 || workspaceRoutes.length > 0;
98
+ const external = resolveExternals({
99
+ packageJsonPath: join$3(context.projectRoot, 'package.json'),
100
+ additional: [...context.external, ...(config.external ?? [])],
101
+ isWorkspacePackage: context.isWorkspacePackage,
102
+ bundleWorkspaceDeps,
103
+ bundledDeps,
104
+ workspaceBundledDepNames: workspaceRoutes.map((r) => r.packageName),
105
+ });
106
+ return {
107
+ format: 'esm',
108
+ inputFile: entry.inputFile,
109
+ outputDir,
110
+ external,
111
+ sourcemap,
112
+ bundledDepsPlugin: useExternalizePlugin ? { deps: bundledDeps, depsRoot: depsRootOf(context) } : null,
113
+ workspaceRoutes,
114
+ tsConfigPath: context.tsConfigPath,
115
+ projectRoot: context.projectRoot,
116
+ workspaceRoot: context.workspaceRoot,
117
+ bundleWorkspaceDeps,
118
+ bundle: null,
119
+ bin: null,
120
+ reportPath,
121
+ };
122
+ };
123
+ /**
124
+ * Builds the worker descriptor for the CommonJS output of a single entry point.
125
+ *
126
+ * @param entry - Entry point to compile.
127
+ * @param config - CJS-format configuration.
128
+ * @param context - Resolved build context.
129
+ * @param reportPath - Absolute path the worker will write its JSON report to.
130
+ * @returns Descriptor ready to be JSON-serialized for the worker.
131
+ *
132
+ * @example Producing the descriptor for the root entry
133
+ * ```typescript
134
+ * const descriptor = toCjsBuildDescriptor(entry, cjsConfig, context, '/tmp/report.json')
135
+ * ```
136
+ */
137
+ const toCjsBuildDescriptor = (entry, config, context, reportPath) => {
138
+ const outputDir = computeEntryOutputDir(entry, context);
139
+ const sourcemap = config.sourcemap ?? false;
140
+ const bundleWorkspaceDeps = config.bundleWorkspaceDeps ?? true;
141
+ const bundleAllRequested = Boolean(config.bundleAllDeps);
142
+ const bundledDeps = bundleAllRequested ? context.bundledDeps : [];
143
+ const workspaceRoutes = bundleAllRequested ? buildWorkspaceRoutes(context.workspaceBundledDeps) : [];
144
+ const useExternalizePlugin = bundledDeps.length > 0 || workspaceRoutes.length > 0;
145
+ const external = resolveExternals({
146
+ packageJsonPath: join$3(context.projectRoot, 'package.json'),
147
+ additional: [...context.external, ...(config.external ?? [])],
148
+ isWorkspacePackage: context.isWorkspacePackage,
149
+ bundleWorkspaceDeps,
150
+ bundledDeps,
151
+ workspaceBundledDepNames: workspaceRoutes.map((r) => r.packageName),
152
+ });
153
+ return {
154
+ format: 'cjs',
155
+ inputFile: entry.inputFile,
156
+ outputDir,
157
+ external,
158
+ sourcemap,
159
+ bundledDepsPlugin: useExternalizePlugin ? { deps: bundledDeps, depsRoot: depsRootOf(context) } : null,
160
+ workspaceRoutes,
161
+ tsConfigPath: context.tsConfigPath,
162
+ projectRoot: context.projectRoot,
163
+ workspaceRoot: context.workspaceRoot,
164
+ bundleWorkspaceDeps,
165
+ bundle: null,
166
+ bin: null,
167
+ reportPath,
168
+ };
169
+ };
170
+ /**
171
+ * Builds the worker descriptor for an IIFE bundle of a single entry point.
172
+ *
173
+ * Validates the externals/globals pairing eagerly, throwing before the
174
+ * descriptor is returned.
175
+ *
176
+ * @param entry - Entry point to bundle.
177
+ * @param config - IIFE-format configuration.
178
+ * @param context - Resolved build context.
179
+ * @param reportPath - Absolute path the worker will write its JSON report to.
180
+ * @returns Descriptor ready to be JSON-serialized for the worker.
181
+ * @throws {Error} When `config.external` is non-empty but `config.globals` is missing entries.
182
+ *
183
+ * @example Producing the descriptor for an IIFE bundle
184
+ * ```typescript
185
+ * const descriptor = toIifeBuildDescriptor(entry, iifeConfig, context, '/tmp/report.json')
186
+ * ```
187
+ */
188
+ const toIifeBuildDescriptor = (entry, config, context, reportPath) => {
189
+ validateExternalsConfig(config.external, config.globals);
190
+ const outputDir = computeBundleOutputDir(config.output, context);
191
+ const sourcemap = config.sourcemap ?? false;
192
+ const minify = config.minify ?? true;
193
+ return {
194
+ format: 'iife',
195
+ inputFile: entry.inputFile,
196
+ outputDir,
197
+ external: config.external ?? [],
198
+ sourcemap,
199
+ bundledDepsPlugin: null,
200
+ workspaceRoutes: [],
201
+ tsConfigPath: context.tsConfigPath,
202
+ projectRoot: context.projectRoot,
203
+ workspaceRoot: context.workspaceRoot,
204
+ bundleWorkspaceDeps: false,
205
+ bundle: { globalName: config.globalName, minify, globals: config.globals },
206
+ bin: null,
207
+ reportPath,
208
+ };
209
+ };
210
+ const SHEBANG = '#!/usr/bin/env node';
211
+ const BIN_FILE_MODE = 0o755;
212
+ const resolveBinOutputFile = (binDir, name, format, formats) => {
213
+ if (format === 'esm')
214
+ return join$3(binDir, `${name}.mjs`);
215
+ return formats.length === 1 ? join$3(binDir, `${name}.js`) : join$3(binDir, `${name}.cjs.js`);
216
+ };
217
+ const resolveBinFooter = (bin, format) => bin.bootstrap ?? defaultBootstrap({ runner: bin.runner ?? 'default', format });
218
+ /**
219
+ * Builds the worker descriptor for a single bin output (one (bin, format) pair).
220
+ *
221
+ * Bins are self-contained executable scripts: workspace deps are inlined and the
222
+ * worker writes to `<outputPath>/bin/<name>.<ext>` with the shebang banner, the
223
+ * resolved bootstrap footer, and `chmod 0o755` applied.
224
+ *
225
+ * Output naming convention:
226
+ * - ESM: `<name>.mjs`
227
+ * - CJS only: `<name>.js`
228
+ * - CJS alongside ESM: `<name>.cjs.js`
229
+ *
230
+ * @param bin - Bin declaration including name, runner, and per-bin bootstrap override.
231
+ * @param context - Resolved build context.
232
+ * @param format - Format being built (one of `bin.format`'s entries).
233
+ * @param formats - Full list of formats requested for this bin (drives the CJS filename).
234
+ * @param reportPath - Absolute path the worker will write its JSON report to.
235
+ * @returns Descriptor ready to be JSON-serialized for the worker.
236
+ *
237
+ * @example Producing the descriptor for an `hf-build` CJS bin alongside an ESM twin
238
+ * ```typescript
239
+ * const descriptor = toBinBuildDescriptor(bin, context, 'cjs', ['cjs', 'esm'], '/tmp/r.json')
240
+ * ```
241
+ */
242
+ const toBinBuildDescriptor = (bin, context, format, formats, reportPath) => {
243
+ const inputFile = join$3(context.projectRoot, 'src', 'bin', `${bin.name}.ts`);
244
+ const binDir = join$3(context.outputPath, 'bin');
245
+ const outputFile = resolveBinOutputFile(binDir, bin.name, format, formats);
246
+ const bundledDepsRoot = depsRootOf(context);
247
+ const workspaceRoutes = buildWorkspaceRoutes(context.workspaceBundledDeps);
248
+ const useExternalizePlugin = context.bundledDeps.length > 0 || workspaceRoutes.length > 0;
249
+ return {
250
+ format,
251
+ inputFile,
252
+ outputDir: getDirname(outputFile),
253
+ external: [],
254
+ sourcemap: false,
255
+ bundledDepsPlugin: useExternalizePlugin ? { deps: context.bundledDeps, depsRoot: bundledDepsRoot } : null,
256
+ workspaceRoutes,
257
+ tsConfigPath: context.tsConfigPath,
258
+ projectRoot: context.projectRoot,
259
+ workspaceRoot: context.workspaceRoot,
260
+ bundleWorkspaceDeps: true,
261
+ bundle: null,
262
+ bin: {
263
+ outputFile,
264
+ banner: SHEBANG,
265
+ footer: resolveBinFooter(bin, format),
266
+ exports: 'named',
267
+ inlineDynamicImports: true,
268
+ chmod: BIN_FILE_MODE,
269
+ },
270
+ reportPath,
271
+ };
272
+ };
273
+ /**
274
+ * Builds the worker descriptor for a UMD bundle of a single entry point.
275
+ *
276
+ * Validates the externals/globals pairing eagerly, throwing before the
277
+ * descriptor is returned.
278
+ *
279
+ * @param entry - Entry point to bundle.
280
+ * @param config - UMD-format configuration.
281
+ * @param context - Resolved build context.
282
+ * @param reportPath - Absolute path the worker will write its JSON report to.
283
+ * @returns Descriptor ready to be JSON-serialized for the worker.
284
+ * @throws {Error} When `config.external` is non-empty but `config.globals` is missing entries.
285
+ *
286
+ * @example Producing the descriptor for a UMD bundle
287
+ * ```typescript
288
+ * const descriptor = toUmdBuildDescriptor(entry, umdConfig, context, '/tmp/report.json')
289
+ * ```
290
+ */
291
+ const toUmdBuildDescriptor = (entry, config, context, reportPath) => {
292
+ validateExternalsConfig(config.external, config.globals);
293
+ const outputDir = computeBundleOutputDir(config.output, context);
294
+ const sourcemap = config.sourcemap ?? false;
295
+ const minify = config.minify ?? true;
296
+ return {
297
+ format: 'umd',
298
+ inputFile: entry.inputFile,
299
+ outputDir,
300
+ external: config.external ?? [],
301
+ sourcemap,
302
+ bundledDepsPlugin: null,
303
+ workspaceRoutes: [],
304
+ tsConfigPath: context.tsConfigPath,
305
+ projectRoot: context.projectRoot,
306
+ workspaceRoot: context.workspaceRoot,
307
+ bundleWorkspaceDeps: false,
308
+ bundle: { globalName: config.globalName, minify, globals: config.globals, amdId: config.amdId },
309
+ bin: null,
310
+ reportPath,
311
+ };
312
+ };
313
+
314
+ const log = logger.channel('builder:bundle:rollup:dispatch');
315
+ const REPORT_DIR_PREFIX = 'hf-builder-rollup-';
316
+ const SWC_NODE_REGISTER = '@swc-node/register';
317
+ const swcNodeAvailable = (workspaceRoot) => existsSync(join$2(workspaceRoot, 'node_modules', '@swc-node', 'register', 'index.js'));
318
+ /**
319
+ * Default worker-path resolution: prefers the built-and-published artifact, falls
320
+ * back to the workspace dist path, and finally to the in-source TypeScript file
321
+ * via `@swc-node/register` (bootstrap case where builder is building itself for
322
+ * the first time and the dist worker doesn't exist yet).
323
+ *
324
+ * Looks at, in order:
325
+ * 1. `<workspaceRoot>/dist/libs/builder/bundle/rollup/worker/index.cjs.js`
326
+ * 2. `<workspaceRoot>/node_modules/@hyperfrontend/builder/bundle/rollup/worker/index.cjs.js`
327
+ * 3. `<workspaceRoot>/libs/builder/src/bundle/rollup/worker/index.ts` (with `--require \@swc-node/register`)
328
+ *
329
+ * @param workspaceRoot - Absolute workspace root.
330
+ * @returns Worker invocation descriptor, or `undefined` if no candidate exists.
331
+ *
332
+ * @example Locating the worker for an in-workspace consumer
333
+ * ```typescript
334
+ * const invocation = resolveDefaultRollupWorkerPath('/abs/repo')
335
+ * if (!invocation) throw new Error('builder rollup worker artifact not found')
336
+ * ```
337
+ */
338
+ const resolveDefaultRollupWorkerPath = (workspaceRoot) => {
339
+ const distCandidates = [
340
+ join$2(workspaceRoot, 'dist', 'libs', 'builder', 'bundle', 'rollup', 'worker', 'index.cjs.js'),
341
+ join$2(workspaceRoot, 'node_modules', '@hyperfrontend', 'builder', 'bundle', 'rollup', 'worker', 'index.cjs.js'),
342
+ ];
343
+ for (const path of distCandidates) {
344
+ if (existsSync(path))
345
+ return { path, execArgv: [] };
346
+ }
347
+ const sourcePath = join$2(workspaceRoot, 'libs', 'builder', 'src', 'bundle', 'rollup', 'worker', 'index.ts');
348
+ if (existsSync(sourcePath) && swcNodeAvailable(workspaceRoot)) {
349
+ return { path: sourcePath, execArgv: ['--require', SWC_NODE_REGISTER] };
350
+ }
351
+ return undefined;
352
+ };
353
+ const createReportDir = () => mkdtempSync(join$2(tmpdir(), REPORT_DIR_PREFIX));
354
+ const reportPathFor = (reportDir, descriptor) => {
355
+ const safeLabel = descriptor.inputFile.replace(/[^a-zA-Z0-9_-]+/g, '_');
356
+ return join$2(reportDir, `${descriptor.format}-${safeLabel}.json`);
357
+ };
358
+ const runOne = (descriptor, options, label) => createPromise((resolve, reject) => {
359
+ const execPath = options.execPath ?? process.execPath;
360
+ const argv = [...(options.execArgv ?? []), options.workerPath, stringify(descriptor)];
361
+ const child = spawn(execPath, argv, { stdio: ['ignore', 'pipe', 'pipe'] });
362
+ let capturedStderr = '';
363
+ child.stdout?.on('data', (chunk) => {
364
+ process.stdout.write(chunk);
365
+ });
366
+ child.stderr?.on('data', (chunk) => {
367
+ const text = typeof chunk === 'string' ? chunk : chunk.toString();
368
+ capturedStderr += text;
369
+ process.stderr.write(text);
370
+ });
371
+ child.on('error', (error) => {
372
+ reject(createError(`rollup worker for ${label} failed to spawn: ${error.message}`));
373
+ });
374
+ child.on('exit', (code) => {
375
+ if (code !== 0) {
376
+ const tail = capturedStderr.trim().split('\n').slice(-10).join('\n');
377
+ reject(createError(`rollup worker for ${label} exited with code ${code}\n${tail}`));
378
+ return;
379
+ }
380
+ resolve();
381
+ });
382
+ });
383
+ const readReport = (reportPath, label) => {
384
+ if (!existsSync(reportPath)) {
385
+ throw createError(`rollup worker for ${label} did not write a report at ${reportPath}`);
386
+ }
387
+ const data = parse(readFileSync(reportPath, 'utf8'));
388
+ return data;
389
+ };
390
+ /**
391
+ * Forks a single rollup worker for the supplied descriptor and waits for it
392
+ * to exit. The caller-provided descriptor's `reportPath` is overwritten with
393
+ * a temp-dir path created by this function.
394
+ *
395
+ * Each worker writes a JSON report at the temp path; this function reads it
396
+ * after the child exits and returns the per-job statistics. If the worker
397
+ * exits non-zero or fails to produce a report, the function throws with a
398
+ * label-rich message.
399
+ *
400
+ * The temp report directory is cleaned up before returning, regardless of
401
+ * success or failure.
402
+ *
403
+ * @param descriptor - Build descriptor to dispatch.
404
+ * @param options - Worker path + optional memory monitor.
405
+ * @returns Worker report (output size + memory + duration) for the dispatched job.
406
+ *
407
+ * @example Dispatching a single ESM build
408
+ * ```typescript
409
+ * const report = await dispatchRollupWorker(descriptor, { workerPath: '/abs/dist/.../worker.cjs.js' })
410
+ * ```
411
+ */
412
+ const dispatchRollupWorker = async (descriptor, options) => {
413
+ const reportDir = createReportDir();
414
+ const label = options.label ?? `${descriptor.format}:${descriptor.inputFile}`;
415
+ const reportPath = reportPathFor(reportDir, descriptor);
416
+ const job = { ...descriptor, reportPath };
417
+ try {
418
+ options.monitor?.check(`bundle:rollup:dispatch:${label}:start`);
419
+ log.info(`rollup dispatch: ${label}`);
420
+ await runOne(job, options, label);
421
+ const report = readReport(reportPath, label);
422
+ log.debug(`rollup dispatch done: ${label} size=${report.outputSize}B heap=${report.endHeapMB.toFixed(1)}MB rss=${report.endRssMB.toFixed(1)}MB t=${report.durationMs}ms`);
423
+ options.monitor?.check(`bundle:rollup:dispatch:${label}:end`);
424
+ return report;
425
+ }
426
+ finally {
427
+ rmSync(reportDir, { recursive: true, force: true });
428
+ }
429
+ };
430
+
431
+ const BYTES_PER_MB = 1024 * 1024;
432
+ const importMatchesWorkspaceRoute = (id, routes) => {
433
+ /* istanbul ignore if -- @preserve defensive: rollup always populates `exporter` on UNRESOLVED_IMPORT warnings */
434
+ if (id === undefined)
435
+ return false;
436
+ for (const route of routes) {
437
+ if (id === route.packageName || id.startsWith(`${route.packageName}/`))
438
+ return true;
439
+ }
440
+ return false;
441
+ };
442
+ const onWarnEntry = (warning, defaultHandler, workspaceRoutes) => {
443
+ // why: under bundleAllDeps the externalize plugin is the sole owner of workspace-dep resolution; an unresolved import of a routed package means it slipped past routing and would ship as a bare external specifier — fail loud rather than emit a broken artifact.
444
+ if (warning.code === 'UNRESOLVED_IMPORT' && importMatchesWorkspaceRoute(warning.exporter, workspaceRoutes)) {
445
+ throw new Error(`bundle: workspace import "${warning.exporter}" was not routed into _dependencies/ and would leak as an external import. Confirm it is declared in package.json#dependencies and mapped in tsconfig paths; subpath-only packages require a 'sub-path' workspaceDepPolicy entry.`);
446
+ }
447
+ if (warning.plugin === 'typescript' && warning.message?.includes('TS2307'))
448
+ return;
449
+ if (warning.code === 'EMPTY_BUNDLE')
450
+ return;
451
+ defaultHandler(warning);
452
+ };
453
+ const onWarnBundle = (warning, defaultHandler) => {
454
+ if (warning.plugin === 'typescript' && warning.message?.includes('TS2307'))
455
+ return;
456
+ if (warning.code === 'EMPTY_BUNDLE')
457
+ return;
458
+ if (warning.code === 'UNRESOLVED_IMPORT')
459
+ return;
460
+ defaultHandler(warning);
461
+ };
462
+ const buildExternalPredicate = (externals) => {
463
+ const set = new Set(externals);
464
+ return (id) => set.has(id);
465
+ };
466
+ const buildEntryPlugins = (job, format) => {
467
+ const plugins = [];
468
+ const hasWorkspaceRoutes = job.workspaceRoutes.length > 0;
469
+ if (job.bundledDepsPlugin) {
470
+ plugins.push(createExternalizeBundledDepsPlugin({
471
+ deps: job.bundledDepsPlugin.deps,
472
+ entryOutDir: job.outputDir,
473
+ format,
474
+ depsRoot: job.bundledDepsPlugin.depsRoot,
475
+ workspaceRoutes: job.workspaceRoutes,
476
+ }));
477
+ }
478
+ // why: when workspaceRoutes is populated, the externalize plugin owns @hyperfrontend/* resolution; the typescript plugin's baseUrl path-mapping must not preempt it. Falling through to the paths:{} branch lets externalize win.
479
+ const useBaseUrlMapping = job.bundleWorkspaceDeps && !hasWorkspaceRoutes;
480
+ plugins.push(json(), nodeResolve({ extensions: ['.ts', '.js'] }), commonjs(), useBaseUrlMapping ? typescript({
481
+ tsconfig: job.tsConfigPath,
482
+ declaration: false,
483
+ declarationMap: false,
484
+ sourceMap: job.sourcemap,
485
+ compilerOptions: {
486
+ baseUrl: job.workspaceRoot,
487
+ outDir: job.outputDir,
488
+ },
489
+ }) : typescript({
490
+ tsconfig: job.tsConfigPath,
491
+ declaration: false,
492
+ declarationMap: false,
493
+ rootDir: `${job.projectRoot}/src`,
494
+ outDir: job.outputDir,
495
+ sourceMap: job.sourcemap,
496
+ compilerOptions: { paths: {} },
497
+ }));
498
+ return plugins;
499
+ };
500
+ const buildBundlePlugins = (job) => [
501
+ json(),
502
+ nodeResolve({ extensions: ['.ts', '.js'], browser: true, preferBuiltins: false }),
503
+ commonjs(),
504
+ typescript({
505
+ tsconfig: job.tsConfigPath,
506
+ declaration: false,
507
+ declarationMap: false,
508
+ sourceMap: true,
509
+ compilerOptions: {
510
+ baseUrl: job.workspaceRoot,
511
+ outDir: job.outputDir,
512
+ },
513
+ }),
514
+ ];
515
+ const buildEntryOutput = (job, format) => {
516
+ if (job.bin) {
517
+ return {
518
+ file: job.bin.outputFile,
519
+ format,
520
+ sourcemap: job.sourcemap,
521
+ banner: job.bin.banner,
522
+ footer: job.bin.footer,
523
+ exports: job.bin.exports,
524
+ inlineDynamicImports: job.bin.inlineDynamicImports,
525
+ generatedCode: { constBindings: true },
526
+ ...(format === 'cjs' && { interop: 'compat' }),
527
+ };
528
+ }
529
+ const filename = format === 'esm' ? 'index.esm.js' : 'index.cjs.js';
530
+ return {
531
+ file: join$1(job.outputDir, filename),
532
+ format,
533
+ sourcemap: job.sourcemap,
534
+ generatedCode: { constBindings: true },
535
+ ...(format === 'cjs' && { interop: 'compat' }),
536
+ };
537
+ };
538
+ const buildEsmJob = (job) => ({
539
+ config: {
540
+ input: job.inputFile,
541
+ external: buildExternalPredicate(job.external),
542
+ onwarn: (warning, defaultHandler) => onWarnEntry(warning, defaultHandler, job.workspaceRoutes),
543
+ plugins: buildEntryPlugins(job, 'esm'),
544
+ },
545
+ outputs: [buildEntryOutput(job, 'esm')],
546
+ });
547
+ const buildCjsJob = (job) => ({
548
+ config: {
549
+ input: job.inputFile,
550
+ external: buildExternalPredicate(job.external),
551
+ onwarn: (warning, defaultHandler) => onWarnEntry(warning, defaultHandler, job.workspaceRoutes),
552
+ plugins: buildEntryPlugins(job, 'cjs'),
553
+ },
554
+ outputs: [buildEntryOutput(job, 'cjs')],
555
+ });
556
+ const buildIifeJob = (job) => {
557
+ const bundle = job.bundle;
558
+ const outputs = [
559
+ {
560
+ file: join$1(job.outputDir, 'index.iife.js'),
561
+ format: 'iife',
562
+ name: bundle.globalName,
563
+ sourcemap: job.sourcemap,
564
+ globals: bundle.globals,
565
+ },
566
+ ];
567
+ if (bundle.minify) {
568
+ outputs.push({
569
+ file: join$1(job.outputDir, 'index.iife.min.js'),
570
+ format: 'iife',
571
+ name: bundle.globalName,
572
+ sourcemap: job.sourcemap,
573
+ globals: bundle.globals,
574
+ plugins: [terser()],
575
+ });
576
+ }
577
+ return {
578
+ config: {
579
+ input: job.inputFile,
580
+ external: buildExternalPredicate(job.external),
581
+ onwarn: onWarnBundle,
582
+ plugins: buildBundlePlugins(job),
583
+ },
584
+ outputs,
585
+ };
586
+ };
587
+ const buildUmdJob = (job) => {
588
+ const bundle = job.bundle;
589
+ const base = {
590
+ format: 'umd',
591
+ name: bundle.globalName,
592
+ sourcemap: job.sourcemap,
593
+ globals: bundle.globals,
594
+ };
595
+ if (bundle.amdId)
596
+ base.amd = { id: bundle.amdId };
597
+ const outputs = [{ ...base, file: join$1(job.outputDir, 'index.umd.js') }];
598
+ if (bundle.minify) {
599
+ outputs.push({ ...base, file: join$1(job.outputDir, 'index.umd.min.js'), plugins: [terser()] });
600
+ }
601
+ return {
602
+ config: {
603
+ input: job.inputFile,
604
+ external: buildExternalPredicate(job.external),
605
+ onwarn: onWarnBundle,
606
+ plugins: buildBundlePlugins(job),
607
+ },
608
+ outputs,
609
+ };
610
+ };
611
+ const buildJob = (job) => {
612
+ if (job.format === 'esm')
613
+ return buildEsmJob(job);
614
+ if (job.format === 'cjs')
615
+ return buildCjsJob(job);
616
+ if (job.format === 'iife')
617
+ return buildIifeJob(job);
618
+ return buildUmdJob(job);
619
+ };
620
+ const ensureDir = (path) => {
621
+ mkdirSync(path, { recursive: true });
622
+ };
623
+ const safeStatSize = (filePath) => {
624
+ /* istanbul ignore next -- @preserve defensive: rollup always produces the declared output file */
625
+ try {
626
+ return statSync(filePath).size;
627
+ }
628
+ catch {
629
+ return 0;
630
+ }
631
+ };
632
+ /**
633
+ * Runs a single rollup invocation as described by `job` and writes the
634
+ * resulting report to `job.reportPath`.
635
+ *
636
+ * Use this to drive the worker logic in-process; use {@link dispatchRollupWorker}
637
+ * to run the same job in a forked Node process.
638
+ *
639
+ * @param job - Descriptor describing the rollup invocation.
640
+ * @returns The on-disk report data the worker would have persisted.
641
+ *
642
+ * @example Driving the worker logic in-process for a fixture
643
+ * ```typescript
644
+ * const report = await runRollupWorkerJob({ format: 'esm', inputFile: '/abs/in.ts', ... })
645
+ * ```
646
+ */
647
+ const runRollupWorkerJob = async (job) => {
648
+ const startedAt = Date.now();
649
+ ensureDir(job.outputDir);
650
+ ensureDir(dirname(job.reportPath));
651
+ const { config, outputs } = buildJob(job);
652
+ const bundle = await rollup(config);
653
+ let totalSize = 0;
654
+ try {
655
+ for (const output of outputs) {
656
+ await bundle.write(output);
657
+ totalSize += safeStatSize(output.file);
658
+ }
659
+ }
660
+ finally {
661
+ await bundle.close();
662
+ }
663
+ if (job.bin) {
664
+ chmodSync(job.bin.outputFile, job.bin.chmod);
665
+ }
666
+ const memory = process.memoryUsage();
667
+ const report = {
668
+ outputSize: totalSize,
669
+ endHeapMB: memory.heapUsed / BYTES_PER_MB,
670
+ endRssMB: memory.rss / BYTES_PER_MB,
671
+ durationMs: Date.now() - startedAt,
672
+ };
673
+ writeFileSync(job.reportPath, JSON.stringify(report));
674
+ return report;
675
+ };
676
+
677
+ const isMainModule = () => {
678
+ if (typeof require !== 'undefined' && typeof module !== 'undefined' && require.main === module) {
679
+ return true;
680
+ }
681
+ const argv1 = process.argv[1] ?? '';
682
+ return argv1.endsWith('index.cjs.js') || argv1.endsWith('index.esm.js') || argv1.endsWith('index.ts') || argv1.endsWith('index.js');
683
+ };
684
+ if (isMainModule()) {
685
+ const raw = process.argv[2];
686
+ if (!raw) {
687
+ process.stderr.write('rollup worker: missing job spec on argv\n');
688
+ process.exit(2);
689
+ }
690
+ const job = JSON.parse(raw);
691
+ runRollupWorkerJob(job).then(() => process.exit(0), (error) => {
692
+ const message = error instanceof Error ? (error.stack ?? error.message) : String(error);
693
+ process.stderr.write(`rollup worker for ${job.format}/${job.inputFile} failed: ${message}\n`);
694
+ process.exit(1);
695
+ });
696
+ }
697
+
698
+ export { dispatchRollupWorker, resolveDefaultRollupWorkerPath, runRollupWorkerJob, toBinBuildDescriptor, toCjsBuildDescriptor, toEsmBuildDescriptor, toIifeBuildDescriptor, toUmdBuildDescriptor };