@uapkg/cli 1.3.0 → 1.3.2

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 (412) hide show
  1. package/dist/app/CompositionRoot.d.ts +36 -33
  2. package/dist/app/CompositionRoot.d.ts.map +1 -1
  3. package/dist/app/CompositionRoot.js +91 -109
  4. package/dist/app/CompositionRoot.js.map +1 -1
  5. package/dist/app/UAPKGApplication.d.ts +6 -3
  6. package/dist/app/UAPKGApplication.d.ts.map +1 -1
  7. package/dist/app/UAPKGApplication.js +155 -169
  8. package/dist/app/UAPKGApplication.js.map +1 -1
  9. package/dist/build/BuildMetadata.d.ts +9 -6
  10. package/dist/build/BuildMetadata.d.ts.map +1 -1
  11. package/dist/build/BuildMetadata.js +2 -2
  12. package/dist/cli/UAPKGCommandLine.d.ts +259 -257
  13. package/dist/cli/UAPKGCommandLine.d.ts.map +1 -1
  14. package/dist/cli/UAPKGCommandLine.js +248 -239
  15. package/dist/cli/UAPKGCommandLine.js.map +1 -1
  16. package/dist/cli/parseCommandLine.d.ts +5 -1
  17. package/dist/cli/parseCommandLine.d.ts.map +1 -1
  18. package/dist/cli/parseCommandLine.js +8 -3
  19. package/dist/cli/parseCommandLine.js.map +1 -1
  20. package/dist/cli/parsing/UAPKGCommandLineParser.d.ts +9 -6
  21. package/dist/cli/parsing/UAPKGCommandLineParser.d.ts.map +1 -1
  22. package/dist/cli/parsing/UAPKGCommandLineParser.js +23 -31
  23. package/dist/cli/parsing/UAPKGCommandLineParser.js.map +1 -1
  24. package/dist/cli/parsing/UAPKGParserRegistry.d.ts +12 -9
  25. package/dist/cli/parsing/UAPKGParserRegistry.d.ts.map +1 -1
  26. package/dist/cli/parsing/UAPKGParserRegistry.js +53 -50
  27. package/dist/cli/parsing/UAPKGParserRegistry.js.map +1 -1
  28. package/dist/cli/parsing/contracts/UAPKGCommandModule.d.ts +9 -6
  29. package/dist/cli/parsing/contracts/UAPKGCommandModule.d.ts.map +1 -1
  30. package/dist/cli/parsing/contracts/UAPKGCommandModule.js +1 -2
  31. package/dist/cli/parsing/modules/AddCommandModule.d.ts +8 -5
  32. package/dist/cli/parsing/modules/AddCommandModule.d.ts.map +1 -1
  33. package/dist/cli/parsing/modules/AddCommandModule.js +49 -36
  34. package/dist/cli/parsing/modules/AddCommandModule.js.map +1 -1
  35. package/dist/cli/parsing/modules/ConfigCommandModule.d.ts +8 -5
  36. package/dist/cli/parsing/modules/ConfigCommandModule.d.ts.map +1 -1
  37. package/dist/cli/parsing/modules/ConfigCommandModule.js +87 -83
  38. package/dist/cli/parsing/modules/ConfigCommandModule.js.map +1 -1
  39. package/dist/cli/parsing/modules/InitCommandModule.d.ts +8 -5
  40. package/dist/cli/parsing/modules/InitCommandModule.d.ts.map +1 -1
  41. package/dist/cli/parsing/modules/InitCommandModule.js +25 -22
  42. package/dist/cli/parsing/modules/InitCommandModule.js.map +1 -1
  43. package/dist/cli/parsing/modules/InstallCommandModule.d.ts +8 -5
  44. package/dist/cli/parsing/modules/InstallCommandModule.d.ts.map +1 -1
  45. package/dist/cli/parsing/modules/InstallCommandModule.js +36 -28
  46. package/dist/cli/parsing/modules/InstallCommandModule.js.map +1 -1
  47. package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts +8 -5
  48. package/dist/cli/parsing/modules/LifecycleCommandModule.d.ts.map +1 -1
  49. package/dist/cli/parsing/modules/LifecycleCommandModule.js +78 -50
  50. package/dist/cli/parsing/modules/LifecycleCommandModule.js.map +1 -1
  51. package/dist/cli/parsing/modules/ListCommandModule.d.ts +8 -5
  52. package/dist/cli/parsing/modules/ListCommandModule.d.ts.map +1 -1
  53. package/dist/cli/parsing/modules/ListCommandModule.js +26 -15
  54. package/dist/cli/parsing/modules/ListCommandModule.js.map +1 -1
  55. package/dist/cli/parsing/modules/LoginCommandModule.d.ts +8 -5
  56. package/dist/cli/parsing/modules/LoginCommandModule.d.ts.map +1 -1
  57. package/dist/cli/parsing/modules/LoginCommandModule.js +34 -33
  58. package/dist/cli/parsing/modules/LoginCommandModule.js.map +1 -1
  59. package/dist/cli/parsing/modules/LogoutCommandModule.d.ts +8 -5
  60. package/dist/cli/parsing/modules/LogoutCommandModule.d.ts.map +1 -1
  61. package/dist/cli/parsing/modules/LogoutCommandModule.js +30 -28
  62. package/dist/cli/parsing/modules/LogoutCommandModule.js.map +1 -1
  63. package/dist/cli/parsing/modules/OutdatedCommandModule.d.ts +8 -5
  64. package/dist/cli/parsing/modules/OutdatedCommandModule.d.ts.map +1 -1
  65. package/dist/cli/parsing/modules/OutdatedCommandModule.js +21 -16
  66. package/dist/cli/parsing/modules/OutdatedCommandModule.js.map +1 -1
  67. package/dist/cli/parsing/modules/PackCommandModule.d.ts +8 -5
  68. package/dist/cli/parsing/modules/PackCommandModule.d.ts.map +1 -1
  69. package/dist/cli/parsing/modules/PackCommandModule.js +30 -28
  70. package/dist/cli/parsing/modules/PackCommandModule.js.map +1 -1
  71. package/dist/cli/parsing/modules/ProjectGetNameCommandModule.d.ts +8 -5
  72. package/dist/cli/parsing/modules/ProjectGetNameCommandModule.d.ts.map +1 -1
  73. package/dist/cli/parsing/modules/ProjectGetNameCommandModule.js +14 -11
  74. package/dist/cli/parsing/modules/ProjectGetNameCommandModule.js.map +1 -1
  75. package/dist/cli/parsing/modules/PublishCommandModule.d.ts +8 -5
  76. package/dist/cli/parsing/modules/PublishCommandModule.d.ts.map +1 -1
  77. package/dist/cli/parsing/modules/PublishCommandModule.js +63 -47
  78. package/dist/cli/parsing/modules/PublishCommandModule.js.map +1 -1
  79. package/dist/cli/parsing/modules/RegistryCommandModule.d.ts +8 -5
  80. package/dist/cli/parsing/modules/RegistryCommandModule.d.ts.map +1 -1
  81. package/dist/cli/parsing/modules/RegistryCommandModule.js +117 -120
  82. package/dist/cli/parsing/modules/RegistryCommandModule.js.map +1 -1
  83. package/dist/cli/parsing/modules/RemoveCommandModule.d.ts +8 -5
  84. package/dist/cli/parsing/modules/RemoveCommandModule.d.ts.map +1 -1
  85. package/dist/cli/parsing/modules/RemoveCommandModule.js +25 -14
  86. package/dist/cli/parsing/modules/RemoveCommandModule.js.map +1 -1
  87. package/dist/cli/parsing/modules/RequestsCommandModule.d.ts +8 -5
  88. package/dist/cli/parsing/modules/RequestsCommandModule.d.ts.map +1 -1
  89. package/dist/cli/parsing/modules/RequestsCommandModule.js +56 -60
  90. package/dist/cli/parsing/modules/RequestsCommandModule.js.map +1 -1
  91. package/dist/cli/parsing/modules/UpdateCommandModule.d.ts +8 -5
  92. package/dist/cli/parsing/modules/UpdateCommandModule.d.ts.map +1 -1
  93. package/dist/cli/parsing/modules/UpdateCommandModule.js +38 -25
  94. package/dist/cli/parsing/modules/UpdateCommandModule.js.map +1 -1
  95. package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts +8 -5
  96. package/dist/cli/parsing/modules/WhoamiCommandModule.d.ts.map +1 -1
  97. package/dist/cli/parsing/modules/WhoamiCommandModule.js +30 -28
  98. package/dist/cli/parsing/modules/WhoamiCommandModule.js.map +1 -1
  99. package/dist/cli/parsing/modules/WhyCommandModule.d.ts +8 -5
  100. package/dist/cli/parsing/modules/WhyCommandModule.d.ts.map +1 -1
  101. package/dist/cli/parsing/modules/WhyCommandModule.js +25 -14
  102. package/dist/cli/parsing/modules/WhyCommandModule.js.map +1 -1
  103. package/dist/cli/parsing/modules/sharedOptions.d.ts +8 -5
  104. package/dist/cli/parsing/modules/sharedOptions.d.ts.map +1 -1
  105. package/dist/cli/parsing/modules/sharedOptions.js +18 -23
  106. package/dist/cli/parsing/modules/sharedOptions.js.map +1 -1
  107. package/dist/cli/runUAPKGCLI.d.ts +4 -1
  108. package/dist/cli/runUAPKGCLI.d.ts.map +1 -1
  109. package/dist/cli/runUAPKGCLI.js +10 -5
  110. package/dist/cli/runUAPKGCLI.js.map +1 -1
  111. package/dist/cli-bootstrap.d.ts +1 -2
  112. package/dist/cli-bootstrap.js +15 -12
  113. package/dist/cli-bootstrap.js.map +1 -1
  114. package/dist/commands/AddCommand.d.ts +19 -16
  115. package/dist/commands/AddCommand.d.ts.map +1 -1
  116. package/dist/commands/AddCommand.js +49 -53
  117. package/dist/commands/AddCommand.js.map +1 -1
  118. package/dist/commands/Command.d.ts +5 -2
  119. package/dist/commands/Command.d.ts.map +1 -1
  120. package/dist/commands/Command.js +1 -2
  121. package/dist/commands/ConfigCommand.d.ts +28 -25
  122. package/dist/commands/ConfigCommand.d.ts.map +1 -1
  123. package/dist/commands/ConfigCommand.js +165 -186
  124. package/dist/commands/ConfigCommand.js.map +1 -1
  125. package/dist/commands/InitCommand.d.ts +19 -16
  126. package/dist/commands/InitCommand.d.ts.map +1 -1
  127. package/dist/commands/InitCommand.js +65 -60
  128. package/dist/commands/InitCommand.js.map +1 -1
  129. package/dist/commands/InstallCommand.d.ts +16 -13
  130. package/dist/commands/InstallCommand.d.ts.map +1 -1
  131. package/dist/commands/InstallCommand.js +118 -110
  132. package/dist/commands/InstallCommand.js.map +1 -1
  133. package/dist/commands/ListCommand.d.ts +13 -10
  134. package/dist/commands/ListCommand.d.ts.map +1 -1
  135. package/dist/commands/ListCommand.js +76 -81
  136. package/dist/commands/ListCommand.js.map +1 -1
  137. package/dist/commands/LoginCommand.d.ts +17 -14
  138. package/dist/commands/LoginCommand.d.ts.map +1 -1
  139. package/dist/commands/LoginCommand.js +66 -72
  140. package/dist/commands/LoginCommand.js.map +1 -1
  141. package/dist/commands/LogoutCommand.d.ts +15 -12
  142. package/dist/commands/LogoutCommand.d.ts.map +1 -1
  143. package/dist/commands/LogoutCommand.js +36 -37
  144. package/dist/commands/LogoutCommand.js.map +1 -1
  145. package/dist/commands/OutdatedCommand.d.ts +12 -9
  146. package/dist/commands/OutdatedCommand.d.ts.map +1 -1
  147. package/dist/commands/OutdatedCommand.js +41 -40
  148. package/dist/commands/OutdatedCommand.js.map +1 -1
  149. package/dist/commands/PackCommand.d.ts +13 -10
  150. package/dist/commands/PackCommand.d.ts.map +1 -1
  151. package/dist/commands/PackCommand.js +26 -21
  152. package/dist/commands/PackCommand.js.map +1 -1
  153. package/dist/commands/PackageLifecycleCommand.d.ts +23 -19
  154. package/dist/commands/PackageLifecycleCommand.d.ts.map +1 -1
  155. package/dist/commands/PackageLifecycleCommand.js +144 -138
  156. package/dist/commands/PackageLifecycleCommand.js.map +1 -1
  157. package/dist/commands/PostinstallCandidateBuilder.d.ts +11 -8
  158. package/dist/commands/PostinstallCandidateBuilder.d.ts.map +1 -1
  159. package/dist/commands/PostinstallCandidateBuilder.js +42 -42
  160. package/dist/commands/PostinstallCandidateBuilder.js.map +1 -1
  161. package/dist/commands/ProjectGetNameCommand.d.ts +10 -7
  162. package/dist/commands/ProjectGetNameCommand.d.ts.map +1 -1
  163. package/dist/commands/ProjectGetNameCommand.js +25 -25
  164. package/dist/commands/ProjectGetNameCommand.js.map +1 -1
  165. package/dist/commands/PublishCommand.d.ts +29 -23
  166. package/dist/commands/PublishCommand.d.ts.map +1 -1
  167. package/dist/commands/PublishCommand.js +243 -254
  168. package/dist/commands/PublishCommand.js.map +1 -1
  169. package/dist/commands/RegistryCommand.d.ts +38 -35
  170. package/dist/commands/RegistryCommand.d.ts.map +1 -1
  171. package/dist/commands/RegistryCommand.js +195 -223
  172. package/dist/commands/RegistryCommand.js.map +1 -1
  173. package/dist/commands/RemoveCommand.d.ts +14 -11
  174. package/dist/commands/RemoveCommand.d.ts.map +1 -1
  175. package/dist/commands/RemoveCommand.js +47 -54
  176. package/dist/commands/RemoveCommand.js.map +1 -1
  177. package/dist/commands/RequestsCommand.d.ts +21 -18
  178. package/dist/commands/RequestsCommand.d.ts.map +1 -1
  179. package/dist/commands/RequestsCommand.js +82 -95
  180. package/dist/commands/RequestsCommand.js.map +1 -1
  181. package/dist/commands/UpdateCommand.d.ts +29 -26
  182. package/dist/commands/UpdateCommand.d.ts.map +1 -1
  183. package/dist/commands/UpdateCommand.js +111 -111
  184. package/dist/commands/UpdateCommand.js.map +1 -1
  185. package/dist/commands/WhoamiCommand.d.ts +30 -27
  186. package/dist/commands/WhoamiCommand.d.ts.map +1 -1
  187. package/dist/commands/WhoamiCommand.js +63 -72
  188. package/dist/commands/WhoamiCommand.js.map +1 -1
  189. package/dist/commands/WhyCommand.d.ts +13 -10
  190. package/dist/commands/WhyCommand.d.ts.map +1 -1
  191. package/dist/commands/WhyCommand.js +45 -44
  192. package/dist/commands/WhyCommand.js.map +1 -1
  193. package/dist/commands/add/DependencyAddResolver.d.ts +14 -11
  194. package/dist/commands/add/DependencyAddResolver.d.ts.map +1 -1
  195. package/dist/commands/add/DependencyAddResolver.js +36 -36
  196. package/dist/commands/add/DependencyAddResolver.js.map +1 -1
  197. package/dist/control-plane/AccountManager.d.ts +96 -94
  198. package/dist/control-plane/AccountManager.d.ts.map +1 -1
  199. package/dist/control-plane/AccountManager.js +775 -967
  200. package/dist/control-plane/AccountManager.js.map +1 -1
  201. package/dist/control-plane/ArtifactObserver.d.ts +19 -16
  202. package/dist/control-plane/ArtifactObserver.d.ts.map +1 -1
  203. package/dist/control-plane/ArtifactObserver.js +73 -59
  204. package/dist/control-plane/ArtifactObserver.js.map +1 -1
  205. package/dist/control-plane/AuthMetadataStore.d.ts +16 -13
  206. package/dist/control-plane/AuthMetadataStore.d.ts.map +1 -1
  207. package/dist/control-plane/AuthMetadataStore.js +111 -113
  208. package/dist/control-plane/AuthMetadataStore.js.map +1 -1
  209. package/dist/control-plane/AuthStoragePaths.d.ts +7 -4
  210. package/dist/control-plane/AuthStoragePaths.d.ts.map +1 -1
  211. package/dist/control-plane/AuthStoragePaths.js +19 -14
  212. package/dist/control-plane/AuthStoragePaths.js.map +1 -1
  213. package/dist/control-plane/AuthenticationSelector.d.ts +21 -18
  214. package/dist/control-plane/AuthenticationSelector.d.ts.map +1 -1
  215. package/dist/control-plane/AuthenticationSelector.js +69 -63
  216. package/dist/control-plane/AuthenticationSelector.js.map +1 -1
  217. package/dist/control-plane/ControlPlaneClient.d.ts +37 -28
  218. package/dist/control-plane/ControlPlaneClient.d.ts.map +1 -1
  219. package/dist/control-plane/ControlPlaneClient.js +265 -254
  220. package/dist/control-plane/ControlPlaneClient.js.map +1 -1
  221. package/dist/control-plane/ControlPlaneEndpoints.d.ts +9 -6
  222. package/dist/control-plane/ControlPlaneEndpoints.d.ts.map +1 -1
  223. package/dist/control-plane/ControlPlaneEndpoints.js +17 -12
  224. package/dist/control-plane/ControlPlaneEndpoints.js.map +1 -1
  225. package/dist/control-plane/ControlPlaneTypes.d.ts +176 -152
  226. package/dist/control-plane/ControlPlaneTypes.d.ts.map +1 -1
  227. package/dist/control-plane/ControlPlaneTypes.js +88 -81
  228. package/dist/control-plane/ControlPlaneTypes.js.map +1 -1
  229. package/dist/control-plane/CredentialStore.d.ts +20 -18
  230. package/dist/control-plane/CredentialStore.d.ts.map +1 -1
  231. package/dist/control-plane/CredentialStore.js +66 -83
  232. package/dist/control-plane/CredentialStore.js.map +1 -1
  233. package/dist/control-plane/DPoPKeyStore.d.ts +12 -9
  234. package/dist/control-plane/DPoPKeyStore.d.ts.map +1 -1
  235. package/dist/control-plane/DPoPKeyStore.js +57 -53
  236. package/dist/control-plane/DPoPKeyStore.js.map +1 -1
  237. package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts +37 -4
  238. package/dist/control-plane/GitHubActionsOidcCredentialProvider.d.ts.map +1 -1
  239. package/dist/control-plane/GitHubActionsOidcCredentialProvider.js +197 -63
  240. package/dist/control-plane/GitHubActionsOidcCredentialProvider.js.map +1 -1
  241. package/dist/control-plane/PublishIdempotencyStore.d.ts +25 -9
  242. package/dist/control-plane/PublishIdempotencyStore.d.ts.map +1 -1
  243. package/dist/control-plane/PublishIdempotencyStore.js +97 -68
  244. package/dist/control-plane/PublishIdempotencyStore.js.map +1 -1
  245. package/dist/control-plane/PublishRequestErrorMapper.d.ts +155 -0
  246. package/dist/control-plane/PublishRequestErrorMapper.d.ts.map +1 -0
  247. package/dist/control-plane/PublishRequestErrorMapper.js +597 -0
  248. package/dist/control-plane/PublishRequestErrorMapper.js.map +1 -0
  249. package/dist/control-plane/RegistryGrantLock.d.ts +29 -26
  250. package/dist/control-plane/RegistryGrantLock.d.ts.map +1 -1
  251. package/dist/control-plane/RegistryGrantLock.js +149 -185
  252. package/dist/control-plane/RegistryGrantLock.js.map +1 -1
  253. package/dist/control-plane/RegistryTrustResolver.d.ts +13 -10
  254. package/dist/control-plane/RegistryTrustResolver.d.ts.map +1 -1
  255. package/dist/control-plane/RegistryTrustResolver.js +97 -132
  256. package/dist/control-plane/RegistryTrustResolver.js.map +1 -1
  257. package/dist/index.d.ts +62 -39
  258. package/dist/index.js +60 -53
  259. package/dist/postinstall/api/PostinstallDsl.d.ts +24 -21
  260. package/dist/postinstall/api/PostinstallDsl.d.ts.map +1 -1
  261. package/dist/postinstall/api/PostinstallDsl.js +32 -35
  262. package/dist/postinstall/api/PostinstallDsl.js.map +1 -1
  263. package/dist/postinstall/api/definePostinstall.d.ts +5 -2
  264. package/dist/postinstall/api/definePostinstall.d.ts.map +1 -1
  265. package/dist/postinstall/api/definePostinstall.js +20 -16
  266. package/dist/postinstall/api/definePostinstall.js.map +1 -1
  267. package/dist/postinstall/index.d.ts +25 -26
  268. package/dist/postinstall/index.js +25 -37
  269. package/dist/postinstall/loader/EntryResolver.d.ts +11 -9
  270. package/dist/postinstall/loader/EntryResolver.d.ts.map +1 -1
  271. package/dist/postinstall/loader/EntryResolver.js +36 -32
  272. package/dist/postinstall/loader/EntryResolver.js.map +1 -1
  273. package/dist/postinstall/loader/EsbuildTranspiler.d.ts +6 -3
  274. package/dist/postinstall/loader/EsbuildTranspiler.d.ts.map +1 -1
  275. package/dist/postinstall/loader/EsbuildTranspiler.js +52 -56
  276. package/dist/postinstall/loader/EsbuildTranspiler.js.map +1 -1
  277. package/dist/postinstall/loader/ExportValidator.d.ts +8 -5
  278. package/dist/postinstall/loader/ExportValidator.d.ts.map +1 -1
  279. package/dist/postinstall/loader/ExportValidator.js +36 -32
  280. package/dist/postinstall/loader/ExportValidator.js.map +1 -1
  281. package/dist/postinstall/loader/ModuleImporter.d.ts +17 -14
  282. package/dist/postinstall/loader/ModuleImporter.d.ts.map +1 -1
  283. package/dist/postinstall/loader/ModuleImporter.js +50 -58
  284. package/dist/postinstall/loader/ModuleImporter.js.map +1 -1
  285. package/dist/postinstall/loader/PostinstallLoader.d.ts +22 -19
  286. package/dist/postinstall/loader/PostinstallLoader.d.ts.map +1 -1
  287. package/dist/postinstall/loader/PostinstallLoader.js +62 -58
  288. package/dist/postinstall/loader/PostinstallLoader.js.map +1 -1
  289. package/dist/postinstall/markers/MarkerBlockEditor.d.ts +19 -16
  290. package/dist/postinstall/markers/MarkerBlockEditor.d.ts.map +1 -1
  291. package/dist/postinstall/markers/MarkerBlockEditor.js +48 -44
  292. package/dist/postinstall/markers/MarkerBlockEditor.js.map +1 -1
  293. package/dist/postinstall/markers/MarkerBlockService.d.ts +10 -7
  294. package/dist/postinstall/markers/MarkerBlockService.d.ts.map +1 -1
  295. package/dist/postinstall/markers/MarkerBlockService.js +44 -44
  296. package/dist/postinstall/markers/MarkerBlockService.js.map +1 -1
  297. package/dist/postinstall/markers/MarkerIntegrityValidator.d.ts +12 -9
  298. package/dist/postinstall/markers/MarkerIntegrityValidator.d.ts.map +1 -1
  299. package/dist/postinstall/markers/MarkerIntegrityValidator.js +47 -52
  300. package/dist/postinstall/markers/MarkerIntegrityValidator.js.map +1 -1
  301. package/dist/postinstall/policy/PostinstallPolicyGate.d.ts +25 -23
  302. package/dist/postinstall/policy/PostinstallPolicyGate.d.ts.map +1 -1
  303. package/dist/postinstall/policy/PostinstallPolicyGate.js +63 -52
  304. package/dist/postinstall/policy/PostinstallPolicyGate.js.map +1 -1
  305. package/dist/postinstall/runner/PostinstallOrchestrator.d.ts +48 -45
  306. package/dist/postinstall/runner/PostinstallOrchestrator.d.ts.map +1 -1
  307. package/dist/postinstall/runner/PostinstallOrchestrator.js +172 -170
  308. package/dist/postinstall/runner/PostinstallOrchestrator.js.map +1 -1
  309. package/dist/postinstall/unreal/BuildCsInjector.d.ts +16 -13
  310. package/dist/postinstall/unreal/BuildCsInjector.d.ts.map +1 -1
  311. package/dist/postinstall/unreal/BuildCsInjector.js +58 -53
  312. package/dist/postinstall/unreal/BuildCsInjector.js.map +1 -1
  313. package/dist/postinstall/unreal/CSharpInjectionEngine.d.ts +13 -10
  314. package/dist/postinstall/unreal/CSharpInjectionEngine.d.ts.map +1 -1
  315. package/dist/postinstall/unreal/CSharpInjectionEngine.js +56 -59
  316. package/dist/postinstall/unreal/CSharpInjectionEngine.js.map +1 -1
  317. package/dist/postinstall/unreal/CSharpStructureAnalyzer.d.ts +11 -8
  318. package/dist/postinstall/unreal/CSharpStructureAnalyzer.d.ts.map +1 -1
  319. package/dist/postinstall/unreal/CSharpStructureAnalyzer.js +123 -127
  320. package/dist/postinstall/unreal/CSharpStructureAnalyzer.js.map +1 -1
  321. package/dist/postinstall/unreal/CSharpStructures.d.ts +18 -15
  322. package/dist/postinstall/unreal/CSharpStructures.d.ts.map +1 -1
  323. package/dist/postinstall/unreal/CSharpStructures.js +1 -2
  324. package/dist/postinstall/unreal/CSharpWrapperFactory.d.ts +7 -4
  325. package/dist/postinstall/unreal/CSharpWrapperFactory.d.ts.map +1 -1
  326. package/dist/postinstall/unreal/CSharpWrapperFactory.js +54 -58
  327. package/dist/postinstall/unreal/CSharpWrapperFactory.js.map +1 -1
  328. package/dist/postinstall/unreal/PluginHash.d.ts +5 -2
  329. package/dist/postinstall/unreal/PluginHash.d.ts.map +1 -1
  330. package/dist/postinstall/unreal/PluginHash.js +13 -8
  331. package/dist/postinstall/unreal/PluginHash.js.map +1 -1
  332. package/dist/postinstall/unreal/PrettyParseError.d.ts +8 -5
  333. package/dist/postinstall/unreal/PrettyParseError.d.ts.map +1 -1
  334. package/dist/postinstall/unreal/PrettyParseError.js +37 -37
  335. package/dist/postinstall/unreal/PrettyParseError.js.map +1 -1
  336. package/dist/postinstall/unreal/ProjectFileLocator.d.ts +12 -9
  337. package/dist/postinstall/unreal/ProjectFileLocator.d.ts.map +1 -1
  338. package/dist/postinstall/unreal/ProjectFileLocator.js +49 -51
  339. package/dist/postinstall/unreal/ProjectFileLocator.js.map +1 -1
  340. package/dist/postinstall/unreal/TargetCsInjector.d.ts +16 -13
  341. package/dist/postinstall/unreal/TargetCsInjector.d.ts.map +1 -1
  342. package/dist/postinstall/unreal/TargetCsInjector.js +58 -53
  343. package/dist/postinstall/unreal/TargetCsInjector.js.map +1 -1
  344. package/dist/postinstall/unreal/UProjectInjector.d.ts +6 -3
  345. package/dist/postinstall/unreal/UProjectInjector.d.ts.map +1 -1
  346. package/dist/postinstall/unreal/UProjectInjector.js +56 -52
  347. package/dist/postinstall/unreal/UProjectInjector.js.map +1 -1
  348. package/dist/postinstall/unreal/UProjectMetadataReader.d.ts +5 -2
  349. package/dist/postinstall/unreal/UProjectMetadataReader.d.ts.map +1 -1
  350. package/dist/postinstall/unreal/UProjectMetadataReader.js +22 -18
  351. package/dist/postinstall/unreal/UProjectMetadataReader.js.map +1 -1
  352. package/dist/postinstall/unreal/UnrealSourceCatalog.d.ts +17 -14
  353. package/dist/postinstall/unreal/UnrealSourceCatalog.d.ts.map +1 -1
  354. package/dist/postinstall/unreal/UnrealSourceCatalog.js +50 -50
  355. package/dist/postinstall/unreal/UnrealSourceCatalog.js.map +1 -1
  356. package/dist/prompts/InkPromptService.d.ts +10 -7
  357. package/dist/prompts/InkPromptService.d.ts.map +1 -1
  358. package/dist/prompts/InkPromptService.js +100 -71
  359. package/dist/prompts/InkPromptService.js.map +1 -1
  360. package/dist/prompts/ProjectContextDetector.d.ts +10 -7
  361. package/dist/prompts/ProjectContextDetector.d.ts.map +1 -1
  362. package/dist/prompts/ProjectContextDetector.js +32 -26
  363. package/dist/prompts/ProjectContextDetector.js.map +1 -1
  364. package/dist/prompts/PromptService.d.ts +11 -8
  365. package/dist/prompts/PromptService.d.ts.map +1 -1
  366. package/dist/prompts/PromptService.js +1 -8
  367. package/dist/reporting/DiagnosticDeduplicator.d.ts +8 -5
  368. package/dist/reporting/DiagnosticDeduplicator.d.ts.map +1 -1
  369. package/dist/reporting/DiagnosticDeduplicator.js +36 -35
  370. package/dist/reporting/DiagnosticDeduplicator.js.map +1 -1
  371. package/dist/reporting/DiagnosticRenderer.d.ts +11 -8
  372. package/dist/reporting/DiagnosticRenderer.d.ts.map +1 -1
  373. package/dist/reporting/DiagnosticRenderer.js +1 -2
  374. package/dist/reporting/DiagnosticReporter.d.ts +12 -9
  375. package/dist/reporting/DiagnosticReporter.d.ts.map +1 -1
  376. package/dist/reporting/DiagnosticReporter.js +40 -39
  377. package/dist/reporting/DiagnosticReporter.js.map +1 -1
  378. package/dist/reporting/InkDiagnosticRenderer.d.ts +12 -9
  379. package/dist/reporting/InkDiagnosticRenderer.d.ts.map +1 -1
  380. package/dist/reporting/InkDiagnosticRenderer.js +50 -42
  381. package/dist/reporting/InkDiagnosticRenderer.js.map +1 -1
  382. package/dist/reporting/InstallProgressReporter.d.ts +23 -20
  383. package/dist/reporting/InstallProgressReporter.d.ts.map +1 -1
  384. package/dist/reporting/InstallProgressReporter.js +48 -47
  385. package/dist/reporting/InstallProgressReporter.js.map +1 -1
  386. package/dist/reporting/JsonReporter.d.ts +16 -13
  387. package/dist/reporting/JsonReporter.d.ts.map +1 -1
  388. package/dist/reporting/JsonReporter.js +34 -20
  389. package/dist/reporting/JsonReporter.js.map +1 -1
  390. package/dist/reporting/RegistryRequestTerminalFormatter.d.ts +36 -0
  391. package/dist/reporting/RegistryRequestTerminalFormatter.d.ts.map +1 -0
  392. package/dist/reporting/RegistryRequestTerminalFormatter.js +90 -0
  393. package/dist/reporting/RegistryRequestTerminalFormatter.js.map +1 -0
  394. package/dist/reporting/TextDiagnosticRenderer.d.ts +11 -8
  395. package/dist/reporting/TextDiagnosticRenderer.d.ts.map +1 -1
  396. package/dist/reporting/TextDiagnosticRenderer.js +36 -28
  397. package/dist/reporting/TextDiagnosticRenderer.js.map +1 -1
  398. package/dist/reporting/TextSink.d.ts +14 -11
  399. package/dist/reporting/TextSink.d.ts.map +1 -1
  400. package/dist/reporting/TextSink.js +24 -20
  401. package/dist/reporting/TextSink.js.map +1 -1
  402. package/package.json +31 -32
  403. package/dist/cli/parsing/contracts/UAPKGCommandModule.js.map +0 -1
  404. package/dist/cli-bootstrap.d.ts.map +0 -1
  405. package/dist/commands/Command.js.map +0 -1
  406. package/dist/index.d.ts.map +0 -1
  407. package/dist/index.js.map +0 -1
  408. package/dist/postinstall/index.d.ts.map +0 -1
  409. package/dist/postinstall/index.js.map +0 -1
  410. package/dist/postinstall/unreal/CSharpStructures.js.map +0 -1
  411. package/dist/prompts/PromptService.js.map +0 -1
  412. package/dist/reporting/DiagnosticRenderer.js.map +0 -1
