@eui/mcp 1.0.3 → 1.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 (315) hide show
  1. package/README.md +117 -743
  2. package/dist/config/__tests__/schema.property.test.d.ts +2 -0
  3. package/dist/config/__tests__/schema.property.test.d.ts.map +1 -0
  4. package/dist/config/__tests__/schema.property.test.js +203 -0
  5. package/dist/config/__tests__/schema.property.test.js.map +1 -0
  6. package/dist/config/__tests__/schema.test.d.ts +2 -0
  7. package/dist/config/__tests__/schema.test.d.ts.map +1 -0
  8. package/dist/config/__tests__/schema.test.js +454 -0
  9. package/dist/config/__tests__/schema.test.js.map +1 -0
  10. package/dist/config/loader.js +4 -4
  11. package/dist/config/loader.js.map +1 -1
  12. package/dist/index.js +2 -2
  13. package/dist/index.js.map +1 -1
  14. package/dist/loader/__tests__/cache-manager.property.test.d.ts +2 -0
  15. package/dist/loader/__tests__/cache-manager.property.test.d.ts.map +1 -0
  16. package/dist/loader/__tests__/cache-manager.property.test.js +245 -0
  17. package/dist/loader/__tests__/cache-manager.property.test.js.map +1 -0
  18. package/dist/loader/__tests__/cache-manager.test.d.ts +2 -0
  19. package/dist/loader/__tests__/cache-manager.test.d.ts.map +1 -0
  20. package/dist/loader/__tests__/cache-manager.test.js +256 -0
  21. package/dist/loader/__tests__/cache-manager.test.js.map +1 -0
  22. package/dist/loader/__tests__/documentation-loader.integration.test.d.ts +2 -0
  23. package/dist/loader/__tests__/documentation-loader.integration.test.d.ts.map +1 -0
  24. package/dist/loader/__tests__/documentation-loader.integration.test.js +498 -0
  25. package/dist/loader/__tests__/documentation-loader.integration.test.js.map +1 -0
  26. package/dist/loader/__tests__/documentation-loader.property.test.d.ts +2 -0
  27. package/dist/loader/__tests__/documentation-loader.property.test.d.ts.map +1 -0
  28. package/dist/loader/__tests__/documentation-loader.property.test.js +258 -0
  29. package/dist/loader/__tests__/documentation-loader.property.test.js.map +1 -0
  30. package/dist/loader/__tests__/errors.test.d.ts +2 -0
  31. package/dist/loader/__tests__/errors.test.d.ts.map +1 -0
  32. package/dist/loader/__tests__/errors.test.js +132 -0
  33. package/dist/loader/__tests__/errors.test.js.map +1 -0
  34. package/dist/loader/__tests__/http-client.property.test.d.ts +2 -0
  35. package/dist/loader/__tests__/http-client.property.test.d.ts.map +1 -0
  36. package/dist/loader/__tests__/http-client.property.test.js +288 -0
  37. package/dist/loader/__tests__/http-client.property.test.js.map +1 -0
  38. package/dist/loader/__tests__/http-client.test.d.ts +2 -0
  39. package/dist/loader/__tests__/http-client.test.d.ts.map +1 -0
  40. package/dist/loader/__tests__/http-client.test.js +497 -0
  41. package/dist/loader/__tests__/http-client.test.js.map +1 -0
  42. package/dist/loader/__tests__/local-documentation-source.property.test.d.ts +2 -0
  43. package/dist/loader/__tests__/local-documentation-source.property.test.d.ts.map +1 -0
  44. package/dist/loader/__tests__/local-documentation-source.property.test.js +373 -0
  45. package/dist/loader/__tests__/local-documentation-source.property.test.js.map +1 -0
  46. package/dist/loader/__tests__/local-documentation-source.test.d.ts +2 -0
  47. package/dist/loader/__tests__/local-documentation-source.test.d.ts.map +1 -0
  48. package/dist/loader/__tests__/local-documentation-source.test.js +544 -0
  49. package/dist/loader/__tests__/local-documentation-source.test.js.map +1 -0
  50. package/dist/loader/__tests__/path-type-detector.property.test.d.ts +2 -0
  51. package/dist/loader/__tests__/path-type-detector.property.test.d.ts.map +1 -0
  52. package/dist/loader/__tests__/path-type-detector.property.test.js +245 -0
  53. package/dist/loader/__tests__/path-type-detector.property.test.js.map +1 -0
  54. package/dist/loader/__tests__/path-type-detector.test.d.ts +2 -0
  55. package/dist/loader/__tests__/path-type-detector.test.d.ts.map +1 -0
  56. package/dist/loader/__tests__/path-type-detector.test.js +390 -0
  57. package/dist/loader/__tests__/path-type-detector.test.js.map +1 -0
  58. package/dist/loader/__tests__/remote-documentation-source.property.test.d.ts +2 -0
  59. package/dist/loader/__tests__/remote-documentation-source.property.test.d.ts.map +1 -0
  60. package/dist/loader/__tests__/remote-documentation-source.property.test.js +462 -0
  61. package/dist/loader/__tests__/remote-documentation-source.property.test.js.map +1 -0
  62. package/dist/loader/__tests__/remote-documentation-source.test.d.ts +2 -0
  63. package/dist/loader/__tests__/remote-documentation-source.test.d.ts.map +1 -0
  64. package/dist/loader/__tests__/remote-documentation-source.test.js +707 -0
  65. package/dist/loader/__tests__/remote-documentation-source.test.js.map +1 -0
  66. package/dist/loader/remote-documentation-source.d.ts +0 -4
  67. package/dist/loader/remote-documentation-source.d.ts.map +1 -1
  68. package/dist/loader/remote-documentation-source.js +1 -4
  69. package/dist/loader/remote-documentation-source.js.map +1 -1
  70. package/dist/main.js +0 -0
  71. package/dist/main.js.map +1 -1
  72. package/dist/mcp/__tests__/server.property.test.d.ts +2 -0
  73. package/dist/mcp/__tests__/server.property.test.d.ts.map +1 -0
  74. package/dist/mcp/__tests__/server.property.test.js +286 -0
  75. package/dist/mcp/__tests__/server.property.test.js.map +1 -0
  76. package/dist/mcp/__tests__/server.test.d.ts +2 -0
  77. package/dist/mcp/__tests__/server.test.d.ts.map +1 -0
  78. package/dist/mcp/__tests__/server.test.js +101 -0
  79. package/dist/mcp/__tests__/server.test.js.map +1 -0
  80. package/dist/mcp/server.d.ts.map +1 -1
  81. package/dist/mcp/server.js +16 -4
  82. package/dist/mcp/server.js.map +1 -1
  83. package/dist/publish/__tests__/publish-utils.test.d.ts +5 -0
  84. package/dist/publish/__tests__/publish-utils.test.d.ts.map +1 -0
  85. package/dist/publish/__tests__/publish-utils.test.js +189 -0
  86. package/dist/publish/__tests__/publish-utils.test.js.map +1 -0
  87. package/dist/query/__tests__/deprecation-parser.test.d.ts +2 -0
  88. package/dist/query/__tests__/deprecation-parser.test.d.ts.map +1 -0
  89. package/dist/query/__tests__/deprecation-parser.test.js +154 -0
  90. package/dist/query/__tests__/deprecation-parser.test.js.map +1 -0
  91. package/dist/query/__tests__/deprecation-query.test.d.ts +2 -0
  92. package/dist/query/__tests__/deprecation-query.test.d.ts.map +1 -0
  93. package/dist/query/__tests__/deprecation-query.test.js +199 -0
  94. package/dist/query/__tests__/deprecation-query.test.js.map +1 -0
  95. package/dist/query/__tests__/index-builder-debug.test.d.ts +2 -0
  96. package/dist/query/__tests__/index-builder-debug.test.d.ts.map +1 -0
  97. package/dist/query/__tests__/index-builder-debug.test.js +34 -0
  98. package/dist/query/__tests__/index-builder-debug.test.js.map +1 -0
  99. package/dist/query/__tests__/index-builder.property.test.d.ts +2 -0
  100. package/dist/query/__tests__/index-builder.property.test.d.ts.map +1 -0
  101. package/dist/query/__tests__/index-builder.property.test.js +422 -0
  102. package/dist/query/__tests__/index-builder.property.test.js.map +1 -0
  103. package/dist/query/__tests__/index-builder.test.d.ts +2 -0
  104. package/dist/query/__tests__/index-builder.test.d.ts.map +1 -0
  105. package/dist/query/__tests__/index-builder.test.js +55 -0
  106. package/dist/query/__tests__/index-builder.test.js.map +1 -0
  107. package/dist/query/__tests__/result-formatter-deprecation.test.d.ts +2 -0
  108. package/dist/query/__tests__/result-formatter-deprecation.test.d.ts.map +1 -0
  109. package/dist/query/__tests__/result-formatter-deprecation.test.js +159 -0
  110. package/dist/query/__tests__/result-formatter-deprecation.test.js.map +1 -0
  111. package/dist/query/__tests__/result-formatter.integration.test.d.ts +2 -0
  112. package/dist/query/__tests__/result-formatter.integration.test.d.ts.map +1 -0
  113. package/dist/query/__tests__/result-formatter.integration.test.js +140 -0
  114. package/dist/query/__tests__/result-formatter.integration.test.js.map +1 -0
  115. package/dist/query/__tests__/result-formatter.property.test.d.ts +2 -0
  116. package/dist/query/__tests__/result-formatter.property.test.d.ts.map +1 -0
  117. package/dist/query/__tests__/result-formatter.property.test.js +163 -0
  118. package/dist/query/__tests__/result-formatter.property.test.js.map +1 -0
  119. package/dist/query/__tests__/result-formatter.test.d.ts +2 -0
  120. package/dist/query/__tests__/result-formatter.test.d.ts.map +1 -0
  121. package/dist/query/__tests__/result-formatter.test.js +85 -0
  122. package/dist/query/__tests__/result-formatter.test.js.map +1 -0
  123. package/dist/query/__tests__/search-engine.property.test.d.ts +2 -0
  124. package/dist/query/__tests__/search-engine.property.test.d.ts.map +1 -0
  125. package/dist/query/__tests__/search-engine.property.test.js +389 -0
  126. package/dist/query/__tests__/search-engine.property.test.js.map +1 -0
  127. package/dist/query/deprecation-parser.d.ts +46 -0
  128. package/dist/query/deprecation-parser.d.ts.map +1 -0
  129. package/dist/query/deprecation-parser.js +81 -0
  130. package/dist/query/deprecation-parser.js.map +1 -0
  131. package/dist/query/deprecation-query.d.ts +19 -0
  132. package/dist/query/deprecation-query.d.ts.map +1 -0
  133. package/dist/query/deprecation-query.js +73 -0
  134. package/dist/query/deprecation-query.js.map +1 -0
  135. package/dist/query/result-formatter.d.ts +27 -0
  136. package/dist/query/result-formatter.d.ts.map +1 -1
  137. package/dist/query/result-formatter.js +64 -5
  138. package/dist/query/result-formatter.js.map +1 -1
  139. package/dist/tools/__tests__/deprecation-tools.test.d.ts +2 -0
  140. package/dist/tools/__tests__/deprecation-tools.test.d.ts.map +1 -0
  141. package/dist/tools/__tests__/deprecation-tools.test.js +178 -0
  142. package/dist/tools/__tests__/deprecation-tools.test.js.map +1 -0
  143. package/dist/tools/__tests__/get-component-docs.property.test.d.ts +2 -0
  144. package/dist/tools/__tests__/get-component-docs.property.test.d.ts.map +1 -0
  145. package/dist/tools/__tests__/get-component-docs.property.test.js +594 -0
  146. package/dist/tools/__tests__/get-component-docs.property.test.js.map +1 -0
  147. package/dist/tools/__tests__/get-component-docs.test.d.ts +2 -0
  148. package/dist/tools/__tests__/get-component-docs.test.d.ts.map +1 -0
  149. package/dist/tools/__tests__/get-component-docs.test.js +137 -0
  150. package/dist/tools/__tests__/get-component-docs.test.js.map +1 -0
  151. package/dist/tools/__tests__/get-component-examples.property.test.d.ts +2 -0
  152. package/dist/tools/__tests__/get-component-examples.property.test.d.ts.map +1 -0
  153. package/dist/tools/__tests__/get-component-examples.property.test.js +245 -0
  154. package/dist/tools/__tests__/get-component-examples.property.test.js.map +1 -0
  155. package/dist/tools/__tests__/get-component-examples.test.d.ts +2 -0
  156. package/dist/tools/__tests__/get-component-examples.test.d.ts.map +1 -0
  157. package/dist/tools/__tests__/get-component-examples.test.js +128 -0
  158. package/dist/tools/__tests__/get-component-examples.test.js.map +1 -0
  159. package/dist/tools/__tests__/get-component-inputs.property.test.d.ts +2 -0
  160. package/dist/tools/__tests__/get-component-inputs.property.test.d.ts.map +1 -0
  161. package/dist/tools/__tests__/get-component-inputs.property.test.js +310 -0
  162. package/dist/tools/__tests__/get-component-inputs.property.test.js.map +1 -0
  163. package/dist/tools/__tests__/get-component-inputs.test.d.ts +2 -0
  164. package/dist/tools/__tests__/get-component-inputs.test.d.ts.map +1 -0
  165. package/dist/tools/__tests__/get-component-inputs.test.js +245 -0
  166. package/dist/tools/__tests__/get-component-inputs.test.js.map +1 -0
  167. package/dist/tools/__tests__/get-component-outputs.property.test.d.ts +2 -0
  168. package/dist/tools/__tests__/get-component-outputs.property.test.d.ts.map +1 -0
  169. package/dist/tools/__tests__/get-component-outputs.property.test.js +227 -0
  170. package/dist/tools/__tests__/get-component-outputs.property.test.js.map +1 -0
  171. package/dist/tools/__tests__/get-component-outputs.test.d.ts +2 -0
  172. package/dist/tools/__tests__/get-component-outputs.test.d.ts.map +1 -0
  173. package/dist/tools/__tests__/get-component-outputs.test.js +189 -0
  174. package/dist/tools/__tests__/get-component-outputs.test.js.map +1 -0
  175. package/dist/tools/__tests__/get-library-version.property.test.d.ts +2 -0
  176. package/dist/tools/__tests__/get-library-version.property.test.d.ts.map +1 -0
  177. package/dist/tools/__tests__/get-library-version.property.test.js +115 -0
  178. package/dist/tools/__tests__/get-library-version.property.test.js.map +1 -0
  179. package/dist/tools/__tests__/get-library-version.test.d.ts +2 -0
  180. package/dist/tools/__tests__/get-library-version.test.d.ts.map +1 -0
  181. package/dist/tools/__tests__/get-library-version.test.js +97 -0
  182. package/dist/tools/__tests__/get-library-version.test.js.map +1 -0
  183. package/dist/tools/__tests__/list-components.property.test.d.ts +2 -0
  184. package/dist/tools/__tests__/list-components.property.test.d.ts.map +1 -0
  185. package/dist/tools/__tests__/list-components.property.test.js +241 -0
  186. package/dist/tools/__tests__/list-components.property.test.js.map +1 -0
  187. package/dist/tools/__tests__/list-components.test.d.ts +2 -0
  188. package/dist/tools/__tests__/list-components.test.d.ts.map +1 -0
  189. package/dist/tools/__tests__/list-components.test.js +170 -0
  190. package/dist/tools/__tests__/list-components.test.js.map +1 -0
  191. package/dist/tools/__tests__/search-components.test.d.ts +2 -0
  192. package/dist/tools/__tests__/search-components.test.d.ts.map +1 -0
  193. package/dist/tools/__tests__/search-components.test.js +239 -0
  194. package/dist/tools/__tests__/search-components.test.js.map +1 -0
  195. package/dist/tools/get-deprecation-info.d.ts +42 -0
  196. package/dist/tools/get-deprecation-info.d.ts.map +1 -0
  197. package/dist/tools/get-deprecation-info.js +55 -0
  198. package/dist/tools/get-deprecation-info.js.map +1 -0
  199. package/dist/tools/get-library-version.d.ts +33 -0
  200. package/dist/tools/get-library-version.d.ts.map +1 -0
  201. package/dist/tools/get-library-version.js +62 -0
  202. package/dist/tools/get-library-version.js.map +1 -0
  203. package/dist/tools/index.d.ts +3 -0
  204. package/dist/tools/index.d.ts.map +1 -1
  205. package/dist/tools/index.js +3 -0
  206. package/dist/tools/index.js.map +1 -1
  207. package/dist/tools/list-deprecated.d.ts +47 -0
  208. package/dist/tools/list-deprecated.d.ts.map +1 -0
  209. package/dist/tools/list-deprecated.js +56 -0
  210. package/dist/tools/list-deprecated.js.map +1 -0
  211. package/dist/types/compodoc.d.ts +1 -0
  212. package/dist/types/compodoc.d.ts.map +1 -1
  213. package/dist/types/deprecation.d.ts +33 -0
  214. package/dist/types/deprecation.d.ts.map +1 -0
  215. package/dist/types/deprecation.js +5 -0
  216. package/dist/types/deprecation.js.map +1 -0
  217. package/dist/utils/__tests__/credential-masking.property.test.d.ts +2 -0
  218. package/dist/utils/__tests__/credential-masking.property.test.d.ts.map +1 -0
  219. package/dist/utils/__tests__/credential-masking.property.test.js +145 -0
  220. package/dist/utils/__tests__/credential-masking.property.test.js.map +1 -0
  221. package/dist/utils/__tests__/credential-masking.test.d.ts +2 -0
  222. package/dist/utils/__tests__/credential-masking.test.d.ts.map +1 -0
  223. package/dist/utils/__tests__/credential-masking.test.js +188 -0
  224. package/dist/utils/__tests__/credential-masking.test.js.map +1 -0
  225. package/dist/utils/__tests__/errors.test.d.ts +2 -0
  226. package/dist/utils/__tests__/errors.test.d.ts.map +1 -0
  227. package/dist/utils/__tests__/errors.test.js +110 -0
  228. package/dist/utils/__tests__/errors.test.js.map +1 -0
  229. package/dist/utils/__tests__/integration.test.d.ts +2 -0
  230. package/dist/utils/__tests__/integration.test.d.ts.map +1 -0
  231. package/dist/utils/__tests__/integration.test.js +142 -0
  232. package/dist/utils/__tests__/integration.test.js.map +1 -0
  233. package/dist/utils/__tests__/logger.test.d.ts +2 -0
  234. package/dist/utils/__tests__/logger.test.d.ts.map +1 -0
  235. package/dist/utils/__tests__/logger.test.js +119 -0
  236. package/dist/utils/__tests__/logger.test.js.map +1 -0
  237. package/dist/utils/__tests__/retry.test.d.ts +2 -0
  238. package/dist/utils/__tests__/retry.test.d.ts.map +1 -0
  239. package/dist/utils/__tests__/retry.test.js +84 -0
  240. package/dist/utils/__tests__/retry.test.js.map +1 -0
  241. package/dist/utils/credential-masking.js +4 -4
  242. package/dist/utils/credential-masking.js.map +1 -1
  243. package/dist/version/__tests__/changelog-commit-grouping.property.test.d.ts +2 -0
  244. package/dist/version/__tests__/changelog-commit-grouping.property.test.d.ts.map +1 -0
  245. package/dist/version/__tests__/changelog-commit-grouping.property.test.js +297 -0
  246. package/dist/version/__tests__/changelog-commit-grouping.property.test.js.map +1 -0
  247. package/dist/version/__tests__/changelog-commit-parsing.property.test.d.ts +2 -0
  248. package/dist/version/__tests__/changelog-commit-parsing.property.test.d.ts.map +1 -0
  249. package/dist/version/__tests__/changelog-commit-parsing.property.test.js +396 -0
  250. package/dist/version/__tests__/changelog-commit-parsing.property.test.js.map +1 -0
  251. package/dist/version/__tests__/changelog-file-updates.property.test.d.ts +11 -0
  252. package/dist/version/__tests__/changelog-file-updates.property.test.d.ts.map +1 -0
  253. package/dist/version/__tests__/changelog-file-updates.property.test.js +452 -0
  254. package/dist/version/__tests__/changelog-file-updates.property.test.js.map +1 -0
  255. package/dist/version/__tests__/dry-run-action.property.test.d.ts +8 -0
  256. package/dist/version/__tests__/dry-run-action.property.test.d.ts.map +1 -0
  257. package/dist/version/__tests__/dry-run-action.property.test.js +50 -0
  258. package/dist/version/__tests__/dry-run-action.property.test.js.map +1 -0
  259. package/dist/version/__tests__/dry-run-changelog.property.test.d.ts +8 -0
  260. package/dist/version/__tests__/dry-run-changelog.property.test.d.ts.map +1 -0
  261. package/dist/version/__tests__/dry-run-changelog.property.test.js +53 -0
  262. package/dist/version/__tests__/dry-run-changelog.property.test.js.map +1 -0
  263. package/dist/version/__tests__/dry-run-utils.test.d.ts +7 -0
  264. package/dist/version/__tests__/dry-run-utils.test.d.ts.map +1 -0
  265. package/dist/version/__tests__/dry-run-utils.test.js +205 -0
  266. package/dist/version/__tests__/dry-run-utils.test.js.map +1 -0
  267. package/dist/version/__tests__/dry-run-version.property.test.d.ts +8 -0
  268. package/dist/version/__tests__/dry-run-version.property.test.d.ts.map +1 -0
  269. package/dist/version/__tests__/dry-run-version.property.test.js +59 -0
  270. package/dist/version/__tests__/dry-run-version.property.test.js.map +1 -0
  271. package/dist/version/__tests__/git-tag-annotation.property.test.d.ts +11 -0
  272. package/dist/version/__tests__/git-tag-annotation.property.test.d.ts.map +1 -0
  273. package/dist/version/__tests__/git-tag-annotation.property.test.js +271 -0
  274. package/dist/version/__tests__/git-tag-annotation.property.test.js.map +1 -0
  275. package/dist/version/__tests__/git-tag-format.property.test.d.ts +11 -0
  276. package/dist/version/__tests__/git-tag-format.property.test.d.ts.map +1 -0
  277. package/dist/version/__tests__/git-tag-format.property.test.js +411 -0
  278. package/dist/version/__tests__/git-tag-format.property.test.js.map +1 -0
  279. package/dist/version/__tests__/git-tag-utils.test.d.ts +2 -0
  280. package/dist/version/__tests__/git-tag-utils.test.d.ts.map +1 -0
  281. package/dist/version/__tests__/git-tag-utils.test.js +142 -0
  282. package/dist/version/__tests__/git-tag-utils.test.js.map +1 -0
  283. package/dist/version/__tests__/npm-tag-selection.property.test.d.ts +2 -0
  284. package/dist/version/__tests__/npm-tag-selection.property.test.d.ts.map +1 -0
  285. package/dist/version/__tests__/npm-tag-selection.property.test.js +79 -0
  286. package/dist/version/__tests__/npm-tag-selection.property.test.js.map +1 -0
  287. package/dist/version/__tests__/release-title-format.property.test.d.ts +11 -0
  288. package/dist/version/__tests__/release-title-format.property.test.d.ts.map +1 -0
  289. package/dist/version/__tests__/release-title-format.property.test.js +422 -0
  290. package/dist/version/__tests__/release-title-format.property.test.js.map +1 -0
  291. package/dist/version/__tests__/release-utils.test.d.ts +7 -0
  292. package/dist/version/__tests__/release-utils.test.d.ts.map +1 -0
  293. package/dist/version/__tests__/release-utils.test.js +176 -0
  294. package/dist/version/__tests__/release-utils.test.js.map +1 -0
  295. package/dist/version/__tests__/rollback-changelog.property.test.d.ts +8 -0
  296. package/dist/version/__tests__/rollback-changelog.property.test.d.ts.map +1 -0
  297. package/dist/version/__tests__/rollback-changelog.property.test.js +61 -0
  298. package/dist/version/__tests__/rollback-changelog.property.test.js.map +1 -0
  299. package/dist/version/__tests__/rollback-utils.test.d.ts +7 -0
  300. package/dist/version/__tests__/rollback-utils.test.d.ts.map +1 -0
  301. package/dist/version/__tests__/rollback-utils.test.js +74 -0
  302. package/dist/version/__tests__/rollback-utils.test.js.map +1 -0
  303. package/dist/version/__tests__/version-manager.property.test.d.ts +2 -0
  304. package/dist/version/__tests__/version-manager.property.test.d.ts.map +1 -0
  305. package/dist/version/__tests__/version-manager.property.test.js +143 -0
  306. package/dist/version/__tests__/version-manager.property.test.js.map +1 -0
  307. package/dist/version/__tests__/version-manager.test.d.ts +2 -0
  308. package/dist/version/__tests__/version-manager.test.d.ts.map +1 -0
  309. package/dist/version/__tests__/version-manager.test.js +203 -0
  310. package/dist/version/__tests__/version-manager.test.js.map +1 -0
  311. package/dist/version/version-manager.d.ts.map +1 -1
  312. package/dist/version/version-manager.js +0 -4
  313. package/dist/version/version-manager.js.map +1 -1
  314. package/package.json +1 -1
  315. package/dist/test-error.ts +0 -1
