@colbymchenry/codegraph-darwin-arm64 0.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (569) hide show
  1. package/bin/codegraph +3 -0
  2. package/lib/dist/bin/codegraph.d.ts +21 -0
  3. package/lib/dist/bin/codegraph.d.ts.map +1 -0
  4. package/lib/dist/bin/codegraph.js +1273 -0
  5. package/lib/dist/bin/codegraph.js.map +1 -0
  6. package/lib/dist/bin/node-version-check.d.ts +37 -0
  7. package/lib/dist/bin/node-version-check.d.ts.map +1 -0
  8. package/lib/dist/bin/node-version-check.js +79 -0
  9. package/lib/dist/bin/node-version-check.js.map +1 -0
  10. package/lib/dist/bin/uninstall.d.ts +14 -0
  11. package/lib/dist/bin/uninstall.d.ts.map +1 -0
  12. package/lib/dist/bin/uninstall.js +36 -0
  13. package/lib/dist/bin/uninstall.js.map +1 -0
  14. package/lib/dist/config.d.ts +51 -0
  15. package/lib/dist/config.d.ts.map +1 -0
  16. package/lib/dist/config.js +321 -0
  17. package/lib/dist/config.js.map +1 -0
  18. package/lib/dist/context/formatter.d.ts +30 -0
  19. package/lib/dist/context/formatter.d.ts.map +1 -0
  20. package/lib/dist/context/formatter.js +244 -0
  21. package/lib/dist/context/formatter.js.map +1 -0
  22. package/lib/dist/context/index.d.ts +97 -0
  23. package/lib/dist/context/index.d.ts.map +1 -0
  24. package/lib/dist/context/index.js +1050 -0
  25. package/lib/dist/context/index.js.map +1 -0
  26. package/lib/dist/db/index.d.ts +83 -0
  27. package/lib/dist/db/index.d.ts.map +1 -0
  28. package/lib/dist/db/index.js +219 -0
  29. package/lib/dist/db/index.js.map +1 -0
  30. package/lib/dist/db/migrations.d.ts +44 -0
  31. package/lib/dist/db/migrations.d.ts.map +1 -0
  32. package/lib/dist/db/migrations.js +131 -0
  33. package/lib/dist/db/migrations.js.map +1 -0
  34. package/lib/dist/db/queries.d.ts +253 -0
  35. package/lib/dist/db/queries.d.ts.map +1 -0
  36. package/lib/dist/db/queries.js +1207 -0
  37. package/lib/dist/db/queries.js.map +1 -0
  38. package/lib/dist/db/schema.sql +151 -0
  39. package/lib/dist/db/sqlite-adapter.d.ts +46 -0
  40. package/lib/dist/db/sqlite-adapter.d.ts.map +1 -0
  41. package/lib/dist/db/sqlite-adapter.js +114 -0
  42. package/lib/dist/db/sqlite-adapter.js.map +1 -0
  43. package/lib/dist/directory.d.ts +57 -0
  44. package/lib/dist/directory.d.ts.map +1 -0
  45. package/lib/dist/directory.js +264 -0
  46. package/lib/dist/directory.js.map +1 -0
  47. package/lib/dist/errors.d.ts +136 -0
  48. package/lib/dist/errors.d.ts.map +1 -0
  49. package/lib/dist/errors.js +219 -0
  50. package/lib/dist/errors.js.map +1 -0
  51. package/lib/dist/extraction/dfm-extractor.d.ts +31 -0
  52. package/lib/dist/extraction/dfm-extractor.d.ts.map +1 -0
  53. package/lib/dist/extraction/dfm-extractor.js +151 -0
  54. package/lib/dist/extraction/dfm-extractor.js.map +1 -0
  55. package/lib/dist/extraction/grammars.d.ts +78 -0
  56. package/lib/dist/extraction/grammars.d.ts.map +1 -0
  57. package/lib/dist/extraction/grammars.js +332 -0
  58. package/lib/dist/extraction/grammars.js.map +1 -0
  59. package/lib/dist/extraction/index.d.ts +130 -0
  60. package/lib/dist/extraction/index.d.ts.map +1 -0
  61. package/lib/dist/extraction/index.js +1305 -0
  62. package/lib/dist/extraction/index.js.map +1 -0
  63. package/lib/dist/extraction/languages/c-cpp.d.ts +4 -0
  64. package/lib/dist/extraction/languages/c-cpp.d.ts.map +1 -0
  65. package/lib/dist/extraction/languages/c-cpp.js +126 -0
  66. package/lib/dist/extraction/languages/c-cpp.js.map +1 -0
  67. package/lib/dist/extraction/languages/csharp.d.ts +3 -0
  68. package/lib/dist/extraction/languages/csharp.d.ts.map +1 -0
  69. package/lib/dist/extraction/languages/csharp.js +72 -0
  70. package/lib/dist/extraction/languages/csharp.js.map +1 -0
  71. package/lib/dist/extraction/languages/dart.d.ts +3 -0
  72. package/lib/dist/extraction/languages/dart.d.ts.map +1 -0
  73. package/lib/dist/extraction/languages/dart.js +192 -0
  74. package/lib/dist/extraction/languages/dart.js.map +1 -0
  75. package/lib/dist/extraction/languages/go.d.ts +3 -0
  76. package/lib/dist/extraction/languages/go.d.ts.map +1 -0
  77. package/lib/dist/extraction/languages/go.js +58 -0
  78. package/lib/dist/extraction/languages/go.js.map +1 -0
  79. package/lib/dist/extraction/languages/index.d.ts +10 -0
  80. package/lib/dist/extraction/languages/index.d.ts.map +1 -0
  81. package/lib/dist/extraction/languages/index.js +49 -0
  82. package/lib/dist/extraction/languages/index.js.map +1 -0
  83. package/lib/dist/extraction/languages/java.d.ts +3 -0
  84. package/lib/dist/extraction/languages/java.d.ts.map +1 -0
  85. package/lib/dist/extraction/languages/java.js +64 -0
  86. package/lib/dist/extraction/languages/java.js.map +1 -0
  87. package/lib/dist/extraction/languages/javascript.d.ts +3 -0
  88. package/lib/dist/extraction/languages/javascript.d.ts.map +1 -0
  89. package/lib/dist/extraction/languages/javascript.js +90 -0
  90. package/lib/dist/extraction/languages/javascript.js.map +1 -0
  91. package/lib/dist/extraction/languages/kotlin.d.ts +3 -0
  92. package/lib/dist/extraction/languages/kotlin.d.ts.map +1 -0
  93. package/lib/dist/extraction/languages/kotlin.js +253 -0
  94. package/lib/dist/extraction/languages/kotlin.js.map +1 -0
  95. package/lib/dist/extraction/languages/lua.d.ts +3 -0
  96. package/lib/dist/extraction/languages/lua.d.ts.map +1 -0
  97. package/lib/dist/extraction/languages/lua.js +150 -0
  98. package/lib/dist/extraction/languages/lua.js.map +1 -0
  99. package/lib/dist/extraction/languages/luau.d.ts +3 -0
  100. package/lib/dist/extraction/languages/luau.d.ts.map +1 -0
  101. package/lib/dist/extraction/languages/luau.js +37 -0
  102. package/lib/dist/extraction/languages/luau.js.map +1 -0
  103. package/lib/dist/extraction/languages/pascal.d.ts +3 -0
  104. package/lib/dist/extraction/languages/pascal.d.ts.map +1 -0
  105. package/lib/dist/extraction/languages/pascal.js +66 -0
  106. package/lib/dist/extraction/languages/pascal.js.map +1 -0
  107. package/lib/dist/extraction/languages/php.d.ts +3 -0
  108. package/lib/dist/extraction/languages/php.d.ts.map +1 -0
  109. package/lib/dist/extraction/languages/php.js +107 -0
  110. package/lib/dist/extraction/languages/php.js.map +1 -0
  111. package/lib/dist/extraction/languages/python.d.ts +3 -0
  112. package/lib/dist/extraction/languages/python.d.ts.map +1 -0
  113. package/lib/dist/extraction/languages/python.js +56 -0
  114. package/lib/dist/extraction/languages/python.js.map +1 -0
  115. package/lib/dist/extraction/languages/ruby.d.ts +3 -0
  116. package/lib/dist/extraction/languages/ruby.d.ts.map +1 -0
  117. package/lib/dist/extraction/languages/ruby.js +114 -0
  118. package/lib/dist/extraction/languages/ruby.js.map +1 -0
  119. package/lib/dist/extraction/languages/rust.d.ts +3 -0
  120. package/lib/dist/extraction/languages/rust.d.ts.map +1 -0
  121. package/lib/dist/extraction/languages/rust.js +109 -0
  122. package/lib/dist/extraction/languages/rust.js.map +1 -0
  123. package/lib/dist/extraction/languages/scala.d.ts +3 -0
  124. package/lib/dist/extraction/languages/scala.d.ts.map +1 -0
  125. package/lib/dist/extraction/languages/scala.js +139 -0
  126. package/lib/dist/extraction/languages/scala.js.map +1 -0
  127. package/lib/dist/extraction/languages/swift.d.ts +3 -0
  128. package/lib/dist/extraction/languages/swift.d.ts.map +1 -0
  129. package/lib/dist/extraction/languages/swift.js +91 -0
  130. package/lib/dist/extraction/languages/swift.js.map +1 -0
  131. package/lib/dist/extraction/languages/typescript.d.ts +3 -0
  132. package/lib/dist/extraction/languages/typescript.d.ts.map +1 -0
  133. package/lib/dist/extraction/languages/typescript.js +129 -0
  134. package/lib/dist/extraction/languages/typescript.js.map +1 -0
  135. package/lib/dist/extraction/liquid-extractor.d.ts +52 -0
  136. package/lib/dist/extraction/liquid-extractor.d.ts.map +1 -0
  137. package/lib/dist/extraction/liquid-extractor.js +313 -0
  138. package/lib/dist/extraction/liquid-extractor.js.map +1 -0
  139. package/lib/dist/extraction/parse-worker.d.ts +8 -0
  140. package/lib/dist/extraction/parse-worker.d.ts.map +1 -0
  141. package/lib/dist/extraction/parse-worker.js +94 -0
  142. package/lib/dist/extraction/parse-worker.js.map +1 -0
  143. package/lib/dist/extraction/svelte-extractor.d.ts +56 -0
  144. package/lib/dist/extraction/svelte-extractor.d.ts.map +1 -0
  145. package/lib/dist/extraction/svelte-extractor.js +272 -0
  146. package/lib/dist/extraction/svelte-extractor.js.map +1 -0
  147. package/lib/dist/extraction/tree-sitter-helpers.d.ts +28 -0
  148. package/lib/dist/extraction/tree-sitter-helpers.d.ts.map +1 -0
  149. package/lib/dist/extraction/tree-sitter-helpers.js +103 -0
  150. package/lib/dist/extraction/tree-sitter-helpers.js.map +1 -0
  151. package/lib/dist/extraction/tree-sitter-types.d.ts +179 -0
  152. package/lib/dist/extraction/tree-sitter-types.d.ts.map +1 -0
  153. package/lib/dist/extraction/tree-sitter-types.js +10 -0
  154. package/lib/dist/extraction/tree-sitter-types.js.map +1 -0
  155. package/lib/dist/extraction/tree-sitter.d.ts +233 -0
  156. package/lib/dist/extraction/tree-sitter.d.ts.map +1 -0
  157. package/lib/dist/extraction/tree-sitter.js +2425 -0
  158. package/lib/dist/extraction/tree-sitter.js.map +1 -0
  159. package/lib/dist/extraction/vue-extractor.d.ts +36 -0
  160. package/lib/dist/extraction/vue-extractor.d.ts.map +1 -0
  161. package/lib/dist/extraction/vue-extractor.js +163 -0
  162. package/lib/dist/extraction/vue-extractor.js.map +1 -0
  163. package/lib/dist/extraction/wasm/tree-sitter-lua.wasm +0 -0
  164. package/lib/dist/extraction/wasm/tree-sitter-luau.wasm +0 -0
  165. package/lib/dist/extraction/wasm/tree-sitter-pascal.wasm +0 -0
  166. package/lib/dist/extraction/wasm/tree-sitter-scala.wasm +0 -0
  167. package/lib/dist/graph/index.d.ts +8 -0
  168. package/lib/dist/graph/index.d.ts.map +1 -0
  169. package/lib/dist/graph/index.js +13 -0
  170. package/lib/dist/graph/index.js.map +1 -0
  171. package/lib/dist/graph/queries.d.ts +106 -0
  172. package/lib/dist/graph/queries.d.ts.map +1 -0
  173. package/lib/dist/graph/queries.js +366 -0
  174. package/lib/dist/graph/queries.js.map +1 -0
  175. package/lib/dist/graph/traversal.d.ts +127 -0
  176. package/lib/dist/graph/traversal.d.ts.map +1 -0
  177. package/lib/dist/graph/traversal.js +493 -0
  178. package/lib/dist/graph/traversal.js.map +1 -0
  179. package/lib/dist/index.d.ts +453 -0
  180. package/lib/dist/index.d.ts.map +1 -0
  181. package/lib/dist/index.js +833 -0
  182. package/lib/dist/index.js.map +1 -0
  183. package/lib/dist/installer/claude-md-template.d.ts +14 -0
  184. package/lib/dist/installer/claude-md-template.d.ts.map +1 -0
  185. package/lib/dist/installer/claude-md-template.js +21 -0
  186. package/lib/dist/installer/claude-md-template.js.map +1 -0
  187. package/lib/dist/installer/config-writer.d.ts +29 -0
  188. package/lib/dist/installer/config-writer.d.ts.map +1 -0
  189. package/lib/dist/installer/config-writer.js +111 -0
  190. package/lib/dist/installer/config-writer.js.map +1 -0
  191. package/lib/dist/installer/index.d.ts +65 -0
  192. package/lib/dist/installer/index.d.ts.map +1 -0
  193. package/lib/dist/installer/index.js +406 -0
  194. package/lib/dist/installer/index.js.map +1 -0
  195. package/lib/dist/installer/instructions-template.d.ts +28 -0
  196. package/lib/dist/installer/instructions-template.d.ts.map +1 -0
  197. package/lib/dist/installer/instructions-template.js +64 -0
  198. package/lib/dist/installer/instructions-template.js.map +1 -0
  199. package/lib/dist/installer/targets/claude.d.ts +47 -0
  200. package/lib/dist/installer/targets/claude.d.ts.map +1 -0
  201. package/lib/dist/installer/targets/claude.js +401 -0
  202. package/lib/dist/installer/targets/claude.js.map +1 -0
  203. package/lib/dist/installer/targets/codex.d.ts +18 -0
  204. package/lib/dist/installer/targets/codex.d.ts.map +1 -0
  205. package/lib/dist/installer/targets/codex.js +185 -0
  206. package/lib/dist/installer/targets/codex.js.map +1 -0
  207. package/lib/dist/installer/targets/cursor.d.ts +35 -0
  208. package/lib/dist/installer/targets/cursor.d.ts.map +1 -0
  209. package/lib/dist/installer/targets/cursor.js +229 -0
  210. package/lib/dist/installer/targets/cursor.js.map +1 -0
  211. package/lib/dist/installer/targets/opencode.d.ts +30 -0
  212. package/lib/dist/installer/targets/opencode.d.ts.map +1 -0
  213. package/lib/dist/installer/targets/opencode.js +235 -0
  214. package/lib/dist/installer/targets/opencode.js.map +1 -0
  215. package/lib/dist/installer/targets/registry.d.ts +35 -0
  216. package/lib/dist/installer/targets/registry.d.ts.map +1 -0
  217. package/lib/dist/installer/targets/registry.js +83 -0
  218. package/lib/dist/installer/targets/registry.js.map +1 -0
  219. package/lib/dist/installer/targets/shared.d.ts +77 -0
  220. package/lib/dist/installer/targets/shared.d.ts.map +1 -0
  221. package/lib/dist/installer/targets/shared.js +246 -0
  222. package/lib/dist/installer/targets/shared.js.map +1 -0
  223. package/lib/dist/installer/targets/toml.d.ts +52 -0
  224. package/lib/dist/installer/targets/toml.d.ts.map +1 -0
  225. package/lib/dist/installer/targets/toml.js +147 -0
  226. package/lib/dist/installer/targets/toml.js.map +1 -0
  227. package/lib/dist/installer/targets/types.d.ts +116 -0
  228. package/lib/dist/installer/targets/types.d.ts.map +1 -0
  229. package/lib/dist/installer/targets/types.js +16 -0
  230. package/lib/dist/installer/targets/types.js.map +1 -0
  231. package/lib/dist/mcp/index.d.ts +94 -0
  232. package/lib/dist/mcp/index.d.ts.map +1 -0
  233. package/lib/dist/mcp/index.js +453 -0
  234. package/lib/dist/mcp/index.js.map +1 -0
  235. package/lib/dist/mcp/server-instructions.d.ts +19 -0
  236. package/lib/dist/mcp/server-instructions.d.ts.map +1 -0
  237. package/lib/dist/mcp/server-instructions.js +71 -0
  238. package/lib/dist/mcp/server-instructions.js.map +1 -0
  239. package/lib/dist/mcp/tools.d.ts +257 -0
  240. package/lib/dist/mcp/tools.d.ts.map +1 -0
  241. package/lib/dist/mcp/tools.js +1646 -0
  242. package/lib/dist/mcp/tools.js.map +1 -0
  243. package/lib/dist/mcp/transport.d.ts +106 -0
  244. package/lib/dist/mcp/transport.d.ts.map +1 -0
  245. package/lib/dist/mcp/transport.js +233 -0
  246. package/lib/dist/mcp/transport.js.map +1 -0
  247. package/lib/dist/resolution/frameworks/cargo-workspace.d.ts +18 -0
  248. package/lib/dist/resolution/frameworks/cargo-workspace.d.ts.map +1 -0
  249. package/lib/dist/resolution/frameworks/cargo-workspace.js +225 -0
  250. package/lib/dist/resolution/frameworks/cargo-workspace.js.map +1 -0
  251. package/lib/dist/resolution/frameworks/csharp.d.ts +8 -0
  252. package/lib/dist/resolution/frameworks/csharp.d.ts.map +1 -0
  253. package/lib/dist/resolution/frameworks/csharp.js +213 -0
  254. package/lib/dist/resolution/frameworks/csharp.js.map +1 -0
  255. package/lib/dist/resolution/frameworks/express.d.ts +8 -0
  256. package/lib/dist/resolution/frameworks/express.d.ts.map +1 -0
  257. package/lib/dist/resolution/frameworks/express.js +225 -0
  258. package/lib/dist/resolution/frameworks/express.js.map +1 -0
  259. package/lib/dist/resolution/frameworks/go.d.ts +8 -0
  260. package/lib/dist/resolution/frameworks/go.d.ts.map +1 -0
  261. package/lib/dist/resolution/frameworks/go.js +158 -0
  262. package/lib/dist/resolution/frameworks/go.js.map +1 -0
  263. package/lib/dist/resolution/frameworks/index.d.ts +42 -0
  264. package/lib/dist/resolution/frameworks/index.d.ts.map +1 -0
  265. package/lib/dist/resolution/frameworks/index.js +133 -0
  266. package/lib/dist/resolution/frameworks/index.js.map +1 -0
  267. package/lib/dist/resolution/frameworks/java.d.ts +8 -0
  268. package/lib/dist/resolution/frameworks/java.d.ts.map +1 -0
  269. package/lib/dist/resolution/frameworks/java.js +177 -0
  270. package/lib/dist/resolution/frameworks/java.js.map +1 -0
  271. package/lib/dist/resolution/frameworks/laravel.d.ts +13 -0
  272. package/lib/dist/resolution/frameworks/laravel.d.ts.map +1 -0
  273. package/lib/dist/resolution/frameworks/laravel.js +248 -0
  274. package/lib/dist/resolution/frameworks/laravel.js.map +1 -0
  275. package/lib/dist/resolution/frameworks/nestjs.d.ts +26 -0
  276. package/lib/dist/resolution/frameworks/nestjs.d.ts.map +1 -0
  277. package/lib/dist/resolution/frameworks/nestjs.js +374 -0
  278. package/lib/dist/resolution/frameworks/nestjs.js.map +1 -0
  279. package/lib/dist/resolution/frameworks/python.d.ts +10 -0
  280. package/lib/dist/resolution/frameworks/python.d.ts.map +1 -0
  281. package/lib/dist/resolution/frameworks/python.js +278 -0
  282. package/lib/dist/resolution/frameworks/python.js.map +1 -0
  283. package/lib/dist/resolution/frameworks/react.d.ts +8 -0
  284. package/lib/dist/resolution/frameworks/react.d.ts.map +1 -0
  285. package/lib/dist/resolution/frameworks/react.js +272 -0
  286. package/lib/dist/resolution/frameworks/react.js.map +1 -0
  287. package/lib/dist/resolution/frameworks/ruby.d.ts +8 -0
  288. package/lib/dist/resolution/frameworks/ruby.d.ts.map +1 -0
  289. package/lib/dist/resolution/frameworks/ruby.js +198 -0
  290. package/lib/dist/resolution/frameworks/ruby.js.map +1 -0
  291. package/lib/dist/resolution/frameworks/rust.d.ts +8 -0
  292. package/lib/dist/resolution/frameworks/rust.d.ts.map +1 -0
  293. package/lib/dist/resolution/frameworks/rust.js +207 -0
  294. package/lib/dist/resolution/frameworks/rust.js.map +1 -0
  295. package/lib/dist/resolution/frameworks/svelte.d.ts +9 -0
  296. package/lib/dist/resolution/frameworks/svelte.d.ts.map +1 -0
  297. package/lib/dist/resolution/frameworks/svelte.js +249 -0
  298. package/lib/dist/resolution/frameworks/svelte.js.map +1 -0
  299. package/lib/dist/resolution/frameworks/swift.d.ts +10 -0
  300. package/lib/dist/resolution/frameworks/swift.d.ts.map +1 -0
  301. package/lib/dist/resolution/frameworks/swift.js +376 -0
  302. package/lib/dist/resolution/frameworks/swift.js.map +1 -0
  303. package/lib/dist/resolution/frameworks/vue.d.ts +9 -0
  304. package/lib/dist/resolution/frameworks/vue.d.ts.map +1 -0
  305. package/lib/dist/resolution/frameworks/vue.js +306 -0
  306. package/lib/dist/resolution/frameworks/vue.js.map +1 -0
  307. package/lib/dist/resolution/import-resolver.d.ts +40 -0
  308. package/lib/dist/resolution/import-resolver.d.ts.map +1 -0
  309. package/lib/dist/resolution/import-resolver.js +663 -0
  310. package/lib/dist/resolution/import-resolver.js.map +1 -0
  311. package/lib/dist/resolution/index.d.ts +106 -0
  312. package/lib/dist/resolution/index.d.ts.map +1 -0
  313. package/lib/dist/resolution/index.js +709 -0
  314. package/lib/dist/resolution/index.js.map +1 -0
  315. package/lib/dist/resolution/name-matcher.d.ts +32 -0
  316. package/lib/dist/resolution/name-matcher.d.ts.map +1 -0
  317. package/lib/dist/resolution/name-matcher.js +384 -0
  318. package/lib/dist/resolution/name-matcher.js.map +1 -0
  319. package/lib/dist/resolution/path-aliases.d.ts +68 -0
  320. package/lib/dist/resolution/path-aliases.d.ts.map +1 -0
  321. package/lib/dist/resolution/path-aliases.js +238 -0
  322. package/lib/dist/resolution/path-aliases.js.map +1 -0
  323. package/lib/dist/resolution/strip-comments.d.ts +27 -0
  324. package/lib/dist/resolution/strip-comments.d.ts.map +1 -0
  325. package/lib/dist/resolution/strip-comments.js +441 -0
  326. package/lib/dist/resolution/strip-comments.js.map +1 -0
  327. package/lib/dist/resolution/types.d.ts +172 -0
  328. package/lib/dist/resolution/types.d.ts.map +1 -0
  329. package/lib/dist/resolution/types.js +8 -0
  330. package/lib/dist/resolution/types.js.map +1 -0
  331. package/lib/dist/search/query-parser.d.ts +57 -0
  332. package/lib/dist/search/query-parser.d.ts.map +1 -0
  333. package/lib/dist/search/query-parser.js +177 -0
  334. package/lib/dist/search/query-parser.js.map +1 -0
  335. package/lib/dist/search/query-utils.d.ts +53 -0
  336. package/lib/dist/search/query-utils.d.ts.map +1 -0
  337. package/lib/dist/search/query-utils.js +350 -0
  338. package/lib/dist/search/query-utils.js.map +1 -0
  339. package/lib/dist/sync/git-hooks.d.ts +45 -0
  340. package/lib/dist/sync/git-hooks.d.ts.map +1 -0
  341. package/lib/dist/sync/git-hooks.js +223 -0
  342. package/lib/dist/sync/git-hooks.js.map +1 -0
  343. package/lib/dist/sync/index.d.ts +17 -0
  344. package/lib/dist/sync/index.d.ts.map +1 -0
  345. package/lib/dist/sync/index.js +28 -0
  346. package/lib/dist/sync/index.js.map +1 -0
  347. package/lib/dist/sync/watch-policy.d.ts +48 -0
  348. package/lib/dist/sync/watch-policy.d.ts.map +1 -0
  349. package/lib/dist/sync/watch-policy.js +124 -0
  350. package/lib/dist/sync/watch-policy.js.map +1 -0
  351. package/lib/dist/sync/watcher.d.ts +81 -0
  352. package/lib/dist/sync/watcher.d.ts.map +1 -0
  353. package/lib/dist/sync/watcher.js +194 -0
  354. package/lib/dist/sync/watcher.js.map +1 -0
  355. package/lib/dist/types.d.ts +423 -0
  356. package/lib/dist/types.d.ts.map +1 -0
  357. package/lib/dist/types.js +262 -0
  358. package/lib/dist/types.js.map +1 -0
  359. package/lib/dist/ui/glyphs.d.ts +42 -0
  360. package/lib/dist/ui/glyphs.d.ts.map +1 -0
  361. package/lib/dist/ui/glyphs.js +78 -0
  362. package/lib/dist/ui/glyphs.js.map +1 -0
  363. package/lib/dist/ui/shimmer-progress.d.ts +11 -0
  364. package/lib/dist/ui/shimmer-progress.d.ts.map +1 -0
  365. package/lib/dist/ui/shimmer-progress.js +90 -0
  366. package/lib/dist/ui/shimmer-progress.js.map +1 -0
  367. package/lib/dist/ui/shimmer-worker.d.ts +2 -0
  368. package/lib/dist/ui/shimmer-worker.d.ts.map +1 -0
  369. package/lib/dist/ui/shimmer-worker.js +118 -0
  370. package/lib/dist/ui/shimmer-worker.js.map +1 -0
  371. package/lib/dist/ui/types.d.ts +17 -0
  372. package/lib/dist/ui/types.d.ts.map +1 -0
  373. package/lib/dist/ui/types.js +3 -0
  374. package/lib/dist/ui/types.js.map +1 -0
  375. package/lib/dist/utils.d.ts +205 -0
  376. package/lib/dist/utils.d.ts.map +1 -0
  377. package/lib/dist/utils.js +549 -0
  378. package/lib/dist/utils.js.map +1 -0
  379. package/lib/node_modules/.package-lock.json +116 -0
  380. package/lib/node_modules/@clack/core/CHANGELOG.md +348 -0
  381. package/lib/node_modules/@clack/core/LICENSE +9 -0
  382. package/lib/node_modules/@clack/core/README.md +22 -0
  383. package/lib/node_modules/@clack/core/dist/index.d.mts +363 -0
  384. package/lib/node_modules/@clack/core/dist/index.mjs +17 -0
  385. package/lib/node_modules/@clack/core/dist/index.mjs.map +1 -0
  386. package/lib/node_modules/@clack/core/package.json +63 -0
  387. package/lib/node_modules/@clack/prompts/CHANGELOG.md +591 -0
  388. package/lib/node_modules/@clack/prompts/LICENSE +9 -0
  389. package/lib/node_modules/@clack/prompts/README.md +375 -0
  390. package/lib/node_modules/@clack/prompts/dist/index.d.mts +396 -0
  391. package/lib/node_modules/@clack/prompts/dist/index.mjs +144 -0
  392. package/lib/node_modules/@clack/prompts/dist/index.mjs.map +1 -0
  393. package/lib/node_modules/@clack/prompts/package.json +68 -0
  394. package/lib/node_modules/commander/LICENSE +22 -0
  395. package/lib/node_modules/commander/Readme.md +1176 -0
  396. package/lib/node_modules/commander/esm.mjs +16 -0
  397. package/lib/node_modules/commander/index.js +24 -0
  398. package/lib/node_modules/commander/lib/argument.js +150 -0
  399. package/lib/node_modules/commander/lib/command.js +2777 -0
  400. package/lib/node_modules/commander/lib/error.js +39 -0
  401. package/lib/node_modules/commander/lib/help.js +747 -0
  402. package/lib/node_modules/commander/lib/option.js +380 -0
  403. package/lib/node_modules/commander/lib/suggestSimilar.js +101 -0
  404. package/lib/node_modules/commander/package-support.json +19 -0
  405. package/lib/node_modules/commander/package.json +82 -0
  406. package/lib/node_modules/commander/typings/esm.d.mts +3 -0
  407. package/lib/node_modules/commander/typings/index.d.ts +1113 -0
  408. package/lib/node_modules/fast-string-truncated-width/dist/index.d.ts +4 -0
  409. package/lib/node_modules/fast-string-truncated-width/dist/index.js +111 -0
  410. package/lib/node_modules/fast-string-truncated-width/dist/types.d.ts +19 -0
  411. package/lib/node_modules/fast-string-truncated-width/dist/types.js +2 -0
  412. package/lib/node_modules/fast-string-truncated-width/dist/utils.d.ts +4 -0
  413. package/lib/node_modules/fast-string-truncated-width/dist/utils.js +20 -0
  414. package/lib/node_modules/fast-string-truncated-width/license +21 -0
  415. package/lib/node_modules/fast-string-truncated-width/package.json +35 -0
  416. package/lib/node_modules/fast-string-truncated-width/readme.md +59 -0
  417. package/lib/node_modules/fast-string-width/dist/index.d.ts +4 -0
  418. package/lib/node_modules/fast-string-width/dist/index.js +14 -0
  419. package/lib/node_modules/fast-string-width/license +21 -0
  420. package/lib/node_modules/fast-string-width/package.json +34 -0
  421. package/lib/node_modules/fast-string-width/readme.md +42 -0
  422. package/lib/node_modules/fast-wrap-ansi/LICENSE +23 -0
  423. package/lib/node_modules/fast-wrap-ansi/README.md +26 -0
  424. package/lib/node_modules/fast-wrap-ansi/lib/main.d.ts +6 -0
  425. package/lib/node_modules/fast-wrap-ansi/lib/main.js +219 -0
  426. package/lib/node_modules/fast-wrap-ansi/lib/main.js.map +1 -0
  427. package/lib/node_modules/fast-wrap-ansi/package.json +51 -0
  428. package/lib/node_modules/jsonc-parser/CHANGELOG.md +76 -0
  429. package/lib/node_modules/jsonc-parser/LICENSE.md +21 -0
  430. package/lib/node_modules/jsonc-parser/README.md +364 -0
  431. package/lib/node_modules/jsonc-parser/SECURITY.md +41 -0
  432. package/lib/node_modules/jsonc-parser/lib/esm/impl/edit.js +185 -0
  433. package/lib/node_modules/jsonc-parser/lib/esm/impl/format.js +261 -0
  434. package/lib/node_modules/jsonc-parser/lib/esm/impl/parser.js +659 -0
  435. package/lib/node_modules/jsonc-parser/lib/esm/impl/scanner.js +443 -0
  436. package/lib/node_modules/jsonc-parser/lib/esm/impl/string-intern.js +29 -0
  437. package/lib/node_modules/jsonc-parser/lib/esm/main.d.ts +351 -0
  438. package/lib/node_modules/jsonc-parser/lib/esm/main.js +178 -0
  439. package/lib/node_modules/jsonc-parser/lib/umd/impl/edit.js +201 -0
  440. package/lib/node_modules/jsonc-parser/lib/umd/impl/format.js +275 -0
  441. package/lib/node_modules/jsonc-parser/lib/umd/impl/parser.js +682 -0
  442. package/lib/node_modules/jsonc-parser/lib/umd/impl/scanner.js +456 -0
  443. package/lib/node_modules/jsonc-parser/lib/umd/impl/string-intern.js +42 -0
  444. package/lib/node_modules/jsonc-parser/lib/umd/main.d.ts +351 -0
  445. package/lib/node_modules/jsonc-parser/lib/umd/main.js +194 -0
  446. package/lib/node_modules/jsonc-parser/package.json +37 -0
  447. package/lib/node_modules/picomatch/LICENSE +21 -0
  448. package/lib/node_modules/picomatch/README.md +738 -0
  449. package/lib/node_modules/picomatch/index.js +17 -0
  450. package/lib/node_modules/picomatch/lib/constants.js +180 -0
  451. package/lib/node_modules/picomatch/lib/parse.js +1085 -0
  452. package/lib/node_modules/picomatch/lib/picomatch.js +341 -0
  453. package/lib/node_modules/picomatch/lib/scan.js +391 -0
  454. package/lib/node_modules/picomatch/lib/utils.js +72 -0
  455. package/lib/node_modules/picomatch/package.json +83 -0
  456. package/lib/node_modules/picomatch/posix.js +3 -0
  457. package/lib/node_modules/sisteransi/license +21 -0
  458. package/lib/node_modules/sisteransi/package.json +34 -0
  459. package/lib/node_modules/sisteransi/readme.md +113 -0
  460. package/lib/node_modules/sisteransi/src/index.js +58 -0
  461. package/lib/node_modules/sisteransi/src/sisteransi.d.ts +35 -0
  462. package/lib/node_modules/tree-sitter-wasms/LICENSE +24 -0
  463. package/lib/node_modules/tree-sitter-wasms/README.md +23 -0
  464. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-bash.wasm +0 -0
  465. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c.wasm +0 -0
  466. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-c_sharp.wasm +0 -0
  467. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-cpp.wasm +0 -0
  468. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-css.wasm +0 -0
  469. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-dart.wasm +0 -0
  470. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elisp.wasm +0 -0
  471. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elixir.wasm +0 -0
  472. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-elm.wasm +0 -0
  473. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-embedded_template.wasm +0 -0
  474. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-go.wasm +0 -0
  475. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-html.wasm +0 -0
  476. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-java.wasm +0 -0
  477. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-javascript.wasm +0 -0
  478. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-json.wasm +0 -0
  479. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-kotlin.wasm +0 -0
  480. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-lua.wasm +0 -0
  481. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-objc.wasm +0 -0
  482. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ocaml.wasm +0 -0
  483. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-php.wasm +0 -0
  484. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-python.wasm +0 -0
  485. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ql.wasm +0 -0
  486. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rescript.wasm +0 -0
  487. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-ruby.wasm +0 -0
  488. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-rust.wasm +0 -0
  489. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-scala.wasm +0 -0
  490. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-solidity.wasm +0 -0
  491. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-swift.wasm +0 -0
  492. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-systemrdl.wasm +0 -0
  493. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tlaplus.wasm +0 -0
  494. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-toml.wasm +0 -0
  495. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-tsx.wasm +0 -0
  496. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-typescript.wasm +0 -0
  497. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-vue.wasm +0 -0
  498. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-yaml.wasm +0 -0
  499. package/lib/node_modules/tree-sitter-wasms/out/tree-sitter-zig.wasm +0 -0
  500. package/lib/node_modules/tree-sitter-wasms/package.json +64 -0
  501. package/lib/node_modules/web-tree-sitter/LICENSE +21 -0
  502. package/lib/node_modules/web-tree-sitter/README.md +269 -0
  503. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs +4558 -0
  504. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.cjs.map +7 -0
  505. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js +4516 -0
  506. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.js.map +7 -0
  507. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm +0 -0
  508. package/lib/node_modules/web-tree-sitter/debug/tree-sitter.wasm.map +31 -0
  509. package/lib/node_modules/web-tree-sitter/lib/alloc.c +48 -0
  510. package/lib/node_modules/web-tree-sitter/lib/alloc.h +41 -0
  511. package/lib/node_modules/web-tree-sitter/lib/array.h +291 -0
  512. package/lib/node_modules/web-tree-sitter/lib/atomic.h +68 -0
  513. package/lib/node_modules/web-tree-sitter/lib/clock.h +146 -0
  514. package/lib/node_modules/web-tree-sitter/lib/error_costs.h +11 -0
  515. package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.c +523 -0
  516. package/lib/node_modules/web-tree-sitter/lib/get_changed_ranges.h +36 -0
  517. package/lib/node_modules/web-tree-sitter/lib/host.h +21 -0
  518. package/lib/node_modules/web-tree-sitter/lib/language.c +293 -0
  519. package/lib/node_modules/web-tree-sitter/lib/language.h +293 -0
  520. package/lib/node_modules/web-tree-sitter/lib/length.h +52 -0
  521. package/lib/node_modules/web-tree-sitter/lib/lexer.c +483 -0
  522. package/lib/node_modules/web-tree-sitter/lib/lexer.h +54 -0
  523. package/lib/node_modules/web-tree-sitter/lib/lib.c +12 -0
  524. package/lib/node_modules/web-tree-sitter/lib/node.c +875 -0
  525. package/lib/node_modules/web-tree-sitter/lib/parser.c +2297 -0
  526. package/lib/node_modules/web-tree-sitter/lib/parser.h +286 -0
  527. package/lib/node_modules/web-tree-sitter/lib/point.h +48 -0
  528. package/lib/node_modules/web-tree-sitter/lib/query.c +4347 -0
  529. package/lib/node_modules/web-tree-sitter/lib/reduce_action.h +34 -0
  530. package/lib/node_modules/web-tree-sitter/lib/reusable_node.h +95 -0
  531. package/lib/node_modules/web-tree-sitter/lib/stack.c +912 -0
  532. package/lib/node_modules/web-tree-sitter/lib/stack.h +133 -0
  533. package/lib/node_modules/web-tree-sitter/lib/subtree.c +1034 -0
  534. package/lib/node_modules/web-tree-sitter/lib/subtree.h +399 -0
  535. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.c +987 -0
  536. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.cjs +2988 -0
  537. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm +0 -0
  538. package/lib/node_modules/web-tree-sitter/lib/tree-sitter.wasm.map +1 -0
  539. package/lib/node_modules/web-tree-sitter/lib/tree.c +170 -0
  540. package/lib/node_modules/web-tree-sitter/lib/tree.h +31 -0
  541. package/lib/node_modules/web-tree-sitter/lib/tree_cursor.c +716 -0
  542. package/lib/node_modules/web-tree-sitter/lib/tree_cursor.h +48 -0
  543. package/lib/node_modules/web-tree-sitter/lib/ts_assert.h +11 -0
  544. package/lib/node_modules/web-tree-sitter/lib/unicode.h +75 -0
  545. package/lib/node_modules/web-tree-sitter/lib/wasm_store.c +1937 -0
  546. package/lib/node_modules/web-tree-sitter/lib/wasm_store.h +31 -0
  547. package/lib/node_modules/web-tree-sitter/package.json +98 -0
  548. package/lib/node_modules/web-tree-sitter/src/bindings.ts +26 -0
  549. package/lib/node_modules/web-tree-sitter/src/constants.ts +133 -0
  550. package/lib/node_modules/web-tree-sitter/src/index.ts +31 -0
  551. package/lib/node_modules/web-tree-sitter/src/language.ts +291 -0
  552. package/lib/node_modules/web-tree-sitter/src/lookahead_iterator.ts +75 -0
  553. package/lib/node_modules/web-tree-sitter/src/marshal.ts +176 -0
  554. package/lib/node_modules/web-tree-sitter/src/node.ts +646 -0
  555. package/lib/node_modules/web-tree-sitter/src/parser.ts +325 -0
  556. package/lib/node_modules/web-tree-sitter/src/query.ts +973 -0
  557. package/lib/node_modules/web-tree-sitter/src/tree.ts +145 -0
  558. package/lib/node_modules/web-tree-sitter/src/tree_cursor.ts +318 -0
  559. package/lib/node_modules/web-tree-sitter/tree-sitter.cjs +4031 -0
  560. package/lib/node_modules/web-tree-sitter/tree-sitter.cjs.map +7 -0
  561. package/lib/node_modules/web-tree-sitter/tree-sitter.js +3980 -0
  562. package/lib/node_modules/web-tree-sitter/tree-sitter.js.map +7 -0
  563. package/lib/node_modules/web-tree-sitter/tree-sitter.wasm +0 -0
  564. package/lib/node_modules/web-tree-sitter/tree-sitter.wasm.map +30 -0
  565. package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts +1030 -0
  566. package/lib/node_modules/web-tree-sitter/web-tree-sitter.d.ts.map +56 -0
  567. package/lib/package.json +55 -0
  568. package/node +0 -0
  569. package/package.json +17 -0
