@antelopejs/core 0.3.2 → 1.0.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 (364) hide show
  1. package/dist/core/build/build-artifact.d.ts +59 -0
  2. package/dist/core/build/build-artifact.js +72 -0
  3. package/dist/core/build/build-artifact.js.map +1 -0
  4. package/dist/{utils → core/cli}/cli-ui.d.ts +4 -14
  5. package/dist/core/cli/cli-ui.js +154 -0
  6. package/dist/core/cli/cli-ui.js.map +1 -0
  7. package/dist/{utils → core/cli}/command.d.ts +1 -1
  8. package/dist/core/cli/command.js +25 -0
  9. package/dist/core/cli/command.js.map +1 -0
  10. package/dist/{cli → core/cli/commands}/config/get.d.ts +1 -1
  11. package/dist/{cli → core/cli/commands}/config/get.js +11 -10
  12. package/dist/core/cli/commands/config/get.js.map +1 -0
  13. package/dist/{cli → core/cli/commands}/config/index.d.ts +1 -1
  14. package/dist/{cli → core/cli/commands}/config/index.js +5 -4
  15. package/dist/core/cli/commands/config/index.js.map +1 -0
  16. package/dist/{cli → core/cli/commands}/config/reset.d.ts +1 -1
  17. package/dist/{cli → core/cli/commands}/config/reset.js +17 -16
  18. package/dist/core/cli/commands/config/reset.js.map +1 -0
  19. package/dist/{cli/module/exports → core/cli/commands/config}/set.d.ts +1 -1
  20. package/dist/{cli → core/cli/commands}/config/set.js +15 -11
  21. package/dist/core/cli/commands/config/set.js.map +1 -0
  22. package/dist/{cli → core/cli/commands}/config/show.d.ts +1 -1
  23. package/dist/{cli → core/cli/commands}/config/show.js +13 -11
  24. package/dist/core/cli/commands/config/show.js.map +1 -0
  25. package/dist/{cli/module/exports → core/cli/commands/module}/index.d.ts +1 -1
  26. package/dist/{cli → core/cli/commands}/module/index.js +3 -7
  27. package/dist/core/cli/commands/module/index.js.map +1 -0
  28. package/dist/{cli → core/cli/commands}/module/init.d.ts +1 -1
  29. package/dist/core/cli/commands/module/init.js +176 -0
  30. package/dist/core/cli/commands/module/init.js.map +1 -0
  31. package/dist/{cli → core/cli/commands}/module/test.d.ts +1 -1
  32. package/dist/{cli → core/cli/commands}/module/test.js +13 -15
  33. package/dist/core/cli/commands/module/test.js.map +1 -0
  34. package/dist/{cli/config/set.d.ts → core/cli/commands/project/build.d.ts} +1 -1
  35. package/dist/core/cli/commands/project/build.js +71 -0
  36. package/dist/core/cli/commands/project/build.js.map +1 -0
  37. package/dist/core/cli/commands/project/dev.d.ts +20 -0
  38. package/dist/core/cli/commands/project/dev.js +262 -0
  39. package/dist/core/cli/commands/project/dev.js.map +1 -0
  40. package/dist/{cli/module/imports → core/cli/commands/project}/index.d.ts +1 -1
  41. package/dist/{cli → core/cli/commands}/project/index.js +10 -3
  42. package/dist/core/cli/commands/project/index.js.map +1 -0
  43. package/dist/{cli → core/cli/commands}/project/init.d.ts +1 -1
  44. package/dist/core/cli/commands/project/init.js +118 -0
  45. package/dist/core/cli/commands/project/init.js.map +1 -0
  46. package/dist/{cli/module → core/cli/commands/project/logging}/index.d.ts +1 -1
  47. package/dist/{cli → core/cli/commands}/project/logging/index.js +4 -3
  48. package/dist/core/cli/commands/project/logging/index.js.map +1 -0
  49. package/dist/{cli → core/cli/commands}/project/logging/set.d.ts +1 -1
  50. package/dist/{cli → core/cli/commands}/project/logging/set.js +99 -89
  51. package/dist/core/cli/commands/project/logging/set.js.map +1 -0
  52. package/dist/{cli → core/cli/commands}/project/logging/show.d.ts +1 -1
  53. package/dist/{cli → core/cli/commands}/project/logging/show.js +37 -34
  54. package/dist/core/cli/commands/project/logging/show.js.map +1 -0
  55. package/dist/{cli → core/cli/commands}/project/modules/add.d.ts +3 -3
  56. package/dist/core/cli/commands/project/modules/add.js +237 -0
  57. package/dist/core/cli/commands/project/modules/add.js.map +1 -0
  58. package/dist/core/cli/commands/project/modules/index.d.ts +2 -0
  59. package/dist/{cli → core/cli/commands}/project/modules/index.js +5 -4
  60. package/dist/core/cli/commands/project/modules/index.js.map +1 -0
  61. package/dist/{cli/module/imports → core/cli/commands/project/modules}/install.d.ts +1 -1
  62. package/dist/{cli → core/cli/commands}/project/modules/install.js +83 -84
  63. package/dist/core/cli/commands/project/modules/install.js.map +1 -0
  64. package/dist/{cli/module/imports → core/cli/commands/project/modules}/list.d.ts +1 -1
  65. package/dist/core/cli/commands/project/modules/list.js +123 -0
  66. package/dist/core/cli/commands/project/modules/list.js.map +1 -0
  67. package/dist/{cli → core/cli/commands}/project/modules/remove.d.ts +1 -1
  68. package/dist/{cli → core/cli/commands}/project/modules/remove.js +31 -28
  69. package/dist/core/cli/commands/project/modules/remove.js.map +1 -0
  70. package/dist/{cli/module/imports → core/cli/commands/project/modules}/update.d.ts +1 -1
  71. package/dist/{cli → core/cli/commands}/project/modules/update.js +26 -22
  72. package/dist/core/cli/commands/project/modules/update.js.map +1 -0
  73. package/dist/core/cli/commands/project/run.d.ts +1 -0
  74. package/dist/core/cli/commands/project/run.js +12 -0
  75. package/dist/core/cli/commands/project/run.js.map +1 -0
  76. package/dist/core/cli/commands/project/start.d.ts +2 -0
  77. package/dist/core/cli/commands/project/start.js +57 -0
  78. package/dist/core/cli/commands/project/start.js.map +1 -0
  79. package/dist/core/cli/commands/shared/project-command.d.ts +8 -0
  80. package/dist/core/cli/commands/shared/project-command.js +32 -0
  81. package/dist/core/cli/commands/shared/project-command.js.map +1 -0
  82. package/dist/core/cli/common.d.ts +23 -0
  83. package/dist/core/cli/common.js +203 -0
  84. package/dist/core/cli/common.js.map +1 -0
  85. package/dist/{cli/git.d.ts → core/cli/git-operations.d.ts} +1 -20
  86. package/dist/core/cli/git-operations.js +159 -0
  87. package/dist/core/cli/git-operations.js.map +1 -0
  88. package/dist/core/cli/index.d.ts +4 -0
  89. package/dist/core/cli/index.js +81 -0
  90. package/dist/core/cli/index.js.map +1 -0
  91. package/dist/core/cli/logging-utils.d.ts +17 -0
  92. package/dist/{logging/utils.js → core/cli/logging-utils.js} +49 -43
  93. package/dist/core/cli/logging-utils.js.map +1 -0
  94. package/dist/{utils → core/cli}/package-manager.d.ts +4 -3
  95. package/dist/core/cli/package-manager.js +106 -0
  96. package/dist/core/cli/package-manager.js.map +1 -0
  97. package/dist/{logging → core/cli}/terminal-display.d.ts +1 -3
  98. package/dist/{logging → core/cli}/terminal-display.js +6 -7
  99. package/dist/core/cli/terminal-display.js.map +1 -0
  100. package/dist/core/cli/version-check.d.ts +2 -0
  101. package/dist/{cli → core/cli}/version-check.js +9 -5
  102. package/dist/core/cli/version-check.js.map +1 -0
  103. package/dist/core/config/config-loader.d.ts +20 -0
  104. package/dist/core/config/config-loader.js +98 -0
  105. package/dist/core/config/config-loader.js.map +1 -0
  106. package/dist/core/config/config-parser.d.ts +16 -0
  107. package/dist/core/config/config-parser.js +134 -0
  108. package/dist/core/config/config-parser.js.map +1 -0
  109. package/dist/core/config/config-paths.d.ts +7 -0
  110. package/dist/core/config/config-paths.js +32 -0
  111. package/dist/core/config/config-paths.js.map +1 -0
  112. package/dist/core/config/index.d.ts +3 -0
  113. package/dist/core/config/index.js +20 -0
  114. package/dist/core/config/index.js.map +1 -0
  115. package/dist/core/downloaders/git.d.ts +8 -0
  116. package/dist/core/downloaders/git.js +96 -0
  117. package/dist/core/downloaders/git.js.map +1 -0
  118. package/dist/core/downloaders/local-folder.d.ts +8 -0
  119. package/dist/core/downloaders/local-folder.js +70 -0
  120. package/dist/core/downloaders/local-folder.js.map +1 -0
  121. package/dist/core/downloaders/local.d.ts +8 -0
  122. package/dist/core/downloaders/local.js +59 -0
  123. package/dist/core/downloaders/local.js.map +1 -0
  124. package/dist/core/downloaders/package.d.ts +11 -0
  125. package/dist/core/downloaders/package.js +99 -0
  126. package/dist/core/downloaders/package.js.map +1 -0
  127. package/dist/core/downloaders/registry.d.ts +11 -0
  128. package/dist/core/downloaders/registry.js +85 -0
  129. package/dist/core/downloaders/registry.js.map +1 -0
  130. package/dist/core/downloaders/types.d.ts +11 -0
  131. package/dist/core/downloaders/types.js +3 -0
  132. package/dist/core/downloaders/types.js.map +1 -0
  133. package/dist/core/downloaders/utils.d.ts +5 -0
  134. package/dist/core/downloaders/utils.js +77 -0
  135. package/dist/core/downloaders/utils.js.map +1 -0
  136. package/dist/core/filesystem.d.ts +20 -0
  137. package/dist/core/filesystem.js +80 -0
  138. package/dist/core/filesystem.js.map +1 -0
  139. package/dist/core/interface-registry.d.ts +7 -0
  140. package/dist/core/interface-registry.js +23 -0
  141. package/dist/core/interface-registry.js.map +1 -0
  142. package/dist/{common/cache.d.ts → core/module-cache.d.ts} +8 -4
  143. package/dist/{common/cache.js → core/module-cache.js} +52 -32
  144. package/dist/core/module-cache.js.map +1 -0
  145. package/dist/core/module-lifecycle.d.ts +13 -0
  146. package/dist/core/module-lifecycle.js +62 -0
  147. package/dist/core/module-lifecycle.js.map +1 -0
  148. package/dist/core/module-manager.d.ts +65 -0
  149. package/dist/core/module-manager.js +340 -0
  150. package/dist/core/module-manager.js.map +1 -0
  151. package/dist/core/module-manifest.d.ts +45 -0
  152. package/dist/core/module-manifest.js +180 -0
  153. package/dist/core/module-manifest.js.map +1 -0
  154. package/dist/core/module-registry.d.ts +7 -0
  155. package/dist/core/module-registry.js +17 -0
  156. package/dist/core/module-registry.js.map +1 -0
  157. package/dist/core/module-tracker.d.ts +8 -0
  158. package/dist/core/module-tracker.js +14 -0
  159. package/dist/core/module-tracker.js.map +1 -0
  160. package/dist/core/module.d.ts +19 -0
  161. package/dist/core/module.js +106 -0
  162. package/dist/core/module.js.map +1 -0
  163. package/dist/core/repl/repl-session.d.ts +10 -0
  164. package/dist/core/repl/repl-session.js +26 -0
  165. package/dist/core/repl/repl-session.js.map +1 -0
  166. package/dist/core/resolution/path-mapper.d.ts +7 -0
  167. package/dist/core/resolution/path-mapper.js +79 -0
  168. package/dist/core/resolution/path-mapper.js.map +1 -0
  169. package/dist/core/resolution/resolver-detour.d.ts +8 -0
  170. package/dist/core/resolution/resolver-detour.js +42 -0
  171. package/dist/core/resolution/resolver-detour.js.map +1 -0
  172. package/dist/core/resolution/resolver.d.ts +23 -0
  173. package/dist/core/resolution/resolver.js +55 -0
  174. package/dist/core/resolution/resolver.js.map +1 -0
  175. package/dist/core/runtime/build-runtime.d.ts +8 -0
  176. package/dist/core/runtime/build-runtime.js +129 -0
  177. package/dist/core/runtime/build-runtime.js.map +1 -0
  178. package/dist/core/runtime/module-loading.d.ts +16 -0
  179. package/dist/core/runtime/module-loading.js +310 -0
  180. package/dist/core/runtime/module-loading.js.map +1 -0
  181. package/dist/core/runtime/runtime-bootstrap.d.ts +9 -0
  182. package/dist/core/runtime/runtime-bootstrap.js +92 -0
  183. package/dist/core/runtime/runtime-bootstrap.js.map +1 -0
  184. package/dist/core/runtime/runtime-types.d.ts +34 -0
  185. package/dist/core/runtime/runtime-types.js +3 -0
  186. package/dist/core/runtime/runtime-types.js.map +1 -0
  187. package/dist/core/shutdown/index.d.ts +1 -0
  188. package/dist/core/shutdown/index.js +18 -0
  189. package/dist/core/shutdown/index.js.map +1 -0
  190. package/dist/core/shutdown/shutdown-manager.d.ts +23 -0
  191. package/dist/core/shutdown/shutdown-manager.js +108 -0
  192. package/dist/core/shutdown/shutdown-manager.js.map +1 -0
  193. package/dist/core/test/stub-interface.d.ts +3 -0
  194. package/dist/core/test/stub-interface.js +40 -0
  195. package/dist/core/test/stub-interface.js.map +1 -0
  196. package/dist/core/test/test-context.d.ts +18 -0
  197. package/dist/core/test/test-context.js +34 -0
  198. package/dist/core/test/test-context.js.map +1 -0
  199. package/dist/core/test/test-module.d.ts +15 -0
  200. package/dist/core/test/test-module.js +234 -0
  201. package/dist/core/test/test-module.js.map +1 -0
  202. package/dist/core/test/test-runner.d.ts +8 -0
  203. package/dist/core/test/test-runner.js +33 -0
  204. package/dist/core/test/test-runner.js.map +1 -0
  205. package/dist/core/watch/file-hasher.d.ts +6 -0
  206. package/dist/core/watch/file-hasher.js +16 -0
  207. package/dist/core/watch/file-hasher.js.map +1 -0
  208. package/dist/core/watch/file-watcher.d.ts +24 -0
  209. package/dist/core/watch/file-watcher.js +179 -0
  210. package/dist/core/watch/file-watcher.js.map +1 -0
  211. package/dist/core/watch/hot-reload.d.ts +10 -0
  212. package/dist/core/watch/hot-reload.js +36 -0
  213. package/dist/core/watch/hot-reload.js.map +1 -0
  214. package/dist/index.d.ts +17 -8
  215. package/dist/index.js +142 -150
  216. package/dist/index.js.map +1 -1
  217. package/dist/logging/index.d.ts +13 -3
  218. package/dist/logging/index.js +213 -9
  219. package/dist/logging/index.js.map +1 -1
  220. package/dist/logging/log-filter.d.ts +16 -0
  221. package/dist/logging/log-filter.js +68 -0
  222. package/dist/logging/log-filter.js.map +1 -0
  223. package/dist/logging/log-formatter.d.ts +24 -0
  224. package/dist/logging/log-formatter.js +76 -0
  225. package/dist/logging/log-formatter.js.map +1 -0
  226. package/dist/logging/logger.d.ts +36 -6
  227. package/dist/logging/logger.js +87 -113
  228. package/dist/logging/logger.js.map +1 -1
  229. package/dist/types/config.types.d.ts +7 -0
  230. package/dist/types/config.types.js +3 -0
  231. package/dist/types/config.types.js.map +1 -0
  232. package/dist/types/filesystem.types.d.ts +19 -0
  233. package/dist/types/filesystem.types.js +3 -0
  234. package/dist/types/filesystem.types.js.map +1 -0
  235. package/dist/types/index.d.ts +3 -0
  236. package/dist/types/index.js +20 -0
  237. package/dist/types/index.js.map +1 -0
  238. package/dist/types/module.types.d.ts +11 -0
  239. package/dist/types/module.types.js +10 -0
  240. package/dist/types/module.types.js.map +1 -0
  241. package/dist/utils/index.d.ts +3 -0
  242. package/dist/utils/index.js +20 -0
  243. package/dist/utils/index.js.map +1 -0
  244. package/dist/utils/lock.js +15 -10
  245. package/dist/utils/lock.js.map +1 -1
  246. package/dist/utils/object.d.ts +3 -2
  247. package/dist/utils/object.js +28 -13
  248. package/dist/utils/object.js.map +1 -1
  249. package/dist/utils/promise.d.ts +5 -3
  250. package/dist/utils/promise.js +15 -15
  251. package/dist/utils/promise.js.map +1 -1
  252. package/package.json +44 -32
  253. package/dist/cli/common.d.ts +0 -22
  254. package/dist/cli/common.js +0 -105
  255. package/dist/cli/common.js.map +0 -1
  256. package/dist/cli/config/get.js.map +0 -1
  257. package/dist/cli/config/index.js.map +0 -1
  258. package/dist/cli/config/reset.js.map +0 -1
  259. package/dist/cli/config/set.js.map +0 -1
  260. package/dist/cli/config/show.js.map +0 -1
  261. package/dist/cli/git.js +0 -349
  262. package/dist/cli/git.js.map +0 -1
  263. package/dist/cli/index.d.ts +0 -2
  264. package/dist/cli/index.js +0 -68
  265. package/dist/cli/index.js.map +0 -1
  266. package/dist/cli/module/exports/generate.d.ts +0 -2
  267. package/dist/cli/module/exports/generate.js +0 -153
  268. package/dist/cli/module/exports/generate.js.map +0 -1
  269. package/dist/cli/module/exports/index.js +0 -16
  270. package/dist/cli/module/exports/index.js.map +0 -1
  271. package/dist/cli/module/exports/set.js +0 -47
  272. package/dist/cli/module/exports/set.js.map +0 -1
  273. package/dist/cli/module/imports/add.d.ts +0 -10
  274. package/dist/cli/module/imports/add.js +0 -175
  275. package/dist/cli/module/imports/add.js.map +0 -1
  276. package/dist/cli/module/imports/index.js +0 -22
  277. package/dist/cli/module/imports/index.js.map +0 -1
  278. package/dist/cli/module/imports/install.js +0 -132
  279. package/dist/cli/module/imports/install.js.map +0 -1
  280. package/dist/cli/module/imports/list.js +0 -93
  281. package/dist/cli/module/imports/list.js.map +0 -1
  282. package/dist/cli/module/imports/remove.d.ts +0 -2
  283. package/dist/cli/module/imports/remove.js +0 -100
  284. package/dist/cli/module/imports/remove.js.map +0 -1
  285. package/dist/cli/module/imports/update.js +0 -161
  286. package/dist/cli/module/imports/update.js.map +0 -1
  287. package/dist/cli/module/index.js.map +0 -1
  288. package/dist/cli/module/init.js +0 -194
  289. package/dist/cli/module/init.js.map +0 -1
  290. package/dist/cli/module/test.js.map +0 -1
  291. package/dist/cli/project/index.d.ts +0 -2
  292. package/dist/cli/project/index.js.map +0 -1
  293. package/dist/cli/project/init.js +0 -120
  294. package/dist/cli/project/init.js.map +0 -1
  295. package/dist/cli/project/logging/index.d.ts +0 -2
  296. package/dist/cli/project/logging/index.js.map +0 -1
  297. package/dist/cli/project/logging/set.js.map +0 -1
  298. package/dist/cli/project/logging/show.js.map +0 -1
  299. package/dist/cli/project/modules/add.js +0 -239
  300. package/dist/cli/project/modules/add.js.map +0 -1
  301. package/dist/cli/project/modules/index.d.ts +0 -2
  302. package/dist/cli/project/modules/index.js.map +0 -1
  303. package/dist/cli/project/modules/install.d.ts +0 -2
  304. package/dist/cli/project/modules/install.js.map +0 -1
  305. package/dist/cli/project/modules/list.d.ts +0 -2
  306. package/dist/cli/project/modules/list.js +0 -92
  307. package/dist/cli/project/modules/list.js.map +0 -1
  308. package/dist/cli/project/modules/remove.js.map +0 -1
  309. package/dist/cli/project/modules/update.d.ts +0 -2
  310. package/dist/cli/project/modules/update.js.map +0 -1
  311. package/dist/cli/project/run.d.ts +0 -2
  312. package/dist/cli/project/run.js +0 -147
  313. package/dist/cli/project/run.js.map +0 -1
  314. package/dist/cli/version-check.d.ts +0 -1
  315. package/dist/cli/version-check.js.map +0 -1
  316. package/dist/common/cache.js.map +0 -1
  317. package/dist/common/config.d.ts +0 -55
  318. package/dist/common/config.js +0 -168
  319. package/dist/common/config.js.map +0 -1
  320. package/dist/common/downloader/git.d.ts +0 -8
  321. package/dist/common/downloader/git.js +0 -97
  322. package/dist/common/downloader/git.js.map +0 -1
  323. package/dist/common/downloader/index.d.ts +0 -13
  324. package/dist/common/downloader/index.js +0 -58
  325. package/dist/common/downloader/index.js.map +0 -1
  326. package/dist/common/downloader/local.d.ts +0 -12
  327. package/dist/common/downloader/local.js +0 -70
  328. package/dist/common/downloader/local.js.map +0 -1
  329. package/dist/common/downloader/package.d.ts +0 -6
  330. package/dist/common/downloader/package.js +0 -58
  331. package/dist/common/downloader/package.js.map +0 -1
  332. package/dist/common/manifest.d.ts +0 -48
  333. package/dist/common/manifest.js +0 -126
  334. package/dist/common/manifest.js.map +0 -1
  335. package/dist/interfaces/core/beta/decorators.d.ts +0 -29
  336. package/dist/interfaces/core/beta/decorators.js +0 -72
  337. package/dist/interfaces/core/beta/decorators.js.map +0 -1
  338. package/dist/interfaces/core/beta/index.d.ts +0 -58
  339. package/dist/interfaces/core/beta/index.js +0 -266
  340. package/dist/interfaces/core/beta/index.js.map +0 -1
  341. package/dist/interfaces/core/beta/modules.d.ts +0 -26
  342. package/dist/interfaces/core/beta/modules.js +0 -31
  343. package/dist/interfaces/core/beta/modules.js.map +0 -1
  344. package/dist/interfaces/logging/beta/index.d.ts +0 -27
  345. package/dist/interfaces/logging/beta/index.js +0 -61
  346. package/dist/interfaces/logging/beta/index.js.map +0 -1
  347. package/dist/interfaces/logging/beta/listener.d.ts +0 -9
  348. package/dist/interfaces/logging/beta/listener.js +0 -5
  349. package/dist/interfaces/logging/beta/listener.js.map +0 -1
  350. package/dist/loader/index.d.ts +0 -45
  351. package/dist/loader/index.js +0 -490
  352. package/dist/loader/index.js.map +0 -1
  353. package/dist/loader/module.d.ts +0 -29
  354. package/dist/loader/module.js +0 -142
  355. package/dist/loader/module.js.map +0 -1
  356. package/dist/logging/terminal-display.js.map +0 -1
  357. package/dist/logging/utils.d.ts +0 -21
  358. package/dist/logging/utils.js.map +0 -1
  359. package/dist/utils/cli-ui.js +0 -245
  360. package/dist/utils/cli-ui.js.map +0 -1
  361. package/dist/utils/command.js +0 -23
  362. package/dist/utils/command.js.map +0 -1
  363. package/dist/utils/package-manager.js +0 -99
  364. package/dist/utils/package-manager.js.map +0 -1