@@ -1,76 +1,105 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Box, render, Text, useApp, useInput } from 'ink';
3
- import SelectInput from 'ink-select-input';
4
- import TextInput from 'ink-text-input';
5
- import isCI from 'is-ci';
6
- // biome-ignore lint/correctness/noUnusedImports: Ink requires React
7
- import React, { useState } from 'react';
8
- // ---------------------------------------------------------------------------
9
- // InkPromptService — renders interactive prompts via Ink/React.
10
- //
11
- // Auto-detects non-interactive environments (no TTY or CI) and returns the
12
- // supplied fallback without ever rendering.
13
- // ---------------------------------------------------------------------------
14
- export class InkPromptService {
15
- isInteractive;
16
- constructor(isInteractive = Boolean(process.stdin.isTTY && process.stdout.isTTY) && !isCI) {
17
- this.isInteractive = isInteractive;
18
- }
19
- async select(message, options, fallbackValue) {
20
- if (!this.isInteractive) {
21
- return fallbackValue;
22
- }
23
- return await new Promise((resolve) => {
24
- const app = render(_jsx(SelectPrompt, { message: message, options: options, onSubmit: (value) => resolve(value) }));
25
- Promise.resolve().then(() => app.waitUntilExit());
26
- });
27
- }
28
- async text(message, initialValue) {
29
- if (!this.isInteractive) {
30
- return initialValue;
31
- }
32
- return await new Promise((resolve) => {
33
- const app = render(_jsx(TextPrompt, { message: message, initialValue: initialValue, onSubmit: (value) => resolve(value) }));
34
- Promise.resolve().then(() => app.waitUntilExit());
35
- });
36
- }
37
- async secret(message) {
38
- if (!this.isInteractive) {
39
- throw new Error(`${message} requires an interactive terminal.`);
40
- }
41
- return await new Promise((resolve) => {
42
- const app = render(_jsx(SecretPrompt, { message: message, onSubmit: (value) => resolve(value) }));
43
- Promise.resolve().then(() => app.waitUntilExit());
44
- });
45
- }
46
- }
1
+ import { Box, Text, render, useApp, useInput } from "ink";
2
+ import { useState } from "react";
3
+ import isCI from "is-ci";
4
+ import SelectInput from "ink-select-input";
5
+ import TextInput from "ink-text-input";
6
+ import { jsx, jsxs } from "react/jsx-runtime";
7
+
8
+ //#region src/prompts/InkPromptService.tsx
9
+ var InkPromptService = class {
10
+ isInteractive;
11
+ constructor(isInteractive = Boolean(process.stdin.isTTY && process.stdout.isTTY) && !isCI) {
12
+ this.isInteractive = isInteractive;
13
+ }
14
+ async select(message, options, fallbackValue) {
15
+ if (!this.isInteractive) return fallbackValue;
16
+ return await new Promise((resolve) => {
17
+ const app = render(/* @__PURE__ */ jsx(SelectPrompt, {
18
+ message,
19
+ options,
20
+ onSubmit: (value) => resolve(value)
21
+ }));
22
+ Promise.resolve().then(() => app.waitUntilExit());
23
+ });
24
+ }
25
+ async text(message, initialValue) {
26
+ if (!this.isInteractive) return initialValue;
27
+ return await new Promise((resolve) => {
28
+ const app = render(/* @__PURE__ */ jsx(TextPrompt, {
29
+ message,
30
+ initialValue,
31
+ onSubmit: (value) => resolve(value)
32
+ }));
33
+ Promise.resolve().then(() => app.waitUntilExit());
34
+ });
35
+ }
36
+ async secret(message) {
37
+ if (!this.isInteractive) throw new Error(`${message} requires an interactive terminal.`);
38
+ return await new Promise((resolve) => {
39
+ const app = render(/* @__PURE__ */ jsx(SecretPrompt, {
40
+ message,
41
+ onSubmit: (value) => resolve(value)
42
+ }));
43
+ Promise.resolve().then(() => app.waitUntilExit());
44
+ });
45
+ }
46
+ };
47
47
  function SecretPrompt({ message, onSubmit }) {
48
- const [value, setValue] = useState('');
49
- const { exit } = useApp();
50
- useInput((_, key) => {
51
- if (key.return) {
52
- onSubmit(value.trim());
53
- exit();
54
- }
55
- });
56
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { children: message }), _jsx(TextInput, { value: value, onChange: setValue, mask: "*" })] }));
48
+ const [value, setValue] = useState("");
49
+ const { exit } = useApp();
50
+ useInput((_, key) => {
51
+ if (key.return) {
52
+ onSubmit(value.trim());
53
+ exit();
54
+ }
55
+ });
56
+ return /* @__PURE__ */ jsxs(Box, {
57
+ flexDirection: "column",
58
+ children: [/* @__PURE__ */ jsx(Text, { children: message }), /* @__PURE__ */ jsx(TextInput, {
59
+ value,
60
+ onChange: setValue,
61
+ mask: "*"
62
+ })]
63
+ });
57
64
  }
