@mytechtoday/augment-extensions 1.7.0 → 2.2.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 (440) hide show
  1. package/README.md +119 -8
  2. package/augment-extensions/coding-standards/bash/CHANGELOG.md +51 -0
  3. package/augment-extensions/coding-standards/bash/metadata.json +21 -0
  4. package/augment-extensions/coding-standards/c/metadata.json +50 -0
  5. package/augment-extensions/coding-standards/css/CHANGELOG.md +51 -0
  6. package/augment-extensions/coding-standards/css/metadata.json +30 -0
  7. package/augment-extensions/coding-standards/go/CHANGELOG.md +51 -0
  8. package/augment-extensions/coding-standards/go/metadata.json +57 -0
  9. package/augment-extensions/coding-standards/html/CHANGELOG.md +51 -0
  10. package/augment-extensions/coding-standards/html/metadata.json +25 -0
  11. package/augment-extensions/coding-standards/html-css-js/CHANGELOG.md +51 -0
  12. package/augment-extensions/coding-standards/html-css-js/metadata.json +40 -0
  13. package/augment-extensions/coding-standards/js/CHANGELOG.md +51 -0
  14. package/augment-extensions/coding-standards/js/metadata.json +37 -0
  15. package/augment-extensions/coding-standards/php/CHANGELOG.md +51 -0
  16. package/augment-extensions/coding-standards/php/metadata.json +35 -0
  17. package/augment-extensions/coding-standards/powershell/CHANGELOG.md +51 -0
  18. package/augment-extensions/coding-standards/powershell/metadata.json +33 -0
  19. package/augment-extensions/coding-standards/python/CHANGELOG.md +51 -0
  20. package/augment-extensions/coding-standards/python/metadata.json +38 -0
  21. package/augment-extensions/coding-standards/react/CHANGELOG.md +51 -0
  22. package/augment-extensions/coding-standards/react/metadata.json +31 -0
  23. package/augment-extensions/coding-standards/typescript/CHANGELOG.md +39 -0
  24. package/augment-extensions/coding-standards/typescript/README.md +248 -19
  25. package/augment-extensions/coding-standards/typescript/VERSION +2 -0
  26. package/augment-extensions/coding-standards/typescript/examples/biome.json +199 -0
  27. package/augment-extensions/coding-standards/typescript/examples/eslint-flat-config.js +166 -0
  28. package/augment-extensions/coding-standards/typescript/examples/monorepo-config/README.md +47 -0
  29. package/augment-extensions/coding-standards/typescript/examples/monorepo-config/package.json +37 -0
  30. package/augment-extensions/coding-standards/typescript/examples/monorepo-config/pnpm-workspace.yaml +5 -0
  31. package/augment-extensions/coding-standards/typescript/examples/monorepo-config/tsconfig.base.json +50 -0
  32. package/augment-extensions/coding-standards/typescript/examples/monorepo-config/turbo.json +47 -0
  33. package/augment-extensions/coding-standards/typescript/examples/vitest-setup.ts +198 -0
  34. package/augment-extensions/coding-standards/typescript/metadata.json +46 -0
  35. package/augment-extensions/coding-standards/typescript/module.json +25 -7
  36. package/augment-extensions/coding-standards/typescript/rules/architecture.md +1096 -0
  37. package/augment-extensions/coding-standards/typescript/rules/error-handling.md +1174 -0
  38. package/augment-extensions/coding-standards/typescript/rules/modern-features.md +625 -0
  39. package/augment-extensions/coding-standards/typescript/rules/monorepo.md +745 -0
  40. package/augment-extensions/coding-standards/typescript/rules/security-performance.md +850 -0
  41. package/augment-extensions/coding-standards/typescript/rules/testing.md +918 -0
  42. package/augment-extensions/coding-standards/typescript/rules/tooling.md +1071 -0
  43. package/augment-extensions/coding-standards/typescript/rules/type-patterns.md +750 -0
  44. package/augment-extensions/domain-rules/api-design/CHANGELOG.md +51 -0
  45. package/augment-extensions/domain-rules/api-design/metadata.json +32 -0
  46. package/augment-extensions/domain-rules/database/CHANGELOG.md +51 -0
  47. package/augment-extensions/domain-rules/database/metadata.json +50 -0
  48. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/CHANGELOG.md +51 -0
  49. package/augment-extensions/domain-rules/design/color/themes/catppuccin-latte/metadata.json +18 -0
  50. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/CHANGELOG.md +51 -0
  51. package/augment-extensions/domain-rules/design/color/themes/catppuccin-mocha/metadata.json +18 -0
  52. package/augment-extensions/domain-rules/design/color/themes/dracula/CHANGELOG.md +51 -0
  53. package/augment-extensions/domain-rules/design/color/themes/dracula/metadata.json +18 -0
  54. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/CHANGELOG.md +51 -0
  55. package/augment-extensions/domain-rules/design/color/themes/gruvbox-dark/metadata.json +18 -0
  56. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/CHANGELOG.md +51 -0
  57. package/augment-extensions/domain-rules/design/color/themes/gruvbox-light/metadata.json +18 -0
  58. package/augment-extensions/domain-rules/design/color/themes/high-contrast/CHANGELOG.md +51 -0
  59. package/augment-extensions/domain-rules/design/color/themes/high-contrast/metadata.json +18 -0
  60. package/augment-extensions/domain-rules/design/color/themes/monokai/CHANGELOG.md +51 -0
  61. package/augment-extensions/domain-rules/design/color/themes/monokai/metadata.json +18 -0
  62. package/augment-extensions/domain-rules/design/color/themes/nord/CHANGELOG.md +51 -0
  63. package/augment-extensions/domain-rules/design/color/themes/nord/metadata.json +18 -0
  64. package/augment-extensions/domain-rules/design/color/themes/one-dark/CHANGELOG.md +51 -0
  65. package/augment-extensions/domain-rules/design/color/themes/one-dark/metadata.json +18 -0
  66. package/augment-extensions/domain-rules/design/color/themes/one-light/CHANGELOG.md +51 -0
  67. package/augment-extensions/domain-rules/design/color/themes/one-light/metadata.json +18 -0
  68. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/CHANGELOG.md +51 -0
  69. package/augment-extensions/domain-rules/design/color/themes/solarized-dark/metadata.json +18 -0
  70. package/augment-extensions/domain-rules/design/color/themes/solarized-light/CHANGELOG.md +51 -0
  71. package/augment-extensions/domain-rules/design/color/themes/solarized-light/metadata.json +18 -0
  72. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/CHANGELOG.md +51 -0
  73. package/augment-extensions/domain-rules/design/color/themes/tokyo-night/metadata.json +18 -0
  74. package/augment-extensions/domain-rules/mcp/CHANGELOG.md +51 -0
  75. package/augment-extensions/domain-rules/mcp/metadata.json +42 -0
  76. package/augment-extensions/domain-rules/security/CHANGELOG.md +51 -0
  77. package/augment-extensions/domain-rules/security/metadata.json +33 -0
  78. package/augment-extensions/domain-rules/seo-sales-marketing/CHANGELOG.md +51 -0
  79. package/augment-extensions/domain-rules/seo-sales-marketing/metadata.json +40 -0
  80. package/augment-extensions/domain-rules/software-architecture/CHANGELOG.md +51 -0
  81. package/augment-extensions/domain-rules/software-architecture/metadata.json +55 -0
  82. package/augment-extensions/domain-rules/wordpress/CHANGELOG.md +51 -0
  83. package/augment-extensions/domain-rules/wordpress/metadata.json +42 -0
  84. package/augment-extensions/domain-rules/wordpress-plugin/CHANGELOG.md +51 -0
  85. package/augment-extensions/domain-rules/wordpress-plugin/metadata.json +70 -0
  86. package/augment-extensions/examples/design-patterns/CHANGELOG.md +51 -0
  87. package/augment-extensions/examples/design-patterns/metadata.json +29 -0
  88. package/augment-extensions/examples/gutenberg-block-plugin/CHANGELOG.md +51 -0
  89. package/augment-extensions/examples/gutenberg-block-plugin/metadata.json +26 -0
  90. package/augment-extensions/examples/rest-api-plugin/CHANGELOG.md +51 -0
  91. package/augment-extensions/examples/rest-api-plugin/metadata.json +27 -0
  92. package/augment-extensions/examples/woocommerce-extension/CHANGELOG.md +51 -0
  93. package/augment-extensions/examples/woocommerce-extension/metadata.json +27 -0
  94. package/augment-extensions/visual-design/metadata.json +34 -0
  95. package/augment-extensions/workflows/adr-support/CHANGELOG.md +51 -0
  96. package/augment-extensions/workflows/adr-support/metadata.json +41 -0
  97. package/augment-extensions/workflows/beads/CHANGELOG.md +51 -0
  98. package/augment-extensions/workflows/beads/metadata.json +23 -0
  99. package/augment-extensions/workflows/beads-integration/CHANGELOG.md +51 -0
  100. package/augment-extensions/workflows/beads-integration/metadata.json +30 -0
  101. package/augment-extensions/workflows/database/CHANGELOG.md +51 -0
  102. package/augment-extensions/workflows/database/metadata.json +30 -0
  103. package/augment-extensions/workflows/wordpress-plugin/CHANGELOG.md +51 -0
  104. package/augment-extensions/workflows/wordpress-plugin/metadata.json +41 -0
  105. package/augment-extensions/writing-standards/literature/shakespeare/CHANGELOG.md +51 -0
  106. package/augment-extensions/writing-standards/literature/shakespeare/metadata.json +60 -0
  107. package/augment-extensions/writing-standards/screenplay/CHANGELOG.md +51 -0
  108. package/augment-extensions/writing-standards/screenplay/cinematic-styles/CHANGELOG.md +51 -0
  109. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/CHANGELOG.md +51 -0
  110. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/metadata.json +24 -0
  111. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/monty-python/CHANGELOG.md +51 -0
  112. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/monty-python/metadata.json +24 -0
  113. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/saturday-night-live/CHANGELOG.md +51 -0
  114. package/augment-extensions/writing-standards/screenplay/cinematic-styles/comedy-formats/saturday-night-live/metadata.json +24 -0
  115. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/CHANGELOG.md +51 -0
  116. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/alfred-hitchcock/CHANGELOG.md +51 -0
  117. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/alfred-hitchcock/metadata.json +24 -0
  118. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/ari-aster/CHANGELOG.md +51 -0
  119. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/ari-aster/metadata.json +24 -0
  120. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brad-bird/CHANGELOG.md +51 -0
  121. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brad-bird/metadata.json +24 -0
  122. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brian-de-palma/CHANGELOG.md +51 -0
  123. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/brian-de-palma/metadata.json +24 -0
  124. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/buster-keaton/CHANGELOG.md +51 -0
  125. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/buster-keaton/metadata.json +24 -0
  126. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/christopher-nolan/CHANGELOG.md +51 -0
  127. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/christopher-nolan/metadata.json +24 -0
  128. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/clint-eastwood/CHANGELOG.md +51 -0
  129. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/clint-eastwood/metadata.json +24 -0
  130. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/coen-brothers/CHANGELOG.md +51 -0
  131. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/coen-brothers/metadata.json +24 -0
  132. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/darren-aronofsky/CHANGELOG.md +51 -0
  133. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/darren-aronofsky/metadata.json +24 -0
  134. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-fincher/CHANGELOG.md +51 -0
  135. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-fincher/metadata.json +24 -0
  136. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-lynch/CHANGELOG.md +51 -0
  137. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/david-lynch/metadata.json +24 -0
  138. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/denis-villeneuve/CHANGELOG.md +51 -0
  139. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/denis-villeneuve/metadata.json +24 -0
  140. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/francis-ford-coppola/CHANGELOG.md +51 -0
  141. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/francis-ford-coppola/metadata.json +24 -0
  142. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gary-marshall/CHANGELOG.md +51 -0
  143. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gary-marshall/metadata.json +24 -0
  144. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-a-romero/CHANGELOG.md +51 -0
  145. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-a-romero/metadata.json +24 -0
  146. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-lucas/CHANGELOG.md +51 -0
  147. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/george-lucas/metadata.json +24 -0
  148. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/guillermo-del-toro/CHANGELOG.md +51 -0
  149. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/guillermo-del-toro/metadata.json +24 -0
  150. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gus-van-sant/CHANGELOG.md +51 -0
  151. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/gus-van-sant/metadata.json +24 -0
  152. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/james-ivory-ismail-merchant/CHANGELOG.md +51 -0
  153. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/james-ivory-ismail-merchant/metadata.json +24 -0
  154. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jim-jarmusch/CHANGELOG.md +51 -0
  155. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jim-jarmusch/metadata.json +24 -0
  156. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-carpenter/CHANGELOG.md +51 -0
  157. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-carpenter/metadata.json +24 -0
  158. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-ford/CHANGELOG.md +51 -0
  159. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-ford/metadata.json +24 -0
  160. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-huston/CHANGELOG.md +51 -0
  161. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-huston/metadata.json +24 -0
  162. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-landis/CHANGELOG.md +51 -0
  163. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/john-landis/metadata.json +24 -0
  164. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jonathan-demme/CHANGELOG.md +51 -0
  165. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/jonathan-demme/metadata.json +24 -0
  166. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/joseph-l-mankiewicz/CHANGELOG.md +51 -0
  167. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/joseph-l-mankiewicz/metadata.json +24 -0
  168. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kathryn-bigelow/CHANGELOG.md +51 -0
  169. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kathryn-bigelow/metadata.json +24 -0
  170. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kelly-reichardt/CHANGELOG.md +51 -0
  171. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kelly-reichardt/metadata.json +24 -0
  172. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kevin-smith/CHANGELOG.md +51 -0
  173. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/kevin-smith/metadata.json +24 -0
  174. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/linda-shayne/CHANGELOG.md +51 -0
  175. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/linda-shayne/metadata.json +24 -0
  176. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/martin-scorsese/CHANGELOG.md +51 -0
  177. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/martin-scorsese/metadata.json +24 -0
  178. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mel-brooks/CHANGELOG.md +51 -0
  179. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mel-brooks/metadata.json +24 -0
  180. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/metadata.json +25 -0
  181. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-curtiz/CHANGELOG.md +51 -0
  182. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-curtiz/metadata.json +24 -0
  183. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-mann/CHANGELOG.md +51 -0
  184. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/michael-mann/metadata.json +24 -0
  185. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mike-nichols/CHANGELOG.md +51 -0
  186. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/mike-nichols/metadata.json +24 -0
  187. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/orson-welles/CHANGELOG.md +51 -0
  188. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/orson-welles/metadata.json +24 -0
  189. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/park-chan-wook/CHANGELOG.md +51 -0
  190. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/park-chan-wook/metadata.json +24 -0
  191. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/paul-thomas-anderson/CHANGELOG.md +51 -0
  192. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/paul-thomas-anderson/metadata.json +24 -0
  193. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/penny-marshall/CHANGELOG.md +51 -0
  194. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/penny-marshall/metadata.json +24 -0
  195. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/peter-bogdanovich/CHANGELOG.md +51 -0
  196. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/peter-bogdanovich/metadata.json +24 -0
  197. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/quentin-tarantino/CHANGELOG.md +51 -0
  198. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/quentin-tarantino/metadata.json +24 -0
  199. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/richard-linklater/CHANGELOG.md +51 -0
  200. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/richard-linklater/metadata.json +24 -0
  201. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/rob-reiner/CHANGELOG.md +51 -0
  202. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/rob-reiner/metadata.json +24 -0
  203. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-altman/CHANGELOG.md +51 -0
  204. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-altman/metadata.json +24 -0
  205. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-eggers/CHANGELOG.md +51 -0
  206. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-eggers/metadata.json +24 -0
  207. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-zemeckis/CHANGELOG.md +51 -0
  208. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/robert-zemeckis/metadata.json +24 -0
  209. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sam-peckinpah/CHANGELOG.md +51 -0
  210. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sam-peckinpah/metadata.json +24 -0
  211. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sidney-lumet/CHANGELOG.md +51 -0
  212. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sidney-lumet/metadata.json +24 -0
  213. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/spike-lee/CHANGELOG.md +51 -0
  214. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/spike-lee/metadata.json +24 -0
  215. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-donen-gene-kelly/CHANGELOG.md +51 -0
  216. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-donen-gene-kelly/metadata.json +24 -0
  217. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-kubrick/CHANGELOG.md +51 -0
  218. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/stanley-kubrick/metadata.json +24 -0
  219. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steve-martin/CHANGELOG.md +51 -0
  220. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steve-martin/metadata.json +24 -0
  221. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steven-spielberg/CHANGELOG.md +51 -0
  222. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/steven-spielberg/metadata.json +24 -0
  223. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sydney-pollack/CHANGELOG.md +51 -0
  224. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/sydney-pollack/metadata.json +24 -0
  225. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/terry-gilliam/CHANGELOG.md +51 -0
  226. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/terry-gilliam/metadata.json +24 -0
  227. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tim-burton/CHANGELOG.md +51 -0
  228. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tim-burton/metadata.json +24 -0
  229. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tobe-hooper/CHANGELOG.md +51 -0
  230. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/tobe-hooper/metadata.json +24 -0
  231. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/wes-anderson/CHANGELOG.md +51 -0
  232. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/wes-anderson/metadata.json +24 -0
  233. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/william-friedkin/CHANGELOG.md +51 -0
  234. package/augment-extensions/writing-standards/screenplay/cinematic-styles/directors/william-friedkin/metadata.json +24 -0
  235. package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/CHANGELOG.md +51 -0
  236. package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/blue-ruin/CHANGELOG.md +51 -0
  237. package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/blue-ruin/metadata.json +24 -0
  238. package/augment-extensions/writing-standards/screenplay/cinematic-styles/films/metadata.json +24 -0
  239. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/CHANGELOG.md +51 -0
  240. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/fast-and-furious/CHANGELOG.md +51 -0
  241. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/fast-and-furious/metadata.json +24 -0
  242. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/harry-potter/CHANGELOG.md +51 -0
  243. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/harry-potter/metadata.json +24 -0
  244. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/james-bond/CHANGELOG.md +51 -0
  245. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/james-bond/metadata.json +24 -0
  246. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/john-wick/CHANGELOG.md +51 -0
  247. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/john-wick/metadata.json +24 -0
  248. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/lord-of-the-rings/CHANGELOG.md +51 -0
  249. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/lord-of-the-rings/metadata.json +24 -0
  250. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/mcu/CHANGELOG.md +51 -0
  251. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/mcu/metadata.json +25 -0
  252. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/metadata.json +25 -0
  253. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-trek/CHANGELOG.md +51 -0
  254. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-trek/metadata.json +33 -0
  255. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-wars/CHANGELOG.md +51 -0
  256. package/augment-extensions/writing-standards/screenplay/cinematic-styles/franchises/star-wars/metadata.json +24 -0
  257. package/augment-extensions/writing-standards/screenplay/cinematic-styles/metadata.json +50 -0
  258. package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/CHANGELOG.md +51 -0
  259. package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/joseph-campbell/CHANGELOG.md +51 -0
  260. package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/joseph-campbell/metadata.json +24 -0
  261. package/augment-extensions/writing-standards/screenplay/cinematic-styles/narrative-theory/metadata.json +24 -0
  262. package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/CHANGELOG.md +51 -0
  263. package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/bruckheimer-and-simpson/CHANGELOG.md +51 -0
  264. package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/bruckheimer-and-simpson/metadata.json +24 -0
  265. package/augment-extensions/writing-standards/screenplay/cinematic-styles/producers/metadata.json +23 -0
  266. package/augment-extensions/writing-standards/screenplay/genres/CHANGELOG.md +51 -0
  267. package/augment-extensions/writing-standards/screenplay/genres/metadata.json +43 -0
  268. package/augment-extensions/writing-standards/screenplay/metadata.json +65 -0
  269. package/augment-extensions/writing-standards/screenplay/styles/CHANGELOG.md +51 -0
  270. package/augment-extensions/writing-standards/screenplay/styles/metadata.json +38 -0
  271. package/augment-extensions/writing-standards/screenplay/themes/CHANGELOG.md +51 -0
  272. package/augment-extensions/writing-standards/screenplay/themes/metadata.json +47 -0
  273. package/cli/dist/__test_health-checker.d.ts +2 -0
  274. package/cli/dist/__test_health-checker.d.ts.map +1 -0
  275. package/cli/dist/__test_health-checker.js +4 -0
  276. package/cli/dist/__test_health-checker.js.map +1 -0
  277. package/cli/dist/__test_template-engine.d.ts +2 -0
  278. package/cli/dist/__test_template-engine.d.ts.map +1 -0
  279. package/cli/dist/__test_template-engine.js +4 -0
  280. package/cli/dist/__test_template-engine.js.map +1 -0
  281. package/cli/dist/cli.js +25 -0
  282. package/cli/dist/cli.js.map +1 -1
  283. package/cli/dist/commands/generate-shot-list/generator/index.d.ts +8 -2
  284. package/cli/dist/commands/generate-shot-list/generator/index.d.ts.map +1 -1
  285. package/cli/dist/commands/generate-shot-list/generator/index.js +28 -3
  286. package/cli/dist/commands/generate-shot-list/generator/index.js.map +1 -1
  287. package/cli/dist/commands/generate-shot-list/generator/types.d.ts +3 -0
  288. package/cli/dist/commands/generate-shot-list/generator/types.d.ts.map +1 -1
  289. package/cli/dist/commands/generate-shot-list/help-text.d.ts +1 -1
  290. package/cli/dist/commands/generate-shot-list/help-text.d.ts.map +1 -1
  291. package/cli/dist/commands/generate-shot-list/help-text.js +48 -5
  292. package/cli/dist/commands/generate-shot-list/help-text.js.map +1 -1
  293. package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.d.ts +11 -1
  294. package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.d.ts.map +1 -1
  295. package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.js +61 -1
  296. package/cli/dist/commands/generate-shot-list/logger/jsonl-writer.js.map +1 -1
  297. package/cli/dist/commands/generate-shot-list/parser/docx-parser.d.ts +29 -0
  298. package/cli/dist/commands/generate-shot-list/parser/docx-parser.d.ts.map +1 -0
  299. package/cli/dist/commands/generate-shot-list/parser/docx-parser.js +111 -0
  300. package/cli/dist/commands/generate-shot-list/parser/docx-parser.js.map +1 -0
  301. package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.d.ts +18 -0
  302. package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.d.ts.map +1 -0
  303. package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.js +184 -0
  304. package/cli/dist/commands/generate-shot-list/parser/finaldraft-parser.js.map +1 -0
  305. package/cli/dist/commands/generate-shot-list/parser/index.d.ts +4 -3
  306. package/cli/dist/commands/generate-shot-list/parser/index.d.ts.map +1 -1
  307. package/cli/dist/commands/generate-shot-list/parser/index.js +54 -3
  308. package/cli/dist/commands/generate-shot-list/parser/index.js.map +1 -1
  309. package/cli/dist/commands/generate-shot-list/parser/pdf-parser.d.ts +24 -0
  310. package/cli/dist/commands/generate-shot-list/parser/pdf-parser.d.ts.map +1 -0
  311. package/cli/dist/commands/generate-shot-list/parser/pdf-parser.js +84 -0
  312. package/cli/dist/commands/generate-shot-list/parser/pdf-parser.js.map +1 -0
  313. package/cli/dist/commands/generate-shot-list/parser/rtf-parser.d.ts +28 -0
  314. package/cli/dist/commands/generate-shot-list/parser/rtf-parser.d.ts.map +1 -0
  315. package/cli/dist/commands/generate-shot-list/parser/rtf-parser.js +143 -0
  316. package/cli/dist/commands/generate-shot-list/parser/rtf-parser.js.map +1 -0
  317. package/cli/dist/commands/generate-shot-list/parser/types.d.ts +9 -6
  318. package/cli/dist/commands/generate-shot-list/parser/types.d.ts.map +1 -1
  319. package/cli/dist/commands/generate-shot-list/parser/types.js.map +1 -1
  320. package/cli/dist/commands/generate-shot-list/style/guideline-parser.d.ts +36 -0
  321. package/cli/dist/commands/generate-shot-list/style/guideline-parser.d.ts.map +1 -0
  322. package/cli/dist/commands/generate-shot-list/style/guideline-parser.js +108 -0
  323. package/cli/dist/commands/generate-shot-list/style/guideline-parser.js.map +1 -0
  324. package/cli/dist/commands/generate-shot-list/style/index.d.ts +39 -0
  325. package/cli/dist/commands/generate-shot-list/style/index.d.ts.map +1 -0
  326. package/cli/dist/commands/generate-shot-list/style/index.js +85 -0
  327. package/cli/dist/commands/generate-shot-list/style/index.js.map +1 -0
  328. package/cli/dist/commands/generate-shot-list/style/style-loader.d.ts +35 -0
  329. package/cli/dist/commands/generate-shot-list/style/style-loader.d.ts.map +1 -0
  330. package/cli/dist/commands/generate-shot-list/style/style-loader.js +178 -0
  331. package/cli/dist/commands/generate-shot-list/style/style-loader.js.map +1 -0
  332. package/cli/dist/commands/generate-shot-list/style/style-merger.d.ts +36 -0
  333. package/cli/dist/commands/generate-shot-list/style/style-merger.d.ts.map +1 -0
  334. package/cli/dist/commands/generate-shot-list/style/style-merger.js +123 -0
  335. package/cli/dist/commands/generate-shot-list/style/style-merger.js.map +1 -0
  336. package/cli/dist/commands/generate-shot-list/style/types.d.ts +105 -0
  337. package/cli/dist/commands/generate-shot-list/style/types.d.ts.map +1 -0
  338. package/cli/dist/commands/generate-shot-list/style/types.js +8 -0
  339. package/cli/dist/commands/generate-shot-list/style/types.js.map +1 -0
  340. package/cli/dist/commands/generate-shot-list.d.ts +1 -0
  341. package/cli/dist/commands/generate-shot-list.d.ts.map +1 -1
  342. package/cli/dist/commands/generate-shot-list.js +44 -1
  343. package/cli/dist/commands/generate-shot-list.js.map +1 -1
  344. package/cli/dist/commands/list.d.ts +1 -0
  345. package/cli/dist/commands/list.d.ts.map +1 -1
  346. package/cli/dist/commands/list.js +21 -5
  347. package/cli/dist/commands/list.js.map +1 -1
  348. package/cli/dist/commands/upgrade.d.ts +15 -0
  349. package/cli/dist/commands/upgrade.d.ts.map +1 -0
  350. package/cli/dist/commands/upgrade.js +229 -0
  351. package/cli/dist/commands/upgrade.js.map +1 -0
  352. package/cli/dist/commands/use.d.ts +15 -0
  353. package/cli/dist/commands/use.d.ts.map +1 -0
  354. package/cli/dist/commands/use.js +180 -0
  355. package/cli/dist/commands/use.js.map +1 -0
  356. package/cli/dist/commands/version-info.d.ts +15 -0
  357. package/cli/dist/commands/version-info.d.ts.map +1 -0
  358. package/cli/dist/commands/version-info.js +194 -0
  359. package/cli/dist/commands/version-info.js.map +1 -0
  360. package/cli/dist/core/compatibility-checker.d.ts +73 -0
  361. package/cli/dist/core/compatibility-checker.d.ts.map +1 -0
  362. package/cli/dist/core/compatibility-checker.js +188 -0
  363. package/cli/dist/core/compatibility-checker.js.map +1 -0
  364. package/cli/dist/core/index.d.ts +9 -0
  365. package/cli/dist/core/index.d.ts.map +1 -0
  366. package/cli/dist/core/index.js +16 -0
  367. package/cli/dist/core/index.js.map +1 -0
  368. package/cli/dist/core/module-loader.d.ts +68 -0
  369. package/cli/dist/core/module-loader.d.ts.map +1 -0
  370. package/cli/dist/core/module-loader.js +137 -0
  371. package/cli/dist/core/module-loader.js.map +1 -0
  372. package/cli/dist/core/version-manager.d.ts +62 -0
  373. package/cli/dist/core/version-manager.d.ts.map +1 -0
  374. package/cli/dist/core/version-manager.js +157 -0
  375. package/cli/dist/core/version-manager.js.map +1 -0
  376. package/cli/dist/core/version-resolver.d.ts +63 -0
  377. package/cli/dist/core/version-resolver.d.ts.map +1 -0
  378. package/cli/dist/core/version-resolver.js +163 -0
  379. package/cli/dist/core/version-resolver.js.map +1 -0
  380. package/cli/dist/gui/app.d.ts +17 -0
  381. package/cli/dist/gui/app.d.ts.map +1 -0
  382. package/cli/dist/gui/app.js +79 -0
  383. package/cli/dist/gui/app.js.map +1 -0
  384. package/cli/dist/gui/components/preview-pane.d.ts +40 -0
  385. package/cli/dist/gui/components/preview-pane.d.ts.map +1 -0
  386. package/cli/dist/gui/components/preview-pane.js +90 -0
  387. package/cli/dist/gui/components/preview-pane.js.map +1 -0
  388. package/cli/dist/gui/components/search-filter.d.ts +26 -0
  389. package/cli/dist/gui/components/search-filter.d.ts.map +1 -0
  390. package/cli/dist/gui/components/search-filter.js +168 -0
  391. package/cli/dist/gui/components/search-filter.js.map +1 -0
  392. package/cli/dist/gui/components/status-bar.d.ts +22 -0
  393. package/cli/dist/gui/components/status-bar.d.ts.map +1 -0
  394. package/cli/dist/gui/components/status-bar.js +58 -0
  395. package/cli/dist/gui/components/status-bar.js.map +1 -0
  396. package/cli/dist/gui/components/tree-navigator.d.ts +30 -0
  397. package/cli/dist/gui/components/tree-navigator.d.ts.map +1 -0
  398. package/cli/dist/gui/components/tree-navigator.js +133 -0
  399. package/cli/dist/gui/components/tree-navigator.js.map +1 -0
  400. package/cli/dist/gui/components/version-selector.d.ts +27 -0
  401. package/cli/dist/gui/components/version-selector.d.ts.map +1 -0
  402. package/cli/dist/gui/components/version-selector.js +110 -0
  403. package/cli/dist/gui/components/version-selector.js.map +1 -0
  404. package/cli/dist/gui/hooks/use-version-loader.d.ts +25 -0
  405. package/cli/dist/gui/hooks/use-version-loader.d.ts.map +1 -0
  406. package/cli/dist/gui/hooks/use-version-loader.js +116 -0
  407. package/cli/dist/gui/hooks/use-version-loader.js.map +1 -0
  408. package/cli/dist/gui/index.d.ts +15 -0
  409. package/cli/dist/gui/index.d.ts.map +1 -0
  410. package/cli/dist/gui/index.js +39 -0
  411. package/cli/dist/gui/index.js.map +1 -0
  412. package/cli/dist/gui/layouts/main-layout.d.ts +14 -0
  413. package/cli/dist/gui/layouts/main-layout.d.ts.map +1 -0
  414. package/cli/dist/gui/layouts/main-layout.js +205 -0
  415. package/cli/dist/gui/layouts/main-layout.js.map +1 -0
  416. package/cli/dist/gui/state/navigation-state.d.ts +39 -0
  417. package/cli/dist/gui/state/navigation-state.d.ts.map +1 -0
  418. package/cli/dist/gui/state/navigation-state.js +151 -0
  419. package/cli/dist/gui/state/navigation-state.js.map +1 -0
  420. package/cli/dist/gui/state/selection-state.d.ts +36 -0
  421. package/cli/dist/gui/state/selection-state.d.ts.map +1 -0
  422. package/cli/dist/gui/state/selection-state.js +132 -0
  423. package/cli/dist/gui/state/selection-state.js.map +1 -0
  424. package/cli/dist/gui/theme.d.ts +50 -0
  425. package/cli/dist/gui/theme.d.ts.map +1 -0
  426. package/cli/dist/gui/theme.js +73 -0
  427. package/cli/dist/gui/theme.js.map +1 -0
  428. package/cli/dist/utils/help.d.ts +13 -0
  429. package/cli/dist/utils/help.d.ts.map +1 -0
  430. package/cli/dist/utils/help.js +137 -0
  431. package/cli/dist/utils/help.js.map +1 -0
  432. package/cli/dist/utils/module-system.d.ts +8 -0
  433. package/cli/dist/utils/module-system.d.ts.map +1 -1
  434. package/cli/dist/utils/module-system.js +38 -3
  435. package/cli/dist/utils/module-system.js.map +1 -1
  436. package/cli/dist/utils/validate-versioning.d.ts +43 -0
  437. package/cli/dist/utils/validate-versioning.d.ts.map +1 -0
  438. package/cli/dist/utils/validate-versioning.js +258 -0
  439. package/cli/dist/utils/validate-versioning.js.map +1 -0
  440. package/package.json +10 -1