@@ -0,0 +1,159 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.loadManifestFromGit = loadManifestFromGit;
40
+ exports.loadInterfaceFromGit = loadInterfaceFromGit;
41
+ exports.loadInterfacesFromGit = loadInterfacesFromGit;
42
+ exports.copyTemplate = copyTemplate;
43
+ const node_fs_1 = __importStar(require("node:fs"));
44
+ const promises_1 = require("node:fs/promises");
45
+ const node_os_1 = require("node:os");
46
+ const node_path_1 = __importDefault(require("node:path"));
47
+ const lock_1 = require("../../utils/lock");
48
+ const command_1 = require("./command");
49
+ async function setupGit(cachePath, git, folderName, branch) {
50
+ const result = await (0, command_1.ExecuteCMD)(`git clone --filter=blob:none --no-checkout --depth 1 --sparse ${branch ? `--branch ${branch}` : ""} ${git} ${folderName}`, {
51
+ cwd: cachePath,
52
+ });
53
+ if (result.code !== 0) {
54
+ throw new Error(`Failed to clone repository: ${result.stderr}`);
55
+ }
56
+ const sparseResult = await (0, command_1.ExecuteCMD)("git sparse-checkout add manifest.json --skip-checks", {
57
+ cwd: node_path_1.default.join(cachePath, folderName),
58
+ });
59
+ if (sparseResult.code !== 0) {
60
+ throw new Error(`Failed to setup sparse checkout: ${sparseResult.stderr}`);
61
+ }
62
+ const checkoutResult = await (0, command_1.ExecuteCMD)("git checkout", {
63
+ cwd: node_path_1.default.join(cachePath, folderName),
64
+ });
65
+ if (checkoutResult.code !== 0) {
66
+ throw new Error(`Failed to checkout: ${checkoutResult.stderr}`);
67
+ }
68
+ }
69
+ async function loadGit(git, branch) {
70
+ const folderName = git.replace(/[^a-zA-Z0-9_]/g, "_");
71
+ const cachePath = node_path_1.default.join((0, node_os_1.homedir)(), ".antelopejs", "cache");
72
+ if (!(await (0, promises_1.stat)(cachePath).catch(() => false))) {
73
+ (0, node_fs_1.mkdirSync)(cachePath, { recursive: true });
74
+ }
75
+ const folderPath = node_path_1.default.join(cachePath, folderName);
76
+ if (!(await (0, promises_1.stat)(folderPath).catch(() => false))) {
77
+ await setupGit(cachePath, git, folderName, branch);
78
+ }
79
+ else {
80
+ await (0, command_1.ExecuteCMD)("git pull", { cwd: folderPath });
81
+ }
82
+ return folderPath;
83
+ }
84
+ async function loadManifestFromGit(git) {
85
+ const releaseLock = await (0, lock_1.acquireLock)(`git-${git}`);
86
+ try {
87
+ const folderPath = await loadGit(git);
88
+ const manifestPath = node_path_1.default.join(folderPath, "manifest.json");
89
+ const manifest = JSON.parse(node_fs_1.default.readFileSync(manifestPath, "utf8"));
90
+ return manifest;
91
+ }
92
+ finally {
93
+ await releaseLock();
94
+ }
95
+ }
96
+ async function getInterfaceInfo(gitPath, interface_) {
97
+ const iFolderPath = node_path_1.default.join(gitPath, "interfaces", interface_);
98
+ if (!(await (0, promises_1.stat)(iFolderPath).catch(() => false))) {
99
+ return undefined;
100
+ }
101
+ return {
102
+ name: interface_,
103
+ folderPath: iFolderPath,
104
+ gitPath,
105
+ manifest: require(node_path_1.default.join(iFolderPath, "manifest.json")),
106
+ };
107
+ }
108
+ async function loadInterfaceFromGit(git, interface_) {
109
+ const releaseLock = await (0, lock_1.acquireLock)(`git-${git}`);
110
+ try {
111
+ const folderPath = await loadGit(git);
112
+ await (0, command_1.ExecuteCMD)(`git sparse-checkout add interfaces/${interface_}/manifest.json --skip-checks`, {
113
+ cwd: folderPath,
114
+ });
115
+ const interfaceInfo = await getInterfaceInfo(folderPath, interface_);
116
+ return interfaceInfo;
117
+ }
118
+ finally {
119
+ await releaseLock();
120
+ }
121
+ }
122
+ async function loadInterfacesFromGit(git, interfaces) {
123
+ const releaseLock = await (0, lock_1.acquireLock)(`git-${git}`);
124
+ try {
125
+ const folderPath = await loadGit(git);
126
+ const sparseCheckoutPaths = interfaces
127
+ .map((interface_) => `interfaces/${interface_}/manifest.json`)
128
+ .join(" ");
129
+ await (0, command_1.ExecuteCMD)(`git sparse-checkout add ${sparseCheckoutPaths} --skip-checks`, { cwd: folderPath });
130
+ const interfacesInfo = {};
131
+ for (const interface_ of interfaces) {
132
+ const interfaceInfo = await getInterfaceInfo(folderPath, interface_);
133
+ if (interfaceInfo) {
134
+ interfacesInfo[interface_] = interfaceInfo;
135
+ }
136
+ }
137
+ return interfacesInfo;
138
+ }
139
+ finally {
140
+ await releaseLock();
141
+ }
142
+ }
143
+ async function copyTemplate(template, distPath) {
144
+ await (0, node_fs_1.mkdirSync)(distPath, { recursive: true });
145
+ await (0, command_1.ExecuteCMD)("git init", {
146
+ cwd: distPath,
147
+ });
148
+ await (0, command_1.ExecuteCMD)(`git remote add origin ${template.repository}`, {
149
+ cwd: distPath,
150
+ });
151
+ await (0, command_1.ExecuteCMD)("git fetch", {
152
+ cwd: distPath,
153
+ });
154
+ await (0, command_1.ExecuteCMD)(`git reset --hard origin/${template.branch}`, {
155
+ cwd: distPath,
156
+ });
157
+ (0, node_fs_1.rmSync)(node_path_1.default.join(distPath, ".git"), { recursive: true, force: true });
158
+ }
159
+ //# sourceMappingURL=git-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"git-operations.js","sourceRoot":"","sources":["../../../src/core/cli/git-operations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ #!/usr/bin/env node
2
+ import { Command } from "commander";
3
+ export declare function createCLI(version: string): Command;
4
+ export declare const runCLI: () => Promise<void>;
@@ -0,0 +1,81 @@
1
+ #!/usr/bin/env node
2
+ "use strict";
3
+ var __importDefault = (this && this.__importDefault) || function (mod) {
4
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5
+ };
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.runCLI = void 0;
8
+ exports.createCLI = createCLI;
9
+ const node_fs_1 = require("node:fs");
10
+ const node_path_1 = require("node:path");
11
+ const chalk_1 = __importDefault(require("chalk"));
12
+ const commander_1 = require("commander");
13
+ const logging_1 = require("../../logging");
14
+ const cli_ui_1 = require("./cli-ui");
15
+ const config_1 = __importDefault(require("./commands/config"));
16
+ const module_1 = __importDefault(require("./commands/module"));
17
+ const project_1 = __importDefault(require("./commands/project"));
18
+ const common_1 = require("./common");
19
+ const version_check_1 = require("./version-check");
20
+ function createCLI(version) {
21
+ return new commander_1.Command()
22
+ .name("ajs")
23
+ .description(chalk_1.default.bold ` AntelopeJS CLI v${version} \n` +
24
+ `Create modular Node.js applications with a clean interface-based architecture.\n\n` +
25
+ chalk_1.default.yellow `Commands:\n` +
26
+ ` project Create and manage AntelopeJS projects\n` +
27
+ ` module Work with individual modules and their interfaces\n` +
28
+ ` config Configure CLI settings\n\n` +
29
+ chalk_1.default.yellow `Examples:\n` +
30
+ ` $ ajs project init my-app Create a new project\n` +
31
+ ` $ ajs module init my-module Create a new module\n` +
32
+ ` $ ajs project run --watch Run with auto-reload`)
33
+ .version(version, "-v, --version", "Display CLI version number")
34
+ .addOption(common_1.Options.verbose)
35
+ .addCommand((0, project_1.default)())
36
+ .addCommand((0, module_1.default)())
37
+ .addCommand((0, config_1.default)())
38
+ .helpCommand("help [command]", `Display help for command`);
39
+ }
40
+ const runCLI = async () => {
41
+ try {
42
+ const packageJson = JSON.parse((0, node_fs_1.readFileSync)((0, node_path_1.join)(__dirname, "../../../package.json"), "utf8"));
43
+ const version = packageJson.version;
44
+ (0, logging_1.setupAntelopeProjectLogging)(logging_1.defaultConfigLogging);
45
+ await (0, version_check_1.warnIfOutdated)(version);
46
+ if (process.argv.length <= 2) {
47
+ (0, cli_ui_1.displayBanner)("AntelopeJS");
48
+ }
49
+ const program = createCLI(version);
50
+ await program.parseAsync();
51
+ const verbose = program.getOptionValue("verbose");
52
+ if (verbose) {
53
+ for (const channel of verbose) {
54
+ (0, logging_1.addChannelFilter)(channel, 0);
55
+ }
56
+ }
57
+ }
58
+ catch (error) {
59
+ if (error &&
60
+ typeof error === "object" &&
61
+ "name" in error &&
62
+ error.name === "ExitPromptError") {
63
+ process.exit(0);
64
+ }
65
+ throw error;
66
+ }
67
+ };
68
+ exports.runCLI = runCLI;
69
+ if (require.main === module) {
70
+ (0, exports.runCLI)().catch((err) => {
71
+ if (err &&
72
+ typeof err === "object" &&
73
+ "name" in err &&
74
+ err.name === "ExitPromptError") {
75
+ process.exit(0);
76
+ }
77
+ console.error(chalk_1.default.red("Error:"), err instanceof Error ? (err.stack ?? err.message) : err);
78
+ process.exit(1);
79
+ });
80
+ }
81
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/cli/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ import type { AntelopeLogging } from "@antelopejs/interface-core/config";
2
+ export declare const getLevelInfo: (levelId: number) => {
3
+ name: string;
4
+ color: string;
5
+ };
6
+ export declare function getColoredText(text: string, color: string): string;
7
+ export declare function isTerminalOutput(): boolean;
8
+ export declare function stripAnsiCodes(str: string): string;
9
+ export declare function stringVisualWidth(str: string): number;
10
+ export declare function stripAnsi(str: string): string;
11
+ export declare function serializeLogValue(value: any): string;
12
+ export declare function formatDate(date: Date, format?: string): string;
13
+ export declare function formatLogMessageWithRightAlignedDate(logging: AntelopeLogging, log: {
14
+ levelId: number;
15
+ args: any[];
16
+ time: number;
17
+ }, module?: string, defaultDateFormat?: string): string;
@@ -3,21 +3,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getLevelInfo = exports.OVERWRITE_CURRENT_LINE = exports.NEWLINE = exports.DEFAULT_TERMINAL_WIDTH = void 0;
6
+ exports.getLevelInfo = void 0;
7
7
  exports.getColoredText = getColoredText;
