@strapi/upgrade 0.0.0-experimental.fc1ac2acd58c8a5a858679956b6d102ac5ee4011 → 0.0.0-experimental.fca58d9b01ba89012d84a58a20556a6fd716cb92

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 (330) hide show
  1. package/LICENSE +19 -4
  2. package/README.md +1 -1
  3. package/dist/cli.js +15 -6
  4. package/dist/cli.js.map +1 -1
  5. package/dist/cli.mjs +14 -0
  6. package/dist/cli.mjs.map +1 -0
  7. package/dist/index.js +9 -1199
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.mjs +4 -1191
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/modules/codemod/codemod.d.ts +4 -2
  12. package/dist/modules/codemod/codemod.d.ts.map +1 -1
  13. package/dist/modules/codemod/types.d.ts +8 -1
  14. package/dist/modules/codemod/types.d.ts.map +1 -1
  15. package/dist/modules/codemod-repository/constants.d.ts.map +1 -1
  16. package/dist/modules/codemod-repository/repository.d.ts +6 -5
  17. package/dist/modules/codemod-repository/repository.d.ts.map +1 -1
  18. package/dist/modules/codemod-repository/types.d.ts +7 -3
  19. package/dist/modules/codemod-repository/types.d.ts.map +1 -1
  20. package/dist/modules/codemod-runner/codemod-runner.d.ts +3 -0
  21. package/dist/modules/codemod-runner/codemod-runner.d.ts.map +1 -1
  22. package/dist/modules/codemod-runner/index.d.ts +1 -0
  23. package/dist/modules/codemod-runner/index.d.ts.map +1 -1
  24. package/dist/modules/codemod-runner/types.d.ts +1 -0
  25. package/dist/modules/codemod-runner/types.d.ts.map +1 -1
  26. package/dist/modules/error/utils.d.ts +8 -0
  27. package/dist/modules/error/utils.d.ts.map +1 -1
  28. package/dist/modules/file-scanner/scanner.d.ts.map +1 -1
  29. package/dist/modules/format/formats.d.ts +6 -0
  30. package/dist/modules/format/formats.d.ts.map +1 -1
  31. package/dist/modules/project/constants.d.ts +6 -3
  32. package/dist/modules/project/constants.d.ts.map +1 -1
  33. package/dist/modules/project/index.d.ts +2 -0
  34. package/dist/modules/project/index.d.ts.map +1 -1
  35. package/dist/modules/project/project.d.ts +27 -5
  36. package/dist/modules/project/project.d.ts.map +1 -1
  37. package/dist/modules/project/types.d.ts +3 -10
  38. package/dist/modules/project/types.d.ts.map +1 -1
  39. package/dist/modules/project/utils.d.ts +6 -0
  40. package/dist/modules/project/utils.d.ts.map +1 -0
  41. package/dist/modules/report/report.d.ts.map +1 -1
  42. package/dist/modules/requirement/types.d.ts +2 -2
  43. package/dist/modules/requirement/types.d.ts.map +1 -1
  44. package/dist/modules/runner/json/transform.d.ts.map +1 -1
  45. package/dist/modules/upgrader/types.d.ts +6 -0
  46. package/dist/modules/upgrader/types.d.ts.map +1 -1
  47. package/dist/modules/upgrader/upgrader.d.ts +7 -3
  48. package/dist/modules/upgrader/upgrader.d.ts.map +1 -1
  49. package/dist/modules/version/range.d.ts +2 -0
  50. package/dist/modules/version/range.d.ts.map +1 -1
  51. package/dist/modules/version/types.d.ts +2 -1
  52. package/dist/modules/version/types.d.ts.map +1 -1
  53. package/dist/package.json.js +6 -0
  54. package/dist/package.json.js.map +1 -0
  55. package/dist/package.json.mjs +4 -0
  56. package/dist/package.json.mjs.map +1 -0
  57. package/dist/src/cli/commands/codemods.js +120 -0
  58. package/dist/src/cli/commands/codemods.js.map +1 -0
  59. package/dist/src/cli/commands/codemods.mjs +116 -0
  60. package/dist/src/cli/commands/codemods.mjs.map +1 -0
  61. package/dist/src/cli/commands/upgrade.js +99 -0
  62. package/dist/src/cli/commands/upgrade.js.map +1 -0
  63. package/dist/src/cli/commands/upgrade.mjs +96 -0
  64. package/dist/src/cli/commands/upgrade.mjs.map +1 -0
  65. package/dist/src/cli/errors.js +18 -0
  66. package/dist/src/cli/errors.js.map +1 -0
  67. package/dist/src/cli/errors.mjs +16 -0
  68. package/dist/src/cli/errors.mjs.map +1 -0
  69. package/dist/src/cli/options.js +26 -0
  70. package/dist/src/cli/options.js.map +1 -0
  71. package/dist/src/cli/options.mjs +19 -0
  72. package/dist/src/cli/options.mjs.map +1 -0
  73. package/dist/src/modules/codemod/codemod.js +44 -0
  74. package/dist/src/modules/codemod/codemod.js.map +1 -0
  75. package/dist/src/modules/codemod/codemod.mjs +41 -0
  76. package/dist/src/modules/codemod/codemod.mjs.map +1 -0
  77. package/dist/src/modules/codemod/constants.js +17 -0
  78. package/dist/src/modules/codemod/constants.js.map +1 -0
  79. package/dist/src/modules/codemod/constants.mjs +11 -0
  80. package/dist/src/modules/codemod/constants.mjs.map +1 -0
  81. package/dist/src/modules/codemod/index.js +10 -0
  82. package/dist/src/modules/codemod/index.js.map +1 -0
  83. package/dist/src/modules/codemod/index.mjs +4 -0
  84. package/dist/src/modules/codemod/index.mjs.map +1 -0
  85. package/dist/src/modules/codemod-repository/constants.js +9 -0
  86. package/dist/src/modules/codemod-repository/constants.js.map +1 -0
  87. package/dist/src/modules/codemod-repository/constants.mjs +7 -0
  88. package/dist/src/modules/codemod-repository/constants.mjs.map +1 -0
  89. package/dist/src/modules/codemod-repository/index.js +10 -0
  90. package/dist/src/modules/codemod-repository/index.js.map +1 -0
  91. package/dist/src/modules/codemod-repository/index.mjs +4 -0
  92. package/dist/src/modules/codemod-repository/index.mjs.map +1 -0
  93. package/dist/src/modules/codemod-repository/repository.js +127 -0
  94. package/dist/src/modules/codemod-repository/repository.js.map +1 -0
  95. package/dist/src/modules/codemod-repository/repository.mjs +123 -0
  96. package/dist/src/modules/codemod-repository/repository.mjs.map +1 -0
  97. package/dist/src/modules/codemod-runner/codemod-runner.js +113 -0
  98. package/dist/src/modules/codemod-runner/codemod-runner.js.map +1 -0
  99. package/dist/src/modules/codemod-runner/codemod-runner.mjs +110 -0
  100. package/dist/src/modules/codemod-runner/codemod-runner.mjs.map +1 -0
  101. package/dist/src/modules/error/index.js +11 -0
  102. package/dist/src/modules/error/index.js.map +1 -0
  103. package/dist/src/modules/error/index.mjs +2 -0
  104. package/dist/src/modules/error/index.mjs.map +1 -0
  105. package/dist/src/modules/error/utils.js +33 -0
  106. package/dist/src/modules/error/utils.js.map +1 -0
  107. package/dist/src/modules/error/utils.mjs +28 -0
  108. package/dist/src/modules/error/utils.mjs.map +1 -0
  109. package/dist/src/modules/file-scanner/index.js +8 -0
  110. package/dist/src/modules/file-scanner/index.js.map +1 -0
  111. package/dist/src/modules/file-scanner/index.mjs +2 -0
  112. package/dist/src/modules/file-scanner/index.mjs.map +1 -0
  113. package/dist/src/modules/file-scanner/scanner.js +23 -0
  114. package/dist/src/modules/file-scanner/scanner.js.map +1 -0
  115. package/dist/src/modules/file-scanner/scanner.mjs +20 -0
  116. package/dist/src/modules/file-scanner/scanner.mjs.map +1 -0
  117. package/dist/src/modules/format/formats.js +107 -0
  118. package/dist/src/modules/format/formats.js.map +1 -0
  119. package/dist/src/modules/format/formats.mjs +94 -0
  120. package/dist/src/modules/format/formats.mjs.map +1 -0
  121. package/dist/src/modules/format/index.js +19 -0
  122. package/dist/src/modules/format/index.js.map +1 -0
  123. package/dist/src/modules/format/index.mjs +2 -0
  124. package/dist/src/modules/format/index.mjs.map +1 -0
  125. package/dist/src/modules/index.js +32 -0
  126. package/dist/src/modules/index.js.map +1 -0
  127. package/dist/src/modules/index.mjs +27 -0
  128. package/dist/src/modules/index.mjs.map +1 -0
  129. package/dist/src/modules/json/file.js +16 -0
  130. package/dist/src/modules/json/file.js.map +1 -0
  131. package/dist/src/modules/json/file.mjs +13 -0
  132. package/dist/src/modules/json/file.mjs.map +1 -0
  133. package/dist/src/modules/json/transform-api.js +38 -0
  134. package/dist/src/modules/json/transform-api.js.map +1 -0
  135. package/dist/src/modules/json/transform-api.mjs +35 -0
  136. package/dist/src/modules/json/transform-api.mjs.map +1 -0
  137. package/dist/src/modules/logger/index.js +8 -0
  138. package/dist/src/modules/logger/index.js.map +1 -0
  139. package/dist/src/modules/logger/index.mjs +2 -0
  140. package/dist/src/modules/logger/index.mjs.map +1 -0
  141. package/dist/src/modules/logger/logger.js +76 -0
  142. package/dist/src/modules/logger/logger.js.map +1 -0
  143. package/dist/src/modules/logger/logger.mjs +73 -0
  144. package/dist/src/modules/logger/logger.mjs.map +1 -0
  145. package/dist/src/modules/npm/constants.js +6 -0
  146. package/dist/src/modules/npm/constants.js.map +1 -0
  147. package/dist/src/modules/npm/constants.mjs +4 -0
  148. package/dist/src/modules/npm/constants.mjs.map +1 -0
  149. package/dist/src/modules/npm/package.js +55 -0
  150. package/dist/src/modules/npm/package.js.map +1 -0
  151. package/dist/src/modules/npm/package.mjs +52 -0
  152. package/dist/src/modules/npm/package.mjs.map +1 -0
  153. package/dist/src/modules/project/constants.js +45 -0
  154. package/dist/src/modules/project/constants.js.map +1 -0
  155. package/dist/src/modules/project/constants.mjs +35 -0
  156. package/dist/src/modules/project/constants.mjs.map +1 -0
  157. package/dist/src/modules/project/index.js +15 -0
  158. package/dist/src/modules/project/index.js.map +1 -0
  159. package/dist/src/modules/project/index.mjs +5 -0
  160. package/dist/src/modules/project/index.mjs.map +1 -0
  161. package/dist/src/modules/project/project.js +208 -0
  162. package/dist/src/modules/project/project.js.map +1 -0
  163. package/dist/src/modules/project/project.mjs +203 -0
  164. package/dist/src/modules/project/project.mjs.map +1 -0
  165. package/dist/src/modules/project/utils.js +26 -0
  166. package/dist/src/modules/project/utils.js.map +1 -0
  167. package/dist/src/modules/project/utils.mjs +21 -0
  168. package/dist/src/modules/project/utils.mjs.map +1 -0
  169. package/dist/src/modules/report/index.js +9 -0
  170. package/dist/src/modules/report/index.js.map +1 -0
  171. package/dist/src/modules/report/index.mjs +2 -0
  172. package/dist/src/modules/report/index.mjs.map +1 -0
  173. package/dist/src/modules/report/report.js +13 -0
  174. package/dist/src/modules/report/report.js.map +1 -0
  175. package/dist/src/modules/report/report.mjs +10 -0
  176. package/dist/src/modules/report/report.mjs.map +1 -0
  177. package/dist/src/modules/requirement/index.js +8 -0
  178. package/dist/src/modules/requirement/index.js.map +1 -0
  179. package/dist/src/modules/requirement/index.mjs +2 -0
  180. package/dist/src/modules/requirement/index.mjs.map +1 -0
  181. package/dist/src/modules/requirement/requirement.js +55 -0
  182. package/dist/src/modules/requirement/requirement.js.map +1 -0
  183. package/dist/src/modules/requirement/requirement.mjs +52 -0
  184. package/dist/src/modules/requirement/requirement.mjs.map +1 -0
  185. package/dist/src/modules/runner/code/code.js +21 -0
  186. package/dist/src/modules/runner/code/code.js.map +1 -0
  187. package/dist/src/modules/runner/code/code.mjs +18 -0
  188. package/dist/src/modules/runner/code/code.mjs.map +1 -0
  189. package/dist/src/modules/runner/code/index.js +8 -0
  190. package/dist/src/modules/runner/code/index.js.map +1 -0
  191. package/dist/src/modules/runner/code/index.mjs +2 -0
  192. package/dist/src/modules/runner/code/index.mjs.map +1 -0
  193. package/dist/src/modules/runner/index.js +10 -0
  194. package/dist/src/modules/runner/index.js.map +1 -0
  195. package/dist/src/modules/runner/index.mjs +5 -0
  196. package/dist/src/modules/runner/index.mjs.map +1 -0
  197. package/dist/src/modules/runner/json/index.js +8 -0
  198. package/dist/src/modules/runner/json/index.js.map +1 -0
  199. package/dist/src/modules/runner/json/index.mjs +2 -0
  200. package/dist/src/modules/runner/json/index.mjs.map +1 -0
  201. package/dist/src/modules/runner/json/json.js +21 -0
  202. package/dist/src/modules/runner/json/json.js.map +1 -0
  203. package/dist/src/modules/runner/json/json.mjs +18 -0
  204. package/dist/src/modules/runner/json/json.mjs.map +1 -0
  205. package/dist/src/modules/runner/json/transform.js +85 -0
  206. package/dist/src/modules/runner/json/transform.js.map +1 -0
  207. package/dist/src/modules/runner/json/transform.mjs +83 -0
  208. package/dist/src/modules/runner/json/transform.mjs.map +1 -0
  209. package/dist/src/modules/runner/runner.js +22 -0
  210. package/dist/src/modules/runner/runner.js.map +1 -0
  211. package/dist/src/modules/runner/runner.mjs +20 -0
  212. package/dist/src/modules/runner/runner.mjs.map +1 -0
  213. package/dist/src/modules/timer/constants.js +6 -0
  214. package/dist/src/modules/timer/constants.js.map +1 -0
  215. package/dist/src/modules/timer/constants.mjs +4 -0
  216. package/dist/src/modules/timer/constants.mjs.map +1 -0
  217. package/dist/src/modules/timer/index.js +10 -0
  218. package/dist/src/modules/timer/index.js.map +1 -0
  219. package/dist/src/modules/timer/index.mjs +4 -0
  220. package/dist/src/modules/timer/index.mjs.map +1 -0
  221. package/dist/src/modules/timer/timer.js +33 -0
  222. package/dist/src/modules/timer/timer.js.map +1 -0
  223. package/dist/src/modules/timer/timer.mjs +30 -0
  224. package/dist/src/modules/timer/timer.mjs.map +1 -0
  225. package/dist/src/modules/upgrader/constants.js +6 -0
  226. package/dist/src/modules/upgrader/constants.js.map +1 -0
  227. package/dist/src/modules/upgrader/constants.mjs +4 -0
  228. package/dist/src/modules/upgrader/constants.mjs.map +1 -0
  229. package/dist/src/modules/upgrader/index.js +10 -0
  230. package/dist/src/modules/upgrader/index.js.map +1 -0
  231. package/dist/src/modules/upgrader/index.mjs +4 -0
  232. package/dist/src/modules/upgrader/index.mjs.map +1 -0
  233. package/dist/src/modules/upgrader/upgrader.js +266 -0
  234. package/dist/src/modules/upgrader/upgrader.js.map +1 -0
  235. package/dist/src/modules/upgrader/upgrader.mjs +263 -0
  236. package/dist/src/modules/upgrader/upgrader.mjs.map +1 -0
  237. package/dist/src/modules/version/index.js +20 -0
  238. package/dist/src/modules/version/index.js.map +1 -0
  239. package/dist/src/modules/version/index.mjs +5 -0
  240. package/dist/src/modules/version/index.mjs.map +1 -0
  241. package/dist/src/modules/version/range.js +81 -0
  242. package/dist/src/modules/version/range.js.map +1 -0
  243. package/dist/src/modules/version/range.mjs +75 -0
  244. package/dist/src/modules/version/range.mjs.map +1 -0
  245. package/dist/src/modules/version/semver.js +26 -0
  246. package/dist/src/modules/version/semver.js.map +1 -0
  247. package/dist/src/modules/version/semver.mjs +20 -0
  248. package/dist/src/modules/version/semver.mjs.map +1 -0
  249. package/dist/src/modules/version/types.js +12 -0
  250. package/dist/src/modules/version/types.js.map +1 -0
  251. package/dist/src/modules/version/types.mjs +12 -0
  252. package/dist/src/modules/version/types.mjs.map +1 -0
  253. package/dist/src/tasks/codemods/list-codemods.js +40 -0
  254. package/dist/src/tasks/codemods/list-codemods.js.map +1 -0
  255. package/dist/src/tasks/codemods/list-codemods.mjs +38 -0
  256. package/dist/src/tasks/codemods/list-codemods.mjs.map +1 -0
  257. package/dist/src/tasks/codemods/run-codemods.js +36 -0
  258. package/dist/src/tasks/codemods/run-codemods.js.map +1 -0
  259. package/dist/src/tasks/codemods/run-codemods.mjs +34 -0
  260. package/dist/src/tasks/codemods/run-codemods.mjs.map +1 -0
  261. package/dist/src/tasks/codemods/utils.js +54 -0
  262. package/dist/src/tasks/codemods/utils.js.map +1 -0
  263. package/dist/src/tasks/codemods/utils.mjs +50 -0
  264. package/dist/src/tasks/codemods/utils.mjs.map +1 -0
  265. package/dist/src/tasks/index.js +15 -0
  266. package/dist/src/tasks/index.js.map +1 -0
  267. package/dist/src/tasks/index.mjs +7 -0
  268. package/dist/src/tasks/index.mjs.map +1 -0
  269. package/dist/src/tasks/upgrade/prompts/latest.js +48 -0
  270. package/dist/src/tasks/upgrade/prompts/latest.js.map +1 -0
  271. package/dist/src/tasks/upgrade/prompts/latest.mjs +46 -0
  272. package/dist/src/tasks/upgrade/prompts/latest.mjs.map +1 -0
  273. package/dist/src/tasks/upgrade/requirements/common.js +40 -0
  274. package/dist/src/tasks/upgrade/requirements/common.js.map +1 -0
  275. package/dist/src/tasks/upgrade/requirements/common.mjs +35 -0
  276. package/dist/src/tasks/upgrade/requirements/common.mjs.map +1 -0
  277. package/dist/src/tasks/upgrade/requirements/major.js +29 -0
  278. package/dist/src/tasks/upgrade/requirements/major.js.map +1 -0
  279. package/dist/src/tasks/upgrade/requirements/major.mjs +26 -0
  280. package/dist/src/tasks/upgrade/requirements/major.mjs.map +1 -0
  281. package/dist/src/tasks/upgrade/upgrade.js +69 -0
  282. package/dist/src/tasks/upgrade/upgrade.js.map +1 -0
  283. package/dist/src/tasks/upgrade/upgrade.mjs +67 -0
  284. package/dist/src/tasks/upgrade/upgrade.mjs.map +1 -0
  285. package/dist/tasks/codemods/index.d.ts +2 -1
  286. package/dist/tasks/codemods/index.d.ts.map +1 -1
  287. package/dist/tasks/codemods/list-codemods.d.ts +3 -0
  288. package/dist/tasks/codemods/list-codemods.d.ts.map +1 -0
  289. package/dist/tasks/codemods/run-codemods.d.ts +3 -0
  290. package/dist/tasks/codemods/run-codemods.d.ts.map +1 -0
  291. package/dist/tasks/codemods/types.d.ts +9 -3
  292. package/dist/tasks/codemods/types.d.ts.map +1 -1
  293. package/dist/tasks/codemods/utils.d.ts +6 -0
  294. package/dist/tasks/codemods/utils.d.ts.map +1 -0
  295. package/dist/tasks/index.d.ts +1 -1
  296. package/dist/tasks/index.d.ts.map +1 -1
  297. package/dist/tasks/upgrade/prompts/index.d.ts +2 -0
  298. package/dist/tasks/upgrade/prompts/index.d.ts.map +1 -0
  299. package/dist/tasks/upgrade/prompts/latest.d.ts +9 -0
  300. package/dist/tasks/upgrade/prompts/latest.d.ts.map +1 -0
  301. package/dist/tasks/upgrade/requirements/major.d.ts.map +1 -1
  302. package/dist/tasks/upgrade/upgrade.d.ts.map +1 -1
  303. package/package.json +16 -15
  304. package/resources/codemods/5.0.0/comment-out-lifecycle-files.code.ts +63 -0
  305. package/resources/codemods/5.0.0/dependency-remove-strapi-plugin-i18n.json.ts +31 -0
  306. package/resources/codemods/5.0.0/dependency-upgrade-react-and-react-dom.json.ts +67 -0
  307. package/resources/codemods/5.0.0/dependency-upgrade-react-router-dom.json.ts +59 -0
  308. package/resources/codemods/5.0.0/dependency-upgrade-styled-components.json.ts +49 -0
  309. package/resources/codemods/5.0.0/deprecate-helper-plugin.code.ts +192 -0
  310. package/resources/codemods/5.0.0/entity-service-document-service.code.ts +437 -0
  311. package/resources/codemods/5.0.0/s3-keys-wrapped-in-credentials.code.ts +1 -1
  312. package/resources/codemods/5.0.0/sqlite3-to-better-sqlite3.json.ts +5 -3
  313. package/resources/codemods/5.0.0/strapi-public-interface.code.ts +126 -0
  314. package/resources/codemods/5.0.0/use-uid-for-config-namespace.code.ts +1 -1
  315. package/resources/codemods/5.0.0/utils-public-interface.code.ts +320 -0
  316. package/resources/codemods/5.1.0/dependency-better-sqlite3.json.ts +48 -0
  317. package/resources/examples/console.log-to-console.info.code.ts +1 -1
  318. package/resources/examples/disable-jsx-buttons.code.ts +42 -0
  319. package/resources/utils/change-import.ts +118 -0
  320. package/resources/utils/replace-jsx.ts +49 -0
  321. package/dist/_chunks/codemod-runner-oPpELfwO.js +0 -730
  322. package/dist/_chunks/codemod-runner-oPpELfwO.js.map +0 -1
  323. package/dist/_chunks/codemods-qc8_QMWD.js +0 -108
  324. package/dist/_chunks/codemods-qc8_QMWD.js.map +0 -1
  325. package/dist/_chunks/index-GHKaxdhJ.js +0 -103
  326. package/dist/_chunks/index-GHKaxdhJ.js.map +0 -1
  327. package/dist/_chunks/upgrade-4SxXG3Oe.js +0 -357
  328. package/dist/_chunks/upgrade-4SxXG3Oe.js.map +0 -1
  329. package/dist/tasks/codemods/codemods.d.ts +0 -3
  330. package/dist/tasks/codemods/codemods.d.ts.map +0 -1
