@enjoys/context-engine 1.3.1 → 1.4.2

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 (593) hide show
  1. package/data/codeActions/angular.json +126 -0
  2. package/data/codeActions/nestjs.json +124 -0
  3. package/data/codeActions/nextjs.json +198 -0
  4. package/data/codeActions/react.json +154 -0
  5. package/data/codeActions/shadcn.json +112 -0
  6. package/data/codeActions/shell.json +169 -26
  7. package/data/codeLens/angular.json +22 -0
  8. package/data/codeLens/awk.json +1 -1
  9. package/data/codeLens/azcli.json +10 -10
  10. package/data/codeLens/c.json +1 -1
  11. package/data/codeLens/caddy.json +1 -1
  12. package/data/codeLens/crontab.json +1 -1
  13. package/data/codeLens/doctest.json +10 -10
  14. package/data/codeLens/hcl.json +1 -1
  15. package/data/codeLens/html.json +1 -1
  16. package/data/codeLens/lua.json +1 -1
  17. package/data/codeLens/nestjs.json +21 -0
  18. package/data/codeLens/nextjs.json +117 -0
  19. package/data/codeLens/nginx.json +1 -1
  20. package/data/codeLens/pla.json +10 -10
  21. package/data/codeLens/react.json +89 -0
  22. package/data/codeLens/shadcn.json +89 -0
  23. package/data/codeLens/shell.json +59 -17
  24. package/data/codeLens/tailwindcss.json +56 -0
  25. package/data/codeLens/xml.json +1 -1
  26. package/data/color/angular.json +21 -0
  27. package/data/color/nestjs.json +18 -0
  28. package/data/color/nextjs.json +22 -0
  29. package/data/color/react.json +93 -0
  30. package/data/color/shadcn.json +66 -0
  31. package/data/color/shell.json +106 -80
  32. package/data/commands/angular.json +670 -0
  33. package/data/commands/c.json +30 -30
  34. package/data/commands/cpp.json +30 -30
  35. package/data/commands/crontab.json +25 -30
  36. package/data/commands/cypher.json +26 -30
  37. package/data/commands/dockerfile.json +26 -2
  38. package/data/commands/doctest.json +23 -24
  39. package/data/commands/dotenv.json +24 -11
  40. package/data/commands/ecl.json +26 -30
  41. package/data/commands/flow9.json +24 -24
  42. package/data/commands/freemarker2.json +24 -18
  43. package/data/commands/graphql.json +25 -11
  44. package/data/commands/html.json +25 -11
  45. package/data/commands/ini.json +26 -12
  46. package/data/commands/javascript.json +29 -30
  47. package/data/commands/less.json +25 -29
  48. package/data/commands/lexon.json +23 -11
  49. package/data/commands/liquid.json +26 -11
  50. package/data/commands/m3.json +26 -12
  51. package/data/commands/manifest.json +35 -726
  52. package/data/commands/markdown.json +26 -12
  53. package/data/commands/mdx.json +23 -10
  54. package/data/commands/mips.json +26 -18
  55. package/data/commands/msdax.json +23 -11
  56. package/data/commands/nestjs.json +516 -0
  57. package/data/commands/nextjs.json +250 -0
  58. package/data/commands/objective-c.json +26 -24
  59. package/data/commands/pascal.json +27 -24
  60. package/data/commands/pascaligo.json +26 -24
  61. package/data/commands/perl.json +30 -30
  62. package/data/commands/pla.json +23 -11
  63. package/data/commands/postiats.json +26 -24
  64. package/data/commands/powerquery.json +23 -11
  65. package/data/commands/powershell.json +28 -30
  66. package/data/commands/protobuf.json +27 -30
  67. package/data/commands/qsharp.json +26 -30
  68. package/data/commands/razor.json +25 -29
  69. package/data/commands/react.json +244 -0
  70. package/data/commands/redshift.json +27 -18
  71. package/data/commands/restructuredtext.json +29 -30
  72. package/data/commands/sb.json +23 -11
  73. package/data/commands/scheme.json +25 -18
  74. package/data/commands/scss.json +26 -29
  75. package/data/commands/shadcn.json +564 -0
  76. package/data/commands/shell.json +571 -41
  77. package/data/commands/sol.json +27 -30
  78. package/data/commands/sparql.json +25 -11
  79. package/data/commands/sql.json +16 -2
  80. package/data/commands/ssh_config.json +31 -30
  81. package/data/commands/st.json +23 -11
  82. package/data/commands/systemverilog.json +26 -24
  83. package/data/commands/tailwindcss.json +60 -53
  84. package/data/commands/tcl.json +23 -18
  85. package/data/commands/toml.json +25 -11
  86. package/data/commands/twig.json +23 -10
  87. package/data/commands/vb.json +27 -24
  88. package/data/commands/wgsl.json +24 -11
  89. package/data/commands/yaml.json +29 -30
  90. package/data/completion/angular.json +1490 -0
  91. package/data/completion/awk.json +906 -202
  92. package/data/completion/azcli.json +886 -237
  93. package/data/completion/bicep.json +862 -367
  94. package/data/completion/crontab.json +906 -202
  95. package/data/completion/css.json +793 -0
  96. package/data/completion/dotenv.json +895 -169
  97. package/data/completion/graphql.json +895 -180
  98. package/data/completion/hcl.json +906 -191
  99. package/data/completion/ini.json +906 -136
  100. package/data/completion/json.json +895 -169
  101. package/data/completion/lexon.json +856 -295
  102. package/data/completion/makefile.json +906 -202
  103. package/data/completion/markdown.json +906 -224
  104. package/data/completion/mdx.json +895 -87
  105. package/data/completion/mips.json +872 -377
  106. package/data/completion/nestjs.json +1454 -0
  107. package/data/completion/nextjs.json +1373 -0
  108. package/data/completion/perl.json +961 -202
  109. package/data/completion/pla.json +895 -154
  110. package/data/completion/powershell.json +906 -224
  111. package/data/completion/protobuf.json +884 -180
  112. package/data/completion/react.json +1319 -0
  113. package/data/completion/shadcn.json +1202 -0
  114. package/data/completion/shell.json +2446 -510
  115. package/data/completion/ssh_config.json +906 -158
  116. package/data/completion/xml.json +906 -158
  117. package/data/declaration/angular.json +46 -0
  118. package/data/declaration/nestjs.json +47 -0
  119. package/data/declaration/nextjs.json +274 -0
  120. package/data/declaration/react.json +199 -0
  121. package/data/declaration/shadcn.json +211 -0
  122. package/data/declaration/shell.json +343 -24
  123. package/data/declaration/tailwindcss.json +72 -0
  124. package/data/definition/abap.json +127 -1
  125. package/data/definition/angular.json +670 -0
  126. package/data/definition/apex.json +97 -1
  127. package/data/definition/coffee.json +51 -1
  128. package/data/definition/dart.json +105 -1
  129. package/data/definition/elixir.json +115 -1
  130. package/data/definition/flow9.json +208 -1
  131. package/data/definition/freemarker2.json +283 -1
  132. package/data/definition/html.json +853 -558
  133. package/data/definition/java.json +1127 -183
  134. package/data/definition/kotlin.json +72 -1
  135. package/data/definition/nestjs.json +684 -0
  136. package/data/definition/nextjs.json +439 -0
  137. package/data/definition/r.json +692 -83
  138. package/data/definition/react.json +397 -0
  139. package/data/definition/ruby.json +789 -669
  140. package/data/definition/rust.json +852 -206
  141. package/data/definition/sb.json +339 -1
  142. package/data/definition/shadcn.json +99 -0
  143. package/data/definition/shell.json +820 -0
  144. package/data/definition/st.json +367 -1
  145. package/data/documentHighlight/angular.json +414 -0
  146. package/data/documentHighlight/css.json +77 -2
  147. package/data/documentHighlight/nestjs.json +115 -0
  148. package/data/documentHighlight/nextjs.json +212 -0
  149. package/data/documentHighlight/react.json +119 -0
  150. package/data/documentHighlight/shadcn.json +168 -0
  151. package/data/documentHighlight/shell.json +664 -334
  152. package/data/documentHighlight/tailwindcss.json +105 -10
  153. package/data/documentRangeFormatting/angular.json +45 -0
  154. package/data/documentRangeFormatting/nestjs.json +57 -0
  155. package/data/documentRangeFormatting/nextjs.json +57 -0
  156. package/data/documentRangeFormatting/react.json +82 -0
  157. package/data/documentRangeFormatting/shadcn.json +45 -0
  158. package/data/documentRangeFormatting/shell.json +120 -53
  159. package/data/documentSymbol/abap.json +54 -12
  160. package/data/documentSymbol/angular.json +180 -0
  161. package/data/documentSymbol/apex.json +40 -10
  162. package/data/documentSymbol/awk.json +15 -1
  163. package/data/documentSymbol/bicep.json +39 -39
  164. package/data/documentSymbol/c.json +1 -1
  165. package/data/documentSymbol/clojure.json +46 -46
  166. package/data/documentSymbol/css.json +96 -96
  167. package/data/documentSymbol/dart.json +109 -19
  168. package/data/documentSymbol/dockerfile.json +1 -1
  169. package/data/documentSymbol/elixir.json +39 -39
  170. package/data/documentSymbol/go.json +1 -1
  171. package/data/documentSymbol/graphql.json +1 -1
  172. package/data/documentSymbol/hcl.json +1 -1
  173. package/data/documentSymbol/html.json +29 -1
  174. package/data/documentSymbol/java.json +1 -1
  175. package/data/documentSymbol/javascript.json +1 -1
  176. package/data/documentSymbol/julia.json +46 -46
  177. package/data/documentSymbol/kotlin.json +74 -14
  178. package/data/documentSymbol/less.json +25 -25
  179. package/data/documentSymbol/lua.json +22 -1
  180. package/data/documentSymbol/makefile.json +15 -1
  181. package/data/documentSymbol/markdown.json +36 -1
  182. package/data/documentSymbol/mysql.json +32 -32
  183. package/data/documentSymbol/nestjs.json +152 -0
  184. package/data/documentSymbol/nextjs.json +159 -0
  185. package/data/documentSymbol/nginx.json +1 -1
  186. package/data/documentSymbol/pascal.json +46 -46
  187. package/data/documentSymbol/perl.json +1 -1
  188. package/data/documentSymbol/pgsql.json +39 -39
  189. package/data/documentSymbol/php.json +1 -1
  190. package/data/documentSymbol/powershell.json +1 -1
  191. package/data/documentSymbol/protobuf.json +1 -1
  192. package/data/documentSymbol/python.json +1 -1
  193. package/data/documentSymbol/r.json +67 -67
  194. package/data/documentSymbol/react.json +145 -0
  195. package/data/documentSymbol/redshift.json +60 -18
  196. package/data/documentSymbol/ruby.json +1 -1
  197. package/data/documentSymbol/rust.json +1 -1
  198. package/data/documentSymbol/scala.json +116 -20
  199. package/data/documentSymbol/scheme.json +25 -25
  200. package/data/documentSymbol/scss.json +39 -39
  201. package/data/documentSymbol/shadcn.json +131 -0
  202. package/data/documentSymbol/shell.json +165 -25
  203. package/data/documentSymbol/sql.json +1 -1
  204. package/data/documentSymbol/swift.json +88 -16
  205. package/data/documentSymbol/tailwindcss.json +49 -0
  206. package/data/documentSymbol/typescript.json +1 -1
  207. package/data/documentSymbol/vb.json +53 -53
  208. package/data/documentSymbol/yaml.json +1 -1
  209. package/data/foldingRange/angular.json +100 -0
  210. package/data/foldingRange/nestjs.json +94 -0
  211. package/data/foldingRange/nextjs.json +94 -0
  212. package/data/foldingRange/react.json +118 -0
  213. package/data/foldingRange/shadcn.json +94 -0
  214. package/data/foldingRange/shell.json +106 -46
  215. package/data/formatting/abap.json +19 -11
  216. package/data/formatting/angular.json +63 -0
  217. package/data/formatting/apex.json +19 -11
  218. package/data/formatting/awk.json +1 -1
  219. package/data/formatting/azcli.json +18 -18
  220. package/data/formatting/bicep.json +18 -18
  221. package/data/formatting/c.json +1 -1
  222. package/data/formatting/caddy.json +1 -1
  223. package/data/formatting/cameligo.json +18 -18
  224. package/data/formatting/clojure.json +18 -18
  225. package/data/formatting/coffee.json +18 -18
  226. package/data/formatting/cpp.json +1 -1
  227. package/data/formatting/crontab.json +1 -1
  228. package/data/formatting/csharp.json +1 -1
  229. package/data/formatting/css.json +73 -73
  230. package/data/formatting/cypher.json +18 -18
  231. package/data/formatting/dart.json +43 -15
  232. package/data/formatting/docker-compose.json +24 -24
  233. package/data/formatting/dockerfile.json +1 -1
  234. package/data/formatting/doctest.json +18 -18
  235. package/data/formatting/dotenv.json +1 -1
  236. package/data/formatting/ecl.json +18 -18
  237. package/data/formatting/elixir.json +43 -18
  238. package/data/formatting/flow9.json +18 -18
  239. package/data/formatting/freemarker2.json +18 -18
  240. package/data/formatting/go.json +1 -1
  241. package/data/formatting/graphql.json +1 -1
  242. package/data/formatting/hcl.json +26 -1
  243. package/data/formatting/html.json +26 -1
  244. package/data/formatting/ini.json +1 -1
  245. package/data/formatting/java.json +1 -1
  246. package/data/formatting/javascript.json +1 -1
  247. package/data/formatting/julia.json +18 -18
  248. package/data/formatting/kotlin.json +33 -13
  249. package/data/formatting/less.json +48 -18
  250. package/data/formatting/lexon.json +18 -18
  251. package/data/formatting/liquid.json +18 -18
  252. package/data/formatting/lua.json +1 -1
  253. package/data/formatting/m3.json +18 -18
  254. package/data/formatting/makefile.json +1 -1
  255. package/data/formatting/markdown.json +26 -1
  256. package/data/formatting/mdx.json +18 -18
  257. package/data/formatting/mips.json +18 -18
  258. package/data/formatting/msdax.json +18 -18
  259. package/data/formatting/mysql.json +43 -18
  260. package/data/formatting/nestjs.json +23 -0
  261. package/data/formatting/nextjs.json +23 -0
  262. package/data/formatting/nginx.json +1 -1
  263. package/data/formatting/objective-c.json +18 -18
  264. package/data/formatting/pascal.json +18 -18
  265. package/data/formatting/pascaligo.json +18 -18
  266. package/data/formatting/perl.json +1 -1
  267. package/data/formatting/pgsql.json +43 -18
  268. package/data/formatting/php.json +1 -1
  269. package/data/formatting/pla.json +18 -18
  270. package/data/formatting/postiats.json +18 -18
  271. package/data/formatting/powerquery.json +18 -18
  272. package/data/formatting/powershell.json +1 -1
  273. package/data/formatting/protobuf.json +1 -1
  274. package/data/formatting/python.json +1 -1
  275. package/data/formatting/qsharp.json +18 -18
  276. package/data/formatting/r.json +32 -32
  277. package/data/formatting/razor.json +18 -18
  278. package/data/formatting/react.json +71 -0
  279. package/data/formatting/redis-cli.json +1 -1
  280. package/data/formatting/redis.json +18 -18
  281. package/data/formatting/redshift.json +43 -18
  282. package/data/formatting/restructuredtext.json +18 -18
  283. package/data/formatting/ruby.json +1 -1
  284. package/data/formatting/rust.json +1 -1
  285. package/data/formatting/sb.json +18 -18
  286. package/data/formatting/scala.json +48 -16
  287. package/data/formatting/scheme.json +18 -18
  288. package/data/formatting/scss.json +48 -18
  289. package/data/formatting/shadcn.json +63 -0
  290. package/data/formatting/shell.json +102 -18
  291. package/data/formatting/sol.json +18 -18
  292. package/data/formatting/sparql.json +18 -18
  293. package/data/formatting/sql.json +1 -1
  294. package/data/formatting/ssh_config.json +1 -1
  295. package/data/formatting/st.json +18 -18
  296. package/data/formatting/swift.json +58 -18
  297. package/data/formatting/systemd.json +1 -1
  298. package/data/formatting/systemverilog.json +18 -18
  299. package/data/formatting/tcl.json +18 -18
  300. package/data/formatting/toml.json +1 -1
  301. package/data/formatting/twig.json +18 -18
  302. package/data/formatting/typescript.json +1 -1
  303. package/data/formatting/vb.json +18 -18
  304. package/data/formatting/wgsl.json +18 -18
  305. package/data/formatting/xml.json +26 -1
  306. package/data/formatting/yaml.json +1 -1
  307. package/data/hover/angular.json +455 -0
  308. package/data/hover/apex.json +281 -6
  309. package/data/hover/awk.json +251 -6
  310. package/data/hover/crontab.json +251 -6
  311. package/data/hover/css.json +232 -0
  312. package/data/hover/dotenv.json +242 -4
  313. package/data/hover/graphql.json +251 -6
  314. package/data/hover/lexon.json +250 -5
  315. package/data/hover/markdown.json +226 -9
  316. package/data/hover/mdx.json +250 -5
  317. package/data/hover/nestjs.json +296 -0
  318. package/data/hover/nextjs.json +305 -0
  319. package/data/hover/perl.json +251 -6
  320. package/data/hover/pla.json +264 -5
  321. package/data/hover/powershell.json +252 -7
  322. package/data/hover/protobuf.json +251 -6
  323. package/data/hover/react.json +173 -0
  324. package/data/hover/redis.json +355 -40
  325. package/data/hover/shadcn.json +450 -0
  326. package/data/hover/shell.json +684 -75
  327. package/data/hover/ssh_config.json +251 -6
  328. package/data/hover/xml.json +231 -7
  329. package/data/implementation/angular.json +22 -0
  330. package/data/implementation/nestjs.json +24 -0
  331. package/data/implementation/nextjs.json +137 -0
  332. package/data/implementation/react.json +125 -0
  333. package/data/implementation/shadcn.json +89 -0
  334. package/data/implementation/shell.json +59 -3
  335. package/data/inlayHints/angular.json +24 -0
  336. package/data/inlayHints/nestjs.json +24 -0
  337. package/data/inlayHints/nextjs.json +143 -0
  338. package/data/inlayHints/react.json +177 -0
  339. package/data/inlayHints/shadcn.json +109 -0
  340. package/data/inlayHints/shell.json +223 -35
  341. package/data/inlineCompletions/angular.json +135 -0
  342. package/data/inlineCompletions/c.json +49 -1
  343. package/data/inlineCompletions/cpp.json +61 -1
  344. package/data/inlineCompletions/csharp.json +73 -1
  345. package/data/inlineCompletions/css.json +125 -125
  346. package/data/inlineCompletions/dart.json +136 -26
  347. package/data/inlineCompletions/elixir.json +34 -34
  348. package/data/inlineCompletions/go.json +67 -1
  349. package/data/inlineCompletions/html.json +1 -1
  350. package/data/inlineCompletions/java.json +67 -1
  351. package/data/inlineCompletions/javascript.json +97 -1
  352. package/data/inlineCompletions/kotlin.json +88 -18
  353. package/data/inlineCompletions/less.json +76 -28
  354. package/data/inlineCompletions/lua.json +37 -1
  355. package/data/inlineCompletions/mysql.json +34 -34
  356. package/data/inlineCompletions/nestjs.json +25 -0
  357. package/data/inlineCompletions/nextjs.json +179 -0
  358. package/data/inlineCompletions/pgsql.json +34 -34
  359. package/data/inlineCompletions/php.json +43 -1
  360. package/data/inlineCompletions/python.json +73 -1
  361. package/data/inlineCompletions/react.json +203 -0
  362. package/data/inlineCompletions/ruby.json +49 -1
  363. package/data/inlineCompletions/rust.json +61 -1
  364. package/data/inlineCompletions/scala.json +130 -25
  365. package/data/inlineCompletions/scss.json +34 -34
  366. package/data/inlineCompletions/shadcn.json +115 -0
  367. package/data/inlineCompletions/shell.json +184 -34
  368. package/data/inlineCompletions/sql.json +43 -1
  369. package/data/inlineCompletions/swift.json +112 -22
  370. package/data/inlineCompletions/typescript.json +97 -1
  371. package/data/linkedEditingRange/angular.json +23 -0
  372. package/data/linkedEditingRange/azcli.json +6 -6
  373. package/data/linkedEditingRange/crontab.json +6 -6
  374. package/data/linkedEditingRange/docker-compose.json +6 -6
  375. package/data/linkedEditingRange/doctest.json +6 -6
  376. package/data/linkedEditingRange/dotenv.json +13 -6
  377. package/data/linkedEditingRange/ini.json +13 -6
  378. package/data/linkedEditingRange/json.json +13 -6
  379. package/data/linkedEditingRange/lexon.json +6 -6
  380. package/data/linkedEditingRange/mips.json +6 -6
  381. package/data/linkedEditingRange/msdax.json +6 -6
  382. package/data/linkedEditingRange/nestjs.json +18 -0
  383. package/data/linkedEditingRange/nextjs.json +24 -0
  384. package/data/linkedEditingRange/pla.json +6 -6
  385. package/data/linkedEditingRange/react.json +74 -0
  386. package/data/linkedEditingRange/redis-cli.json +6 -6
  387. package/data/linkedEditingRange/redis.json +6 -6
  388. package/data/linkedEditingRange/shadcn.json +23 -0
  389. package/data/linkedEditingRange/shell.json +25 -25
  390. package/data/linkedEditingRange/ssh_config.json +6 -6
  391. package/data/linkedEditingRange/systemd.json +6 -6
  392. package/data/linkedEditingRange/toml.json +13 -6
  393. package/data/linkedEditingRange/wgsl.json +6 -6
  394. package/data/linkedEditingRange/xml.json +13 -13
  395. package/data/linkedEditingRange/yaml.json +13 -6
  396. package/data/links/angular.json +95 -0
  397. package/data/links/nestjs.json +130 -0
  398. package/data/links/nextjs.json +91 -0
  399. package/data/links/react.json +75 -0
  400. package/data/links/shadcn.json +98 -0
  401. package/data/links/shell.json +56 -0
  402. package/data/links/tailwindcss.json +25 -0
  403. package/data/manifest.json +339 -152
  404. package/data/onTypeFormatting/angular.json +63 -0
  405. package/data/onTypeFormatting/nestjs.json +64 -0
  406. package/data/onTypeFormatting/nextjs.json +72 -0
  407. package/data/onTypeFormatting/react.json +148 -0
  408. package/data/onTypeFormatting/shadcn.json +63 -0
  409. package/data/onTypeFormatting/shell.json +72 -68
  410. package/data/rangeSemanticTokens/angular.json +196 -0
  411. package/data/rangeSemanticTokens/nestjs.json +195 -0
  412. package/data/rangeSemanticTokens/nextjs.json +199 -0
  413. package/data/rangeSemanticTokens/react.json +77 -0
  414. package/data/rangeSemanticTokens/shadcn.json +203 -0
  415. package/data/rangeSemanticTokens/shell.json +247 -69
  416. package/data/rangeSemanticTokens/tailwindcss.json +99 -8
  417. package/data/references/angular.json +26 -0
  418. package/data/references/nestjs.json +24 -0
  419. package/data/references/nextjs.json +178 -0
  420. package/data/references/react.json +192 -0
  421. package/data/references/shadcn.json +101 -0
  422. package/data/references/shell.json +323 -92
  423. package/data/references/tailwindcss.json +66 -0
  424. package/data/rename/angular.json +121 -0
  425. package/data/rename/nestjs.json +122 -0
  426. package/data/rename/nextjs.json +116 -0
  427. package/data/rename/react.json +133 -0
  428. package/data/rename/shadcn.json +73 -0
  429. package/data/rename/shell.json +101 -31
  430. package/data/selectionRange/abap.json +58 -34
  431. package/data/selectionRange/angular.json +126 -0
  432. package/data/selectionRange/apex.json +58 -34
  433. package/data/selectionRange/awk.json +56 -34
  434. package/data/selectionRange/azcli.json +43 -24
  435. package/data/selectionRange/bicep.json +56 -34
  436. package/data/selectionRange/c.json +62 -39
  437. package/data/selectionRange/caddy.json +53 -34
  438. package/data/selectionRange/cameligo.json +56 -34
  439. package/data/selectionRange/clojure.json +57 -34
  440. package/data/selectionRange/coffee.json +59 -34
  441. package/data/selectionRange/cpp.json +73 -44
  442. package/data/selectionRange/crontab.json +39 -29
  443. package/data/selectionRange/csharp.json +69 -39
  444. package/data/selectionRange/css.json +95 -55
  445. package/data/selectionRange/cypher.json +57 -34
  446. package/data/selectionRange/dart.json +65 -34
  447. package/data/selectionRange/docker-compose.json +54 -34
  448. package/data/selectionRange/dockerfile.json +56 -34
  449. package/data/selectionRange/doctest.json +47 -24
  450. package/data/selectionRange/dotenv.json +33 -24
  451. package/data/selectionRange/ecl.json +58 -34
  452. package/data/selectionRange/elixir.json +63 -34
  453. package/data/selectionRange/flow9.json +57 -34
  454. package/data/selectionRange/freemarker2.json +58 -34
  455. package/data/selectionRange/go.json +64 -39
  456. package/data/selectionRange/graphql.json +58 -34
  457. package/data/selectionRange/hcl.json +56 -34
  458. package/data/selectionRange/html.json +63 -34
  459. package/data/selectionRange/ini.json +38 -24
  460. package/data/selectionRange/java.json +68 -39
  461. package/data/selectionRange/javascript.json +65 -39
  462. package/data/selectionRange/julia.json +65 -39
  463. package/data/selectionRange/kotlin.json +68 -39
  464. package/data/selectionRange/less.json +58 -34
  465. package/data/selectionRange/lexon.json +38 -24
  466. package/data/selectionRange/liquid.json +58 -34
  467. package/data/selectionRange/lua.json +59 -34
  468. package/data/selectionRange/m3.json +57 -34
  469. package/data/selectionRange/makefile.json +53 -34
  470. package/data/selectionRange/markdown.json +57 -34
  471. package/data/selectionRange/mdx.json +63 -34
  472. package/data/selectionRange/mips.json +43 -29
  473. package/data/selectionRange/msdax.json +52 -34
  474. package/data/selectionRange/mysql.json +51 -34
  475. package/data/selectionRange/nestjs.json +35 -0
  476. package/data/selectionRange/nextjs.json +35 -0
  477. package/data/selectionRange/nginx.json +53 -34
  478. package/data/selectionRange/objective-c.json +64 -39
  479. package/data/selectionRange/pascal.json +53 -34
  480. package/data/selectionRange/pascaligo.json +57 -34
  481. package/data/selectionRange/perl.json +59 -34
  482. package/data/selectionRange/pgsql.json +50 -34
  483. package/data/selectionRange/php.json +65 -39
  484. package/data/selectionRange/pla.json +52 -29
  485. package/data/selectionRange/postiats.json +61 -34
  486. package/data/selectionRange/powerquery.json +56 -34
  487. package/data/selectionRange/powershell.json +65 -39
  488. package/data/selectionRange/protobuf.json +58 -34
  489. package/data/selectionRange/python.json +66 -39
  490. package/data/selectionRange/qsharp.json +62 -39
  491. package/data/selectionRange/r.json +57 -34
  492. package/data/selectionRange/razor.json +63 -34
  493. package/data/selectionRange/react.json +103 -0
  494. package/data/selectionRange/redis-cli.json +38 -24
  495. package/data/selectionRange/redis.json +38 -24
  496. package/data/selectionRange/redshift.json +49 -34
  497. package/data/selectionRange/restructuredtext.json +58 -34
  498. package/data/selectionRange/ruby.json +65 -39
  499. package/data/selectionRange/rust.json +73 -44
  500. package/data/selectionRange/sb.json +43 -29
  501. package/data/selectionRange/scala.json +65 -39
  502. package/data/selectionRange/scheme.json +52 -34
  503. package/data/selectionRange/scss.json +58 -34
  504. package/data/selectionRange/shadcn.json +120 -0
  505. package/data/selectionRange/shell.json +64 -34
  506. package/data/selectionRange/sol.json +63 -39
  507. package/data/selectionRange/sparql.json +58 -34
  508. package/data/selectionRange/sql.json +50 -34
  509. package/data/selectionRange/ssh_config.json +37 -29
  510. package/data/selectionRange/st.json +49 -29
  511. package/data/selectionRange/swift.json +73 -44
  512. package/data/selectionRange/systemd.json +47 -34
  513. package/data/selectionRange/systemverilog.json +62 -39
  514. package/data/selectionRange/tailwindcss.json +49 -34
  515. package/data/selectionRange/tcl.json +57 -34
  516. package/data/selectionRange/toml.json +49 -29
  517. package/data/selectionRange/twig.json +58 -34
  518. package/data/selectionRange/typescript.json +75 -44
  519. package/data/selectionRange/vb.json +59 -39
  520. package/data/selectionRange/wgsl.json +61 -34
  521. package/data/selectionRange/xml.json +51 -34
  522. package/data/selectionRange/yaml.json +54 -34
  523. package/data/semanticTokens/angular.json +269 -0
  524. package/data/semanticTokens/nestjs.json +245 -0
  525. package/data/semanticTokens/nextjs.json +265 -0
  526. package/data/semanticTokens/react.json +230 -0
  527. package/data/semanticTokens/shadcn.json +235 -0
  528. package/data/semanticTokens/shell.json +238 -65
  529. package/data/signatureHelp/angular.json +182 -0
  530. package/data/signatureHelp/nestjs.json +201 -0
  531. package/data/signatureHelp/nextjs.json +185 -0
  532. package/data/signatureHelp/react.json +285 -0
  533. package/data/signatureHelp/shadcn.json +237 -0
  534. package/data/signatureHelp/shell.json +797 -104
  535. package/data/typeDefinition/angular.json +362 -0
  536. package/data/typeDefinition/nestjs.json +334 -0
  537. package/data/typeDefinition/nextjs.json +285 -0
  538. package/data/typeDefinition/react.json +236 -0
  539. package/data/typeDefinition/shadcn.json +292 -0
  540. package/data/typeDefinition/shell.json +104 -40
  541. package/package.json +1 -1
  542. package/data/codeActions/bash.json +0 -169
  543. package/data/codeActions/zsh.json +0 -49
  544. package/data/codeLens/bash.json +0 -75
  545. package/data/codeLens/zsh.json +0 -19
  546. package/data/color/bash.json +0 -100
  547. package/data/color/zsh.json +0 -80
  548. package/data/commands/bash.json +0 -102
  549. package/data/commands/zsh.json +0 -166
  550. package/data/completion/bash.json +0 -1184
  551. package/data/completion/zsh.json +0 -973
  552. package/data/declaration/bash.json +0 -301
  553. package/data/declaration/zsh.json +0 -205
  554. package/data/definition/bash.json +0 -565
  555. package/data/definition/zsh.json +0 -350
  556. package/data/documentHighlight/bash.json +0 -393
  557. package/data/documentHighlight/zsh.json +0 -266
  558. package/data/documentRangeFormatting/bash.json +0 -41
  559. package/data/documentRangeFormatting/zsh.json +0 -59
  560. package/data/documentSymbol/bash.json +0 -124
  561. package/data/documentSymbol/zsh.json +0 -26
  562. package/data/foldingRange/bash.json +0 -76
  563. package/data/foldingRange/zsh.json +0 -46
  564. package/data/formatting/bash.json +0 -88
  565. package/data/formatting/zsh.json +0 -28
  566. package/data/hover/bash.json +0 -579
  567. package/data/hover/zsh.json +0 -96
  568. package/data/implementation/bash.json +0 -44
  569. package/data/implementation/zsh.json +0 -41
  570. package/data/inlayHints/bash.json +0 -207
  571. package/data/inlayHints/zsh.json +0 -43
  572. package/data/inlineCompletions/bash.json +0 -155
  573. package/data/inlineCompletions/zsh.json +0 -17
  574. package/data/linkedEditingRange/bash.json +0 -25
  575. package/data/linkedEditingRange/zsh.json +0 -25
  576. package/data/links/bash.json +0 -56
  577. package/data/links/zsh.json +0 -15
  578. package/data/onTypeFormatting/bash.json +0 -68
  579. package/data/onTypeFormatting/zsh.json +0 -68
  580. package/data/rangeSemanticTokens/bash.json +0 -90
  581. package/data/rangeSemanticTokens/zsh.json +0 -76
  582. package/data/references/bash.json +0 -221
  583. package/data/references/zsh.json +0 -166
  584. package/data/rename/bash.json +0 -37
  585. package/data/rename/zsh.json +0 -31
  586. package/data/selectionRange/bash.json +0 -35
  587. package/data/selectionRange/zsh.json +0 -35
  588. package/data/semanticTokens/bash.json +0 -71
  589. package/data/semanticTokens/zsh.json +0 -71
  590. package/data/signatureHelp/bash.json +0 -111
  591. package/data/signatureHelp/zsh.json +0 -118
  592. package/data/typeDefinition/bash.json +0 -95
  593. package/data/typeDefinition/zsh.json +0 -40
