{"_id":"@sanity/prism-groq","_rev":"4-d9a2ebda3e2e948c42a32c16759131aa","name":"@sanity/prism-groq","dist-tags":{"latest":"1.1.2"},"versions":{"1.1.1":{"name":"@sanity/prism-groq","version":"1.1.1","keywords":["prism","prismjs","groq","syntax-highlighting"],"license":"MIT","_id":"@sanity/prism-groq@1.1.1","maintainers":[{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"bjoerge","email":"bjoerge@gmail.com"},{"name":"rexxars","email":"espen@hovlandsdal.com"},{"name":"skogsmaskin","email":"per.kristian.nordnes@gmail.com"},{"name":"tonina","email":"zhelyazkova.tonina@gmail.com"},{"name":"mattcraig","email":"matt@sanity.io"},{"name":"joneidejohnsen","email":"jon@sanity.io"},{"name":"rubioz","email":"jarubc@gmail.com"},{"name":"robinpyon","email":"robin@robinpyon.com"},{"name":"mariuslundgard","email":"studio@mariuslundgard.com"},{"name":"sanity-io","email":"developers@sanity.io"},{"name":"irina937","email":"irina@sanity.io"},{"name":"evenw","email":"even@sanity.io"},{"name":"radhe_sanity","email":"radhe@sanity.io"},{"name":"rbotten","email":"rbotten@gmail.com"},{"name":"danielsgroves","email":"hello@danielgroves.net"},{"name":"judofyr","email":"judofyr@gmail.com"},{"name":"ryanblock","email":"rblock+npm@gmail.com"},{"name":"obliadp","email":"orjan@sanity.io"},{"name":"dcilke","email":"dain.cilke@gmail.com"},{"name":"madken","email":"kenneth.madsen@sanity.io"},{"name":"fredcarlsen","email":"fred@superbig.co"},{"name":"hermanw","email":"herman@sanity.io"},{"name":"sgulseth","email":"sgulseth@gmail.com"},{"name":"atombender","email":"npm@purefiction.net"},{"name":"stipsan","email":"stipsan@gmail.com"},{"name":"snorreeb","email":"snorre.e.brekke@gmail.com"},{"name":"sanity-svc.npm","email":"svc.npm@sanity.io"},{"name":"rankers","email":"richardankers@gmail.com"},{"name":"rdunk","email":"rupert@rupertdunk.com"},{"name":"michael-sanity","email":"michael@sanity.io"},{"name":"vincentquigley","email":"vincent@sanity.io"},{"name":"ritasdias","email":"anarita151@gmail.com"},{"name":"pete-garnett-sanity","email":"pete.garnett@sanity.io"},{"name":"kenjonespizza","email":"ken@sanity.io"},{"name":"josh_sanity_io","email":"josh@sanity.io"},{"name":"cngonzalez-sanity","email":"carolina@sanity.io"},{"name":"jjburbridge","email":"jonathan.burbridge@sanity.io"},{"name":"tdfka_rick","email":"joshua.ellis18@gmail.com"},{"name":"ryanbonial-sanity","email":"ryan.bonial@sanity.io"},{"name":"indrek.karner","email":"indrek.karner@sanity.io"},{"name":"ash","email":"ashley@juice49.com"},{"name":"sergeisarviro","email":"sergei@sanity.io"},{"name":"refiito","email":"margus@sanity.io"},{"name":"drewsanity","email":"drew.lyton@sanity.io"},{"name":"kaspar.lippmaa.sanity","email":"kaspar.lippmaa@sanity.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"simen.svale","email":"simen@sanity.io"},{"name":"tbeseda","email":"tbeseda@gmail.com"},{"name":"daniel.malmer","email":"daniel.malmer@sanity.io"},{"name":"jordanl17","email":"jordanl17@me.com"},{"name":"colepeters","email":"cole@colepeters.com"},{"name":"armandocerna","email":"armando@cerna.ca"},{"name":"joan_miralles_paez","email":"joan.miralles@sanity.io"},{"name":"realmfour","email":"darius.west@sanity.io"},{"name":"christianhg","email":"services@groengaard.dk"},{"name":"pedro-sanity","email":"pedro@sanity.io"},{"name":"jwoods-sanity","email":"james.woods@sanity.io"},{"name":"binoy14","email":"me@binoy.io"},{"name":"pauloborgesf","email":"paulo@sanity.io"},{"name":"ausha","email":"ausha@sanity.io"},{"name":"chrislarocquesanity","email":"chris.larocque@sanity.io"},{"name":"tnaughts1","email":"tim.naughton@sanity.io"},{"name":"mm-sanity","email":"mark.michon@sanity.io"},{"name":"dennis.padiernos","email":"dennis.padiernos@sanity.io"},{"name":"alexjmold-sanity","email":"alex.mold@sanity.io"},{"name":"jason.brown","email":"jason.brown@sanity.io"},{"name":"taclandwork","email":"thomas.acland@sanity.io"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"mdinning","email":"michael.dinning@sanity.io"},{"name":"mattlewine.sanity","email":"matt.lewine@sanity.io"},{"name":"msfragala","email":"npm@msfragala.com"},{"name":"adoprog","email":"adoprog@gmail.com"},{"name":"tonysanity","email":"tony.lepmets@sanity.io"},{"name":"u269c","email":"francis@sanity.io"},{"name":"bramdo_","email":"bram.doppen@sanity.io"},{"name":"samhem","email":"sam.hemingway@sanity.io"},{"name":"betson","email":"ben.getson@gmail.com"},{"name":"georgedoescode","email":"georgedoescode@gmail.com"},{"name":"macdonst","email":"simon.macdonald@gmail.com"},{"name":"eoinsanity","email":"eoin.falconer@sanity.io"},{"name":"dashedstripes","email":"adamgrayscale@gmail.com"},{"name":"jmswrnr","email":"npm@jmswrnr.com"},{"name":"snocorp_sanity","email":"dave.sewell@sanity.io"},{"name":"mmgj","email":"controloptioncommand+npm@gmail.com"},{"name":"filmaj","email":"maj.fil@gmail.com"},{"name":"gu-stav","email":"gu@stav.dev"},{"name":"mads.mogenshoj","email":"mads.mogenshoj@sanity.io"},{"name":"sanitytom","email":"tom@sanity.io"},{"name":"sanity-cb","email":"charlie.brown@sanity.io"},{"name":"sanitykev","email":"kevin.green@sanity.io"},{"name":"victor.ayogu","email":"victor.ayogu@sanity.io"},{"name":"ryanbethel_sanity","email":"ryan.bethel@sanity.io"},{"name":"brianleroux","email":"b@brian.io"},{"name":"p10e","email":"peter@sanity.io"},{"name":"krlund","email":"kristoffer.lund@sanity.io"},{"name":"jonahsnider","email":"jonah@jonah.pw"},{"name":"mwritter","email":"matthew.ritter@sanity.io"},{"name":"torbratsbergsanity","email":"tor.bratsberg@sanity.io"},{"name":"evelinawahlstrom","email":"evelina.wahlstrom@sanity.io"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"},{"name":"bobinska.dev","email":"bobinska.dev@gmail.com"},{"name":"oleg1357","email":"oleg.shcherbina@sanity.io"},{"name":"josef-sanity","email":"josef.hlavacek@sanity.io"},{"name":"gabe.wyatt","email":"gabe.wyatt@sanity.io"},{"name":"kbrabrand","email":"kristoffer@brabrand.no"},{"name":"annez-sanity","email":"david.annez@sanity.io"},{"name":"sanityjamie","email":"jamie.paulson@sanity.io"},{"name":"laurenashpolesanity","email":"lauren.ashpole@sanity.io"},{"name":"geoffball","email":"geoff@gball.dev"},{"name":"carsten.schwesig","email":"carsten.schwesig@sanity.io"},{"name":"fishstix81","email":"stephen.fisher@sanity.io"}],"homepage":"https://github.com/sanity-io/groq-syntax#readme","bugs":{"url":"https://github.com/sanity-io/groq-syntax/issues"},"dist":{"shasum":"9bc05f6fe0370cc4e1241c152fbb43cc776ebbd8","tarball":"https://registry.npmjs.org/@sanity/prism-groq/-/prism-groq-1.1.1.tgz","fileCount":5,"integrity":"sha512-D2AbMYg5osfEk1NibuFeKQNMyprteio8BsxsXJYAWWxDr9ViaGCkzSNH7W2ZFfUlbjTwQhvyLIKVGf/X0gb9tA==","signatures":[{"sig":"MEUCIQDdOdP2AUvW7RmcUFAzbgCRIGtOl2tGTmgv3OwNgbABkQIgXdBB8MmUzSDHR5qKTcoCs5Vja6+TrQLz9cWeQm0cdm8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sanity%2fprism-groq@1.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6405},"type":"module","_from":"file:sanity-prism-groq-1.1.1.tgz","exports":{".":"./groq.js"},"_npmUser":{"name":"sanity-svc.npm","email":"svc.npm@sanity.io"},"_resolved":"/tmp/08b99df1577db356cba97269961faca2/sanity-prism-groq-1.1.1.tgz","_integrity":"sha512-D2AbMYg5osfEk1NibuFeKQNMyprteio8BsxsXJYAWWxDr9ViaGCkzSNH7W2ZFfUlbjTwQhvyLIKVGf/X0gb9tA==","repository":{"url":"git+https://github.com/sanity-io/groq-syntax.git","type":"git","directory":"packages/prism-groq"},"_npmVersion":"10.9.7","description":"GROQ language definition for Prism.js","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"prismjs":">=1.0.0"},"peerDependenciesMeta":{"prismjs":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/prism-groq_1.1.1_1775589745273_0.30954222710708335","host":"s3://npm-registry-packages-npm-production"}},"1.1.2":{"name":"@sanity/prism-groq","version":"1.1.2","keywords":["prism","prismjs","groq","syntax-highlighting"],"license":"MIT","_id":"@sanity/prism-groq@1.1.2","maintainers":[{"name":"kmelve","email":"knut.melvaer@gmail.com"},{"name":"bjoerge","email":"bjoerge@gmail.com"},{"name":"rexxars","email":"espen@hovlandsdal.com"},{"name":"skogsmaskin","email":"per.kristian.nordnes@gmail.com"},{"name":"tonina","email":"zhelyazkova.tonina@gmail.com"},{"name":"mattcraig","email":"matt@sanity.io"},{"name":"joneidejohnsen","email":"jon@sanity.io"},{"name":"rubioz","email":"jarubc@gmail.com"},{"name":"robinpyon","email":"robin@robinpyon.com"},{"name":"mariuslundgard","email":"studio@mariuslundgard.com"},{"name":"sanity-io","email":"developers@sanity.io"},{"name":"irina937","email":"irina@sanity.io"},{"name":"evenw","email":"even@sanity.io"},{"name":"radhe_sanity","email":"radhe@sanity.io"},{"name":"rbotten","email":"rbotten@gmail.com"},{"name":"danielsgroves","email":"hello@danielgroves.net"},{"name":"judofyr","email":"judofyr@gmail.com"},{"name":"ryanblock","email":"rblock+npm@gmail.com"},{"name":"obliadp","email":"orjan@sanity.io"},{"name":"dcilke","email":"dain.cilke@gmail.com"},{"name":"madken","email":"kenneth.madsen@sanity.io"},{"name":"fredcarlsen","email":"fred@superbig.co"},{"name":"hermanw","email":"herman@sanity.io"},{"name":"sgulseth","email":"sgulseth@gmail.com"},{"name":"atombender","email":"npm@purefiction.net"},{"name":"stipsan","email":"stipsan@gmail.com"},{"name":"snorreeb","email":"snorre.e.brekke@gmail.com"},{"name":"sanity-svc.npm","email":"svc.npm@sanity.io"},{"name":"rankers","email":"richardankers@gmail.com"},{"name":"rdunk","email":"rupert@rupertdunk.com"},{"name":"michael-sanity","email":"michael@sanity.io"},{"name":"vincentquigley","email":"vincent@sanity.io"},{"name":"ritasdias","email":"anarita151@gmail.com"},{"name":"pete-garnett-sanity","email":"pete.garnett@sanity.io"},{"name":"kenjonespizza","email":"ken@sanity.io"},{"name":"josh_sanity_io","email":"josh@sanity.io"},{"name":"cngonzalez-sanity","email":"carolina@sanity.io"},{"name":"jjburbridge","email":"jonathan.burbridge@sanity.io"},{"name":"tdfka_rick","email":"joshua.ellis18@gmail.com"},{"name":"ryanbonial-sanity","email":"ryan.bonial@sanity.io"},{"name":"indrek.karner","email":"indrek.karner@sanity.io"},{"name":"ash","email":"ashley@juice49.com"},{"name":"sergeisarviro","email":"sergei@sanity.io"},{"name":"refiito","email":"margus@sanity.io"},{"name":"drewsanity","email":"drew.lyton@sanity.io"},{"name":"kaspar.lippmaa.sanity","email":"kaspar.lippmaa@sanity.io"},{"name":"dam","email":"kristoferjoseph@gmail.com"},{"name":"simen.svale","email":"simen@sanity.io"},{"name":"tbeseda","email":"tbeseda@gmail.com"},{"name":"daniel.malmer","email":"daniel.malmer@sanity.io"},{"name":"jordanl17","email":"jordanl17@me.com"},{"name":"colepeters","email":"cole@colepeters.com"},{"name":"armandocerna","email":"armando@cerna.ca"},{"name":"joan_miralles_paez","email":"joan.miralles@sanity.io"},{"name":"realmfour","email":"darius.west@sanity.io"},{"name":"christianhg","email":"services@groengaard.dk"},{"name":"pedro-sanity","email":"pedro@sanity.io"},{"name":"jwoods-sanity","email":"james.woods@sanity.io"},{"name":"binoy14","email":"me@binoy.io"},{"name":"pauloborgesf","email":"paulo@sanity.io"},{"name":"ausha","email":"ausha@sanity.io"},{"name":"chrislarocquesanity","email":"chris.larocque@sanity.io"},{"name":"tnaughts1","email":"tim.naughton@sanity.io"},{"name":"mm-sanity","email":"mark.michon@sanity.io"},{"name":"dennis.padiernos","email":"dennis.padiernos@sanity.io"},{"name":"alexjmold-sanity","email":"alex.mold@sanity.io"},{"name":"jason.brown","email":"jason.brown@sanity.io"},{"name":"taclandwork","email":"thomas.acland@sanity.io"},{"name":"rostimelk","email":"hello@rosti.no"},{"name":"mdinning","email":"michael.dinning@sanity.io"},{"name":"mattlewine.sanity","email":"matt.lewine@sanity.io"},{"name":"msfragala","email":"npm@msfragala.com"},{"name":"adoprog","email":"adoprog@gmail.com"},{"name":"tonysanity","email":"tony.lepmets@sanity.io"},{"name":"u269c","email":"francis@sanity.io"},{"name":"bramdo_","email":"bram.doppen@sanity.io"},{"name":"samhem","email":"sam.hemingway@sanity.io"},{"name":"betson","email":"ben.getson@gmail.com"},{"name":"georgedoescode","email":"georgedoescode@gmail.com"},{"name":"macdonst","email":"simon.macdonald@gmail.com"},{"name":"eoinsanity","email":"eoin.falconer@sanity.io"},{"name":"dashedstripes","email":"adamgrayscale@gmail.com"},{"name":"jmswrnr","email":"npm@jmswrnr.com"},{"name":"snocorp_sanity","email":"dave.sewell@sanity.io"},{"name":"mmgj","email":"controloptioncommand+npm@gmail.com"},{"name":"filmaj","email":"maj.fil@gmail.com"},{"name":"gu-stav","email":"gu@stav.dev"},{"name":"mads.mogenshoj","email":"mads.mogenshoj@sanity.io"},{"name":"sanitytom","email":"tom@sanity.io"},{"name":"sanity-cb","email":"charlie.brown@sanity.io"},{"name":"sanitykev","email":"kevin.green@sanity.io"},{"name":"victor.ayogu","email":"victor.ayogu@sanity.io"},{"name":"ryanbethel_sanity","email":"ryan.bethel@sanity.io"},{"name":"brianleroux","email":"b@brian.io"},{"name":"p10e","email":"peter@sanity.io"},{"name":"krlund","email":"kristoffer.lund@sanity.io"},{"name":"jonahsnider","email":"jonah@jonah.pw"},{"name":"mwritter","email":"matthew.ritter@sanity.io"},{"name":"torbratsbergsanity","email":"tor.bratsberg@sanity.io"},{"name":"evelinawahlstrom","email":"evelina.wahlstrom@sanity.io"},{"name":"jw-sanity","email":"jack.wilson@sanity.io"},{"name":"bobinska.dev","email":"bobinska.dev@gmail.com"},{"name":"oleg1357","email":"oleg.shcherbina@sanity.io"},{"name":"josef-sanity","email":"josef.hlavacek@sanity.io"},{"name":"gabe.wyatt","email":"gabe.wyatt@sanity.io"},{"name":"kbrabrand","email":"kristoffer@brabrand.no"},{"name":"annez-sanity","email":"david.annez@sanity.io"},{"name":"sanityjamie","email":"jamie.paulson@sanity.io"},{"name":"laurenashpolesanity","email":"lauren.ashpole@sanity.io"},{"name":"geoffball","email":"geoff@gball.dev"},{"name":"carsten.schwesig","email":"carsten.schwesig@sanity.io"},{"name":"fishstix81","email":"stephen.fisher@sanity.io"}],"homepage":"https://github.com/sanity-io/groq-syntax#readme","bugs":{"url":"https://github.com/sanity-io/groq-syntax/issues"},"dist":{"shasum":"fbba8503b6850e7fa6c1fe286c489c7a01301349","tarball":"https://registry.npmjs.org/@sanity/prism-groq/-/prism-groq-1.1.2.tgz","fileCount":5,"integrity":"sha512-McMw9U5kuYAgIwyNodhFKdarM0cPme6UYBR6ms6YBNEO8Qqu5zGHydUeORaJ/w4qdFKGB1oWjBjy525ed6LXaQ==","signatures":[{"sig":"MEYCIQD9Dl5COUDjF93FNvgPNhscIMhqEVD/+qvCR0Dz6NoKxAIhAK9Aeschhu3KRo8hQqRfcMljB9zRBrRCKuK9AuZjBXZS","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@sanity%2fprism-groq@1.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":6395},"type":"module","_from":"file:sanity-prism-groq-1.1.2.tgz","exports":{".":"./groq.js"},"_npmUser":{"name":"sanity-svc.npm","email":"svc.npm@sanity.io"},"_resolved":"/tmp/4260aadeb2b02ff9bfe60b5bf820fbca/sanity-prism-groq-1.1.2.tgz","_integrity":"sha512-McMw9U5kuYAgIwyNodhFKdarM0cPme6UYBR6ms6YBNEO8Qqu5zGHydUeORaJ/w4qdFKGB1oWjBjy525ed6LXaQ==","repository":{"url":"git+https://github.com/sanity-io/groq-syntax.git","type":"git","directory":"packages/prism-groq"},"_npmVersion":"10.9.7","description":"GROQ language definition for Prism.js","directories":{},"_nodeVersion":"22.22.2","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"peerDependencies":{"prismjs":">=1.0.0"},"peerDependenciesMeta":{"prismjs":{"optional":true}},"_npmOperationalInternal":{"tmp":"tmp/prism-groq_1.1.2_1775593351236_0.9374761834179826","host":"s3://npm-registry-packages-npm-production"}}},"time":{"created":"2026-04-07T19:22:25.190Z","modified":"2026-04-08T15:22:44.365Z","1.1.1":"2026-04-07T19:22:25.409Z","1.1.2":"2026-04-07T20:22:31.382Z"},"bugs":{"url":"https://github.com/sanity-io/groq-syntax/issues"},"license":"MIT","homepage":"https://github.com/sanity-io/groq-syntax#readme","keywords":["prism","prismjs","groq","syntax-highlighting"],"repository":{"url":"git+https://github.com/sanity-io/groq-syntax.git","type":"git","directory":"packages/prism-groq"},"description":"GROQ language definition for Prism.js","maintainers":[{"email":"svc.npm@sanity.io","name":"sanity-svc.npm"},{"email":"developers@sanity.io","name":"sanity-io"}],"readme":"# @sanity/prism-groq\n\n[Prism.js](https://prismjs.com/) language definition for [GROQ](https://www.sanity.io/docs/groq) syntax highlighting.\n\n## Install\n\n```bash\nnpm install @sanity/prism-groq\n```\n\n## Usage with react-refractor\n\n```tsx\nimport {Refractor, registerLanguage} from 'react-refractor'\nimport {refractorGroq} from '@sanity/prism-groq'\n\nregisterLanguage(refractorGroq)\n\nfunction CodeBlock({query}: {query: string}) {\n  return <Refractor language=\"groq\" value={query} />\n}\n```\n\n## Usage with Prism.js\n\n```js\nimport Prism from 'prismjs'\nimport '@sanity/prism-groq'\n\nconst html = Prism.highlight(\n  '*[_type == \"post\"]{title, \"author\": author->name}',\n  Prism.languages.groq,\n  'groq',\n)\n```\n\n## Usage with refractor\n\n```js\nimport {refractor} from 'refractor/core'\nimport {refractorGroq} from '@sanity/prism-groq'\n\nrefractor.register(refractorGroq)\n\nconst tree = refractor.highlight('*[_type == \"post\"]', 'groq')\n```\n\n## Standalone (no Prism dependency)\n\nThe grammar is a plain JavaScript object and can be used without Prism:\n\n```js\nimport groq from '@sanity/prism-groq'\n// groq.comment, groq.string, groq.function, etc.\n```\n\n## Tokens\n\n| Token | Examples |\n|---|---|\n| `comment` | `// ...` |\n| `string` | `\"post\"`, `'text'` |\n| `string > escape` | `\\n`, `\\u0041`, `\\u{1F600}` |\n| `number` | `42`, `3.14`, `1e10` |\n| `boolean` | `true`, `false` |\n| `null` | `null` |\n| `keyword-operator` | `in`, `match`, `asc`, `desc` |\n| `function` | `count`, `defined`, `select`, `order`, ... |\n| `namespace` | `math`, `pt`, `geo`, ... (before `::`) |\n| `variable` | `$param` |\n| `special-variable` | `@`, `^` |\n| `wildcard` | `*` (everything selector) |\n| `operator` | `==`, `!=`, `&&`, `\\|\\|`, `->`, `=>`, `\\|`, ... |\n| `spread` | `...` |\n| `punctuation` | `[`, `]`, `{`, `}`, `(`, `)`, `,`, `:` |\n\n## License\n\nMIT\n","readmeFilename":"README.md"}