{"_id":"@ast-grep/wasm","_rev":"15-c0a38302fe4664619c88a345cc230782","name":"@ast-grep/wasm","dist-tags":{"latest":"0.45.3"},"versions":{"0.0.1":{"name":"@ast-grep/wasm","version":"0.0.1","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.0.1","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"af7af924cc66db0222f22fc3320454cc4a296180","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.0.1.tgz","fileCount":5,"integrity":"sha512-WB21HXBkt9hVMf0McrQdqcu1ZRGUbEa5iNiIHPyq95pti38h7b++30ELJLV5A+n3Uq/+nqoayR6iVOsfdSprKQ==","signatures":[{"sig":"MEUCIQDEBzEFqOjCtjRkQye3VR+RjTxqGUSmy8UZ0dRS/FHmywIgEjelsgpgKPXUhD52EVCw816jH+7NB/UoRmi6R1y933A=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1902121},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"fd49dcdbfd72b8af773d5279fdbf37a2425632ad","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"10.9.4","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./snippets/*"],"_nodeVersion":"22.21.1","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/wasm_0.0.1_1771715693678_0.20973139437396981","host":"s3://npm-registry-packages-npm-production"}},"0.0.2":{"name":"@ast-grep/wasm","version":"0.0.2","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.0.2","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"1441dc2bd571d273d5caf11aa29e79e99a2015d2","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.0.2.tgz","fileCount":6,"integrity":"sha512-Aozw+IWCvP002Exy80C3uZdg3KY4Y473kBhohV3rMt59NN94BDsh8NtBjSB5RuWxR3iuSU8n07EgK+HB5JQBuA==","signatures":[{"sig":"MEQCIAHQ4HnQLFJgEhmY6HB4HtEGa8XMSnegU8rVBGjm2/vbAiB9QMvkRkZJIt/6wOg5nmezFtOh5Ib/5QfMcV7J75IjsA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1891750},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"fd49dcdbfd72b8af773d5279fdbf37a2425632ad","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"10.9.4","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"22.21.1","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.0.2_1771716262915_0.041367825706177364","host":"s3://npm-registry-packages-npm-production"}},"0.40.5":{"name":"@ast-grep/wasm","version":"0.40.5","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.40.5","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"23f75f6837649a72876fb6a19dcb3d8add8fd596","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.40.5.tgz","fileCount":6,"integrity":"sha512-xodpvGpqBa93qbfLgyWZW1rSFkOATRVjV5TIo1X8H2re5+KDy1Y+helCYa6tN5VLL+p6UjIE5R2ZdPuJYLWa7g==","signatures":[{"sig":"MEYCIQCCL2pCJ3gow1SEQfuU17ZQGxEejS3ZClsabxwio6u/ZwIhAMXQ+lXxK9s3FT6G4IIUSy/TZpbFNgp5mo8i1V6JRWxL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1897366},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"b5c1a838192b9bfd012d8e174221c9215cf73495","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"10.9.4","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"22.21.1","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.25.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.40.5_1771773660903_0.5523794862916143","host":"s3://npm-registry-packages-npm-production"}},"0.41.1":{"name":"@ast-grep/wasm","version":"0.41.1","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.41.1","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"2eab74082d941dedaf00fcaf1dcd1e1a187f7959","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.41.1.tgz","fileCount":6,"integrity":"sha512-yLaUPR8QWzBIN/cmvxjNWtL8vuphDn4ZzEKsachYUXWpz9TsFiwJtozqE5kId2Z3FlNSRxTbzOaYB4e7I0SDZQ==","signatures":[{"sig":"MEYCIQDeoAJj2Sc3QLERfvFOb7UyhjP8GGtwOzU5mhYrgRLWjgIhALEmvWL9AstNMfXe8QzeJdCaydNz/BNn5jtWZf8jhuXy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1783561},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"3830aa64058c1c3a721a0b43728ac1071def77f5","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.9.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.14.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.41.1_1773151722003_0.04710536784197106","host":"s3://npm-registry-packages-npm-production"}},"0.42.0":{"name":"@ast-grep/wasm","version":"0.42.0","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.42.0","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"93c425ea481bc78cbc629e375d20b0dc7d6fa164","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.42.0.tgz","fileCount":6,"integrity":"sha512-z6rD1LCTLVnwotc5AWjNUhS5ATwTeRe+oVJjOuo2xFP4opAv1XI3c/FYt9t6KtsX8YZ0ji3AJzWNe4W0HitlsA==","signatures":[{"sig":"MEYCIQDLPOfWhEsMMhKTXpSpJM6tdrmWfWWOBSiZn9dNcSk8iwIhAOFjO+Miax6qSWnS4HCBzjKCNFsEiX+7TjixKNcOARVZ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1840629},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"d5fafaf1364782469301d2f0f4b44c2df6f75fd4","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.9.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.14.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.42.0_1773631867836_0.4332050075902638","host":"s3://npm-registry-packages-npm-production"}},"0.42.1":{"name":"@ast-grep/wasm","version":"0.42.1","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.42.1","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"d363ef5aa9a423c86be969d9e298d206caa0263c","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.42.1.tgz","fileCount":6,"integrity":"sha512-nCcY680f8D9SY8V+QJ3fkqfyEYTUMVNzoX94VzRrNvXIWlhhnCzH6Fz0zFTtg2xFq0BCGX+DTciB4PnwKcZPFQ==","signatures":[{"sig":"MEQCICvI6qlHsKZTM8/JvpEFRkLqDjl34rd2Acu323BMwIvqAiAB0kYmqgomblDe/4ft1JPSWa0L4GpCfgld9WJsWHpp6Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1840505},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"917dff28ebf848b60b9fdff3f52e9937131f588a","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.11.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.14.1","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.42.1_1775318806735_0.4266301079499202","host":"s3://npm-registry-packages-npm-production"}},"0.42.2":{"name":"@ast-grep/wasm","version":"0.42.2","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.42.2","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"4c306efecc697cc25af14a4b95056563c4c214b6","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.42.2.tgz","fileCount":6,"integrity":"sha512-pldlQLgZ4uUEkt2JvcM2cumwra0NOt9xrPOfEjx6UO6RyI5brNxsmm8vWuamyD+d7YAU3IX9FmffwyCkjO5GEw==","signatures":[{"sig":"MEYCIQCjwOYfW5cGOSsSH0bUz29b6SG41TY3sKXILUVJuXfXewIhAJijCIIyD+DLtLXqLBxqQXeFunQH+jGJoD8tHdsxoVSJ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1802394},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"25e6a90e1403af9e1d90574d1c704300fede18b5","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.12.1","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.15.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.42.2_1778450580575_0.6025355310339171","host":"s3://npm-registry-packages-npm-production"}},"0.42.3":{"name":"@ast-grep/wasm","version":"0.42.3","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.42.3","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"356e84b762884bc486f6c5495f26d9aabb478eaf","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.42.3.tgz","fileCount":6,"integrity":"sha512-tVu9rQVVimbTMnm5nJpdQjn9nOhZoeNkwDnMg6vXsc3Sfs+IeroiGOBsOfYiU60eKMj0jmYdLJOc/gQ3U1lSBA==","signatures":[{"sig":"MEUCIDw7Qigt/jl/Sz6rTEyc+zwHjRi2sUvwEIl3IQJWhOiDAiEAh8hG0/jDZ+KDPd+sul1PIRGb6dDYzo8iYB40XpPCxb8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1802478},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"263ca17c30521484b5bc1cb1bc56d40a1ab09779","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.12.1","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.15.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.42.3_1779204216677_0.18440959864123885","host":"s3://npm-registry-packages-npm-production"}},"0.43.0":{"name":"@ast-grep/wasm","version":"0.43.0","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.43.0","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"9eb016c96450a025df4f33bcaf11c060f82a46c1","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.43.0.tgz","fileCount":6,"integrity":"sha512-T4eOcgCFkNs0EcxeBwzBkM1CTyU5AJFE/sSykVAz9aU4FI0E5C8zT5Xw4HMc1iCj8wkSdaeV469YGCLinDBm7Q==","signatures":[{"sig":"MEYCIQDpLWuIg6cBsGs77dSQBz8axUkd6pmV9QAFE8Puf9MCvAIhAJbMaU9sNppEET3nXrhubpWrIJPp1oaopsVg7S3QYFnc","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1802998},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"5fe88553a5dae0798cc92ca201d841a0fd51012f","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.13.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.16.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.43.0_1779740360228_0.3309658228490966","host":"s3://npm-registry-packages-npm-production"}},"0.44.0":{"name":"@ast-grep/wasm","version":"0.44.0","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.44.0","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"e4bc7e3d1a294d327b103b9d4459a59099551db8","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.44.0.tgz","fileCount":6,"integrity":"sha512-FpzWxWvUG5HBQJIvuiIK71xDNo6f1lGvLlf7CmLVYiOHTMtRJEFqN8OdT111Ubwv7UBvGf0rh2AIupCz6WkcTw==","signatures":[{"sig":"MEUCIQCVaPJc9c/0wFdfLNuHGiJGSItGC0roW0yhu1LuJzhLVQIgFj5mYD4/9711jifVpIkpDuAXUI2ECd6eVYeNca478Lo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1776326},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"e34ce6685aee146a794c5a345f1e696960baea0c","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.13.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.17.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.44.0_1782093292017_0.47526036062565535","host":"s3://npm-registry-packages-npm-production"}},"0.44.1":{"name":"@ast-grep/wasm","version":"0.44.1","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.44.1","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"1ad2cb75000edb3d1622e6945a3c2c79c0feca49","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.44.1.tgz","fileCount":6,"integrity":"sha512-N5jN1I6HxujbkR7qEiX4QSo1wp/G8JbQUK1NCyqk5q8jRvnj5oiGJrDHrMc6qI0a0/uBMe6eE5ckfsT1GyIWBg==","signatures":[{"sig":"MEUCID2lllHtzopGf2twCe+nKTTtG4vgHi4AnzuQvzEexZyuAiEAig3UYN+u0J9szbkG7ccMihaSLHYjz5TGxOjwJO9mOlg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1775854},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"26f784516b4a9a07f6969b1d5c3020ce42dbf7ed","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.16.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.18.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.44.1_1783174150170_0.23644263334844173","host":"s3://npm-registry-packages-npm-production"}},"0.45.0":{"name":"@ast-grep/wasm","version":"0.45.0","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.45.0","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"e3af43f11a93958c588bb3d76ac01e71fbc5481b","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.45.0.tgz","fileCount":6,"integrity":"sha512-hSTA1uMGiwOd02Hqz/oeEDRzRXmxK9p+u4z79LT/JhB9+Rs0kLHIvs0risqCSXbU0TeyoCcBcjZ/IKCQccSYIg==","signatures":[{"sig":"MEUCIQCQCM7kCkdNETy+rR59hd83tNs/VyT22Xid6Td7Ga2D5wIgFKyYYoa2krnNEHdQmBwO7aSyfaHz35fZLi52N8oMNuA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1786549},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"5d439d9bb92d5ba9e7dba8343348c4597e7a1fbc","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.16.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.18.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.45.0_1784823021751_0.5533851443168905","host":"s3://npm-registry-packages-npm-production"}},"0.45.1":{"name":"@ast-grep/wasm","version":"0.45.1","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.45.1","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"a701f5c4079d76aa95f6f0e27fe2d9d17608b822","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.45.1.tgz","fileCount":6,"integrity":"sha512-YQl4Wy3fN+X8TJIgA60oEsNXEwZT0Gqg/69zvRDDY7vwqABEC+UHU09lmF5dPbTQznUErSeqold2ASCFN1I1Cg==","signatures":[{"sig":"MEUCICdbgNrHtibhQ2phurVJdsyKRW2Y6/69zum0JYJQrNF9AiEAoe43eZFXwDCvzmDUO/q+ljQq2U79iGNIjRXrwYcOYBE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1792233},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"dc3d655b9edf3b2bc266d9bc46eb60f18e66b818","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.17.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.19.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.45.1_1786115836460_0.2854792565620703","host":"s3://npm-registry-packages-npm-production"}},"0.45.2":{"name":"@ast-grep/wasm","version":"0.45.2","keywords":["ast","pattern","codemod","search","rewrite"],"license":"MIT","_id":"@ast-grep/wasm@0.45.2","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"homepage":"https://github.com/ast-grep/ast-grep#readme","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"dist":{"shasum":"52c5be0326ea98c20837d693ad7e0f8f52126c00","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.45.2.tgz","fileCount":6,"integrity":"sha512-FPZqtmaWXdBgihIJc/t1QUUz1gGRWgm6cSc91rawnLznusKRj4+xeVBZGEvWlHC65Vu1ffWYbh6RyDSewdlPTA==","signatures":[{"sig":"MEQCIES6b12a3c/h9+t6WSFCeFl9o1WS2WE/AYNBHMmw8qa+AiAUvXtD1raldegY98+1xQE1E4xyNO2LxVDpAdIi6cSo8Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":1792844},"main":"wasm.js","type":"module","types":"wasm.d.ts","gitHead":"c41e023a64060c9f263c23320aa5ff67be4bc474","_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"repository":{"url":"git+https://github.com/ast-grep/ast-grep.git","type":"git"},"_npmVersion":"11.17.0","description":"Search and Rewrite code at large scale using precise AST pattern","directories":{},"sideEffects":["./wasm.js","./snippets/*"],"_nodeVersion":"24.19.0","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"_hasShrinkwrap":false,"peerDependencies":{"web-tree-sitter":"^0.26.0"},"_npmOperationalInternal":{"tmp":"tmp/wasm_0.45.2_1787514692001_0.7197596636149506","host":"s3://npm-registry-packages-npm-production"}},"0.45.3":{"name":"@ast-grep/wasm","type":"module","collaborators":["Herrington Darkholme <2883231+HerringtonDarkholme@users.noreply.github.com>"],"description":"Search and Rewrite code at large scale using precise AST pattern","version":"0.45.3","license":"MIT","repository":{"type":"git","url":"git+https://github.com/ast-grep/ast-grep.git"},"main":"wasm.js","types":"wasm.d.ts","sideEffects":["./wasm.js","./snippets/*"],"keywords":["ast","pattern","codemod","search","rewrite"],"peerDependencies":{"web-tree-sitter":"^0.26.0"},"gitHead":"979c143639e3588c31f563091e69398683ed34f0","_id":"@ast-grep/wasm@0.45.3","bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"homepage":"https://github.com/ast-grep/ast-grep#readme","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-4LZlce9A3IJ1eYrfg0oVZEJxKGPkOh6TYgaOpKARPXDjSO659BJe6U+eSUR/oVpVl/yX8nQqQXByOSQQW13W4w==","shasum":"346222a5640aa5a520369760c84cdca29e3d72ce","tarball":"https://registry.npmjs.org/@ast-grep/wasm/-/wasm-0.45.3.tgz","fileCount":6,"unpackedSize":1793642,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIH2CQvzaNG3n2DqElLMQGpt5cVtagKPMeHt6ikNGTHGPAiEAp41PgUfTyLjmTHgOYbORKAY7nDBz3C07Ado22tq3U5E="}]},"_npmUser":{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"},"directories":{},"maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/wasm_0.45.3_1788143000687_0.1289243722487572"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-21T23:14:53.595Z","modified":"2026-08-31T02:23:21.020Z","0.0.1":"2026-02-21T23:14:53.890Z","0.0.2":"2026-02-21T23:24:23.110Z","0.40.5":"2026-02-22T15:21:01.078Z","0.41.1":"2026-03-10T14:08:42.210Z","0.42.0":"2026-03-16T03:31:08.079Z","0.42.1":"2026-04-04T16:06:46.886Z","0.42.2":"2026-05-10T22:03:00.775Z","0.42.3":"2026-05-19T15:23:36.842Z","0.43.0":"2026-05-25T20:19:20.492Z","0.44.0":"2026-06-22T01:54:52.271Z","0.44.1":"2026-07-04T14:09:10.360Z","0.45.0":"2026-07-23T16:10:21.916Z","0.45.1":"2026-08-07T15:17:16.632Z","0.45.2":"2026-08-23T19:51:32.197Z","0.45.3":"2026-08-31T02:23:20.864Z"},"bugs":{"url":"https://github.com/ast-grep/ast-grep/issues"},"license":"MIT","homepage":"https://github.com/ast-grep/ast-grep#readme","keywords":["ast","pattern","codemod","search","rewrite"],"repository":{"type":"git","url":"git+https://github.com/ast-grep/ast-grep.git"},"description":"Search and Rewrite code at large scale using precise AST pattern","maintainers":[{"name":"herringtondarkholme","email":"nonamesheep@outlook.com"}],"readme":"# @ast-grep/wasm\n\nWebAssembly build of [ast-grep](https://ast-grep.github.io/) for use in browsers and Node.js.\n\nThis package provides the same API as [`@ast-grep/napi`](https://www.npmjs.com/package/@ast-grep/napi) but runs in any JavaScript environment that supports WebAssembly, including browsers, Deno, and edge runtimes.\n\n## Installation\n\n```bash\nyarn add @ast-grep/wasm web-tree-sitter\n```\n\n`web-tree-sitter` is a required peer dependency.\n\n### Vite\n\nWhen using Vite, you need to make `tree-sitter.wasm` available in your public directory. You can automate this with a `postinstall` script in your `package.json` (see [web-tree-sitter setup](https://github.com/tree-sitter/tree-sitter/tree/master/lib/binding_web#setup)):\n\n```json\n\"postinstall\": \"cp node_modules/web-tree-sitter/tree-sitter.wasm public\"\n```\n\n## Usage\n\nUnlike `@ast-grep/napi`, this package has no predefined language support. All languages must be registered at runtime by loading their tree-sitter WASM parser.\n\n```js\nimport { initializeTreeSitter, registerDynamicLanguage, parse, kind } from '@ast-grep/wasm'\n\n// 1. Initialize the tree-sitter WASM runtime (once)\nawait initializeTreeSitter()\n\n// 2. Register a language by loading its WASM parser\nawait registerDynamicLanguage({\n  javascript: { libraryPath: '/path/to/tree-sitter-javascript.wasm' },\n})\n\n// 3. Parse and search code\nconst sg = parse('javascript', 'console.log(\"hello world\")')\nconst node = sg.root().find('console.log($ARG)')\nconsole.log(node.getMatch('ARG').text()) // \"hello world\"\n```\n\n### Registering Languages\n\n`registerDynamicLanguage` accepts a map of language name to registration config. It can be called multiple times to add or update languages.\n\n```js\nawait registerDynamicLanguage({\n  javascript: { libraryPath: '/path/to/tree-sitter-javascript.wasm' },\n  python: {\n    libraryPath: '/path/to/tree-sitter-python.wasm',\n    expandoChar: 'µ',  // custom expando char for languages where $ is special\n  },\n})\n```\n\nThe `expandoChar` option sets the character used internally to represent metavariables (defaults to `$`). Use a different character for languages where `$` is a valid identifier character (e.g. PHP, Bash).\n\n### Pattern Matching\n\n```js\n// By pattern string\nsg.root().find('console.log($$$ARGS)')\n\n// By kind number\nconst k = kind('javascript', 'call_expression')\nsg.root().find(k)\n\n// By rule config (same as YAML rules)\nsg.root().find({\n  rule: { pattern: 'console.log($A)' },\n  constraints: { A: { kind: 'string' } },\n})\n```\n\n### Code Rewriting\n\n```js\nconst match = sg.root().find('console.log($A)')\nconst edit = match.replace('console.error($A)')\nconst newCode = sg.root().commitEdits([edit])\n```\n\n## API Reference\n\n### Top-level functions\n\n#### `initializeTreeSitter(): Promise<void>`\n\nInitializes the tree-sitter WASM runtime. Must be called once before any other function.\n\n#### `registerDynamicLanguage(langs: Record<string, { libraryPath: string, expandoChar?: string }>): Promise<void>`\n\nRegisters one or more language parsers by loading their WASM binaries. Can be called multiple times; existing languages are updated.\n\n#### `parse(lang: string, src: string): SgRoot`\n\nParses source code and returns an `SgRoot` instance. Throws if the language has not been registered.\n\n#### `kind(lang: string, kindName: string): number`\n\nReturns the numeric kind ID for a named node type in the given language. Useful for matching by node kind.\n\n#### `pattern(lang: string, patternStr: string): object`\n\nCompiles a pattern string into a rule config object (equivalent to `{ rule: { pattern: patternStr } }`). Useful for building rule configs programmatically.\n\n#### `dumpPattern(lang: string, patternStr: string, selector?: string, strictness?: string): PatternTree`\n\nDumps the internal structure of a pattern for inspection and debugging. Returns a tree showing how ast-grep parses the pattern, including source positions and node kinds.\n\n- `selector`: optional kind name for contextual patterns (e.g. `'field_definition'`)\n- `strictness`: one of `\"cst\"`, `\"smart\"` (default), `\"ast\"`, `\"relaxed\"`, `\"signature\"`, `\"template\"`\n\nEach `PatternTree` node has:\n- `kind`: the tree-sitter node kind string\n- `pattern`: `\"metaVar\"`, `\"terminal\"`, or `\"internal\"`\n- `isNamed`: whether the node is a named node\n- `text`: source text (for metavar and terminal nodes)\n- `children`: child `PatternTree` nodes\n- `start`, `end`: `{ line, column }` positions in the pattern source\n\n### `SgRoot`\n\nRepresents the parsed tree of code.\n\n#### `root(): SgNode`\n\nReturns the root `SgNode`.\n\n#### `filename(): string`\n\nReturns `\"anonymous\"` when the instance is created via `parse`.\n\n#### `getInnerTree(): Tree`\n\nReturns the underlying `web-tree-sitter` `Tree` object. Useful for low-level inspection or debugging.\n\n### `SgNode`\n\nRepresents a single AST node.\n\n#### Position and info\n\n| Method | Description |\n|--------|-------------|\n| `range()` | Returns `{ start, end }` where each is `{ line, column, index }` |\n| `isLeaf()` | True if the node has no children |\n| `isNamed()` | True if the node is a named (non-anonymous) node |\n| `isNamedLeaf()` | True if the node is a named node with no named children |\n| `kind()` | Returns the node kind string |\n| `is(kind: string)` | True if the node kind equals `kind` |\n| `text()` | Returns the source text of the node |\n| `id()` | Returns the unique node ID |\n\n#### Searching\n\n| Method | Description |\n|--------|-------------|\n| `find(matcher)` | Returns the first descendant matching the matcher, or `undefined` |\n| `findAll(matcher)` | Returns all descendants matching the matcher |\n\nMatchers can be a pattern string, a kind number (from `kind()`), or a rule config object.\n\n#### Relational matchers\n\n| Method | Description |\n|--------|-------------|\n| `matches(matcher)` | True if the node itself matches |\n| `inside(matcher)` | True if the node is inside an ancestor matching the matcher |\n| `has(matcher)` | True if the node has a descendant matching the matcher |\n| `precedes(matcher)` | True if the node comes before a sibling matching the matcher |\n| `follows(matcher)` | True if the node comes after a sibling matching the matcher |\n\n#### Match environment\n\n| Method | Description |\n|--------|-------------|\n| `getMatch(name: string)` | Returns the node bound to a metavariable (e.g. `$VAR`) |\n| `getMultipleMatches(name: string)` | Returns nodes bound to a multi-metavariable (e.g. `$$$ARGS`) |\n| `getTransformed(name: string)` | Returns the string value of a transformed variable |\n\n#### Tree traversal\n\n| Method | Description |\n|--------|-------------|\n| `children_nodes()` | Returns all child nodes |\n| `parent_node()` | Returns the parent node, or `undefined` |\n| `child(nth: number)` | Returns the nth child, or `undefined` |\n| `ancestors()` | Returns all ancestors from parent to root |\n| `next_node()` | Returns the next sibling, or `undefined` |\n| `nextAll()` | Returns all following siblings |\n| `prev()` | Returns the previous sibling, or `undefined` |\n| `prevAll()` | Returns all preceding siblings |\n| `field(name: string)` | Returns the child node for a named field, or `undefined` |\n| `fieldChildren(name: string)` | Returns all child nodes for a named field |\n\n#### Editing\n\n| Method | Description |\n|--------|-------------|\n| `replace(text: string)` | Creates a `WasmEdit` replacing this node's range with `text` |\n| `commitEdits(edits: WasmEdit[])` | Applies edits to the node's text and returns the new source string |\n\n`WasmEdit` has `start_pos`, `end_pos` (character offsets), and `inserted_text`. These fields can be modified before calling `commitEdits`.\n\n## Building from Source\n\nRequires [wasm-pack](https://rustwasm.github.io/wasm-pack/installer/).\n\n```bash\n# For browser (ES module)\nyarn build\n\n# For Node.js (CommonJS)\nyarn build:nodejs\n\n# For bundlers\nyarn build:bundler\n```\n\n## Testing\n\n```bash\nyarn install\n```\n\n### Rust WASM tests\n\n```bash\nyarn test\n```\n\n> **Note:** `wasm-pack test --node` runs the test harness from a temporary directory.\n> The `test` script sets `NODE_PATH=$PWD/node_modules` so that `web-tree-sitter` and\n> parser WASM files can be resolved. If you run `wasm-pack test --node` directly,\n> set `NODE_PATH` yourself:\n>\n> ```bash\n> NODE_PATH=$PWD/node_modules wasm-pack test --node\n> ```\n\n### JavaScript tests\n\n```bash\nyarn test:js\n```\n\nThis builds the WASM package for Node.js and runs AVA tests against it.\n","readmeFilename":"README.md"}