8
8
  exports.isTerminalOutput = isTerminalOutput;
9
9
  exports.stripAnsiCodes = stripAnsiCodes;
10
10
  exports.stringVisualWidth = stringVisualWidth;
11
- exports.colorEscapeSequenceRegex = colorEscapeSequenceRegex;
12
- exports.terminalTitleSequenceRegex = terminalTitleSequenceRegex;
13
- exports.miscTerminalSequenceRegex = miscTerminalSequenceRegex;
14
11
  exports.stripAnsi = stripAnsi;
15
12
  exports.serializeLogValue = serializeLogValue;
16
13
  exports.formatDate = formatDate;
17
14
  exports.formatLogMessageWithRightAlignedDate = formatLogMessageWithRightAlignedDate;
18
15
  const chalk_1 = __importDefault(require("chalk"));
19
- const beta_1 = require("../interfaces/logging/beta");
20
- exports.DEFAULT_TERMINAL_WIDTH = 80;
16
+ const LOG_LEVELS = {
17
+ ERROR: 40,
18
+ WARN: 30,
19
+ INFO: 20,
20
+ DEBUG: 10,
21
+ TRACE: 0,
22
+ NO_PREFIX: -1,
23
+ };
24
+ const DEFAULT_TERMINAL_WIDTH = 80;
21
25
  const COLOR_FUNCTIONS = {
22
26
  red: chalk_1.default.red,
23
27
  yellow: chalk_1.default.yellow,
@@ -26,22 +30,22 @@ const COLOR_FUNCTIONS = {
26
30
  magenta: chalk_1.default.magenta,
27
31
  white: chalk_1.default.white,
28
32
  };
29
- exports.NEWLINE = '\n';
30
- exports.OVERWRITE_CURRENT_LINE = '\r\x1b[K';
33
+ const NEWLINE = "\n";
34
+ const OVERWRITE_CURRENT_LINE = "\r\x1b[K";
31
35
  exports.getLevelInfo = (() => {
32
36
  let map;
33
37
  return (levelId) => {
34
38
  if (!map) {
35
39
  map = {
36
- [beta_1.Logging.Level.ERROR]: { name: 'ERROR', color: 'red' },
37
- [beta_1.Logging.Level.WARN]: { name: 'WARN', color: 'yellow' },
38
- [beta_1.Logging.Level.INFO]: { name: 'INFO', color: 'green' },
39
- [beta_1.Logging.Level.DEBUG]: { name: 'DEBUG', color: 'blue' },
40
- [beta_1.Logging.Level.TRACE]: { name: 'TRACE', color: 'magenta' },
41
- [beta_1.Logging.Level.NO_PREFIX]: { name: '', color: 'white' },
40
+ [LOG_LEVELS.ERROR]: { name: "ERROR", color: "red" },
41
+ [LOG_LEVELS.WARN]: { name: "WARN", color: "yellow" },
42
+ [LOG_LEVELS.INFO]: { name: "INFO", color: "green" },
43
+ [LOG_LEVELS.DEBUG]: { name: "DEBUG", color: "blue" },
44
+ [LOG_LEVELS.TRACE]: { name: "TRACE", color: "magenta" },
45
+ [LOG_LEVELS.NO_PREFIX]: { name: "", color: "white" },
42
46
  };
43
47
  }
44
- return map[levelId] ?? { name: 'LOG', color: 'white' };
48
+ return map[levelId] ?? { name: "LOG", color: "white" };
45
49
  };
46
50
  })();
47
51
  function getColoredText(text, color) {
@@ -51,8 +55,8 @@ function isTerminalOutput() {
51
55
  return process.stdout.isTTY && process.stderr.isTTY;
52
56
  }
53
57
  function stripAnsiCodes(str) {
54
- const ansiRegex = new RegExp(`\u001b\\[[0-9;]*m`, 'g');
55
- return str.replace(ansiRegex, '');
58
+ const ansiRegex = /\u001b\[[0-9;]*m/g;
59
+ return str.replace(ansiRegex, "");
56
60
  }
57
61
  const WIDE_RANGES = [
58
62
  [0x1100, 0x115f],
@@ -66,7 +70,7 @@ const WIDE_RANGES = [
66
70
  [0xff00, 0xffef],
67
71
  [0x1f300, 0x1f9ff],
68
72
  ];
69
- const SINGLE_WIDE_CHARS = new Set(['', '', '', '', '', '', '']);
73
+ const SINGLE_WIDE_CHARS = new Set(["", "", "", "", "", "", ""]);
70
74
  const LAST_ASCII = 0x7f;
71
75
  const NARROW_WIDTH = 1;
72
76
  const WIDE_WIDTH = 2;
@@ -74,38 +78,40 @@ function stringVisualWidth(str) {
74
78
  const ansiFree = stripAnsiCodes(str);
75
79
  return [...ansiFree].reduce((acc, c) => {
76
80
  const cp = c.codePointAt(0);
77
- const isWide = cp > LAST_ASCII && (SINGLE_WIDE_CHARS.has(c) || WIDE_RANGES.some(([min, max]) => cp >= min && cp <= max));
81
+ const isWide = cp > LAST_ASCII &&
82
+ (SINGLE_WIDE_CHARS.has(c) ||
83
+ WIDE_RANGES.some(([min, max]) => cp >= min && cp <= max));
78
84
  return acc + (isWide ? WIDE_WIDTH : NARROW_WIDTH);
79
85
  }, 0);
80
86
  }
81
- const ESC = '\\u001B';
82
- const BEL = '\\u0007';
87
+ const ESC = "\\u001B";
88
+ const BEL = "\\u0007";
83
89
  function colorEscapeSequenceRegex() {
84
- return new RegExp(`${ESC}\\[[0-9;]*m`, 'g');
90
+ return new RegExp(`${ESC}\\[[0-9;]*m`, "g");
85
91
  }
86
92
  function terminalTitleSequenceRegex() {
87
- return new RegExp(`${ESC}\\].*?${BEL}`, 'g');
93
+ return new RegExp(`${ESC}\\].*?${BEL}`, "g");
88
94
  }
89
95
  function miscTerminalSequenceRegex() {
90
- return new RegExp(`${ESC}\\].*?(?=${ESC}\\[|$)`, 'g');
96
+ return new RegExp(`${ESC}\\].*?(?=${ESC}\\[|$)`, "g");
91
97
  }
92
98
  function stripAnsi(str) {
93
99
  return str
94
- .replace(colorEscapeSequenceRegex(), '')
95
- .replace(terminalTitleSequenceRegex(), '')
96
- .replace(miscTerminalSequenceRegex(), '');
100
+ .replace(colorEscapeSequenceRegex(), "")
101
+ .replace(terminalTitleSequenceRegex(), "")
102
+ .replace(miscTerminalSequenceRegex(), "");
97
103
  }
98
104
  function serializeLogValue(value) {
99
105
  if (value === null)
100
- return 'null';
106
+ return "null";
101
107
  if (value === undefined)
102
- return 'undefined';
103
- if (typeof value === 'string')
108
+ return "undefined";
109
+ if (typeof value === "string")
104
110
  return value;
105
- if (typeof value === 'number' || typeof value === 'boolean')
111
+ if (typeof value === "number" || typeof value === "boolean")
106
112
  return String(value);
107
113
  if (value instanceof Error)
108
- return `${value.name}: ${value.message}`;
114
+ return value.stack ?? value.message;
109
115
  if (value instanceof Date)
110
116
  return value.toISOString();
111
117
  try {
@@ -115,11 +121,11 @@ function serializeLogValue(value) {
115
121
  return String(value);
116
122
  }
117
123
  }
118
- function formatDate(date, format = 'yyyy-MM-dd HH:mm:ss') {
124
+ function formatDate(date, format = "yyyy-MM-dd HH:mm:ss") {
119
125
  if (!format) {
120
126
  return date.toISOString();
121
127
  }
122
- const padZero = (num, length = 2) => String(num).padStart(length, '0');
128
+ const padZero = (num, length = 2) => String(num).padStart(length, "0");
123
129
  const replacements = {
124
130
  yyyy: String(date.getFullYear()),
125
131
  MM: padZero(date.getMonth() + 1),
@@ -141,11 +147,11 @@ function formatDate(date, format = 'yyyy-MM-dd HH:mm:ss') {
141
147
  }
142
148
  return result;
143
149
  }
144
- function formatLogMessageWithRightAlignedDate(logging, log, module, defaultDateFormat = 'yyyy-MM-dd HH:mm:ss') {
150
+ function formatLogMessageWithRightAlignedDate(logging, log, module, defaultDateFormat = "yyyy-MM-dd HH:mm:ss") {
145
151
  const levelInfo = (0, exports.getLevelInfo)(log.levelId);
146
- const message = log.args.map((arg) => serializeLogValue(arg)).join(' ');
152
+ const message = log.args.map((arg) => serializeLogValue(arg)).join(" ");
147
153
  let messageWithLevel;
148
- if (log.levelId === beta_1.Logging.Level.NO_PREFIX.valueOf()) {
154
+ if (log.levelId === LOG_LEVELS.NO_PREFIX) {
149
155
  messageWithLevel = message;
150
156
  }
151
157
  else {
@@ -153,7 +159,7 @@ function formatLogMessageWithRightAlignedDate(logging, log, module, defaultDateF
153
159
  const coloredLevel = getColoredText(levelText, levelInfo.color);
154
160
  messageWithLevel = `${coloredLevel} ${message}`;
155
161
  }
156
- if (logging.moduleTracking.enabled && module) {
162
+ if (logging.moduleTracking?.enabled && module) {
157
163
  messageWithLevel = `(${module}) ${messageWithLevel}`;
158
164
  }
159
165
  const dateStr = formatDate(new Date(log.time), logging.dateFormat || defaultDateFormat);
@@ -161,22 +167,22 @@ function formatLogMessageWithRightAlignedDate(logging, log, module, defaultDateF
161
167
  if (!isTerminalOutput()) {
162
168
  return `${dateText} ${messageWithLevel}`;
163
169
  }
164
- const terminalWidth = process.stdout.columns || exports.DEFAULT_TERMINAL_WIDTH;
170
+ const terminalWidth = process.stdout.columns || DEFAULT_TERMINAL_WIDTH;
165
171
  const dateWidth = stripAnsi(dateText).length;
166
172
  const minGap = 2;
167
- const lines = messageWithLevel.split('\n');
173
+ const lines = messageWithLevel.split("\n");
168
174
  const dateStart = terminalWidth - dateWidth;
169
175
  return lines
170
176
  .map((line, idx) => {
171
177
  const plainLine = stripAnsi(line);
172
178
  if (idx === lines.length - 1) {
173
179
  const padding = Math.max(0, dateStart - plainLine.length - minGap);
174
- return line + ' '.repeat(padding) + dateText;
180
+ return line + " ".repeat(padding) + dateText;
175
181
  }
176
182
  else {
177
183
  return line;
178
184
  }
179
185
  })
180
- .join('\n');
186
+ .join("\n");
181
187
  }
182
- //# sourceMappingURL=utils.js.map
188
+ //# sourceMappingURL=logging-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logging-utils.js","sourceRoot":"","sources":["../../../src/core/cli/logging-utils.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- export declare function getModulePackageManager(directory?: string): Promise<string | undefined>;
1
+ import type { IFileSystem } from "../../types";
2
+ export declare function getModulePackageManager(directory?: string, fileSystem?: IFileSystem): Promise<string | undefined>;
2
3
  export declare function getPackageManagerWithVersion(packageManager: string): string;
3
4
  export declare function savePackageManagerToPackageJson(packageManager: string, directory?: string): void;
4
- export declare function getInstallPackagesCommand(packages?: string[], isDev?: boolean, directory?: string): Promise<string>;
5
- export declare function getInstallCommand(directory?: string, isProduction?: boolean): Promise<string>;
5
+ export declare function getInstallPackagesCommand(packages?: string[], isDev?: boolean, directory?: string, fileSystem?: IFileSystem): Promise<string>;
6
+ export declare function getInstallCommand(directory?: string, isProduction?: boolean, fileSystem?: IFileSystem): Promise<string>;
6
7
  export declare function parsePackageInfoOutput(output: string): string;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getModulePackageManager = getModulePackageManager;
7
+ exports.getPackageManagerWithVersion = getPackageManagerWithVersion;
8
+ exports.savePackageManagerToPackageJson = savePackageManagerToPackageJson;
9
+ exports.getInstallPackagesCommand = getInstallPackagesCommand;
10
+ exports.getInstallCommand = getInstallCommand;
11
+ exports.parsePackageInfoOutput = parsePackageInfoOutput;
12
+ const node_child_process_1 = require("node:child_process");
13
+ const node_fs_1 = __importDefault(require("node:fs"));
14
+ const node_path_1 = __importDefault(require("node:path"));
15
+ const chalk_1 = __importDefault(require("chalk"));
16
+ const filesystem_1 = require("../filesystem");
17
+ const cli_ui_1 = require("./cli-ui");
18
+ const VALID_PACKAGE_MANAGERS = ["npm", "yarn", "pnpm"];
19
+ const DEFAULT_PACKAGE_MANAGER = "npm";
20
+ const FALLBACK_VERSIONS = {
21
+ npm: "npm@10.2.4",
22
+ yarn: "yarn@1.22.21",
23
+ pnpm: "pnpm@10.6.5",
24
+ };
25
+ const INSTALL_COMMANDS = {
26
+ pnpm: ({ packageList, isDev }) => `pnpm install ${isDev ? "-D" : ""} ${packageList} -C . --lockfile-dir .`.trim(),
27
+ yarn: ({ packageList, isDev }) => `yarn add ${isDev ? "-D" : ""} ${packageList} -C . --lockfile-dir .`.trim(),
28
+ npm: ({ packageList, isDev }) => `npm install ${isDev ? "--save-dev" : "--save"} ${packageList} -C . --lockfile-dir .`.trim(),
29
+ };
30
+ const UNINSTALL_COMMANDS = {
31
+ pnpm: ({ isProduction }) => `pnpm install ${isProduction ? "--prod" : ""} --ignore-workspace`,
32
+ yarn: ({ isProduction }) => `yarn install ${isProduction ? "--production" : ""}`,
33
+ npm: ({ isProduction }) => `npm install ${isProduction ? "--omit=dev" : ""}`,
34
+ };
35
+ function normalizePackageManager(packageManager) {
36
+ if (!packageManager) {
37
+ return DEFAULT_PACKAGE_MANAGER;
38
+ }
39
+ return VALID_PACKAGE_MANAGERS.includes(packageManager)
40
+ ? packageManager
41
+ : DEFAULT_PACKAGE_MANAGER;
42
+ }
43
+ async function getModulePackageManager(directory = ".", fileSystem = new filesystem_1.NodeFileSystem()) {
44
+ try {
45
+ const packageJsonPath = node_path_1.default.join(directory, "package.json");
46
+ if (!(await fileSystem.exists(packageJsonPath))) {
47
+ return undefined;
48
+ }
49
+ const packageJson = JSON.parse(await fileSystem.readFileString(packageJsonPath));
50
+ if (!packageJson.packageManager) {
51
+ return undefined;
52
+ }
53
+ const pmName = packageJson.packageManager.split("@")[0];
54
+ return VALID_PACKAGE_MANAGERS.includes(pmName)
55
+ ? pmName
56
+ : undefined;
57
+ }
58
+ catch {
59
+ return undefined;
60
+ }
61
+ }
62
+ function getPackageManagerWithVersion(packageManager) {
63
+ try {
64
+ const versionOutput = (0, node_child_process_1.execSync)(`${packageManager} --version`, {
65
+ encoding: "utf8",
66
+ }).trim();
67
+ return `${packageManager}@${versionOutput}`;
68
+ }
69
+ catch {
70
+ const fallbackVersion = FALLBACK_VERSIONS[normalizePackageManager(packageManager)];
71
+ (0, cli_ui_1.warning)(`Could not detect ${packageManager} version, using ${fallbackVersion}`);
72
+ return fallbackVersion;
73
+ }
74
+ }
75
+ function savePackageManagerToPackageJson(packageManager, directory = ".") {
76
+ const packageJsonPath = node_path_1.default.join(directory, "package.json");
77
+ if (!node_fs_1.default.existsSync(packageJsonPath)) {
78
+ (0, cli_ui_1.warning)(`Could not find package.json at ${packageJsonPath}`);
79
+ return;
80
+ }
81
+ try {
82
+ const packageJsonContent = JSON.parse(node_fs_1.default.readFileSync(packageJsonPath, "utf8"));
83
+ const packageManagerWithVersion = getPackageManagerWithVersion(packageManager);
84
+ packageJsonContent.packageManager = packageManagerWithVersion;
85
+ node_fs_1.default.writeFileSync(packageJsonPath, JSON.stringify(packageJsonContent, null, 2));
86
+ (0, cli_ui_1.info)(`Package manager set to ${chalk_1.default.cyan(packageManager)}`);
87
+ }
88
+ catch (err) {
89
+ (0, cli_ui_1.warning)(`Could not update package.json with package manager setting: ${err instanceof Error ? err.message : String(err)}`);
90
+ }
91
+ }
92
+ async function getInstallPackagesCommand(packages = [], isDev = false, directory = ".", fileSystem = new filesystem_1.NodeFileSystem()) {
93
+ const packageManager = normalizePackageManager(await getModulePackageManager(directory, fileSystem));
94
+ return INSTALL_COMMANDS[packageManager]({
95
+ packageList: packages.join(" "),
96
+ isDev,
97
+ });
98
+ }
99
+ async function getInstallCommand(directory = ".", isProduction = true, fileSystem = new filesystem_1.NodeFileSystem()) {
100
+ const packageManager = normalizePackageManager(await getModulePackageManager(directory, fileSystem));
101
+ return UNINSTALL_COMMANDS[packageManager]({ isProduction });
102
+ }
103
+ function parsePackageInfoOutput(output) {
104
+ return output.replace(/\n/g, "").trim();
105
+ }
106
+ //# sourceMappingURL=package-manager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package-manager.js","sourceRoot":"","sources":["../../../src/core/cli/package-manager.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,6 @@
1
- declare class TerminalDisplay {
1
+ export declare class TerminalDisplay {
2
2
  private currentSpinner?;
3
3
  private currentSpinnerTexts;
4
- private lastMessage;
5
4
  private updateSpinnerText;
6
5
  private destroySpinner;
7
6
  log(message: string): void;
@@ -13,4 +12,3 @@ declare class TerminalDisplay {
13
12
  clearSpinnerLine(): Promise<void>;
14
13
  }
15
14
  export declare const terminalDisplay: TerminalDisplay;
16
- export {};