@@ -0,0 +1,188 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.CompatibilityChecker = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const module_system_1 = require("../utils/module-system");
40
+ const child_process_1 = require("child_process");
41
+ /**
42
+ * CompatibilityChecker class
43
+ * Validates module compatibility with runtime environment
44
+ */
45
+ class CompatibilityChecker {
46
+ constructor() {
47
+ this.nodeVersion = process.version.replace('v', '');
48
+ this.typescriptVersion = this.detectTypeScriptVersion();
49
+ }
50
+ /**
51
+ * Check compatibility of a module
52
+ * @param modulePath Path to the module directory
53
+ * @returns Compatibility check result
54
+ */
55
+ checkCompatibility(modulePath) {
56
+ const errors = [];
57
+ const warnings = [];
58
+ const deprecations = [];
59
+ const details = {};
60
+ // Load module metadata
61
+ const metadata = this.loadCompatibilityMetadata(modulePath);
62
+ if (!metadata) {
63
+ warnings.push('No compatibility metadata found');
64
+ return {
65
+ compatible: true,
66
+ errors,
67
+ warnings,
68
+ deprecations,
69
+ details
70
+ };
71
+ }
72
+ // Check deprecation
73
+ if (metadata.deprecated) {
74
+ deprecations.push(metadata.deprecationMessage || 'This module is deprecated');
75
+ }
76
+ // Check breaking changes
77
+ if (metadata.breaking) {
78
+ warnings.push('This version contains breaking changes');
79
+ }
80
+ // Check Node.js version
81
+ if (metadata.nodeMinVersion) {
82
+ const nodeCheck = this.checkNodeVersion(metadata.nodeMinVersion);
83
+ details.node = nodeCheck;
84
+ if (!nodeCheck.compatible) {
85
+ errors.push(nodeCheck.message || 'Node.js version incompatible');
86
+ }
87
+ }
88
+ // Check TypeScript version
89
+ if (metadata.typescriptMinVersion) {
90
+ const tsCheck = this.checkTypeScriptVersion(metadata.typescriptMinVersion);
91
+ details.typescript = tsCheck;
92
+ if (!tsCheck.compatible) {
93
+ warnings.push(tsCheck.message || 'TypeScript version may be incompatible');
94
+ }
95
+ }
96
+ // Check Augment version (if available)
97
+ if (metadata.augmentMinVersion) {
98
+ // TODO: Implement Augment version detection
99
+ details.augment = {
100
+ required: metadata.augmentMinVersion,
101
+ current: 'unknown',
102
+ compatible: true,
103
+ message: 'Augment version check not implemented'
104
+ };
105
+ }
106
+ return {
107
+ compatible: errors.length === 0,
108
+ errors,
109
+ warnings,
110
+ deprecations,
111
+ details
112
+ };
113
+ }
114
+ /**
115
+ * Check Node.js version compatibility
116
+ * @param requiredVersion Minimum required Node.js version
117
+ * @returns Version check result
118
+ */
119
+ checkNodeVersion(requiredVersion) {
120
+ const compatible = (0, module_system_1.compareSemanticVersions)(this.nodeVersion, requiredVersion) >= 0;
121
+ return {
122
+ required: requiredVersion,
123
+ current: this.nodeVersion,
124
+ compatible,
125
+ message: compatible
126
+ ? undefined
127
+ : `Node.js ${requiredVersion} or higher required (current: ${this.nodeVersion})`
128
+ };
129
+ }
130
+ /**
131
+ * Check TypeScript version compatibility
132
+ * @param requiredVersion Minimum required TypeScript version
133
+ * @returns Version check result
134
+ */
135
+ checkTypeScriptVersion(requiredVersion) {
136
+ if (!this.typescriptVersion) {
137
+ return {
138
+ required: requiredVersion,
139
+ current: 'not installed',
140
+ compatible: false,
141
+ message: `TypeScript ${requiredVersion} or higher required (not installed)`
142
+ };
143
+ }
144
+ const compatible = (0, module_system_1.compareSemanticVersions)(this.typescriptVersion, requiredVersion) >= 0;
145
+ return {
146
+ required: requiredVersion,
147
+ current: this.typescriptVersion,
148
+ compatible,
149
+ message: compatible
150
+ ? undefined
151
+ : `TypeScript ${requiredVersion} or higher required (current: ${this.typescriptVersion})`
152
+ };
153
+ }
154
+ /**
155
+ * Load compatibility metadata from module
156
+ * @param modulePath Path to the module directory
157
+ * @returns Compatibility metadata or null
158
+ */
159
+ loadCompatibilityMetadata(modulePath) {
160
+ const metadataFile = path.join(modulePath, 'metadata.json');
161
+ if (!fs.existsSync(metadataFile)) {
162
+ return null;
163
+ }
164
+ try {
165
+ const content = JSON.parse(fs.readFileSync(metadataFile, 'utf-8'));
166
+ return content.compatibility || null;
167
+ }
168
+ catch (error) {
169
+ return null;
170
+ }
171
+ }
172
+ /**
173
+ * Detect installed TypeScript version
174
+ * @returns TypeScript version string or null if not installed
175
+ */
176
+ detectTypeScriptVersion() {
177
+ try {
178
+ const output = (0, child_process_1.execSync)('tsc --version', { encoding: 'utf-8', stdio: 'pipe' });
179
+ const match = output.match(/Version (\d+\.\d+\.\d+)/);
180
+ return match ? match[1] : null;
181
+ }
182
+ catch (error) {
183
+ return null;
184
+ }
185
+ }
186
+ }
187
+ exports.CompatibilityChecker = CompatibilityChecker;
188
+ //# sourceMappingURL=compatibility-checker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"compatibility-checker.js","sourceRoot":"","sources":["../../src/core/compatibility-checker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Core module exports
3
+ * Provides version management, resolution, compatibility checking, and module loading
4
+ */
5
+ export { VersionManager, type VersionMetadata } from './version-manager';
6
+ export { VersionResolver, type VersionStrategy, type VersionResolutionResult } from './version-resolver';
7
+ export { CompatibilityChecker, type CompatibilityResult, type VersionCheckResult, type CompatibilityMetadata } from './compatibility-checker';
8
+ export { ModuleLoader, type ModuleLoadOptions, type ModuleLoadResult } from './module-loader';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,eAAe,EAAE,KAAK,eAAe,EAAE,KAAK,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EACL,oBAAoB,EACpB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,qBAAqB,EAC3B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,YAAY,EACZ,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACtB,MAAM,iBAAiB,CAAC"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ /**
3
+ * Core module exports
4
+ * Provides version management, resolution, compatibility checking, and module loading
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.ModuleLoader = exports.CompatibilityChecker = exports.VersionResolver = exports.VersionManager = void 0;
8
+ var version_manager_1 = require("./version-manager");
9
+ Object.defineProperty(exports, "VersionManager", { enumerable: true, get: function () { return version_manager_1.VersionManager; } });
10
+ var version_resolver_1 = require("./version-resolver");
11
+ Object.defineProperty(exports, "VersionResolver", { enumerable: true, get: function () { return version_resolver_1.VersionResolver; } });
12
+ var compatibility_checker_1 = require("./compatibility-checker");
13
+ Object.defineProperty(exports, "CompatibilityChecker", { enumerable: true, get: function () { return compatibility_checker_1.CompatibilityChecker; } });
14
+ var module_loader_1 = require("./module-loader");
15
+ Object.defineProperty(exports, "ModuleLoader", { enumerable: true, get: function () { return module_loader_1.ModuleLoader; } });
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,qDAAyE;AAAhE,iHAAA,cAAc,OAAA;AACvB,uDAAyG;AAAhG,mHAAA,eAAe,OAAA;AACxB,iEAKiC;AAJ/B,6HAAA,oBAAoB,OAAA;AAKtB,iDAIyB;AAHvB,6GAAA,YAAY,OAAA"}
@@ -0,0 +1,68 @@
1
+ import { VersionManager, VersionMetadata } from './version-manager';
2
+ import { VersionResolver, VersionResolutionResult } from './version-resolver';
3
+ import { Module } from '../utils/module-system';
4
+ /**
5
+ * Module load options
6
+ */
7
+ export interface ModuleLoadOptions {
8
+ version?: string;
9
+ useCache?: boolean;
10
+ cacheTTL?: number;
11
+ }
12
+ /**
13
+ * Module load result
14
+ */
15
+ export interface ModuleLoadResult {
16
+ module: Module;
17
+ version: string;
18
+ metadata: VersionMetadata;
19
+ resolution: VersionResolutionResult;
20
+ }
21
+ /**
22
+ * ModuleLoader class
23
+ * Manages module loading with version support and caching
24
+ */
25
+ export declare class ModuleLoader {
26
+ private versionManager;
27
+ private versionResolver;
28
+ private cache;
29
+ private cacheTTL;
30
+ constructor(versionManager?: VersionManager, versionResolver?: VersionResolver);
31
+ /**
32
+ * Load a module with optional version specification
33
+ * @param modulePath Path to the module directory
34
+ * @param options Load options including version specification
35
+ * @returns Module load result or null if not found
36
+ */
37
+ load(modulePath: string, options?: ModuleLoadOptions): ModuleLoadResult | null;
38
+ /**
39
+ * Get version metadata for a module without loading it
40
+ * @param modulePath Path to the module directory
41
+ * @returns Version metadata or null if not found
42
+ */
43
+ getVersionMetadata(modulePath: string): VersionMetadata | null;
44
+ /**
45
+ * Get all available versions for a module
46
+ * @param modulePath Path to the module directory
47
+ * @returns Array of version strings
48
+ */
49
+ getAvailableVersions(modulePath: string): string[];
50
+ /**
51
+ * Clear module cache
52
+ * @param modulePath Optional path to clear specific module, or all if not provided
53
+ */
54
+ clearCache(modulePath?: string): void;
55
+ /**
56
+ * Set cache TTL
57
+ * @param ttl Time to live in milliseconds
58
+ */
59
+ setCacheTTL(ttl: number): void;
60
+ /**
61
+ * Generate cache key for module and version
62
+ * @param modulePath Module path
63
+ * @param version Version string
64
+ * @returns Cache key
65
+ */
66
+ private getCacheKey;
67
+ }
68
+ //# sourceMappingURL=module-loader.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-loader.d.ts","sourceRoot":"","sources":["../../src/core/module-loader.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAc,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAY5D;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,eAAe,CAAC;IAC1B,UAAU,EAAE,uBAAuB,CAAC;CACrC;AAED;;;GAGG;AACH,qBAAa,YAAY;IACvB,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,KAAK,CAA4C;IACzD,OAAO,CAAC,QAAQ,CAAmB;gBAEvB,cAAc,CAAC,EAAE,cAAc,EAAE,eAAe,CAAC,EAAE,eAAe;IAK9E;;;;;OAKG;IACH,IAAI,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,GAAE,iBAAsB,GAAG,gBAAgB,GAAG,IAAI;IAmElF;;;;OAIG;IACH,kBAAkB,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAI9D;;;;OAIG;IACH,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE;IAKlD;;;OAGG;IACH,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI;IAgBrC;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9B;;;;;OAKG;IACH,OAAO,CAAC,WAAW;CAGpB"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ModuleLoader = void 0;
4
+ const version_manager_1 = require("./version-manager");
5
+ const version_resolver_1 = require("./version-resolver");
6
+ const module_system_1 = require("../utils/module-system");
7
+ /**
8
+ * ModuleLoader class
9
+ * Manages module loading with version support and caching
10
+ */
11
+ class ModuleLoader {
12
+ constructor(versionManager, versionResolver) {
13
+ this.cache = new Map();
14
+ this.cacheTTL = 3600000; // 1 hour in milliseconds
15
+ this.versionManager = versionManager || new version_manager_1.VersionManager();
16
+ this.versionResolver = versionResolver || new version_resolver_1.VersionResolver(this.versionManager);
17
+ }
18
+ /**
19
+ * Load a module with optional version specification
20
+ * @param modulePath Path to the module directory
21
+ * @param options Load options including version specification
22
+ * @returns Module load result or null if not found
23
+ */
24
+ load(modulePath, options = {}) {
25
+ const { version = 'latest', useCache = true, cacheTTL } = options;
26
+ // Set custom cache TTL if provided
27
+ if (cacheTTL !== undefined) {
28
+ this.cacheTTL = cacheTTL;
29
+ }
30
+ // Check cache first
31
+ const cacheKey = this.getCacheKey(modulePath, version);
32
+ if (useCache) {
33
+ const cached = this.cache.get(cacheKey);
34
+ if (cached && Date.now() - cached.timestamp < this.cacheTTL) {
35
+ // Return cached result with resolution info
36
+ return {
37
+ module: cached.module,
38
+ version: cached.version,
39
+ metadata: cached.metadata,
40
+ resolution: {
41
+ version: cached.version,
42
+ path: modulePath,
43
+ strategy: version === 'latest' ? 'latest' : 'specific',
44
+ available: [cached.version]
45
+ }
46
+ };
47
+ }
48
+ }
49
+ // Resolve version
50
+ const resolution = this.versionResolver.resolve(modulePath, version);
51
+ if (!resolution) {
52
+ return null;
53
+ }
54
+ // Load module from resolved path
55
+ const module = (0, module_system_1.loadModule)(resolution.path);
56
+ if (!module) {
57
+ return null;
58
+ }
59
+ // Get version metadata
60
+ const metadata = this.versionManager.getVersion(resolution.path);
61
+ if (!metadata) {
62
+ return null;
63
+ }
64
+ // Create result
65
+ const result = {
66
+ module,
67
+ version: resolution.version,
68
+ metadata,
69
+ resolution
70
+ };
71
+ // Cache the result
72
+ if (useCache) {
73
+ this.cache.set(cacheKey, {
74
+ module,
75
+ version: resolution.version,
76
+ metadata,
77
+ timestamp: Date.now()
78
+ });
79
+ }
80
+ return result;
81
+ }
82
+ /**
83
+ * Get version metadata for a module without loading it
84
+ * @param modulePath Path to the module directory
85
+ * @returns Version metadata or null if not found
86
+ */
87
+ getVersionMetadata(modulePath) {
88
+ return this.versionManager.getVersion(modulePath);
89
+ }
90
+ /**
91
+ * Get all available versions for a module
92
+ * @param modulePath Path to the module directory
93
+ * @returns Array of version strings
94
+ */
95
+ getAvailableVersions(modulePath) {
96
+ const resolution = this.versionResolver.resolveLatest(modulePath);
97
+ return resolution?.available || [];
98
+ }
99
+ /**
100
+ * Clear module cache
101
+ * @param modulePath Optional path to clear specific module, or all if not provided
102
+ */
103
+ clearCache(modulePath) {
104
+ if (modulePath) {
105
+ // Clear all cache entries for this module path
106
+ const keysToDelete = [];
107
+ for (const key of this.cache.keys()) {
108
+ if (key.startsWith(modulePath + ':')) {
109
+ keysToDelete.push(key);
110
+ }
111
+ }
112
+ keysToDelete.forEach(key => this.cache.delete(key));
113
+ }
114
+ else {
115
+ // Clear all cache
116
+ this.cache.clear();
117
+ }
118
+ }
119
+ /**
120
+ * Set cache TTL
121
+ * @param ttl Time to live in milliseconds
122
+ */
123
+ setCacheTTL(ttl) {
124
+ this.cacheTTL = ttl;
125
+ }
126
+ /**
127
+ * Generate cache key for module and version
128
+ * @param modulePath Module path
129
+ * @param version Version string
130
+ * @returns Cache key
131
+ */
132
+ getCacheKey(modulePath, version) {
133
+ return `${modulePath}:${version}`;
134
+ }
135
+ }
136
+ exports.ModuleLoader = ModuleLoader;
137
+ //# sourceMappingURL=module-loader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module-loader.js","sourceRoot":"","sources":["../../src/core/module-loader.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { type SemanticVersion } from '../utils/module-system';
2
+ /**
3
+ * Version metadata interface
4
+ */
5
+ export interface VersionMetadata {
6
+ version: string;
7
+ publishedAt?: Date;
8
+ deprecated?: boolean;
9
+ deprecationMessage?: string;
10
+ breaking?: boolean;
11
+ changelog?: string;
12
+ }
13
+ /**
14
+ * VersionManager class
15
+ * Manages module versions including loading, caching, and comparison
16
+ */
17
+ export declare class VersionManager {
18
+ private cache;
19
+ private cacheTTL;
20
+ /**
21
+ * Get version metadata for a module
22
+ * @param modulePath Path to the module directory
23
+ * @returns Version metadata or null if not found
24
+ */
25
+ getVersion(modulePath: string): VersionMetadata | null;
26
+ /**
27
+ * Set version for a module
28
+ * @param modulePath Path to the module directory
29
+ * @param version Version string (must be valid semver)
30
+ * @returns True if successful, false otherwise
31
+ */
32
+ setVersion(modulePath: string, version: string): boolean;
33
+ /**
34
+ * Compare two versions
35
+ * @param v1 First version string
36
+ * @param v2 Second version string
37
+ * @returns -1 if v1 < v2, 0 if v1 === v2, 1 if v1 > v2
38
+ */
39
+ compareVersions(v1: string, v2: string): number;
40
+ /**
41
+ * Parse version string into components
42
+ * @param version Version string
43
+ * @returns Parsed semantic version or null if invalid
44
+ */
45
+ parseVersion(version: string): SemanticVersion | null;
46
+ /**
47
+ * Check if version is deprecated
48
+ * @param modulePath Path to the module directory
49
+ * @returns True if deprecated, false otherwise
50
+ */
51
+ isDeprecated(modulePath: string): boolean;
52
+ /**
53
+ * Clear version cache
54
+ */
55
+ clearCache(): void;
56
+ /**
57
+ * Set cache TTL
58
+ * @param ttl Time to live in milliseconds
59
+ */
60
+ setCacheTTL(ttl: number): void;
61
+ }
62
+ //# sourceMappingURL=version-manager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-manager.d.ts","sourceRoot":"","sources":["../../src/core/version-manager.ts"],"names":[],"mappings":"AAEA,OAAO,EAIL,KAAK,eAAe,EACrB,MAAM,wBAAwB,CAAC;AAEhC;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAUD;;;GAGG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,KAAK,CAA6C;IAC1D,OAAO,CAAC,QAAQ,CAAmB;IAEnC;;;;OAIG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAgDtD;;;;;OAKG;IACH,UAAU,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO;IAkBxD;;;;;OAKG;IACH,eAAe,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM;IAI/C;;;;OAIG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAIrD;;;;OAIG;IACH,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO;IAKzC;;OAEG;IACH,UAAU,IAAI,IAAI;IAIlB;;;OAGG;IACH,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;CAG/B"}
@@ -0,0 +1,157 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.VersionManager = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const module_system_1 = require("../utils/module-system");
40
+ /**
41
+ * VersionManager class
42
+ * Manages module versions including loading, caching, and comparison
43
+ */
44
+ class VersionManager {
45
+ constructor() {
46
+ this.cache = new Map();
47
+ this.cacheTTL = 3600000; // 1 hour in milliseconds
48
+ }
49
+ /**
50
+ * Get version metadata for a module
51
+ * @param modulePath Path to the module directory
52
+ * @returns Version metadata or null if not found
53
+ */
54
+ getVersion(modulePath) {
55
+ // Check cache first
56
+ const cached = this.cache.get(modulePath);
57
+ if (cached && Date.now() - cached.timestamp < this.cacheTTL) {
58
+ return cached.metadata;
59
+ }
60
+ // Load from VERSION file
61
+ const versionFile = path.join(modulePath, 'VERSION');
62
+ if (!fs.existsSync(versionFile)) {
63
+ return null;
64
+ }
65
+ try {
66
+ const version = fs.readFileSync(versionFile, 'utf-8').trim();
67
+ if (!(0, module_system_1.isValidSemanticVersion)(version)) {
68
+ return null;
69
+ }
70
+ // Load additional metadata if available
71
+ const metadataFile = path.join(modulePath, 'metadata.json');
72
+ let metadata = { version };
73
+ if (fs.existsSync(metadataFile)) {
74
+ const metadataContent = JSON.parse(fs.readFileSync(metadataFile, 'utf-8'));
75
+ metadata = {
76
+ version,
77
+ publishedAt: metadataContent.publishedAt ? new Date(metadataContent.publishedAt) : undefined,
78
+ deprecated: metadataContent.deprecated || false,
79
+ deprecationMessage: metadataContent.deprecationMessage,
80
+ breaking: metadataContent.breaking || false,
81
+ changelog: metadataContent.changelog
82
+ };
83
+ }
84
+ // Cache the result
85
+ this.cache.set(modulePath, {
86
+ metadata,
87
+ timestamp: Date.now()
88
+ });
89
+ return metadata;
90
+ }
91
+ catch (error) {
92
+ return null;
93
+ }
94
+ }
95
+ /**
96
+ * Set version for a module
97
+ * @param modulePath Path to the module directory
98
+ * @param version Version string (must be valid semver)
99
+ * @returns True if successful, false otherwise
100
+ */
101
+ setVersion(modulePath, version) {
102
+ if (!(0, module_system_1.isValidSemanticVersion)(version)) {
103
+ return false;
104
+ }
105
+ try {
106
+ const versionFile = path.join(modulePath, 'VERSION');
107
+ fs.writeFileSync(versionFile, version + '\n', 'utf-8');
108
+ // Invalidate cache
109
+ this.cache.delete(modulePath);
110
+ return true;
111
+ }
112
+ catch (error) {
113
+ return false;
114
+ }
115
+ }
116
+ /**
117
+ * Compare two versions
118
+ * @param v1 First version string
119
+ * @param v2 Second version string
120
+ * @returns -1 if v1 < v2, 0 if v1 === v2, 1 if v1 > v2
121
+ */
122
+ compareVersions(v1, v2) {
123
+ return (0, module_system_1.compareSemanticVersions)(v1, v2);
124
+ }
125
+ /**
126
+ * Parse version string into components
127
+ * @param version Version string
128
+ * @returns Parsed semantic version or null if invalid
129
+ */
130
+ parseVersion(version) {
131
+ return (0, module_system_1.parseSemanticVersion)(version);
132
+ }
133
+ /**
134
+ * Check if version is deprecated
135
+ * @param modulePath Path to the module directory
136
+ * @returns True if deprecated, false otherwise
137
+ */
138
+ isDeprecated(modulePath) {
139
+ const metadata = this.getVersion(modulePath);
140
+ return metadata?.deprecated || false;
141
+ }
142
+ /**
143
+ * Clear version cache
144
+ */
145
+ clearCache() {
146
+ this.cache.clear();
147
+ }
148
+ /**
149
+ * Set cache TTL
150
+ * @param ttl Time to live in milliseconds
151
+ */
152
+ setCacheTTL(ttl) {
153
+ this.cacheTTL = ttl;
154
+ }
155
+ }
156
+ exports.VersionManager = VersionManager;
157
+ //# sourceMappingURL=version-manager.js.map