@@ -0,0 +1,137 @@
1
+ {
2
+ "language": "nextjs",
3
+ "implementationPatterns": [
4
+ {
5
+ "interface": "Page",
6
+ "implementationKeyword": "export default function",
7
+ "pattern": "export\\s+default\\s+(?:async\\s+)?function\\s+\\w+\\s*\\(\\s*(?:\\{\\s*(?:params|searchParams)[^}]*\\})?",
8
+ "description": "App Router page component implementing the page file convention"
9
+ },
10
+ {
11
+ "interface": "Layout",
12
+ "implementationKeyword": "export default function",
13
+ "pattern": "export\\s+default\\s+(?:async\\s+)?function\\s+\\w+\\s*\\(\\s*\\{\\s*children",
14
+ "description": "App Router layout component implementing the layout file convention"
15
+ },
16
+ {
17
+ "interface": "Loading",
18
+ "implementationKeyword": "export default function",
19
+ "pattern": "export\\s+default\\s+function\\s+Loading\\s*\\(",
20
+ "description": "Loading UI component implementing the loading file convention"
21
+ },
22
+ {
23
+ "interface": "Error",
24
+ "implementationKeyword": "export default function",
25
+ "pattern": "export\\s+default\\s+function\\s+Error\\s*\\(\\s*\\{\\s*error\\s*,\\s*reset",
26
+ "description": "Error boundary component implementing the error file convention"
27
+ },
28
+ {
29
+ "interface": "NotFound",
30
+ "implementationKeyword": "export default function",
31
+ "pattern": "export\\s+default\\s+function\\s+NotFound\\s*\\(",
32
+ "description": "Not-found component implementing the not-found file convention"
33
+ },
34
+ {
35
+ "interface": "RouteHandler",
36
+ "implementationKeyword": "export async function",
37
+ "pattern": "export\\s+(?:async\\s+)?function\\s+(?:GET|POST|PUT|PATCH|DELETE|HEAD|OPTIONS)\\s*\\(",
38
+ "description": "App Router Route Handler implementing HTTP method handlers"
39
+ },
40
+ {
41
+ "interface": "Middleware",
42
+ "implementationKeyword": "export function middleware",
43
+ "pattern": "export\\s+(?:async\\s+)?function\\s+middleware\\s*\\(\\s*(?:request|req)\\s*:\\s*NextRequest",
44
+ "description": "Middleware function implementing the middleware file convention"
45
+ },
46
+ {
47
+ "interface": "ServerAction",
48
+ "implementationKeyword": "use server",
49
+ "pattern": "['\"]use server['\"]\\s*;?\\s*(?:export\\s+)?async\\s+function\\s+\\w+",
50
+ "description": "Server Action implementing the 'use server' directive convention"
51
+ },
52
+ {
53
+ "interface": "GetServerSideProps",
54
+ "implementationKeyword": "export const getServerSideProps",
55
+ "pattern": "export\\s+(?:const\\s+getServerSideProps|async\\s+function\\s+getServerSideProps)",
56
+ "description": "Pages Router server-side data fetching implementation"
57
+ },
58
+ {
59
+ "interface": "GetStaticProps",
60
+ "implementationKeyword": "export const getStaticProps",
61
+ "pattern": "export\\s+(?:const\\s+getStaticProps|async\\s+function\\s+getStaticProps)",
62
+ "description": "Pages Router static generation implementation"
63
+ },
64
+ {
65
+ "interface": "GetStaticPaths",
66
+ "implementationKeyword": "export const getStaticPaths",
67
+ "pattern": "export\\s+(?:const\\s+getStaticPaths|async\\s+function\\s+getStaticPaths)",
68
+ "description": "Pages Router static paths implementation for dynamic routes"
69
+ },
70
+ {
71
+ "interface": "APIRoute",
72
+ "implementationKeyword": "export default function handler",
73
+ "pattern": "export\\s+default\\s+(?:async\\s+)?function\\s+handler\\s*\\(\\s*req\\s*:\\s*NextApiRequest",
74
+ "description": "Pages Router API route handler implementation"
75
+ },
76
+ {
77
+ "interface": "GenerateMetadata",
78
+ "implementationKeyword": "export async function generateMetadata",
79
+ "pattern": "export\\s+async\\s+function\\s+generateMetadata\\s*\\(",
80
+ "description": "Dynamic metadata generation function implementation"
81
+ },
82
+ {
83
+ "interface": "GenerateStaticParams",
84
+ "implementationKeyword": "export async function generateStaticParams",
85
+ "pattern": "export\\s+async\\s+function\\s+generateStaticParams\\s*\\(",
86
+ "description": "Static params generation function implementation"
87
+ },
88
+ {
89
+ "interface": "Template",
90
+ "implementationKeyword": "export default function",
91
+ "pattern": "export\\s+default\\s+function\\s+Template\\s*\\(\\s*\\{\\s*children",
92
+ "description": "Template component implementing the template file convention"
93
+ },
94
+ {
95
+ "interface": "GlobalError",
96
+ "implementationKeyword": "export default function",
97
+ "pattern": "export\\s+default\\s+function\\s+GlobalError\\s*\\(\\s*\\{\\s*error\\s*,\\s*reset",
98
+ "description": "Global error boundary implementing the global-error file convention"
99
+ },
100
+ {
101
+ "interface": "Default",
102
+ "implementationKeyword": "export default function",
103
+ "pattern": "export\\s+default\\s+function\\s+Default\\s*\\(",
104
+ "description": "Default component for parallel route slots implementing the default file convention"
105
+ }
106
+ ],
107
+ "keywords": {
108
+ "interface": [
109
+ "Page",
110
+ "Layout",
111
+ "Loading",
112
+ "Error",
113
+ "NotFound",
114
+ "Template",
115
+ "GlobalError",
116
+ "Default",
117
+ "RouteHandler",
118
+ "Middleware",
119
+ "ServerAction",
120
+ "APIRoute",
121
+ "GetServerSideProps",
122
+ "GetStaticProps",
123
+ "GetStaticPaths",
124
+ "GenerateMetadata",
125
+ "GenerateStaticParams"
126
+ ],
127
+ "implementation": [
128
+ "export default function",
129
+ "export default async function",
130
+ "export async function",
131
+ "export const",
132
+ "export function",
133
+ "use server",
134
+ "use client"
135
+ ]
136
+ }
137
+ }
@@ -0,0 +1,125 @@
1
+ {
2
+ "language": "react",
3
+ "implementationPatterns": [
4
+ {
5
+ "interface": "React.Component",
6
+ "implementationKeyword": "extends",
7
+ "pattern": "class\\s+(\\w+)\\s+extends\\s+(?:React\\.)?Component",
8
+ "description": "Class component extending React.Component with lifecycle methods and state"
9
+ },
10
+ {
11
+ "interface": "React.PureComponent",
12
+ "implementationKeyword": "extends",
13
+ "pattern": "class\\s+(\\w+)\\s+extends\\s+(?:React\\.)?PureComponent",
14
+ "description": "Class component extending React.PureComponent with shallow prop/state comparison"
15
+ },
16
+ {
17
+ "interface": "React.memo",
18
+ "implementationKeyword": "memo",
19
+ "pattern": "(?:const|let)\\s+(\\w+)\\s*=\\s*(?:React\\.)?memo\\s*\\(",
20
+ "description": "Memoized component implementation using React.memo wrapper"
21
+ },
22
+ {
23
+ "interface": "React.forwardRef",
24
+ "implementationKeyword": "forwardRef",
25
+ "pattern": "(?:const|let)\\s+(\\w+)\\s*=\\s*(?:React\\.)?forwardRef\\s*[<(]",
26
+ "description": "Component with ref forwarding using React.forwardRef"
27
+ },
28
+ {
29
+ "interface": "Context.Provider",
30
+ "implementationKeyword": "Provider",
31
+ "pattern": "<(\\w+Context)\\.Provider\\s+value=",
32
+ "description": "Context Provider implementation that supplies context value to descendants"
33
+ },
34
+ {
35
+ "interface": "Context.Consumer",
36
+ "implementationKeyword": "Consumer",
37
+ "pattern": "<(\\w+Context)\\.Consumer>",
38
+ "description": "Context Consumer implementation using render props pattern"
39
+ },
40
+ {
41
+ "interface": "useContext",
42
+ "implementationKeyword": "useContext",
43
+ "pattern": "(?:const|let)\\s+(\\w+)\\s*=\\s*useContext\\s*\\(",
44
+ "description": "Context consumption using useContext hook"
45
+ },
46
+ {
47
+ "interface": "CustomHook",
48
+ "implementationKeyword": "function",
49
+ "pattern": "(?:export\\s+)?(?:function|const)\\s+(use[A-Z]\\w*)\\s*(?:=|\\()",
50
+ "description": "Custom hook implementation following the use* naming convention"
51
+ },
52
+ {
53
+ "interface": "ErrorBoundary",
54
+ "implementationKeyword": "componentDidCatch",
55
+ "pattern": "class\\s+(\\w+)\\s+extends\\s+(?:React\\.)?Component[^{]*\\{[^}]*componentDidCatch",
56
+ "description": "Error boundary implementation with componentDidCatch lifecycle method"
57
+ },
58
+ {
59
+ "interface": "ErrorBoundary.getDerivedStateFromError",
60
+ "implementationKeyword": "getDerivedStateFromError",
61
+ "pattern": "static\\s+getDerivedStateFromError\\s*\\(",
62
+ "description": "Error boundary static method for deriving state from caught errors"
63
+ },
64
+ {
65
+ "interface": "HOC",
66
+ "implementationKeyword": "with",
67
+ "pattern": "(?:export\\s+)?(?:function|const)\\s+(with[A-Z]\\w*)\\s*(?:=\\s*)?[<(]",
68
+ "description": "Higher-Order Component implementation following the with* naming convention"
69
+ },
70
+ {
71
+ "interface": "React.lazy",
72
+ "implementationKeyword": "lazy",
73
+ "pattern": "(?:const|let)\\s+(\\w+)\\s*=\\s*(?:React\\.)?lazy\\s*\\(",
74
+ "description": "Lazy-loaded component implementation using dynamic import"
75
+ },
76
+ {
77
+ "interface": "useReducer",
78
+ "implementationKeyword": "reducer",
79
+ "pattern": "(?:function|const)\\s+(\\w+(?:Reducer|reducer))\\s*(?:=|\\()\\s*(?:\\(state|\\(prevState)",
80
+ "description": "Reducer function implementation for useReducer hook"
81
+ },
82
+ {
83
+ "interface": "EventHandler",
84
+ "implementationKeyword": "handle",
85
+ "pattern": "(?:const|function)\\s+(handle[A-Z]\\w*)\\s*=?\\s*(?:useCallback\\s*\\()?\\s*(?:async\\s*)?\\(",
86
+ "description": "Event handler implementation following the handle* naming convention"
87
+ },
88
+ {
89
+ "interface": "React.FC",
90
+ "implementationKeyword": "FC",
91
+ "pattern": "(?:const|let)\\s+(\\w+)\\s*:\\s*(?:React\\.)?FC",
92
+ "description": "Function component typed with React.FC type annotation"
93
+ }
94
+ ],
95
+ "keywords": {
96
+ "interface": [
97
+ "React.Component",
98
+ "React.PureComponent",
99
+ "React.FC",
100
+ "React.ForwardRefRenderFunction",
101
+ "React.ComponentType",
102
+ "React.MemoExoticComponent",
103
+ "React.LazyExoticComponent",
104
+ "React.Context",
105
+ "React.Reducer",
106
+ "React.ErrorInfo",
107
+ "React.RefObject",
108
+ "React.MutableRefObject"
109
+ ],
110
+ "implementation": [
111
+ "extends Component",
112
+ "extends PureComponent",
113
+ "React.memo(",
114
+ "React.forwardRef(",
115
+ "React.lazy(",
116
+ "createContext(",
117
+ "useContext(",
118
+ "useReducer(",
119
+ "componentDidCatch",
120
+ "getDerivedStateFromError",
121
+ "useImperativeHandle(",
122
+ "forwardRef("
123
+ ]
124
+ }
125
+ }
@@ -0,0 +1,89 @@
1
+ {
2
+ "language": "shadcn",
3
+ "implementationPatterns": [
4
+ {
5
+ "name": "ForwardRef Component",
6
+ "pattern": "const\\s+(\\w+)\\s*=\\s*React\\.forwardRef<",
7
+ "captureGroup": 1,
8
+ "description": "React.forwardRef component implementation"
9
+ },
10
+ {
11
+ "name": "Component DisplayName",
12
+ "pattern": "(\\w+)\\.displayName\\s*=",
13
+ "captureGroup": 1,
14
+ "description": "Component displayName assignment for DevTools"
15
+ },
16
+ {
17
+ "name": "CVA Variant Implementation",
18
+ "pattern": "const\\s+(\\w+Variants?)\\s*=\\s*cva\\(",
19
+ "captureGroup": 1,
20
+ "description": "cva() class-variance-authority variant definition"
21
+ },
22
+ {
23
+ "name": "cn() Utility Function",
24
+ "pattern": "function\\s+(cn)\\(\\.\\.\\.",
25
+ "captureGroup": 1,
26
+ "description": "cn() class merging utility function implementation"
27
+ },
28
+ {
29
+ "name": "cn() Arrow Utility",
30
+ "pattern": "(?:export\\s+)?const\\s+(cn)\\s*=\\s*\\(",
31
+ "captureGroup": 1,
32
+ "description": "cn() utility implemented as arrow function"
33
+ },
34
+ {
35
+ "name": "useToast Hook",
36
+ "pattern": "function\\s+(useToast)\\s*\\(",
37
+ "captureGroup": 1,
38
+ "description": "useToast hook implementation for toast notifications"
39
+ },
40
+ {
41
+ "name": "Toast Reducer",
42
+ "pattern": "(?:const|function)\\s+(\\w*[Rr]educer)\\s*[=(]",
43
+ "captureGroup": 1,
44
+ "description": "Toast state reducer implementation"
45
+ },
46
+ {
47
+ "name": "FormField Context Provider",
48
+ "pattern": "<FormFieldContext\\.Provider\\s+value=\\{([^}]+)\\}",
49
+ "captureGroup": 1,
50
+ "description": "FormField context provider wrapping form fields"
51
+ },
52
+ {
53
+ "name": "Custom Hook Implementation",
54
+ "pattern": "(?:export\\s+)?function\\s+(use\\w+)\\s*\\(",
55
+ "captureGroup": 1,
56
+ "description": "Custom React hook implementation"
57
+ },
58
+ {
59
+ "name": "Radix Primitive Wrapper",
60
+ "pattern": "<(\\w+Primitive)\\b",
61
+ "captureGroup": 1,
62
+ "description": "Wrapper around a Radix UI primitive component"
63
+ },
64
+ {
65
+ "name": "DataTable Implementation",
66
+ "pattern": "function\\s+(DataTable)[<(]",
67
+ "captureGroup": 1,
68
+ "description": "DataTable component implementation with TanStack Table"
69
+ },
70
+ {
71
+ "name": "Column Accessor Implementation",
72
+ "pattern": "(?:accessorKey|accessorFn):\\s*[\"']?(\\w+)",
73
+ "captureGroup": 1,
74
+ "description": "DataTable column accessor definition"
75
+ },
76
+ {
77
+ "name": "Form Validation Schema",
78
+ "pattern": "const\\s+(\\w+Schema)\\s*=\\s*z\\.",
79
+ "captureGroup": 1,
80
+ "description": "Zod validation schema implementation for forms"
81
+ },
82
+ {
83
+ "name": "Component Composition with Slot",
84
+ "pattern": "asChild\\s*(?:\\?|&&)\\s*.*<(Slot)\\b",
85
+ "captureGroup": 1,
86
+ "description": "Component composition using Radix Slot for asChild pattern"
87
+ }
88
+ ]
89
+ }
@@ -18,17 +18,73 @@
18
18
  "implementationKeyword": "source",
