app-builder-lib 26.15.2 → 27.0.0-alpha.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 (997) hide show
  1. package/dist/Framework.d.ts +40 -0
  2. package/dist/Framework.d.ts.map +1 -0
  3. package/dist/Framework.js +4 -0
  4. package/dist/Framework.js.map +1 -0
  5. package/dist/appInfo.d.ts +32 -0
  6. package/dist/appInfo.d.ts.map +1 -0
  7. package/dist/appInfo.js +145 -0
  8. package/dist/appInfo.js.map +1 -0
  9. package/dist/asar/asar.d.ts +39 -0
  10. package/dist/asar/asar.d.ts.map +1 -0
  11. package/dist/asar/asar.js +155 -0
  12. package/dist/asar/asar.js.map +1 -0
  13. package/dist/asar/asarFileChecker.d.ts +3 -0
  14. package/dist/asar/asarFileChecker.d.ts.map +1 -0
  15. package/dist/asar/asarFileChecker.js +22 -0
  16. package/dist/asar/asarFileChecker.js.map +1 -0
  17. package/dist/asar/asarUtil.d.ts +2 -0
  18. package/dist/asar/asarUtil.d.ts.map +1 -0
  19. package/dist/asar/asarUtil.js +278 -0
  20. package/dist/asar/asarUtil.js.map +1 -0
  21. package/dist/asar/integrity.d.ts +16 -0
  22. package/dist/asar/integrity.d.ts.map +1 -0
  23. package/dist/asar/integrity.js +59 -0
  24. package/dist/asar/integrity.js.map +1 -0
  25. package/dist/asar/unpackDetector.d.ts +2 -0
  26. package/dist/asar/unpackDetector.d.ts.map +1 -0
  27. package/dist/asar/unpackDetector.js +39 -0
  28. package/dist/asar/unpackDetector.js.map +1 -0
  29. package/dist/codeSign/certInfo.d.ts +55 -0
  30. package/dist/codeSign/certInfo.d.ts.map +1 -0
  31. package/dist/codeSign/certInfo.js +459 -0
  32. package/dist/codeSign/certInfo.js.map +1 -0
  33. package/dist/codeSign/codesign.d.ts +4 -0
  34. package/dist/codeSign/codesign.d.ts.map +1 -0
  35. package/dist/codeSign/codesign.js +32 -0
  36. package/dist/codeSign/codesign.js.map +1 -0
  37. package/dist/codeSign/mac/macCodeSign.d.ts +29 -0
  38. package/dist/codeSign/mac/macCodeSign.d.ts.map +1 -0
  39. package/dist/codeSign/mac/macCodeSign.js +273 -0
  40. package/dist/codeSign/mac/macCodeSign.js.map +1 -0
  41. package/dist/codeSign/signManager.d.ts +14 -0
  42. package/dist/codeSign/signManager.d.ts.map +1 -0
  43. package/dist/codeSign/signManager.js +2 -0
  44. package/dist/codeSign/signManager.js.map +1 -0
  45. package/dist/codeSign/win/windowsCodeSign.d.ts +8 -0
  46. package/dist/codeSign/win/windowsCodeSign.d.ts.map +1 -0
  47. package/dist/codeSign/win/windowsCodeSign.js +34 -0
  48. package/dist/codeSign/win/windowsCodeSign.js.map +1 -0
  49. package/dist/codeSign/win/windowsSignAzureManager.d.ts +18 -0
  50. package/dist/codeSign/win/windowsSignAzureManager.d.ts.map +1 -0
  51. package/dist/codeSign/win/windowsSignAzureManager.js +68 -0
  52. package/dist/codeSign/win/windowsSignAzureManager.js.map +1 -0
  53. package/dist/codeSign/win/windowsSignToolManager.d.ts +59 -0
  54. package/dist/codeSign/win/windowsSignToolManager.d.ts.map +1 -0
  55. package/dist/codeSign/win/windowsSignToolManager.js +364 -0
  56. package/dist/codeSign/win/windowsSignToolManager.js.map +1 -0
  57. package/dist/configuration.d.ts +1010 -0
  58. package/dist/configuration.d.ts.map +1 -0
  59. package/dist/configuration.js +2 -0
  60. package/dist/configuration.js.map +1 -0
  61. package/dist/core.d.ts +61 -0
  62. package/dist/core.d.ts.map +1 -0
  63. package/dist/core.js +61 -0
  64. package/dist/core.js.map +1 -0
  65. package/dist/electron/ElectronFramework.d.ts +17 -0
  66. package/dist/electron/ElectronFramework.d.ts.map +1 -0
  67. package/dist/electron/ElectronFramework.js +236 -0
  68. package/dist/electron/ElectronFramework.js.map +1 -0
  69. package/dist/electron/electronVersion.d.ts +7 -0
  70. package/dist/electron/electronVersion.d.ts.map +1 -0
  71. package/dist/electron/electronVersion.js +119 -0
  72. package/dist/electron/electronVersion.js.map +1 -0
  73. package/dist/electron/injectFFMPEG.d.ts +12 -0
  74. package/dist/electron/injectFFMPEG.d.ts.map +1 -0
  75. package/dist/electron/injectFFMPEG.js +53 -0
  76. package/dist/electron/injectFFMPEG.js.map +1 -0
  77. package/dist/electron/mac/electronMac.d.ts +2 -0
  78. package/dist/electron/mac/electronMac.d.ts.map +1 -0
  79. package/dist/electron/mac/electronMac.js +254 -0
  80. package/dist/electron/mac/electronMac.js.map +1 -0
  81. package/dist/electron/search-module.d.ts +24 -0
  82. package/dist/electron/search-module.d.ts.map +1 -0
  83. package/dist/electron/search-module.js +68 -0
  84. package/dist/electron/search-module.js.map +1 -0
  85. package/dist/electron/win/electronWin.d.ts +2 -0
  86. package/dist/electron/win/electronWin.d.ts.map +1 -0
  87. package/dist/electron/win/electronWin.js +36 -0
  88. package/dist/electron/win/electronWin.js.map +1 -0
  89. package/dist/errorMessages.d.ts +2 -0
  90. package/dist/errorMessages.d.ts.map +1 -0
  91. package/dist/errorMessages.js +8 -0
  92. package/dist/errorMessages.js.map +1 -0
  93. package/dist/fileMatcher.d.ts +31 -0
  94. package/dist/fileMatcher.d.ts.map +1 -0
  95. package/dist/fileMatcher.js +277 -0
  96. package/dist/fileMatcher.js.map +1 -0
  97. package/dist/fileTransformer.d.ts +2 -0
  98. package/dist/fileTransformer.d.ts.map +1 -0
  99. package/dist/fileTransformer.js +82 -0
  100. package/dist/fileTransformer.js.map +1 -0
  101. package/dist/forge-maker.d.ts +6 -0
  102. package/dist/forge-maker.d.ts.map +1 -0
  103. package/dist/forge-maker.js +20 -0
  104. package/dist/forge-maker.js.map +1 -0
  105. package/dist/index.d.ts +40 -0
  106. package/dist/index.d.ts.map +1 -0
  107. package/dist/index.js +77 -0
  108. package/dist/index.js.map +1 -0
  109. package/dist/indexInternal.d.ts +46 -0
  110. package/dist/indexInternal.d.ts.map +1 -0
  111. package/dist/indexInternal.js +39 -0
  112. package/dist/indexInternal.js.map +1 -0
  113. package/dist/linuxPackager.d.ts +13 -0
  114. package/dist/linuxPackager.d.ts.map +1 -0
  115. package/dist/linuxPackager.js +75 -0
  116. package/dist/linuxPackager.js.map +1 -0
  117. package/dist/macPackager.d.ts +50 -0
  118. package/dist/macPackager.d.ts.map +1 -0
  119. package/dist/macPackager.js +442 -0
  120. package/dist/macPackager.js.map +1 -0
  121. package/dist/node-module-collector/bunNodeModulesCollector.d.ts +11 -0
  122. package/dist/node-module-collector/bunNodeModulesCollector.d.ts.map +1 -0
  123. package/dist/node-module-collector/bunNodeModulesCollector.js +14 -0
  124. package/dist/node-module-collector/bunNodeModulesCollector.js.map +1 -0
  125. package/dist/node-module-collector/hoist.d.ts +124 -0
  126. package/dist/node-module-collector/hoist.d.ts.map +1 -0
  127. package/dist/node-module-collector/hoist.js +880 -0
  128. package/dist/node-module-collector/hoist.js.map +1 -0
  129. package/dist/node-module-collector/index.d.ts +21 -0
  130. package/dist/node-module-collector/index.d.ts.map +1 -0
  131. package/dist/node-module-collector/index.js +124 -0
  132. package/dist/node-module-collector/index.js.map +1 -0
  133. package/dist/node-module-collector/moduleManager.d.ts +94 -0
  134. package/dist/node-module-collector/moduleManager.d.ts.map +1 -0
  135. package/dist/node-module-collector/moduleManager.js +314 -0
  136. package/dist/node-module-collector/moduleManager.js.map +1 -0
  137. package/dist/node-module-collector/nodeModulesCollector.d.ts +138 -0
  138. package/dist/node-module-collector/nodeModulesCollector.d.ts.map +1 -0
  139. package/dist/node-module-collector/nodeModulesCollector.js +421 -0
  140. package/dist/node-module-collector/nodeModulesCollector.js.map +1 -0
  141. package/dist/node-module-collector/npmNodeModulesCollector.d.ts +15 -0
  142. package/dist/node-module-collector/npmNodeModulesCollector.d.ts.map +1 -0
  143. package/dist/node-module-collector/npmNodeModulesCollector.js +75 -0
  144. package/dist/node-module-collector/npmNodeModulesCollector.js.map +1 -0
  145. package/dist/node-module-collector/packageManager.d.ts +18 -0
  146. package/dist/node-module-collector/packageManager.d.ts.map +1 -0
  147. package/dist/node-module-collector/packageManager.js +137 -0
  148. package/dist/node-module-collector/packageManager.js.map +1 -0
  149. package/dist/node-module-collector/pnpmNodeModulesCollector.d.ts +45 -0
  150. package/dist/node-module-collector/pnpmNodeModulesCollector.d.ts.map +1 -0
  151. package/dist/node-module-collector/pnpmNodeModulesCollector.js +184 -0
  152. package/dist/node-module-collector/pnpmNodeModulesCollector.js.map +1 -0
  153. package/dist/node-module-collector/traversalNodeModulesCollector.d.ts +19 -0
  154. package/dist/node-module-collector/traversalNodeModulesCollector.d.ts.map +1 -0
  155. package/dist/node-module-collector/traversalNodeModulesCollector.js +118 -0
  156. package/dist/node-module-collector/traversalNodeModulesCollector.js.map +1 -0
  157. package/dist/node-module-collector/types.d.ts +53 -0
  158. package/dist/node-module-collector/types.d.ts.map +1 -0
  159. package/dist/node-module-collector/types.js +2 -0
  160. package/dist/node-module-collector/yarnBerryNodeModulesCollector.d.ts +16 -0
  161. package/dist/node-module-collector/yarnBerryNodeModulesCollector.d.ts.map +1 -0
  162. package/dist/node-module-collector/yarnBerryNodeModulesCollector.js +87 -0
  163. package/dist/node-module-collector/yarnBerryNodeModulesCollector.js.map +1 -0
  164. package/dist/node-module-collector/yarnNodeModulesCollector.d.ts +11 -0
  165. package/dist/node-module-collector/yarnNodeModulesCollector.d.ts.map +1 -0
  166. package/dist/node-module-collector/yarnNodeModulesCollector.js +18 -0
  167. package/dist/node-module-collector/yarnNodeModulesCollector.js.map +1 -0
  168. package/dist/options/AppXOptions.d.ts +106 -0
  169. package/dist/options/AppXOptions.d.ts.map +1 -0
  170. package/dist/options/AppXOptions.js +2 -0
  171. package/dist/options/AppXOptions.js.map +1 -0
  172. package/dist/options/CommonWindowsInstallerConfiguration.d.ts +48 -0
  173. package/dist/options/CommonWindowsInstallerConfiguration.d.ts.map +1 -0
  174. package/dist/options/CommonWindowsInstallerConfiguration.js +47 -0
  175. package/dist/options/CommonWindowsInstallerConfiguration.js.map +1 -0
  176. package/dist/options/FileAssociation.d.ts +46 -0
  177. package/dist/options/FileAssociation.d.ts.map +1 -0
  178. package/dist/options/FileAssociation.js +2 -0
  179. package/dist/options/MsiOptions.d.ts +27 -0
  180. package/dist/options/MsiOptions.d.ts.map +1 -0
  181. package/dist/options/MsiOptions.js +2 -0
  182. package/dist/options/MsiOptions.js.map +1 -0
  183. package/dist/options/MsiWrappedOptions.d.ts +27 -0
  184. package/dist/options/MsiWrappedOptions.d.ts.map +1 -0
  185. package/dist/options/MsiWrappedOptions.js +2 -0
  186. package/dist/options/MsiWrappedOptions.js.map +1 -0
  187. package/dist/options/PlatformSpecificBuildOptions.d.ts +261 -0
  188. package/dist/options/PlatformSpecificBuildOptions.d.ts.map +1 -0
  189. package/dist/options/PlatformSpecificBuildOptions.js +2 -0
  190. package/dist/options/PlatformSpecificBuildOptions.js.map +1 -0
  191. package/dist/options/SnapOptions.d.ts +480 -0
  192. package/dist/options/SnapOptions.d.ts.map +1 -0
  193. package/dist/options/SnapOptions.js +2 -0
  194. package/dist/options/SnapOptions.js.map +1 -0
  195. package/dist/options/SquirrelWindowsOptions.d.ts +47 -0
  196. package/dist/options/SquirrelWindowsOptions.d.ts.map +1 -0
  197. package/dist/options/SquirrelWindowsOptions.js +2 -0
  198. package/dist/options/SquirrelWindowsOptions.js.map +1 -0
  199. package/dist/options/linuxOptions.d.ts +289 -0
  200. package/dist/options/linuxOptions.d.ts.map +1 -0
  201. package/dist/options/linuxOptions.js +2 -0
  202. package/dist/options/linuxOptions.js.map +1 -0
  203. package/dist/options/macOptions.d.ts +390 -0
  204. package/dist/options/macOptions.d.ts.map +1 -0
  205. package/dist/options/macOptions.js +2 -0
  206. package/dist/options/macOptions.js.map +1 -0
  207. package/dist/options/metadata.d.ts +54 -0
  208. package/dist/options/metadata.d.ts.map +1 -0
  209. package/dist/options/metadata.js +2 -0
  210. package/dist/options/metadata.js.map +1 -0
  211. package/dist/options/pkgOptions.d.ts +137 -0
  212. package/dist/options/pkgOptions.d.ts.map +1 -0
  213. package/dist/options/pkgOptions.js +2 -0
  214. package/dist/options/pkgOptions.js.map +1 -0
  215. package/dist/options/winOptions.d.ts +166 -0
  216. package/dist/options/winOptions.d.ts.map +1 -0
  217. package/dist/options/winOptions.js +2 -0
  218. package/dist/options/winOptions.js.map +1 -0
  219. package/dist/packager.d.ts +100 -0
  220. package/dist/packager.d.ts.map +1 -0
  221. package/dist/packager.js +491 -0
  222. package/dist/packager.js.map +1 -0
  223. package/dist/packagerApi.d.ts +32 -0
  224. package/dist/packagerApi.d.ts.map +1 -0
  225. package/dist/packagerApi.js +2 -0
  226. package/dist/packagerApi.js.map +1 -0
  227. package/dist/platformPackager.d.ts +132 -0
  228. package/dist/platformPackager.d.ts.map +1 -0
  229. package/dist/platformPackager.js +761 -0
  230. package/dist/platformPackager.js.map +1 -0
  231. package/dist/presets/rectCra.d.ts +2 -0
  232. package/dist/presets/rectCra.d.ts.map +1 -0
  233. package/dist/presets/rectCra.js +19 -0
  234. package/dist/presets/rectCra.js.map +1 -0
  235. package/dist/publish/PublishManager.d.ts +33 -0
  236. package/dist/publish/PublishManager.d.ts.map +1 -0
  237. package/dist/publish/PublishManager.js +470 -0
  238. package/dist/publish/PublishManager.js.map +1 -0
  239. package/dist/publish/updateInfoBuilder.d.ts +15 -0
  240. package/dist/publish/updateInfoBuilder.d.ts.map +1 -0
  241. package/dist/publish/updateInfoBuilder.js +221 -0
  242. package/dist/publish/updateInfoBuilder.js.map +1 -0
  243. package/dist/targets/ArchiveTarget.d.ts +12 -0
  244. package/dist/targets/ArchiveTarget.d.ts.map +1 -0
  245. package/dist/targets/ArchiveTarget.js +93 -0
  246. package/dist/targets/ArchiveTarget.js.map +1 -0
  247. package/dist/targets/archive.d.ts +27 -0
  248. package/dist/targets/archive.d.ts.map +1 -0
  249. package/dist/targets/archive.js +174 -0
  250. package/dist/targets/archive.js.map +1 -0
  251. package/dist/targets/blockmap/blockmap.d.ts +17 -0
  252. package/dist/targets/blockmap/blockmap.d.ts.map +1 -0
  253. package/dist/targets/blockmap/blockmap.js +150 -0
  254. package/dist/targets/blockmap/blockmap.js.map +1 -0
  255. package/dist/targets/differentialUpdateInfoBuilder.d.ts +16 -0
  256. package/dist/targets/differentialUpdateInfoBuilder.d.ts.map +1 -0
  257. package/dist/targets/differentialUpdateInfoBuilder.js +73 -0
  258. package/dist/targets/differentialUpdateInfoBuilder.js.map +1 -0
  259. package/dist/targets/linux/FlatpakTarget.d.ts +21 -0
  260. package/dist/targets/linux/FlatpakTarget.d.ts.map +1 -0
  261. package/dist/targets/linux/FlatpakTarget.js +156 -0
  262. package/dist/targets/linux/FlatpakTarget.js.map +1 -0
  263. package/dist/targets/linux/FpmTarget.d.ts +23 -0
  264. package/dist/targets/linux/FpmTarget.d.ts.map +1 -0
  265. package/dist/targets/linux/FpmTarget.js +365 -0
  266. package/dist/targets/linux/FpmTarget.js.map +1 -0
  267. package/dist/targets/linux/LinuxTargetHelper.d.ts +24 -0
  268. package/dist/targets/linux/LinuxTargetHelper.d.ts.map +1 -0
  269. package/dist/targets/linux/LinuxTargetHelper.js +332 -0
  270. package/dist/targets/linux/LinuxTargetHelper.js.map +1 -0
  271. package/dist/targets/linux/appimage/AppImageTarget.d.ts +16 -0
  272. package/dist/targets/linux/appimage/AppImageTarget.d.ts.map +1 -0
  273. package/dist/targets/linux/appimage/AppImageTarget.js +141 -0
  274. package/dist/targets/linux/appimage/AppImageTarget.js.map +1 -0
  275. package/dist/targets/linux/appimage/appImageUtil.d.ts +57 -0
  276. package/dist/targets/linux/appimage/appImageUtil.d.ts.map +1 -0
  277. package/dist/targets/linux/appimage/appImageUtil.js +317 -0
  278. package/dist/targets/linux/appimage/appImageUtil.js.map +1 -0
  279. package/dist/targets/linux/appimage/appLauncher.d.ts +4 -0
  280. package/dist/targets/linux/appimage/appLauncher.d.ts.map +1 -0
  281. package/dist/targets/linux/appimage/appLauncher.js +91 -0
  282. package/dist/targets/linux/appimage/appLauncher.js.map +1 -0
  283. package/dist/targets/linux/snap/SnapTarget.d.ts +37 -0
  284. package/dist/targets/linux/snap/SnapTarget.d.ts.map +1 -0
  285. package/dist/targets/linux/snap/SnapTarget.js +96 -0
  286. package/dist/targets/linux/snap/SnapTarget.js.map +1 -0
  287. package/dist/targets/linux/snap/core24.d.ts +53 -0
  288. package/dist/targets/linux/snap/core24.d.ts.map +1 -0
  289. package/dist/targets/linux/snap/core24.js +444 -0
  290. package/dist/targets/linux/snap/core24.js.map +1 -0
  291. package/dist/targets/linux/snap/coreCustom.d.ts +29 -0
  292. package/dist/targets/linux/snap/coreCustom.d.ts.map +1 -0
  293. package/dist/targets/linux/snap/coreCustom.js +60 -0
  294. package/dist/targets/linux/snap/coreCustom.js.map +1 -0
  295. package/dist/targets/linux/snap/coreLegacy.d.ts +46 -0
  296. package/dist/targets/linux/snap/coreLegacy.d.ts.map +1 -0
  297. package/dist/targets/linux/snap/coreLegacy.js +402 -0
  298. package/dist/targets/linux/snap/coreLegacy.js.map +1 -0
  299. package/dist/targets/linux/snap/snapcraftBuilder.d.ts +40 -0
  300. package/dist/targets/linux/snap/snapcraftBuilder.d.ts.map +1 -0
  301. package/dist/targets/linux/snap/snapcraftBuilder.js +414 -0
  302. package/dist/targets/linux/snap/snapcraftBuilder.js.map +1 -0
  303. package/dist/targets/mac/MacTargetHelper.d.ts +30 -0
  304. package/dist/targets/mac/MacTargetHelper.d.ts.map +1 -0
  305. package/dist/targets/mac/MacTargetHelper.js +267 -0
  306. package/dist/targets/mac/MacTargetHelper.js.map +1 -0
  307. package/dist/targets/mac/pkg.d.ts +31 -0
  308. package/dist/targets/mac/pkg.d.ts.map +1 -0
  309. package/dist/targets/mac/pkg.js +271 -0
  310. package/dist/targets/mac/pkg.js.map +1 -0
  311. package/dist/targets/targetFactory.d.ts +13 -0
  312. package/dist/targets/targetFactory.d.ts.map +1 -0
  313. package/dist/targets/targetFactory.js +94 -0
  314. package/dist/targets/targetFactory.js.map +1 -0
  315. package/dist/targets/targetUtil.d.ts +16 -0
  316. package/dist/targets/targetUtil.d.ts.map +1 -0
  317. package/dist/targets/targetUtil.js +40 -0
  318. package/dist/targets/targetUtil.js.map +1 -0
  319. package/dist/targets/win/AppxCapabilities.d.ts +9 -0
  320. package/dist/targets/win/AppxCapabilities.d.ts.map +1 -0
  321. package/dist/targets/win/AppxCapabilities.js +254 -0
  322. package/dist/targets/win/AppxCapabilities.js.map +1 -0
  323. package/dist/targets/win/AppxTarget.d.ts +18 -0
  324. package/dist/targets/win/AppxTarget.d.ts.map +1 -0
  325. package/dist/targets/win/AppxTarget.js +398 -0
  326. package/dist/targets/win/AppxTarget.js.map +1 -0
  327. package/dist/targets/win/MsiTarget.d.ts +29 -0
  328. package/dist/targets/win/MsiTarget.d.ts.map +1 -0
  329. package/dist/targets/win/MsiTarget.js +268 -0
  330. package/dist/targets/win/MsiTarget.js.map +1 -0
  331. package/dist/targets/win/MsiWrappedTarget.d.ts +20 -0
  332. package/dist/targets/win/MsiWrappedTarget.d.ts.map +1 -0
  333. package/dist/targets/win/MsiWrappedTarget.js +77 -0
  334. package/dist/targets/win/MsiWrappedTarget.js.map +1 -0
  335. package/dist/targets/win/nsis/Commands.d.ts +10 -0
  336. package/dist/targets/win/nsis/Commands.d.ts.map +1 -0
  337. package/dist/targets/win/nsis/Commands.js +2 -0
  338. package/dist/targets/win/nsis/Commands.js.map +1 -0
  339. package/dist/targets/win/nsis/Defines.d.ts +81 -0
  340. package/dist/targets/win/nsis/Defines.d.ts.map +1 -0
  341. package/dist/targets/win/nsis/Defines.js +2 -0
  342. package/dist/targets/win/nsis/Defines.js.map +1 -0
  343. package/dist/targets/win/nsis/NsisTarget.d.ts +43 -0
  344. package/dist/targets/win/nsis/NsisTarget.d.ts.map +1 -0
  345. package/dist/targets/win/nsis/NsisTarget.js +726 -0
  346. package/dist/targets/win/nsis/NsisTarget.js.map +1 -0
  347. package/dist/targets/win/nsis/WebInstallerTarget.d.ts +14 -0
  348. package/dist/targets/win/nsis/WebInstallerTarget.d.ts.map +1 -0
  349. package/dist/targets/win/nsis/WebInstallerTarget.js +43 -0
  350. package/dist/targets/win/nsis/WebInstallerTarget.js.map +1 -0
  351. package/dist/targets/win/nsis/nsisLang.d.ts +11 -0
  352. package/dist/targets/win/nsis/nsisLang.d.ts.map +1 -0
  353. package/dist/targets/win/nsis/nsisLang.js +94 -0
  354. package/dist/targets/win/nsis/nsisLang.js.map +1 -0
  355. package/dist/targets/win/nsis/nsisLicense.d.ts +5 -0
  356. package/dist/targets/win/nsis/nsisLicense.d.ts.map +1 -0
  357. package/dist/targets/win/nsis/nsisLicense.js +73 -0
  358. package/dist/targets/win/nsis/nsisLicense.js.map +1 -0
  359. package/dist/targets/win/nsis/nsisOptions.d.ts +275 -0
  360. package/dist/targets/win/nsis/nsisOptions.d.ts.map +1 -0
  361. package/dist/targets/win/nsis/nsisOptions.js +2 -0
  362. package/dist/targets/win/nsis/nsisOptions.js.map +1 -0
  363. package/dist/targets/win/nsis/nsisScriptGenerator.d.ts +13 -0
  364. package/dist/targets/win/nsis/nsisScriptGenerator.d.ts.map +1 -0
  365. package/dist/targets/win/nsis/nsisScriptGenerator.js +59 -0
  366. package/dist/targets/win/nsis/nsisScriptGenerator.js.map +1 -0
  367. package/dist/targets/win/nsis/nsisUtil.d.ts +26 -0
  368. package/dist/targets/win/nsis/nsisUtil.d.ts.map +1 -0
  369. package/dist/targets/win/nsis/nsisUtil.js +218 -0
  370. package/dist/targets/win/nsis/nsisUtil.js.map +1 -0
  371. package/dist/targets/win/nsis/nsisValidation.d.ts +19 -0
  372. package/dist/targets/win/nsis/nsisValidation.d.ts.map +1 -0
  373. package/dist/targets/win/nsis/nsisValidation.js +49 -0
  374. package/dist/targets/win/nsis/nsisValidation.js.map +1 -0
  375. package/dist/toolsets/7zip.d.ts +9 -0
  376. package/dist/toolsets/7zip.d.ts.map +1 -0
  377. package/dist/toolsets/7zip.js +80 -0
  378. package/dist/toolsets/7zip.js.map +1 -0
  379. package/dist/toolsets/appimage.d.ts +20 -0
  380. package/dist/toolsets/appimage.d.ts.map +1 -0
  381. package/dist/toolsets/appimage.js +67 -0
  382. package/dist/toolsets/appimage.js.map +1 -0
  383. package/dist/toolsets/custom.d.ts +5 -0
  384. package/dist/toolsets/custom.d.ts.map +1 -0
  385. package/dist/toolsets/custom.js +200 -0
  386. package/dist/toolsets/custom.js.map +1 -0
  387. package/dist/toolsets/fpm.d.ts +3 -0
  388. package/dist/toolsets/fpm.d.ts.map +1 -0
  389. package/dist/toolsets/fpm.js +49 -0
  390. package/dist/toolsets/fpm.js.map +1 -0
  391. package/dist/toolsets/icons.d.ts +12 -0
  392. package/dist/toolsets/icons.d.ts.map +1 -0
  393. package/dist/toolsets/icons.js +36 -0
  394. package/dist/toolsets/icons.js.map +1 -0
  395. package/dist/toolsets/linuxToolsMac.d.ts +8 -0
  396. package/dist/toolsets/linuxToolsMac.d.ts.map +1 -0
  397. package/dist/toolsets/linuxToolsMac.js +31 -0
  398. package/dist/toolsets/linuxToolsMac.js.map +1 -0
  399. package/dist/toolsets/nsis.d.ts +13 -0
  400. package/dist/toolsets/nsis.d.ts.map +1 -0
  401. package/dist/toolsets/nsis.js +100 -0
  402. package/dist/toolsets/nsis.js.map +1 -0
  403. package/dist/toolsets/winCodeSign.d.ts +42 -0
  404. package/dist/toolsets/winCodeSign.d.ts.map +1 -0
  405. package/dist/toolsets/winCodeSign.js +142 -0
  406. package/dist/toolsets/winCodeSign.js.map +1 -0
  407. package/dist/toolsets/wine.d.ts +6 -0
  408. package/dist/toolsets/wine.d.ts.map +1 -0
  409. package/dist/toolsets/wine.js +79 -0
  410. package/dist/toolsets/wine.js.map +1 -0
  411. package/dist/util/AppFileWalker.d.ts +14 -0
  412. package/dist/util/AppFileWalker.d.ts.map +1 -0
  413. package/dist/util/AppFileWalker.js +69 -0
  414. package/dist/util/AppFileWalker.js.map +1 -0
  415. package/dist/util/NodeModuleCopyHelper.d.ts +2 -0
  416. package/dist/util/NodeModuleCopyHelper.d.ts.map +1 -0
  417. package/dist/util/NodeModuleCopyHelper.js +160 -0
  418. package/dist/util/NodeModuleCopyHelper.js.map +1 -0
  419. package/dist/util/appFileCopier.d.ts +17 -0
  420. package/dist/util/appFileCopier.d.ts.map +1 -0
  421. package/dist/util/appFileCopier.js +190 -0
  422. package/dist/util/appFileCopier.js.map +1 -0
  423. package/dist/util/asyncEventEmitter.d.ts +34 -0
  424. package/dist/util/asyncEventEmitter.d.ts.map +1 -0
  425. package/dist/util/asyncEventEmitter.js +56 -0
  426. package/dist/util/asyncEventEmitter.js.map +1 -0
  427. package/dist/util/bundledTool.d.ts +8 -0
  428. package/dist/util/bundledTool.d.ts.map +1 -0
  429. package/dist/util/bundledTool.js +16 -0
  430. package/dist/util/bundledTool.js.map +1 -0
  431. package/dist/util/cacheManager.d.ts +19 -0
  432. package/dist/util/cacheManager.d.ts.map +1 -0
  433. package/dist/util/cacheManager.js +65 -0
  434. package/dist/util/cacheManager.js.map +1 -0
  435. package/dist/util/cacheState.d.ts +29 -0
  436. package/dist/util/cacheState.d.ts.map +1 -0
  437. package/dist/util/cacheState.js +134 -0
  438. package/dist/util/cacheState.js.map +1 -0
  439. package/dist/util/config/config.d.ts +13 -0
  440. package/dist/util/config/config.d.ts.map +1 -0
  441. package/dist/util/config/config.js +236 -0
  442. package/dist/util/config/config.js.map +1 -0
  443. package/dist/util/config/load.d.ts +20 -0
  444. package/dist/util/config/load.d.ts.map +1 -0
  445. package/dist/util/config/load.js +122 -0
  446. package/dist/util/config/load.js.map +1 -0
  447. package/dist/util/config/schemaValidator.d.ts +8 -0
  448. package/dist/util/config/schemaValidator.d.ts.map +1 -0
  449. package/dist/util/config/schemaValidator.js +161 -0
  450. package/dist/util/config/schemaValidator.js.map +1 -0
  451. package/dist/util/dynamicImport.d.ts +2 -0
  452. package/dist/util/dynamicImport.d.ts.map +1 -0
  453. package/dist/util/dynamicImport.js +9 -0
  454. package/dist/util/dynamicImport.js.map +1 -0
  455. package/dist/util/electronGet.d.ts +68 -0
  456. package/dist/util/electronGet.d.ts.map +1 -0
  457. package/dist/util/electronGet.js +560 -0
  458. package/dist/util/electronGet.js.map +1 -0
  459. package/dist/util/filter.d.ts +2 -0
  460. package/dist/util/filter.d.ts.map +1 -0
  461. package/dist/util/filter.js +64 -0
  462. package/dist/util/filter.js.map +1 -0
  463. package/dist/util/flags.d.ts +16 -0
  464. package/dist/util/flags.d.ts.map +1 -0
  465. package/dist/util/flags.js +53 -0
  466. package/dist/util/flags.js.map +1 -0
  467. package/dist/util/hash.d.ts +2 -0
  468. package/dist/util/hash.d.ts.map +1 -0
  469. package/dist/util/hash.js +16 -0
  470. package/dist/util/hash.js.map +1 -0
  471. package/dist/util/iconConverter.d.ts +29 -0
  472. package/dist/util/iconConverter.d.ts.map +1 -0
  473. package/dist/util/iconConverter.js +255 -0
  474. package/dist/util/iconConverter.js.map +1 -0
  475. package/dist/util/langs.d.ts +190 -0
  476. package/dist/util/langs.d.ts.map +1 -0
  477. package/dist/util/langs.js +432 -0
  478. package/dist/util/langs.js.map +1 -0
  479. package/dist/util/license.d.ts +17 -0
  480. package/dist/util/license.d.ts.map +1 -0
  481. package/dist/util/license.js +42 -0
  482. package/dist/util/license.js.map +1 -0
  483. package/dist/util/mac/macosIconComposer.d.ts +11 -0
  484. package/dist/util/mac/macosIconComposer.d.ts.map +1 -0
  485. package/dist/util/mac/macosIconComposer.js +99 -0
  486. package/dist/util/mac/macosIconComposer.js.map +1 -0
  487. package/dist/util/mac/macosVersion.d.ts +4 -0
  488. package/dist/util/mac/macosVersion.d.ts.map +1 -0
  489. package/dist/util/mac/macosVersion.js +31 -0
  490. package/dist/util/mac/macosVersion.js.map +1 -0
  491. package/dist/util/mac/plist.d.ts +8 -0
  492. package/dist/util/mac/plist.d.ts.map +1 -0
  493. package/dist/util/mac/plist.js +27 -0
  494. package/dist/util/mac/plist.js.map +1 -0
  495. package/dist/util/macroExpander.d.ts +4 -0
  496. package/dist/util/macroExpander.d.ts.map +1 -0
  497. package/dist/util/macroExpander.js +61 -0
  498. package/dist/util/macroExpander.js.map +1 -0
  499. package/dist/util/normalizePackageData.d.ts +2 -0
  500. package/dist/util/normalizePackageData.d.ts.map +1 -0
  501. package/dist/util/normalizePackageData.js +323 -0
  502. package/dist/util/normalizePackageData.js.map +1 -0
  503. package/dist/util/packageMetadata.d.ts +2 -0
  504. package/dist/util/packageMetadata.d.ts.map +1 -0
  505. package/dist/util/packageMetadata.js +118 -0
  506. package/dist/util/packageMetadata.js.map +1 -0
  507. package/dist/util/pathManager.d.ts +4 -0
  508. package/dist/util/pathManager.d.ts.map +1 -0
  509. package/dist/util/pathManager.js +17 -0
  510. package/dist/util/pathManager.js.map +1 -0
  511. package/dist/util/rebuild.d.ts +3 -0
  512. package/dist/util/rebuild.d.ts.map +1 -0
  513. package/dist/util/rebuild.js +54 -0
  514. package/dist/util/rebuild.js.map +1 -0
  515. package/dist/util/repositoryInfo.d.ts +4 -0
  516. package/dist/util/repositoryInfo.d.ts.map +1 -0
  517. package/dist/util/repositoryInfo.js +76 -0
  518. package/dist/util/repositoryInfo.js.map +1 -0
  519. package/dist/util/resolve.d.ts +3 -0
  520. package/dist/util/resolve.d.ts.map +1 -0
  521. package/dist/util/resolve.js +56 -0
  522. package/dist/util/resolve.js.map +1 -0
  523. package/dist/util/timer.d.ts +12 -0
  524. package/dist/util/timer.d.ts.map +1 -0
  525. package/dist/util/timer.js +23 -0
  526. package/dist/util/timer.js.map +1 -0
  527. package/dist/util/toolsetLock.d.ts +2 -0
  528. package/dist/util/toolsetLock.d.ts.map +1 -0
  529. package/dist/util/toolsetLock.js +20 -0
  530. package/dist/util/toolsetLock.js.map +1 -0
  531. package/dist/util/win/resEdit.d.ts +11 -0
  532. package/dist/util/win/resEdit.d.ts.map +1 -0
  533. package/dist/util/win/resEdit.js +46 -0
  534. package/dist/util/win/resEdit.js.map +1 -0
  535. package/dist/util/yarn.d.ts +23 -0
  536. package/dist/util/yarn.d.ts.map +1 -0
  537. package/dist/util/yarn.js +153 -0
  538. package/dist/util/yarn.js.map +1 -0
  539. package/dist/version.d.ts +2 -0
  540. package/dist/version.d.ts.map +1 -0
  541. package/dist/version.js +2 -0
  542. package/dist/version.js.map +1 -0
  543. package/dist/vm/MonoVm.d.ts +9 -0
  544. package/dist/vm/MonoVm.d.ts.map +1 -0
  545. package/dist/vm/MonoVm.js +16 -0
  546. package/dist/vm/MonoVm.js.map +1 -0
  547. package/dist/vm/ParallelsVm.d.ts +24 -0
  548. package/dist/vm/ParallelsVm.d.ts.map +1 -0
  549. package/dist/vm/ParallelsVm.js +107 -0
  550. package/dist/vm/ParallelsVm.js.map +1 -0
  551. package/dist/vm/PwshVm.d.ts +7 -0
  552. package/dist/vm/PwshVm.d.ts.map +1 -0
  553. package/dist/vm/PwshVm.js +21 -0
  554. package/dist/vm/PwshVm.js.map +1 -0
  555. package/dist/vm/WineVm.d.ts +14 -0
  556. package/dist/vm/WineVm.d.ts.map +1 -0
  557. package/dist/vm/WineVm.js +35 -0
  558. package/dist/vm/WineVm.js.map +1 -0
  559. package/dist/vm/vm.d.ts +15 -0
  560. package/dist/vm/vm.d.ts.map +1 -0
  561. package/dist/vm/vm.js +81 -0
  562. package/dist/vm/vm.js.map +1 -0
  563. package/dist/winPackager.d.ts +30 -0
  564. package/dist/winPackager.d.ts.map +1 -0
  565. package/dist/winPackager.js +270 -0
  566. package/dist/winPackager.js.map +1 -0
  567. package/helpers/package.json +6 -0
  568. package/helpers/remote-rebuild.js +2 -4
  569. package/package.json +30 -33
  570. package/scheme.json +379 -721
  571. package/out/Framework.d.ts +0 -36
  572. package/out/Framework.js +0 -7
  573. package/out/Framework.js.map +0 -1
  574. package/out/ProtonFramework.d.ts +0 -10
  575. package/out/ProtonFramework.js +0 -94
  576. package/out/ProtonFramework.js.map +0 -1
  577. package/out/appInfo.d.ts +0 -31
  578. package/out/appInfo.js +0 -152
  579. package/out/appInfo.js.map +0 -1
  580. package/out/asar/asar.d.ts +0 -38
  581. package/out/asar/asar.js +0 -163
  582. package/out/asar/asar.js.map +0 -1
  583. package/out/asar/asarFileChecker.d.ts +0 -2
  584. package/out/asar/asarFileChecker.js +0 -25
  585. package/out/asar/asarFileChecker.js.map +0 -1
  586. package/out/asar/asarUtil.d.ts +0 -1
  587. package/out/asar/asarUtil.js +0 -285
  588. package/out/asar/asarUtil.js.map +0 -1
  589. package/out/asar/integrity.d.ts +0 -15
  590. package/out/asar/integrity.js +0 -62
  591. package/out/asar/integrity.js.map +0 -1
  592. package/out/asar/unpackDetector.d.ts +0 -1
  593. package/out/asar/unpackDetector.js +0 -43
  594. package/out/asar/unpackDetector.js.map +0 -1
  595. package/out/binDownload.d.ts +0 -5
  596. package/out/binDownload.js +0 -104
  597. package/out/binDownload.js.map +0 -1
  598. package/out/codeSign/certInfo.d.ts +0 -54
  599. package/out/codeSign/certInfo.js +0 -466
  600. package/out/codeSign/certInfo.js.map +0 -1
  601. package/out/codeSign/codesign.d.ts +0 -3
  602. package/out/codeSign/codesign.js +0 -33
  603. package/out/codeSign/codesign.js.map +0 -1
  604. package/out/codeSign/macCodeSign.d.ts +0 -28
  605. package/out/codeSign/macCodeSign.js +0 -284
  606. package/out/codeSign/macCodeSign.js.map +0 -1
  607. package/out/codeSign/signManager.d.ts +0 -13
  608. package/out/codeSign/signManager.js +0 -3
  609. package/out/codeSign/signManager.js.map +0 -1
  610. package/out/codeSign/windowsCodeSign.d.ts +0 -7
  611. package/out/codeSign/windowsCodeSign.js +0 -38
  612. package/out/codeSign/windowsCodeSign.js.map +0 -1
  613. package/out/codeSign/windowsSignAzureManager.d.ts +0 -17
  614. package/out/codeSign/windowsSignAzureManager.js +0 -73
  615. package/out/codeSign/windowsSignAzureManager.js.map +0 -1
  616. package/out/codeSign/windowsSignToolManager.d.ts +0 -58
  617. package/out/codeSign/windowsSignToolManager.js +0 -376
  618. package/out/codeSign/windowsSignToolManager.js.map +0 -1
  619. package/out/configuration.d.ts +0 -532
  620. package/out/configuration.js +0 -3
  621. package/out/configuration.js.map +0 -1
  622. package/out/core.d.ts +0 -60
  623. package/out/core.js +0 -66
  624. package/out/core.js.map +0 -1
  625. package/out/electron/ElectronFramework.d.ts +0 -16
  626. package/out/electron/ElectronFramework.js +0 -242
  627. package/out/electron/ElectronFramework.js.map +0 -1
  628. package/out/electron/electronMac.d.ts +0 -1
  629. package/out/electron/electronMac.js +0 -262
  630. package/out/electron/electronMac.js.map +0 -1
  631. package/out/electron/electronVersion.d.ts +0 -6
  632. package/out/electron/electronVersion.js +0 -125
  633. package/out/electron/electronVersion.js.map +0 -1
  634. package/out/electron/electronWin.d.ts +0 -1
  635. package/out/electron/electronWin.js +0 -38
  636. package/out/electron/electronWin.js.map +0 -1
  637. package/out/electron/injectFFMPEG.d.ts +0 -11
  638. package/out/electron/injectFFMPEG.js +0 -57
  639. package/out/electron/injectFFMPEG.js.map +0 -1
  640. package/out/electron/search-module.d.ts +0 -23
  641. package/out/electron/search-module.js +0 -73
  642. package/out/electron/search-module.js.map +0 -1
  643. package/out/errorMessages.d.ts +0 -1
  644. package/out/errorMessages.js +0 -11
  645. package/out/errorMessages.js.map +0 -1
  646. package/out/fileMatcher.d.ts +0 -29
  647. package/out/fileMatcher.js +0 -292
  648. package/out/fileMatcher.js.map +0 -1
  649. package/out/fileTransformer.d.ts +0 -1
  650. package/out/fileTransformer.js +0 -107
  651. package/out/fileTransformer.js.map +0 -1
  652. package/out/forge-maker.d.ts +0 -5
  653. package/out/forge-maker.js +0 -23
  654. package/out/forge-maker.js.map +0 -1
  655. package/out/frameworks/LibUiFramework.d.ts +0 -47
  656. package/out/frameworks/LibUiFramework.js +0 -197
  657. package/out/frameworks/LibUiFramework.js.map +0 -1
  658. package/out/index.d.ts +0 -39
  659. package/out/index.js +0 -99
  660. package/out/index.js.map +0 -1
  661. package/out/linuxPackager.d.ts +0 -12
  662. package/out/linuxPackager.js +0 -77
  663. package/out/linuxPackager.js.map +0 -1
  664. package/out/mac/MacTargetHelper.d.ts +0 -29
  665. package/out/mac/MacTargetHelper.js +0 -273
  666. package/out/mac/MacTargetHelper.js.map +0 -1
  667. package/out/macPackager.d.ts +0 -49
  668. package/out/macPackager.js +0 -445
  669. package/out/macPackager.js.map +0 -1
  670. package/out/node-module-collector/bunNodeModulesCollector.d.ts +0 -10
  671. package/out/node-module-collector/bunNodeModulesCollector.js +0 -18
  672. package/out/node-module-collector/bunNodeModulesCollector.js.map +0 -1
  673. package/out/node-module-collector/hoist.d.ts +0 -123
  674. package/out/node-module-collector/hoist.js +0 -884
  675. package/out/node-module-collector/hoist.js.map +0 -1
  676. package/out/node-module-collector/index.d.ts +0 -18
  677. package/out/node-module-collector/index.js +0 -130
  678. package/out/node-module-collector/index.js.map +0 -1
  679. package/out/node-module-collector/moduleManager.d.ts +0 -93
  680. package/out/node-module-collector/moduleManager.js +0 -321
  681. package/out/node-module-collector/moduleManager.js.map +0 -1
  682. package/out/node-module-collector/nodeModulesCollector.d.ts +0 -137
  683. package/out/node-module-collector/nodeModulesCollector.js +0 -428
  684. package/out/node-module-collector/nodeModulesCollector.js.map +0 -1
  685. package/out/node-module-collector/npmNodeModulesCollector.d.ts +0 -14
  686. package/out/node-module-collector/npmNodeModulesCollector.js +0 -80
  687. package/out/node-module-collector/npmNodeModulesCollector.js.map +0 -1
  688. package/out/node-module-collector/packageManager.d.ts +0 -17
  689. package/out/node-module-collector/packageManager.js +0 -144
  690. package/out/node-module-collector/packageManager.js.map +0 -1
  691. package/out/node-module-collector/pnpmNodeModulesCollector.d.ts +0 -44
  692. package/out/node-module-collector/pnpmNodeModulesCollector.js +0 -191
  693. package/out/node-module-collector/pnpmNodeModulesCollector.js.map +0 -1
  694. package/out/node-module-collector/traversalNodeModulesCollector.d.ts +0 -18
  695. package/out/node-module-collector/traversalNodeModulesCollector.js +0 -122
  696. package/out/node-module-collector/traversalNodeModulesCollector.js.map +0 -1
  697. package/out/node-module-collector/types.d.ts +0 -52
  698. package/out/node-module-collector/types.js +0 -3
  699. package/out/node-module-collector/yarnBerryNodeModulesCollector.d.ts +0 -15
  700. package/out/node-module-collector/yarnBerryNodeModulesCollector.js +0 -93
  701. package/out/node-module-collector/yarnBerryNodeModulesCollector.js.map +0 -1
  702. package/out/node-module-collector/yarnNodeModulesCollector.d.ts +0 -10
  703. package/out/node-module-collector/yarnNodeModulesCollector.js +0 -22
  704. package/out/node-module-collector/yarnNodeModulesCollector.js.map +0 -1
  705. package/out/options/AppXOptions.d.ts +0 -105
  706. package/out/options/AppXOptions.js +0 -3
  707. package/out/options/AppXOptions.js.map +0 -1
  708. package/out/options/CommonWindowsInstallerConfiguration.d.ts +0 -47
  709. package/out/options/CommonWindowsInstallerConfiguration.js +0 -51
  710. package/out/options/CommonWindowsInstallerConfiguration.js.map +0 -1
  711. package/out/options/FileAssociation.d.ts +0 -45
  712. package/out/options/FileAssociation.js +0 -3
  713. package/out/options/MsiOptions.d.ts +0 -26
  714. package/out/options/MsiOptions.js +0 -3
  715. package/out/options/MsiOptions.js.map +0 -1
  716. package/out/options/MsiWrappedOptions.d.ts +0 -26
  717. package/out/options/MsiWrappedOptions.js +0 -3
  718. package/out/options/MsiWrappedOptions.js.map +0 -1
  719. package/out/options/PlatformSpecificBuildOptions.d.ts +0 -238
  720. package/out/options/PlatformSpecificBuildOptions.js +0 -3
  721. package/out/options/PlatformSpecificBuildOptions.js.map +0 -1
  722. package/out/options/SnapOptions.d.ts +0 -500
  723. package/out/options/SnapOptions.js +0 -3
  724. package/out/options/SnapOptions.js.map +0 -1
  725. package/out/options/SquirrelWindowsOptions.d.ts +0 -46
  726. package/out/options/SquirrelWindowsOptions.js +0 -3
  727. package/out/options/SquirrelWindowsOptions.js.map +0 -1
  728. package/out/options/linuxOptions.d.ts +0 -287
  729. package/out/options/linuxOptions.js +0 -3
  730. package/out/options/linuxOptions.js.map +0 -1
  731. package/out/options/macOptions.d.ts +0 -388
  732. package/out/options/macOptions.js +0 -3
  733. package/out/options/macOptions.js.map +0 -1
  734. package/out/options/metadata.d.ts +0 -53
  735. package/out/options/metadata.js +0 -3
  736. package/out/options/metadata.js.map +0 -1
  737. package/out/options/pkgOptions.d.ts +0 -136
  738. package/out/options/pkgOptions.js +0 -3
  739. package/out/options/pkgOptions.js.map +0 -1
  740. package/out/options/winOptions.d.ts +0 -164
  741. package/out/options/winOptions.js +0 -3
  742. package/out/options/winOptions.js.map +0 -1
  743. package/out/packager.d.ts +0 -99
  744. package/out/packager.js +0 -515
  745. package/out/packager.js.map +0 -1
  746. package/out/packagerApi.d.ts +0 -31
  747. package/out/packagerApi.js +0 -3
  748. package/out/packagerApi.js.map +0 -1
  749. package/out/platformPackager.d.ts +0 -101
  750. package/out/platformPackager.js +0 -714
  751. package/out/platformPackager.js.map +0 -1
  752. package/out/presets/rectCra.d.ts +0 -1
  753. package/out/presets/rectCra.js +0 -22
  754. package/out/presets/rectCra.js.map +0 -1
  755. package/out/publish/PublishManager.d.ts +0 -30
  756. package/out/publish/PublishManager.js +0 -497
  757. package/out/publish/PublishManager.js.map +0 -1
  758. package/out/publish/updateInfoBuilder.d.ts +0 -14
  759. package/out/publish/updateInfoBuilder.js +0 -226
  760. package/out/publish/updateInfoBuilder.js.map +0 -1
  761. package/out/targets/AppxCapabilities.d.ts +0 -8
  762. package/out/targets/AppxCapabilities.js +0 -258
  763. package/out/targets/AppxCapabilities.js.map +0 -1
  764. package/out/targets/AppxTarget.d.ts +0 -17
  765. package/out/targets/AppxTarget.js +0 -403
  766. package/out/targets/AppxTarget.js.map +0 -1
  767. package/out/targets/ArchiveTarget.d.ts +0 -11
  768. package/out/targets/ArchiveTarget.js +0 -88
  769. package/out/targets/ArchiveTarget.js.map +0 -1
  770. package/out/targets/FlatpakTarget.d.ts +0 -20
  771. package/out/targets/FlatpakTarget.js +0 -159
  772. package/out/targets/FlatpakTarget.js.map +0 -1
  773. package/out/targets/FpmTarget.d.ts +0 -22
  774. package/out/targets/FpmTarget.js +0 -372
  775. package/out/targets/FpmTarget.js.map +0 -1
  776. package/out/targets/LinuxTargetHelper.d.ts +0 -23
  777. package/out/targets/LinuxTargetHelper.js +0 -346
  778. package/out/targets/LinuxTargetHelper.js.map +0 -1
  779. package/out/targets/MsiTarget.d.ts +0 -28
  780. package/out/targets/MsiTarget.js +0 -268
  781. package/out/targets/MsiTarget.js.map +0 -1
  782. package/out/targets/MsiWrappedTarget.d.ts +0 -19
  783. package/out/targets/MsiWrappedTarget.js +0 -80
  784. package/out/targets/MsiWrappedTarget.js.map +0 -1
  785. package/out/targets/appimage/AppImageTarget.d.ts +0 -15
  786. package/out/targets/appimage/AppImageTarget.js +0 -147
  787. package/out/targets/appimage/AppImageTarget.js.map +0 -1
  788. package/out/targets/appimage/appImageUtil.d.ts +0 -56
  789. package/out/targets/appimage/appImageUtil.js +0 -323
  790. package/out/targets/appimage/appImageUtil.js.map +0 -1
  791. package/out/targets/appimage/appLauncher.d.ts +0 -3
  792. package/out/targets/appimage/appLauncher.js +0 -95
  793. package/out/targets/appimage/appLauncher.js.map +0 -1
  794. package/out/targets/archive.d.ts +0 -26
  795. package/out/targets/archive.js +0 -178
  796. package/out/targets/archive.js.map +0 -1
  797. package/out/targets/blockmap/blockmap.d.ts +0 -16
  798. package/out/targets/blockmap/blockmap.js +0 -153
  799. package/out/targets/blockmap/blockmap.js.map +0 -1
  800. package/out/targets/differentialUpdateInfoBuilder.d.ts +0 -15
  801. package/out/targets/differentialUpdateInfoBuilder.js +0 -80
  802. package/out/targets/differentialUpdateInfoBuilder.js.map +0 -1
  803. package/out/targets/nsis/Commands.d.ts +0 -9
  804. package/out/targets/nsis/Commands.js +0 -3
  805. package/out/targets/nsis/Commands.js.map +0 -1
  806. package/out/targets/nsis/Defines.d.ts +0 -80
  807. package/out/targets/nsis/Defines.js +0 -3
  808. package/out/targets/nsis/Defines.js.map +0 -1
  809. package/out/targets/nsis/NsisTarget.d.ts +0 -37
  810. package/out/targets/nsis/NsisTarget.js +0 -729
  811. package/out/targets/nsis/NsisTarget.js.map +0 -1
  812. package/out/targets/nsis/WebInstallerTarget.d.ts +0 -13
  813. package/out/targets/nsis/WebInstallerTarget.js +0 -47
  814. package/out/targets/nsis/WebInstallerTarget.js.map +0 -1
  815. package/out/targets/nsis/nsisLang.d.ts +0 -10
  816. package/out/targets/nsis/nsisLang.js +0 -100
  817. package/out/targets/nsis/nsisLang.js.map +0 -1
  818. package/out/targets/nsis/nsisLicense.d.ts +0 -4
  819. package/out/targets/nsis/nsisLicense.js +0 -77
  820. package/out/targets/nsis/nsisLicense.js.map +0 -1
  821. package/out/targets/nsis/nsisOptions.d.ts +0 -274
  822. package/out/targets/nsis/nsisOptions.js +0 -3
  823. package/out/targets/nsis/nsisOptions.js.map +0 -1
  824. package/out/targets/nsis/nsisScriptGenerator.d.ts +0 -12
  825. package/out/targets/nsis/nsisScriptGenerator.js +0 -64
  826. package/out/targets/nsis/nsisScriptGenerator.js.map +0 -1
  827. package/out/targets/nsis/nsisUtil.d.ts +0 -25
  828. package/out/targets/nsis/nsisUtil.js +0 -225
  829. package/out/targets/nsis/nsisUtil.js.map +0 -1
  830. package/out/targets/nsis/nsisValidation.d.ts +0 -18
  831. package/out/targets/nsis/nsisValidation.js +0 -53
  832. package/out/targets/nsis/nsisValidation.js.map +0 -1
  833. package/out/targets/pkg.d.ts +0 -30
  834. package/out/targets/pkg.js +0 -279
  835. package/out/targets/pkg.js.map +0 -1
  836. package/out/targets/snap/SnapTarget.d.ts +0 -36
  837. package/out/targets/snap/SnapTarget.js +0 -105
  838. package/out/targets/snap/SnapTarget.js.map +0 -1
  839. package/out/targets/snap/core24.d.ts +0 -52
  840. package/out/targets/snap/core24.js +0 -449
  841. package/out/targets/snap/core24.js.map +0 -1
  842. package/out/targets/snap/coreCustom.d.ts +0 -28
  843. package/out/targets/snap/coreCustom.js +0 -63
  844. package/out/targets/snap/coreCustom.js.map +0 -1
  845. package/out/targets/snap/coreLegacy.d.ts +0 -43
  846. package/out/targets/snap/coreLegacy.js +0 -416
  847. package/out/targets/snap/coreLegacy.js.map +0 -1
  848. package/out/targets/snap/snapcraftBuilder.d.ts +0 -39
  849. package/out/targets/snap/snapcraftBuilder.js +0 -419
  850. package/out/targets/snap/snapcraftBuilder.js.map +0 -1
  851. package/out/targets/targetFactory.d.ts +0 -12
  852. package/out/targets/targetFactory.js +0 -101
  853. package/out/targets/targetFactory.js.map +0 -1
  854. package/out/targets/targetUtil.d.ts +0 -14
  855. package/out/targets/targetUtil.js +0 -47
  856. package/out/targets/targetUtil.js.map +0 -1
  857. package/out/toolsets/7zip.d.ts +0 -2
  858. package/out/toolsets/7zip.js +0 -72
  859. package/out/toolsets/7zip.js.map +0 -1
  860. package/out/toolsets/icons.d.ts +0 -8
  861. package/out/toolsets/icons.js +0 -37
  862. package/out/toolsets/icons.js.map +0 -1
  863. package/out/toolsets/linux.d.ts +0 -26
  864. package/out/toolsets/linux.js +0 -146
  865. package/out/toolsets/linux.js.map +0 -1
  866. package/out/toolsets/windows.d.ts +0 -61
  867. package/out/toolsets/windows.js +0 -259
  868. package/out/toolsets/windows.js.map +0 -1
  869. package/out/toolsets/wine.d.ts +0 -5
  870. package/out/toolsets/wine.js +0 -100
  871. package/out/toolsets/wine.js.map +0 -1
  872. package/out/util/AppFileWalker.d.ts +0 -13
  873. package/out/util/AppFileWalker.js +0 -74
  874. package/out/util/AppFileWalker.js.map +0 -1
  875. package/out/util/NodeModuleCopyHelper.d.ts +0 -1
  876. package/out/util/NodeModuleCopyHelper.js +0 -165
  877. package/out/util/NodeModuleCopyHelper.js.map +0 -1
  878. package/out/util/appFileCopier.d.ts +0 -16
  879. package/out/util/appFileCopier.js +0 -251
  880. package/out/util/appFileCopier.js.map +0 -1
  881. package/out/util/asyncEventEmitter.d.ts +0 -33
  882. package/out/util/asyncEventEmitter.js +0 -63
  883. package/out/util/asyncEventEmitter.js.map +0 -1
  884. package/out/util/bundledTool.d.ts +0 -7
  885. package/out/util/bundledTool.js +0 -20
  886. package/out/util/bundledTool.js.map +0 -1
  887. package/out/util/cacheManager.d.ts +0 -18
  888. package/out/util/cacheManager.js +0 -70
  889. package/out/util/cacheManager.js.map +0 -1
  890. package/out/util/cacheState.d.ts +0 -28
  891. package/out/util/cacheState.js +0 -143
  892. package/out/util/cacheState.js.map +0 -1
  893. package/out/util/config/config.d.ts +0 -12
  894. package/out/util/config/config.js +0 -256
  895. package/out/util/config/config.js.map +0 -1
  896. package/out/util/config/load.d.ts +0 -19
  897. package/out/util/config/load.js +0 -129
  898. package/out/util/config/load.js.map +0 -1
  899. package/out/util/config/schemaValidator.d.ts +0 -7
  900. package/out/util/config/schemaValidator.js +0 -154
  901. package/out/util/config/schemaValidator.js.map +0 -1
  902. package/out/util/dynamicImport.d.ts +0 -1
  903. package/out/util/dynamicImport.js +0 -12
  904. package/out/util/dynamicImport.js.map +0 -1
  905. package/out/util/electronGet.d.ts +0 -61
  906. package/out/util/electronGet.js +0 -464
  907. package/out/util/electronGet.js.map +0 -1
  908. package/out/util/envPath.d.ts +0 -2
  909. package/out/util/envPath.js +0 -28
  910. package/out/util/envPath.js.map +0 -1
  911. package/out/util/filter.d.ts +0 -1
  912. package/out/util/filter.js +0 -68
  913. package/out/util/filter.js.map +0 -1
  914. package/out/util/flags.d.ts +0 -3
  915. package/out/util/flags.js +0 -16
  916. package/out/util/flags.js.map +0 -1
  917. package/out/util/hash.d.ts +0 -1
  918. package/out/util/hash.js +0 -19
  919. package/out/util/hash.js.map +0 -1
  920. package/out/util/iconConverter.d.ts +0 -25
  921. package/out/util/iconConverter.js +0 -260
  922. package/out/util/iconConverter.js.map +0 -1
  923. package/out/util/langs.d.ts +0 -189
  924. package/out/util/langs.js +0 -436
  925. package/out/util/langs.js.map +0 -1
  926. package/out/util/license.d.ts +0 -16
  927. package/out/util/license.js +0 -47
  928. package/out/util/license.js.map +0 -1
  929. package/out/util/macosIconComposer.d.ts +0 -10
  930. package/out/util/macosIconComposer.js +0 -102
  931. package/out/util/macosIconComposer.js.map +0 -1
  932. package/out/util/macosVersion.d.ts +0 -3
  933. package/out/util/macosVersion.js +0 -36
  934. package/out/util/macosVersion.js.map +0 -1
  935. package/out/util/macroExpander.d.ts +0 -3
  936. package/out/util/macroExpander.js +0 -64
  937. package/out/util/macroExpander.js.map +0 -1
  938. package/out/util/normalizePackageData.d.ts +0 -1
  939. package/out/util/normalizePackageData.js +0 -328
  940. package/out/util/normalizePackageData.js.map +0 -1
  941. package/out/util/packageDependencies.d.ts +0 -6
  942. package/out/util/packageDependencies.js +0 -3
  943. package/out/util/packageDependencies.js.map +0 -1
  944. package/out/util/packageMetadata.d.ts +0 -1
  945. package/out/util/packageMetadata.js +0 -124
  946. package/out/util/packageMetadata.js.map +0 -1
  947. package/out/util/pathManager.d.ts +0 -3
  948. package/out/util/pathManager.js +0 -23
  949. package/out/util/pathManager.js.map +0 -1
  950. package/out/util/plist.d.ts +0 -7
  951. package/out/util/plist.js +0 -31
  952. package/out/util/plist.js.map +0 -1
  953. package/out/util/rebuild.d.ts +0 -2
  954. package/out/util/rebuild.js +0 -60
  955. package/out/util/rebuild.js.map +0 -1
  956. package/out/util/repositoryInfo.d.ts +0 -3
  957. package/out/util/repositoryInfo.js +0 -79
  958. package/out/util/repositoryInfo.js.map +0 -1
  959. package/out/util/resEdit.d.ts +0 -10
  960. package/out/util/resEdit.js +0 -49
  961. package/out/util/resEdit.js.map +0 -1
  962. package/out/util/resolve.d.ts +0 -2
  963. package/out/util/resolve.js +0 -59
  964. package/out/util/resolve.js.map +0 -1
  965. package/out/util/timer.d.ts +0 -11
  966. package/out/util/timer.js +0 -28
  967. package/out/util/timer.js.map +0 -1
  968. package/out/util/toolsetLock.d.ts +0 -1
  969. package/out/util/toolsetLock.js +0 -23
  970. package/out/util/toolsetLock.js.map +0 -1
  971. package/out/util/yarn.d.ts +0 -22
  972. package/out/util/yarn.js +0 -160
  973. package/out/util/yarn.js.map +0 -1
  974. package/out/version.d.ts +0 -1
  975. package/out/version.js +0 -5
  976. package/out/version.js.map +0 -1
  977. package/out/vm/MonoVm.d.ts +0 -8
  978. package/out/vm/MonoVm.js +0 -20
  979. package/out/vm/MonoVm.js.map +0 -1
  980. package/out/vm/ParallelsVm.d.ts +0 -23
  981. package/out/vm/ParallelsVm.js +0 -102
  982. package/out/vm/ParallelsVm.js.map +0 -1
  983. package/out/vm/PwshVm.d.ts +0 -6
  984. package/out/vm/PwshVm.js +0 -25
  985. package/out/vm/PwshVm.js.map +0 -1
  986. package/out/vm/WineVm.d.ts +0 -12
  987. package/out/vm/WineVm.js +0 -38
  988. package/out/vm/WineVm.js.map +0 -1
  989. package/out/vm/vm.d.ts +0 -14
  990. package/out/vm/vm.js +0 -88
  991. package/out/vm/vm.js.map +0 -1
  992. package/out/winPackager.d.ts +0 -29
  993. package/out/winPackager.js +0 -271
  994. package/out/winPackager.js.map +0 -1
  995. /package/{out → dist}/node-module-collector/types.js.map +0 -0
  996. /package/{out → dist}/options/FileAssociation.js.map +0 -0
  997. /package/helpers/{dynamic-import.js → dynamic-import.cjs} +0 -0
