Sanity Library Reference Docs
    Preparing search index...
    • Hygienic GROQ interpolation for define-time condition building.

      Parameterized predicate reuse lives in the host language — a TypeScript function producing a condition string — and this tag is its safe splice: interpolated values serialize as GROQ literals (JSON literal syntax is valid GROQ), never as raw query text, so quoting and precedence cannot break. The produced string is stored as a plain condition and validated at deploy like any other.

      const regulated = (kinds: string[]) => groq`$fields.subject.category in ${kinds}`
      defineActivity({ name: "legal", filter: regulated(["finance", "health"]), … })

      Parameters

      • strings: TemplateStringsArray
      • ...values: unknown[]

      Returns string