19
19
  "pattern": "(?:source|\\.)\\s+([\\w./]+)",
20
20
  "description": "Sourcing another script (include)"
21
+ },
22
+ {
23
+ "interface": "callback_pattern",
24
+ "implementationKeyword": "function",
25
+ "pattern": "^\\s*(?:function\\s+)?(\\w+_(?:callback|handler|hook))\\s*\\(\\s*\\)",
26
+ "description": "Functions following callback/handler/hook naming convention"
27
+ },
28
+ {
29
+ "interface": "completion_function",
30
+ "implementationKeyword": "complete -F",
31
+ "pattern": "^\\s*(?:function\\s+)?(_\\w+)\\s*\\(\\s*\\).*#.*completion",
32
+ "description": "Programmable completion functions (typically prefixed with _)"
33
+ },
34
+ {
35
+ "interface": "trap_handler",
36
+ "implementationKeyword": "trap",
37
+ "pattern": "^\\s*(?:function\\s+)?(cleanup|on_exit|on_err|handle_\\w+)\\s*\\(\\s*\\)",
38
+ "description": "Functions used as trap signal handlers"
39
+ },
40
+ {
41
+ "interface": "subcommand_pattern",
42
+ "implementationKeyword": "case",
43
+ "pattern": "^\\s*(?:function\\s+)?cmd_(\\w+)\\s*\\(\\s*\\)|^\\s*(?:function\\s+)?subcmd_(\\w+)",
44
+ "description": "Functions implementing CLI subcommands (cmd_* or subcmd_* prefix)"
45
+ },
46
+ {
47
+ "interface": "Widget",
48
+ "implementationKeyword": "zle",
49
+ "pattern": "zle\\s+-N\\s+(\\w+)",
50
+ "description": "ZLE widget registration"
51
+ },
52
+ {
53
+ "interface": "Completion",
54
+ "implementationKeyword": "compdef",
55
+ "pattern": "compdef\\s+(\\w+)",
56
+ "description": "Completion function binding"
57
+ },
58
+ {
59
+ "interface": "Autoload",
60
+ "implementationKeyword": "autoload",
61
+ "pattern": "autoload\\s+(?:-[Uz]+\\s+)*(\\w+)",
62
+ "description": "Autoloaded function"
21
63
  }
