@enjoys/context-engine 1.4.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 (424) hide show
  1. package/data/codeLens/awk.json +1 -1
  2. package/data/codeLens/azcli.json +10 -10
  3. package/data/codeLens/c.json +1 -1
  4. package/data/codeLens/caddy.json +1 -1
  5. package/data/codeLens/crontab.json +1 -1
  6. package/data/codeLens/doctest.json +10 -10
  7. package/data/codeLens/hcl.json +1 -1
  8. package/data/codeLens/html.json +1 -1
  9. package/data/codeLens/lua.json +1 -1
  10. package/data/codeLens/nginx.json +1 -1
  11. package/data/codeLens/pla.json +10 -10
  12. package/data/codeLens/xml.json +1 -1
  13. package/data/commands/angular.json +670 -312
  14. package/data/commands/c.json +30 -30
  15. package/data/commands/cpp.json +30 -30
  16. package/data/commands/crontab.json +25 -30
  17. package/data/commands/cypher.json +26 -30
  18. package/data/commands/dockerfile.json +26 -2
  19. package/data/commands/doctest.json +23 -24
  20. package/data/commands/dotenv.json +24 -11
  21. package/data/commands/ecl.json +26 -30
  22. package/data/commands/flow9.json +24 -24
  23. package/data/commands/freemarker2.json +24 -18
  24. package/data/commands/graphql.json +25 -11
  25. package/data/commands/html.json +25 -11
  26. package/data/commands/ini.json +26 -12
  27. package/data/commands/javascript.json +29 -30
  28. package/data/commands/less.json +25 -29
  29. package/data/commands/lexon.json +23 -11
  30. package/data/commands/liquid.json +26 -11
  31. package/data/commands/m3.json +26 -12
  32. package/data/commands/manifest.json +35 -731
  33. package/data/commands/markdown.json +26 -12
  34. package/data/commands/mdx.json +23 -10
  35. package/data/commands/mips.json +26 -18
  36. package/data/commands/msdax.json +23 -11
  37. package/data/commands/nestjs.json +516 -273
  38. package/data/commands/nextjs.json +250 -123
  39. package/data/commands/objective-c.json +26 -24
  40. package/data/commands/pascal.json +27 -24
  41. package/data/commands/pascaligo.json +26 -24
  42. package/data/commands/perl.json +30 -30
  43. package/data/commands/pla.json +23 -11
  44. package/data/commands/postiats.json +26 -24
  45. package/data/commands/powerquery.json +23 -11
  46. package/data/commands/powershell.json +28 -30
  47. package/data/commands/protobuf.json +27 -30
  48. package/data/commands/qsharp.json +26 -30
  49. package/data/commands/razor.json +25 -29
  50. package/data/commands/react.json +244 -210
  51. package/data/commands/redshift.json +27 -18
  52. package/data/commands/restructuredtext.json +29 -30
  53. package/data/commands/sb.json +23 -11
  54. package/data/commands/scheme.json +25 -18
  55. package/data/commands/scss.json +26 -29
  56. package/data/commands/shadcn.json +564 -410
  57. package/data/commands/sol.json +27 -30
  58. package/data/commands/sparql.json +25 -11
  59. package/data/commands/sql.json +16 -2
  60. package/data/commands/ssh_config.json +31 -30
  61. package/data/commands/st.json +23 -11
  62. package/data/commands/systemverilog.json +26 -24
  63. package/data/commands/tailwindcss.json +60 -53
  64. package/data/commands/tcl.json +23 -18
  65. package/data/commands/toml.json +25 -11
  66. package/data/commands/twig.json +23 -10
  67. package/data/commands/vb.json +27 -24
  68. package/data/commands/wgsl.json +24 -11
  69. package/data/commands/yaml.json +29 -30
  70. package/data/completion/awk.json +906 -202
  71. package/data/completion/azcli.json +886 -237
  72. package/data/completion/bicep.json +862 -367
  73. package/data/completion/crontab.json +906 -202
  74. package/data/completion/dotenv.json +895 -169
  75. package/data/completion/graphql.json +895 -180
  76. package/data/completion/hcl.json +906 -191
  77. package/data/completion/ini.json +906 -136
  78. package/data/completion/json.json +895 -169
  79. package/data/completion/lexon.json +856 -295
  80. package/data/completion/makefile.json +906 -202
  81. package/data/completion/markdown.json +906 -224
  82. package/data/completion/mdx.json +895 -87
  83. package/data/completion/mips.json +872 -377
  84. package/data/completion/perl.json +961 -202
  85. package/data/completion/pla.json +895 -154
  86. package/data/completion/powershell.json +906 -224
  87. package/data/completion/protobuf.json +884 -180
  88. package/data/completion/ssh_config.json +906 -158
  89. package/data/completion/xml.json +906 -158
  90. package/data/definition/abap.json +127 -1
  91. package/data/definition/apex.json +97 -1
  92. package/data/definition/coffee.json +51 -1
  93. package/data/definition/dart.json +105 -1
  94. package/data/definition/elixir.json +115 -1
  95. package/data/definition/flow9.json +208 -1
  96. package/data/definition/freemarker2.json +283 -1
  97. package/data/definition/html.json +853 -558
  98. package/data/definition/java.json +1127 -183
  99. package/data/definition/kotlin.json +72 -1
  100. package/data/definition/r.json +692 -83
  101. package/data/definition/ruby.json +789 -669
  102. package/data/definition/rust.json +852 -206
  103. package/data/definition/sb.json +339 -1
  104. package/data/definition/st.json +367 -1
  105. package/data/documentRangeFormatting/nestjs.json +57 -17
  106. package/data/documentRangeFormatting/nextjs.json +57 -17
  107. package/data/documentRangeFormatting/react.json +82 -78
  108. package/data/documentSymbol/abap.json +54 -12
  109. package/data/documentSymbol/apex.json +40 -10
  110. package/data/documentSymbol/awk.json +15 -1
  111. package/data/documentSymbol/bicep.json +39 -39
  112. package/data/documentSymbol/c.json +1 -1
  113. package/data/documentSymbol/clojure.json +46 -46
  114. package/data/documentSymbol/css.json +96 -96
  115. package/data/documentSymbol/dart.json +109 -19
  116. package/data/documentSymbol/dockerfile.json +1 -1
  117. package/data/documentSymbol/elixir.json +39 -39
  118. package/data/documentSymbol/go.json +1 -1
  119. package/data/documentSymbol/graphql.json +1 -1
  120. package/data/documentSymbol/hcl.json +1 -1
  121. package/data/documentSymbol/html.json +29 -1
  122. package/data/documentSymbol/java.json +1 -1
  123. package/data/documentSymbol/javascript.json +1 -1
  124. package/data/documentSymbol/julia.json +46 -46
  125. package/data/documentSymbol/kotlin.json +74 -14
  126. package/data/documentSymbol/less.json +25 -25
  127. package/data/documentSymbol/lua.json +22 -1
  128. package/data/documentSymbol/makefile.json +15 -1
  129. package/data/documentSymbol/markdown.json +36 -1
  130. package/data/documentSymbol/mysql.json +32 -32
  131. package/data/documentSymbol/nginx.json +1 -1
  132. package/data/documentSymbol/pascal.json +46 -46
  133. package/data/documentSymbol/perl.json +1 -1
  134. package/data/documentSymbol/pgsql.json +39 -39
  135. package/data/documentSymbol/php.json +1 -1
  136. package/data/documentSymbol/powershell.json +1 -1
  137. package/data/documentSymbol/protobuf.json +1 -1
  138. package/data/documentSymbol/python.json +1 -1
  139. package/data/documentSymbol/r.json +67 -67
  140. package/data/documentSymbol/redshift.json +60 -18
  141. package/data/documentSymbol/ruby.json +1 -1
  142. package/data/documentSymbol/rust.json +1 -1
  143. package/data/documentSymbol/scala.json +116 -20
  144. package/data/documentSymbol/scheme.json +25 -25
  145. package/data/documentSymbol/scss.json +39 -39
  146. package/data/documentSymbol/shell.json +1 -1
  147. package/data/documentSymbol/sql.json +1 -1
  148. package/data/documentSymbol/swift.json +88 -16
  149. package/data/documentSymbol/typescript.json +1 -1
  150. package/data/documentSymbol/vb.json +53 -53
  151. package/data/documentSymbol/yaml.json +1 -1
  152. package/data/foldingRange/angular.json +100 -99
  153. package/data/foldingRange/nestjs.json +94 -26
  154. package/data/foldingRange/nextjs.json +94 -26
  155. package/data/foldingRange/react.json +118 -120
  156. package/data/foldingRange/shadcn.json +94 -93
  157. package/data/formatting/abap.json +19 -11
  158. package/data/formatting/angular.json +63 -21
  159. package/data/formatting/apex.json +19 -11
  160. package/data/formatting/awk.json +1 -1
  161. package/data/formatting/azcli.json +18 -18
  162. package/data/formatting/bicep.json +18 -18
  163. package/data/formatting/c.json +1 -1
  164. package/data/formatting/caddy.json +1 -1
  165. package/data/formatting/cameligo.json +18 -18
  166. package/data/formatting/clojure.json +18 -18
  167. package/data/formatting/coffee.json +18 -18
  168. package/data/formatting/cpp.json +1 -1
  169. package/data/formatting/crontab.json +1 -1
  170. package/data/formatting/csharp.json +1 -1
  171. package/data/formatting/css.json +73 -73
  172. package/data/formatting/cypher.json +18 -18
  173. package/data/formatting/dart.json +43 -15
  174. package/data/formatting/docker-compose.json +24 -24
  175. package/data/formatting/dockerfile.json +1 -1
  176. package/data/formatting/doctest.json +18 -18
  177. package/data/formatting/dotenv.json +1 -1
  178. package/data/formatting/ecl.json +18 -18
  179. package/data/formatting/elixir.json +43 -18
  180. package/data/formatting/flow9.json +18 -18
  181. package/data/formatting/freemarker2.json +18 -18
  182. package/data/formatting/go.json +1 -1
  183. package/data/formatting/graphql.json +1 -1
  184. package/data/formatting/hcl.json +26 -1
  185. package/data/formatting/html.json +26 -1
  186. package/data/formatting/ini.json +1 -1
  187. package/data/formatting/java.json +1 -1
  188. package/data/formatting/javascript.json +1 -1
  189. package/data/formatting/julia.json +18 -18
  190. package/data/formatting/kotlin.json +33 -13
  191. package/data/formatting/less.json +48 -18
  192. package/data/formatting/lexon.json +18 -18
  193. package/data/formatting/liquid.json +18 -18
  194. package/data/formatting/lua.json +1 -1
  195. package/data/formatting/m3.json +18 -18
  196. package/data/formatting/makefile.json +1 -1
  197. package/data/formatting/markdown.json +26 -1
  198. package/data/formatting/mdx.json +18 -18
  199. package/data/formatting/mips.json +18 -18
  200. package/data/formatting/msdax.json +18 -18
  201. package/data/formatting/mysql.json +43 -18
  202. package/data/formatting/nginx.json +1 -1
  203. package/data/formatting/objective-c.json +18 -18
  204. package/data/formatting/pascal.json +18 -18
  205. package/data/formatting/pascaligo.json +18 -18
  206. package/data/formatting/perl.json +1 -1
  207. package/data/formatting/pgsql.json +43 -18
  208. package/data/formatting/php.json +1 -1
  209. package/data/formatting/pla.json +18 -18
  210. package/data/formatting/postiats.json +18 -18
  211. package/data/formatting/powerquery.json +18 -18
  212. package/data/formatting/powershell.json +1 -1
  213. package/data/formatting/protobuf.json +1 -1
  214. package/data/formatting/python.json +1 -1
  215. package/data/formatting/qsharp.json +18 -18
  216. package/data/formatting/r.json +32 -32
  217. package/data/formatting/razor.json +18 -18
  218. package/data/formatting/redis-cli.json +1 -1
  219. package/data/formatting/redis.json +18 -18
  220. package/data/formatting/redshift.json +43 -18
  221. package/data/formatting/restructuredtext.json +18 -18
  222. package/data/formatting/ruby.json +1 -1
  223. package/data/formatting/rust.json +1 -1
  224. package/data/formatting/sb.json +18 -18
  225. package/data/formatting/scala.json +48 -16
  226. package/data/formatting/scheme.json +18 -18
  227. package/data/formatting/scss.json +48 -18
  228. package/data/formatting/shadcn.json +63 -61
  229. package/data/formatting/shell.json +1 -1
  230. package/data/formatting/sol.json +18 -18
  231. package/data/formatting/sparql.json +18 -18
  232. package/data/formatting/sql.json +1 -1
  233. package/data/formatting/ssh_config.json +1 -1
  234. package/data/formatting/st.json +18 -18
  235. package/data/formatting/swift.json +58 -18
  236. package/data/formatting/systemd.json +1 -1
  237. package/data/formatting/systemverilog.json +18 -18
  238. package/data/formatting/tcl.json +18 -18
  239. package/data/formatting/toml.json +1 -1
  240. package/data/formatting/twig.json +18 -18
  241. package/data/formatting/typescript.json +1 -1
  242. package/data/formatting/vb.json +18 -18
  243. package/data/formatting/wgsl.json +18 -18
  244. package/data/formatting/xml.json +26 -1
  245. package/data/formatting/yaml.json +1 -1
  246. package/data/hover/apex.json +281 -6
  247. package/data/hover/awk.json +251 -6
  248. package/data/hover/crontab.json +251 -6
  249. package/data/hover/dotenv.json +242 -4
  250. package/data/hover/graphql.json +251 -6
  251. package/data/hover/lexon.json +250 -5
  252. package/data/hover/markdown.json +226 -9
  253. package/data/hover/mdx.json +250 -5
  254. package/data/hover/perl.json +251 -6
  255. package/data/hover/pla.json +264 -5
  256. package/data/hover/powershell.json +252 -7
  257. package/data/hover/protobuf.json +251 -6
  258. package/data/hover/redis.json +355 -40
  259. package/data/hover/ssh_config.json +251 -6
  260. package/data/hover/xml.json +231 -7
  261. package/data/inlineCompletions/c.json +49 -1
  262. package/data/inlineCompletions/cpp.json +61 -1
  263. package/data/inlineCompletions/csharp.json +73 -1
  264. package/data/inlineCompletions/css.json +125 -125
  265. package/data/inlineCompletions/dart.json +136 -26
  266. package/data/inlineCompletions/elixir.json +34 -34
  267. package/data/inlineCompletions/go.json +67 -1
  268. package/data/inlineCompletions/html.json +1 -1
  269. package/data/inlineCompletions/java.json +67 -1
  270. package/data/inlineCompletions/javascript.json +97 -1
  271. package/data/inlineCompletions/kotlin.json +88 -18
  272. package/data/inlineCompletions/less.json +76 -28
  273. package/data/inlineCompletions/lua.json +37 -1
  274. package/data/inlineCompletions/mysql.json +34 -34
  275. package/data/inlineCompletions/pgsql.json +34 -34
  276. package/data/inlineCompletions/php.json +43 -1
  277. package/data/inlineCompletions/python.json +73 -1
  278. package/data/inlineCompletions/ruby.json +49 -1
  279. package/data/inlineCompletions/rust.json +61 -1
  280. package/data/inlineCompletions/scala.json +130 -25
  281. package/data/inlineCompletions/scss.json +34 -34
  282. package/data/inlineCompletions/shell.json +1 -1
  283. package/data/inlineCompletions/sql.json +43 -1
  284. package/data/inlineCompletions/swift.json +112 -22
  285. package/data/inlineCompletions/typescript.json +97 -1
  286. package/data/linkedEditingRange/azcli.json +6 -6
  287. package/data/linkedEditingRange/crontab.json +6 -6
  288. package/data/linkedEditingRange/docker-compose.json +6 -6
  289. package/data/linkedEditingRange/doctest.json +6 -6
  290. package/data/linkedEditingRange/dotenv.json +13 -6
  291. package/data/linkedEditingRange/ini.json +13 -6
  292. package/data/linkedEditingRange/json.json +13 -6
  293. package/data/linkedEditingRange/lexon.json +6 -6
  294. package/data/linkedEditingRange/mips.json +6 -6
  295. package/data/linkedEditingRange/msdax.json +6 -6
  296. package/data/linkedEditingRange/nestjs.json +18 -10
  297. package/data/linkedEditingRange/nextjs.json +24 -11
  298. package/data/linkedEditingRange/pla.json +6 -6
  299. package/data/linkedEditingRange/react.json +74 -75
  300. package/data/linkedEditingRange/redis-cli.json +6 -6
  301. package/data/linkedEditingRange/redis.json +6 -6
  302. package/data/linkedEditingRange/ssh_config.json +6 -6
  303. package/data/linkedEditingRange/systemd.json +6 -6
  304. package/data/linkedEditingRange/toml.json +13 -6
  305. package/data/linkedEditingRange/wgsl.json +6 -6
  306. package/data/linkedEditingRange/xml.json +13 -13
  307. package/data/linkedEditingRange/yaml.json +13 -6
  308. package/data/onTypeFormatting/angular.json +63 -14
  309. package/data/onTypeFormatting/nestjs.json +64 -16
  310. package/data/onTypeFormatting/nextjs.json +72 -17
  311. package/data/onTypeFormatting/react.json +148 -127
  312. package/data/onTypeFormatting/shadcn.json +63 -54
  313. package/data/rangeSemanticTokens/angular.json +196 -140
  314. package/data/rangeSemanticTokens/nestjs.json +195 -27
  315. package/data/rangeSemanticTokens/nextjs.json +199 -28
  316. package/data/rangeSemanticTokens/react.json +77 -216
  317. package/data/rangeSemanticTokens/shadcn.json +203 -140
  318. package/data/rename/angular.json +121 -131
  319. package/data/rename/nestjs.json +122 -32
  320. package/data/rename/nextjs.json +116 -31
  321. package/data/rename/react.json +133 -88
  322. package/data/rename/shadcn.json +73 -79
  323. package/data/selectionRange/abap.json +58 -34
  324. package/data/selectionRange/angular.json +126 -95
  325. package/data/selectionRange/apex.json +58 -34
  326. package/data/selectionRange/awk.json +56 -34
  327. package/data/selectionRange/azcli.json +43 -24
  328. package/data/selectionRange/bicep.json +56 -34
  329. package/data/selectionRange/c.json +62 -39
  330. package/data/selectionRange/caddy.json +53 -34
  331. package/data/selectionRange/cameligo.json +56 -34
  332. package/data/selectionRange/clojure.json +57 -34
  333. package/data/selectionRange/coffee.json +59 -34
  334. package/data/selectionRange/cpp.json +73 -44
  335. package/data/selectionRange/crontab.json +39 -29
  336. package/data/selectionRange/csharp.json +69 -39
  337. package/data/selectionRange/css.json +95 -55
  338. package/data/selectionRange/cypher.json +57 -34
  339. package/data/selectionRange/dart.json +65 -34
  340. package/data/selectionRange/docker-compose.json +54 -34
  341. package/data/selectionRange/dockerfile.json +56 -34
  342. package/data/selectionRange/doctest.json +47 -24
  343. package/data/selectionRange/dotenv.json +33 -24
  344. package/data/selectionRange/ecl.json +58 -34
  345. package/data/selectionRange/elixir.json +63 -34
  346. package/data/selectionRange/flow9.json +57 -34
  347. package/data/selectionRange/freemarker2.json +58 -34
  348. package/data/selectionRange/go.json +64 -39
  349. package/data/selectionRange/graphql.json +58 -34
  350. package/data/selectionRange/hcl.json +56 -34
  351. package/data/selectionRange/html.json +63 -34
  352. package/data/selectionRange/ini.json +38 -24
  353. package/data/selectionRange/java.json +68 -39
  354. package/data/selectionRange/javascript.json +65 -39
  355. package/data/selectionRange/julia.json +65 -39
  356. package/data/selectionRange/kotlin.json +68 -39
  357. package/data/selectionRange/less.json +58 -34
  358. package/data/selectionRange/lexon.json +38 -24
  359. package/data/selectionRange/liquid.json +58 -34
  360. package/data/selectionRange/lua.json +59 -34
  361. package/data/selectionRange/m3.json +57 -34
  362. package/data/selectionRange/makefile.json +53 -34
  363. package/data/selectionRange/markdown.json +57 -34
  364. package/data/selectionRange/mdx.json +63 -34
  365. package/data/selectionRange/mips.json +43 -29
  366. package/data/selectionRange/msdax.json +52 -34
  367. package/data/selectionRange/mysql.json +51 -34
  368. package/data/selectionRange/nestjs.json +35 -21
  369. package/data/selectionRange/nextjs.json +35 -22
  370. package/data/selectionRange/nginx.json +53 -34
  371. package/data/selectionRange/objective-c.json +64 -39
  372. package/data/selectionRange/pascal.json +53 -34
  373. package/data/selectionRange/pascaligo.json +57 -34
  374. package/data/selectionRange/perl.json +59 -34
  375. package/data/selectionRange/pgsql.json +50 -34
  376. package/data/selectionRange/php.json +65 -39
  377. package/data/selectionRange/pla.json +52 -29
  378. package/data/selectionRange/postiats.json +61 -34
  379. package/data/selectionRange/powerquery.json +56 -34
  380. package/data/selectionRange/powershell.json +65 -39
  381. package/data/selectionRange/protobuf.json +58 -34
  382. package/data/selectionRange/python.json +66 -39
  383. package/data/selectionRange/qsharp.json +62 -39
  384. package/data/selectionRange/r.json +57 -34
  385. package/data/selectionRange/razor.json +63 -34
  386. package/data/selectionRange/react.json +103 -87
  387. package/data/selectionRange/redis-cli.json +38 -24
  388. package/data/selectionRange/redis.json +38 -24
  389. package/data/selectionRange/redshift.json +49 -34
  390. package/data/selectionRange/restructuredtext.json +58 -34
  391. package/data/selectionRange/ruby.json +65 -39
  392. package/data/selectionRange/rust.json +73 -44
  393. package/data/selectionRange/sb.json +43 -29
  394. package/data/selectionRange/scala.json +65 -39
  395. package/data/selectionRange/scheme.json +52 -34
  396. package/data/selectionRange/scss.json +58 -34
  397. package/data/selectionRange/shadcn.json +120 -89
  398. package/data/selectionRange/shell.json +1 -1
  399. package/data/selectionRange/sol.json +63 -39
  400. package/data/selectionRange/sparql.json +58 -34
  401. package/data/selectionRange/sql.json +50 -34
  402. package/data/selectionRange/ssh_config.json +37 -29
  403. package/data/selectionRange/st.json +49 -29
  404. package/data/selectionRange/swift.json +73 -44
  405. package/data/selectionRange/systemd.json +47 -34
  406. package/data/selectionRange/systemverilog.json +62 -39
  407. package/data/selectionRange/tailwindcss.json +49 -34
  408. package/data/selectionRange/tcl.json +57 -34
  409. package/data/selectionRange/toml.json +49 -29
  410. package/data/selectionRange/twig.json +58 -34
  411. package/data/selectionRange/typescript.json +75 -44
  412. package/data/selectionRange/vb.json +59 -39
  413. package/data/selectionRange/wgsl.json +61 -34
  414. package/data/selectionRange/xml.json +51 -34
  415. package/data/selectionRange/yaml.json +54 -34
  416. package/data/semanticTokens/angular.json +269 -198
  417. package/data/semanticTokens/nestjs.json +245 -35
  418. package/data/semanticTokens/nextjs.json +265 -38
  419. package/data/semanticTokens/react.json +230 -215
  420. package/data/semanticTokens/shadcn.json +235 -180
  421. package/data/signatureHelp/nestjs.json +201 -128
  422. package/data/signatureHelp/nextjs.json +185 -127
  423. package/data/signatureHelp/react.json +285 -281
  424. package/package.json +1 -1