@@ -0,0 +1,761 @@
1
+ import { dynamicImport } from "./util/dynamicImport.js";
2
+ import { Arch, asArray, AsyncTaskManager, defaultArchFromString, getArchSuffix, getArtifactArchName, InvalidConfigurationError, isEmptyOrSpaces, log, orIfFileNotExist, sanitizeDirPath, statOrNull, } from "builder-util";
3
+ import { deepAssign } from "builder-util-runtime";
4
+ import { readdir } from "fs/promises";
5
+ import { Lazy } from "lazy-val";
6
+ import * as path from "path";
7
+ import * as fs from "fs/promises";
8
+ import * as os from "os";
9
+ import { AppInfo } from "./appInfo.js";
10
+ import { checkFileInArchive } from "./asar/asarFileChecker.js";
11
+ import { AsarPackager } from "./asar/asarUtil.js";
12
+ import { computeData } from "./asar/integrity.js";
13
+ import { copyFiles, FileMatcher, getFileMatchers, getMainFileMatchers, getNodeModuleFileMatcher } from "./fileMatcher.js";
14
+ import { createTransformer } from "./fileTransformer.js";
15
+ import { isElectronBased } from "./Framework.js";
16
+ import { Platform } from "./core.js";
17
+ import { computeFileSets, computeNodeModuleFileSets, copyAppFiles, transformFiles } from "./util/appFileCopier.js";
18
+ import { convertIcon } from "./util/iconConverter.js";
19
+ import { expandMacro as doExpandMacro } from "./util/macroExpander.js";
20
+ import { generateAssetCatalogForIcon } from "./util/mac/macosIconComposer.js";
21
+ export class PlatformPackager {
22
+ get packagerOptions() {
23
+ return this.info.options;
24
+ }
25
+ get buildResourcesDir() {
26
+ return this.info.buildResourcesDir;
27
+ }
28
+ get projectDir() {
29
+ return this.info.projectDir;
30
+ }
31
+ get config() {
32
+ return this.info.config;
33
+ }
34
+ /** Platform-level build options (e.g. `config.mac`, `config.win`, `config.linux`). */
35
+ get platformOptions() {
36
+ return this.platformSpecificBuildOptions;
37
+ }
38
+ /**
39
+ * Merge platform-level options with target-specific config under `key`.
40
+ * Replaces the manual `deepAssign({}, packager.platformSpecificBuildOptions, config.X)` pattern.
41
+ */
42
+ getOptionsForTarget(key) {
43
+ return deepAssign({}, this.platformSpecificBuildOptions, this.config[key] ?? {});
44
+ }
45
+ get resourceList() {
46
+ return this._resourceList.value;
47
+ }
48
+ constructor(info, platform) {
49
+ this.info = info;
50
+ this.platform = platform;
51
+ this._resourceList = new Lazy(() => orIfFileNotExist(readdir(this.info.buildResourcesDir), []));
52
+ this.assetCatalogResults = new Map();
53
+ this.cachedIcnsFromIconFile = new Map();
54
+ this.platformSpecificBuildOptions = PlatformPackager.normalizePlatformSpecificBuildOptions(this.config[platform.buildConfigurationKey]);
55
+ this.appInfo = this.prepareAppInfo(info.appInfo);
56
+ }
57
+ get compression() {
58
+ const compression = this.platformSpecificBuildOptions.compression;
59
+ // explicitly set to null - request to use default value instead of parent (in the config)
60
+ if (compression === null) {
61
+ return "normal";
62
+ }
63
+ return compression || this.config.compression || "normal";
64
+ }
65
+ get debugLogger() {
66
+ return this.info.debugLogger;
67
+ }
68
+ get tempDirManager() {
69
+ return this.info.tempDirManager;
70
+ }
71
+ get metadata() {
72
+ return this.info.metadata;
73
+ }
74
+ get framework() {
75
+ return this.info.framework;
76
+ }
77
+ get cancellationToken() {
78
+ return this.info.cancellationToken;
79
+ }
80
+ get repositoryInfo() {
81
+ return this.info.repositoryInfo;
82
+ }
83
+ get relativeBuildResourcesDirname() {
84
+ return this.info.relativeBuildResourcesDirname;
85
+ }
86
+ get stageDirPathCustomizer() {
87
+ return this.info.stageDirPathCustomizer;
88
+ }
89
+ get areNodeModulesHandledExternally() {
90
+ return this.info.areNodeModulesHandledExternally;
91
+ }
92
+ get isPrepackedAppAsar() {
93
+ return this.info.isPrepackedAppAsar;
94
+ }
95
+ get appDir() {
96
+ return this.info.appDir;
97
+ }
98
+ getWorkspaceRoot() {
99
+ return this.info.getWorkspaceRoot();
100
+ }
101
+ get nodePackageName() {
102
+ return this.info.nodePackageName;
103
+ }
104
+ getPackageManager() {
105
+ return this.info.getPackageManager();
106
+ }
107
+ emitArtifactBuildStarted(event, logFields) {
108
+ return this.info.emitArtifactBuildStarted(event, logFields);
109
+ }
110
+ emitArtifactBuildCompleted(event) {
111
+ return this.info.emitArtifactBuildCompleted(event);
112
+ }
113
+ emitArtifactCreated(event) {
114
+ return this.info.emitArtifactCreated(event);
115
+ }
116
+ emitMsiProjectCreated(path) {
117
+ return this.info.emitMsiProjectCreated(path);
118
+ }
119
+ emitAppxManifestCreated(path) {
120
+ return this.info.emitAppxManifestCreated(path);
121
+ }
122
+ // eslint-disable-next-line
123
+ prepareAppInfo(appInfo) {
124
+ return new AppInfo(this.info, null, this.platformSpecificBuildOptions);
125
+ }
126
+ static normalizePlatformSpecificBuildOptions(options) {
127
+ return options == null ? Object.create(null) : options;
128
+ }
129
+ getCscPassword() {
130
+ const password = this.doGetCscPassword();
131
+ if (isEmptyOrSpaces(password)) {
132
+ log.info({ reason: "CSC_KEY_PASSWORD is not defined" }, "empty password will be used for code signing");
133
+ return "";
134
+ }
135
+ else {
136
+ return password.trim();
137
+ }
138
+ }
139
+ getCscLink(extraEnvName) {
140
+ // allow to specify as empty string
141
+ const envValue = chooseNotNull(extraEnvName == null ? null : process.env[extraEnvName], process.env.CSC_LINK);
142
+ return chooseNotNull(chooseNotNull(this.info.config.cscLink, this.platformSpecificBuildOptions.cscLink), envValue);
143
+ }
144
+ doGetCscPassword() {
145
+ // allow to specify as empty string
146
+ return chooseNotNull(chooseNotNull(this.info.config.cscKeyPassword, this.platformSpecificBuildOptions.cscKeyPassword), process.env.CSC_KEY_PASSWORD);
147
+ }
148
+ computeAppOutDir(outDir, arch) {
149
+ // codeql[js/shell-command-constructed-from-input] - prepackaged and outDir are validated via sanitizeDirPath in the Packager constructor
150
+ return path.resolve(this.packagerOptions.prepackaged ||
151
+ path.join(outDir, `${this.platform.buildConfigurationKey}${getArchSuffix(arch, this.platformSpecificBuildOptions.defaultArch)}${this.platform === Platform.MAC ? "" : "-unpacked"}`));
152
+ }
153
+ async pack(outDir, arch, targets, taskManager) {
154
+ const appOutDir = this.computeAppOutDir(outDir, arch);
155
+ await this.doPack({
156
+ outDir,
157
+ appOutDir,
158
+ platformName: this.platform.nodeName,
159
+ arch,
160
+ platformSpecificBuildOptions: this.platformSpecificBuildOptions,
161
+ targets,
162
+ });
163
+ this.packageInDistributableFormat(appOutDir, arch, targets, taskManager);
164
+ }
165
+ packageInDistributableFormat(appOutDir, arch, targets, taskManager) {
166
+ if (targets.find(it => !it.isAsyncSupported) == null) {
167
+ PlatformPackager.buildAsyncTargets(targets, taskManager, appOutDir, arch);
168
+ return;
169
+ }
170
+ taskManager.add(async () => {
171
+ // BluebirdPromise.map doesn't invoke target.build immediately, but for RemoteTarget it is very critical to call build() before finishBuild()
172
+ const subTaskManager = new AsyncTaskManager(this.info.cancellationToken);
173
+ PlatformPackager.buildAsyncTargets(targets, subTaskManager, appOutDir, arch);
174
+ await subTaskManager.awaitTasks();
175
+ for (const target of targets) {
176
+ if (!target.isAsyncSupported && !this.info.cancellationToken.cancelled) {
177
+ await target.build(appOutDir, arch);
178
+ }
179
+ }
180
+ });
181
+ }
182
+ static buildAsyncTargets(targets, taskManager, appOutDir, arch) {
183
+ for (const target of targets) {
184
+ if (target.isAsyncSupported) {
185
+ taskManager.addTask(target.build(appOutDir, arch));
186
+ }
187
+ }
188
+ }
189
+ getExtraFileMatchers(isResources, appOutDir, options) {
190
+ const outDir = this.platform === Platform.MAC ? path.join(appOutDir, `${this.appInfo.productFilename}.app`, "Contents") : appOutDir;
191
+ const base = isResources ? this.getResourcesDir(appOutDir) : outDir;
192
+ return getFileMatchers(this.config, isResources ? "extraResources" : "extraFiles", base, options);
193
+ }
194
+ createGetFileMatchersOptions(outDir, arch, customBuildOptions) {
195
+ return {
196
+ macroExpander: it => this.expandMacro(it, arch == null ? null : Arch[arch], { "/*": "{,/**/*}" }),
197
+ customBuildOptions,
198
+ globalOutDir: outDir,
199
+ defaultSrc: this.projectDir,
200
+ };
201
+ }
202
+ async doPack(packOptions) {
203
+ if (this.packagerOptions.prepackaged != null) {
204
+ return;
205
+ }
206
+ if (this.info.cancellationToken.cancelled) {
207
+ return;
208
+ }
209
+ // Due to node-gyp rewriting GYP_MSVS_VERSION when reused across the same session, we must reset the env var: https://github.com/electron-userland/electron-builder/issues/7256
210
+ delete process.env.GYP_MSVS_VERSION;
211
+ const { outDir, appOutDir, platformName, arch, platformSpecificBuildOptions, targets, options } = packOptions;
212
+ await this.info.emitBeforePack({
213
+ appOutDir,
214
+ outDir,
215
+ arch,
216
+ targets,
217
+ packager: this,
218
+ electronPlatformName: platformName,
219
+ });
220
+ await this.info.installAppDependencies(this.platform, arch);
221
+ if (this.info.cancellationToken.cancelled) {
222
+ return;
223
+ }
224
+ const framework = this.info.framework;
225
+ log.info({
226
+ platform: platformName,
227
+ arch: Arch[arch],
228
+ [`${framework.name}`]: framework.version,
229
+ appOutDir: log.filePath(appOutDir),
230
+ }, `packaging`);
231
+ await framework.prepareApplicationStageDirectory({
232
+ packager: this,
233
+ appOutDir,
234
+ platformName,
235
+ arch: Arch[arch],
236
+ version: framework.version,
237
+ });
238
+ await this.info.emitAfterExtract({
239
+ appOutDir,
240
+ outDir,
241
+ arch,
242
+ targets,
243
+ packager: this,
244
+ electronPlatformName: platformName,
245
+ });
246
+ const excludePatterns = [];
247
+ const computeParsedPatterns = (patterns) => {
248
+ if (patterns != null) {
249
+ for (const pattern of patterns) {
250
+ pattern.computeParsedPatterns(excludePatterns, this.info.projectDir);
251
+ }
252
+ }
253
+ };
254
+ const getFileMatchersOptions = this.createGetFileMatchersOptions(outDir, arch, platformSpecificBuildOptions);
255
+ const macroExpander = getFileMatchersOptions.macroExpander;
256
+ const extraResourceMatchers = this.getExtraFileMatchers(true, appOutDir, getFileMatchersOptions);
257
+ computeParsedPatterns(extraResourceMatchers);
258
+ const extraFileMatchers = this.getExtraFileMatchers(false, appOutDir, getFileMatchersOptions);
259
+ computeParsedPatterns(extraFileMatchers);
260
+ const packContext = {
261
+ appOutDir,
262
+ outDir,
263
+ arch,
264
+ targets,
265
+ packager: this,
266
+ electronPlatformName: platformName,
267
+ };
268
+ const asarOptions = await this.computeAsarOptions(platformSpecificBuildOptions);
269
+ const resourcesPath = this.platform === Platform.MAC
270
+ ? path.join(appOutDir, framework.distMacOsAppName, "Contents", "Resources")
271
+ : isElectronBased(framework)
272
+ ? path.join(appOutDir, "resources")
273
+ : appOutDir;
274
+ const taskManager = new AsyncTaskManager(this.info.cancellationToken);
275
+ this.copyAppFiles(taskManager, asarOptions, resourcesPath, path.join(resourcesPath, "app"), packContext, platformSpecificBuildOptions, excludePatterns, macroExpander);
276
+ await taskManager.awaitTasks();
277
+ if (this.info.cancellationToken.cancelled) {
278
+ return;
279
+ }
280
+ if (framework.beforeCopyExtraFiles != null) {
281
+ const resourcesRelativePath = this.platform === Platform.MAC ? "Resources" : isElectronBased(framework) ? "resources" : "";
282
+ let asarIntegrity = null;
283
+ if (!(asarOptions == null || options?.disableAsarIntegrity || asarOptions.disableIntegrity)) {
284
+ asarIntegrity = await computeData({ resourcesPath, resourcesRelativePath, resourcesDestinationPath: this.getResourcesDir(appOutDir), extraResourceMatchers });
285
+ }
286
+ await framework.beforeCopyExtraFiles({
287
+ packager: this,
288
+ appOutDir,
289
+ asarIntegrity,
290
+ platformName,
291
+ });
292
+ }
293
+ if (this.info.cancellationToken.cancelled) {
294
+ return;
295
+ }
296
+ const transformerForExtraFiles = this.createTransformerForExtraFiles(packContext);
297
+ await copyFiles(extraResourceMatchers, transformerForExtraFiles);
298
+ await copyFiles(extraFileMatchers, transformerForExtraFiles);
299
+ if (this.info.cancellationToken.cancelled) {
300
+ return;
301
+ }
302
+ await this.info.emitAfterPack(packContext);
303
+ if (framework.afterPack != null) {
304
+ await framework.afterPack(packContext);
305
+ }
306
+ const isAsar = asarOptions != null;
307
+ await this.sanityCheckPackage(appOutDir, isAsar, framework, !!asarOptions?.disableSanityCheck);
308
+ if (!options?.disableFuses) {
309
+ await this.doAddElectronFuses(packContext);
310
+ }
311
+ if (options?.sign ?? true) {
312
+ await this.doSignAfterPack(outDir, appOutDir, platformName, arch, platformSpecificBuildOptions, targets);
313
+ }
314
+ }
315
+ // the fuses MUST be flipped right before signing
316
+ async doAddElectronFuses(packContext) {
317
+ if (this.config.electronFuses == null) {
318
+ return;
319
+ }
320
+ const fuseConfig = await this.generateFuseConfig(this.config.electronFuses);
321
+ await this.addElectronFuses(packContext, fuseConfig);
322
+ }
323
+ async generateFuseConfig(fuses) {
324
+ const { FuseVersion, FuseV1Options } = await dynamicImport("@electron/fuses");
325
+ const config = {
326
+ version: FuseVersion.V1,
327
+ resetAdHocDarwinSignature: fuses.resetAdHocDarwinSignature,
328
+ };
329
+ // this is annoying, but we must filter out undefined entries because some older electron versions will receive `the fuse wire in this version of Electron is not long enough` even if entry is set undefined
330
+ if (fuses.runAsNode != null) {
331
+ config[FuseV1Options.RunAsNode] = fuses.runAsNode;
332
+ }
333
+ if (fuses.enableCookieEncryption != null) {
334
+ config[FuseV1Options.EnableCookieEncryption] = fuses.enableCookieEncryption;
335
+ }
336
+ if (fuses.enableNodeOptionsEnvironmentVariable != null) {
337
+ config[FuseV1Options.EnableNodeOptionsEnvironmentVariable] = fuses.enableNodeOptionsEnvironmentVariable;
338
+ }
339
+ if (fuses.enableNodeCliInspectArguments != null) {
340
+ config[FuseV1Options.EnableNodeCliInspectArguments] = fuses.enableNodeCliInspectArguments;
341
+ }
342
+ if (fuses.enableEmbeddedAsarIntegrityValidation != null) {
343
+ config[FuseV1Options.EnableEmbeddedAsarIntegrityValidation] = fuses.enableEmbeddedAsarIntegrityValidation;
344
+ }
345
+ if (fuses.onlyLoadAppFromAsar != null) {
346
+ config[FuseV1Options.OnlyLoadAppFromAsar] = fuses.onlyLoadAppFromAsar;
347
+ }
348
+ if (fuses.loadBrowserProcessSpecificV8Snapshot != null) {
349
+ config[FuseV1Options.LoadBrowserProcessSpecificV8Snapshot] = fuses.loadBrowserProcessSpecificV8Snapshot;
350
+ }
351
+ if (fuses.grantFileProtocolExtraPrivileges != null) {
352
+ config[FuseV1Options.GrantFileProtocolExtraPrivileges] = fuses.grantFileProtocolExtraPrivileges;
353
+ }
354
+ return config;
355
+ }
356
+ /**
357
+ * Use `AfterPackContext` here to keep available for public API
358
+ * @param {AfterPackContext} context
359
+ * @param {FuseConfig} fuses
360
+ *
361
+ * Can be used in `afterPack` hook for custom fuse logic like below. It's an alternative approach if one wants to override electron-builder's @electron/fuses version
362
+ * ```
363
+ * await context.packager.addElectronFuses(context, { ... })
364
+ * ```
365
+ */
366
+ async addElectronFuses(context, fuses) {
367
+ const { appOutDir, electronPlatformName } = context;
368
+ const ext = {
369
+ darwin: ".app",
370
+ mas: ".app",
371
+ win32: ".exe",
372
+ linux: "",
373
+ }[electronPlatformName];
374
+ // `"executableName" in this` instead of `instanceof LinuxPackager` keeps LinuxPackager a
375
+ // type-only import, avoiding the index.ts → linuxPackager.ts → platformPackager.ts runtime cycle.
376
+ const executableName = "executableName" in this ? this.executableName : this.appInfo.productFilename;
377
+ const electronBinaryPath = path.join(appOutDir, `${executableName}${ext}`);
378
+ log.info({ electronPath: log.filePath(electronBinaryPath) }, "executing @electron/fuses");
379
+ const { flipFuses } = await dynamicImport("@electron/fuses");
380
+ return flipFuses(electronBinaryPath, fuses);
381
+ }
382
+ async doSignAfterPack(outDir, appOutDir, platformName, arch, platformSpecificBuildOptions, targets) {
383
+ const asarOptions = await this.computeAsarOptions(platformSpecificBuildOptions);
384
+ const isAsar = asarOptions != null;
385
+ const packContext = {
386
+ appOutDir,
387
+ outDir,
388
+ arch,
389
+ targets,
390
+ packager: this,
391
+ electronPlatformName: platformName,
392
+ };
393
+ const didSign = await this.signApp(packContext, isAsar);
394
+ if (didSign) {
395
+ await this.info.emitAfterSign(packContext);
396
+ }
397
+ else if (this.info.filterPackagerEventListeners("afterSign", "user").length) {
398
+ log.warn(null, `skipping "afterSign" hook as no signing occurred, perhaps you intended "afterPack"?`);
399
+ }
400
+ }
401
+ // eslint-disable-next-line
402
+ createTransformerForExtraFiles(packContext) {
403
+ return null;
404
+ }
405
+ copyAppFiles(taskManager, asarOptions, resourcePath, defaultDestination, packContext, platformSpecificBuildOptions, excludePatterns, macroExpander) {
406
+ const appDir = this.info.appDir;
407
+ const config = this.config;
408
+ const mainMatchers = getMainFileMatchers(appDir, defaultDestination, macroExpander, platformSpecificBuildOptions, this, packContext.outDir);
409
+ if (excludePatterns.length > 0) {
410
+ for (const matcher of mainMatchers) {
411
+ matcher.excludePatterns = excludePatterns;
412
+ }
413
+ }
414
+ const framework = this.info.framework;
415
+ const transformer = createTransformer(appDir, config, config.extraMetadata, framework.createTransformer == null ? null : framework.createTransformer());
416
+ const _computeFileSets = (matchers) => {
417
+ return computeFileSets(matchers, this.info.isPrepackedAppAsar ? null : transformer, this).then(async (result) => {
418
+ if (!this.info.isPrepackedAppAsar && !this.info.areNodeModulesHandledExternally) {
419
+ const moduleFileMatcher = getNodeModuleFileMatcher(appDir, defaultDestination, macroExpander, platformSpecificBuildOptions, this.info);
420
+ result = result.concat(await computeNodeModuleFileSets(this, moduleFileMatcher));
421
+ }
422
+ return result.filter(it => it.files.length > 0);
423
+ });
424
+ };
425
+ if (this.info.isPrepackedAppAsar) {
426
+ taskManager.add(async () => {
427
+ const fileSets = await _computeFileSets([new FileMatcher(appDir, resourcePath, macroExpander)]);
428
+ fileSets.forEach(it => taskManager.addTask(copyAppFiles(it, this.info, transformer)));
429
+ await taskManager.awaitTasks();
430
+ });
431
+ }
432
+ else if (asarOptions == null) {
433
+ // for ASAR all asar unpacked files will be extra transformed (e.g. sign of EXE and DLL) later,
434
+ // for prepackaged asar extra transformation not supported yet,
435
+ // so, extra transform if asar is disabled
436
+ const transformerForExtraFiles = this.createTransformerForExtraFiles(packContext);
437
+ const combinedTransformer = file => {
438
+ if (transformerForExtraFiles != null) {
439
+ const result = transformerForExtraFiles(file);
440
+ if (result != null) {
441
+ return result;
442
+ }
443
+ }
444
+ return transformer(file);
445
+ };
446
+ taskManager.add(async () => {
447
+ const fileSets = await _computeFileSets(mainMatchers);
448
+ fileSets.forEach(it => taskManager.addTask(copyAppFiles(it, this.info, combinedTransformer)));
449
+ await taskManager.awaitTasks();
450
+ });
451
+ }
452
+ else {
453
+ const unpackPatterns = asarOptions.unpack;
454
+ let fileMatcher = null;
455
+ if (unpackPatterns != null) {
456
+ fileMatcher = new FileMatcher(appDir, defaultDestination, macroExpander);
457
+ const pats = Array.isArray(unpackPatterns) ? unpackPatterns : [unpackPatterns];
458
+ pats.forEach(p => fileMatcher.addPattern(p));
459
+ if (fileMatcher.isEmpty()) {
460
+ fileMatcher = null;
461
+ }
462
+ }
463
+ taskManager.addTask(_computeFileSets(mainMatchers).then(async (fileSets) => {
464
+ for (const fileSet of fileSets) {
465
+ await transformFiles(transformer, fileSet);
466
+ }
467
+ await new AsarPackager(this, {
468
+ defaultDestination,
469
+ resourcePath,
470
+ options: asarOptions,
471
+ unpackPattern: fileMatcher?.createFilter(),
472
+ }).pack(fileSets);
473
+ }));
474
+ }
475
+ }
476
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
477
+ signApp(packContext, isAsar) {
478
+ return Promise.resolve(false);
479
+ }
480
+ getIconPath() {
481
+ return Promise.resolve(null);
482
+ }
483
+ async computeAsarOptions(customBuildOptions) {
484
+ if (!isElectronBased(this.info.framework)) {
485
+ return null;
486
+ }
487
+ const platformSpecific = customBuildOptions.asar;
488
+ const result = platformSpecific == null ? this.config.asar : platformSpecific;
489
+ if (result === false) {
490
+ const appAsarStat = await statOrNull(path.join(this.info.appDir, "app.asar"));
491
+ //noinspection ES6MissingAwait
492
+ if (appAsarStat == null || !appAsarStat.isFile()) {
493
+ log.warn({
494
+ solution: "enable asar and use asar.unpack to unpack files that must be externally available",
495
+ }, "asar usage is disabled — this is strongly not recommended");
496
+ }
497
+ return null;
498
+ }
499
+ if (result == null || result === true) {
500
+ return {};
501
+ }
502
+ return deepAssign({}, result);
503
+ }
504
+ getElectronSrcDir(dist) {
505
+ return path.resolve(this.projectDir, dist);
506
+ }
507
+ getElectronDestinationDir(appOutDir) {
508
+ return appOutDir;
509
+ }
510
+ getResourcesDir(appOutDir) {
511
+ if (this.platform === Platform.MAC) {
512
+ return this.getMacOsResourcesDir(appOutDir);
513
+ }
514
+ if (isElectronBased(this.info.framework)) {
515
+ return path.join(appOutDir, "resources");
516
+ }
517
+ return appOutDir;
518
+ }
519
+ getMacOsElectronFrameworkResourcesDir(appOutDir) {
520
+ const electronFrameworkName = path.basename(this.info.framework.distMacOsAppName, ".app") + " " + "Framework.framework";
521
+ return path.join(appOutDir, `${this.appInfo.productFilename}.app`, "Contents", "Frameworks", electronFrameworkName, "Versions", "A", "Resources");
522
+ }
523
+ getMacOsResourcesDir(appOutDir) {
524
+ return path.join(appOutDir, `${this.appInfo.productFilename}.app`, "Contents", "Resources");
525
+ }
526
+ async checkFileInPackage(resourcesDir, file, messagePrefix, isAsar, disableSanityCheckAsar) {
527
+ if (isAsar && disableSanityCheckAsar) {
528
+ return;
529
+ }
530
+ const relativeFile = path.relative(this.info.appDir, path.resolve(this.info.appDir, file));
531
+ if (isAsar) {
532
+ await checkFileInArchive(path.join(resourcesDir, "app.asar"), relativeFile, messagePrefix);
533
+ return;
534
+ }
535
+ const pathParsed = path.parse(file);
536
+ // Even when packaging to asar is disabled, it does not imply that the main file can not be inside an .asar archive.
537
+ // This may occur when the packaging is done manually before processing with electron-builder.
538
+ if (pathParsed.dir.includes(".asar")) {
539
+ // The path needs to be split to the part with an asar archive which acts like a directory and the part with
540
+ // the path to main file itself. (e.g. path/arch.asar/dir/index.js -> path/arch.asar, dir/index.js)
541
+ // noinspection TypeScriptValidateJSTypes
542
+ const pathSplit = pathParsed.dir.split(path.sep);
543
+ let partWithAsarIndex = 0;
544
+ pathSplit.some((pathPart, index) => {
545
+ partWithAsarIndex = index;
546
+ return pathPart.endsWith(".asar");
547
+ });
548
+ const asarPath = path.join(...pathSplit.slice(0, partWithAsarIndex + 1));
549
+ let mainPath = pathSplit.length > partWithAsarIndex + 1 ? path.join.apply(pathSplit.slice(partWithAsarIndex + 1)) : "";
550
+ mainPath += path.join(mainPath, pathParsed.base);
551
+ await checkFileInArchive(path.join(resourcesDir, "app", asarPath), mainPath, messagePrefix);
552
+ }
553
+ else {
554
+ const fullPath = path.join(resourcesDir, "app", relativeFile);
555
+ const outStat = await statOrNull(fullPath);
556
+ if (outStat == null) {
557
+ throw new Error(`${messagePrefix} "${fullPath}" does not exist. Seems like a wrong configuration.`);
558
+ }
559
+ else {
560
+ //noinspection ES6MissingAwait
561
+ if (!outStat.isFile()) {
562
+ throw new Error(`${messagePrefix} "${fullPath}" is not a file. Seems like a wrong configuration.`);
563
+ }
564
+ }
565
+ }
566
+ }
567
+ async sanityCheckPackage(appOutDir, isAsar, framework, disableSanityCheckAsar) {
568
+ const outStat = await statOrNull(appOutDir);
569
+ if (outStat == null) {
570
+ throw new Error(`Output directory "${appOutDir}" does not exist. Seems like a wrong configuration.`);
571
+ }
572
+ else {
573
+ //noinspection ES6MissingAwait
574
+ if (!outStat.isDirectory()) {
575
+ throw new Error(`Output directory "${appOutDir}" is not a directory. Seems like a wrong configuration.`);
576
+ }
577
+ }
578
+ const resourcesDir = this.getResourcesDir(appOutDir);
579
+ const mainFile = (framework.getMainFile == null ? null : framework.getMainFile(this.platform)) || this.info.metadata.main || "index.js";
580
+ await this.checkFileInPackage(resourcesDir, mainFile, "Application entry file", isAsar, disableSanityCheckAsar);
581
+ await this.checkFileInPackage(resourcesDir, "package.json", "Application", isAsar, disableSanityCheckAsar);
582
+ }
583
+ // tslint:disable-next-line:no-invalid-template-strings
584
+ computeSafeArtifactName(suggestedName, ext, arch, skipDefaultArch = true, defaultArch, safePattern = "${name}-${version}-${arch}.${ext}") {
585
+ return computeSafeArtifactNameIfNeeded(suggestedName, () => this.computeArtifactName(safePattern, ext, skipDefaultArch && arch === defaultArchFromString(defaultArch) ? null : arch));
586
+ }
587
+ expandArtifactNamePattern(targetSpecificOptions, ext, arch, defaultPattern, skipDefaultArch = true, defaultArch) {
588
+ const { pattern, isUserForced } = this.artifactPatternConfig(targetSpecificOptions, defaultPattern);
589
+ return this.computeArtifactName(pattern, ext, !isUserForced && skipDefaultArch && arch === defaultArchFromString(defaultArch) ? null : arch);
590
+ }
591
+ artifactPatternConfig(targetSpecificOptions, defaultPattern) {
592
+ const userSpecifiedPattern = targetSpecificOptions?.artifactName || this.platformSpecificBuildOptions.artifactName || this.config.artifactName;
593
+ return {
594
+ isUserForced: !!userSpecifiedPattern,
595
+ pattern: userSpecifiedPattern || defaultPattern || "${productName}-${version}-${arch}.${ext}",
596
+ };
597
+ }
598
+ expandArtifactBeautyNamePattern(targetSpecificOptions, ext, arch) {
599
+ // tslint:disable-next-line:no-invalid-template-strings
600
+ return this.expandArtifactNamePattern(targetSpecificOptions, ext, arch, "${productName} ${version} ${arch}.${ext}", true);
601
+ }
602
+ computeArtifactName(pattern, ext, arch) {
603
+ const archName = arch == null ? null : getArtifactArchName(arch, ext);
604
+ return this.expandMacro(pattern, archName, {
605
+ ext,
606
+ });
607
+ }
608
+ expandMacro(pattern, arch, extra = {}, isProductNameSanitized = true) {
609
+ return doExpandMacro(pattern, arch, this.appInfo, { os: this.platform.buildConfigurationKey, ...extra }, isProductNameSanitized);
610
+ }
611
+ generateName2(ext, classifier, deployment) {
612
+ const dotExt = ext == null ? "" : `.${ext}`;
613
+ const separator = ext === "deb" ? "_" : "-";
614
+ return `${deployment ? this.appInfo.name : this.appInfo.productFilename}${separator}${this.appInfo.version}${classifier == null ? "" : `${separator}${classifier}`}${dotExt}`;
615
+ }
616
+ getTempFile(suffix) {
617
+ return this.info.tempDirManager.getTempFile({ suffix });
618
+ }
619
+ get fileAssociations() {
620
+ return asArray(this.config.fileAssociations).concat(asArray(this.platformSpecificBuildOptions.fileAssociations));
621
+ }
622
+ async getResource(custom, ...names) {
623
+ const resourcesDir = this.info.buildResourcesDir;
624
+ if (custom === undefined) {
625
+ const resourceList = await this.resourceList;
626
+ for (const name of names) {
627
+ if (resourceList.includes(name)) {
628
+ // sanitizeDirPath with resourcesDir base enforces containment — CodeQL recognises the startsWith check inside as a path-traversal sanitizer
629
+ return sanitizeDirPath(path.join(resourcesDir, path.basename(name)), resourcesDir);
630
+ }
631
+ }
632
+ }
633
+ else if (custom != null && !isEmptyOrSpaces(custom)) {
634
+ const resourceList = await this.resourceList;
635
+ if (resourceList.includes(custom)) {
636
+ return sanitizeDirPath(path.join(resourcesDir, path.basename(custom)), resourcesDir);
637
+ }
638
+ // codeql[js/shell-command-constructed-from-input] - intentional: custom may be an absolute path outside the build resources dir; existence is verified below via statOrNull
639
+ let p = path.resolve(resourcesDir, custom);
640
+ if ((await statOrNull(p)) == null) {
641
+ p = path.resolve(this.projectDir, custom);
642
+ if ((await statOrNull(p)) == null) {
643
+ throw new InvalidConfigurationError(`cannot find specified resource "${custom}", nor relative to "${resourcesDir}", neither relative to project dir ("${this.projectDir}")`);
644
+ }
645
+ }
646
+ return p;
647
+ }
648
+ return null;
649
+ }
650
+ get forceCodeSigning() {
651
+ const forceCodeSigningPlatform = this.platformSpecificBuildOptions.forceCodeSigning;
652
+ return (forceCodeSigningPlatform == null ? this.config.forceCodeSigning : forceCodeSigningPlatform) || false;
653
+ }
654
+ generateAssetCatalogData(iconPath) {
655
+ // Cache results
656
+ const cachedPromise = this.assetCatalogResults.get(iconPath);
657
+ if (cachedPromise) {
658
+ return cachedPromise;
659
+ }
660
+ const promise = generateAssetCatalogForIcon(iconPath);
661
+ this.assetCatalogResults.set(iconPath, promise);
662
+ return promise;
663
+ }
664
+ async generateIcnsFromIcon(iconPath) {
665
+ const cachedPromise = this.cachedIcnsFromIconFile.get(iconPath);
666
+ if (cachedPromise) {
667
+ return cachedPromise;
668
+ }
669
+ const runner = async () => {
670
+ const { icnsFile } = await this.generateAssetCatalogData(iconPath);
671
+ // Generate icns file
672
+ const tempDir = await fs.mkdtemp(path.resolve(os.tmpdir(), "icon-compile-"));
673
+ const tempIcnsPath = path.resolve(tempDir, "Icon.icns");
674
+ await fs.writeFile(tempIcnsPath, icnsFile);
675
+ return tempIcnsPath;
676
+ };
677
+ const promise = runner();
678
+ this.cachedIcnsFromIconFile.set(iconPath, promise);
679
+ return promise;
680
+ }
681
+ async getOrConvertIcon(format) {
682
+ if (format === "icns") {
683
+ const configuredIcon = this.platformSpecificBuildOptions.icon;
684
+ // If it is a .icon file, generate the icns file and return the path to the icns file
685
+ if (configuredIcon?.endsWith(".icon")) {
686
+ const iconPath = await this.getResource(configuredIcon);
687
+ if (iconPath) {
688
+ return this.generateIcnsFromIcon(iconPath);
689
+ }
690
+ }
691
+ }
692
+ const result = await this.resolveIcon(asArray(this.platformSpecificBuildOptions.icon || this.config.icon), [], format);
693
+ if (result.length === 0) {
694
+ const framework = this.info.framework;
695
+ if (framework.getDefaultIcon != null) {
696
+ return framework.getDefaultIcon(this.platform);
697
+ }
698
+ log.warn({ reason: "application icon is not set" }, `default ${capitalizeFirstLetter(framework.name)} icon is used`);
699
+ return this.getDefaultFrameworkIcon();
700
+ }
701
+ else {
702
+ return result[0].file;
703
+ }
704
+ }
705
+ getDefaultFrameworkIcon() {
706
+ const framework = this.info.framework;
707
+ return framework.getDefaultIcon == null ? null : framework.getDefaultIcon(this.platform);
708
+ }
709
+ // convert if need, validate size (it is a reason why tool is called even if file has target extension (already specified as foo.icns for example))
710
+ async resolveIcon(sources, fallbackSources, outputFormat) {
711
+ const output = this.expandMacro(this.config.directories.output);
712
+ const outDir = sanitizeDirPath(path.resolve(this.projectDir, output, `.icon-${outputFormat}`));
713
+ const roots = [this.buildResourcesDir, this.projectDir];
714
+ const filteredSources = sources.filter(s => !s.endsWith(".icon"));
715
+ const filteredFallbacks = fallbackSources.filter(s => !s.endsWith(".icon"));
716
+ const result = await convertIcon({
717
+ sources: filteredSources,
718
+ fallbackSources: filteredFallbacks,
719
+ roots,
720
+ format: outputFormat,
721
+ outDir,
722
+ iconsToolset: this.info.config.toolsets?.icons,
723
+ resourcesDir: this.buildResourcesDir,
724
+ });
725
+ if (result.error != null) {
726
+ throw new InvalidConfigurationError(result.error, result.errorCode);
727
+ }
728
+ if (result.isFallback) {
729
+ log.warn({ reason: "application icon is not set" }, `default ${capitalizeFirstLetter(this.info.framework.name)} icon is used`);
730
+ }
731
+ return result.icons;
732
+ }
733
+ }
734
+ export function isSafeGithubName(name) {
735
+ return /^[0-9A-Za-z._-]+$/.test(name);
736
+ }
737
+ export function computeSafeArtifactNameIfNeeded(suggestedName, safeNameProducer) {
738
+ // GitHub only allows the listed characters in file names.
739
+ if (suggestedName != null) {
740
+ if (isSafeGithubName(suggestedName)) {
741
+ return null;
742
+ }
743
+ // prefer to use suggested name - so, if space is the only problem, just replace only space to dash
744
+ suggestedName = suggestedName.replace(/ /g, "-");
745
+ if (isSafeGithubName(suggestedName)) {
746
+ return suggestedName;
747
+ }
748
+ }
749
+ return safeNameProducer();
750
+ }
751
+ // remove leading dot
752
+ export function normalizeExt(ext) {
753
+ return ext.startsWith(".") ? ext.substring(1) : ext;
754
+ }
755
+ export function chooseNotNull(v1, v2) {
756
+ return v1 == null ? v2 : v1;
757
+ }
758
+ function capitalizeFirstLetter(text) {
759
+ return text.charAt(0).toUpperCase() + text.slice(1);
760
+ }
761
+ //# sourceMappingURL=platformPackager.js.map