22
64
  ],
23
65
  "keywords": {
24
66
  "interface": [
25
67
  "function name",
26
- "alias"
68
+ "alias",
69
+ "callback",
70
+ "handler",
71
+ "hook",
72
+ "plugin",
73
+ "override",
74
+ "autoload",
75
+ "zle -N",
76
+ "compdef"
27
77
  ],
28
78
  "implementation": [
29
79
  "function...{}",
30
80
  "() {}",
31
- "alias...="
32
- ]
81
+ "alias...=",
82
+ "function",
83
+ "complete -F",
84
+ "trap",
85
+ "() {",
86
+ "autoload -Uz"
87
+ ],
88
+ "note": "Bash does not have formal interface/implementation constructs. Patterns here detect convention-based implementations like callback naming and completion functions."
33
89
  }
34
90
  }
@@ -0,0 +1,24 @@
1
+ {
2
+ "language": "angular",
3
+ "inlayHintPatterns": [
4
+ { "pattern": "(\\w+)\\s*=\\s*inject\\s*\\(\\s*(\\w+)\\s*\\)", "captureGroup": 1, "label": ": ${2}", "kind": 1, "tooltip": "Injected type from inject() call", "position": "after" },
5
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*<([^>]+)>\\s*\\(", "captureGroup": 1, "label": ": WritableSignal<${2}>", "kind": 1, "tooltip": "Writable signal type", "position": "after" },
6
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*\\(\\s*(['\"])(.+?)\\2\\s*\\)", "captureGroup": 1, "label": ": WritableSignal<string>", "kind": 1, "tooltip": "Signal inferred as string type", "position": "after" },
7
+ { "pattern": "(\\w+)\\s*=\\s*computed\\s*\\(", "captureGroup": 1, "label": ": Signal<…>", "kind": 1, "tooltip": "Computed signal return type", "position": "after" },
8
+ { "pattern": "(\\w+)\\s*=\\s*input(?:\\.required)?\\s*<([^>]+)>\\s*\\(", "captureGroup": 1, "label": ": InputSignal<${2}>", "kind": 1, "tooltip": "Signal-based input type", "position": "after" },
9
+ { "pattern": "(\\w+)\\s*=\\s*output\\s*<([^>]+)>\\s*\\(", "captureGroup": 1, "label": ": OutputEmitterRef<${2}>", "kind": 1, "tooltip": "Signal-based output event type", "position": "after" },
10
+ { "pattern": "\\|\\s*(\\w+)\\b", "captureGroup": 1, "label": "→ transformed", "kind": 2, "tooltip": "Pipe transform return value", "position": "after" },
11
+ { "pattern": "new\\s+FormControl\\s*<([^>]+)>\\s*\\(", "captureGroup": 1, "label": "FormControl<${1}>", "kind": 1, "tooltip": "Typed form control value type", "position": "after" },
12
+ { "pattern": "\\.subscribe\\s*\\(\\s*(\\w+)\\s*=>", "captureGroup": 1, "label": ": Observable emission", "kind": 1, "tooltip": "Observable subscription callback parameter", "position": "after" },
13
+ { "pattern": "this\\.route\\.(?:params|queryParams|paramMap)\\b", "captureGroup": 0, "label": ": Observable<Params>", "kind": 1, "tooltip": "Route parameter observable type", "position": "after" }
14
+ ],
15
+ "typeInferenceRules": [
16
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*\\(\\s*(\\d+)\\s*\\)", "inferredType": "WritableSignal<number>", "description": "Numeric literal initializer infers number signal" },
17
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*\\(\\s*true|false\\s*\\)", "inferredType": "WritableSignal<boolean>", "description": "Boolean literal initializer infers boolean signal" },
18
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*\\(\\s*['\"].*?['\"]\\s*\\)", "inferredType": "WritableSignal<string>", "description": "String literal initializer infers string signal" },
19
+ { "pattern": "(\\w+)\\s*=\\s*signal\\s*\\(\\s*\\[\\]\\s*\\)", "inferredType": "WritableSignal<any[]>", "description": "Empty array initializer infers array signal" },
20
+ { "pattern": "(\\w+)\\s*=\\s*inject\\s*\\(\\s*(\\w+)\\s*\\)", "inferredType": "${2}", "description": "inject() call infers the type of the provided token" },
21
+ { "pattern": "new\\s+FormControl\\s*\\(\\s*['\"].*?['\"]\\s*\\)", "inferredType": "FormControl<string | null>", "description": "FormControl with string initial value" },
22
+ { "pattern": "new\\s+FormGroup\\s*\\(\\s*\\{", "inferredType": "FormGroup", "description": "FormGroup inferred from object literal controls" }
23
+ ]
24
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "language": "nestjs",
3
+ "inlayHintPatterns": [
4
+ { "pattern": "constructor\\((?:private|protected|public)\\s+(?:readonly\\s+)?(\\w+):\\s*(\\w+)", "kind": 1, "label": ": {type}", "position": "after_capture_1", "paddingLeft": true, "description": "Show injected service types" },
5
+ { "pattern": "@(Body|Param|Query|Headers)\\((?:['\"]([^'\"]+)['\"])?\\)\\s+(\\w+)", "kind": 2, "label": "{param_name}:", "position": "before_capture_3", "paddingRight": true, "description": "Show decorator parameter source" },
6
+ { "pattern": "(\\w+)\\s*=\\s*(?:await\\s+)?this\\.(\\w+Service)\\.(\\w+)\\(", "kind": 1, "label": ": {inferred_type}", "position": "after_capture_1", "paddingLeft": true, "description": "Infer service method return type" },
7
+ { "pattern": "(?:const|let)\\s+(\\w+)\\s*=\\s*(?:await\\s+)?this\\.configService\\.get(?:<[^>]+>)?\\(['\"]([^'\"]+)['\"]\\)", "kind": 1, "label": ": {config_type}", "position": "after_capture_1", "paddingLeft": true, "description": "Config value type hint" },
8
+ { "pattern": "@HttpCode\\((\\d+)\\)", "kind": 2, "label": "HTTP {status}", "position": "after_capture_1", "paddingLeft": true, "description": "HTTP status code meaning" },
9
+ { "pattern": "@(Get|Post|Put|Patch|Delete)\\(['\"]([^'\"]*)['\"]\\)", "kind": 2, "label": "{method} {path}", "position": "after_capture_0", "paddingLeft": true, "description": "Full route path hint" },
10
+ { "pattern": "\\bnew\\s+(\\w+Exception)\\(", "kind": 1, "label": "extends HttpException", "position": "after_capture_1", "paddingLeft": true, "description": "Exception class hierarchy" },
11
+ { "pattern": "module\\.get<(\\w+)>\\((\\w+)\\)", "kind": 1, "label": ": {type}", "position": "after_capture_0", "paddingLeft": true, "description": "Testing module.get return type" },
12
+ { "pattern": "(\\w+)\\s*=\\s*(.+)", "kind": 1, "label": ": {inferred_type}", "position": "after_capture_1", "paddingLeft": true, "description": "Variable type inference" }
13
+ ],
14
+ "typeInferenceRules": {
15
+ "string_literal": { "pattern": "['\"].*['\"]", "type": "string" },
16
+ "number_literal": { "pattern": "\\d+(\\.\\d+)?", "type": "number" },
17
+ "boolean_literal": { "pattern": "\\b(true|false)\\b", "type": "boolean" },
18
+ "array_literal": { "pattern": "\\[.*\\]", "type": "array" },
19
+ "object_literal": { "pattern": "\\{.*\\}", "type": "object" },
20
+ "null_literal": { "pattern": "\\b(null|undefined)\\b", "type": "null" },
21
+ "new_instance": { "pattern": "new\\s+(\\w+)\\(", "type": "{capture_1}" },
22
+ "await_expression": { "pattern": "await\\s+", "type": "Promise<unknown>" }
23
+ }
24
+ }
@@ -0,0 +1,143 @@
1
+ {
2
+ "language": "nextjs",
3
+ "inlayHintPatterns": [
4
+ {
5
+ "pattern": "(?:const|let|var)\\s+(\\w+)\\s*=\\s*(?!\\{|\\[|\\(|function|class|new)(.+)",
6
+ "kind": 1,
7
+ "label": ": ${inferredType}",
8
+ "position": "afterIdentifier",
9
+ "paddingLeft": false,
10
+ "paddingRight": true,
11
+ "description": "Infer type for variable assignments"
12
+ },
13
+ {
14
+ "pattern": "const\\s+\\[(\\w+),\\s*set\\w+\\]\\s*=\\s*useState\\(([^)]*?)\\)",
15
+ "kind": 1,
16
+ "label": ": ${inferredType}",
17
+ "position": "afterIdentifier",
18
+ "paddingLeft": false,
19
+ "paddingRight": true,
20
+ "description": "Infer useState generic type from initial value"
21
+ },
22
+ {
23
+ "pattern": "const\\s+(router)\\s*=\\s*useRouter\\(\\)",
24
+ "kind": 1,
25
+ "label": ": AppRouterInstance",
26
+ "position": "afterIdentifier",
27
+ "paddingLeft": false,
28
+ "paddingRight": true,
29
+ "description": "Show useRouter return type"
30
+ },
31
+ {
32
+ "pattern": "const\\s+(pathname)\\s*=\\s*usePathname\\(\\)",
33
+ "kind": 1,
34
+ "label": ": string",
35
+ "position": "afterIdentifier",
36
+ "paddingLeft": false,
37
+ "paddingRight": true,
38
+ "description": "Show usePathname return type"
39
+ },
40
+ {
41
+ "pattern": "const\\s+(searchParams)\\s*=\\s*useSearchParams\\(\\)",
42
+ "kind": 1,
43
+ "label": ": ReadonlyURLSearchParams",
44
+ "position": "afterIdentifier",
45
+ "paddingLeft": false,
46
+ "paddingRight": true,
47
+ "description": "Show useSearchParams return type"
48
+ },
49
+ {
50
+ "pattern": "export\\s+default\\s+(?:async\\s+)?function\\s+\\w+\\(\\s*\\{\\s*(params)\\s*\\}",
51
+ "kind": 1,
52
+ "label": ": { [key: string]: string | string[] }",
53
+ "position": "afterIdentifier",
54
+ "paddingLeft": false,
55
+ "paddingRight": true,
56
+ "description": "Annotate params type in page components"
57
+ },
58
+ {
59
+ "pattern": "export\\s+default\\s+(?:async\\s+)?function\\s+\\w+\\(\\s*\\{[^}]*(searchParams)[^}]*\\}",
60
+ "kind": 1,
61
+ "label": ": { [key: string]: string | string[] | undefined }",
62
+ "position": "afterIdentifier",
63
+ "paddingLeft": false,
64
+ "paddingRight": true,
65
+ "description": "Annotate searchParams type in page components"
66
+ },
67
+ {
68
+ "pattern": "const\\s+(\\w+)\\s*=\\s*await\\s+fetch\\(",
69
+ "kind": 1,
70
+ "label": ": Response",
71
+ "position": "afterIdentifier",
72
+ "paddingLeft": false,
73
+ "paddingRight": true,
74
+ "description": "Show fetch response type"
75
+ },
76
+ {
77
+ "pattern": "async\\s+function\\s+\\w+Action\\([^)]*\\)\\s*(?::\\s*Promise<([^>]+)>)?",
78
+ "kind": 1,
79
+ "label": "=> Promise<void>",
80
+ "position": "afterParameters",
81
+ "paddingLeft": true,
82
+ "paddingRight": false,
83
+ "description": "Show server action return type"
84
+ },
85
+ {
86
+ "pattern": "\\b(?:redirect|notFound|revalidatePath|revalidateTag)\\(([^,)]+)",
87
+ "kind": 2,
88
+ "label": "url:",
89
+ "position": "beforeArgument",
90
+ "paddingLeft": false,
91
+ "paddingRight": true,
92
+ "description": "Parameter name hints at call sites"
93
+ },
94
+ {
95
+ "pattern": "export\\s+(?:async\\s+)?function\\s+(?:GET|POST|PUT|PATCH|DELETE)\\s*\\(\\s*(\\w+)",
96
+ "kind": 1,
97
+ "label": ": NextRequest",
98
+ "position": "afterIdentifier",
99
+ "paddingLeft": false,
100
+ "paddingRight": true,
101
+ "description": "Annotate route handler request parameter type"
102
+ },
103
+ {
104
+ "pattern": "export\\s+(?:async\\s+)?function\\s+(?:GET|POST|PUT|PATCH|DELETE)\\s*\\([^,]+,\\s*\\{\\s*(params)\\s*\\}",
105
+ "kind": 1,
106
+ "label": ": { [key: string]: string }",
107
+ "position": "afterIdentifier",
108
+ "paddingLeft": false,
109
+ "paddingRight": true,
110
+ "description": "Annotate route handler context params type"
111
+ }
112
+ ],
113
+ "typeInferenceRules": {
114
+ "string": {
115
+ "pattern": "^[\"'`]",
116
+ "type": "string"
117
+ },
118
+ "number": {
119
+ "pattern": "^\\d+\\.?\\d*$",
120
+ "type": "number"
121
+ },
122
+ "boolean": {
123
+ "pattern": "^(true|false)$",
124
+ "type": "boolean"
125
+ },
126
+ "array": {
127
+ "pattern": "^\\[",
128
+ "type": "Array<unknown>"
129
+ },
130
+ "null": {
131
+ "pattern": "^null$",
132
+ "type": "null"
133
+ },
134
+ "object": {
135
+ "pattern": "^\\{",
136
+ "type": "Record<string, unknown>"
137
+ },
138
+ "jsx": {
139
+ "pattern": "^<[A-Z]",
140
+ "type": "JSX.Element"
141
+ }
142
+ }
143
+ }