58
- function SelectPrompt({ message, options, onSubmit, }) {
59
- const { exit } = useApp();
60
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { children: message }), _jsx(SelectInput, { items: options, onSelect: (item) => {
61
- onSubmit(item.value);
62
- exit();
63
- } })] }));
65
+ function SelectPrompt({ message, options, onSubmit }) {
66
+ const { exit } = useApp();
67
+ return /* @__PURE__ */ jsxs(Box, {
68
+ flexDirection: "column",
69
+ children: [/* @__PURE__ */ jsx(Text, { children: message }), /* @__PURE__ */ jsx(SelectInput, {
70
+ items: options,
71
+ onSelect: (item) => {
72
+ onSubmit(item.value);
73
+ exit();
74
+ }
75
+ })]
76
+ });
64
77
  }
65
- function TextPrompt({ message, initialValue, onSubmit, }) {
66
- const [value, setValue] = useState(initialValue);
67
- const { exit } = useApp();
68
- useInput((_, key) => {
69
- if (key.return) {
70
- onSubmit(value.trim() || initialValue);
71
- exit();
72
- }
73
- });
74
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { children: message }), _jsx(TextInput, { value: value, onChange: setValue }), _jsx(Text, { color: "gray", children: "Press Enter to confirm." })] }));
78
+ function TextPrompt({ message, initialValue, onSubmit }) {
79
+ const [value, setValue] = useState(initialValue);
80
+ const { exit } = useApp();
81
+ useInput((_, key) => {
82
+ if (key.return) {
83
+ onSubmit(value.trim() || initialValue);
84
+ exit();
85
+ }
86
+ });
87
+ return /* @__PURE__ */ jsxs(Box, {
88
+ flexDirection: "column",
89
+ children: [
90
+ /* @__PURE__ */ jsx(Text, { children: message }),
91
+ /* @__PURE__ */ jsx(TextInput, {
92
+ value,
93
+ onChange: setValue
94
+ }),
95
+ /* @__PURE__ */ jsx(Text, {
96
+ color: "gray",
97
+ children: "Press Enter to confirm."
98
+ })
99
+ ]
100
+ });
75
101
  }
