intershell 0.3.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 (357) hide show
  1. package/README.md +301 -0
  2. package/dist/commands/ci/act.d.ts +13 -0
  3. package/dist/commands/ci/act.d.ts.map +1 -0
  4. package/dist/commands/ci/act.js +89 -0
  5. package/dist/commands/ci/act.js.map +1 -0
  6. package/dist/commands/ci/attach-affected.d.ts +12 -0
  7. package/dist/commands/ci/attach-affected.d.ts.map +1 -0
  8. package/dist/commands/ci/attach-affected.js +83 -0
  9. package/dist/commands/ci/attach-affected.js.map +1 -0
  10. package/dist/commands/ci/attach-service-ports.d.ts +10 -0
  11. package/dist/commands/ci/attach-service-ports.d.ts.map +1 -0
  12. package/dist/commands/ci/attach-service-ports.js +25 -0
  13. package/dist/commands/ci/attach-service-ports.js.map +1 -0
  14. package/dist/commands/commit-check.d.ts +13 -0
  15. package/dist/commands/commit-check.d.ts.map +1 -0
  16. package/dist/commands/commit-check.js +110 -0
  17. package/dist/commands/commit-check.js.map +1 -0
  18. package/dist/commands/commit.d.ts +16 -0
  19. package/dist/commands/commit.d.ts.map +1 -0
  20. package/dist/commands/commit.js +91 -0
  21. package/dist/commands/commit.js.map +1 -0
  22. package/dist/commands/dev/check.d.ts +13 -0
  23. package/dist/commands/dev/check.d.ts.map +1 -0
  24. package/dist/commands/dev/check.js +91 -0
  25. package/dist/commands/dev/check.js.map +1 -0
  26. package/dist/commands/dev/cleanup.d.ts +10 -0
  27. package/dist/commands/dev/cleanup.d.ts.map +1 -0
  28. package/dist/commands/dev/cleanup.js +28 -0
  29. package/dist/commands/dev/cleanup.js.map +1 -0
  30. package/dist/commands/dev/rm.d.ts +12 -0
  31. package/dist/commands/dev/rm.d.ts.map +1 -0
  32. package/dist/commands/dev/rm.js +49 -0
  33. package/dist/commands/dev/rm.js.map +1 -0
  34. package/dist/commands/dev/setup.d.ts +10 -0
  35. package/dist/commands/dev/setup.d.ts.map +1 -0
  36. package/dist/commands/dev/setup.js +40 -0
  37. package/dist/commands/dev/setup.js.map +1 -0
  38. package/dist/commands/local/cleanup.d.ts +12 -0
  39. package/dist/commands/local/cleanup.d.ts.map +1 -0
  40. package/dist/commands/local/cleanup.js +62 -0
  41. package/dist/commands/local/cleanup.js.map +1 -0
  42. package/dist/commands/local/setup.d.ts +11 -0
  43. package/dist/commands/local/setup.d.ts.map +1 -0
  44. package/dist/commands/local/setup.js +55 -0
  45. package/dist/commands/local/setup.js.map +1 -0
  46. package/dist/commands/local/vscode.d.ts +17 -0
  47. package/dist/commands/local/vscode.d.ts.map +1 -0
  48. package/dist/commands/local/vscode.js +94 -0
  49. package/dist/commands/local/vscode.js.map +1 -0
  50. package/dist/commands/update-package-json.d.ts +12 -0
  51. package/dist/commands/update-package-json.d.ts.map +1 -0
  52. package/dist/commands/update-package-json.js +82 -0
  53. package/dist/commands/update-package-json.js.map +1 -0
  54. package/dist/commands/version/apply.d.ts +16 -0
  55. package/dist/commands/version/apply.d.ts.map +1 -0
  56. package/dist/commands/version/apply.js +120 -0
  57. package/dist/commands/version/apply.js.map +1 -0
  58. package/dist/commands/version/ci.d.ts +12 -0
  59. package/dist/commands/version/ci.d.ts.map +1 -0
  60. package/dist/commands/version/ci.js +67 -0
  61. package/dist/commands/version/ci.js.map +1 -0
  62. package/dist/commands/version/prepare.d.ts +19 -0
  63. package/dist/commands/version/prepare.d.ts.map +1 -0
  64. package/dist/commands/version/prepare.js +153 -0
  65. package/dist/commands/version/prepare.js.map +1 -0
  66. package/dist/core/colorify.d.ts +21 -0
  67. package/dist/core/colorify.d.ts.map +1 -0
  68. package/dist/core/colorify.js +56 -0
  69. package/dist/core/colorify.js.map +1 -0
  70. package/dist/core/index.d.ts +4 -0
  71. package/dist/core/index.d.ts.map +1 -0
  72. package/dist/core/index.js +3 -0
  73. package/dist/core/index.js.map +1 -0
  74. package/dist/core/types.d.ts +181 -0
  75. package/dist/core/types.d.ts.map +1 -0
  76. package/dist/core/types.js +5 -0
  77. package/dist/core/types.js.map +1 -0
  78. package/dist/core/wrapshell.d.ts +19 -0
  79. package/dist/core/wrapshell.d.ts.map +1 -0
  80. package/dist/core/wrapshell.js +323 -0
  81. package/dist/core/wrapshell.js.map +1 -0
  82. package/dist/entities/affected/affected.d.ts +4 -0
  83. package/dist/entities/affected/affected.d.ts.map +1 -0
  84. package/dist/entities/affected/affected.js +20 -0
  85. package/dist/entities/affected/affected.js.map +1 -0
  86. package/dist/entities/affected/affected.test.d.ts +2 -0
  87. package/dist/entities/affected/affected.test.d.ts.map +1 -0
  88. package/dist/entities/affected/affected.test.js +305 -0
  89. package/dist/entities/affected/affected.test.js.map +1 -0
  90. package/dist/entities/affected/index.d.ts +2 -0
  91. package/dist/entities/affected/index.d.ts.map +1 -0
  92. package/dist/entities/affected/index.js +2 -0
  93. package/dist/entities/affected/index.js.map +1 -0
  94. package/dist/entities/branch/branch.d.ts +8 -0
  95. package/dist/entities/branch/branch.d.ts.map +1 -0
  96. package/dist/entities/branch/branch.js +74 -0
  97. package/dist/entities/branch/branch.js.map +1 -0
  98. package/dist/entities/branch/branch.test.d.ts +2 -0
  99. package/dist/entities/branch/branch.test.d.ts.map +1 -0
  100. package/dist/entities/branch/branch.test.js +316 -0
  101. package/dist/entities/branch/branch.test.js.map +1 -0
  102. package/dist/entities/branch/branch.types.d.ts +6 -0
  103. package/dist/entities/branch/branch.types.d.ts.map +1 -0
  104. package/dist/entities/branch/branch.types.js +2 -0
  105. package/dist/entities/branch/branch.types.js.map +1 -0
  106. package/dist/entities/branch/index.d.ts +3 -0
  107. package/dist/entities/branch/index.d.ts.map +1 -0
  108. package/dist/entities/branch/index.js +3 -0
  109. package/dist/entities/branch/index.js.map +1 -0
  110. package/dist/entities/commit/commit.d.ts +15 -0
  111. package/dist/entities/commit/commit.d.ts.map +1 -0
  112. package/dist/entities/commit/commit.js +196 -0
  113. package/dist/entities/commit/commit.js.map +1 -0
  114. package/dist/entities/commit/commit.test.d.ts +26 -0
  115. package/dist/entities/commit/commit.test.d.ts.map +1 -0
  116. package/dist/entities/commit/commit.test.js +550 -0
  117. package/dist/entities/commit/commit.test.js.map +1 -0
  118. package/dist/entities/commit/commit.types.d.ts +49 -0
  119. package/dist/entities/commit/commit.types.d.ts.map +1 -0
  120. package/dist/entities/commit/commit.types.js +31 -0
  121. package/dist/entities/commit/commit.types.js.map +1 -0
  122. package/dist/entities/commit/index.d.ts +3 -0
  123. package/dist/entities/commit/index.d.ts.map +1 -0
  124. package/dist/entities/commit/index.js +3 -0
  125. package/dist/entities/commit/index.js.map +1 -0
  126. package/dist/entities/commit/pr.d.ts +11 -0
  127. package/dist/entities/commit/pr.d.ts.map +1 -0
  128. package/dist/entities/commit/pr.js +201 -0
  129. package/dist/entities/commit/pr.js.map +1 -0
  130. package/dist/entities/commit/pr.test.d.ts +2 -0
  131. package/dist/entities/commit/pr.test.d.ts.map +1 -0
  132. package/dist/entities/commit/pr.test.js +782 -0
  133. package/dist/entities/commit/pr.test.js.map +1 -0
  134. package/dist/entities/compose/compose.d.ts +18 -0
  135. package/dist/entities/compose/compose.d.ts.map +1 -0
  136. package/dist/entities/compose/compose.js +197 -0
  137. package/dist/entities/compose/compose.js.map +1 -0
  138. package/dist/entities/compose/compose.test.d.ts +2 -0
  139. package/dist/entities/compose/compose.test.d.ts.map +1 -0
  140. package/dist/entities/compose/compose.test.js +406 -0
  141. package/dist/entities/compose/compose.test.js.map +1 -0
  142. package/dist/entities/compose/compose.types.d.ts +77 -0
  143. package/dist/entities/compose/compose.types.d.ts.map +1 -0
  144. package/dist/entities/compose/compose.types.js +2 -0
  145. package/dist/entities/compose/compose.types.js.map +1 -0
  146. package/dist/entities/compose/index.d.ts +3 -0
  147. package/dist/entities/compose/index.d.ts.map +1 -0
  148. package/dist/entities/compose/index.js +3 -0
  149. package/dist/entities/compose/index.js.map +1 -0
  150. package/dist/entities/entities.shell.d.ts +29 -0
  151. package/dist/entities/entities.shell.d.ts.map +1 -0
  152. package/dist/entities/entities.shell.js +27 -0
  153. package/dist/entities/entities.shell.js.map +1 -0
  154. package/dist/entities/entities.shell.test.d.ts +2 -0
  155. package/dist/entities/entities.shell.test.d.ts.map +1 -0
  156. package/dist/entities/entities.shell.test.js +23 -0
  157. package/dist/entities/entities.shell.test.js.map +1 -0
  158. package/dist/entities/index.d.ts +12 -0
  159. package/dist/entities/index.d.ts.map +1 -0
  160. package/dist/entities/index.js +12 -0
  161. package/dist/entities/index.js.map +1 -0
  162. package/dist/entities/intershell-config/intershell-config.d.ts +11 -0
  163. package/dist/entities/intershell-config/intershell-config.d.ts.map +1 -0
  164. package/dist/entities/intershell-config/intershell-config.default.d.ts +188 -0
  165. package/dist/entities/intershell-config/intershell-config.default.d.ts.map +1 -0
  166. package/dist/entities/intershell-config/intershell-config.default.js +225 -0
  167. package/dist/entities/intershell-config/intershell-config.default.js.map +1 -0
  168. package/dist/entities/intershell-config/intershell-config.js +132 -0
  169. package/dist/entities/intershell-config/intershell-config.js.map +1 -0
  170. package/dist/entities/intershell-config/intershell-config.test.d.ts +2 -0
  171. package/dist/entities/intershell-config/intershell-config.test.d.ts.map +1 -0
  172. package/dist/entities/intershell-config/intershell-config.test.js +102 -0
  173. package/dist/entities/intershell-config/intershell-config.test.js.map +1 -0
  174. package/dist/entities/intershell-config/intershell-config.types.d.ts +103 -0
  175. package/dist/entities/intershell-config/intershell-config.types.d.ts.map +1 -0
  176. package/dist/entities/intershell-config/intershell-config.types.js +2 -0
  177. package/dist/entities/intershell-config/intershell-config.types.js.map +1 -0
  178. package/dist/entities/package/index.d.ts +4 -0
  179. package/dist/entities/package/index.d.ts.map +1 -0
  180. package/dist/entities/package/index.js +4 -0
  181. package/dist/entities/package/index.js.map +1 -0
  182. package/dist/entities/package/package.d.ts +49 -0
  183. package/dist/entities/package/package.d.ts.map +1 -0
  184. package/dist/entities/package/package.js +234 -0
  185. package/dist/entities/package/package.js.map +1 -0
  186. package/dist/entities/package/package.shell.d.ts +48 -0
  187. package/dist/entities/package/package.shell.d.ts.map +1 -0
  188. package/dist/entities/package/package.shell.js +118 -0
  189. package/dist/entities/package/package.shell.js.map +1 -0
  190. package/dist/entities/package/package.test.d.ts +23 -0
  191. package/dist/entities/package/package.test.d.ts.map +1 -0
  192. package/dist/entities/package/package.test.js +637 -0
  193. package/dist/entities/package/package.test.js.map +1 -0
  194. package/dist/entities/package/package.types.d.ts +48 -0
  195. package/dist/entities/package/package.types.d.ts.map +1 -0
  196. package/dist/entities/package/package.types.js +2 -0
  197. package/dist/entities/package/package.types.js.map +1 -0
  198. package/dist/entities/package-changelog/index.d.ts +4 -0
  199. package/dist/entities/package-changelog/index.d.ts.map +1 -0
  200. package/dist/entities/package-changelog/index.js +4 -0
  201. package/dist/entities/package-changelog/index.js.map +1 -0
  202. package/dist/entities/package-changelog/package-changelog.d.ts +20 -0
  203. package/dist/entities/package-changelog/package-changelog.d.ts.map +1 -0
  204. package/dist/entities/package-changelog/package-changelog.js +59 -0
  205. package/dist/entities/package-changelog/package-changelog.js.map +1 -0
  206. package/dist/entities/package-changelog/package-changelog.types.d.ts +25 -0
  207. package/dist/entities/package-changelog/package-changelog.types.d.ts.map +1 -0
  208. package/dist/entities/package-changelog/package-changelog.types.js +2 -0
  209. package/dist/entities/package-changelog/package-changelog.types.js.map +1 -0
  210. package/dist/entities/package-changelog/template.d.ts +20 -0
  211. package/dist/entities/package-changelog/template.d.ts.map +1 -0
  212. package/dist/entities/package-changelog/template.default.d.ts +10 -0
  213. package/dist/entities/package-changelog/template.default.d.ts.map +1 -0
  214. package/dist/entities/package-changelog/template.default.js +85 -0
  215. package/dist/entities/package-changelog/template.default.js.map +1 -0
  216. package/dist/entities/package-changelog/template.js +90 -0
  217. package/dist/entities/package-changelog/template.js.map +1 -0
  218. package/dist/entities/package-commits/dependency-analyzer.d.ts +35 -0
  219. package/dist/entities/package-commits/dependency-analyzer.d.ts.map +1 -0
  220. package/dist/entities/package-commits/dependency-analyzer.js +169 -0
  221. package/dist/entities/package-commits/dependency-analyzer.js.map +1 -0
  222. package/dist/entities/package-commits/dependency-analyzer.test.d.ts +2 -0
  223. package/dist/entities/package-commits/dependency-analyzer.test.d.ts.map +1 -0
  224. package/dist/entities/package-commits/dependency-analyzer.test.js +25 -0
  225. package/dist/entities/package-commits/dependency-analyzer.test.js.map +1 -0
  226. package/dist/entities/package-commits/index.d.ts +3 -0
  227. package/dist/entities/package-commits/index.d.ts.map +1 -0
  228. package/dist/entities/package-commits/index.js +3 -0
  229. package/dist/entities/package-commits/index.js.map +1 -0
  230. package/dist/entities/package-commits/package-commits.d.ts +33 -0
  231. package/dist/entities/package-commits/package-commits.d.ts.map +1 -0
  232. package/dist/entities/package-commits/package-commits.js +149 -0
  233. package/dist/entities/package-commits/package-commits.js.map +1 -0
  234. package/dist/entities/package-commits/package-commits.test.d.ts +2 -0
  235. package/dist/entities/package-commits/package-commits.test.d.ts.map +1 -0
  236. package/dist/entities/package-commits/package-commits.test.js +40 -0
  237. package/dist/entities/package-commits/package-commits.test.js.map +1 -0
  238. package/dist/entities/package-tags/index.d.ts +2 -0
  239. package/dist/entities/package-tags/index.d.ts.map +1 -0
  240. package/dist/entities/package-tags/index.js +2 -0
  241. package/dist/entities/package-tags/index.js.map +1 -0
  242. package/dist/entities/package-tags/package-tags.d.ts +24 -0
  243. package/dist/entities/package-tags/package-tags.d.ts.map +1 -0
  244. package/dist/entities/package-tags/package-tags.js +197 -0
  245. package/dist/entities/package-tags/package-tags.js.map +1 -0
  246. package/dist/entities/package-tags/package-tags.test.d.ts +2 -0
  247. package/dist/entities/package-tags/package-tags.test.d.ts.map +1 -0
  248. package/dist/entities/package-tags/package-tags.test.js +60 -0
  249. package/dist/entities/package-tags/package-tags.test.js.map +1 -0
  250. package/dist/entities/package-version/index.d.ts +3 -0
  251. package/dist/entities/package-version/index.d.ts.map +1 -0
  252. package/dist/entities/package-version/index.js +3 -0
  253. package/dist/entities/package-version/index.js.map +1 -0
  254. package/dist/entities/package-version/package-version.d.ts +16 -0
  255. package/dist/entities/package-version/package-version.d.ts.map +1 -0
  256. package/dist/entities/package-version/package-version.js +166 -0
  257. package/dist/entities/package-version/package-version.js.map +1 -0
  258. package/dist/entities/package-version/package-version.test.d.ts +2 -0
  259. package/dist/entities/package-version/package-version.test.d.ts.map +1 -0
  260. package/dist/entities/package-version/package-version.test.js +113 -0
  261. package/dist/entities/package-version/package-version.test.js.map +1 -0
  262. package/dist/entities/package-version/package-version.types.d.ts +31 -0
  263. package/dist/entities/package-version/package-version.types.d.ts.map +1 -0
  264. package/dist/entities/package-version/package-version.types.js +2 -0
  265. package/dist/entities/package-version/package-version.types.js.map +1 -0
  266. package/dist/entities/tag/index.d.ts +3 -0
  267. package/dist/entities/tag/index.d.ts.map +1 -0
  268. package/dist/entities/tag/index.js +3 -0
  269. package/dist/entities/tag/index.js.map +1 -0
  270. package/dist/entities/tag/tag.d.ts +24 -0
  271. package/dist/entities/tag/tag.d.ts.map +1 -0
  272. package/dist/entities/tag/tag.js +168 -0
  273. package/dist/entities/tag/tag.js.map +1 -0
  274. package/dist/entities/tag/tag.test.d.ts +2 -0
  275. package/dist/entities/tag/tag.test.d.ts.map +1 -0
  276. package/dist/entities/tag/tag.test.js +638 -0
  277. package/dist/entities/tag/tag.test.js.map +1 -0
  278. package/dist/entities/tag/tag.types.d.ts +35 -0
  279. package/dist/entities/tag/tag.types.d.ts.map +1 -0
  280. package/dist/entities/tag/tag.types.js +2 -0
  281. package/dist/entities/tag/tag.types.js.map +1 -0
  282. package/dist/index.d.ts +3 -0
  283. package/dist/index.d.ts.map +1 -0
  284. package/dist/index.js +6 -0
  285. package/dist/index.js.map +1 -0
  286. package/package.json +73 -0
  287. package/src/commands/ci/act.ts +95 -0
  288. package/src/commands/ci/attach-affected.ts +93 -0
  289. package/src/commands/ci/attach-service-ports.ts +31 -0
  290. package/src/commands/commit-check.ts +124 -0
  291. package/src/commands/commit.ts +103 -0
  292. package/src/commands/dev/check.ts +117 -0
  293. package/src/commands/dev/cleanup.ts +34 -0
  294. package/src/commands/dev/rm.ts +66 -0
  295. package/src/commands/dev/setup.ts +48 -0
  296. package/src/commands/local/cleanup.ts +74 -0
  297. package/src/commands/local/setup.ts +68 -0
  298. package/src/commands/local/vscode.ts +118 -0
  299. package/src/commands/update-package-json.ts +104 -0
  300. package/src/commands/version/apply.ts +156 -0
  301. package/src/commands/version/ci.ts +85 -0
  302. package/src/commands/version/prepare.ts +217 -0
  303. package/src/core/colorify.ts +61 -0
  304. package/src/core/index.ts +3 -0
  305. package/src/core/types.ts +262 -0
  306. package/src/core/wrapshell.ts +388 -0
  307. package/src/entities/affected/affected.test.ts +427 -0
  308. package/src/entities/affected/affected.ts +22 -0
  309. package/src/entities/affected/index.ts +1 -0
  310. package/src/entities/branch/branch.test.ts +348 -0
  311. package/src/entities/branch/branch.ts +89 -0
  312. package/src/entities/branch/branch.types.ts +5 -0
  313. package/src/entities/branch/index.ts +2 -0
  314. package/src/entities/commit/commit.test.ts +769 -0
  315. package/src/entities/commit/commit.ts +245 -0
  316. package/src/entities/commit/commit.types.ts +81 -0
  317. package/src/entities/commit/index.ts +2 -0
  318. package/src/entities/commit/pr.test.ts +860 -0
  319. package/src/entities/commit/pr.ts +241 -0
  320. package/src/entities/compose/compose.test.ts +496 -0
  321. package/src/entities/compose/compose.ts +251 -0
  322. package/src/entities/compose/compose.types.ts +88 -0
  323. package/src/entities/compose/index.ts +2 -0
  324. package/src/entities/entities.shell.test.ts +35 -0
  325. package/src/entities/entities.shell.ts +81 -0
  326. package/src/entities/index.ts +11 -0
  327. package/src/entities/intershell-config/intershell-config.default.ts +229 -0
  328. package/src/entities/intershell-config/intershell-config.test.ts +117 -0
  329. package/src/entities/intershell-config/intershell-config.ts +143 -0
  330. package/src/entities/intershell-config/intershell-config.types.ts +118 -0
  331. package/src/entities/package/index.ts +3 -0
  332. package/src/entities/package/package.shell.ts +124 -0
  333. package/src/entities/package/package.test.ts +830 -0
  334. package/src/entities/package/package.ts +267 -0
  335. package/src/entities/package/package.types.ts +49 -0
  336. package/src/entities/package-changelog/index.ts +3 -0
  337. package/src/entities/package-changelog/package-changelog.ts +81 -0
  338. package/src/entities/package-changelog/package-changelog.types.ts +30 -0
  339. package/src/entities/package-changelog/template.default.ts +109 -0
  340. package/src/entities/package-changelog/template.ts +118 -0
  341. package/src/entities/package-commits/dependency-analyzer.test.ts +29 -0
  342. package/src/entities/package-commits/dependency-analyzer.ts +194 -0
  343. package/src/entities/package-commits/index.ts +2 -0
  344. package/src/entities/package-commits/package-commits.test.ts +44 -0
  345. package/src/entities/package-commits/package-commits.ts +191 -0
  346. package/src/entities/package-tags/index.ts +1 -0
  347. package/src/entities/package-tags/package-tags.test.ts +73 -0
  348. package/src/entities/package-tags/package-tags.ts +234 -0
  349. package/src/entities/package-version/index.ts +2 -0
  350. package/src/entities/package-version/package-version.test.ts +141 -0
  351. package/src/entities/package-version/package-version.ts +234 -0
  352. package/src/entities/package-version/package-version.types.ts +35 -0
  353. package/src/entities/tag/index.ts +2 -0
  354. package/src/entities/tag/tag.test.ts +844 -0
  355. package/src/entities/tag/tag.ts +208 -0
  356. package/src/entities/tag/tag.types.ts +37 -0
  357. package/src/index.ts +7 -0