@@ -0,0 +1,159 @@
1
+ import { ResultFormatter } from '../result-formatter';
2
+ describe('ResultFormatter - Deprecation Methods', () => {
3
+ let formatter;
4
+ beforeEach(() => {
5
+ formatter = new ResultFormatter();
6
+ });
7
+ describe('formatDeprecatedList', () => {
8
+ it('should return message when no deprecated items', () => {
9
+ const result = formatter.formatDeprecatedList([], false);
10
+ expect(result).toBe('No deprecated items found.');
11
+ });
12
+ it('should format single deprecated item', () => {
13
+ const items = [
14
+ {
15
+ name: 'OldButton',
16
+ type: 'component',
17
+ deprecationMessage: 'Use NewButton instead',
18
+ },
19
+ ];
20
+ const result = formatter.formatDeprecatedList(items, false);
21
+ expect(result).toContain('Found 1 deprecated item(s)');
22
+ expect(result).toContain('## Components');
23
+ expect(result).toContain('### OldButton');
24
+ expect(result).toContain('- **Message**: Use NewButton instead');
25
+ });
26
+ it('should group items by type', () => {
27
+ const items = [
28
+ {
29
+ name: 'OldButton',
30
+ type: 'component',
31
+ deprecationMessage: 'Deprecated',
32
+ },
33
+ {
34
+ name: 'OldPipe',
35
+ type: 'pipe',
36
+ deprecationMessage: 'Deprecated',
37
+ },
38
+ ];
39
+ const result = formatter.formatDeprecatedList(items, false);
40
+ expect(result).toContain('## Components');
41
+ expect(result).toContain('## Pipes');
42
+ });
43
+ it('should include version when available', () => {
44
+ const items = [
45
+ {
46
+ name: 'OldButton',
47
+ type: 'component',
48
+ deprecationMessage: 'Deprecated',
49
+ versionDeprecated: '2.0.0',
50
+ },
51
+ ];
52
+ const result = formatter.formatDeprecatedList(items, false);
53
+ expect(result).toContain('- **Deprecated in**: v2.0.0');
54
+ });
55
+ it('should include replacement when requested', () => {
56
+ const items = [
57
+ {
58
+ name: 'OldButton',
59
+ type: 'component',
60
+ deprecationMessage: 'Deprecated',
61
+ replacementSuggestion: 'NewButton',
62
+ },
63
+ ];
64
+ const result = formatter.formatDeprecatedList(items, true);
65
+ expect(result).toContain('- **Replacement**: NewButton');
66
+ });
67
+ it('should not include replacement when not requested', () => {
68
+ const items = [
69
+ {
70
+ name: 'OldButton',
71
+ type: 'component',
72
+ deprecationMessage: 'Deprecated',
73
+ replacementSuggestion: 'NewButton',
74
+ },
75
+ ];
76
+ const result = formatter.formatDeprecatedList(items, false);
77
+ expect(result).not.toContain('- **Replacement**: NewButton');
78
+ });
79
+ it('should handle multiple items of same type', () => {
80
+ const items = [
81
+ {
82
+ name: 'OldButton',
83
+ type: 'component',
84
+ deprecationMessage: 'Deprecated 1',
85
+ },
86
+ {
87
+ name: 'OldInput',
88
+ type: 'component',
89
+ deprecationMessage: 'Deprecated 2',
90
+ },
91
+ ];
92
+ const result = formatter.formatDeprecatedList(items, false);
93
+ expect(result).toContain('### OldButton');
94
+ expect(result).toContain('### OldInput');
95
+ });
96
+ });
97
+ describe('formatDeprecationInfo', () => {
98
+ it('should format non-deprecated component', () => {
99
+ const info = {
100
+ name: 'ActiveButton',
101
+ type: 'component',
102
+ isDeprecated: false,
103
+ };
104
+ const result = formatter.formatDeprecationInfo(info);
105
+ expect(result).toBe('ActiveButton (component) is not deprecated.');
106
+ });
107
+ it('should format deprecated component with minimal info', () => {
108
+ const info = {
109
+ name: 'OldButton',
110
+ type: 'component',
111
+ isDeprecated: true,
112
+ deprecationMessage: 'This is deprecated',
113
+ };
114
+ const result = formatter.formatDeprecationInfo(info);
115
+ expect(result).toContain('# OldButton (component)');
116
+ expect(result).toContain('**Status**: DEPRECATED');
117
+ expect(result).toContain('**Message**: This is deprecated');
118
+ });
119
+ it('should include version when available', () => {
120
+ const info = {
121
+ name: 'OldButton',
122
+ type: 'component',
123
+ isDeprecated: true,
124
+ deprecationMessage: 'Deprecated',
125
+ versionDeprecated: '2.0.0',
126
+ };
127
+ const result = formatter.formatDeprecationInfo(info);
128
+ expect(result).toContain('**Deprecated in**: v2.0.0');
129
+ });
130
+ it('should include replacement when available', () => {
131
+ const info = {
132
+ name: 'OldButton',
133
+ type: 'component',
134
+ isDeprecated: true,
135
+ deprecationMessage: 'Deprecated',
136
+ replacementSuggestion: 'NewButton',
137
+ };
138
+ const result = formatter.formatDeprecationInfo(info);
139
+ expect(result).toContain('**Recommended replacement**: NewButton');
140
+ });
141
+ it('should format complete deprecation info', () => {
142
+ const info = {
143
+ name: 'OldButton',
144
+ type: 'component',
145
+ isDeprecated: true,
146
+ deprecationMessage: 'Use NewButton instead',
147
+ versionDeprecated: '2.0.0',
148
+ replacementSuggestion: 'NewButton',
149
+ };
150
+ const result = formatter.formatDeprecationInfo(info);
151
+ expect(result).toContain('# OldButton (component)');
152
+ expect(result).toContain('**Status**: DEPRECATED');
153
+ expect(result).toContain('**Message**: Use NewButton instead');
154
+ expect(result).toContain('**Deprecated in**: v2.0.0');
155
+ expect(result).toContain('**Recommended replacement**: NewButton');
156
+ });
157
+ });
158
+ });
159
+ //# sourceMappingURL=result-formatter-deprecation.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter-deprecation.test.js","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter-deprecation.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=result-formatter.integration.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.integration.test.d.ts","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.integration.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,140 @@
1
+ /**
2
+ * Integration test for prefer-raw-description feature
3
+ * Validates: Requirements 5.1, 5.2, 5.3, 5.4, 5.5
4
+ */
5
+ import { describe, it, expect } from '@jest/globals';
6
+ import { GetComponentDocsTool } from '../../tools/get-component-docs.js';
7
+ import { ListComponentsTool } from '../../tools/list-components.js';
8
+ import { ComponentQuery } from '../component-query.js';
9
+ import { ResultFormatter } from '../result-formatter.js';
10
+ import { IndexBuilder } from '../index-builder.js';
11
+ describe('Integration: prefer-raw-description', () => {
12
+ // Create sample documentation with rawdescription
13
+ const sampleDoc = {
14
+ components: [
15
+ {
16
+ name: 'TestComponent',
17
+ id: 'test-1',
18
+ file: 'test.ts',
19
+ type: 'component',
20
+ selector: 'app-test',
21
+ description: '<p>HTML description with <strong>markup</strong></p>',
22
+ rawdescription: 'Raw markdown description with **bold**',
23
+ deprecated: false,
24
+ inputsClass: [
25
+ {
26
+ name: 'testInput',
27
+ type: 'string',
28
+ description: '<p>HTML input description</p>',
29
+ rawdescription: 'Raw input description',
30
+ deprecated: false,
31
+ },
32
+ ],
33
+ methods: [
34
+ {
35
+ name: 'testMethod',
36
+ description: '<p>HTML method description</p>',
37
+ rawdescription: 'Raw method description',
38
+ deprecated: false,
39
+ },
40
+ ],
41
+ },
42
+ ],
43
+ directives: [],
44
+ pipes: [],
45
+ injectables: [],
46
+ interfaces: [],
47
+ classes: [],
48
+ modules: [],
49
+ };
50
+ const indexBuilder = new IndexBuilder();
51
+ const index = indexBuilder.build(sampleDoc);
52
+ const query = new ComponentQuery(index);
53
+ const formatter = new ResultFormatter();
54
+ describe('get-component-docs tool', () => {
55
+ it('should use rawdescription in component details', () => {
56
+ const tool = new GetComponentDocsTool(query, formatter);
57
+ const result = tool.execute({ name: 'TestComponent' });
58
+ expect(result.component.description).toBe('Raw markdown description with **bold**');
59
+ expect(result.component.description).not.toContain('<p>');
60
+ expect(result.component.description).not.toContain('</p>');
61
+ });
62
+ it('should use rawdescription in input descriptions', () => {
63
+ const tool = new GetComponentDocsTool(query, formatter);
64
+ const result = tool.execute({ name: 'TestComponent' });
65
+ expect(result.component.inputs).toHaveLength(1);
66
+ expect(result.component.inputs[0].description).toBe('Raw input description');
67
+ expect(result.component.inputs[0].description).not.toContain('<p>');
68
+ });
69
+ it('should use rawdescription in method descriptions', () => {
70
+ const tool = new GetComponentDocsTool(query, formatter);
71
+ const result = tool.execute({ name: 'TestComponent' });
72
+ expect(result.component.methods).toHaveLength(1);
73
+ expect(result.component.methods[0].description).toBe('Raw method description');
74
+ expect(result.component.methods[0].description).not.toContain('<p>');
75
+ });
76
+ });
77
+ describe('list-components tool', () => {
78
+ it('should use rawdescription in component summaries', () => {
79
+ const tool = new ListComponentsTool(query, formatter);
80
+ const result = tool.execute({});
81
+ expect(result.items).toHaveLength(1);
82
+ expect(result.items[0].description).toBe('Raw markdown description with **bold**');
83
+ expect(result.items[0].description).not.toContain('<p>');
84
+ });
85
+ });
86
+ describe('fallback behavior', () => {
87
+ const docWithoutRaw = {
88
+ components: [
89
+ {
90
+ name: 'LegacyComponent',
91
+ id: 'legacy-1',
92
+ file: 'legacy.ts',
93
+ type: 'component',
94
+ description: '<p>Only HTML description available</p>',
95
+ deprecated: false,
96
+ },
97
+ ],
98
+ directives: [],
99
+ pipes: [],
100
+ injectables: [],
101
+ interfaces: [],
102
+ classes: [],
103
+ modules: [],
104
+ };
105
+ const legacyIndex = indexBuilder.build(docWithoutRaw);
106
+ const legacyQuery = new ComponentQuery(legacyIndex);
107
+ it('should fall back to description when rawdescription is not available', () => {
108
+ const tool = new GetComponentDocsTool(legacyQuery, formatter);
109
+ const result = tool.execute({ name: 'LegacyComponent' });
110
+ expect(result.component.description).toBe('<p>Only HTML description available</p>');
111
+ });
112
+ });
113
+ describe('empty description handling', () => {
114
+ const docWithoutDesc = {
115
+ components: [
116
+ {
117
+ name: 'NoDescComponent',
118
+ id: 'nodesc-1',
119
+ file: 'nodesc.ts',
120
+ type: 'component',
121
+ deprecated: false,
122
+ },
123
+ ],
124
+ directives: [],
125
+ pipes: [],
126
+ injectables: [],
127
+ interfaces: [],
128
+ classes: [],
129
+ modules: [],
130
+ };
131
+ const noDescIndex = indexBuilder.build(docWithoutDesc);
132
+ const noDescQuery = new ComponentQuery(noDescIndex);
133
+ it('should return empty string when neither description exists', () => {
134
+ const tool = new GetComponentDocsTool(noDescQuery, formatter);
135
+ const result = tool.execute({ name: 'NoDescComponent' });
136
+ expect(result.component.description).toBe('');
137
+ });
138
+ });
139
+ });
140
+ //# sourceMappingURL=result-formatter.integration.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.integration.test.js","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.integration.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=result-formatter.property.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.property.test.d.ts","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.property.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,163 @@
1
+ /**
2
+ * Property-based tests for ResultFormatter
3
+ * Feature: prefer-raw-description
4
+ */
5
+ import { describe, it, expect } from '@jest/globals';
6
+ import * as fc from 'fast-check';
7
+ import { ResultFormatter } from '../result-formatter.js';
8
+ describe('ResultFormatter - Property Tests', () => {
9
+ const formatter = new ResultFormatter();
10
+ /**
11
+ * Property 1: Description Preference for Document Summaries
12
+ * Validates: Requirements 1.1, 1.2, 1.3, 1.4, 1.5, 1.6
13
+ */
14
+ describe('Property 1: Description preference for document summaries', () => {
15
+ const componentArbitrary = fc.record({
16
+ name: fc.string({ minLength: 1, maxLength: 50 }),
17
+ id: fc.string({ minLength: 1 }),
18
+ file: fc.string({ minLength: 1 }),
19
+ type: fc.constant('component'),
20
+ selector: fc.option(fc.string({ minLength: 1 }), { nil: undefined }),
21
+ description: fc.option(fc.string(), { nil: undefined }),
22
+ rawdescription: fc.option(fc.string(), { nil: undefined }),
23
+ deprecated: fc.boolean(),
24
+ });
25
+ it('should prefer rawdescription over description for all documents', () => {
26
+ fc.assert(fc.property(componentArbitrary, (doc) => {
27
+ const result = formatter.formatSummary(doc);
28
+ // Determine expected description based on preference logic
29
+ const expectedDescription = doc.rawdescription ?? doc.description ?? '';
30
+ expect(result.description).toBe(expectedDescription);
31
+ }), { numRuns: 100 });
32
+ });
33
+ it('should prefer rawdescription in formatDetails', () => {
34
+ fc.assert(fc.property(componentArbitrary, (doc) => {
35
+ const result = formatter.formatDetails(doc);
36
+ const expectedDescription = doc.rawdescription ?? doc.description ?? '';
37
+ expect(result.description).toBe(expectedDescription);
38
+ }), { numRuns: 100 });
39
+ });
40
+ });
41
+ /**
42
+ * Property 2: Description Preference for Properties
43
+ * Validates: Requirements 2.1, 2.2, 2.3, 2.4
44
+ */
45
+ describe('Property 2: Description preference for properties', () => {
46
+ const propertyArbitrary = fc.record({
47
+ name: fc.string({ minLength: 1, maxLength: 50 }),
48
+ type: fc.string({ minLength: 1 }),
49
+ optional: fc.boolean(),
50
+ description: fc.option(fc.string(), { nil: undefined }),
51
+ rawdescription: fc.option(fc.string(), { nil: undefined }),
52
+ defaultValue: fc.option(fc.string(), { nil: undefined }),
53
+ deprecated: fc.boolean(),
54
+ });
55
+ const componentWithInputsArbitrary = fc.record({
56
+ name: fc.string({ minLength: 1 }),
57
+ id: fc.string({ minLength: 1 }),
58
+ file: fc.string({ minLength: 1 }),
59
+ type: fc.constant('component'),
60
+ deprecated: fc.boolean(),
61
+ inputsClass: fc.array(propertyArbitrary, { minLength: 1, maxLength: 5 }),
62
+ });
63
+ it('should prefer rawdescription over description for properties', () => {
64
+ fc.assert(fc.property(componentWithInputsArbitrary, (doc) => {
65
+ const inputs = formatter.formatInputs(doc);
66
+ inputs.forEach((input, index) => {
67
+ const originalProp = doc.inputsClass[index];
68
+ const expectedDescription = originalProp.rawdescription ?? originalProp.description ?? '';
69
+ expect(input.description).toBe(expectedDescription);
70
+ });
71
+ }), { numRuns: 100 });
72
+ });
73
+ });
74
+ /**
75
+ * Property 3: Description Preference for Methods
76
+ * Validates: Requirements 3.1, 3.2
77
+ */
78
+ describe('Property 3: Description preference for methods', () => {
79
+ const argumentArbitrary = fc.record({
80
+ name: fc.string({ minLength: 1 }),
81
+ type: fc.string({ minLength: 1 }),
82
+ optional: fc.boolean(),
83
+ defaultValue: fc.option(fc.string(), { nil: undefined }),
84
+ deprecated: fc.boolean(),
85
+ });
86
+ const methodArbitrary = fc.record({
87
+ name: fc.string({ minLength: 1, maxLength: 50 }),
88
+ description: fc.option(fc.string(), { nil: undefined }),
89
+ rawdescription: fc.option(fc.string(), { nil: undefined }),
90
+ args: fc.option(fc.array(argumentArbitrary), { nil: undefined }),
91
+ returnType: fc.option(fc.string(), { nil: undefined }),
92
+ deprecated: fc.boolean(),
93
+ });
94
+ const componentWithMethodsArbitrary = fc.record({
95
+ name: fc.string({ minLength: 1 }),
96
+ id: fc.string({ minLength: 1 }),
97
+ file: fc.string({ minLength: 1 }),
98
+ type: fc.constant('component'),
99
+ deprecated: fc.boolean(),
100
+ methods: fc.array(methodArbitrary, { minLength: 1, maxLength: 5 }),
101
+ });
102
+ it('should prefer rawdescription over description for methods', () => {
103
+ fc.assert(fc.property(componentWithMethodsArbitrary, (doc) => {
104
+ const methods = formatter.formatMethods(doc);
105
+ methods.forEach((method, index) => {
106
+ const originalMethod = doc.methods[index];
107
+ const expectedDescription = originalMethod.rawdescription ?? originalMethod.description ?? '';
108
+ expect(method.description).toBe(expectedDescription);
109
+ });
110
+ }), { numRuns: 100 });
111
+ });
112
+ });
113
+ /**
114
+ * Property 4: Output Structure Consistency
115
+ * Validates: Requirements 4.1, 4.3
116
+ */
117
+ describe('Property 4: Output structure consistency', () => {
118
+ const componentArbitrary = fc.record({
119
+ name: fc.string({ minLength: 1 }),
120
+ id: fc.string({ minLength: 1 }),
121
+ file: fc.string({ minLength: 1 }),
122
+ type: fc.constant('component'),
123
+ selector: fc.option(fc.string(), { nil: undefined }),
124
+ description: fc.option(fc.string(), { nil: undefined }),
125
+ rawdescription: fc.option(fc.string(), { nil: undefined }),
126
+ deprecated: fc.boolean(),
127
+ });
128
+ it('should maintain consistent output structure in formatSummary', () => {
129
+ fc.assert(fc.property(componentArbitrary, (doc) => {
130
+ const result = formatter.formatSummary(doc);
131
+ // Verify expected fields exist
132
+ expect(result).toHaveProperty('name');
133
+ expect(result).toHaveProperty('type');
134
+ expect(result).toHaveProperty('description');
135
+ expect(result).toHaveProperty('deprecated');
136
+ // Verify no unexpected fields (only check known fields)
137
+ const expectedKeys = ['name', 'type', 'selector', 'description', 'deprecated'];
138
+ const actualKeys = Object.keys(result);
139
+ actualKeys.forEach(key => {
140
+ expect(expectedKeys).toContain(key);
141
+ });
142
+ }), { numRuns: 100 });
143
+ });
144
+ it('should maintain consistent output structure in formatDetails', () => {
145
+ fc.assert(fc.property(componentArbitrary, (doc) => {
146
+ const result = formatter.formatDetails(doc);
147
+ // Verify expected fields exist
148
+ expect(result).toHaveProperty('name');
149
+ expect(result).toHaveProperty('type');
150
+ expect(result).toHaveProperty('description');
151
+ expect(result).toHaveProperty('deprecated');
152
+ expect(result).toHaveProperty('inputs');
153
+ expect(result).toHaveProperty('outputs');
154
+ expect(result).toHaveProperty('methods');
155
+ expect(result).toHaveProperty('examples');
156
+ // Verify description field contains preferred value
157
+ const expectedDescription = doc.rawdescription ?? doc.description ?? '';
158
+ expect(result.description).toBe(expectedDescription);
159
+ }), { numRuns: 100 });
160
+ });
161
+ });
162
+ });
163
+ //# sourceMappingURL=result-formatter.property.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.property.test.js","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.property.test.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,YAAY,CAAC;AACjC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAGzD,QAAQ,CAAC,kCAAkC,EAAE,GAAG,EAAE;IAChD,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;IAExC;;;OAGG;IACH,QAAQ,CAAC,2DAA2D,EAAE,GAAG,EAAE;QACzE,MAAM,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC;YACnC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;YAChD,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC/B,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAoB,CAAC;YACvC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACpE,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACvD,cAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAC1D,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,EAAE,CAAC,iEAAiE,EAAE,GAAG,EAAE;YACzE,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAE5C,2DAA2D;gBAC3D,MAAM,mBAAmB,GAAG,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;gBAExE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvD,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,+CAA+C,EAAE,GAAG,EAAE;YACvD,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAE5C,MAAM,mBAAmB,GAAG,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;gBAExE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvD,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH;;;OAGG;IACH,QAAQ,CAAC,mDAAmD,EAAE,GAAG,EAAE;QACjE,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;YAChD,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,QAAQ,EAAE,EAAE,CAAC,OAAO,EAAE;YACtB,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACvD,cAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAC1D,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACxD,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,4BAA4B,GAAG,EAAE,CAAC,MAAM,CAAC;YAC7C,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC/B,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAoB,CAAC;YACvC,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;YACxB,WAAW,EAAE,EAAE,CAAC,KAAK,CAAC,iBAAiB,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;SACzE,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACtE,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,4BAA4B,EAAE,CAAC,GAAiB,EAAE,EAAE;gBAC9D,MAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;gBAE3C,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;oBAC9B,MAAM,YAAY,GAAG,GAAG,CAAC,WAAY,CAAC,KAAK,CAAC,CAAC;oBAC7C,MAAM,mBAAmB,GAAG,YAAY,CAAC,cAAc,IAAI,YAAY,CAAC,WAAW,IAAI,EAAE,CAAC;oBAE1F,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACtD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH;;;OAGG;IACH,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;QAC9D,MAAM,iBAAiB,GAAG,EAAE,CAAC,MAAM,CAAC;YAClC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,QAAQ,EAAE,EAAE,CAAC,OAAO,EAAE;YACtB,YAAY,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACxD,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,eAAe,GAAG,EAAE,CAAC,MAAM,CAAC;YAChC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;YAChD,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACvD,cAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAC1D,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAChE,UAAU,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACtD,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,MAAM,6BAA6B,GAAG,EAAE,CAAC,MAAM,CAAC;YAC9C,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC/B,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAoB,CAAC;YACvC,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;YACxB,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;SACnE,CAAC,CAAC;QAEH,EAAE,CAAC,2DAA2D,EAAE,GAAG,EAAE;YACnE,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,6BAA6B,EAAE,CAAC,GAAiB,EAAE,EAAE;gBAC/D,MAAM,OAAO,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAE7C,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;oBAChC,MAAM,cAAc,GAAG,GAAG,CAAC,OAAQ,CAAC,KAAK,CAAC,CAAC;oBAC3C,MAAM,mBAAmB,GAAG,cAAc,CAAC,cAAc,IAAI,cAAc,CAAC,WAAW,IAAI,EAAE,CAAC;oBAE9F,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;gBACvD,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH;;;OAGG;IACH,QAAQ,CAAC,0CAA0C,EAAE,GAAG,EAAE;QACxD,MAAM,kBAAkB,GAAG,EAAE,CAAC,MAAM,CAAC;YACnC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,EAAE,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YAC/B,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,CAAC;YACjC,IAAI,EAAE,EAAE,CAAC,QAAQ,CAAC,WAAoB,CAAC;YACvC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACpD,WAAW,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YACvD,cAAc,EAAE,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,EAAE,SAAS,EAAE,CAAC;YAC1D,UAAU,EAAE,EAAE,CAAC,OAAO,EAAE;SACzB,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACtE,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAE5C,+BAA+B;gBAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;gBAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAE5C,wDAAwD;gBACxD,MAAM,YAAY,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;gBAC/E,MAAM,UAAU,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAEvC,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE;oBACvB,MAAM,CAAC,YAAY,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACtC,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,EAAE,CAAC,8DAA8D,EAAE,GAAG,EAAE;YACtE,EAAE,CAAC,MAAM,CACP,EAAE,CAAC,QAAQ,CAAC,kBAAkB,EAAE,CAAC,GAAiB,EAAE,EAAE;gBACpD,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;gBAE5C,+BAA+B;gBAC/B,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;gBACtC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,aAAa,CAAC,CAAC;gBAC7C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,YAAY,CAAC,CAAC;gBAC5C,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;gBACxC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;gBACzC,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC;gBAE1C,oDAAoD;gBACpD,MAAM,mBAAmB,GAAG,GAAG,CAAC,cAAc,IAAI,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;gBACxE,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;YACvD,CAAC,CAAC,EACF,EAAE,OAAO,EAAE,GAAG,EAAE,CACjB,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=result-formatter.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.test.d.ts","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,85 @@
1
+ /**
2
+ * Unit tests for ResultFormatter
3
+ */
4
+ import { describe, it, expect } from '@jest/globals';
5
+ import { ResultFormatter } from '../result-formatter.js';
6
+ describe('ResultFormatter', () => {
7
+ const formatter = new ResultFormatter();
8
+ describe('getPreferredDescription', () => {
9
+ it('should use rawdescription when only rawdescription exists', () => {
10
+ const doc = {
11
+ name: 'TestComponent',
12
+ id: 'test-1',
13
+ file: 'test.ts',
14
+ type: 'component',
15
+ rawdescription: 'Raw description text',
16
+ deprecated: false,
17
+ };
18
+ const result = formatter.formatSummary(doc);
19
+ expect(result.description).toBe('Raw description text');
20
+ });
21
+ it('should use description when only description exists', () => {
22
+ const doc = {
23
+ name: 'TestComponent',
24
+ id: 'test-1',
25
+ file: 'test.ts',
26
+ type: 'component',
27
+ description: 'HTML description text',
28
+ deprecated: false,
29
+ };
30
+ const result = formatter.formatSummary(doc);
31
+ expect(result.description).toBe('HTML description text');
32
+ });
33
+ it('should prefer rawdescription over description when both exist', () => {
34
+ const doc = {
35
+ name: 'TestComponent',
36
+ id: 'test-1',
37
+ file: 'test.ts',
38
+ type: 'component',
39
+ rawdescription: 'Raw description text',
40
+ description: 'HTML description text',
41
+ deprecated: false,
42
+ };
43
+ const result = formatter.formatSummary(doc);
44
+ expect(result.description).toBe('Raw description text');
45
+ });
46
+ it('should return empty string when neither exists', () => {
47
+ const doc = {
48
+ name: 'TestComponent',
49
+ id: 'test-1',
50
+ file: 'test.ts',
51
+ type: 'component',
52
+ deprecated: false,
53
+ };
54
+ const result = formatter.formatSummary(doc);
55
+ expect(result.description).toBe('');
56
+ });
57
+ it('should treat empty string rawdescription as valid', () => {
58
+ const doc = {
59
+ name: 'TestComponent',
60
+ id: 'test-1',
61
+ file: 'test.ts',
62
+ type: 'component',
63
+ rawdescription: '',
64
+ description: 'HTML description text',
65
+ deprecated: false,
66
+ };
67
+ const result = formatter.formatSummary(doc);
68
+ expect(result.description).toBe('');
69
+ });
70
+ it('should use description when rawdescription is undefined', () => {
71
+ const doc = {
72
+ name: 'TestComponent',
73
+ id: 'test-1',
74
+ file: 'test.ts',
75
+ type: 'component',
76
+ rawdescription: undefined,
77
+ description: 'HTML description text',
78
+ deprecated: false,
79
+ };
80
+ const result = formatter.formatSummary(doc);
81
+ expect(result.description).toBe('HTML description text');
82
+ });
83
+ });
84
+ });
85
+ //# sourceMappingURL=result-formatter.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"result-formatter.test.js","sourceRoot":"","sources":["../../../src/query/__tests__/result-formatter.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=search-engine.property.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search-engine.property.test.d.ts","sourceRoot":"","sources":["../../../src/query/__tests__/search-engine.property.test.ts"],"names":[],"mappings":""}