102
+
103
+ //#endregion
104
+ export { InkPromptService };
76
105
  //# sourceMappingURL=InkPromptService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"InkPromptService.js","sourceRoot":"","sources":["../../src/prompts/InkPromptService.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InkPromptService.js","names":[],"sources":["../../src/prompts/InkPromptService.tsx"],"sourcesContent":["import { Box, render, Text, useApp, useInput } from 'ink';\nimport SelectInput from 'ink-select-input';\nimport TextInput from 'ink-text-input';\nimport isCI from 'is-ci';\nimport { useState } from 'react';\nimport type { PromptService, SelectOption } from './PromptService.js';\n\n// ---------------------------------------------------------------------------\n// InkPromptService — renders interactive prompts via Ink/React.\n//\n// Auto-detects non-interactive environments (no TTY or CI) and returns the\n// supplied fallback without ever rendering.\n// ---------------------------------------------------------------------------\n\nexport class InkPromptService implements PromptService {\n public constructor(private readonly isInteractive = Boolean(process.stdin.isTTY && process.stdout.isTTY) && !isCI) {}\n\n public async select(message: string, options: SelectOption[], fallbackValue: string): Promise<string> {\n if (!this.isInteractive) {\n return fallbackValue;\n }\n return await new Promise<string>((resolve) => {\n const app = render(<SelectPrompt message={message} options={options} onSubmit={(value) => resolve(value)} />);\n void Promise.resolve().then(() => app.waitUntilExit());\n });\n }\n\n public async text(message: string, initialValue: string): Promise<string> {\n if (!this.isInteractive) {\n return initialValue;\n }\n return await new Promise<string>((resolve) => {\n const app = render(\n <TextPrompt message={message} initialValue={initialValue} onSubmit={(value) => resolve(value)} />,\n );\n void Promise.resolve().then(() => app.waitUntilExit());\n });\n }\n\n public async secret(message: string): Promise<string> {\n if (!this.isInteractive) {\n throw new Error(`${message} requires an interactive terminal.`);\n }\n return await new Promise<string>((resolve) => {\n const app = render(<SecretPrompt message={message} onSubmit={(value) => resolve(value)} />);\n void Promise.resolve().then(() => app.waitUntilExit());\n });\n }\n}\n\nfunction SecretPrompt({ message, onSubmit }: { message: string; onSubmit: (value: string) => void }) {\n const [value, setValue] = useState('');\n const { exit } = useApp();\n\n useInput((_, key) => {\n if (key.return) {\n onSubmit(value.trim());\n exit();\n }\n });\n\n return (\n <Box flexDirection=\"column\">\n <Text>{message}</Text>\n <TextInput value={value} onChange={setValue} mask=\"*\" />\n </Box>\n );\n}\n\nfunction SelectPrompt({\n message,\n options,\n onSubmit,\n}: {\n message: string;\n options: SelectOption[];\n onSubmit: (value: string) => void;\n}) {\n const { exit } = useApp();\n return (\n <Box flexDirection=\"column\">\n <Text>{message}</Text>\n <SelectInput\n items={options}\n onSelect={(item) => {\n onSubmit(item.value);\n exit();\n }}\n />\n </Box>\n );\n}\n\nfunction TextPrompt({\n message,\n initialValue,\n onSubmit,\n}: {\n message: string;\n initialValue: string;\n onSubmit: (value: string) => void;\n}) {\n const [value, setValue] = useState(initialValue);\n const { exit } = useApp();\n\n useInput((_, key) => {\n if (key.return) {\n onSubmit(value.trim() || initialValue);\n exit();\n }\n });\n\n return (\n <Box flexDirection=\"column\">\n <Text>{message}</Text>\n <TextInput value={value} onChange={setValue} />\n <Text color=\"gray\">Press Enter to confirm.</Text>\n </Box>\n );\n}\n"],"mappings":";;;;;;;;AAcA,IAAa,mBAAb,MAAuD;CACjB;CAApC,AAAO,YAAY,AAAiB,gBAAgB,QAAQ,QAAQ,MAAM,SAAS,QAAQ,OAAO,KAAK,KAAK,CAAC,MAAM;EAA/E;CAAgF;CAEpH,MAAa,OAAO,SAAiB,SAAyB,eAAwC;EACpG,IAAI,CAAC,KAAK,eACR,OAAO;EAET,OAAO,MAAM,IAAI,SAAiB,YAAY;GAC5C,MAAM,MAAM,OAAO,oBAAC,cAAD;IAAuB;IAAkB;IAAS,WAAW,UAAU,QAAQ,KAAK;GAAI,EAAC;GAC5G,AAAK,QAAQ,QAAQ,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC;EACvD,CAAC;CACH;CAEA,MAAa,KAAK,SAAiB,cAAuC;EACxE,IAAI,CAAC,KAAK,eACR,OAAO;EAET,OAAO,MAAM,IAAI,SAAiB,YAAY;GAC5C,MAAM,MAAM,OACV,oBAAC,YAAD;IAAqB;IAAuB;IAAc,WAAW,UAAU,QAAQ,KAAK;GAAI,EAClG;GACA,AAAK,QAAQ,QAAQ,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC;EACvD,CAAC;CACH;CAEA,MAAa,OAAO,SAAkC;EACpD,IAAI,CAAC,KAAK,eACR,MAAM,IAAI,MAAM,GAAG,QAAQ,mCAAmC;EAEhE,OAAO,MAAM,IAAI,SAAiB,YAAY;GAC5C,MAAM,MAAM,OAAO,oBAAC,cAAD;IAAuB;IAAS,WAAW,UAAU,QAAQ,KAAK;GAAI,EAAC;GAC1F,AAAK,QAAQ,QAAQ,CAAC,CAAC,WAAW,IAAI,cAAc,CAAC;EACvD,CAAC;CACH;AACF;AAEA,SAAS,aAAa,EAAE,SAAS,YAAoE;CACnG,MAAM,CAAC,OAAO,YAAY,SAAS,EAAE;CACrC,MAAM,EAAE,SAAS,OAAO;CAExB,UAAU,GAAG,QAAQ;EACnB,IAAI,IAAI,QAAQ;GACd,SAAS,MAAM,KAAK,CAAC;GACrB,KAAK;EACP;CACF,CAAC;CAED,OACE,qBAAC,KAAD;EAAK,eAAc;YAAnB,CACE,oBAAC,MAAD,YAAO,QAAc,IACrB,oBAAC,WAAD;GAAkB;GAAO,UAAU;GAAU,MAAK;EAAK,EACpD;;AAET;AAEA,SAAS,aAAa,EACpB,SACA,SACA,YAKC;CACD,MAAM,EAAE,SAAS,OAAO;CACxB,OACE,qBAAC,KAAD;EAAK,eAAc;YAAnB,CACE,oBAAC,MAAD,YAAO,QAAc,IACrB,oBAAC,aAAD;GACE,OAAO;GACP,WAAW,SAAS;IAClB,SAAS,KAAK,KAAK;IACnB,KAAK;GACP;EACD,EACE;;AAET;AAEA,SAAS,WAAW,EAClB,SACA,cACA,YAKC;CACD,MAAM,CAAC,OAAO,YAAY,SAAS,YAAY;CAC/C,MAAM,EAAE,SAAS,OAAO;CAExB,UAAU,GAAG,QAAQ;EACnB,IAAI,IAAI,QAAQ;GACd,SAAS,MAAM,KAAK,KAAK,YAAY;GACrC,KAAK;EACP;CACF,CAAC;CAED,OACE,qBAAC,KAAD;EAAK,eAAc;YAAnB;GACE,oBAAC,MAAD,YAAO,QAAc;GACrB,oBAAC,WAAD;IAAkB;IAAO,UAAU;GAAW;GAC9C,oBAAC,MAAD;IAAM,OAAM;cAAO;GAA6B;EAC7C;;AAET"}