@@ -0,0 +1,11 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class LocalSetup extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ "skip-vscode": import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ "skip-tests": import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
+ };
9
+ run(): Promise<void>;
10
+ }
11
+ //# sourceMappingURL=setup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../../src/commands/local/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAI7C,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAC9C,MAAM,CAAC,WAAW,SACyG;IAE3H,MAAM,CAAC,QAAQ,WAIb;IAEF,MAAM,CAAC,KAAK;;;MAWV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAwC1B"}
@@ -0,0 +1,55 @@
1
+ import { Command, Flags } from "@oclif/core";
2
+ import { $ } from "bun";
3
+ import { colorify } from "../../core";
4
+ export default class LocalSetup extends Command {
5
+ static description = "Complete local development environment setup with dependency installation, local builds, and VS Code configuration sync";
6
+ static examples = [
7
+ "intershell local:setup",
8
+ "intershell local:setup --skip-vscode",
9
+ "intershell local:setup --skip-tests",
10
+ ];
11
+ static flags = {
12
+ "skip-vscode": Flags.boolean({
13
+ char: "v",
14
+ description: "Skip VS Code configuration sync",
15
+ default: false,
16
+ }),
17
+ "skip-tests": Flags.boolean({
18
+ char: "t",
19
+ description: "Skip running tests",
20
+ default: false,
21
+ }),
22
+ };
23
+ async run() {
24
+ const { flags } = await this.parse(LocalSetup);
25
+ this.log(colorify.blue("šŸš€ Starting local development setup..."));
26
+ // Step 1: Install dependencies
27
+ this.log(colorify.blue("šŸ“¦ Installing dependencies..."));
28
+ await $ `bun install`;
29
+ // Step 2: Run code quality checks
30
+ this.log(colorify.blue("šŸ” Running code quality checks..."));
31
+ await $ `bun run check:fix`;
32
+ // Step 3: Type checking
33
+ this.log(colorify.blue("šŸ” Running type checks..."));
34
+ await $ `bun run check:types`;
35
+ // Step 4: Run tests (unless skipped)
36
+ if (!flags["skip-tests"]) {
37
+ this.log(colorify.blue("🧪 Running tests..."));
38
+ await $ `bun run test`;
39
+ }
40
+ // Step 5: Build all packages
41
+ this.log(colorify.blue("šŸ—ļø Building all packages..."));
42
+ await $ `bun run build`;
43
+ // Step 6: Sync VS Code configuration (unless skipped)
44
+ if (!flags["skip-vscode"]) {
45
+ this.log(colorify.blue("šŸŽÆ Syncing VS Code configuration..."));
46
+ await $ `bun run local:vscode`;
47
+ }
48
+ this.log(colorify.green("āœ… Local setup completed successfully!"));
49
+ this.log(colorify.cyan("\nšŸ’” Useful commands:"));
50
+ this.log(colorify.cyan(" - bun run check:quick # Quick verification"));
51
+ this.log(colorify.cyan(" - intershell dev:setup # Setup DevContainer environment"));
52
+ this.log(colorify.cyan(" - intershell local:cleanup # Clean everything"));
53
+ }
54
+ }
55
+ //# sourceMappingURL=setup.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../../src/commands/local/setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,OAAO;IAC9C,MAAM,CAAC,WAAW,GACjB,yHAAyH,CAAC;IAE3H,MAAM,CAAC,QAAQ,GAAG;QACjB,wBAAwB;QACxB,sCAAsC;QACtC,qCAAqC;KACrC,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACd,aAAa,EAAE,KAAK,CAAC,OAAO,CAAC;YAC5B,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,iCAAiC;YAC9C,OAAO,EAAE,KAAK;SACd,CAAC;QACF,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC;YAC3B,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,oBAAoB;YACjC,OAAO,EAAE,KAAK;SACd,CAAC;KACF,CAAC;IAEF,KAAK,CAAC,GAAG;QACR,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAE/C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAElE,+BAA+B;QAC/B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC,CAAC;QACzD,MAAM,CAAC,CAAA,aAAa,CAAC;QAErB,kCAAkC;QAClC,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAC7D,MAAM,CAAC,CAAA,mBAAmB,CAAC;QAE3B,wBAAwB;QACxB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;QACrD,MAAM,CAAC,CAAA,qBAAqB,CAAC;QAE7B,qCAAqC;QACrC,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;YAC/C,MAAM,CAAC,CAAA,cAAc,CAAC;QACvB,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC,CAAC;QACxD,MAAM,CAAC,CAAA,eAAe,CAAC;QAEvB,sDAAsD;QACtD,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;YAC/D,MAAM,CAAC,CAAA,sBAAsB,CAAC;QAC/B,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;QAElE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,CAAC;QACjD,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC,CAAC;QACvE,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC,CAAC;QACpF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC,CAAC;IAC3E,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class LocalVscode extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ "dry-run": import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ "extensions-only": import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
+ "settings-only": import("@oclif/core/interfaces").BooleanFlag<boolean>;
9
+ quiet: import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ /**
12
+ * Log a message only if not in quiet mode
13
+ */
14
+ private logQuiet;
15
+ run(): Promise<void>;
16
+ }
17
+ //# sourceMappingURL=vscode.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vscode.d.ts","sourceRoot":"","sources":["../../../src/commands/local/vscode.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAI7C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,OAAO;IAC/C,MAAM,CAAC,WAAW,SAC0E;IAE5F,MAAM,CAAC,QAAQ,WAMb;IAEF,MAAM,CAAC,KAAK;;;;;MAiBV;IAEF;;OAEG;IACH,OAAO,CAAC,QAAQ;IAMV,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CA6D1B"}
@@ -0,0 +1,94 @@
1
+ import { exists, mkdir } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+ import { Command, Flags } from "@oclif/core";
4
+ import { $ } from "bun";
5
+ import { EntityPackage } from "../../entities";
6
+ export default class LocalVscode extends Command {
7
+ static description = "Synchronize VS Code extensions and settings from devcontainer.json to .vscode/ directory";
8
+ static examples = [
9
+ "intershell local:vscode",
10
+ "intershell local:vscode --dry-run",
11
+ "intershell local:vscode --extensions-only",
12
+ "intershell local:vscode --settings-only",
13
+ "intershell local:vscode --quiet",
14
+ ];
15
+ static flags = {
16
+ "dry-run": Flags.boolean({
17
+ description: "Show what would be synced without making changes",
18
+ default: false,
19
+ }),
20
+ "extensions-only": Flags.boolean({
21
+ description: "Only sync extensions",
22
+ default: false,
23
+ }),
24
+ "settings-only": Flags.boolean({
25
+ description: "Only sync settings",
26
+ default: false,
27
+ }),
28
+ quiet: Flags.boolean({
29
+ description: "Suppress all output except errors",
30
+ default: false,
31
+ }),
32
+ };
33
+ /**
34
+ * Log a message only if not in quiet mode
35
+ */
36
+ logQuiet(message, quiet) {
37
+ if (!quiet) {
38
+ this.log(message);
39
+ }
40
+ }
41
+ async run() {
42
+ const { flags } = await this.parse(LocalVscode);
43
+ this.logQuiet("šŸ”„ Syncing VS Code configuration from devcontainer.json...", flags.quiet);
44
+ const scopes = await EntityPackage.getAllPackages();
45
+ this.logQuiet(`šŸ“‹ Generated scopes: ${scopes.join(", ")}`, flags.quiet);
46
+ const { customizations: { vscode: { extensions: recommendations = [], settings = {} } = {} } = {}, } = JSON.parse(stripComments(await Bun.file(join(process.cwd(), ".devcontainer", "devcontainer.json")).text()));
47
+ // Update settings with generated scopes
48
+ const updatedSettings = {
49
+ ...settings,
50
+ "conventionalCommits.scopes": scopes,
51
+ };
52
+ const settingsConfigString = JSON.stringify(updatedSettings, null, 2);
53
+ const extensionsConfigString = JSON.stringify({ recommendations }, null, 2);
54
+ if (flags["dry-run"]) {
55
+ this.logQuiet("šŸ” Dry run mode - showing what would be synced:", flags.quiet);
56
+ this.logQuiet(`šŸ“¦ Extensions:\n${extensionsConfigString}`, flags.quiet);
57
+ this.logQuiet(`āš™ļø Settings:\n${settingsConfigString}`, flags.quiet);
58
+ return;
59
+ }
60
+ // Update devcontainer.json with new scopes
61
+ const devcontainerPath = join(process.cwd(), ".devcontainer", "devcontainer.json");
62
+ const devcontainerContent = JSON.parse(stripComments(await Bun.file(devcontainerPath).text()));
63
+ // Update the scopes in devcontainer.json
64
+ devcontainerContent.customizations.vscode.settings["conventionalCommits.scopes"] = scopes;
65
+ // Write back the updated devcontainer.json
66
+ await Bun.write(devcontainerPath, JSON.stringify(devcontainerContent, null, 2));
67
+ await $ `bun run biome check --write ${devcontainerPath}`;
68
+ this.logQuiet(`āœ… Updated ${devcontainerPath} with new scopes!`, flags.quiet);
69
+ const vscodeDir = join(process.cwd(), ".vscode");
70
+ if (!(await exists(vscodeDir)))
71
+ await mkdir(vscodeDir, { recursive: true });
72
+ const extensionsPath = join(vscodeDir, "extensions.json");
73
+ const settingsPath = join(vscodeDir, "settings.json");
74
+ if (!flags["settings-only"]) {
75
+ await Bun.write(extensionsPath, extensionsConfigString);
76
+ this.logQuiet(`āœ… Updated ${extensionsPath}!`, flags.quiet);
77
+ }
78
+ if (!flags["extensions-only"]) {
79
+ await Bun.write(settingsPath, settingsConfigString);
80
+ this.logQuiet(`āœ… Updated ${settingsPath}!`, flags.quiet);
81
+ }
82
+ this.logQuiet("āœ… VS Code configuration synced successfully!", flags.quiet);
83
+ }
84
+ }
85
+ /**
86
+ * Strip comments from JSON content
87
+ */
88
+ function stripComments(content) {
89
+ return content
90
+ .replace(/\/\/[^\r\n]*/g, "")
91
+ .replace(/\/\*[^*]*\*+(?:[^/*][^*]*\*+)*\//g, "")
92
+ .replace(/^\s*[\r\n]/gm, "");
93
+ }
94
+ //# sourceMappingURL=vscode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vscode.js","sourceRoot":"","sources":["../../../src/commands/local/vscode.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class UpdatePackageJson extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ src: import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ "dry-run": import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
+ };
9
+ run(): Promise<void>;
10
+ private getNewExports;
11
+ }
12
+ //# sourceMappingURL=update-package-json.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-package-json.d.ts","sourceRoot":"","sources":["../../src/commands/update-package-json.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAI7C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,OAAO;IACrD,MAAM,CAAC,WAAW,SAC8D;IAEhF,MAAM,CAAC,QAAQ,WAAsC;IAErD,MAAM,CAAC,KAAK;;;MAWV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAiCZ,aAAa;CA6C3B"}
@@ -0,0 +1,82 @@
1
+ import { readdir } from "node:fs/promises";
2
+ import path from "node:path";
3
+ import { Command, Flags } from "@oclif/core";
4
+ import { $ } from "bun";
5
+ import { colorify } from "../core";
6
+ export default class UpdatePackageJson extends Command {
7
+ static description = "Update the package.json exports attributes based on the files in the package";
8
+ static examples = ["intershell update-package-json"];
9
+ static flags = {
10
+ src: Flags.boolean({
11
+ char: "s",
12
+ description: "Are you using src directory? (default: true)",
13
+ default: true,
14
+ }),
15
+ "dry-run": Flags.boolean({
16
+ char: "d",
17
+ description: "Show what would be updated without making changes",
18
+ default: false,
19
+ }),
20
+ };
21
+ async run() {
22
+ const { flags } = await this.parse(UpdatePackageJson);
23
+ this.log(colorify.blue("🧹 Starting package.json update..."));
24
+ const packageJsonPath = path.join(process.cwd(), "package.json");
25
+ const packageDir = path.dirname(packageJsonPath);
26
+ const srcDir = flags.src ? path.join(packageDir, "src") : packageDir;
27
+ const files = await readdir(srcDir, {
28
+ withFileTypes: true,
29
+ recursive: false,
30
+ });
31
+ this.log(colorify.blue(`šŸ” Found ${files.length} exportable modules:`), colorify.cyan(files.map((f) => f.name).join(" ")));
32
+ const newExports = await this.getNewExports(files, srcDir, packageDir);
33
+ if (flags["dry-run"]) {
34
+ this.log(colorify.yellow("šŸ” Dry run mode, skipping write:"));
35
+ this.log(JSON.stringify(newExports, null, 2));
36
+ return;
37
+ }
38
+ const packageJson = JSON.parse(await Bun.file(packageJsonPath).text());
39
+ packageJson.exports = newExports;
40
+ await Bun.write(packageJsonPath, JSON.stringify(packageJson, null, 2));
41
+ await $ `bun biome check --write --no-errors-on-unmatched ${packageJsonPath}`;
42
+ this.log(colorify.green("āœ… Package.json updated successfully"));
43
+ }
44
+ async getNewExports(files, srcDir, packageDir) {
45
+ const newExports = {};
46
+ for (const file of files) {
47
+ if (file.isDirectory()) {
48
+ const indexFile = path.join(srcDir, file.name, "index.ts");
49
+ const indexTsxFile = path.join(srcDir, file.name, "index.tsx");
50
+ const sameNameFile = path.join(srcDir, file.name, `${file.name}.ts`);
51
+ const sameNameTsxFile = path.join(srcDir, file.name, `${file.name}.tsx`);
52
+ if (await Bun.file(indexFile).exists()) {
53
+ newExports[`./${file.name}`] = `./${path.relative(packageDir, indexFile)}`;
54
+ }
55
+ else if (await Bun.file(indexTsxFile).exists()) {
56
+ newExports[`./${file.name}`] = `./${path.relative(packageDir, indexTsxFile)}`;
57
+ }
58
+ else if (await Bun.file(sameNameFile).exists()) {
59
+ newExports[`./${file.name}`] = `./${path.relative(packageDir, sameNameFile)}`;
60
+ }
61
+ else if (await Bun.file(sameNameTsxFile).exists()) {
62
+ newExports[`./${file.name}`] = `./${path.relative(packageDir, sameNameTsxFile)}`;
63
+ }
64
+ continue;
65
+ }
66
+ const shouldSkip = !file.name.endsWith(".ts") && !file.name.endsWith(".tsx");
67
+ if (shouldSkip)
68
+ continue;
69
+ if (file.name === "index.ts") {
70
+ newExports["."] = "./index.ts";
71
+ continue;
72
+ }
73
+ const mainFile = path.join(srcDir, file.name);
74
+ const relativePath = `./${path.relative(packageDir, mainFile)}`;
75
+ if (await Bun.file(mainFile).exists()) {
76
+ newExports[`./${file.name}`] = relativePath;
77
+ }
78
+ }
79
+ return newExports;
80
+ }
81
+ }
82
+ //# sourceMappingURL=update-package-json.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update-package-json.js","sourceRoot":"","sources":["../../src/commands/update-package-json.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class VersionApply extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ package: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
7
+ message: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ "no-push": import("@oclif/core/interfaces").BooleanFlag<boolean>;
9
+ "dry-run": import("@oclif/core/interfaces").BooleanFlag<boolean>;
10
+ };
11
+ run(): Promise<void>;
12
+ private commitVersionChanges;
13
+ private createTagsForPackage;
14
+ private pushChanges;
15
+ }
16
+ //# sourceMappingURL=apply.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.d.ts","sourceRoot":"","sources":["../../../src/commands/version/apply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAChD,MAAM,CAAC,WAAW,SAAwD;IAE1E,MAAM,CAAC,QAAQ,WAIb;IAEF,MAAM,CAAC,KAAK;;;;;MAmBV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YA4CZ,oBAAoB;YAapB,oBAAoB;YA0CpB,WAAW;CAqBzB"}
@@ -0,0 +1,120 @@
1
+ import { Command, Flags } from "@oclif/core";
2
+ import { $ } from "bun";
3
+ import { colorify } from "../../core";
4
+ import { EntityPackage, EntityPackageTags } from "../../entities";
5
+ export default class VersionApply extends Command {
6
+ static description = "Create git version tags and commit version changes";
7
+ static examples = [
8
+ "intershell version:apply",
9
+ "intershell version:apply --message 'Release version 1.2.3'",
10
+ "intershell version:apply --no-push",
11
+ ];
12
+ static flags = {
13
+ package: Flags.string({
14
+ char: "p",
15
+ description: "Package name to process (default: all packages)",
16
+ }),
17
+ message: Flags.string({
18
+ char: "m",
19
+ description: "Tag message",
20
+ }),
21
+ "no-push": Flags.boolean({
22
+ char: "n",
23
+ description: "Don't push tag to remote after creation",
24
+ default: false,
25
+ }),
26
+ "dry-run": Flags.boolean({
27
+ char: "d",
28
+ description: "Show planned changes without applying them",
29
+ default: false,
30
+ }),
31
+ };
32
+ async run() {
33
+ const { flags } = await this.parse(VersionApply);
34
+ const packageName = flags.package || "root";
35
+ this.log(`šŸ“¦ Processing package: ${colorify.blue(packageName)}`);
36
+ const packageInstance = new EntityPackage(packageName);
37
+ const version = packageInstance.readVersion();
38
+ const tagSeriesName = packageInstance.getTagSeriesName();
39
+ const tagName = `${tagSeriesName}${version}`;
40
+ if (!tagSeriesName) {
41
+ throw new Error(`Tag series name not found for ${packageName}, this package should not be versioned (private package). Only versioned packages can be processed.`);
42
+ }
43
+ if (flags["dry-run"]) {
44
+ this.log(colorify.yellow("šŸ” Dry run mode - would execute:"));
45
+ this.log(colorify.gray(` • Commit version changes for package ${packageName}`));
46
+ this.log(colorify.gray(` • Create tag ${tagName} for ${packageName}`));
47
+ if (!flags["no-push"]) {
48
+ this.log(colorify.gray(" • Push commit changes to remote"));
49
+ this.log(colorify.gray(" • Push tags to remote"));
50
+ }
51
+ return;
52
+ }
53
+ this.log("šŸ“ Adding all changes...");
54
+ await $ `git add .`;
55
+ const statusResult = await $ `git status --porcelain`.nothrow();
56
+ const hasChanges = statusResult.text().trim() !== "";
57
+ if (!hasChanges) {
58
+ this.log(colorify.yellow("āš ļø No changes to commit"));
59
+ return;
60
+ }
61
+ await this.commitVersionChanges();
62
+ await this.createTagsForPackage(packageName, flags);
63
+ await this.pushChanges(flags);
64
+ this.log(colorify.green("āœ… Version apply operation completed successfully!"));
65
+ }
66
+ async commitVersionChanges() {
67
+ const commitMessage = await Bun.file(".git/COMMIT_EDITMSG").text();
68
+ this.log("šŸ“ Commit message:");
69
+ this.log(commitMessage);
70
+ await $ `git commit -m "${commitMessage}"`;
71
+ this.log(colorify.green("āœ… Successfully committed version changes"));
72
+ const commitHash = await $ `git rev-parse --short HEAD`.text();
73
+ this.log(`šŸ·ļø Commit hash: ${commitHash.trim()}`);
74
+ }
75
+ async createTagsForPackage(packageName, flags) {
76
+ const packageInstance = new EntityPackage(packageName);
77
+ const version = packageInstance.readVersion();
78
+ if (!version) {
79
+ throw new Error(`Version not found for ${packageName}`);
80
+ }
81
+ const packageTags = new EntityPackageTags(packageInstance);
82
+ // Check if tag already exists
83
+ const tagExists = await packageTags.packageTagExists(version);
84
+ if (tagExists) {
85
+ const prefix = await packageTags.getTagPrefix();
86
+ const tagName = `${prefix}${version}`;
87
+ this.log(`ā­ļø Tag already exists: ${tagName}`);
88
+ return;
89
+ }
90
+ this.log(`šŸ·ļø Creating tag for ${packageName}: ${version}`);
91
+ try {
92
+ await packageTags.createPackageTag(version, flags.message || `Release ${packageName} version ${version}`);
93
+ const prefix = await packageTags.getTagPrefix();
94
+ const tagName = `${prefix}${version}`;
95
+ this.log(`āœ… Created tag: ${tagName}`);
96
+ }
97
+ catch (error) {
98
+ throw new Error(`Failed to create tag for ${packageName}: ${error instanceof Error ? error.message : String(error)}`);
99
+ }
100
+ }
101
+ async pushChanges(flags) {
102
+ if (flags["no-push"]) {
103
+ this.log(colorify.yellow("āš ļø Skipping push (--no-push specified)"));
104
+ return;
105
+ }
106
+ if (flags["dry-run"]) {
107
+ this.log(colorify.yellow("āš ļø Skipping push (--dry-run specified)"));
108
+ return;
109
+ }
110
+ try {
111
+ this.log("šŸ“¤ Pushing commit changes to remote...");
112
+ await $ `git push --follow-tags`;
113
+ this.log("āœ… Pushed commit changes to remote");
114
+ }
115
+ catch (error) {
116
+ throw new Error(`Failed to push commit changes to remote: ${error instanceof Error ? error.message : String(error)}`);
117
+ }
118
+ }
119
+ }
120
+ //# sourceMappingURL=apply.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"apply.js","sourceRoot":"","sources":["../../../src/commands/version/apply.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAElE,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAAO;IAChD,MAAM,CAAC,WAAW,GAAG,oDAAoD,CAAC;IAE1E,MAAM,CAAC,QAAQ,GAAG;QACjB,0BAA0B;QAC1B,4DAA4D;QAC5D,oCAAoC;KACpC,CAAC;IAEF,MAAM,CAAC,KAAK,GAAG;QACd,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,iDAAiD;SAC9D,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC;YACrB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,aAAa;SAC1B,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACxB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,yCAAyC;YACtD,OAAO,EAAE,KAAK;SACd,CAAC;QACF,SAAS,EAAE,KAAK,CAAC,OAAO,CAAC;YACxB,IAAI,EAAE,GAAG;YACT,WAAW,EAAE,4CAA4C;YACzD,OAAO,EAAE,KAAK;SACd,CAAC;KACF,CAAC;IAEF,KAAK,CAAC,GAAG;QACR,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO,IAAI,MAAM,CAAC;QAC5C,IAAI,CAAC,GAAG,CAAC,0BAA0B,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAEjE,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC9C,MAAM,aAAa,GAAG,eAAe,CAAC,gBAAgB,EAAE,CAAC;QACzD,MAAM,OAAO,GAAG,GAAG,aAAa,GAAG,OAAO,EAAE,CAAC;QAE7C,IAAI,CAAC,aAAa,EAAE,CAAC;YACpB,MAAM,IAAI,KAAK,CACd,iCAAiC,WAAW,qGAAqG,CACjJ,CAAC;QACH,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,kCAAkC,CAAC,CAAC,CAAC;YAC9D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,0CAA0C,WAAW,EAAE,CAAC,CAAC,CAAC;YACjF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,OAAO,QAAQ,WAAW,EAAE,CAAC,CAAC,CAAC;YACxE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;gBAC7D,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;YACpD,CAAC;YACD,OAAO;QACR,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,0BAA0B,CAAC,CAAC;QACrC,MAAM,CAAC,CAAA,WAAW,CAAC;QACnB,MAAM,YAAY,GAAG,MAAM,CAAC,CAAA,wBAAwB,CAAC,OAAO,EAAE,CAAC;QAC/D,MAAM,UAAU,GAAG,YAAY,CAAC,IAAI,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QAErD,IAAI,CAAC,UAAU,EAAE,CAAC;YACjB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC,CAAC;YACrD,OAAO;QACR,CAAC;QAED,MAAM,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAClC,MAAM,IAAI,CAAC,oBAAoB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;QACpD,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAE9B,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,mDAAmD,CAAC,CAAC,CAAC;IAC/E,CAAC;IAEO,KAAK,CAAC,oBAAoB;QACjC,MAAM,aAAa,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,IAAI,EAAE,CAAC;QAEnE,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;QAC/B,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAExB,MAAM,CAAC,CAAA,kBAAkB,aAAa,GAAG,CAAC;QAE1C,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC,CAAC;QACrE,MAAM,UAAU,GAAG,MAAM,CAAC,CAAA,4BAA4B,CAAC,IAAI,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,oBAAoB,UAAU,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,oBAAoB,CACjC,WAAmB,EACnB,KAIC;QAED,MAAM,eAAe,GAAG,IAAI,aAAa,CAAC,WAAW,CAAC,CAAC;QACvD,MAAM,OAAO,GAAG,eAAe,CAAC,WAAW,EAAE,CAAC;QAC9C,IAAI,CAAC,OAAO,EAAE,CAAC;YACd,MAAM,IAAI,KAAK,CAAC,yBAAyB,WAAW,EAAE,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,iBAAiB,CAAC,eAAe,CAAC,CAAC;QAE3D,8BAA8B;QAC9B,MAAM,SAAS,GAAG,MAAM,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC9D,IAAI,SAAS,EAAE,CAAC;YACf,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,GAAG,MAAM,GAAG,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,0BAA0B,OAAO,EAAE,CAAC,CAAC;YAC9C,OAAO;QACR,CAAC;QAED,IAAI,CAAC,GAAG,CAAC,wBAAwB,WAAW,KAAK,OAAO,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC;YACJ,MAAM,WAAW,CAAC,gBAAgB,CACjC,OAAO,EACP,KAAK,CAAC,OAAO,IAAI,WAAW,WAAW,YAAY,OAAO,EAAE,CAC5D,CAAC;YAEF,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,YAAY,EAAE,CAAC;YAChD,MAAM,OAAO,GAAG,GAAG,MAAM,GAAG,OAAO,EAAE,CAAC;YACtC,IAAI,CAAC,GAAG,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACvC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACd,4BAA4B,WAAW,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACpG,CAAC;QACH,CAAC;IACF,CAAC;IAEO,KAAK,CAAC,WAAW,CAAC,KAAmD;QAC5E,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC;YACpE,OAAO;QACR,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,wCAAwC,CAAC,CAAC,CAAC;YACpE,OAAO;QACR,CAAC;QAED,IAAI,CAAC;YACJ,IAAI,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;YACnD,MAAM,CAAC,CAAA,wBAAwB,CAAC;YAChC,IAAI,CAAC,GAAG,CAAC,mCAAmC,CAAC,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,KAAK,CACd,4CAA4C,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CACpG,CAAC;QACH,CAAC;IACF,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class VersionCi extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ "no-push": import("@oclif/core/interfaces").BooleanFlag<boolean>;
7
+ "dry-run": import("@oclif/core/interfaces").BooleanFlag<boolean>;
8
+ };
9
+ run(): Promise<void>;
10
+ private configureGitAuth;
11
+ }
12
+ //# sourceMappingURL=ci.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci.d.ts","sourceRoot":"","sources":["../../../src/commands/version/ci.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAK7C,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,OAAO;IAC7C,MAAM,CAAC,WAAW,SAA6D;IAE/E,MAAM,CAAC,QAAQ,WAIb;IAEF,MAAM,CAAC,KAAK;;;MAWV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;YAsBZ,gBAAgB;CAmC9B"}
@@ -0,0 +1,67 @@
1
+ import { Command, Flags } from "@oclif/core";
2
+ import { $ } from "bun";
3
+ import { colorify } from "../../core";
4
+ import { EntityTag } from "../../entities";
5
+ export default class VersionCi extends Command {
6
+ static description = "Complete CI versioning workflow: auth → prepare → apply";
7
+ static examples = [
8
+ "intershell version:ci",
9
+ "intershell version:ci --dry-run",
10
+ "intershell version:ci --no-push",
11
+ ];
12
+ static flags = {
13
+ "no-push": Flags.boolean({
14
+ char: "n",
15
+ description: "Don't push tag to remote after creation",
16
+ default: false,
17
+ }),
18
+ "dry-run": Flags.boolean({
19
+ char: "d",
20
+ description: "Show planned changes without applying them",
21
+ default: false,
22
+ }),
23
+ };
24
+ async run() {
25
+ const { flags } = await this.parse(VersionCi);
26
+ this.log("šŸš€ Starting CI version workflow...");
27
+ await this.configureGitAuth(flags);
28
+ const fromTag = await EntityTag.getBaseCommitSha();
29
+ this.log(`šŸ“ Using base commit: ${colorify.blue(fromTag)}`);
30
+ this.log("\nšŸ”§ Preparing versions...");
31
+ // Note: In a real implementation, you would call the prepare command here
32
+ // For now, we'll just show what would happen
33
+ this.log(`šŸ“ Would run: intershell version:prepare --from ${fromTag}`);
34
+ this.log("\nšŸš€ Applying version changes...");
35
+ // Note: In a real implementation, you would call the apply command here
36
+ // For now, we'll just show what would happen
37
+ this.log(`šŸ“ Would run: intershell version:apply${flags["no-push"] ? " --no-push" : ""}`);
38
+ this.log(colorify.green("\nāœ… CI version workflow completed successfully!"));
39
+ }
40
+ async configureGitAuth(flags) {
41
+ this.log("šŸ” Configuring Git authentication...");
42
+ if (flags["dry-run"]) {
43
+ this.log("-> šŸ” Dry run, skipping git config");
44
+ return;
45
+ }
46
+ if (!process.env.GITHUB_ACTIONS) {
47
+ this.log("-> šŸ” Running locally, skip git config");
48
+ return;
49
+ }
50
+ if (!process.env.GITHUB_REPOSITORY) {
51
+ this.log("-> āš ļø GITHUB_REPOSITORY not found");
52
+ return;
53
+ }
54
+ if (!process.env.GITHUB_TOKEN) {
55
+ this.log("-> āš ļø GITHUB_TOKEN not found");
56
+ return;
57
+ }
58
+ this.log("-> šŸ” Configuring Git authentication...");
59
+ await $ `git config user.name "github-actions[bot]"`;
60
+ await $ `git config user.email "github-actions[bot]@users.noreply.github.com"`;
61
+ await $ `git remote set-url origin https://x-access-token:${process.env.GITHUB_TOKEN}@github.com/${process.env.GITHUB_REPOSITORY}.git`;
62
+ const actualRemoteUrl = await $ `git remote get-url origin`.text();
63
+ const maskedUrl = actualRemoteUrl.replace(/https:\/\/x-access-token:[^@]+@/, "***@");
64
+ this.log(`-> šŸ”— Git authentication configured, remote URL: ${maskedUrl}`);
65
+ }
66
+ }
67
+ //# sourceMappingURL=ci.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ci.js","sourceRoot":"","sources":["../../../src/commands/version/ci.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ import { Command } from "@oclif/core";
2
+ export default class VersionPrepare extends Command {
3
+ static description: string;
4
+ static examples: string[];
5
+ static flags: {
6
+ package: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
7
+ from: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
8
+ to: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
9
+ "from-version": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
10
+ "to-version": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
11
+ "bump-type": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
12
+ };
13
+ run(): Promise<void>;
14
+ /**
15
+ * Resolves from/to commits, handling version-to-tag conversion when needed
16
+ */
17
+ private resolveCommitRange;
18
+ }
19
+ //# sourceMappingURL=prepare.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prepare.d.ts","sourceRoot":"","sources":["../../../src/commands/version/prepare.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAS,MAAM,aAAa,CAAC;AAiB7C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,OAAO;IAClD,MAAM,CAAC,WAAW,SAAgE;IAElF,MAAM,CAAC,QAAQ,WAQb;IAEF,MAAM,CAAC,KAAK;;;;;;;MA0BV;IAEI,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IAmH1B;;OAEG;YACW,kBAAkB;CAuChC"}