@@ -1,54 +1,63 @@
1
- {
2
- "language": "shadcn",
3
- "triggerCharacters": [";", "}", "\n", ">"],
4
- "rules": [
5
- {
6
- "trigger": ";",
7
- "action": "trimTrailingWhitespace",
8
- "context": "End of statement within component body or utility function",
9
- "description": "Trim trailing whitespace and ensure proper line ending after semicolon"
10
- },
11
- {
12
- "trigger": "}",
13
- "action": "reduceIndent",
14
- "context": "Closing brace of a variant object, component body, or function",
15
- "description": "Reduce indentation level on closing brace to match the opening block"
16
- },
17
- {
18
- "trigger": "\n",
19
- "action": "indentAfterJSXOpen",
20
- "context": "After opening JSX tag such as <Card>, <Dialog>, <FormItem>",
21
- "description": "Auto-indent new line after an opening JSX tag by one level"
22
- },
23
- {
24
- "trigger": ">",
25
- "action": "matchClosingTag",
26
- "context": "Closing JSX tag such as </Card>, </DialogContent>",
27
- "description": "Align closing JSX tag indentation to match its corresponding opening tag"
28
- },
29
- {
30
- "trigger": "\n",
31
- "action": "continueClassString",
32
- "context": "Inside a className string or cn() call spanning multiple lines",
33
- "description": "Continue className string indentation aligned with the opening quote or first argument"
34
- },
35
- {
36
- "trigger": "\n",
37
- "action": "indentCnArgument",
38
- "context": "After a comma inside a cn() call with multiple arguments",
39
- "description": "Indent new cn() argument to align with the first argument"
40
- },
41
- {
42
- "trigger": "\n",
43
- "action": "formatCvaVariant",
44
- "context": "Inside a cva() variants object definition",
45
- "description": "Auto-indent variant key-value pairs within the cva config object"
46
- },
47
- {
48
- "trigger": "\n",
49
- "action": "indentFormField",
50
- "context": "Inside FormField > FormItem nesting hierarchy",
51
- "description": "Maintain proper nesting indentation for FormItem, FormLabel, FormControl, FormDescription, FormMessage"
52
- }
53
- ]
54
- }
1
+ {
2
+ "language": "shadcn",
3
+ "autoFormatTriggerCharacters": [
4
+ ";",
5
+ "}",
6
+ "\n",
7
+ ">"
8
+ ],
9
+ "formatRules": [
10
+ {
11
+ "trigger": ";",
12
+ "action": "trimTrailingWhitespace",
13
+ "context": "End of statement within component body or utility function",
14
+ "description": "Trim trailing whitespace and ensure proper line ending after semicolon"
15
+ },
16
+ {
17
+ "trigger": "}",
18
+ "action": "reduceIndent",
19
+ "context": "Closing brace of a variant object, component body, or function",
20
+ "description": "Reduce indentation level on closing brace to match the opening block"
21
+ },
22
+ {
23
+ "trigger": "\n",
24
+ "action": "indentAfterJSXOpen",
25
+ "context": "After opening JSX tag such as <Card>, <Dialog>, <FormItem>",
26
+ "description": "Auto-indent new line after an opening JSX tag by one level"
27
+ },
28
+ {
29
+ "trigger": ">",
30
+ "action": "matchClosingTag",
31
+ "context": "Closing JSX tag such as </Card>, </DialogContent>",
32
+ "description": "Align closing JSX tag indentation to match its corresponding opening tag"
33
+ },
34
+ {
35
+ "trigger": "\n",
36
+ "action": "continueClassString",
37
+ "context": "Inside a className string or cn() call spanning multiple lines",
38
+ "description": "Continue className string indentation aligned with the opening quote or first argument"
39
+ },
40
+ {
41
+ "trigger": "\n",
42
+ "action": "indentCnArgument",
43
+ "context": "After a comma inside a cn() call with multiple arguments",
44
+ "description": "Indent new cn() argument to align with the first argument"
45
+ },
46
+ {
47
+ "trigger": "\n",
48
+ "action": "formatCvaVariant",
49
+ "context": "Inside a cva() variants object definition",
50
+ "description": "Auto-indent variant key-value pairs within the cva config object"
51
+ },
52
+ {
53
+ "trigger": "\n",
54
+ "action": "indentFormField",
55
+ "context": "Inside FormField > FormItem nesting hierarchy",
56
+ "description": "Maintain proper nesting indentation for FormItem, FormLabel, FormControl, FormDescription, FormMessage"
57
+ }
58
+ ],
59
+ "indentation": {
60
+ "increasePattern": "\\{\\s*$",
61
+ "decreasePattern": "^\\s*\\}"
62
+ }
63
+ }
@@ -1,140 +1,196 @@
1
- {
2
- "language": "angular",
3
- "tokenTypes": [
4
- "namespace",
5
- "type",
6
- "class",
7
- "enum",
8
- "interface",
9
- "struct",
10
- "typeParameter",
11
- "parameter",
12
- "variable",
13
- "property",
14
- "enumMember",
15
- "event",
16
- "function",
17
- "method",
18
- "macro",
19
- "keyword",
20
- "modifier",
21
- "comment",
22
- "string",
23
- "number",
24
- "regexp",
25
- "operator",
26
- "decorator"
27
- ],
28
- "tokenModifiers": [
29
- "declaration",
30
- "definition",
31
- "readonly",
32
- "static",
33
- "deprecated",
34
- "abstract",
35
- "async",
36
- "modification",
37
- "documentation",
38
- "defaultLibrary"
39
- ],
40
- "rangeTokenRules": [
41
- {
42
- "pattern": "@(Component|Injectable|NgModule|Directive|Pipe|Input|Output|ViewChild|ViewChildren|ContentChild|ContentChildren|HostBinding|HostListener)\\b",
43
- "tokenType": "decorator",
44
- "tokenModifiers": ["definition"],
45
- "scope": "line",
46
- "description": "Angular decorators in the visible range context"
47
- },
48
- {
49
- "pattern": "(?:public|private|protected|static|async|abstract)?\\s*\\w+\\s*\\([^)]*\\)\\s*(?::\\s*[^{]+)?\\s*\\{",
50
- "tokenType": "method",
51
- "tokenModifiers": ["declaration"],
52
- "scope": "block",
53
- "description": "Method signatures within visible range including access modifiers and return types"
54
- },
55
- {
56
- "pattern": "(?:public|private|protected|readonly|static)?\\s+\\w+\\s*(?::\\s*[^=;]+)?\\s*[=;]",
57
- "tokenType": "property",
58
- "tokenModifiers": ["declaration"],
59
- "scope": "line",
60
- "description": "Property declarations with optional type annotations in visible range"
61
- },
62
- {
63
- "pattern": "(?:readonly\\s+)?\\w+\\s*=\\s*(?:signal|computed|input|output|model)\\s*[<(]",
64
- "tokenType": "function",
65
- "tokenModifiers": ["defaultLibrary"],
66
- "scope": "line",
67
- "description": "Signal-based declarations (signal, computed, input, output, model) in visible range"
68
- },
69
- {
70
- "pattern": "\\{\\{[^}]+\\}\\}|\\[\\w+\\]|\\(\\w+\\)|\\*\\w+",
71
- "tokenType": "keyword",
72
- "tokenModifiers": [],
73
- "scope": "line",
74
- "description": "Angular template expressions: interpolation, property binding, event binding, and structural directives"
75
- },
76
- {
77
- "pattern": "\\|\\s*\\w+(?:\\s*:\\s*[^|]*)?",
78
- "tokenType": "function",
79
- "tokenModifiers": [],
80
- "scope": "line",
81
- "description": "Angular pipe usages in template expressions within visible range"
82
- },
83
- {
84
- "pattern": "^import\\s+(?:\\{[^}]*\\}|\\*\\s+as\\s+\\w+|\\w+)\\s+from\\s+['\"][^'\"]+['\"]",
85
- "tokenType": "namespace",
86
- "tokenModifiers": [],
87
- "scope": "line",
88
- "description": "Import statements in the visible range"
89
- },
90
- {
91
- "pattern": "constructor\\s*\\(([^)]*)\\)",
92
- "tokenType": "parameter",
93
- "tokenModifiers": ["declaration"],
94
- "scope": "block",
95
- "description": "Constructor parameter declarations for dependency injection in visible range"
96
- },
97
- {
98
- "pattern": "<([A-Z]\\w*(?:\\s*,\\s*[A-Z]\\w*)*)>",
99
- "tokenType": "typeParameter",
100
- "tokenModifiers": [],
101
- "scope": "line",
102
- "description": "Generic type arguments within the visible range"
103
- },
104
- {
105
- "pattern": "\\b(ngOnInit|ngOnDestroy|ngOnChanges|ngAfterViewInit|ngAfterContentInit|ngDoCheck|ngAfterViewChecked|ngAfterContentChecked)\\s*\\(",
106
- "tokenType": "method",
107
- "tokenModifiers": ["definition"],
108
- "scope": "block",
109
- "description": "Angular lifecycle method implementations in visible range"
110
- },
111
- {
112
- "pattern": "(?:Routes|Route)\\s*[=:]\\s*\\[|\\{\\s*path\\s*:",
113
- "tokenType": "variable",
114
- "tokenModifiers": ["readonly"],
115
- "scope": "block",
116
- "description": "Route configuration objects and arrays in visible range"
117
- },
118
- {
119
- "pattern": "(?:new\\s+FormControl|new\\s+FormGroup|new\\s+FormArray|this\\.fb\\.control|this\\.fb\\.group|this\\.fb\\.array)\\s*\\(",
120
- "tokenType": "function",
121
- "tokenModifiers": ["defaultLibrary"],
122
- "scope": "line",
123
- "description": "Reactive form control declarations in visible range"
124
- },
125
- {
126
- "pattern": "\\binject\\s*(<[^>]*>)?\\s*\\([^)]*\\)",
127
- "tokenType": "function",
128
- "tokenModifiers": ["defaultLibrary"],
129
- "scope": "line",
130
- "description": "inject() function calls for dependency injection in visible range"
131
- },
132
- {
133
- "pattern": "\\benum\\s+\\w+\\s*\\{[^}]*\\}",
134
- "tokenType": "enum",
135
- "tokenModifiers": ["declaration"],
136
- "scope": "block",
137
- "description": "Enum declarations with members in visible range"
138
- }
139
- ]
140
- }
1
+ {
2
+ "language": "angular",
3
+ "tokenTypes": [
4
+ "namespace",
5
+ "type",
6
+ "class",
7
+ "enum",
8
+ "interface",
9
+ "struct",
10
+ "typeParameter",
11
+ "parameter",
12
+ "variable",
13
+ "property",
14
+ "enumMember",
15
+ "event",
16
+ "function",
17
+ "method",
18
+ "macro",
19
+ "keyword",
20
+ "modifier",
21
+ "comment",
22
+ "string",
23
+ "number",
24
+ "regexp",
25
+ "operator",
26
+ "decorator"
27
+ ],
28
+ "tokenModifiers": [
29
+ "declaration",
30
+ "definition",
31
+ "readonly",
32
+ "static",
33
+ "deprecated",
34
+ "abstract",
35
+ "async",
36
+ "modification",
37
+ "documentation",
38
+ "defaultLibrary"
39
+ ],
40
+ "rangeTokenRules": [
41
+ {
42
+ "pattern": "@(Component|Injectable|NgModule|Directive|Pipe|Input|Output|ViewChild|ViewChildren|ContentChild|ContentChildren|HostBinding|HostListener)\\b",
43
+ "tokenType": "decorator",
44
+ "tokenModifiers": [
45
+ "definition"
46
+ ],
47
+ "scope": "line",
48
+ "description": "Angular decorators in the visible range context"
49
+ },
50
+ {
51
+ "pattern": "(?:public|private|protected|static|async|abstract)?\\s*\\w+\\s*\\([^)]*\\)\\s*(?::\\s*[^{]+)?\\s*\\{",
52
+ "tokenType": "method",
53
+ "tokenModifiers": [
54
+ "declaration"
55
+ ],
56
+ "scope": "block",
57
+ "description": "Method signatures within visible range including access modifiers and return types"
58
+ },
59
+ {
60
+ "pattern": "(?:public|private|protected|readonly|static)?\\s+\\w+\\s*(?::\\s*[^=;]+)?\\s*[=;]",
61
+ "tokenType": "property",
62
+ "tokenModifiers": [
63
+ "declaration"
64
+ ],
65
+ "scope": "line",
66
+ "description": "Property declarations with optional type annotations in visible range"
67
+ },
68
+ {
69
+ "pattern": "(?:readonly\\s+)?\\w+\\s*=\\s*(?:signal|computed|input|output|model)\\s*[<(]",
70
+ "tokenType": "function",
71
+ "tokenModifiers": [
72
+ "defaultLibrary"
73
+ ],
74
+ "scope": "line",
75
+ "description": "Signal-based declarations (signal, computed, input, output, model) in visible range"
76
+ },
77
+ {
78
+ "pattern": "\\{\\{[^}]+\\}\\}|\\[\\w+\\]|\\(\\w+\\)|\\*\\w+",
79
+ "tokenType": "keyword",
80
+ "tokenModifiers": [],
81
+ "scope": "line",
82
+ "description": "Angular template expressions: interpolation, property binding, event binding, and structural directives"
83
+ },
84
+ {
85
+ "pattern": "\\|\\s*\\w+(?:\\s*:\\s*[^|]*)?",
86
+ "tokenType": "function",
87
+ "tokenModifiers": [],
88
+ "scope": "line",
89
+ "description": "Angular pipe usages in template expressions within visible range"
90
+ },
91
+ {
92
+ "pattern": "^import\\s+(?:\\{[^}]*\\}|\\*\\s+as\\s+\\w+|\\w+)\\s+from\\s+['\"][^'\"]+['\"]",
93
+ "tokenType": "namespace",
94
+ "tokenModifiers": [],
95
+ "scope": "line",
96
+ "description": "Import statements in the visible range"
97
+ },
98
+ {
99
+ "pattern": "constructor\\s*\\(([^)]*)\\)",
100
+ "tokenType": "parameter",
101
+ "tokenModifiers": [
102
+ "declaration"
103
+ ],
104
+ "scope": "block",
105
+ "description": "Constructor parameter declarations for dependency injection in visible range"
106
+ },
107
+ {
108
+ "pattern": "<([A-Z]\\w*(?:\\s*,\\s*[A-Z]\\w*)*)>",
109
+ "tokenType": "typeParameter",
110
+ "tokenModifiers": [],
111
+ "scope": "line",
112
+ "description": "Generic type arguments within the visible range"
113
+ },
114
+ {
115
+ "pattern": "\\b(ngOnInit|ngOnDestroy|ngOnChanges|ngAfterViewInit|ngAfterContentInit|ngDoCheck|ngAfterViewChecked|ngAfterContentChecked)\\s*\\(",
116
+ "tokenType": "method",
117
+ "tokenModifiers": [
118
+ "definition"
119
+ ],
120
+ "scope": "block",
121
+ "description": "Angular lifecycle method implementations in visible range"
122
+ },
123
+ {
124
+ "pattern": "(?:Routes|Route)\\s*[=:]\\s*\\[|\\{\\s*path\\s*:",
125
+ "tokenType": "variable",
126
+ "tokenModifiers": [
127
+ "readonly"
128
+ ],
129
+ "scope": "block",
130
+ "description": "Route configuration objects and arrays in visible range"
131
+ },
132
+ {
133
+ "pattern": "(?:new\\s+FormControl|new\\s+FormGroup|new\\s+FormArray|this\\.fb\\.control|this\\.fb\\.group|this\\.fb\\.array)\\s*\\(",
134
+ "tokenType": "function",
135
+ "tokenModifiers": [
136
+ "defaultLibrary"
137
+ ],
138
+ "scope": "line",
139
+ "description": "Reactive form control declarations in visible range"
140
+ },
141
+ {
142
+ "pattern": "\\binject\\s*(<[^>]*>)?\\s*\\([^)]*\\)",
143
+ "tokenType": "function",
144
+ "tokenModifiers": [
145
+ "defaultLibrary"
146
+ ],
147
+ "scope": "line",
148
+ "description": "inject() function calls for dependency injection in visible range"
149
+ },
150
+ {
151
+ "pattern": "\\benum\\s+\\w+\\s*\\{[^}]*\\}",
152
+ "tokenType": "enum",
153
+ "tokenModifiers": [
154
+ "declaration"
155
+ ],
156
+ "scope": "block",
157
+ "description": "Enum declarations with members in visible range"
158
+ }
159
+ ],
160
+ "tokenLegend": {
161
+ "tokenTypes": [
162
+ "namespace",
163
+ "type",
164
+ "class",
165
+ "enum",
166
+ "interface",
167
+ "struct",
168
+ "typeParameter",
169
+ "parameter",
170
+ "variable",
171
+ "property",
172
+ "enumMember",
173
+ "event",
174
+ "function",
175
+ "method"
176
+ ],
177
+ "tokenModifiers": [
178
+ "declaration",
179
+ "definition",
180
+ "readonly",
181
+ "static",
182
+ "deprecated",
183
+ "abstract"
184
+ ]
185
+ },
186
+ "supportedRangeScopes": [
187
+ "function",
188
+ "class",
189
+ "block",
190
+ "statement"
191
+ ],
192
+ "multilineTokens": [
193
+ "comment",
194
+ "string"
195
+ ]
196
+ }