@@ -1,10 +1,13 @@
1
- import type { ManifestKind } from '@uapkg/package-manifest-schema';
2
- export interface ProjectContextDetection {
3
- suggestedKind: ManifestKind;
4
- suggestedName: string;
1
+ import { ManifestKind } from "@uapkg/package-manifest-schema";
2
+ //#region src/prompts/ProjectContextDetector.d.ts
3
+ interface ProjectContextDetection {
4
+ suggestedKind: ManifestKind;
5
+ suggestedName: string;
5
6
  }
6
- export declare class ProjectContextDetector {
7
- detect(cwd: string): ProjectContextDetection;
8
- private findFirstFileWithExtension;
7
+ declare class ProjectContextDetector {
8
+ detect(cwd: string): ProjectContextDetection;
9
+ private findFirstFileWithExtension;
9
10
  }
11
+ //#endregion
12
+ export { ProjectContextDetection, ProjectContextDetector };
10
13
  //# sourceMappingURL=ProjectContextDetector.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectContextDetector.d.ts","sourceRoot":"","sources":["../../src/prompts/ProjectContextDetector.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAUnE,MAAM,WAAW,uBAAuB;IACtC,aAAa,EAAE,YAAY,CAAC;IAC5B,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,sBAAsB;IAC1B,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,uBAAuB;IAcnD,OAAO,CAAC,0BAA0B;CAUnC"}
1
+ {"version":3,"file":"ProjectContextDetector.d.ts","names":[],"sources":["../../src/prompts/ProjectContextDetector.ts"],"mappings":";;UAYiB;EACf,eAAe;EACf;;cAGW;EACJ,OAAO,cAAc;UAcpB"}
@@ -1,27 +1,33 @@
1
- import fs from 'node:fs';
2
- import * as path from 'node:path';
3
- export class ProjectContextDetector {
4
- detect(cwd) {
5
- const uplugin = this.findFirstFileWithExtension(cwd, '.uplugin');
6
- if (uplugin) {
7
- return { suggestedKind: 'plugin', suggestedName: path.parse(uplugin).name };
8
- }
9
- const uproject = this.findFirstFileWithExtension(cwd, '.uproject');
10
- if (uproject) {
11
- return { suggestedKind: 'project', suggestedName: path.parse(uproject).name };
12
- }
13
- return { suggestedKind: 'project', suggestedName: path.basename(cwd) };
14
- }
15
- findFirstFileWithExtension(directory, extension) {
16
- try {
17
- return fs
18
- .readdirSync(directory)
19
- .find((entry) => entry.toLowerCase().endsWith(extension))
20
- ?.toString();
21
- }
22
- catch {
23
- return undefined;
24
- }
25
- }
26
- }
1
+ import * as path$1 from "node:path";
2
+ import fs from "node:fs";
3
+
4
+ //#region src/prompts/ProjectContextDetector.ts
5
+ var ProjectContextDetector = class {
6
+ detect(cwd) {
7
+ const uplugin = this.findFirstFileWithExtension(cwd, ".uplugin");
8
+ if (uplugin) return {
9
+ suggestedKind: "plugin",
10
+ suggestedName: path$1.parse(uplugin).name
11
+ };
12
+ const uproject = this.findFirstFileWithExtension(cwd, ".uproject");
13
+ if (uproject) return {
14
+ suggestedKind: "project",
15
+ suggestedName: path$1.parse(uproject).name
16
+ };
17
+ return {
18
+ suggestedKind: "project",
19
+ suggestedName: path$1.basename(cwd)
20
+ };
21
+ }
22
+ findFirstFileWithExtension(directory, extension) {
23
+ try {
24
+ return fs.readdirSync(directory).find((entry) => entry.toLowerCase().endsWith(extension))?.toString();
25
+ } catch {
26
+ return;
27
+ }
28
+ }
29
+ };
30
+
31
+ //#endregion
32
+ export { ProjectContextDetector };
27
33
  //# sourceMappingURL=ProjectContextDetector.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectContextDetector.js","sourceRoot":"","sources":["../../src/prompts/ProjectContextDetector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAgBlC,MAAM,OAAO,sBAAsB;IAC1B,MAAM,CAAC,GAAW;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QACjE,IAAI,OAAO,EAAE,CAAC;YACZ,OAAO,EAAE,aAAa,EAAE,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;QAC9E,CAAC;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,0BAA0B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QACnE,IAAI,QAAQ,EAAE,CAAC;YACb,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAChF,CAAC;QAED,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;IACzE,CAAC;IAEO,0BAA0B,CAAC,SAAiB,EAAE,SAAmC;QACvF,IAAI,CAAC;YACH,OAAO,EAAE;iBACN,WAAW,CAAC,SAAS,CAAC;iBACtB,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;gBACzD,EAAE,QAAQ,EAAE,CAAC;QACjB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"ProjectContextDetector.js","names":["path"],"sources":["../../src/prompts/ProjectContextDetector.ts"],"sourcesContent":["import fs from 'node:fs';\nimport * as path from 'node:path';\nimport type { ManifestKind } from '@uapkg/package-manifest-schema';\n\n// ---------------------------------------------------------------------------\n// ProjectContextDetector — sniffs the working directory for `.uproject` or\n// `.uplugin` files to suggest a sensible manifest kind + name during `init`.\n//\n// Pure I/O utility — no mutation, no throws. Failure to read the directory\n// falls back to a project-shaped suggestion using the directory basename.\n// ---------------------------------------------------------------------------\n\nexport interface ProjectContextDetection {\n suggestedKind: ManifestKind;\n suggestedName: string;\n}\n\nexport class ProjectContextDetector {\n public detect(cwd: string): ProjectContextDetection {\n const uplugin = this.findFirstFileWithExtension(cwd, '.uplugin');\n if (uplugin) {\n return { suggestedKind: 'plugin', suggestedName: path.parse(uplugin).name };\n }\n\n const uproject = this.findFirstFileWithExtension(cwd, '.uproject');\n if (uproject) {\n return { suggestedKind: 'project', suggestedName: path.parse(uproject).name };\n }\n\n return { suggestedKind: 'project', suggestedName: path.basename(cwd) };\n }\n\n private findFirstFileWithExtension(directory: string, extension: '.uplugin' | '.uproject'): string | undefined {\n try {\n return fs\n .readdirSync(directory)\n .find((entry) => entry.toLowerCase().endsWith(extension))\n ?.toString();\n } catch {\n return undefined;\n }\n }\n}\n"],"mappings":";;;;AAiBA,IAAa,yBAAb,MAAoC;CAClC,AAAO,OAAO,KAAsC;EAClD,MAAM,UAAU,KAAK,2BAA2B,KAAK,UAAU;EAC/D,IAAI,SACF,OAAO;GAAE,eAAe;GAAU,eAAeA,OAAK,MAAM,OAAO,CAAC,CAAC;EAAK;EAG5E,MAAM,WAAW,KAAK,2BAA2B,KAAK,WAAW;EACjE,IAAI,UACF,OAAO;GAAE,eAAe;GAAW,eAAeA,OAAK,MAAM,QAAQ,CAAC,CAAC;EAAK;EAG9E,OAAO;GAAE,eAAe;GAAW,eAAeA,OAAK,SAAS,GAAG;EAAE;CACvE;CAEA,AAAQ,2BAA2B,WAAmB,WAAyD;EAC7G,IAAI;GACF,OAAO,GACJ,YAAY,SAAS,CAAC,CACtB,MAAM,UAAU,MAAM,YAAY,CAAC,CAAC,SAAS,SAAS,CAAC,CAAC,EACvD,SAAS;EACf,QAAQ;GACN;EACF;CACF;AACF"}
@@ -1,11 +1,14 @@
1
- export interface SelectOption {
2
- label: string;
3
- value: string;
1
+ //#region src/prompts/PromptService.d.ts
2
+ interface SelectOption {
3
+ label: string;
4
+ value: string;
4
5
  }
5
- export interface PromptService {
6
- select(message: string, options: SelectOption[], fallbackValue: string): Promise<string>;
7
- text(message: string, initialValue: string): Promise<string>;
8
- /** Read a value without echoing it. Never supplies a non-interactive fallback. */
9
- secret(message: string): Promise<string>;
6
+ interface PromptService {
7
+ select(message: string, options: SelectOption[], fallbackValue: string): Promise<string>;
8
+ text(message: string, initialValue: string): Promise<string>;
9
+ /** Read a value without echoing it. Never supplies a non-interactive fallback. */
10
+ secret(message: string): Promise<string>;
10
11
  }
12
+ //#endregion
13
+ export { PromptService, SelectOption };
11
14
  //# sourceMappingURL=PromptService.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PromptService.d.ts","sourceRoot":"","sources":["../../src/prompts/PromptService.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACzF,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,kFAAkF;IAClF,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;CAC1C"}
1
+ {"version":3,"file":"PromptService.d.ts","names":[],"sources":["../../src/prompts/PromptService.ts"],"mappings":";UAOiB;EACf;EACA;;UAGe;EACf,OAAO,iBAAiB,SAAS,gBAAgB,wBAAwB;EACzE,KAAK,iBAAiB,uBAAuB;;EAE7C,OAAO,kBAAkB"}
@@ -1,8 +1 @@
1
- // ---------------------------------------------------------------------------
2
- // PromptService — abstraction used by interactive commands (e.g. `init`).
3
- //
4
- // Split from the Ink implementation so that test environments can substitute
5
- // a non-interactive stub without pulling React/Ink into the test harness.
6
- // ---------------------------------------------------------------------------
7
- export {};
8
- //# sourceMappingURL=PromptService.js.map
1
+ export { };
@@ -1,11 +1,14 @@
1
- import { type Diagnostic } from '@uapkg/diagnostics';
1
+ import { Diagnostic } from "@uapkg/diagnostics";
2
+ //#region src/reporting/DiagnosticDeduplicator.d.ts
2
3
  /**
3
4
  * Suppresses diagnostics marked as `emitPolicy: "once"` across the current
4
5
  * CLI process lifetime.
5
6
  */
6
- export declare class DiagnosticDeduplicator {
7
- private static readonly seen;
8
- filter(diagnostics: readonly Diagnostic[]): Diagnostic[];
9
- private fingerprintOf;
7
+ declare class DiagnosticDeduplicator {
8
+ private static readonly seen;
9
+ filter(diagnostics: readonly Diagnostic[]): Diagnostic[];
10
+ private fingerprintOf;
10
11
  }
12
+ //#endregion
13
+ export { DiagnosticDeduplicator };
11
14
  //# sourceMappingURL=DiagnosticDeduplicator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticDeduplicator.d.ts","sourceRoot":"","sources":["../../src/reporting/DiagnosticDeduplicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+B,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAElF;;;GAGG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAqB;IAE1C,MAAM,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,UAAU,EAAE;IAmB/D,OAAO,CAAC,aAAa;CAatB"}
1
+ {"version":3,"file":"DiagnosticDeduplicator.d.ts","names":[],"sources":["../../src/reporting/DiagnosticDeduplicator.ts"],"mappings":";;;;;;cAMa;0BACa;EAEjB,OAAO,sBAAsB,eAAe;UAmB3C"}
@@ -1,37 +1,38 @@
1
- import { createDiagnosticFingerprint } from '@uapkg/diagnostics';
1
+ import { createDiagnosticFingerprint } from "@uapkg/diagnostics";
2
+
3
+ //#region src/reporting/DiagnosticDeduplicator.ts
2
4
  /**
3
- * Suppresses diagnostics marked as `emitPolicy: "once"` across the current
4
- * CLI process lifetime.
5
- */
6
- export class DiagnosticDeduplicator {
7
- static seen = new Set();
8
- filter(diagnostics) {
9
- const out = [];
10
- for (const diagnostic of diagnostics) {
11
- if (diagnostic.emitPolicy !== 'once') {
12
- out.push(diagnostic);
13
- continue;
14
- }
15
- const fingerprint = this.fingerprintOf(diagnostic);
16
- if (DiagnosticDeduplicator.seen.has(fingerprint)) {
17
- continue;
18
- }
19
- DiagnosticDeduplicator.seen.add(fingerprint);
20
- out.push(diagnostic);
21
- }
22
- return out;
23
- }
24
- fingerprintOf(diagnostic) {
25
- if (diagnostic.emitFingerprint && diagnostic.emitFingerprint.trim().length > 0) {
26
- return diagnostic.emitFingerprint;
27
- }
28
- return createDiagnosticFingerprint({
29
- level: diagnostic.level,
30
- code: diagnostic.code,
31
- message: diagnostic.message,
32
- hint: diagnostic.hint,
33
- data: diagnostic.data,
34
- });
35
- }
36
- }
5
+ * Suppresses diagnostics marked as `emitPolicy: "once"` across the current
6
+ * CLI process lifetime.
7
+ */
8
+ var DiagnosticDeduplicator = class DiagnosticDeduplicator {
9
+ static seen = /* @__PURE__ */ new Set();
10
+ filter(diagnostics) {
11
+ const out = [];
12
+ for (const diagnostic of diagnostics) {
13
+ if (diagnostic.emitPolicy !== "once") {
14
+ out.push(diagnostic);
15
+ continue;
16
+ }
17
+ const fingerprint = this.fingerprintOf(diagnostic);
18
+ if (DiagnosticDeduplicator.seen.has(fingerprint)) continue;
19
+ DiagnosticDeduplicator.seen.add(fingerprint);
20
+ out.push(diagnostic);
21
+ }
22
+ return out;
23
+ }
24
+ fingerprintOf(diagnostic) {
25
+ if (diagnostic.emitFingerprint && diagnostic.emitFingerprint.trim().length > 0) return diagnostic.emitFingerprint;
26
+ return createDiagnosticFingerprint({
27
+ level: diagnostic.level,
28
+ code: diagnostic.code,
29
+ message: diagnostic.message,
30
+ hint: diagnostic.hint,
31
+ data: diagnostic.data
32
+ });
33
+ }
34
+ };
35
+
36
+ //#endregion
37
+ export { DiagnosticDeduplicator };
37
38
  //# sourceMappingURL=DiagnosticDeduplicator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticDeduplicator.js","sourceRoot":"","sources":["../../src/reporting/DiagnosticDeduplicator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAmB,MAAM,oBAAoB,CAAC;AAElF;;;GAGG;AACH,MAAM,OAAO,sBAAsB;IACzB,MAAM,CAAU,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAE1C,MAAM,CAAC,WAAkC;QAC9C,MAAM,GAAG,GAAiB,EAAE,CAAC;QAC7B,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;YACrC,IAAI,UAAU,CAAC,UAAU,KAAK,MAAM,EAAE,CAAC;gBACrC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACrB,SAAS;YACX,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;YACnD,IAAI,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;gBACjD,SAAS;YACX,CAAC;YAED,sBAAsB,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;YAC7C,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEO,aAAa,CAAC,UAAsB;QAC1C,IAAI,UAAU,CAAC,eAAe,IAAI,UAAU,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC/E,OAAO,UAAU,CAAC,eAAe,CAAC;QACpC,CAAC;QAED,OAAO,2BAA2B,CAAC;YACjC,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,IAAI,EAAE,UAAU,CAAC,IAAI;SACtB,CAAC,CAAC;IACL,CAAC"}
1
+ {"version":3,"file":"DiagnosticDeduplicator.js","names":[],"sources":["../../src/reporting/DiagnosticDeduplicator.ts"],"sourcesContent":["import { createDiagnosticFingerprint, type Diagnostic } from '@uapkg/diagnostics';\n\n/**\n * Suppresses diagnostics marked as `emitPolicy: \"once\"` across the current\n * CLI process lifetime.\n */\nexport class DiagnosticDeduplicator {\n private static readonly seen = new Set<string>();\n\n public filter(diagnostics: readonly Diagnostic[]): Diagnostic[] {\n const out: Diagnostic[] = [];\n for (const diagnostic of diagnostics) {\n if (diagnostic.emitPolicy !== 'once') {\n out.push(diagnostic);\n continue;\n }\n\n const fingerprint = this.fingerprintOf(diagnostic);\n if (DiagnosticDeduplicator.seen.has(fingerprint)) {\n continue;\n }\n\n DiagnosticDeduplicator.seen.add(fingerprint);\n out.push(diagnostic);\n }\n return out;\n }\n\n private fingerprintOf(diagnostic: Diagnostic): string {\n if (diagnostic.emitFingerprint && diagnostic.emitFingerprint.trim().length > 0) {\n return diagnostic.emitFingerprint;\n }\n\n return createDiagnosticFingerprint({\n level: diagnostic.level,\n code: diagnostic.code,\n message: diagnostic.message,\n hint: diagnostic.hint,\n data: diagnostic.data,\n });\n }\n}\n"],"mappings":";;;;;;;AAMA,IAAa,yBAAb,MAAa,uBAAuB;CAClC,OAAwB,uBAAO,IAAI,IAAY;CAE/C,AAAO,OAAO,aAAkD;EAC9D,MAAM,MAAoB,CAAC;EAC3B,KAAK,MAAM,cAAc,aAAa;GACpC,IAAI,WAAW,eAAe,QAAQ;IACpC,IAAI,KAAK,UAAU;IACnB;GACF;GAEA,MAAM,cAAc,KAAK,cAAc,UAAU;GACjD,IAAI,uBAAuB,KAAK,IAAI,WAAW,GAC7C;GAGF,uBAAuB,KAAK,IAAI,WAAW;GAC3C,IAAI,KAAK,UAAU;EACrB;EACA,OAAO;CACT;CAEA,AAAQ,cAAc,YAAgC;EACpD,IAAI,WAAW,mBAAmB,WAAW,gBAAgB,KAAK,CAAC,CAAC,SAAS,GAC3E,OAAO,WAAW;EAGpB,OAAO,4BAA4B;GACjC,OAAO,WAAW;GAClB,MAAM,WAAW;GACjB,SAAS,WAAW;GACpB,MAAM,WAAW;GACjB,MAAM,WAAW;EACnB,CAAC;CACH;AACF"}
@@ -1,4 +1,5 @@
1
- import type { Diagnostic } from '@uapkg/diagnostics';
1
+ import { Diagnostic } from "@uapkg/diagnostics";
2
+ //#region src/reporting/DiagnosticRenderer.d.ts
2
3
  /**
3
4
  * Strategy for turning a batch of diagnostics at a single severity stream
4
5
  * into user-facing output. Implementations decide how (Ink, plain text) and
@@ -7,12 +8,14 @@ import type { Diagnostic } from '@uapkg/diagnostics';
7
8
  * Kept as a tiny interface so `DiagnosticReporter` stays ignorant of Ink
8
9
  * and so tests can inject a capturing fake without bringing up React.
9
10
  */
10
- export interface DiagnosticRenderer {
11
- /**
12
- * Render a list of diagnostics targeted at the given logical stream.
13
- * Implementations must never throw — swallow any internal rendering
14
- * failure and fall back to a safe text path.
15
- */
16
- render(diagnostics: readonly Diagnostic[], stream: 'stdout' | 'stderr'): void;
11
+ interface DiagnosticRenderer {
12
+ /**
13
+ * Render a list of diagnostics targeted at the given logical stream.
14
+ * Implementations must never throw — swallow any internal rendering
15
+ * failure and fall back to a safe text path.
16
+ */
17
+ render(diagnostics: readonly Diagnostic[], stream: 'stdout' | 'stderr'): void;
17
18
  }
19
+ //#endregion
20
+ export { DiagnosticRenderer };
18
21
  //# sourceMappingURL=DiagnosticRenderer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticRenderer.d.ts","sourceRoot":"","sources":["../../src/reporting/DiagnosticRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAErD;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,MAAM,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI,CAAC;CAC/E"}
1
+ {"version":3,"file":"DiagnosticRenderer.d.ts","names":[],"sources":["../../src/reporting/DiagnosticRenderer.ts"],"mappings":";;;;;;;;;;UAUiB;;;;;;EAMf,OAAO,sBAAsB,cAAc"}
@@ -1,2 +1 @@
1
- export {};
2
- //# sourceMappingURL=DiagnosticRenderer.js.map
1
+ export { };
@@ -1,6 +1,7 @@
1
- import type { Diagnostic } from '@uapkg/diagnostics';
2
- import { DiagnosticDeduplicator } from './DiagnosticDeduplicator.js';
3
- import type { DiagnosticRenderer } from './DiagnosticRenderer.js';
1
+ import { DiagnosticDeduplicator } from "./DiagnosticDeduplicator.js";
2
+ import { DiagnosticRenderer } from "./DiagnosticRenderer.js";
3
+ import { Diagnostic } from "@uapkg/diagnostics";
4
+ //#region src/reporting/DiagnosticReporter.d.ts
4
5
  /**
5
6
  * Human-readable diagnostic reporter.
6
7
  *
@@ -13,11 +14,13 @@ import type { DiagnosticRenderer } from './DiagnosticRenderer.js';
13
14
  *
14
15
  * One instance is safe to reuse across commands in a single CLI run.
15
16
  */
16
- export declare class DiagnosticReporter {
17
- private readonly renderer;
18
- private readonly deduplicator;
19
- constructor(renderer?: DiagnosticRenderer, deduplicator?: DiagnosticDeduplicator);
20
- reportAll(diagnostics: readonly Diagnostic[]): void;
21
- reportOne(diagnostic: Diagnostic): void;
17
+ declare class DiagnosticReporter {
18
+ private readonly renderer;
19
+ private readonly deduplicator;
20
+ constructor(renderer?: DiagnosticRenderer, deduplicator?: DiagnosticDeduplicator);
21
+ reportAll(diagnostics: readonly Diagnostic[]): void;
22
+ reportOne(diagnostic: Diagnostic): void;
22
23
  }
24
+ //#endregion
25
+ export { DiagnosticReporter };
23
26
  //# sourceMappingURL=DiagnosticReporter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"DiagnosticReporter.d.ts","sourceRoot":"","sources":["../../src/reporting/DiagnosticReporter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAIlE;;;;;;;;;;;GAWG;AACH,qBAAa,kBAAkB;IAE3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,YAAY;gBADZ,QAAQ,GAAE,kBAAgD,EAC1D,YAAY,GAAE,sBAAqD;IAG/E,SAAS,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI;IAWnD,SAAS,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI;CAG/C"}
1
+ {"version":3,"file":"DiagnosticReporter.d.ts","names":[],"sources":["../../src/reporting/DiagnosticReporter.ts"],"mappings":";;;;;;;;;;;;;;;;cAkBa;mBAEQ;mBACA;EAFnB,YACmB,WAAU,oBACV,eAAc;EAG1B,UAAU,sBAAsB;EAWhC,UAAU,YAAY"}