@@ -0,0 +1,94 @@
1
+ import CliTable3 from 'cli-table3';
2
+ import chalk from 'chalk';
3
+ import { ONE_SECOND_MS } from '../timer/constants.mjs';
4
+
5
+ const path = (path)=>chalk.blue(path);
6
+ const version = (version)=>{
7
+ return chalk.italic.yellow(`v${version}`);
8
+ };
9
+ const codemodUID = (uid)=>{
10
+ return chalk.bold.cyan(uid);
11
+ };
12
+ const projectDetails = (project)=>{
13
+ return `Project: TYPE=${projectType(project.type)}; CWD=${path(project.cwd)}; PATHS=${project.paths.map(path)}`;
14
+ };
15
+ const projectType = (type)=>chalk.cyan(type);
16
+ const versionRange = (range)=>chalk.italic.yellow(range.raw);
17
+ const transform = (transformFilePath)=>chalk.cyan(transformFilePath);
18
+ const highlight = (arg)=>chalk.bold.underline(arg);
19
+ const upgradeStep = (text, step)=>{
20
+ return chalk.bold(`(${step[0]}/${step[1]}) ${text}...`);
21
+ };
22
+ const reports = (reports)=>{
23
+ const rows = reports.map(({ codemod, report }, i)=>{
24
+ const fIndex = chalk.grey(i);
25
+ const fVersion = chalk.magenta(codemod.version);
26
+ const fKind = chalk.yellow(codemod.kind);
27
+ const fFormattedTransformPath = chalk.cyan(codemod.format());
28
+ const fTimeElapsed = i === 0 ? `${report.timeElapsed}s ${chalk.dim.italic('(cold start)')}` : `${report.timeElapsed}s`;
29
+ const fAffected = report.ok > 0 ? chalk.green(report.ok) : chalk.grey(0);
30
+ const fUnchanged = report.ok === 0 ? chalk.red(report.nochange) : chalk.grey(report.nochange);
31
+ return [
32
+ fIndex,
33
+ fVersion,
34
+ fKind,
35
+ fFormattedTransformPath,
36
+ fAffected,
37
+ fUnchanged,
38
+ fTimeElapsed
39
+ ];
40
+ });
41
+ const table = new CliTable3({
42
+ style: {
43
+ compact: true
44
+ },
45
+ head: [
46
+ chalk.bold.grey('N°'),
47
+ chalk.bold.magenta('Version'),
48
+ chalk.bold.yellow('Kind'),
49
+ chalk.bold.cyan('Name'),
50
+ chalk.bold.green('Affected'),
51
+ chalk.bold.red('Unchanged'),
52
+ chalk.bold.blue('Duration')
53
+ ]
54
+ });
55
+ table.push(...rows);
56
+ return table.toString();
57
+ };
58
+ const codemodList = (codemods)=>{
59
+ const rows = codemods.map((codemod, index)=>{
60
+ const fIndex = chalk.grey(index);
61
+ const fVersion = chalk.magenta(codemod.version);
62
+ const fKind = chalk.yellow(codemod.kind);
63
+ const fName = chalk.blue(codemod.format());
64
+ const fUID = codemodUID(codemod.uid);
65
+ return [
66
+ fIndex,
67
+ fVersion,
68
+ fKind,
69
+ fName,
70
+ fUID
71
+ ];
72
+ });
73
+ const table = new CliTable3({
74
+ style: {
75
+ compact: true
76
+ },
77
+ head: [
78
+ chalk.bold.grey('N°'),
79
+ chalk.bold.magenta('Version'),
80
+ chalk.bold.yellow('Kind'),
81
+ chalk.bold.blue('Name'),
82
+ chalk.bold.cyan('UID')
83
+ ]
84
+ });
85
+ table.push(...rows);
86
+ return table.toString();
87
+ };
88
+ const durationMs = (elapsedMs)=>{
89
+ const elapsedSeconds = (elapsedMs / ONE_SECOND_MS).toFixed(3);
90
+ return `${elapsedSeconds}s`;
91
+ };
92
+
93
+ export { codemodList, codemodUID, durationMs, highlight, path, projectDetails, projectType, reports, transform, upgradeStep, version, versionRange };
94
+ //# sourceMappingURL=formats.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"formats.mjs","sources":["../../../../src/modules/format/formats.ts"],"sourcesContent":["import CliTable3 from 'cli-table3';\nimport chalk from 'chalk';\n\nimport { constants as timerConstants } from '../timer';\n\nimport type { AppProject, PluginProject, ProjectType } from '../project';\nimport type { Codemod } from '../codemod';\nimport type { Version } from '../version';\nimport type { Report } from '../report';\n\nexport const path = (path: string) => chalk.blue(path);\n\nexport const version = (version: Version.LiteralVersion | Version.SemVer) => {\n return chalk.italic.yellow(`v${version}`);\n};\n\nexport const codemodUID = (uid: string) => {\n return chalk.bold.cyan(uid);\n};\n\nexport const projectDetails = (project: AppProject | PluginProject) => {\n return `Project: TYPE=${projectType(project.type)}; CWD=${path(project.cwd)}; PATHS=${project.paths.map(path)}`;\n};\n\nexport const projectType = (type: ProjectType) => chalk.cyan(type);\n\nexport const versionRange = (range: Version.Range) => chalk.italic.yellow(range.raw);\n\nexport const transform = (transformFilePath: string) => chalk.cyan(transformFilePath);\n\nexport const highlight = (arg: unknown) => chalk.bold.underline(arg);\n\nexport const upgradeStep = (text: string, step: [current: number, total: number]) => {\n return chalk.bold(`(${step[0]}/${step[1]}) ${text}...`);\n};\n\nexport const reports = (reports: Report.CodemodReport[]) => {\n const rows = reports.map(({ codemod, report }, i) => {\n const fIndex = chalk.grey(i);\n const fVersion = chalk.magenta(codemod.version);\n const fKind = chalk.yellow(codemod.kind);\n const fFormattedTransformPath = chalk.cyan(codemod.format());\n const fTimeElapsed =\n i === 0\n ? `${report.timeElapsed}s ${chalk.dim.italic('(cold start)')}`\n : `${report.timeElapsed}s`;\n const fAffected = report.ok > 0 ? chalk.green(report.ok) : chalk.grey(0);\n const fUnchanged = report.ok === 0 ? chalk.red(report.nochange) : chalk.grey(report.nochange);\n\n return [fIndex, fVersion, fKind, fFormattedTransformPath, fAffected, fUnchanged, fTimeElapsed];\n });\n\n const table = new CliTable3({\n style: { compact: true },\n head: [\n chalk.bold.grey('N°'),\n chalk.bold.magenta('Version'),\n chalk.bold.yellow('Kind'),\n chalk.bold.cyan('Name'),\n chalk.bold.green('Affected'),\n chalk.bold.red('Unchanged'),\n chalk.bold.blue('Duration'),\n ],\n });\n\n table.push(...rows);\n\n return table.toString();\n};\n\nexport const codemodList = (codemods: Codemod.List) => {\n type Row = [index: string, version: string, kind: string, name: string, uid: string];\n\n const rows = codemods.map<Row>((codemod, index) => {\n const fIndex = chalk.grey(index);\n const fVersion = chalk.magenta(codemod.version);\n const fKind = chalk.yellow(codemod.kind);\n const fName = chalk.blue(codemod.format());\n const fUID = codemodUID(codemod.uid);\n\n return [fIndex, fVersion, fKind, fName, fUID] satisfies Row;\n });\n\n const table = new CliTable3({\n style: { compact: true },\n head: [\n chalk.bold.grey('N°'),\n chalk.bold.magenta('Version'),\n chalk.bold.yellow('Kind'),\n chalk.bold.blue('Name'),\n chalk.bold.cyan('UID'),\n ],\n });\n\n table.push(...rows);\n\n return table.toString();\n};\n\nexport const durationMs = (elapsedMs: number) => {\n const elapsedSeconds = (elapsedMs / timerConstants.ONE_SECOND_MS).toFixed(3);\n\n return `${elapsedSeconds}s`;\n};\n"],"names":["path","chalk","blue","version","italic","yellow","codemodUID","uid","bold","cyan","projectDetails","project","projectType","type","cwd","paths","map","versionRange","range","raw","transform","transformFilePath","highlight","arg","underline","upgradeStep","text","step","reports","rows","codemod","report","i","fIndex","grey","fVersion","magenta","fKind","kind","fFormattedTransformPath","format","fTimeElapsed","timeElapsed","dim","fAffected","ok","green","fUnchanged","red","nochange","table","CliTable3","style","compact","head","push","toString","codemodList","codemods","index","fName","fUID","durationMs","elapsedMs","elapsedSeconds","timerConstants","toFixed"],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+
3
+ var formats = require('./formats.js');
4
+
5
+
6
+
7
+ exports.codemodList = formats.codemodList;
8
+ exports.codemodUID = formats.codemodUID;
9
+ exports.durationMs = formats.durationMs;
10
+ exports.highlight = formats.highlight;
11
+ exports.path = formats.path;
12
+ exports.projectDetails = formats.projectDetails;
13
+ exports.projectType = formats.projectType;
14
+ exports.reports = formats.reports;
15
+ exports.transform = formats.transform;
16
+ exports.upgradeStep = formats.upgradeStep;
17
+ exports.version = formats.version;
18
+ exports.versionRange = formats.versionRange;
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ export { codemodList, codemodUID, durationMs, highlight, path, projectDetails, projectType, reports, transform, upgradeStep, version, versionRange } from './formats.mjs';
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,32 @@
1
+ 'use strict';
2
+
3
+ var index = require('./codemod/index.js');
4
+ var index$1 = require('./codemod-repository/index.js');
5
+ var index$2 = require('./error/index.js');
6
+ var index$3 = require('./file-scanner/index.js');
7
+ var index$4 = require('./format/index.js');
8
+ var index$5 = require('./logger/index.js');
9
+ var index$6 = require('./project/index.js');
10
+ var index$7 = require('./report/index.js');
11
+ var index$8 = require('./requirement/index.js');
12
+ var index$9 = require('./runner/index.js');
13
+ var index$a = require('./timer/index.js');
14
+ var index$b = require('./upgrader/index.js');
15
+ var index$c = require('./version/index.js');
16
+
17
+
18
+
19
+ exports.codemod = index;
20
+ exports.codemodRepository = index$1;
21
+ exports.error = index$2;
22
+ exports.fileScanner = index$3;
23
+ exports.f = index$4;
24
+ exports.logger = index$5;
25
+ exports.project = index$6;
26
+ exports.report = index$7;
27
+ exports.requirement = index$8;
28
+ exports.runner = index$9;
29
+ exports.timer = index$a;
30
+ exports.upgrader = index$b;
31
+ exports.version = index$c;
32
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,27 @@
1
+ import * as index from './codemod/index.mjs';
2
+ export { index as codemod };
3
+ import * as index$1 from './codemod-repository/index.mjs';
4
+ export { index$1 as codemodRepository };
5
+ import * as index$2 from './error/index.mjs';
6
+ export { index$2 as error };
7
+ import * as index$3 from './file-scanner/index.mjs';
8
+ export { index$3 as fileScanner };
9
+ import * as index$4 from './format/index.mjs';
10
+ export { index$4 as f };
11
+ import * as index$5 from './logger/index.mjs';
12
+ export { index$5 as logger };
13
+ import * as index$6 from './project/index.mjs';
14
+ export { index$6 as project };
15
+ import * as index$7 from './report/index.mjs';
16
+ export { index$7 as report };
17
+ import * as index$8 from './requirement/index.mjs';
18
+ export { index$8 as requirement };
19
+ import * as index$9 from './runner/index.mjs';
20
+ export { index$9 as runner };
21
+ import * as index$a from './timer/index.mjs';
22
+ export { index$a as timer };
23
+ import * as index$b from './upgrader/index.mjs';
24
+ export { index$b as upgrader };
25
+ import * as index$c from './version/index.mjs';
26
+ export { index$c as version };
27
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -0,0 +1,16 @@
1
+ 'use strict';
2
+
3
+ var fse = require('fs-extra');
4
+
5
+ const readJSON = async (path)=>{
6
+ const buffer = await fse.readFile(path);
7
+ return JSON.parse(buffer.toString());
8
+ };
9
+ const saveJSON = async (path, json)=>{
10
+ const jsonAsString = `${JSON.stringify(json, null, 2)}\n`;
11
+ await fse.writeFile(path, jsonAsString);
12
+ };
13
+
14
+ exports.readJSON = readJSON;
15
+ exports.saveJSON = saveJSON;
16
+ //# sourceMappingURL=file.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.js","sources":["../../../../src/modules/json/file.ts"],"sourcesContent":["import fse from 'fs-extra';\n\nimport type { Utils } from '@strapi/types';\n\nexport const readJSON = async (path: string): Promise<Utils.JSONValue> => {\n const buffer = await fse.readFile(path);\n\n return JSON.parse(buffer.toString());\n};\n\nexport const saveJSON = async (path: string, json: Utils.JSONValue): Promise<void> => {\n const jsonAsString = `${JSON.stringify(json, null, 2)}\\n`;\n\n await fse.writeFile(path, jsonAsString);\n};\n"],"names":["readJSON","path","buffer","fse","readFile","JSON","parse","toString","saveJSON","json","jsonAsString","stringify","writeFile"],"mappings":";;;;AAIO,MAAMA,WAAW,OAAOC,IAAAA,GAAAA;AAC7B,IAAA,MAAMC,MAAS,GAAA,MAAMC,GAAIC,CAAAA,QAAQ,CAACH,IAAAA,CAAAA;AAElC,IAAA,OAAOI,IAAKC,CAAAA,KAAK,CAACJ,MAAAA,CAAOK,QAAQ,EAAA,CAAA;AACnC;AAEO,MAAMC,QAAW,GAAA,OAAOP,IAAcQ,EAAAA,IAAAA,GAAAA;IAC3C,MAAMC,YAAAA,GAAe,CAAC,EAAEL,IAAKM,CAAAA,SAAS,CAACF,IAAM,EAAA,IAAA,EAAM,CAAG,CAAA,CAAA,EAAE,CAAC;IAEzD,MAAMN,GAAAA,CAAIS,SAAS,CAACX,IAAMS,EAAAA,YAAAA,CAAAA;AAC5B;;;;;"}
@@ -0,0 +1,13 @@
1
+ import fse from 'fs-extra';
2
+
3
+ const readJSON = async (path)=>{
4
+ const buffer = await fse.readFile(path);
5
+ return JSON.parse(buffer.toString());
6
+ };
7
+ const saveJSON = async (path, json)=>{
8
+ const jsonAsString = `${JSON.stringify(json, null, 2)}\n`;
9
+ await fse.writeFile(path, jsonAsString);
10
+ };
11
+
12
+ export { readJSON, saveJSON };
13
+ //# sourceMappingURL=file.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file.mjs","sources":["../../../../src/modules/json/file.ts"],"sourcesContent":["import fse from 'fs-extra';\n\nimport type { Utils } from '@strapi/types';\n\nexport const readJSON = async (path: string): Promise<Utils.JSONValue> => {\n const buffer = await fse.readFile(path);\n\n return JSON.parse(buffer.toString());\n};\n\nexport const saveJSON = async (path: string, json: Utils.JSONValue): Promise<void> => {\n const jsonAsString = `${JSON.stringify(json, null, 2)}\\n`;\n\n await fse.writeFile(path, jsonAsString);\n};\n"],"names":["readJSON","path","buffer","fse","readFile","JSON","parse","toString","saveJSON","json","jsonAsString","stringify","writeFile"],"mappings":";;AAIO,MAAMA,WAAW,OAAOC,IAAAA,GAAAA;AAC7B,IAAA,MAAMC,MAAS,GAAA,MAAMC,GAAIC,CAAAA,QAAQ,CAACH,IAAAA,CAAAA;AAElC,IAAA,OAAOI,IAAKC,CAAAA,KAAK,CAACJ,MAAAA,CAAOK,QAAQ,EAAA,CAAA;AACnC;AAEO,MAAMC,QAAW,GAAA,OAAOP,IAAcQ,EAAAA,IAAAA,GAAAA;IAC3C,MAAMC,YAAAA,GAAe,CAAC,EAAEL,IAAKM,CAAAA,SAAS,CAACF,IAAM,EAAA,IAAA,EAAM,CAAG,CAAA,CAAA,EAAE,CAAC;IAEzD,MAAMN,GAAAA,CAAIS,SAAS,CAACX,IAAMS,EAAAA,YAAAA,CAAAA;AAC5B;;;;"}
@@ -0,0 +1,38 @@
1
+ 'use strict';
2
+
3
+ var fp = require('lodash/fp');
4
+
5
+ class JSONTransformAPI {
6
+ get(path, defaultValue) {
7
+ if (!path) {
8
+ return this.root();
9
+ }
10
+ return fp.cloneDeep(fp.get(path, this.json) ?? defaultValue);
11
+ }
12
+ has(path) {
13
+ return fp.has(path, this.json);
14
+ }
15
+ merge(other) {
16
+ this.json = fp.merge(other, this.json);
17
+ return this;
18
+ }
19
+ root() {
20
+ return fp.cloneDeep(this.json);
21
+ }
22
+ set(path, value) {
23
+ this.json = fp.set(path, value, this.json);
24
+ return this;
25
+ }
26
+ remove(path) {
27
+ this.json = fp.omit(path, this.json);
28
+ return this;
29
+ }
30
+ constructor(json){
31
+ this.json = fp.cloneDeep(json);
32
+ }
33
+ }
34
+ const createJSONTransformAPI = (object)=>new JSONTransformAPI(object);
35
+
36
+ exports.JSONTransformAPI = JSONTransformAPI;
37
+ exports.createJSONTransformAPI = createJSONTransformAPI;
38
+ //# sourceMappingURL=transform-api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-api.js","sources":["../../../../src/modules/json/transform-api.ts"],"sourcesContent":["import { cloneDeep, get, has, set, merge, omit } from 'lodash/fp';\n\nimport type { Utils } from '@strapi/types';\n\nimport type { JSONTransformAPI as JSONTransformAPIInterface } from './types';\n\nexport class JSONTransformAPI implements JSONTransformAPIInterface {\n private json: Utils.JSONObject;\n\n constructor(json: Utils.JSONObject) {\n this.json = cloneDeep(json);\n }\n\n get<T extends Utils.JSONValue>(path: string): T | undefined;\n get<T extends Utils.JSONValue>(path: string, defaultValue: T): T;\n get<T extends Utils.JSONValue>(path?: string, defaultValue?: T) {\n if (!path) {\n return this.root() as T;\n }\n\n return cloneDeep(get(path, this.json) ?? defaultValue) as T;\n }\n\n has(path: string) {\n return has(path, this.json);\n }\n\n merge(other: Utils.JSONObject) {\n this.json = merge(other, this.json);\n\n return this;\n }\n\n root(): Utils.JSONObject {\n return cloneDeep(this.json);\n }\n\n set(path: string, value: Utils.JSONValue) {\n this.json = set(path, value, this.json);\n\n return this;\n }\n\n remove(path: string) {\n this.json = omit(path, this.json);\n return this;\n }\n}\n\nexport const createJSONTransformAPI = (object: Utils.JSONObject) => new JSONTransformAPI(object);\n"],"names":["JSONTransformAPI","get","path","defaultValue","root","cloneDeep","json","has","merge","other","set","value","remove","omit","constructor","createJSONTransformAPI","object"],"mappings":";;;;AAMO,MAAMA,gBAAAA,CAAAA;IASXC,GAA+BC,CAAAA,IAAa,EAAEC,YAAgB,EAAE;AAC9D,QAAA,IAAI,CAACD,IAAM,EAAA;YACT,OAAO,IAAI,CAACE,IAAI,EAAA;AAClB;AAEA,QAAA,OAAOC,aAAUJ,MAAIC,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAKH,IAAAA,YAAAA,CAAAA;AAC3C;AAEAI,IAAAA,GAAAA,CAAIL,IAAY,EAAE;AAChB,QAAA,OAAOK,MAAIL,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAA;AAC5B;AAEAE,IAAAA,KAAAA,CAAMC,KAAuB,EAAE;AAC7B,QAAA,IAAI,CAACH,IAAI,GAAGE,SAAMC,KAAO,EAAA,IAAI,CAACH,IAAI,CAAA;AAElC,QAAA,OAAO,IAAI;AACb;IAEAF,IAAyB,GAAA;QACvB,OAAOC,YAAAA,CAAU,IAAI,CAACC,IAAI,CAAA;AAC5B;IAEAI,GAAIR,CAAAA,IAAY,EAAES,KAAsB,EAAE;QACxC,IAAI,CAACL,IAAI,GAAGI,MAAAA,CAAIR,MAAMS,KAAO,EAAA,IAAI,CAACL,IAAI,CAAA;AAEtC,QAAA,OAAO,IAAI;AACb;AAEAM,IAAAA,MAAAA,CAAOV,IAAY,EAAE;AACnB,QAAA,IAAI,CAACI,IAAI,GAAGO,QAAKX,IAAM,EAAA,IAAI,CAACI,IAAI,CAAA;AAChC,QAAA,OAAO,IAAI;AACb;AArCAQ,IAAAA,WAAAA,CAAYR,IAAsB,CAAE;QAClC,IAAI,CAACA,IAAI,GAAGD,YAAUC,CAAAA,IAAAA,CAAAA;AACxB;AAoCF;MAEaS,sBAAyB,GAAA,CAACC,MAA6B,GAAA,IAAIhB,iBAAiBgB,MAAQ;;;;;"}
@@ -0,0 +1,35 @@
1
+ import { cloneDeep, get, has, merge, set, omit } from 'lodash/fp';
2
+
3
+ class JSONTransformAPI {
4
+ get(path, defaultValue) {
5
+ if (!path) {
6
+ return this.root();
7
+ }
8
+ return cloneDeep(get(path, this.json) ?? defaultValue);
9
+ }
10
+ has(path) {
11
+ return has(path, this.json);
12
+ }
13
+ merge(other) {
14
+ this.json = merge(other, this.json);
15
+ return this;
16
+ }
17
+ root() {
18
+ return cloneDeep(this.json);
19
+ }
20
+ set(path, value) {
21
+ this.json = set(path, value, this.json);
22
+ return this;
23
+ }
24
+ remove(path) {
25
+ this.json = omit(path, this.json);
26
+ return this;
27
+ }
28
+ constructor(json){
29
+ this.json = cloneDeep(json);
30
+ }
31
+ }
32
+ const createJSONTransformAPI = (object)=>new JSONTransformAPI(object);
33
+
34
+ export { JSONTransformAPI, createJSONTransformAPI };
35
+ //# sourceMappingURL=transform-api.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"transform-api.mjs","sources":["../../../../src/modules/json/transform-api.ts"],"sourcesContent":["import { cloneDeep, get, has, set, merge, omit } from 'lodash/fp';\n\nimport type { Utils } from '@strapi/types';\n\nimport type { JSONTransformAPI as JSONTransformAPIInterface } from './types';\n\nexport class JSONTransformAPI implements JSONTransformAPIInterface {\n private json: Utils.JSONObject;\n\n constructor(json: Utils.JSONObject) {\n this.json = cloneDeep(json);\n }\n\n get<T extends Utils.JSONValue>(path: string): T | undefined;\n get<T extends Utils.JSONValue>(path: string, defaultValue: T): T;\n get<T extends Utils.JSONValue>(path?: string, defaultValue?: T) {\n if (!path) {\n return this.root() as T;\n }\n\n return cloneDeep(get(path, this.json) ?? defaultValue) as T;\n }\n\n has(path: string) {\n return has(path, this.json);\n }\n\n merge(other: Utils.JSONObject) {\n this.json = merge(other, this.json);\n\n return this;\n }\n\n root(): Utils.JSONObject {\n return cloneDeep(this.json);\n }\n\n set(path: string, value: Utils.JSONValue) {\n this.json = set(path, value, this.json);\n\n return this;\n }\n\n remove(path: string) {\n this.json = omit(path, this.json);\n return this;\n }\n}\n\nexport const createJSONTransformAPI = (object: Utils.JSONObject) => new JSONTransformAPI(object);\n"],"names":["JSONTransformAPI","get","path","defaultValue","root","cloneDeep","json","has","merge","other","set","value","remove","omit","constructor","createJSONTransformAPI","object"],"mappings":";;AAMO,MAAMA,gBAAAA,CAAAA;IASXC,GAA+BC,CAAAA,IAAa,EAAEC,YAAgB,EAAE;AAC9D,QAAA,IAAI,CAACD,IAAM,EAAA;YACT,OAAO,IAAI,CAACE,IAAI,EAAA;AAClB;AAEA,QAAA,OAAOC,UAAUJ,GAAIC,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAKH,IAAAA,YAAAA,CAAAA;AAC3C;AAEAI,IAAAA,GAAAA,CAAIL,IAAY,EAAE;AAChB,QAAA,OAAOK,GAAIL,CAAAA,IAAAA,EAAM,IAAI,CAACI,IAAI,CAAA;AAC5B;AAEAE,IAAAA,KAAAA,CAAMC,KAAuB,EAAE;AAC7B,QAAA,IAAI,CAACH,IAAI,GAAGE,MAAMC,KAAO,EAAA,IAAI,CAACH,IAAI,CAAA;AAElC,QAAA,OAAO,IAAI;AACb;IAEAF,IAAyB,GAAA;QACvB,OAAOC,SAAAA,CAAU,IAAI,CAACC,IAAI,CAAA;AAC5B;IAEAI,GAAIR,CAAAA,IAAY,EAAES,KAAsB,EAAE;QACxC,IAAI,CAACL,IAAI,GAAGI,GAAAA,CAAIR,MAAMS,KAAO,EAAA,IAAI,CAACL,IAAI,CAAA;AAEtC,QAAA,OAAO,IAAI;AACb;AAEAM,IAAAA,MAAAA,CAAOV,IAAY,EAAE;AACnB,QAAA,IAAI,CAACI,IAAI,GAAGO,KAAKX,IAAM,EAAA,IAAI,CAACI,IAAI,CAAA;AAChC,QAAA,OAAO,IAAI;AACb;AArCAQ,IAAAA,WAAAA,CAAYR,IAAsB,CAAE;QAClC,IAAI,CAACA,IAAI,GAAGD,SAAUC,CAAAA,IAAAA,CAAAA;AACxB;AAoCF;MAEaS,sBAAyB,GAAA,CAACC,MAA6B,GAAA,IAAIhB,iBAAiBgB,MAAQ;;;;"}
@@ -0,0 +1,8 @@
1
+ 'use strict';
2
+
3
+ var logger = require('./logger.js');
4
+
5
+
6
+
7
+ exports.loggerFactory = logger.loggerFactory;
8
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
@@ -0,0 +1,2 @@
1
+ export { loggerFactory } from './logger.mjs';
2
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,76 @@
1
+ 'use strict';
2
+
3
+ var chalk = require('chalk');
4
+
5
+ class Logger {
6
+ get isNotSilent() {
7
+ return !this.isSilent;
8
+ }
9
+ get errors() {
10
+ return this.nbErrorsCalls;
11
+ }
12
+ get warnings() {
13
+ return this.nbWarningsCalls;
14
+ }
15
+ get stdout() {
16
+ return this.isSilent ? undefined : process.stdout;
17
+ }
18
+ get stderr() {
19
+ return this.isSilent ? undefined : process.stderr;
20
+ }
21
+ setDebug(debug) {
22
+ this.isDebug = debug;
23
+ return this;
24
+ }
25
+ setSilent(silent) {
26
+ this.isSilent = silent;
27
+ return this;
28
+ }
29
+ debug(...args) {
30
+ const isDebugEnabled = this.isNotSilent && this.isDebug;
31
+ if (isDebugEnabled) {
32
+ console.log(chalk.cyan(`[DEBUG]\t[${nowAsISO()}]`), ...args);
33
+ }
34
+ return this;
35
+ }
36
+ error(...args) {
37
+ this.nbErrorsCalls += 1;
38
+ if (this.isNotSilent) {
39
+ console.error(chalk.red(`[ERROR]\t[${nowAsISO()}]`), ...args);
40
+ }
41
+ return this;
42
+ }
43
+ info(...args) {
44
+ if (this.isNotSilent) {
45
+ console.info(chalk.blue(`[INFO]\t[${new Date().toISOString()}]`), ...args);
46
+ }
47
+ return this;
48
+ }
49
+ raw(...args) {
50
+ if (this.isNotSilent) {
51
+ console.log(...args);
52
+ }
53
+ return this;
54
+ }
55
+ warn(...args) {
56
+ this.nbWarningsCalls += 1;
57
+ if (this.isNotSilent) {
58
+ console.warn(chalk.yellow(`[WARN]\t[${new Date().toISOString()}]`), ...args);
59
+ }
60
+ return this;
61
+ }
62
+ constructor(options = {}){
63
+ // Set verbosity options
64
+ this.isDebug = options.debug ?? false;
65
+ this.isSilent = options.silent ?? false;
66
+ // Initialize counters
67
+ this.nbErrorsCalls = 0;
68
+ this.nbWarningsCalls = 0;
69
+ }
70
+ }
71
+ const nowAsISO = ()=>new Date().toISOString();
72
+ const loggerFactory = (options = {})=>new Logger(options);
73
+
74
+ exports.Logger = Logger;
75
+ exports.loggerFactory = loggerFactory;
76
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sources":["../../../../src/modules/logger/logger.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport type { Logger as LoggerInterface, LoggerOptions } from './types';\n\nexport class Logger implements LoggerInterface {\n isDebug: boolean;\n\n isSilent: boolean;\n\n private nbErrorsCalls: number;\n\n private nbWarningsCalls: number;\n\n constructor(options: LoggerOptions = {}) {\n // Set verbosity options\n this.isDebug = options.debug ?? false;\n this.isSilent = options.silent ?? false;\n\n // Initialize counters\n this.nbErrorsCalls = 0;\n this.nbWarningsCalls = 0;\n }\n\n private get isNotSilent(): boolean {\n return !this.isSilent;\n }\n\n get errors(): number {\n return this.nbErrorsCalls;\n }\n\n get warnings(): number {\n return this.nbWarningsCalls;\n }\n\n get stdout(): (NodeJS.WriteStream & { fd: 1 }) | undefined {\n return this.isSilent ? undefined : process.stdout;\n }\n\n get stderr(): (NodeJS.WriteStream & { fd: 2 }) | undefined {\n return this.isSilent ? undefined : process.stderr;\n }\n\n setDebug(debug: boolean): this {\n this.isDebug = debug;\n return this;\n }\n\n setSilent(silent: boolean): this {\n this.isSilent = silent;\n return this;\n }\n\n debug(...args: unknown[]): this {\n const isDebugEnabled = this.isNotSilent && this.isDebug;\n\n if (isDebugEnabled) {\n console.log(chalk.cyan(`[DEBUG]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n error(...args: unknown[]): this {\n this.nbErrorsCalls += 1;\n\n if (this.isNotSilent) {\n console.error(chalk.red(`[ERROR]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n info(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.info(chalk.blue(`[INFO]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n\n raw(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.log(...args);\n }\n\n return this;\n }\n\n warn(...args: unknown[]): this {\n this.nbWarningsCalls += 1;\n\n if (this.isNotSilent) {\n console.warn(chalk.yellow(`[WARN]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n}\n\nconst nowAsISO = () => new Date().toISOString();\n\nexport const loggerFactory = (options: LoggerOptions = {}) => new Logger(options);\n"],"names":["Logger","isNotSilent","isSilent","errors","nbErrorsCalls","warnings","nbWarningsCalls","stdout","undefined","process","stderr","setDebug","debug","isDebug","setSilent","silent","args","isDebugEnabled","console","log","chalk","cyan","nowAsISO","error","red","info","blue","Date","toISOString","raw","warn","yellow","constructor","options","loggerFactory"],"mappings":"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"}
@@ -0,0 +1,73 @@
1
+ import chalk from 'chalk';
2
+
3
+ class Logger {
4
+ get isNotSilent() {
5
+ return !this.isSilent;
6
+ }
7
+ get errors() {
8
+ return this.nbErrorsCalls;
9
+ }
10
+ get warnings() {
11
+ return this.nbWarningsCalls;
12
+ }
13
+ get stdout() {
14
+ return this.isSilent ? undefined : process.stdout;
15
+ }
16
+ get stderr() {
17
+ return this.isSilent ? undefined : process.stderr;
18
+ }
19
+ setDebug(debug) {
20
+ this.isDebug = debug;
21
+ return this;
22
+ }
23
+ setSilent(silent) {
24
+ this.isSilent = silent;
25
+ return this;
26
+ }
27
+ debug(...args) {
28
+ const isDebugEnabled = this.isNotSilent && this.isDebug;
29
+ if (isDebugEnabled) {
30
+ console.log(chalk.cyan(`[DEBUG]\t[${nowAsISO()}]`), ...args);
31
+ }
32
+ return this;
33
+ }
34
+ error(...args) {
35
+ this.nbErrorsCalls += 1;
36
+ if (this.isNotSilent) {
37
+ console.error(chalk.red(`[ERROR]\t[${nowAsISO()}]`), ...args);
38
+ }
39
+ return this;
40
+ }
41
+ info(...args) {
42
+ if (this.isNotSilent) {
43
+ console.info(chalk.blue(`[INFO]\t[${new Date().toISOString()}]`), ...args);
44
+ }
45
+ return this;
46
+ }
47
+ raw(...args) {
48
+ if (this.isNotSilent) {
49
+ console.log(...args);
50
+ }
51
+ return this;
52
+ }
53
+ warn(...args) {
54
+ this.nbWarningsCalls += 1;
55
+ if (this.isNotSilent) {
56
+ console.warn(chalk.yellow(`[WARN]\t[${new Date().toISOString()}]`), ...args);
57
+ }
58
+ return this;
59
+ }
60
+ constructor(options = {}){
61
+ // Set verbosity options
62
+ this.isDebug = options.debug ?? false;
63
+ this.isSilent = options.silent ?? false;
64
+ // Initialize counters
65
+ this.nbErrorsCalls = 0;
66
+ this.nbWarningsCalls = 0;
67
+ }
68
+ }
69
+ const nowAsISO = ()=>new Date().toISOString();
70
+ const loggerFactory = (options = {})=>new Logger(options);
71
+
72
+ export { Logger, loggerFactory };
73
+ //# sourceMappingURL=logger.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.mjs","sources":["../../../../src/modules/logger/logger.ts"],"sourcesContent":["import chalk from 'chalk';\n\nimport type { Logger as LoggerInterface, LoggerOptions } from './types';\n\nexport class Logger implements LoggerInterface {\n isDebug: boolean;\n\n isSilent: boolean;\n\n private nbErrorsCalls: number;\n\n private nbWarningsCalls: number;\n\n constructor(options: LoggerOptions = {}) {\n // Set verbosity options\n this.isDebug = options.debug ?? false;\n this.isSilent = options.silent ?? false;\n\n // Initialize counters\n this.nbErrorsCalls = 0;\n this.nbWarningsCalls = 0;\n }\n\n private get isNotSilent(): boolean {\n return !this.isSilent;\n }\n\n get errors(): number {\n return this.nbErrorsCalls;\n }\n\n get warnings(): number {\n return this.nbWarningsCalls;\n }\n\n get stdout(): (NodeJS.WriteStream & { fd: 1 }) | undefined {\n return this.isSilent ? undefined : process.stdout;\n }\n\n get stderr(): (NodeJS.WriteStream & { fd: 2 }) | undefined {\n return this.isSilent ? undefined : process.stderr;\n }\n\n setDebug(debug: boolean): this {\n this.isDebug = debug;\n return this;\n }\n\n setSilent(silent: boolean): this {\n this.isSilent = silent;\n return this;\n }\n\n debug(...args: unknown[]): this {\n const isDebugEnabled = this.isNotSilent && this.isDebug;\n\n if (isDebugEnabled) {\n console.log(chalk.cyan(`[DEBUG]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n error(...args: unknown[]): this {\n this.nbErrorsCalls += 1;\n\n if (this.isNotSilent) {\n console.error(chalk.red(`[ERROR]\\t[${nowAsISO()}]`), ...args);\n }\n\n return this;\n }\n\n info(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.info(chalk.blue(`[INFO]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n\n raw(...args: unknown[]): this {\n if (this.isNotSilent) {\n console.log(...args);\n }\n\n return this;\n }\n\n warn(...args: unknown[]): this {\n this.nbWarningsCalls += 1;\n\n if (this.isNotSilent) {\n console.warn(chalk.yellow(`[WARN]\\t[${new Date().toISOString()}]`), ...args);\n }\n\n return this;\n }\n}\n\nconst nowAsISO = () => new Date().toISOString();\n\nexport const loggerFactory = (options: LoggerOptions = {}) => new Logger(options);\n"],"names":["Logger","isNotSilent","isSilent","errors","nbErrorsCalls","warnings","nbWarningsCalls","stdout","undefined","process","stderr","setDebug","debug","isDebug","setSilent","silent","args","isDebugEnabled","console","log","chalk","cyan","nowAsISO","error","red","info","blue","Date","toISOString","raw","warn","yellow","constructor","options","loggerFactory"],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+
3
+ const NPM_REGISTRY_URL = 'https://registry.npmjs.org';
4
+
5
+ exports.NPM_REGISTRY_URL = NPM_REGISTRY_URL;
6
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../../../../src/modules/npm/constants.ts"],"sourcesContent":["export const NPM_REGISTRY_URL = 'https://registry.npmjs.org';\n"],"names":["NPM_REGISTRY_URL"],"mappings":";;AAAO,MAAMA,mBAAmB;;;;"}
@@ -0,0 +1,4 @@
1
+ const NPM_REGISTRY_URL = 'https://registry.npmjs.org';
2
+
3
+ export { NPM_REGISTRY_URL };
4
+ //# sourceMappingURL=constants.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.mjs","sources":["../../../../src/modules/npm/constants.ts"],"sourcesContent":["export const NPM_REGISTRY_URL = 'https://registry.npmjs.org';\n"],"names":["NPM_REGISTRY_URL"],"mappings":"AAAO,MAAMA,mBAAmB;;;;"}
@@ -0,0 +1,55 @@
1
+ 'use strict';
2
+
3
+ var assert = require('node:assert');
4
+ var semver$1 = require('semver');
5
+ var constants = require('./constants.js');
6
+ var semver = require('../version/semver.js');
7
+ require('../version/types.js');
8
+
9
+ class Package {
10
+ get isLoaded() {
11
+ return this.npmPackage !== null;
12
+ }
13
+ assertPackageIsLoaded(npmPackage) {
14
+ assert(this.isLoaded, 'The package is not loaded yet');
15
+ }
16
+ getVersionsDict() {
17
+ this.assertPackageIsLoaded(this.npmPackage);
18
+ return this.npmPackage.versions;
19
+ }
20
+ getVersionsAsList() {
21
+ this.assertPackageIsLoaded(this.npmPackage);
22
+ return Object.values(this.npmPackage.versions);
23
+ }
24
+ findVersionsInRange(range) {
25
+ const versions = this.getVersionsAsList();
26
+ return versions// Only select versions matching the upgrade range
27
+ .filter((v)=>range.test(v.version))// Only select supported version format (x.x.x)
28
+ .filter((v)=>semver.isLiteralSemVer(v.version))// Sort in ascending order
29
+ .sort((v1, v2)=>semver$1.compare(v1.version, v2.version));
30
+ }
31
+ findVersion(version) {
32
+ const versions = this.getVersionsAsList();
33
+ return versions.find((npmVersion)=>semver$1.eq(npmVersion.version, version));
34
+ }
35
+ async refresh() {
36
+ const response = await fetch(this.packageURL);
37
+ // TODO: Use a validation library to make sure the response structure is correct
38
+ assert(response.ok, `Request failed for ${this.packageURL}`);
39
+ this.npmPackage = await response.json();
40
+ return this;
41
+ }
42
+ versionExists(version) {
43
+ return this.findVersion(version) !== undefined;
44
+ }
45
+ constructor(name){
46
+ this.name = name;
47
+ this.packageURL = `${constants.NPM_REGISTRY_URL}/${name}`;
48
+ this.npmPackage = null;
49
+ }
50
+ }
51
+ const npmPackageFactory = (name)=>new Package(name);
52
+
53
+ exports.Package = Package;
54
+ exports.npmPackageFactory = npmPackageFactory;
55
+ //# sourceMappingURL=package.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"package.js","sources":["../../../../src/modules/npm/package.ts"],"sourcesContent":["import assert from 'node:assert';\nimport semver from 'semver';\n\nimport * as constants from './constants';\nimport { isLiteralSemVer } from '../version';\n\nimport type { Package as PackageInterface, NPMPackage, NPMPackageVersion } from './types';\nimport type { Version } from '../version';\n\nexport class Package implements PackageInterface {\n name: string;\n\n packageURL: string;\n\n private npmPackage: NPMPackage | null;\n\n constructor(name: string) {\n this.name = name;\n this.packageURL = `${constants.NPM_REGISTRY_URL}/${name}`;\n this.npmPackage = null;\n }\n\n get isLoaded() {\n return this.npmPackage !== null;\n }\n\n private assertPackageIsLoaded(npmPackage: NPMPackage | null): asserts npmPackage is NPMPackage {\n assert(this.isLoaded, 'The package is not loaded yet');\n }\n\n getVersionsDict() {\n this.assertPackageIsLoaded(this.npmPackage);\n\n return this.npmPackage.versions;\n }\n\n getVersionsAsList() {\n this.assertPackageIsLoaded(this.npmPackage);\n\n return Object.values(this.npmPackage.versions);\n }\n\n findVersionsInRange(range: Version.Range) {\n const versions = this.getVersionsAsList();\n\n return (\n versions\n // Only select versions matching the upgrade range\n .filter((v) => range.test(v.version))\n // Only select supported version format (x.x.x)\n .filter((v) => isLiteralSemVer(v.version))\n // Sort in ascending order\n .sort((v1, v2) => semver.compare(v1.version, v2.version))\n );\n }\n\n findVersion(version: Version.SemVer): NPMPackageVersion | undefined {\n const versions = this.getVersionsAsList();\n\n return versions.find((npmVersion) => semver.eq(npmVersion.version, version));\n }\n\n async refresh() {\n const response = await fetch(this.packageURL);\n\n // TODO: Use a validation library to make sure the response structure is correct\n assert(response.ok, `Request failed for ${this.packageURL}`);\n\n this.npmPackage = await response.json();\n\n return this;\n }\n\n versionExists(version: Version.SemVer) {\n return this.findVersion(version) !== undefined;\n }\n}\n\nexport const npmPackageFactory = (name: string) => new Package(name);\n"],"names":["Package","isLoaded","npmPackage","assertPackageIsLoaded","assert","getVersionsDict","versions","getVersionsAsList","Object","values","findVersionsInRange","range","filter","v","test","version","isLiteralSemVer","sort","v1","v2","semver","compare","findVersion","find","npmVersion","eq","refresh","response","fetch","packageURL","ok","json","versionExists","undefined","constructor","name","constants","npmPackageFactory"],"mappings":";;;;;;;;AASO,MAAMA,OAAAA,CAAAA;AAaX,IAAA,IAAIC,QAAW,GAAA;QACb,OAAO,IAAI,CAACC,UAAU,KAAK,IAAA;AAC7B;AAEQC,IAAAA,qBAAAA,CAAsBD,UAA6B,EAAoC;QAC7FE,MAAO,CAAA,IAAI,CAACH,QAAQ,EAAE,+BAAA,CAAA;AACxB;IAEAI,eAAkB,GAAA;AAChB,QAAA,IAAI,CAACF,qBAAqB,CAAC,IAAI,CAACD,UAAU,CAAA;AAE1C,QAAA,OAAO,IAAI,CAACA,UAAU,CAACI,QAAQ;AACjC;IAEAC,iBAAoB,GAAA;AAClB,QAAA,IAAI,CAACJ,qBAAqB,CAAC,IAAI,CAACD,UAAU,CAAA;AAE1C,QAAA,OAAOM,OAAOC,MAAM,CAAC,IAAI,CAACP,UAAU,CAACI,QAAQ,CAAA;AAC/C;AAEAI,IAAAA,mBAAAA,CAAoBC,KAAoB,EAAE;QACxC,MAAML,QAAAA,GAAW,IAAI,CAACC,iBAAiB,EAAA;AAEvC,QAAA,OACED,QACE;SACCM,MAAM,CAAC,CAACC,CAAMF,GAAAA,KAAAA,CAAMG,IAAI,CAACD,CAAAA,CAAEE,OAAO,CAAA,CACnC;AACCH,SAAAA,MAAM,CAAC,CAACC,CAAAA,GAAMG,uBAAgBH,CAAEE,CAAAA,OAAO,EACxC;SACCE,IAAI,CAAC,CAACC,EAAAA,EAAIC,EAAOC,GAAAA,QAAAA,CAAOC,OAAO,CAACH,EAAGH,CAAAA,OAAO,EAAEI,EAAAA,CAAGJ,OAAO,CAAA,CAAA;AAE7D;AAEAO,IAAAA,WAAAA,CAAYP,OAAuB,EAAiC;QAClE,MAAMT,QAAAA,GAAW,IAAI,CAACC,iBAAiB,EAAA;QAEvC,OAAOD,QAAAA,CAASiB,IAAI,CAAC,CAACC,UAAAA,GAAeJ,SAAOK,EAAE,CAACD,UAAWT,CAAAA,OAAO,EAAEA,OAAAA,CAAAA,CAAAA;AACrE;AAEA,IAAA,MAAMW,OAAU,GAAA;AACd,QAAA,MAAMC,QAAW,GAAA,MAAMC,KAAM,CAAA,IAAI,CAACC,UAAU,CAAA;;QAG5CzB,MAAOuB,CAAAA,QAAAA,CAASG,EAAE,EAAE,CAAC,mBAAmB,EAAE,IAAI,CAACD,UAAU,CAAC,CAAC,CAAA;AAE3D,QAAA,IAAI,CAAC3B,UAAU,GAAG,MAAMyB,SAASI,IAAI,EAAA;AAErC,QAAA,OAAO,IAAI;AACb;AAEAC,IAAAA,aAAAA,CAAcjB,OAAuB,EAAE;AACrC,QAAA,OAAO,IAAI,CAACO,WAAW,CAACP,OAAakB,CAAAA,KAAAA,SAAAA;AACvC;AA3DAC,IAAAA,WAAAA,CAAYC,IAAY,CAAE;QACxB,IAAI,CAACA,IAAI,GAAGA,IAAAA;QACZ,IAAI,CAACN,UAAU,GAAG,CAAC,EAAEO,0BAA0B,CAAC,CAAC,EAAED,IAAAA,CAAK,CAAC;QACzD,IAAI,CAACjC,UAAU,GAAG,IAAA;AACpB;AAwDF;MAEamC,iBAAoB,GAAA,CAACF,IAAiB,GAAA,IAAInC,QAAQmC,IAAM;;;;;"}