@@ -0,0 +1,31 @@
1
+ #ifndef TREE_SITTER_WASM_H_
2
+ #define TREE_SITTER_WASM_H_
3
+
4
+ #ifdef __cplusplus
5
+ extern "C" {
6
+ #endif
7
+
8
+ #include "tree_sitter/api.h"
9
+ #include "./parser.h"
10
+
11
+ bool ts_wasm_store_start(TSWasmStore *self, TSLexer *lexer, const TSLanguage *language);
12
+ void ts_wasm_store_reset(TSWasmStore *self);
13
+ bool ts_wasm_store_has_error(const TSWasmStore *self);
14
+
15
+ bool ts_wasm_store_call_lex_main(TSWasmStore *self, TSStateId state);
16
+ bool ts_wasm_store_call_lex_keyword(TSWasmStore *self, TSStateId state);
17
+
18
+ uint32_t ts_wasm_store_call_scanner_create(TSWasmStore *self);
19
+ void ts_wasm_store_call_scanner_destroy(TSWasmStore *self, uint32_t scanner_address);
20
+ bool ts_wasm_store_call_scanner_scan(TSWasmStore *self, uint32_t scanner_address, uint32_t valid_tokens_ix);
21
+ uint32_t ts_wasm_store_call_scanner_serialize(TSWasmStore *self, uint32_t scanner_address, char *buffer);
22
+ void ts_wasm_store_call_scanner_deserialize(TSWasmStore *self, uint32_t scanner, const char *buffer, unsigned length);
23
+
24
+ void ts_wasm_language_retain(const TSLanguage *self);
25
+ void ts_wasm_language_release(const TSLanguage *self);
26
+
27
+ #ifdef __cplusplus
28
+ }
29
+ #endif
30
+
31
+ #endif // TREE_SITTER_WASM_H_
@@ -0,0 +1,98 @@
1
+ {
2
+ "name": "web-tree-sitter",
3
+ "version": "0.25.10",
4
+ "description": "Tree-sitter bindings for the web",
5
+ "repository": {
6
+ "type": "git",
7
+ "url": "git+https://github.com/tree-sitter/tree-sitter.git",
8
+ "directory": "lib/binding_web"
9
+ },
10
+ "license": "MIT",
11
+ "author": {
12
+ "name": "Max Brunsfeld",
13
+ "email": "maxbrunsfeld@gmail.com"
14
+ },
15
+ "maintainers": [
16
+ {
17
+ "name": "Amaan Qureshi",
18
+ "email": "amaanq12@gmail.com"
19
+ }
20
+ ],
21
+ "type": "module",
22
+ "exports": {
23
+ ".": {
24
+ "import": "./tree-sitter.js",
25
+ "require": "./tree-sitter.cjs",
26
+ "types": "./web-tree-sitter.d.ts"
27
+ },
28
+ "./tree-sitter.wasm": "./tree-sitter.wasm",
29
+ "./debug": {
30
+ "import": "./debug/tree-sitter.js",
31
+ "require": "./debug/tree-sitter.cjs",
32
+ "types": "./web-tree-sitter.d.ts"
33
+ },
34
+ "./debug/tree-sitter.wasm": "./debug/tree-sitter.wasm"
35
+ },
36
+ "types": "web-tree-sitter.d.ts",
37
+ "keywords": [
38
+ "incremental",
39
+ "parsing",
40
+ "tree-sitter",
41
+ "wasm"
42
+ ],
43
+ "files": [
44
+ "README.md",
45
+ "tree-sitter.cjs",
46
+ "tree-sitter.cjs.map",
47
+ "tree-sitter.js",
48
+ "tree-sitter.js.map",
49
+ "tree-sitter.wasm",
50
+ "tree-sitter.wasm.map",
51
+ "debug/tree-sitter.cjs",
52
+ "debug/tree-sitter.cjs.map",
53
+ "debug/tree-sitter.js",
54
+ "debug/tree-sitter.js.map",
55
+ "debug/tree-sitter.wasm",
56
+ "debug/tree-sitter.wasm.map",
57
+ "web-tree-sitter.d.ts",
58
+ "web-tree-sitter.d.ts.map",
59
+ "src/**/*.ts",
60
+ "lib/*.c",
61
+ "lib/*.h"
62
+ ],
63
+ "devDependencies": {
64
+ "@eslint/js": "^9.20.0",
65
+ "@types/node": "^22.13.1",
66
+ "@vitest/coverage-v8": "^3.0.5",
67
+ "dts-buddy": "^0.5.4",
68
+ "esbuild": "^0.24.2",
69
+ "eslint": "^9.19.0",
70
+ "source-map": "^0.7.4",
71
+ "tsx": "^4.19.2",
72
+ "typescript": "^5.7.3",
73
+ "typescript-eslint": "^8.22.0",
74
+ "vitest": "^3.0.4"
75
+ },
76
+ "peerDependencies": {
77
+ "@types/emscripten": "^1.40.0"
78
+ },
79
+ "peerDependenciesMeta": {
80
+ "@types/emscripten": {
81
+ "optional": true
82
+ }
83
+ },
84
+ "scripts": {
85
+ "build:ts": "tsc -b . && node script/build.js",
86
+ "build:wasm": "cd ../../ && cargo xtask build-wasm",
87
+ "build:wasm:debug": "cd ../../ && cargo xtask build-wasm --debug",
88
+ "build": "npm run build:wasm && npm run build:ts",
89
+ "build:debug": "npm run build:wasm:debug && npm run build:ts -- --debug",
90
+ "build:dts": "node script/generate-dts.js",
91
+ "lint": "eslint src/*.ts script/*.ts test/*.ts",
92
+ "lint:fix": "eslint src/*.ts script/*.ts test/*.ts --fix",
93
+ "test": "vitest run",
94
+ "test:watch": "vitest",
95
+ "prepack": "cp ../../LICENSE .",
96
+ "prepublishOnly": "tsx script/check-artifacts-fresh.ts"
97
+ }
98
+ }
@@ -0,0 +1,26 @@
1
+ import createModule, { type MainModule } from '../lib/tree-sitter';
2
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
3
+ import { type Parser } from './parser';
4
+
5
+ export let Module: MainModule | null = null;
6
+
7
+ /**
8
+ * @internal
9
+ *
10
+ * Initialize the Tree-sitter WASM module. This should only be called by the {@link Parser} class via {@link Parser.init}.
11
+ */
12
+ export async function initializeBinding(moduleOptions?: EmscriptenModule): Promise<MainModule> {
13
+ if (!Module) {
14
+ Module = await createModule(moduleOptions);
15
+ }
16
+ return Module;
17
+ }
18
+
19
+ /**
20
+ * @internal
21
+ *
22
+ * Checks if the Tree-sitter WASM module has been initialized.
23
+ */
24
+ export function checkModule(): boolean {
25
+ return !!Module;
26
+ }
@@ -0,0 +1,133 @@
1
+ import { type MainModule } from '../lib/tree-sitter';
2
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
3
+ import { ParseState, type Parser } from './parser';
4
+
5
+ /**
6
+ * A position in a multi-line text document, in terms of rows and columns.
7
+ *
8
+ * Rows and columns are zero-based.
9
+ */
10
+ export interface Point {
11
+ /** The zero-based row number. */
12
+ row: number;
13
+
14
+ /** The zero-based column number. */
15
+ column: number;
16
+ }
17
+
18
+ /**
19
+ * A range of positions in a multi-line text document, both in terms of bytes
20
+ * and of rows and columns.
21
+ */
22
+ export interface Range {
23
+ /** The start position of the range. */
24
+ startPosition: Point;
25
+
26
+ /** The end position of the range. */
27
+ endPosition: Point;
28
+
29
+ /** The start index of the range. */
30
+ startIndex: number;
31
+
32
+ /** The end index of the range. */
33
+ endIndex: number;
34
+ }
35
+
36
+ /**
37
+ * A summary of a change to a text document.
38
+ */
39
+ export interface Edit {
40
+ /** The start position of the change. */
41
+ startPosition: Point;
42
+
43
+ /** The end position of the change before the edit. */
44
+ oldEndPosition: Point;
45
+
46
+ /** The end position of the change after the edit. */
47
+ newEndPosition: Point;
48
+
49
+ /** The start index of the change. */
50
+ startIndex: number;
51
+
52
+ /** The end index of the change before the edit. */
53
+ oldEndIndex: number;
54
+
55
+ /** The end index of the change after the edit. */
56
+ newEndIndex: number;
57
+ }
58
+
59
+ /** @internal */
60
+ export const SIZE_OF_SHORT = 2;
61
+
62
+ /** @internal */
63
+ export const SIZE_OF_INT = 4;
64
+
65
+ /** @internal */
66
+ export const SIZE_OF_CURSOR = 4 * SIZE_OF_INT;
67
+
68
+ /** @internal */
69
+ export const SIZE_OF_NODE = 5 * SIZE_OF_INT;
70
+
71
+ /** @internal */
72
+ export const SIZE_OF_POINT = 2 * SIZE_OF_INT;
73
+
74
+ /** @internal */
75
+ export const SIZE_OF_RANGE = 2 * SIZE_OF_INT + 2 * SIZE_OF_POINT;
76
+
77
+ /** @internal */
78
+ export const ZERO_POINT: Point = { row: 0, column: 0 };
79
+
80
+ /**
81
+ * A callback for parsing that takes an index and point, and should return a string.
82
+ */
83
+ export type ParseCallback = (index: number, position: Point) => string | undefined;
84
+
85
+ /**
86
+ * A callback that receives the parse state during parsing.
87
+ */
88
+ export type ProgressCallback = (progress: ParseState) => boolean;
89
+
90
+ /**
91
+ * A callback for logging messages.
92
+ *
93
+ * If `isLex` is `true`, the message is from the lexer, otherwise it's from the parser.
94
+ */
95
+ export type LogCallback = (message: string, isLex: boolean) => void;
96
+
97
+ // Helper type for internal use
98
+ /** @internal */
99
+ export const INTERNAL = Symbol('INTERNAL');
100
+ /** @internal */
101
+ export type Internal = typeof INTERNAL;
102
+
103
+ // Helper functions for type checking
104
+ /** @internal */
105
+ export function assertInternal(x: unknown): asserts x is Internal {
106
+ if (x !== INTERNAL) throw new Error('Illegal constructor');
107
+ }
108
+
109
+ /** @internal */
110
+ export function isPoint(point?: Point): point is Point {
111
+ return (
112
+ !!point &&
113
+ typeof (point).row === 'number' &&
114
+ typeof (point).column === 'number'
115
+ );
116
+ }
117
+
118
+ /**
119
+ * @internal
120
+ *
121
+ * Sets the Tree-sitter WASM module. This should only be called by the {@link Parser} class via {@link Parser.init}.
122
+ */
123
+ export function setModule(module: MainModule) {
124
+ C = module;
125
+ }
126
+
127
+ /**
128
+ * @internal
129
+ *
130
+ * `C` is a convenient shorthand for the Tree-sitter WASM module,
131
+ * which allows us to call all of the exported functions.
132
+ */
133
+ export let C: MainModule;
@@ -0,0 +1,31 @@
1
+ export type {
2
+ Point,
3
+ Range,
4
+ Edit,
5
+ ParseCallback,
6
+ ProgressCallback,
7
+ LogCallback,
8
+ } from './constants';
9
+ export {
10
+ type ParseOptions,
11
+ type ParseState,
12
+ LANGUAGE_VERSION,
13
+ MIN_COMPATIBLE_VERSION,
14
+ Parser,
15
+ } from './parser';
16
+ export { Language } from './language';
17
+ export { Tree } from './tree';
18
+ export { Node } from './node';
19
+ export { TreeCursor } from './tree_cursor';
20
+ export {
21
+ type QueryOptions,
22
+ type QueryState,
23
+ type QueryProperties,
24
+ type QueryPredicate,
25
+ type QueryCapture,
26
+ type QueryMatch,
27
+ CaptureQuantifier,
28
+ type PredicateStep,
29
+ Query,
30
+ } from './query';
31
+ export { LookaheadIterator } from './lookahead_iterator';
@@ -0,0 +1,291 @@
1
+ import { C, INTERNAL, Internal, assertInternal, SIZE_OF_INT, SIZE_OF_SHORT } from './constants';
2
+ import { LookaheadIterator } from './lookahead_iterator';
3
+ import { unmarshalLanguageMetadata } from './marshal';
4
+ import { TRANSFER_BUFFER } from './parser';
5
+ import { Query } from './query';
6
+
7
+ const LANGUAGE_FUNCTION_REGEX = /^tree_sitter_\w+$/;
8
+
9
+ export interface LanguageMetadata {
10
+ readonly major_version: number;
11
+ readonly minor_version: number;
12
+ readonly patch_version: number;
13
+ }
14
+
15
+ /**
16
+ * An opaque object that defines how to parse a particular language.
17
+ * The code for each `Language` is generated by the Tree-sitter CLI.
18
+ */
19
+ export class Language {
20
+ /** @internal */
21
+ private [0] = 0; // Internal handle for WASM
22
+
23
+ /**
24
+ * A list of all node types in the language. The index of each type in this
25
+ * array is its node type id.
26
+ */
27
+ types: string[];
28
+
29
+ /**
30
+ * A list of all field names in the language. The index of each field name in
31
+ * this array is its field id.
32
+ */
33
+ fields: (string | null)[];
34
+
35
+ /** @internal */
36
+ constructor(internal: Internal, address: number) {
37
+ assertInternal(internal);
38
+ this[0] = address;
39
+ this.types = new Array<string>(C._ts_language_symbol_count(this[0]));
40
+ for (let i = 0, n = this.types.length; i < n; i++) {
41
+ if (C._ts_language_symbol_type(this[0], i) < 2) {
42
+ this.types[i] = C.UTF8ToString(C._ts_language_symbol_name(this[0], i));
43
+ }
44
+ }
45
+ this.fields = new Array<string>(C._ts_language_field_count(this[0]) + 1);
46
+ for (let i = 0, n = this.fields.length; i < n; i++) {
47
+ const fieldName = C._ts_language_field_name_for_id(this[0], i);
48
+ if (fieldName !== 0) {
49
+ this.fields[i] = C.UTF8ToString(fieldName);
50
+ } else {
51
+ this.fields[i] = null;
52
+ }
53
+ }
54
+ }
55
+
56
+
57
+ /**
58
+ * Gets the name of the language.
59
+ */
60
+ get name(): string | null {
61
+ const ptr = C._ts_language_name(this[0]);
62
+ if (ptr === 0) return null;
63
+ return C.UTF8ToString(ptr);
64
+ }
65
+
66
+ /**
67
+ * @deprecated since version 0.25.0, use {@link Language#abiVersion} instead
68
+ * Gets the version of the language.
69
+ */
70
+ get version(): number {
71
+ return C._ts_language_version(this[0]);
72
+ }
73
+
74
+ /**
75
+ * Gets the ABI version of the language.
76
+ */
77
+ get abiVersion(): number {
78
+ return C._ts_language_abi_version(this[0]);
79
+ }
80
+
81
+ /**
82
+ * Get the metadata for this language. This information is generated by the
83
+ * CLI, and relies on the language author providing the correct metadata in
84
+ * the language's `tree-sitter.json` file.
85
+ */
86
+ get metadata(): LanguageMetadata | null {
87
+ C._ts_language_metadata(this[0]);
88
+ const length = C.getValue(TRANSFER_BUFFER, 'i32');
89
+ const address = C.getValue(TRANSFER_BUFFER + SIZE_OF_INT, 'i32');
90
+ if (length === 0) return null;
91
+ return unmarshalLanguageMetadata(address);
92
+ }
93
+
94
+ /**
95
+ * Gets the number of fields in the language.
96
+ */
97
+ get fieldCount(): number {
98
+ return this.fields.length - 1;
99
+ }
100
+
101
+ /**
102
+ * Gets the number of states in the language.
103
+ */
104
+ get stateCount(): number {
105
+ return C._ts_language_state_count(this[0]);
106
+ }
107
+
108
+ /**
109
+ * Get the field id for a field name.
110
+ */
111
+ fieldIdForName(fieldName: string): number | null {
112
+ const result = this.fields.indexOf(fieldName);
113
+ return result !== -1 ? result : null;
114
+ }
115
+
116
+ /**
117
+ * Get the field name for a field id.
118
+ */
119
+ fieldNameForId(fieldId: number): string | null {
120
+ return this.fields[fieldId] ?? null;
121
+ }
122
+
123
+ /**
124
+ * Get the node type id for a node type name.
125
+ */
126
+ idForNodeType(type: string, named: boolean): number | null {
127
+ const typeLength = C.lengthBytesUTF8(type);
128
+ const typeAddress = C._malloc(typeLength + 1);
129
+ C.stringToUTF8(type, typeAddress, typeLength + 1);
130
+ const result = C._ts_language_symbol_for_name(this[0], typeAddress, typeLength, named ? 1 : 0);
131
+ C._free(typeAddress);
132
+ return result || null;
133
+ }
134
+
135
+ /**
136
+ * Gets the number of node types in the language.
137
+ */
138
+ get nodeTypeCount(): number {
139
+ return C._ts_language_symbol_count(this[0]);
140
+ }
141
+
142
+ /**
143
+ * Get the node type name for a node type id.
144
+ */
145
+ nodeTypeForId(typeId: number): string | null {
146
+ const name = C._ts_language_symbol_name(this[0], typeId);
147
+ return name ? C.UTF8ToString(name) : null;
148
+ }
149
+
150
+ /**
151
+ * Check if a node type is named.
152
+ *
153
+ * @see {@link https://tree-sitter.github.io/tree-sitter/using-parsers/2-basic-parsing.html#named-vs-anonymous-nodes}
154
+ */
155
+ nodeTypeIsNamed(typeId: number): boolean {
156
+ return C._ts_language_type_is_named_wasm(this[0], typeId) ? true : false;
157
+ }
158
+
159
+ /**
160
+ * Check if a node type is visible.
161
+ */
162
+ nodeTypeIsVisible(typeId: number): boolean {
163
+ return C._ts_language_type_is_visible_wasm(this[0], typeId) ? true : false;
164
+ }
165
+
166
+ /**
167
+ * Get the supertypes ids of this language.
168
+ *
169
+ * @see {@link https://tree-sitter.github.io/tree-sitter/using-parsers/6-static-node-types.html?highlight=supertype#supertype-nodes}
170
+ */
171
+ get supertypes(): number[] {
172
+ C._ts_language_supertypes_wasm(this[0]);
173
+ const count = C.getValue(TRANSFER_BUFFER, 'i32');
174
+ const buffer = C.getValue(TRANSFER_BUFFER + SIZE_OF_INT, 'i32');
175
+ const result = new Array<number>(count);
176
+
177
+ if (count > 0) {
178
+ let address = buffer;
179
+ for (let i = 0; i < count; i++) {
180
+ result[i] = C.getValue(address, 'i16');
181
+ address += SIZE_OF_SHORT;
182
+ }
183
+ }
184
+
185
+ return result;
186
+ }
187
+
188
+ /**
189
+ * Get the subtype ids for a given supertype node id.
190
+ */
191
+ subtypes(supertype: number): number[] {
192
+ C._ts_language_subtypes_wasm(this[0], supertype);
193
+ const count = C.getValue(TRANSFER_BUFFER, 'i32');
194
+ const buffer = C.getValue(TRANSFER_BUFFER + SIZE_OF_INT, 'i32');
195
+ const result = new Array<number>(count);
196
+
197
+ if (count > 0) {
198
+ let address = buffer;
199
+ for (let i = 0; i < count; i++) {
200
+ result[i] = C.getValue(address, 'i16');
201
+ address += SIZE_OF_SHORT;
202
+ }
203
+ }
204
+
205
+ return result;
206
+ }
207
+
208
+ /**
209
+ * Get the next state id for a given state id and node type id.
210
+ */
211
+ nextState(stateId: number, typeId: number): number {
212
+ return C._ts_language_next_state(this[0], stateId, typeId);
213
+ }
214
+
215
+ /**
216
+ * Create a new lookahead iterator for this language and parse state.
217
+ *
218
+ * This returns `null` if state is invalid for this language.
219
+ *
220
+ * Iterating {@link LookaheadIterator} will yield valid symbols in the given
221
+ * parse state. Newly created lookahead iterators will return the `ERROR`
222
+ * symbol from {@link LookaheadIterator#currentType}.
223
+ *
224
+ * Lookahead iterators can be useful for generating suggestions and improving
225
+ * syntax error diagnostics. To get symbols valid in an `ERROR` node, use the
226
+ * lookahead iterator on its first leaf node state. For `MISSING` nodes, a
227
+ * lookahead iterator created on the previous non-extra leaf node may be
228
+ * appropriate.
229
+ */
230
+ lookaheadIterator(stateId: number): LookaheadIterator | null {
231
+ const address = C._ts_lookahead_iterator_new(this[0], stateId);
232
+ if (address) return new LookaheadIterator(INTERNAL, address, this);
233
+ return null;
234
+ }
235
+
236
+ /**
237
+ * @deprecated since version 0.25.0, call `new` on a {@link Query} instead
238
+ *
239
+ * Create a new query from a string containing one or more S-expression
240
+ * patterns.
241
+ *
242
+ * The query is associated with a particular language, and can only be run
243
+ * on syntax nodes parsed with that language. References to Queries can be
244
+ * shared between multiple threads.
245
+ *
246
+ * @link {@see https://tree-sitter.github.io/tree-sitter/using-parsers/queries}
247
+ */
248
+ query(source: string): Query {
249
+ console.warn('Language.query is deprecated. Use new Query(language, source) instead.');
250
+ return new Query(this, source);
251
+ }
252
+
253
+ /**
254
+ * Load a language from a WebAssembly module.
255
+ * The module can be provided as a path to a file or as a buffer.
256
+ */
257
+ static async load(input: string | Uint8Array): Promise<Language> {
258
+ let bytes: Promise<Uint8Array>;
259
+ if (input instanceof Uint8Array) {
260
+ bytes = Promise.resolve(input);
261
+ } else {
262
+ // eslint-disable-next-line @typescript-eslint/no-unnecessary-condition
263
+ if (globalThis.process?.versions.node) {
264
+ const fs: typeof import('fs/promises') = await import('fs/promises');
265
+ bytes = fs.readFile(input);
266
+ } else {
267
+ bytes = fetch(input)
268
+ .then((response) => response.arrayBuffer()
269
+ .then((buffer) => {
270
+ if (response.ok) {
271
+ return new Uint8Array(buffer);
272
+ } else {
273
+ const body = new TextDecoder('utf-8').decode(buffer);
274
+ throw new Error(`Language.load failed with status ${response.status}.\n\n${body}`);
275
+ }
276
+ }));
277
+ }
278
+ }
279
+
280
+ const mod = await C.loadWebAssemblyModule(await bytes, { loadAsync: true });
281
+ const symbolNames = Object.keys(mod);
282
+ const functionName = symbolNames.find((key) => LANGUAGE_FUNCTION_REGEX.test(key) &&
283
+ !key.includes('external_scanner_'));
284
+ if (!functionName) {
285
+ console.log(`Couldn't find language function in WASM file. Symbols:\n${JSON.stringify(symbolNames, null, 2)}`);
286
+ throw new Error('Language.load failed: no language function found in WASM file');
287
+ }
288
+ const languageAddress = mod[functionName]();
289
+ return new Language(INTERNAL, languageAddress);
290
+ }
291
+ }
@@ -0,0 +1,75 @@
1
+ import { C, Internal, assertInternal } from './constants';
2
+ import { Language } from './language';
3
+
4
+ export class LookaheadIterator implements Iterable<string> {
5
+ /** @internal */
6
+ private [0] = 0; // Internal handle for WASM
7
+
8
+ /** @internal */
9
+ private language: Language;
10
+
11
+ /** @internal */
12
+ constructor(internal: Internal, address: number, language: Language) {
13
+ assertInternal(internal);
14
+ this[0] = address;
15
+ this.language = language;
16
+ }
17
+
18
+ /** Get the current symbol of the lookahead iterator. */
19
+ get currentTypeId(): number {
20
+ return C._ts_lookahead_iterator_current_symbol(this[0]);
21
+ }
22
+
23
+ /** Get the current symbol name of the lookahead iterator. */
24
+ get currentType(): string {
25
+ return this.language.types[this.currentTypeId] || 'ERROR';
26
+ }
27
+
28
+ /** Delete the lookahead iterator, freeing its resources. */
29
+ delete(): void {
30
+ C._ts_lookahead_iterator_delete(this[0]);
31
+ this[0] = 0;
32
+ }
33
+
34
+
35
+ /**
36
+ * Reset the lookahead iterator.
37
+ *
38
+ * This returns `true` if the language was set successfully and `false`
39
+ * otherwise.
40
+ */
41
+ reset(language: Language, stateId: number): boolean {
42
+ if (C._ts_lookahead_iterator_reset(this[0], language[0], stateId)) {
43
+ this.language = language;
44
+ return true;
45
+ }
46
+ return false;
47
+ }
48
+
49
+ /**
50
+ * Reset the lookahead iterator to another state.
51
+ *
52
+ * This returns `true` if the iterator was reset to the given state and
53
+ * `false` otherwise.
54
+ */
55
+ resetState(stateId: number): boolean {
56
+ return Boolean(C._ts_lookahead_iterator_reset_state(this[0], stateId));
57
+ }
58
+
59
+ /**
60
+ * Returns an iterator that iterates over the symbols of the lookahead iterator.
61
+ *
62
+ * The iterator will yield the current symbol name as a string for each step
63
+ * until there are no more symbols to iterate over.
64
+ */
65
+ [Symbol.iterator](): Iterator<string> {
66
+ return {
67
+ next: (): IteratorResult<string> => {
68
+ if (C._ts_lookahead_iterator_next(this[0])) {
69
+ return { done: false, value: this.currentType };
70
+ }
71
+ return { done: true, value: '' };
72
+ }
73
+ };
74
+ }
75
+ }