1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[713],{4713:function(t,e,r){var n=r(6254),o=r(5874),a=r(4636),i=r(7451),s=r(9932);function c(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var u=c(n),p=c(o);function l(){return l=Object.assign?Object.assign.bind():function(t){for(var e=1;e<arguments.length;e++){var r=arguments[e];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(t[n]=r[n])}return t},l.apply(this,arguments)}var f,d=function(t,e,r){(function(t){return"undefined"!=typeof window&&t.addEventListener===window.EventSource.prototype.addEventListener})(t)&&t.addEventListener(e,r,!1),t.addEventListener(e,r)};function y(t,e,r){var n,o=e.token,a=new t("https://"+e.projectId+".api.sanity.io/v1/data/listen/"+e.dataset+"?query=*&effectFormat=mendoza",{withCredentials:!0,headers:o?{Authorization:"Bearer "+o}:void 0});return d(a,"welcome",r.open),d(a,"mutation",(n=r.next,function(t){var e;try{e=JSON.parse(t.data)}catch(t){return}n(e)})),d(a,"channelError",(function(t){var e;a.close();try{e=JSON.parse(t.data)}catch(t){return void r.error(new Error("Unknown error parsing listener message"))}r.error(new Error(e.message||e.error||"Listener returned HTTP "+e.statusCode))})),d(a,"error",(function(t){var e="undefined"!=typeof window&&window.location.origin,n=e?", and that the CORS-origin ("+e+") is allowed":"",o=function(t){return"object"==typeof t&&null!==t&&"message"in t}(t)?" ("+t.message+")":"";r.error(new Error("Error establishing listener - check that the project ID and dataset are correct"+n+o))})),{unsubscribe:function(){return Promise.resolve(a.close())}}}function h(t){return t._id.startsWith("drafts.")?t._id.slice(7):t._id}function m(t,e){var r=l({},t);return delete r._rev,s.applyPatch(r,e)}function b(){return Promise.resolve()}function g(t,e,r){if(!t.s){if(r instanceof w){if(!r.s)return void(r.o=g.bind(null,t,e));1&e&&(e=r.s),r=r.v}if(r&&r.then)return void r.then(g.bind(null,t,e),g.bind(null,t,2));t.s=e,t.v=r;const n=t.o;n&&n(t)}}var w=function(){function t(){}return t.prototype.then=function(e,r){var n=new t,o=this.s;if(o){var a=1&o?e:r;if(a){try{g(n,1,a(this.v))}catch(t){g(n,2,t)}return n}return this}return this.o=function(t){try{var o=t.v;1&t.s?g(n,1,e?e(o):o):r?g(n,1,r(o)):g(n,2,o)}catch(t){g(n,2,t)}},n},t}();function v(t){return t instanceof w&&1&t.s}var k=function(t){var e=t.projectId,r=t.dataset,n=t.token,o=t.documentLimit;try{return Promise.resolve(fetch("https://"+e+".api.sanity.io/v1/data/export/"+r,{credentials:"include",headers:n?{Authorization:"Bearer "+n}:void 0})).then((function(t){function e(e){var r,n,a=function(t){if(!t)throw new Error("Failed to read body from response");var e,r=!1;function n(){r=!0,e&&e.cancel()}return new ReadableStream({start:function(o){e=t.getReader();var a=new TextDecoder,i="";e.read().then((function t(s){try{if(s.done)return r?Promise.resolve():0===(i=i.trim()).length?(o.close(),Promise.resolve()):(o.enqueue(JSON.parse(i)),o.close(),Promise.resolve());for(var c=(i+=a.decode(s.value,{stream:!0})).split("\n"),u=0;u<c.length-1;++u){var p=c[u].trim();if(0!==p.length)try{o.enqueue(JSON.parse(p))}catch(t){return o.error(t),n(),Promise.resolve()}}if(i=c[c.length-1],!e)return Promise.resolve();var l=function(r,n){try{var o=Promise.resolve(e.read()).then((function(e){t(e)}))}catch(t){return n(t)}return o&&o.then?o.then(void 0,n):o}(0,(function(t){o.error(t)}));return Promise.resolve(l&&l.then?l.then((function(){})):void 0)}catch(t){return Promise.reject(t)}})).catch((function(t){return o.error(t)}))},cancel:n})}(t.body),i=a.getReader(),s=[],c=function(t,e){var r;do{var n=t();if(n&&n.then){if(!v(n)){r=!0;break}n=n.v}var o=e();if(v(o)&&(o=o.v),!o)return n}while(!o.then);var a=new w,i=g.bind(null,a,2);return(r?n.then(s):o.then(c)).then(void 0,i),a;function s(r){for(n=r;v(o=e())&&(o=o.v),o;){if(o.then)return void o.then(c).then(void 0,i);if((n=t())&&n.then){if(!v(n))return void n.then(s).then(void 0,i);n=n.v}}g(a,1,n)}function c(r){if(r){do{if((n=t())&&n.then){if(!v(n))return void n.then(s).then(void 0,i);n=n.v}if(v(r=e())&&(r=r.v),!r)return void g(a,1,n)}while(!r.then);r.then(c).then(void 0,i)}else g(a,1,n)}}((function(){return Promise.resolve(i.read()).then((function(t){if(function(t){return!!t&&"error"in t&&"object"==typeof t.error&&null!==t.error&&"description"in t.error&&"string"==typeof t.error.description&&!("_id"in t)}(n=(r=t).value))throw new Error("Error streaming dataset: "+n.error);if(n&&!n._id.startsWith("_.")&&s.push(n),o&&s.length>o)throw i.cancel("Reached document limit"),new Error("Error streaming dataset: Reached limit of "+o+" documents")}))}),(function(){return!r.done}));return c&&c.then?c.then((function(t){return s})):s}var r=function(){if(200!==t.status)return Promise.resolve(t.json()).then((function(t){throw new Error("Error streaming dataset: "+("object"==typeof(e=t)&&"error"in e&&"message"in e?e.message||e.error:"<unknown error>"));var e}))}();return r&&r.then?r.then(e):e()}))}catch(t){return Promise.reject(t)}};Object.defineProperty(e,"groq",{enumerable:!0,get:function(){return u.default}}),e.groqStore=function(t){var e;!function(){var t=["EventSource","ReadableStream","fetch"].filter((function(t){return!(t in window)}));if(t.length>0)throw new Error("Browser not supported. Missing browser APIs: "+t.join(", "))}();var r=null!=(e=t.EventSource)?e:window.EventSource;if(t.token&&r===window.EventSource)throw new Error("When`token` option is used, `EventSource` option must also be provided. EventSource cannot be `window.EventSource`, as it does not support passing a token.");return function(t,e){var r,n=function(t,e){return Promise.resolve(o()).then((function(){var r=i.parse(t,{params:e});return Promise.resolve(i.evaluate(r,{dataset:s,params:e})).then((function(t){return t.get()}))}))},o=function(){try{return r||(r=function(t,e,r){var n=r.getDocuments,o=r.EventSource,a=t.projectId,i=t.dataset,s=t.overlayDrafts,c=t.documentLimit,u=t.token;if(!t.listen)return{unsubscribe:b,loaded:n({projectId:a,dataset:i,documentLimit:c,token:u}).then(S).then(b)};var p,f,d,g,w,v,k=new Map,j=[],A=new Promise((function(t,e){f=t,d=e}));return{unsubscribe:y(o,t,{next:function(t){p?(function(t){if(t.effects&&!t.documentId.startsWith("_.")){var e=k.get(t.documentId)||null;!function(t,e){var r=k.get(t),n=p||[],o=r?n.indexOf(r):-1;-1===o&&e?(n.push(e),k.set(t,e)):e?(n.splice(o,1,e),k.set(t,e)):(n.splice(o,1),k.delete(t))}(t.documentId,m(e,t.effects.apply))}}(t),function(t,e){clearTimeout(v),w!==e.transactionId&&g?(S(g),w=void 0):(w=e.transactionId,g=t.slice()),v=setTimeout(S,25,t.slice())}(p,t)):j.push(t)},open:function(){try{return Promise.resolve(n({projectId:a,dataset:i,documentLimit:c,token:u})).then((function(t){(p=function(t,e){var r=new Map;return e.forEach((function(t){var e=r.get(t.documentId)||[];e.push(t),r.set(t.documentId,e)})),r.forEach((function(e,r){var n=t.find((function(t){return t._id===r}));if(n){var o=!1,a=n;e.forEach((function(t){(o=o||t.previousRev===n._rev)&&t.effects&&(a=m(a,t.effects.apply))}
1)),t.splice(t.indexOf(n),1,a)}else console.warn("Received mutation for missing document %s",r)})),t}(t,j)).forEach((function(t){return k.set(t._id,t)})),S(p),f()}))}catch(t){return Promise.reject(t)}},error:function(t){return d(t)}}).unsubscribe,loaded:A};function S(t){g=void 0,v=void 0,w=void 0,e(s?function(t){var e=new Map;return t.forEach((function(t){var r=e.get(h(t));t._id.startsWith("drafts.")?e.set(h(t),function(t){return l({},t,{_id:h(t)})}(t)):r||e.set(t._id,t)})),Array.from(e.values())}(t):t)}}(t,(function(t){s=t,c()}),e)),Promise.resolve(r.loaded).then((function(){}))}catch(t){return Promise.reject(t)}},s=[],c=a.throttle(t.subscriptionThrottleMs||50,(function(){d.forEach(g)})),d=[];function g(t){return n(t.query,t.params).then((function(e){"previousResult"in t&&p.default(t.previousResult,e)||(t.previousResult=e,t.callback(void 0,e))})).catch((function(e){t.callback(e)}))}return{query:n,getDocument:function(t){return Promise.resolve(o()).then((function(){return n(u.default(f||(e=["*[_id == $id][0]"],r||(r=e.slice(0)),e.raw=r,f=e)),{id:t});var e,r}))},getDocuments:function(t){return Promise.resolve(o()).then((function(){var e=t.map((function(t){return'*[_id == "'+t+'"][0]'})).join(",\n");return n("["+e+"]")}))},subscribe:function(e,r,n){if(!t.listen)throw new Error("Cannot use `subscribe()` without `listen: true`");var o={query:e,params:r,callback:n};d.push(o);var a=!1;return g(o),{unsubscribe:function(){return a||(a=!0,d.splice(d.indexOf(o),1)),Promise.resolve()}}},close:function(){return c.cancel(),r?r.unsubscribe():Promise.resolve()}}}(t,{EventSource:r,getDocuments:k})}},5874:function(t){"use strict";t.exports=function t(e,r){if(e===r)return!0;if(e&&r&&"object"==typeof e&&"object"==typeof r){if(e.constructor!==r.constructor)return!1;var n,o,a;if(Array.isArray(e)){if((n=e.length)!=r.length)return!1;for(o=n;0!==o--;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if((n=(a=Object.keys(e)).length)!==Object.keys(r).length)return!1;for(o=n;0!==o--;)if(!Object.prototype.hasOwnProperty.call(r,a[o]))return!1;for(o=n;0!==o--;){var i=a[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}},7451:function(t,e,r){"use strict";r.r(e),r.d(e,{evaluate:function(){return yt},parse:function(){return Pt}});var n=Object.defineProperty,o=Object.getOwnPropertySymbols,a=Object.prototype.hasOwnProperty,i=Object.prototype.propertyIsEnumerable,s=(t,e,r)=>e in t?n(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,c=(t,e)=>{for(var r in e||(e={}))a.call(e,r)&&s(t,r,e[r]);if(o)for(var r of o(e))i.call(e,r)&&s(t,r,e[r]);return t};class u{constructor(t,e,r){this.allowBoost=!1,this.string=t,this.marks=e,this.index=0,this.parseOptions=r}hasMark(t=0){return this.index+t<this.marks.length}getMark(t=0){return this.marks[this.index+t]}shift(){this.index+=1}process(t){const e=this.marks[this.index];this.shift();const r=t[e.name];if(!r)throw new Error(`Unknown handler: ${e.name}`);return r.call(t,this,e)}processString(){return this.shift(),this.processStringEnd()}processStringEnd(){const t=this.marks[this.index-1],e=this.marks[this.index];return this.shift(),this.string.slice(t.position,e.position)}slice(t){const e=this.marks[this.index].position;return this.string.slice(e,e+t)}}const p=/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d+)?(Z|([-+]\d{2}:\d{2}))$/;function l(t,e){let r=t.toString();for(;r.length<e;)r=`0${r}`;return r}class f{constructor(t){this.pattern=t,this.patternRe=function(t){const e=[];for(const r of t.split("."))"*"===r?e.push("[^.]+"):"**"===r?e.push(".*"):e.push(r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"));return new RegExp(`^${e.join(".")}$`)}(t)}matches(t){return this.patternRe.test(t)}toJSON(){return this.pattern}}class d{constructor(t){this.type="stream",this.generator=t,this.ticker=null,this.isDone=!1,this.data=[]}isArray(){return!0}async get(){const t=[];for await(const e of this)t.push(await e.get());return t}async*[Symbol.asyncIterator](){let t=0;for(;;){for(;t<this.data.length;t++)yield this.data[t];if(this.isDone)return;await this._nextTick()}}_nextTick(){if(this.ticker)return this.ticker;let t;const e=()=>{this.ticker=new Promise((e=>{t=e}))},r=()=>{t(),e()};return e(),(async()=>{for await(const t of this.generator())this.data.push(t),r();this.isDone=!0,r()})(),this.ticker}}class y{constructor(t,e){this.data=t,this.type=e}isArray(){return"array"===this.type}async get(){return this.data}[Symbol.asyncIterator](){if(Array.isArray(this.data))return function*(t){for(const e of t)yield j(e)}(this.data);throw new Error(`Cannot iterate over: ${this.type}`)}}const h=new y(null,"null"),m=new y(!0,"boolean"),b=new y(!1,"boolean");class g{constructor(t){this.date=t}static parseToValue(t){const e=function(t){return p.test(t)?new Date(t):null}(t);return e?new y(new g(e),"datetime"):h}equals(t){return this.date.getTime()==t.date.getTime()}add(t){const e=new Date(this.date.getTime());return e.setTime(e.getTime()+1e3*t),new g(e)}difference(t){return(this.date.getTime()-t.date.getTime())/1e3}compareTo(t){return this.date.getTime()-t.date.getTime()}toString(){return function(t){const e=l(t.getUTCFullYear(),4),r=l(t.getUTCMonth()+1,2),n=l(t.getUTCDate(),2),o=l(t.getUTCHours(),2),a=l(t.getUTCMinutes(),2),i=l(t.getUTCSeconds(),2);let s="";const c=t.getMilliseconds();return 0!=c&&(s=`.${l(c,3)}`),`${e}-${r}-${n}T${o}:${a}:${i}${s}Z`}(this.date)}toJSON(){return this.toString()}}function w(t){return Number.isFinite(t)?new y(t,"number"):h}
1function v(t){return new y(t,"string")}function k(t){return new y(t,"datetime")}function j(t){return(e=t)&&"function"===typeof e.next?new d((async function*(){for await(const e of t)yield j(e)})):null===t||void 0===t?h:new y(t,A(t));var e}function A(t){return null===t||"undefined"===typeof t?"null":Array.isArray(t)?"array":t instanceof f?"path":t instanceof g?"datetime":typeof t}const S={datetime:1,number:2,string:3,boolean:4};function O(t,e){const r=A(t);if(r!==A(e))return null;switch(r){case"number":case"boolean":return t-e;case"string":return t<e?-1:t>e?1:0;case"datetime":return t.compareTo(e);default:return null}}function E(t,e){const r=A(t),n=A(e),o=S[r]||100,a=S[n]||100;if(o!==a)return o-a;let i=O(t,e);return null===i&&(i=0),i}const _=/([^!@#$%^&*(),\\/?";:{}|[\]+<>\s-])+/g,P=/([^!@#$%^&(),\\/?";:{}|[\]+<>\s-])+/g,x=/(\b\.+|\.+\b)/g;function M(t){return t.replace(x,"").match(_)||[]}function C(t){return(t.replace(x,"").match(P)||[]).map((t=>new RegExp(`^${t.slice(0,1024).replace(/\*/g,".*")}$`,"i")))}async function I(t,e){if("string"===t.type)return e(t.data),!0;if(t.isArray()){let r=!0;for await(const n of t)"string"===n.type?e(n.data):r=!1;return r}return!1}const F=1.2;async function T(t,e,r){if("OpCall"===t.type&&"match"===t.op)return async function(t,e,r,n){const o=await n(t,r),a=await n(e,r);let i=[],s=[];await I(o,(t=>{i=i.concat(M(t))}));if(!(await I(a,(t=>{s=s.concat(C(t))}))))return 0;if(0===i.length||0===s.length)return 0;let c=0;for(const u of s){const t=i.reduce(((t,e)=>t+(u.test(e)?1:0)),0);c+=2.2*t/(t+F)}return c}(t.left,t.right,e,r);if("FuncCall"===t.type&&"boost"===t.name){const n=await T(t.args[0],e,r),o=await r(t.args[1],e);return"number"===o.type&&n>0?n+o.data:0}switch(t.type){case"Or":return await T(t.left,e,r)+await T(t.right,e,r);case"And":{const n=await T(t.left,e,r),o=await T(t.right,e,r);return 0===n||0===o?0:n+o}default:{const n=await r(t,e);return"boolean"===n.type&&!0===n.data?1:0}}}async function V(t){if("object"===t.type)return R(t.data);if(t.isArray()){const e=await $(t);if(e.length>0)return e.join("\n\n")}return null}async function $(t,e=[]){for await(const r of t)if("object"===r.type){const t=R(r.data);null!==t&&e.push(t)}else r.isArray()&&await $(r,e);return e}function R(t){if("string"!==typeof t._type)return null;const e=t.children;if(!Array.isArray(e))return null;let r="";for(const n of e)n&&"object"===typeof n&&"string"===typeof n._type&&"span"===n._type&&"string"===typeof n.text&&(r+=n.text);return r}function D(t,e){switch(A(t)){case"array":for(const r of t)if(D(r,e))return!0;break;case"object":if(t._ref)return e.has(t._ref);for(const r of Object.values(t))if(D(r,e))return!0}return!1}const N={coalesce:async function(t,e,r){for(const n of t){const t=await r(n,e);if("null"!==t.type)return t}return h},count:async function(t,e,r){const n=await r(t[0],e);if(!n.isArray())return h;let o=0;for await(const a of n)o++;return w(o)}};N.count.arity=1,N.dateTime=async function(t,e,r){const n=await r(t[0],e);return"datetime"===n.type?n:"string"!==n.type?h:g.parseToValue(n.data)},N.dateTime.arity=1,N.defined=async function(t,e,r){return"null"===(await r(t[0],e)).type?b:m},N.defined.arity=1,N.identity=async function(t,e){return v(e.context.identity)},N.identity.arity=0,N.length=async function(t,e,r){const n=await r(t[0],e);if("string"===n.type)return w(function(t){let e=0;for(let r=0;r<t.length;r++){const n=t.charCodeAt(r);n>=55296&&n<=56319||e++}return e}(n.data));if(n.isArray()){let t=0;for await(const e of n)t++;return w(t)}return h},N.length.arity=1,N.path=async function(t,e,r){const n=await r(t[0],e);return"string"!==n.type?h:(o=new f(n.data),new y(o,"path"));var o},N.path.arity=1,N.string=async function(t,e,r){const n=await r(t[0],e);switch(n.type){case"number":case"string":case"boolean":case"datetime":return v(`${n.data}`);default:return h}},N.string.arity=1,N.references=async function(t,e,r){const n=new Set;for(const o of t){const t=await r(o,e);if("string"===t.type)n.add(t.data);else if(t.isArray())for await(const e of t)"string"===e.type&&n.add(e.data)}if(0===n.size)return b;return D(await e.value.get(),n)?m:b},N.references.arity=t=>t>=1,N.round=async function(t,e,r){const n=await r(t[0],e);if("number"!==n.type)return h;const o=n.data;let a=0;if(2===t.length){const n=await r(t[1],e);if("number"!==n.type||n.data<0||!Number.isInteger(n.data))return h;a=n.data}return w(0===a?o<0?-Math.round(-o):Math.round(o):Number(o.toFixed(a)))}
1,N.round.arity=t=>t>=1&&t<=2,N.now=async function(t,e){return v(e.context.timestamp.toISOString())},N.now.arity=0,N.boost=async function(){throw new Error("unexpected boost call")},N.boost.arity=2;const z={lower:async function(t,e,r){const n=await r(t[0],e);return"string"!==n.type?h:v(n.data.toLowerCase())}};z.lower.arity=1,z.upper=async function(t,e,r){const n=await r(t[0],e);return"string"!==n.type?h:v(n.data.toUpperCase())},z.upper.arity=1,N.lower=z.lower,N.upper=z.upper;const B={text:async function(t,e,r){const n=await r(t[0],e),o=await V(n);return null===o?h:v(o)}};B.text.arity=1;const U={projectId:async function(t,e){return e.context.sanity?v(e.context.sanity.projectId):h},dataset:async function(t,e){return e.context.sanity?v(e.context.sanity.dataset):h}},G={order:async function(t,e,r,n){if(await!0,!t.isArray())return h;const o=[],a=[];let i=0;for(let u of e){let t="asc";"Desc"===u.type?(t="desc",u=u.base):"Asc"===u.type&&(u=u.base),o.push(u),a.push(t),i++}const s=[];let c=0;for await(const u of t){const t=r.createNested(u),e=[await u.get(),c];for(let r=0;r<i;r++){const a=await n(o[r],t);e.push(await a.get())}s.push(e),c++}return s.sort(((t,e)=>{for(let r=0;r<i;r++){let n=E(t[r+2],e[r+2]);if("desc"===a[r]&&(n=-n),0!==n)return n}return t[1]-e[1]})),j(s.map((t=>t[0])))}};G.order.arity=t=>t>=1,G.score=async function(t,e,r,n){if(!t.isArray())return h;const o=[],a=[];for await(const i of t){if("object"!==i.type){o.push(await i.get());continue}const t=r.createNested(i);let s="number"===typeof i.data._score?i.data._score:0;for(const r of e)s+=await T(r,t,n);const c=Object.assign({},i.data,{_score:s});a.push(c)}return a.sort(((t,e)=>e._score-t._score)),j(a)},G.score.arity=t=>t>=1;const q={operation:async function(t,e){const r=null!==e.context.before,n=null!==e.context.after;return r&&n?v("update"):n?v("create"):r?v("delete"):h},changedAny:()=>{throw new Error("not implemented")}};q.changedAny.arity=1,q.changedAny.mode="delta",q.changedOnly=()=>{throw new Error("not implemented")},q.changedOnly.arity=1,q.changedOnly.mode="delta";const K={changedAny:()=>{throw new Error("not implemented")}};K.changedAny.arity=3,K.changedOnly=()=>{throw new Error("not implemented")},K.changedOnly.arity=3;const L={global:N,string:z,pt:B,delta:q,diff:K,sanity:U},W=/^([\t\n\v\f\r \u0085\u00A0]|(\/\/[^\n]*\n))+/,H=/^\d+/,J=/^[a-zA-Z_][a-zA-Z_0-9]*/;function Z(t,e,r){let n,o=e;switch(t[e]){case"+":{let r=Z(t,tt(t,e+1),10);if("error"===r.type)return r;n=[{name:"pos",position:o}].concat(r.marks),e=r.position;break}case"-":{let r=Z(t,tt(t,e+1),8);if("error"===r.type)return r;n=[{name:"neg",position:o}].concat(r.marks),e=r.position;break}case"(":{let r=Z(t,tt(t,e+1),0);if("error"===r.type)return r;switch(t[e=tt(t,r.position)]){case",":for(n=[{name:"tuple",position:o}].concat(r.marks),e=tt(t,e+1);;){if(r=Z(t,e,0),"error"===r.type)return r;if(","!==t[e=tt(t,r.position)])break;e=tt(t,e+1)}if(")"!==t[e])return{type:"error",position:e};e++,n.push({name:"tuple_end",position:e});break;case")":e++,n=[{name:"group",position:o}].concat(r.marks);break;default:return{type:"error",position:e}}break}case"!":{let r=Z(t,tt(t,e+1),10);if("error"===r.type)return r;n=[{name:"not",position:o}].concat(r.marks),e=r.position;break}case"{":{let r=X(t,e);if("error"===r.type)return r;n=r.marks,e=r.position;break}case"[":if(n=[{name:"array",position:e}],"]"!==t[e=tt(t,e+1)])for(;;){"..."===t.slice(e,e+3)&&(n.push({name:"array_splat",position:e}),e=tt(t,e+3));let r=Z(t,e,0);if("error"===r.type)return r;if(n=n.concat(r.marks),","!==t[e=tt(t,e=r.position)])break;if("]"===t[e=tt(t,e+1)])break}if("]"!==t[e])return{type:"error",position:e};e++,n.push({name:"array_end",position:e});break;case"'":case'"':{let r=function(t,e){let r=t[e];const n=[{name:"str",position:e+=1}];t:for(;;e++){if(e>t.length)return{type:"error",position:e};switch(t[e]){case r:n.push({name:"str_end",position:e}),e++;break t;case"\\":n.push({name:"str_pause",position:e}),"u"===t[e+1]?"{"===t[e+2]?(n.push({name:"unicode_hex",position:e+3}),e=t.indexOf("}",e+3),n.push({name:"unicode_hex_end",position:e}),e++):(n.push({name:"unicode_hex",position:e+2}),n.push({name:"unicode_hex_end",position:e+6}),e+=5):(n.push({name:"single_escape",position:e+1}),e+=1),n.push({name:"str_start",position:e+1})}}return{type:"success",marks:n,position:e}}(t,e);if("error"===r.type)return r;n=r.marks,e=r.position;break}case"^":for(e++,n=[];"."===t[e]&&"^"===t[e+1];)n.push({name:"dblparent",position:o}),e+=2;n.push({name:"parent",position:o});break;case"@":n=[{name:"this",position:o}],e++;break;case"*":n=[{name:"everything",position:o}],e++;break;case"$":{let r=et(t,e+1,J);r&&(n=[{name:"param",position:o},{name:"ident",position:o+1},{name:"ident_end",position:e+=1+r}]);break}default:{let r=et(t,e,H);if(r){let a="integer";if("."===t[e+=r]){let r=et(t,e+1,H);r&&(a="float",e+=1+r)}if("e"===t[e]||"E"===t[e]){a="sci","+"!==t[++e]&&"-"!==t[e]||e++;let r=et(t,e,H);if(!r)return{type:"error",position:e};e+=r}n=[{name:a,position:o},{name:a+"_end",position:e}];break}let a=et(t,e,J);if(a){switch(t[e+=a]){case":":case"(":{let r=Y(t,o,e);if("error"===r.type)return r;n=r.marks,e=r.position;break}default:n=[{name:"this_attr",position:o},{name:"ident",position:o},{name:"ident_end",position:e}]}break}}}if(!n)return{type:"error",position:e};let a,i=12;t:for(;;){let s=tt(t,e);if(s===t.length){e=s;break}if(a=Q(t,s),"success"!==a.type)switch(t[s]){case"=":switch(t[s+1]){case">":{if(r>1||i<=1)break t;let a=Z(t,tt(t,s+2),1);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"pair",position:o}),e=a.position,i=1;break}case"=":{if(r>4||i<=4)break t;let a=Z(t,tt(t,s+2),5);if("error"===a.type)return a;n.unshift({name:"comp",position:o}),n.push({name:"op",position:s},{name:"op_end",position:s+2}),n=n.concat(a.marks),e=a.position,i=4;break}default:break t}break;case"+":{if(r>6||i<6)break t;let a=Z(t,tt(t,s+1),7);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"add",position:o}),e=a.position,i=6;break}case"-":{if(r>6||i<6)break t;let a=Z(t,tt(t,s+1),7);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"sub",position:o}),e=a.position,i=6;break}case"*":{if("*"===t[s+1]){if(r>8||i<=8)break t;let a=Z(t,tt(t,s+2),8);
1if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"pow",position:o}),e=a.position,i=8;break}if(r>7||i<7)break t;let a=Z(t,tt(t,s+1),8);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"mul",position:o}),e=a.position,i=7;break}case"/":{if(r>7||i<7)break t;let a=Z(t,tt(t,s+1),8);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"div",position:o}),e=a.position,i=7;break}case"%":{if(r>7||i<7)break t;let a=Z(t,tt(t,s+1),8);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"mod",position:o}),e=a.position,i=7;break}case"<":case">":{if(r>4||i<=4)break t;let a=s+1;"="===t[a]&&a++;let c=Z(t,tt(t,a),5);if("error"===c.type)return c;n.unshift({name:"comp",position:o}),n.push({name:"op",position:s},{name:"op_end",position:a}),n=n.concat(c.marks),e=c.position,i=4;break}case"|":if("|"===t[s+1]){if(r>2||i<2)break t;let a=Z(t,tt(t,s+2),3);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"or",position:o}),e=a.position,i=2}else{if(r>11||i<11)break t;let a=tt(t,s+1),c=et(t,a,J);if(!c)return{type:"error",position:a};if("("===t[e=a+c]||":"===t[e]){let r=Y(t,a,e);if("error"===r.type)return r;n=n.concat(r.marks),n.unshift({name:"pipecall",position:o}),e=r.position,i=11}}break;case"&":{if("&"!=t[s+1])break t;if(r>3||i<3)break t;let a=Z(t,tt(t,s+2),4);if("error"===a.type)return a;n=n.concat(a.marks),n.unshift({name:"and",position:o}),e=a.position,i=3;break}case"!":{if("="!==t[s+1])break t;if(r>4||i<4)break t;let a=Z(t,tt(t,s+2),5);if("error"===a.type)return a;n.unshift({name:"comp",position:o}),n.push({name:"op",position:s},{name:"op_end",position:s+2}),n=n.concat(a.marks),e=a.position,i=4;break}case"d":if("desc"!==t.slice(s,s+4))break t;if(r>4||i<4)break t;n.unshift({name:"desc",position:o}),e=s+4,i=4;break;case"a":if("asc"!==t.slice(s,s+3))break t;if(r>4||i<4)break t;n.unshift({name:"asc",position:o}),e=s+3,i=4;break;default:switch(rt(t,s,J)){case"in":{if(r>4||i<=4)break t;let a=!1;"("===t[e=tt(t,s+2)]&&(a=!0,e=tt(t,e+1));let c=e,u=Z(t,e,5);if("error"===u.type)return u;if("."===t[e=tt(t,u.position)]&&"."===t[e+1]){let r="inc_range";"."===t[e+2]?(r="exc_range",e=tt(t,e+3)):e=tt(t,e+2);let a=Z(t,e,5);if("error"===a.type)return a;n.unshift({name:"in_range",position:o}),n=n.concat({name:r,position:c},u.marks,a.marks),e=a.position}else n.unshift({name:"comp",position:o}),n.push({name:"op",position:s},{name:"op_end",position:s+2}),n=n.concat(u.marks);if(a){if(")"!==t[e=tt(t,e)])return{type:"error",position:e};e++}i=4;break}case"match":{if(r>4||i<=4)break t;let a=Z(t,tt(t,s+5),5);if("error"===a.type)return a;n.unshift({name:"comp",position:o}),n.push({name:"op",position:s},{name:"op_end",position:s+5}),n=n.concat(a.marks),e=a.position,i=4;break}default:break t}}else{for(n.unshift({name:"traverse",position:o});"success"===a.type;)n=n.concat(a.marks),a=Q(t,tt(t,e=a.position));n.push({name:"traversal_end",position:e})}}return{type:"success",marks:n,position:e,failPosition:"error"===(null==a?void 0:a.type)&&a.position}}function Q(t,e){let r=e;switch(t[e]){case".":{let n=e=tt(t,e+1),o=et(t,e,J);return o?{type:"success",marks:[{name:"attr_access",position:r},{name:"ident",position:n},{name:"ident_end",position:e+=o}],position:e}:{type:"error",position:e}}case"-":if(">"!==t[e+1])return{type:"error",position:e};let n=[{name:"deref",position:r}],o=tt(t,e+=2),a=et(t,o,J);return a&&(e=o+a,n.push({name:"deref_attr",position:o},{name:"ident",position:o},{name:"ident_end",position:e})),{type:"success",marks:n,position:e};case"[":{if("]"===t[e=tt(t,e+1)])return{type:"success",marks:[{name:"array_postfix",position:r}],position:e+1};let n=e,o=Z(t,e,0);if("error"===o.type)return o;if("."===t[e=tt(t,o.position)]&&"."===t[e+1]){let a="inc_range";"."===t[e+2]?(a="exc_range",e+=3):e+=2;let i=Z(t,e=tt(t,e),0);return"error"===i.type?i:"]"!==t[e=tt(t,i.position)]?{type:"error",position:e}:{type:"success",marks:[{name:"slice",position:r},{name:a,position:n}].concat(o.marks,i.marks),position:e+1}}return"]"!==t[e]?{type:"error",position:e}:{type:"success",marks:[{name:"square_bracket",position:r}].concat(o.marks),position:e+1}}case"|":if("{"===t[e=tt(t,e+1)]){let n=X(t,e);return"error"===n.type||n.marks.unshift({name:"projection",position:r}),n}break;case"{":{let n=X(t,e);return"error"===n.type||n.marks.unshift({name:"projection",position:r}),n}}return{type:"error",position:e}}function Y(t,e,r){let n=[];if(n.push({name:"func_call",position:e}),":"===t[r]&&":"===t[r+1]){n.push({name:"namespace",position:e}),n.push({name:"ident",position:e},{name:"ident_end",position:r});let o=et(t,r=tt(t,r+2),J);
1if(!o)return{type:"error",position:r};if(n.push({name:"ident",position:r},{name:"ident_end",position:r+o}),"("!==t[r=tt(t,r+o)])return{type:"error",position:r};r++}else n.push({name:"ident",position:e},{name:"ident_end",position:r}),r=tt(t,r+1);let o=r;if(")"!==t[r])for(;;){let e=Z(t,r,0);if("error"===e.type)return e;if(n=n.concat(e.marks),o=e.position,","!==t[r=tt(t,e.position)])break;if(")"===t[r=tt(t,r+1)])break}return")"!==t[r]?{type:"error",position:r}:(n.push({name:"func_args_end",position:o}),{type:"success",marks:n,position:r+1})}function X(t,e){let r=[{name:"object",position:e}];for(e=tt(t,e+1);"}"!==t[e];){let n=e;if("..."===t.slice(e,e+3))if("}"!==t[e=tt(t,e+3)]&&","!==t[e]){let o=Z(t,e,0);if("error"===o.type)return o;r.push({name:"object_splat",position:n}),r=r.concat(o.marks),e=o.position}else r.push({name:"object_splat_this",position:n});else{let o=Z(t,e,0);if("error"===o.type)return o;let a=tt(t,o.position);if("str"===o.marks[0].name&&":"===t[a]){let i=Z(t,tt(t,a+1),0);if("error"===i.type)return i;r.push({name:"object_pair",position:n}),r=r.concat(o.marks,i.marks),e=i.position}else r=r.concat({name:"object_expr",position:e},o.marks),e=o.position}if(","!==t[e=tt(t,e)])break;e=tt(t,e+1)}return"}"!==t[e]?{type:"error",position:e}:(e++,r.push({name:"object_end",position:e}),{type:"success",marks:r,position:e})}function tt(t,e){return e+et(t,e,W)}function et(t,e,r){let n=r.exec(t.slice(e));return n?n[0].length:0}function rt(t,e,r){let n=r.exec(t.slice(e));return n?n[0]:null}function nt(t,e){return r=>e(t(r))}function ot(t){return e=>({type:"Map",base:e,expr:t({type:"This"})})}function at(t,e){if(!e)return{type:"a-a",build:t};switch(e.type){case"a-a":return{type:"a-a",build:nt(t,e.build)};case"a-b":return{type:"a-b",build:nt(t,e.build)};case"b-b":return{type:"a-a",build:nt(t,ot(e.build))};case"b-a":return{type:"a-a",build:nt(t,(r=e.build,t=>({type:"FlatMap",base:t,expr:r({type:"This"})})))};default:throw new Error(`unknown type: ${e.type}`)}var r}function it(t,e){if(!e)return{type:"b-b",build:t};switch(e.type){case"a-a":case"b-a":return{type:"b-a",build:nt(t,e.build)};case"a-b":case"b-b":return{type:"b-b",build:nt(t,e.build)};default:throw new Error(`unknown type: ${e.type}`)}}const st=function(t,e){if("string"===t.type&&"string"===e.type||"boolean"===t.type&&"boolean"===e.type||"null"===t.type&&"null"===e.type||"number"===t.type&&"number"===e.type)return t.data===e.data;if("datetime"===t.type&&"datetime"===e.type)return t.data.equals(e.data);return!1};const ct={"==":function(t,e){return st(t,e)?m:b},"!=":function(t,e){return st(t,e)?b:m},">":function(t,e){if("stream"===t.type||"stream"===e.type)return h;const r=O(t.data,e.data);return null===r?h:r>0?m:b},">=":function(t,e){if("stream"===t.type||"stream"===e.type)return h;const r=O(t.data,e.data);return null===r?h:r>=0?m:b},"<":function(t,e){if("stream"===t.type||"stream"===e.type)return h;const r=O(t.data,e.data);return null===r?h:r<0?m:b},"<=":function(t,e){if("stream"===t.type||"stream"===e.type)return h;const r=O(t.data,e.data);return null===r?h:r<=0?m:b},in:async function(t,e){if("path"===e.type)return"string"!==t.type?h:e.data.matches(t.data)?m:b;if(e.isArray()){for await(const r of e)if(st(t,r))return m;return b}return h},match:async function(t,e){let r=[],n=[];await I(t,(t=>{r=r.concat(M(t))}));const o=await I(e,(t=>{n=n.concat(C(t).map((t=>e=>e.some((e=>t.test(e))))))}));if(!o)return b;const a=function(t,e){return 0!==t.length&&0!==e.length&&e.every((e=>e(t)))}(r,n);return a?m:b},"+":function(t,e){return"datetime"===t.type&&"number"===e.type?k(t.data.add(e.data)):"number"===t.type&&"number"===e.type?w(t.data+e.data):"string"===t.type&&"string"===e.type?v(t.data+e.data):"object"===t.type&&"object"===e.type?j(c(c({},t.data),e.data)):"array"===t.type&&"array"===e.type?j(t.data.concat(e.data)):t.isArray()&&e.isArray()?new d((async function*(){for await(const e of t)yield e;for await(const t of e)yield t})):h},"-":function(t,e){return"datetime"===t.type&&"number"===e.type?k(t.data.add(-e.data)):"datetime"===t.type&&"datetime"===e.type?w(t.data.difference(e.data)):"number"===t.type&&"number"===e.type?w(t.data-e.data):h},"*":ut(((t,e)=>t*e)),"/":ut(((t,e)=>t/e)),"%":ut(((t,e)=>t%e)),"**":ut(((t,e)=>Math.pow(t,e)))};function ut(t){return function(e,r){if("number"===e.type&&"number"===r.type){return w(t(e.data,r.data))}return h}}class pt{constructor(t,e,r,n,o){this.isHidden=!1,this.params=t,this.source=e,this.value=r,this.context=n,this.parent=o}createNested(t){return this.isHidden?new pt(this.params,this.source,t,this.context,this.parent):new pt(this.params,this.source,t,this.context,this)}createHidden(t){const e=this.createNested(t);return e.isHidden=!0,e}}function lt(t,e,r=lt){return(0,dt[t.type])(t,e,r)}function ft(t,e){return"then"in t?t.then(e):e(t)}const dt={This:(t,e)=>e.value,Everything:(t,e)=>e.source,Parameter:({name:t},e)=>j(e.params[t]),Context({key:t},e){if("before"===t||"after"===t){return e.context[t]||h}throw new Error(`unknown context key: ${t}`)}
1,Parent({n:t},e){let r=e;for(let n=0;n<t;n++){if(!r.parent)return h;r=r.parent}return r.value},OpCall({op:t,left:e,right:r},n,o){const a=ct[t];if(!a)throw new Error(`Unknown operator: ${t}`);const i=o(e,n),s=o(r,n);return"then"in i||"then"in s?(async()=>a(await i,await s))():a(i,s)},async Select({alternatives:t,fallback:e},r,n){for(const o of t){const t=await n(o.condition,r);if("boolean"===t.type&&!0===t.data)return n(o.value,r)}return e?n(e,r):h},async InRange({base:t,left:e,right:r,isInclusive:n},o,a){const i=await a(t,o),s=await a(e,o),c=await a(r,o),u=O(await i.get(),await s.get());if(null===u)return h;const p=O(await i.get(),await c.get());return null===p?h:n?u>=0&&p<=0?m:b:u>=0&&p<0?m:b},async Filter({base:t,expr:e},r,n){const o=await n(t,r);return o.isArray()?new d((async function*(){for await(const t of o){const o=r.createNested(t),a=await n(e,o);"boolean"===a.type&&!0===a.data&&(yield t)}})):h},async Projection({base:t,expr:e},r,n){const o=await n(t,r);if("object"!==o.type)return h;return n(e,r.createNested(o))},FuncCall:({func:t,args:e},r,n)=>t(e,r,n),PipeFuncCall:async({func:t,base:e,args:r},n,o)=>t(await o(e,n),r,n,o),async AccessAttribute({base:t,name:e},r,n){let o=r.value;return t&&(o=await n(t,r)),"object"===o.type&&o.data.hasOwnProperty(e)?j(o.data[e]):h},async AccessElement({base:t,index:e},r,n){const o=await n(t,r);if(!o.isArray())return h;const a=await o.get();return j(a[e<0?e+a.length:e])},async Slice({base:t,left:e,right:r,isInclusive:n},o,a){const i=await a(t,o);if(!i.isArray())return h;const s=await i.get();let c=e,u=r;return c<0&&(c=s.length+c),u<0&&(u=s.length+u),n&&u++,c<0&&(c=0),u<0&&(u=0),j(s.slice(c,u))}
1,async Deref({base:t},e,r){const n=await r(t,e);if(!e.source.isArray())return h;if("object"!==n.type)return h;const o=n.data._ref;if("string"!==typeof o)return h;for await(const a of e.source)if("object"===a.type&&o===a.data._id)return a;return h},Value:({value:t})=>j(t),Group:({base:t},e,r)=>r(t,e),async Object({attributes:t},e,r){const n={};for(const o of t){const t=o.type;switch(o.type){case"ObjectAttributeValue":{const t=await r(o.value,e);n[o.name]=await t.get();break}case"ObjectConditionalSplat":{const t=await r(o.condition,e);if("boolean"!==t.type||!1===t.data)continue;const a=await r(o.value,e);"object"===a.type&&Object.assign(n,a.data);break}case"ObjectSplat":{const t=await r(o.value,e);"object"===t.type&&Object.assign(n,t.data);break}default:throw new Error(`Unknown node type: ${t}`)}}return j(n)},Array:({elements:t},e,r)=>new d((async function*(){for(const n of t){const t=await r(n.value,e);if(n.isSplat){if(t.isArray())for await(const e of t)yield e}else yield t}})),Tuple(){throw new Error("tuples can not be evaluated")},async Or({left:t,right:e},r,n){const o=await n(t,r),a=await n(e,r);return"boolean"===o.type&&!0===o.data||"boolean"===a.type&&!0===a.data?m:"boolean"!==o.type||"boolean"!==a.type?h:b},async And({left:t,right:e},r,n){const o=await n(t,r),a=await n(e,r);return"boolean"===o.type&&!1===o.data||"boolean"===a.type&&!1===a.data?b:"boolean"!==o.type||"boolean"!==a.type?h:m},async Not({base:t},e,r){const n=await r(t,e);return"boolean"!==n.type?h:n.data?b:m},Neg:({base:t},e,r)=>ft(r(t,e),(t=>"number"!==t.type?h:w(-t.data))),Pos:({base:t},e,r)=>ft(r(t,e),(t=>"number"!==t.type?h:w(t.data))),Asc:()=>h,Desc:()=>h,async ArrayCoerce({base:t},e,r){const n=await r(t,e);return n.isArray()?n:h},async Map({base:t,expr:e},r,n){const o=await n(t,r);return o.isArray()?new d((async function*(){for await(const t of o){const o=r.createHidden(t);yield await n(e,o)}})):h},async FlatMap({base:t,expr:e},r,n){const o=await n(t,r);return o.isArray()?new d((async function*(){for await(const t of o){const o=r.createHidden(t),a=await n(e,o);if(a.isArray())for await(const t of a)yield t;else yield a}})):h}};function yt(t,e={}){const r=j(e.root),n=j(e.dataset),o=c({},e.params);return lt(t,new pt(o,n,r,{timestamp:e.timestamp||new Date,identity:void 0===e.identity?"me":e.identity,sanity:e.sanity,after:e.after?j(e.after):null,before:e.before?j(e.before):null},null))}const ht=new pt({},h,h,{timestamp:new Date(0),identity:"me",before:null,after:null},null);class mt extends Error{constructor(){super(...arguments),this.name="ConstantEvaluateError"}}function bt(t){try{return gt(t)}catch(e){if("ConstantEvaluateError"===e.name)return null;throw e}}function gt(t){if(!function(t){switch(t.type){case"Group":case"Value":case"Parameter":case"Pos":case"Neg":return!0;case"OpCall":switch(t.op){case"+":case"-":case"*":case"/":case"%":case"**":return!0;default:return!1}default:return!1}}(t))throw new mt("cannot constant evaluate");const e=lt(t,ht,gt);if("then"in e)throw new Error("BUG: constant evaluate should never return a promise");return e}const wt={"'":"'",'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:"\n",r:"\r",t:"\t"};function vt(t){const e=parseInt(t,16);return String.fromCharCode(e)}class kt extends Error{constructor(){super(...arguments),this.name="GroqQueryError"}}const jt={group:t=>({type:"Group",base:t.process(jt)}),everything:()=>({type:"Everything"}),this:()=>({type:"This"}),parent:()=>({type:"Parent",n:1}),dblparent:t=>({type:"Parent",n:t.process(jt).n+1}),traverse(t){const e=t.process(jt),r=[];for(;"traversal_end"!==t.getMark().name;)r.push(t.process(St));t.shift();let n=null;for(let o=r.length-1;o>=0;o--)n=r[o](n);if("Everything"!==e.type&&"Array"!==e.type&&"PipeFuncCall"!==e.type||(n=at((t=>t),n)),null===n)throw new Error("BUG: unexpected empty traversal");return n.build(e)},this_attr(t){const e=t.processString();return"null"===e?{type:"Value",value:null}:"true"===e?{type:"Value",value:!0}:"false"===e?{type:"Value",value:!1}:{type:"AccessAttribute",name:e}},neg:t=>({type:"Neg",base:t.process(jt)}),pos:t=>({type:"Pos",base:t.process(jt)}),add:t=>({type:"OpCall",op:"+",left:t.process(jt),right:t.process(jt)}),sub:t=>({type:"OpCall",op:"-",left:t.process(jt),right:t.process(jt)}),mul:t=>({type:"OpCall",op:"*",left:t.process(jt),right:t.process(jt)}),div:t=>({type:"OpCall",op:"/",left:t.process(jt),right:t.process(jt)}),mod:t=>({type:"OpCall",op:"%",left:t.process(jt),right:t.process(jt)}),pow:t=>({type:"OpCall",op:"**",left:t.process(jt),right:t.process(jt)}),comp(t){const e=t.process(jt);
1return{type:"OpCall",op:t.processString(),left:e,right:t.process(jt)}},in_range(t){const e=t.process(jt),r="inc_range"===t.getMark().name;t.shift();return{type:"InRange",base:e,left:t.process(jt),right:t.process(jt),isInclusive:r}},str(t){let e="";t:for(;t.hasMark();){const r=t.getMark();switch(r.name){case"str_end":e+=t.processStringEnd();break t;case"str_pause":e+=t.processStringEnd();break;case"str_start":t.shift();break;case"single_escape":{const r=t.slice(1);t.shift(),e+=wt[r];break}case"unicode_hex":t.shift(),e+=vt(t.processStringEnd());break;default:throw new Error(`unexpected mark: ${r.name}`)}}return{type:"Value",value:e}},integer(t){const e=t.processStringEnd();return{type:"Value",value:Number(e)}},float(t){const e=t.processStringEnd();return{type:"Value",value:Number(e)}},sci(t){const e=t.processStringEnd();return{type:"Value",value:Number(e)}},object(t){const e=[];for(;"object_end"!==t.getMark().name;)e.push(t.process(At));return t.shift(),{type:"Object",attributes:e}},array(t){const e=[];for(;"array_end"!==t.getMark().name;){let r=!1;"array_splat"===t.getMark().name&&(r=!0,t.shift());const n=t.process(jt);e.push({type:"ArrayElement",value:n,isSplat:r})}return t.shift(),{type:"Array",elements:e}},tuple(t){const e=[];for(;"tuple_end"!==t.getMark().name;)e.push(t.process(jt));return t.shift(),{type:"Tuple",members:e}},func_call(t){let e="global";"namespace"===t.getMark().name&&(t.shift(),e=t.processString());const r=t.processString();if("global"===e&&"select"===r){const e={type:"Select",alternatives:[]};for(;"func_args_end"!==t.getMark().name;)if("pair"===t.getMark().name){if(e.fallback)throw new kt("unexpected argument to select()");t.shift();const r=t.process(jt),n=t.process(jt);e.alternatives.push({type:"SelectAlternative",condition:r,value:n})}else{if(e.fallback)throw new kt("unexpected argument to select()");const r=t.process(jt);e.fallback=r}return t.shift(),e}const n=[];for(;"func_args_end"!==t.getMark().name;)n.push(t.process(jt));if(t.shift(),"global"===e&&("before"===r||"after"===r)&&"delta"===t.parseOptions.mode)return{type:"Context",key:r};if("global"===e&&"boost"===r&&!t.allowBoost)throw new kt("unexpected boost");const o=L[e];if(!o)throw new kt(`Undefined namespace: ${e}`);const a=o[r];if(!a)throw new kt(`Undefined function: ${r}`);if(void 0!==a.arity&&Et(r,a.arity,n.length),void 0!==a.mode&&a.mode!==t.parseOptions.mode)throw new kt(`Undefined function: ${r}`);return{type:"FuncCall",func:a,name:r,args:n}},pipecall(t){const e=t.process(jt);t.shift();let r="global";if("namespace"===t.getMark().name&&(t.shift(),r=t.processString()),"global"!==r)throw new kt(`Undefined namespace: ${r}`);const n=t.processString(),o=[],a=t.allowBoost;for("score"===n&&(t.allowBoost=!0);;){const e=t.getMark().name;if("func_args_end"===e)break;if("order"===n){if("asc"===e){t.shift(),o.push({type:"Asc",base:t.process(jt)});continue}if("desc"===e){t.shift(),o.push({type:"Desc",base:t.process(jt)});continue}}o.push(t.process(jt))}t.shift(),t.allowBoost=a;const i=G[n];if(!i)throw new kt(`Undefined pipe function: ${n}`);return i.arity&&Et(n,i.arity,o.length),{type:"PipeFuncCall",func:i,base:e,name:n,args:o}},pair(t){throw new kt("unexpected =>")},and:t=>({type:"And",left:t.process(jt),right:t.process(jt)}),or:t=>({type:"Or",left:t.process(jt),right:t.process(jt)}),not:t=>({type:"Not",base:t.process(jt)}),asc(t){throw new kt("unexpected asc")},desc(t){throw new kt("unexpected desc")},param(t){const e=t.processString();return t.parseOptions.params&&t.parseOptions.params.hasOwnProperty(e)?{type:"Value",value:t.parseOptions.params[e]}:{type:"Parameter",name:e}}},At={object_expr(t){if("pair"===t.getMark().name){t.shift();return{type:"ObjectConditionalSplat",condition:t.process(jt),value:t.process(jt)}}const e=t.process(jt);return{type:"ObjectAttributeValue",name:Ot(e),value:e}},object_pair(t){const e=t.process(jt);if("Value"!==e.type)throw new Error("name must be string");const r=t.process(jt);return{type:"ObjectAttributeValue",name:e.value,value:r}},object_splat:t=>({type:"ObjectSplat",value:t.process(jt)}),object_splat_this:()=>({type:"ObjectSplat",value:{type:"This"}})},St={square_bracket(t){const e=t.process(jt),r=bt(e);return r&&"number"===r.type?t=>function(t,e){if(!e)return{type:"a-b",build:t};switch(e.type){case"a-a":case"b-a":return{type:"a-a",build:nt(t,e.build)};case"a-b":case"b-b":return{type:"a-b",build:nt(t,e.build)};default:throw new Error(`unknown type: ${e.type}`)}}((t=>({type:"AccessElement",base:t,index:r.data})),t):r&&"string"===r.type?t=>it((t=>({type:"AccessAttribute",base:t,name:r.data})),t):t=>at((t=>({type:"Filter",base:t,expr:e})),t)},slice(t){const e="inc_range"===t.getMark().name;t.shift();const r=t.process(jt),n=t.process(jt),o=bt(r),a=bt(n);if(!o||!a||"number"!==o.type||"number"!==a.type)throw new kt("slicing must use constant numbers");return t=>at((t=>({type:"Slice",base:t,left:o.data,right:a.data,isInclusive:e})),t)},projection(t){const e=t.process(jt);return t=>function(t,e){if(!e)return{type:"b-b",build:t};switch(e.type){case"a-a":return{type:"a-a",build:nt(ot(t),e.build)};case"a-b":return{type:"a-b",build:nt(ot(t),e.build)};case"b-a":return{type:"b-a",build:nt(t,e.build)};case"b-b":return{type:"b-b",build:nt(t,e.build)};default:throw new Error(`unknown type: ${e.type}`)}}((t=>({type:"Projection",base:t,expr:e})),t)},attr_access(t){const e=t.processString();return t=>it((t=>({type:"AccessAttribute",base:t,name:e})),t)},deref(t){let e=null;"deref_attr"===t.getMark().name&&(t.shift(),e=t.processString());return t=>it((t=>(t=>e?{type:"AccessAttribute",base:t,name:e}:t)({type:"Deref",base:t})),t)},array_postfix:t=>t=>at((t=>({type:"ArrayCoerce",base:t})),t)};function Ot(t){if("AccessAttribute"===t.type&&!t.base)return t.name;if("Deref"===t.type||"Map"===t.type||"Projection"===t.type||"Slice"===t.type||"Filter"===t.type||"AccessElement"===t.type||"ArrayCoerce"===t.type)return Ot(t.base);throw new kt(`Cannot determine property key for type: ${t.type}`)}function Et(t,e,r){if("number"===typeof e){if(r!==e)throw new kt(`Incorrect number of arguments to function ${t}(). Expected ${e}, got ${r}.`)}else if(e&&!e(r))throw new kt(`Incorrect number of arguments to function ${t}().`)}
1class _t extends Error{constructor(t){super(`Syntax error in GROQ query at position ${t}`),this.name="GroqSyntaxError",this.position=t}}function Pt(t,e={}){const r=function(t){let e=0;e=tt(t,e);let r=Z(t,e,0);return"error"===r.type?r:(e=tt(t,r.position),e!==t.length?(r.failPosition&&(e=r.failPosition-1),{type:"error",position:e}):(delete r.position,delete r.failPosition,r))}(t);if("error"===r.type)throw new _t(r.position);return new u(t,r.marks,e).process(jt)}},9932:function(t,e,r){"use strict";r.r(e),r.d(e,{applyPatch:function(){return m},incremental:function(){return n}});var n={};r.r(n),r.d(n,{applyPatch:function(){return y},getType:function(){return f},rebaseValue:function(){return d},unwrap:function(){return l},wrap:function(){return p}});var o=["Value","Copy","Blank","ReturnIntoArray","ReturnIntoObject","ReturnIntoObjectSameKey","PushField","PushElement","PushParent","Pop","PushFieldCopy","PushFieldBlank","PushElementCopy","PushElementBlank","ReturnIntoObjectPop","ReturnIntoObjectSameKeyPop","ReturnIntoArrayPop","ObjectSetFieldValue","ObjectCopyField","ObjectDeleteField","ArrayAppendValue","ArrayAppendSlice","StringAppendString","StringAppendSlice"],a=function(){function t(t,e,r){this.i=0,this.inputStack=[],this.outputStack=[],this.model=t,this.root=e,this.patch=r}return t.prototype.read=function(){return this.patch[this.i++]},t.prototype.process=function(){for(this.inputStack.push({value:this.root}),this.outputStack.push({value:this.root});this.i<this.patch.length;){var t=this.read(),e=o[t];if(!e)throw new Error("Unknown opcode: "+t);this["process"+e].apply(this)}var r=this.outputStack.pop();return this.finalizeOutput(r)},t.prototype.inputEntry=function(){return this.inputStack[this.inputStack.length-1]},t.prototype.inputKey=function(t,e){return t.keys||(t.keys=this.model.objectGetKeys(t.value).sort()),t.keys[e]},t.prototype.outputEntry=function(){return this.outputStack[this.outputStack.length-1]},t.prototype.outputArray=function(){var t=this.outputEntry();return t.writeValue||(t.writeValue=this.model.copyArray(t.value)),t.writeValue},t.prototype.outputObject=function(){var t=this.outputEntry();return t.writeValue||(t.writeValue=this.model.copyObject(t.value)),t.writeValue},t.prototype.outputString=function(){var t=this.outputEntry();return t.writeValue||(t.writeValue=this.model.copyString(t.value)),t.writeValue},t.prototype.finalizeOutput=function(t){return t.writeValue?this.model.finalize(t.writeValue):t.value},t.prototype.processValue=function(){var t=this.model.wrap(this.read());this.outputStack.push({value:t})},t.prototype.processCopy=function(){var t=this.inputEntry();this.outputStack.push({value:t.value})},t.prototype.processBlank=function(){this.outputStack.push({value:null})},t.prototype.processReturnIntoArray=function(){var t=this.outputStack.pop(),e=this.finalizeOutput(t),r=this.outputArray();this.model.arrayAppendValue(r,e)},t.prototype.processReturnIntoObject=function(){var t=this.read(),e=this.outputStack.pop(),r=this.finalizeOutput(e);r=this.model.markChanged(r);var n=this.outputObject();this.model.objectSetField(n,t,r)},t.prototype.processReturnIntoObjectSameKey=function(){var t=this.inputEntry(),e=this.outputStack.pop(),r=this.finalizeOutput(e),n=this.outputObject();this.model.objectSetField(n,t.key,r)},t.prototype.processPushField=function(){var t=this.read(),e=this.inputEntry(),r=this.inputKey(e,t),n=this.model.objectGetField(e.value,r);this.inputStack.push({value:n,key:r})},t.prototype.processPushElement=function(){var t=this.read(),e=this.inputEntry(),r=this.model.arrayGetElement(e.value,t);this.inputStack.push({value:r})},t.prototype.processPop=function(){this.inputStack.pop()},t.prototype.processPushFieldCopy=function(){this.processPushField(),this.processCopy()},t.prototype.processPushFieldBlank=function(){this.processPushField(),this.processBlank()},t.prototype.processPushElementCopy=function(){this.processPushElement(),this.processCopy()},t.prototype.processPushElementBlank=function(){this.processPushElement(),this.processBlank()},t.prototype.processReturnIntoObjectPop=function(){this.processReturnIntoObject(),this.processPop()},t.prototype.processReturnIntoObjectSameKeyPop=function(){this.processReturnIntoObjectSameKey(),this.processPop()},t.prototype.processReturnIntoArrayPop=function(){this.processReturnIntoArray(),this.processPop()},t.prototype.processObjectSetFieldValue=function(){this.processValue(),this.processReturnIntoObject()},t.prototype.processObjectCopyField=function(){this.processPushField(),this.processCopy(),this.processReturnIntoObjectSameKey(),this.processPop()},t.prototype.processObjectDeleteField=function(){var t=this.read(),e=this.inputEntry(),r=this.inputKey(e,t),n=this.outputObject();this.model.objectDeleteField(n,r)},t.prototype.processArrayAppendValue=function(){var t=this.model.wrap(this.read()),e=this.outputArray();this.model.arrayAppendValue(e,t)},t.prototype.processArrayAppendSlice=function(){var t=this.read(),e=this.read(),r=this.outputArray(),n=this.inputEntry().value;this.model.arrayAppendSlice(r,n,t,e)},t.prototype.processStringAppendString=function(){var t=this.model.wrap(this.read()),e=this.outputString();this.model.stringAppendValue(e,t)},t.prototype.processStringAppendSlice=function(){var t=this.read(),e=this.read(),r=this.outputString(),n=this.inputEntry().value;this.model.stringAppendSlice(r,n,t,e)},t}();function i(t){return t>>16?4:t>>11?3:t>>7?2:1}function s(t){for(var e=0,r=0;r<t.length;r++){var n=i(t.codePointAt(r));4==n&&r++,e+=n}return e}function c(t,e,r){void 0===r&&(r=0);var n=r,o=0;for(o=r;n<e;o++){var a=i(t.codePointAt(o));4===a&&o++,n+=a}return o}var u=function(){function t(t){this.meta=t}return t.prototype.wrap=function(t){return this.wrapWithMeta(t,this.meta,this.meta)},t.prototype.wrapWithMeta=function(t,e,r){return void 0===r&&(r=this.meta),{data:t,startMeta:e,endMeta:r}},t.prototype.asObject=function(t){if(!t.content){for(var e={},r=0,n=Object.entries(t.data);r<n.length;r++){var o=n[r],a=o[0],i=o[1];e[a]=this.wrapWithMeta(i,t.startMeta)}t.content={type:"object",fields:e}}return t.content},t.prototype.asArray=function(t){var e=this;if(!t.content){var r=t.data.map((function(r){return e.wrapWithMeta(r,t.startMeta)})),n=r.map((function(){return e.meta}
1));t.content={type:"array",elements:r,metas:n}}return t.content},t.prototype.asString=function(t){if(!t.content){var e=t.data,r={value:e,utf8size:s(e),uses:[],startMeta:t.startMeta,endMeta:t.endMeta};t.content=this.stringFromParts([r])}return t.content},t.prototype.stringFromParts=function(t){for(var e={type:"string",parts:t},r=0,n=t;r<n.length;r++){n[r].uses.push(e)}return e},t.prototype.objectGetKeys=function(t){return t.content?Object.keys(t.content.fields):Object.keys(t.data)},t.prototype.objectGetField=function(t,e){return this.asObject(t).fields[e]},t.prototype.arrayGetElement=function(t,e){return this.asArray(t).elements[e]},t.prototype.finalize=function(t){return this.updateEndMeta(t),{content:t,startMeta:this.meta,endMeta:this.meta}},t.prototype.markChanged=function(t){return this.wrap(l(t))},t.prototype.updateEndMeta=function(t){if("string"==t.type)for(var e=0,r=t.parts;e<r.length;e++){r[e].endMeta=this.meta}else if("array"===t.type)for(var n=0,o=t.elements;n<o.length;n++){(s=o[n]).content&&s.endMeta!==this.meta&&this.updateEndMeta(s.content),s.endMeta=this.meta}else for(var a=0,i=Object.values(t.fields);a<i.length;a++){var s;(s=i[a]).content&&s.endMeta!==this.meta&&this.updateEndMeta(s.content),s.endMeta=this.meta}},t.prototype.copyString=function(t){if(t){var e=this.asString(t);return this.stringFromParts(e.parts.slice())}return{type:"string",parts:[]}},t.prototype.copyObject=function(t){var e={type:"object",fields:{}};if(t){var r=this.asObject(t);Object.assign(e.fields,r.fields)}return e},t.prototype.copyArray=function(t){var e=t?this.asArray(t):null;return{type:"array",elements:e?e.elements:[],metas:e?e.metas:[]}},t.prototype.objectSetField=function(t,e,r){t.fields[e]=r},t.prototype.objectDeleteField=function(t,e){delete t.fields[e]},t.prototype.arrayAppendValue=function(t,e){t.elements.push(e),t.metas.push(this.meta)},t.prototype.arrayAppendSlice=function(t,e,r,n){var o,a,i=this.asArray(e),s=i.elements.length===r;if((o=t.elements).push.apply(o,i.elements.slice(r,n)),s)(a=t.metas).push.apply(a,i.metas.slice(r,n));else for(var c=r;c<n;c++)t.metas.push(this.meta)},t.prototype.stringAppendValue=function(t,e){for(var r=0,n=this.asString(e).parts;r<n.length;r++){var o=n[r];this.stringAppendPart(t,o)}},t.prototype.stringAppendPart=function(t,e){t.parts.push(e),e.uses.push(t)},t.prototype.resolveStringPart=function(t,e,r){if(0===r)return e;for(var n=e;n<t.parts.length;n++){var o=t.parts[n];if(r===o.utf8size)return n+1;if(r<o.utf8size)return this.splitString(o,r),n+1;r-=o.utf8size}throw new Error("splitting string out of bounds")},t.prototype.splitString=function(t,e){var r,n=e,o=t.utf8size-n;if(t.utf8size!==t.value.length){var a=0;for(e=0;a<n;e++){var s=i(t.value.codePointAt(e));4===s&&e++,a+=s}}r=t.value.slice(0,e);var c={value:t.value.slice(e),utf8size:o,uses:t.uses.slice(),startMeta:t.startMeta,endMeta:t.endMeta};t.value=r,t.utf8size=n;for(var u=0,p=t.uses;u<p.length;u++){var l=p[u],f=l.parts.indexOf(t);if(-1===f)throw new Error("bug: mismatch between string parts and use.");l.parts.splice(f+1,0,c)}},t.prototype.stringAppendSlice=function(t,e,r,n){for(var o=this.asString(e),a=this.resolveStringPart(o,0,r),i=this.resolveStringPart(o,a,n-r),s=a;s<i;s++){var c=o.parts[s];this.stringAppendPart(t,c)}},t}();function p(t,e){return{data:t,startMeta:e,endMeta:e}}function l(t){if("undefined"!==typeof t.data)return t.data;var e,r=t.content;switch(r.type){case"string":e=r.parts.map((function(t){return t.value})).join("");break;case"array":e=r.elements.map((function(t){return l(t)}));break;case"object":e={};for(var n=0,o=Object.entries(r.fields);n<o.length;n++){var a=o[n],i=a[0],s=a[1];e[i]=l(s)}}return t.data=e,e}function f(t){return t.content?t.content.type:Array.isArray(t.data)?"array":null===t.data?"null":typeof t.data}function d(t,e){var r=f(t);if(r!==f(e))return e;var n=new u(t.endMeta),o=new u(e.endMeta);switch(r){case"object":for(var a=n.asObject(t),c=o.asObject(e),p=0,y=Object.keys(a.fields).length,h=Object.keys(c.fields).length,m=0,b=Object.entries(c.fields);m<b.length;m++){var g=b[m],w=g[0],v=g[1],k=a.fields[w];k&&(c.fields[w]=d(k,v),c.fields[w]===k&&p++)}return y===h&&y===p?t:e;
1case"array":var j=n.asArray(t),A=o.asArray(e);if(j.elements.length!==A.elements.length)break;for(var S=0,O=0;O<A.elements.length;O++)A.elements[O]=d(j.elements[O],A.elements[O]),A.elements[O]!==j.elements[O]&&S++;return 0===S?t:e;case"null":case"boolean":case"number":if(l(t)===l(e))return t;break;case"string":var E=l(t),_=l(e);if(E===_)return t;var P=o.copyString(null),x=function(t,e){for(var r=Math.min(t.length,e.length),n=0,o=0;o<r;){var a=t.codePointAt(o);if(a!==e.codePointAt(o))return n;var s=i(a);n+=s,o+=4===s?2:1}return n}(E,_),M=function(t,e,r){void 0===r&&(r=0);for(var n=Math.min(t.length,e.length)-r,o=0,a=0;a<n;){var s=t.codePointAt(t.length-1-a);if(s!==e.codePointAt(e.length-1-a))return o;var c=i(s);o+=c,a+=4===c?2:1}return o}(E,_,x),C=s(_),I=s(E);0<x&&o.stringAppendSlice(P,t,0,x),x<C-M&&o.stringAppendSlice(P,e,x,C-M),I-M<I&&o.stringAppendSlice(P,t,I-M,I);var F=o.finalize(P);if(l(F)!==_)throw new Error("incorrect string rebase");return F}return e}function y(t,e,r){var n=new u(r);return new a(n,t,e).process()}var h={wrap:function(t){return t},finalize:function(t){return Array.isArray(t)?t:t.data},markChanged:function(t){return t},objectGetKeys:function(t){return Object.keys(t)},objectGetField:function(t,e){return t[e]},arrayGetElement:function(t,e){return t[e]},copyObject:function(t){var e={type:"object",data:{}};if(null!==t)for(var r=0,n=Object.entries(t);r<n.length;r++){var o=n[r],a=o[0],i=o[1];e.data[a]=i}return e},copyArray:function(t){return null===t?[]:t.slice()},copyString:function(t){return{type:"string",data:null===t?"":t}},objectSetField:function(t,e,r){t.data[e]=r},objectDeleteField:function(t,e){delete t.data[e]},arrayAppendValue:function(t,e){t.push(e)},arrayAppendSlice:function(t,e,r,n){t.push.apply(t,e.slice(r,n))},stringAppendSlice:function(t,e,r,n){var o=e,a=c(o,r),i=c(o,n,a);t.data+=o.slice(a,i)},stringAppendValue:function(t,e){t.data+=e}};function m(t,e){return new a(h,t,e).process()}},4636:function(t,e){"use strict";function r(t,e,r){var n,o=r||{},a=o.noTrailing,i=void 0!==a&&a,s=o.noLeading,c=void 0!==s&&s,u=o.debounceMode,p=void 0===u?void 0:u,l=!1,f=0;function d(){n&&clearTimeout(n)}function y(){for(var r=arguments.length,o=new Array(r),a=0;a<r;a++)o[a]=arguments[a];var s=this,u=Date.now()-f;function y(){f=Date.now(),e.apply(s,o)}function h(){n=void 0}l||(c||!p||n||y(),d(),void 0===p&&u>t?c?(f=Date.now(),i||(n=setTimeout(p?h:y,t))):y():!0!==i&&(n=setTimeout(p?h:y,void 0===p?t-u:t)))}return y.cancel=function(t){var e=(t||{}).upcomingOnly,r=void 0!==e&&e;d(),l=!r},y}Object.defineProperty(e,"__esModule",{value:!0}),e.debounce=function(t,e,n){var o=(n||{}).atBegin;return r(t,e,{debounceMode:!1!==(void 0!==o&&o)})},e.throttle=r}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.