1import{o as jt,s as Rt,p as qe,q as It,v as pt,w as mt,i as x,x as Et,y as At,j as c,z as Nt,B as gt}from"./index-k9Hj-c9V.js";import{u as qt}from"./useQuery-C-qDlHWK.js";import{u as xt}from"./useServerFn-kKeklcvt.js";import{s as Ot,o as Lt,n as Oe}from"./schemas-BLNHgrHt.js";import{c as Pt}from"./createServerFn-DhqEOX7P.js";var Dt=class extends jt{#t;#a=void 0;#e;#r;constructor(r,s){super(),this.#t=r,this.setOptions(s),this.bindMethods(),this.#n()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(r){const s=this.options;this.options=this.#t.defaultMutationOptions(r),Rt(this.options,s)||this.#t.getMutationCache().notify({type:"observerOptionsUpdated",mutation:this.#e,observer:this}),s?.mutationKey&&this.options.mutationKey&&qe(s.mutationKey)!==qe(this.options.mutationKey)?this.reset():this.#e?.state.status==="pending"&&this.#e.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#e?.removeObserver(this)}onMutationUpdate(r){this.#n(),this.#s(r)}getCurrentResult(){return this.#a}reset(){this.#e?.removeObserver(this),this.#e=void 0,this.#n(),this.#s()}mutate(r,s){return this.#r=s,this.#e?.removeObserver(this),this.#e=this.#t.getMutationCache().build(this.#t,this.options),this.#e.addObserver(this),this.#e.execute(r)}#n(){const r=this.#e?.state??It();this.#a={...r,isPending:r.status==="pending",isSuccess:r.status==="success",isError:r.status==="error",isIdle:r.status==="idle",mutate:this.mutate,reset:this.reset}}#s(r){pt.batch(()=>{if(this.#r&&this.hasListeners()){const s=this.#a.variables,e=this.#a.context,n={client:this.#t,meta:this.options.meta,mutationKey:this.options.mutationKey};if(r?.type==="success"){try{this.#r.onSuccess?.(r.data,s,e,n)}catch(a){Promise.reject(a)}try{this.#r.onSettled?.(r.data,null,s,e,n)}catch(a){Promise.reject(a)}}else if(r?.type==="error"){try{this.#r.onError?.(r.error,s,e,n)}catch(a){Promise.reject(a)}try{this.#r.onSettled?.(void 0,r.error,s,e,n)}catch(a){Promise.reject(a)}}}this.listeners.forEach(s=>{s(this.#a)})})}};function Bt(r,s){const e=mt(),[n]=x.useState(()=>new Dt(e,r));x.useEffect(()=>{n.setOptions(r)},[n,r]);
1const a=x.useSyncExternalStore(x.useCallback(l=>n.subscribe(pt.batchCalls(l)),[n]),()=>n.getCurrentResult(),()=>n.getCurrentResult()),d=x.useCallback((l,t)=>{n.mutate(l,t).catch(Et)},[n]);if(a.error&&At(n.options.throwOnError,[a.error]))throw a.error;return{...a,mutate:d,mutateAsync:a.mutate}}const R=24,_e=140,$t=60,Ut=5,Ft=8,Kt={U:"D",D:"U",L:"R",R:"L"};function bt(r){return r.x===0&&r.y===0||r.x===R-1&&r.y===0||r.x===0&&r.y===R-1||r.x===R-1&&r.y===R-1}function zt(r,s){const e=s<7?1:0;for(;;){const n={x:e+Math.floor(Math.random()*(R-e*2)),y:e+Math.floor(Math.random()*(R-e*2))};if(!bt(n)&&!r.some(a=>a.x===n.x&&a.y===n.y))return n}}function Ht(r){for(;;){const s={x:Math.floor(Math.random()*R),y:Math.floor(Math.random()*R)},e=s.x>=7&&s.x<=16&&s.y>=8&&s.y<=15;if(!bt(s)&&!e&&!r.some(n=>n.x===s.x&&n.y===s.y))return s}}function Gt({onGameOver:r,paused:s}){const e=x.useRef(null),n=x.useRef(null),[a,d]=x.useState("idle"),[l,t]=x.useState(0),h=x.useRef([]),o=x.useRef("R"),i=x.useRef(null),f=x.useRef({x:-1,y:-1}),m=x.useRef(0),b=x.useRef(_e),v=x.useRef(0),w=x.useRef(null),A=x.useRef("idle"),S=x.useRef(0),Y=x.useRef(null),X=x.useRef(!1);A.current=a;const T=x.useCallback(()=>{const P=Math.floor(R/2);h.current=[{x:P-2,y:P},{x:P-1,y:P},{x:P,y:P}],o.current="R",i.current=null,f.current={x:-1,y:-1},b.current=_e,m.current=0,S.current=0,t(0),X.current=!1},[]),Z=x.useCallback(()=>{T(),f.current=Ht(h.current),v.current=performance.now(),d("playing")},[T]),Q=x.useCallback(()=>{m.current=0,d("playing")},[]),D=x.useCallback(()=>{const P=e.current;if(!P)return;const p=P.getContext("2d");if(!p)return;const g=P.width,u=g/R,M=p.createLinearGradient(0,0,0,g);M.addColorStop(0,"#0d1628"),M.addColorStop(1,"#070d1a"),p.fillStyle=M,p.fillRect(0,0,g,g),p.fillStyle="rgba(148,163,184,0.07)";for(let j=0;j<R;j++)for(let _=0;_<R;_++)p.fillRect(j*u+u/2-.5,_*u+u/2-.5,1,1);const W=f.current;if(W.x>=0&&W.y>=0){const j=W.x*u+u/2,_=W.y*u+u/2,N=p.createRadialGradient(j,_,0,j,_,u*1.2);N.addColorStop(0,"rgba(255,20,147,0.5)"),N.addColorStop(1,"rgba(255,20,147,0)"),p.fillStyle=N,p.fillRect(W.x*u-u,W.y*u-u,u*3,u*3);const B=j-u*.14,H=_-u*.38,V=_+u*.38;p.strokeStyle="#c9cdd4",p.lineWidth=Math.max(1,u*.05),p.lineCap="round",p.beginPath(),p.moveTo(B,H),p.lineTo(B,V),p.stroke();const be=u*.62,J=u*.44,L=B,k=H;p.fillStyle="#ff2d95",p.fillRect(L,k,be,J),p.fillStyle="rgba(0,0,0,0.18)",p.fillRect(L,k,Math.max(1,u*.06),J),p.fillStyle="rgba(255,255,255,0.22)",p.fillRect(L+u*.08,k+u*.04,be-u*.16,u*.06)}const C=h.current,I=o.current,Pe=u*.28;for(let j=0;j<C.length;j++){const _=C[j],N=j===C.length-1,B=1.5,H=_.x*u+B,V=_.y*u+B,be=u-B*2,J=u-B*2,L=p.createLinearGradient(H,V,H,V+J);if(N)L.addColorStop(0,"#4ade80"),L.addColorStop(1,"#16a34a");
1else{const k=j/Math.max(1,C.length-1);L.addColorStop(0,`rgba(34,197,94,${.55+k*.4})`),L.addColorStop(1,`rgba(22,163,74,${.55+k*.4})`)}if(p.fillStyle=L,_t(p,H,V,be,J,Pe),p.fill(),N){const k=_.x*u+u/2,q=_.y*u+u/2,$=u*.18,U=u*.22;let ee=k,te=q,re=k,ae=q;I==="R"?(ee=k+U,te=q-$,re=k+U,ae=q+$):I==="L"?(ee=k-U,te=q-$,re=k-U,ae=q+$):I==="U"?(ee=k-$,te=q-U,re=k+$,ae=q-U):(ee=k-$,te=q+U,re=k+$,ae=q+U),p.fillStyle="#0b1220",p.beginPath(),p.arc(ee,te,u*.07,0,Math.PI*2),p.arc(re,ae,u*.07,0,Math.PI*2),p.fill()}}},[]);function _t(P,p,g,u,M,W){const C=Math.min(W,u/2,M/2);P.beginPath(),P.moveTo(p+C,g),P.arcTo(p+u,g,p+u,g+M,C),P.arcTo(p+u,g+M,p,g+M,C),P.arcTo(p,g+M,p,g,C),P.arcTo(p,g,p+u,g,C),P.closePath()}return x.useEffect(()=>{function P(g){if(w.current=requestAnimationFrame(P),A.current!=="playing"){D();return}if(s){D();return}if(g-m.current<b.current){D();return}m.current=g,i.current&&Kt[i.current]!==o.current&&(o.current=i.current),i.current=null;const u=h.current,M=u[u.length-1],W=o.current,C=M.x+(W==="L"?-1:W==="R"?1:0),I=M.y+(W==="U"?-1:W==="D"?1:0);if(C<0||I<0||C>=R||I>=R){if(!X.current){X.current=!0,d("warning"),D();return}p();return}const Pe=C===f.current.x&&I===f.current.y;if((Pe?u:u.slice(1)).some(N=>N.x===C&&N.y===I)){p();return}const _={x:C,y:I};if(Pe){u.push(_),S.current+=1,t(S.current);const N=Math.floor(S.current/Ut);b.current=Math.max($t,_e-N*Ft),f.current=zt(u,S.current)}else u.shift(),u.push(_);D()}function p(){const g=Math.round(performance.now()-v.current);d("over"),r({score:S.current,durationMs:g})}return w.current=requestAnimationFrame(P),()=>{w.current!=null&&cancelAnimationFrame(w.current)}},[D,r,s]),x.useEffect(()=>{const P=e.current,p=n.current;if(!P||!p)return;function g(){if(!P||!p)return;const M=p.clientWidth,W=window.devicePixelRatio||1;P.width=M*W,P.height=M*W,P.style.width=`${M}px`,P.style.height=`${M}px`,D()}g();const u=new ResizeObserver(g);return u.observe(p),()=>u.disconnect()},[D]),x.useEffect(()=>{function P(p){const g=p.key;let u=null;g==="ArrowUp"||g==="w"||g==="W"?u="U":g==="ArrowDown"||g==="s"||g==="S"?u="D":g==="ArrowLeft"||g==="a"||g==="A"?u="L":(g==="ArrowRight"||g==="d"||g==="D")&&(u="R"),u&&(i.current=u,A.current==="warning"&&Q(),["ArrowUp","ArrowDown","ArrowLeft","ArrowRight"," "].includes(g)&&p.preventDefault())}return window.addEventListener("keydown",P),()=>window.removeEventListener("keydown",P)},[Q]),x.useEffect(()=>{const P=e.current;if(!P)return;function p(u){const M=u.touches[0];Y.current={x:M.clientX,y:M.clientY}}function g(u){const M=Y.current;if(!M)return;const W=u.changedTouches[0],C=W.clientX-M.x,I=W.clientY-M.y;Y.current=null,!(Math.abs(C)<20&&Math.abs(I)<20)&&(Math.abs(C)>Math.abs(I)?i.current=C>0?"R":"L":i.current=I>0?"D":"U",A.current==="warning"&&Q())}return P.addEventListener("touchstart",p,{passive:!0}),P.addEventListener("touchend",g,{passive:!0}),()=>{P.removeEventListener("touchstart",p),P.removeEventListener("touchend",g)}},[Q]),c.jsx("div",{className:"relative rounded-[28px] bg-gradient-to-b from-white/10 to-white/[0.02] p-[1.5px] shadow-[0_30px_80px_-30px_rgba(16,185,129,0.25)]",children:c.jsxs("div",{className:"rounded-[26px] bg-[#070d1a] p-3 sm:p-4",children:[c.jsxs("div",{className:"mb-3 flex items-center justify-between gap-3",children:[c.jsxs("div",{className:"inline-flex items-center gap-2 rounded-full border border-white/10 bg-white/[0.04] px-3 py-1.5",children:[c.jsx("span",{className:"text-[10px] font-semibold uppercase tracking-[0.18em] text-white/50",children:"Score"}),c.jsx("span",{className:"tabular-nums text-base font-semibold text-emerald-400",children:l})]}),a!=="playing"?c.jsx("button",{onClick:a==="warning"?Q:Z,className:"rounded-full bg-emerald-500 px-4 py-1.5 font-display text-sm font-semibold text-black transition hover:bg-emerald-400",children:a==="over"?"Play again":a==="warning"?"Continue â":"Start â"}):c.jsx("span",{className:"text-[10px] uppercase tracking-[0.18em] text-white/35",children:"Playing"})]}),c.jsxs("div",{className:"relative",ref:n,children:[c.jsx("canvas",{ref:e,className:"block w-full rounded-xl border border-white/10 bg-[#0b1220] touch-none","aria-label":"Snake game"}),a==="idle"&&c.jsx("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center rounded-xl bg-black/55 px-6",children:c.jsxs("div",{className:"max-w-xs text-center text-white",children:[c.jsx("div",{className:"text-xs uppercase tracking-[0.18em] text-white/55",children:"Arrow keys / WASD · swipe on mobile"}),c.jsx("div",{className:"mt-3 text-xs text-emerald-300/90",children:"Press Start, then any arrow to go."})]})}),a==="warning"&&c.jsx("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center rounded-xl bg-black/60 px-6",children:c.jsxs("div",{className:"max-w-xs text-center text-white",children:[c.jsx("div",{className:"font-display text-xl text-amber-300",children:"Oh no!"}),c.jsx("div",{className:"mt-2 text-sm text-white/90",children:"Use your arrow keys or swipe to stay inside the parcel boundary!"}),c.jsx("div",{className:"mt-3 text-xs uppercase tracking-[0.18em] text-white/55",children:"Press an arrow / swipe to keep playing"})]})}),a==="over"&&c.jsx("div",{className:"pointer-events-none absolute inset-0 flex items-center justify-center rounded-xl bg-black/55",children:c.jsxs("div",{className:"text-center text-white",children:[c.jsx("div",{className:"font-display text-2xl",children:"Game over"}),c.jsxs("div",{className:"mt-1 text-xs text-white/70",children:["Final score ",l]})]})})]})]})})}var K={},O={},E={},Le;function F(){if(Le)return E;Le=1,Object.defineProperty(E,"__esModule",{value:!0}),E.isHighSurrogate=r,E.isLowSurrogate=s,E.convertSurrogatePairToCodePoint=e,E.isWordChar=n,E.isDigit=a,E.isAlphabetic=d,E.isLowerCase=l,E.isUpperCase=t,E.invertCaseOfAlphabeticChar=h,E.getAndAssertSingleCodePoint=o;function r(i){return 55296<=i&&i<=56319}function s(i){return 56320<=i&&i<=57343}function e(i,f){return(i-55296)*1024+f-56320+65536}function n(i){return a(i)||d(i)}function a(i){return 48<=i&&i<=57}function d(i){return l(i)||t(i)}function l(i){return 97<=i&&i<=122}function t(i){return 65<=i&&i<=90}function h(i){return i^32}function o(i){if([...i].length!==1)throw new RangeError("Expected the input string to be one code point in length.");return i.codePointAt(0)}return E}var De;
1function vt(){if(De)return O;De=1,Object.defineProperty(O,"__esModule",{value:!0}),O.keepStartCensorStrategy=s,O.keepEndCensorStrategy=e,O.asteriskCensorStrategy=n,O.grawlixCensorStrategy=a,O.fixedPhraseCensorStrategy=d,O.fixedCharCensorStrategy=l,O.randomCharFromSetCensorStrategy=t;const r=F();function s(h){return o=>o.overlapsAtStart?h(o):String.fromCodePoint(o.input.codePointAt(o.startIndex))+h({...o,matchLength:o.matchLength-1})}function e(h){return o=>{if(o.overlapsAtEnd)return h(o);const i=String.fromCodePoint(o.input.codePointAt(o.endIndex));return h({...o,matchLength:o.matchLength-1})+i}}function n(){return l("*")}function a(){return t("%@$&*")}function d(h){return()=>h}function l(h){return(0,r.getAndAssertSingleCodePoint)(h),o=>h.repeat(o.matchLength)}function t(h){const o=[...h];if(o.length<2)throw new Error("The character set passed must have at least 2 characters.");return i=>{if(i.matchLength===0)return"";let f=Math.floor(Math.random()*o.length),m=o[f];for(let b=1;b<i.matchLength;b++){let v=Math.floor(Math.random()*(o.length-1));v>=f&&v++,f=v,m+=o[v]}return m}}return O}var ne={},ve={},ye={},Be;function Yt(){if(Be)return ye;Be=1,Object.defineProperty(ye,"__esModule",{value:!0}),ye.compareIntervals=r;function r(s,e,n,a){return s<n?-1:n<s?1:e<a?-1:a<e?1:0}return ye}var $e;function Ie(){if($e)return ve;
1$e=1,Object.defineProperty(ve,"__esModule",{value:!0}),ve.compareMatchByPositionAndId=s;const r=Yt();function s(e,n){const a=(0,r.compareIntervals)(e.startIndex,e.endIndex,n.startIndex,n.endIndex);return a!==0?a:e.termId===n.termId?0:e.termId<n.termId?-1:1}return ve}var Ue;function Xt(){if(Ue)return ne;Ue=1,Object.defineProperty(ne,"__esModule",{value:!0}),ne.TextCensor=void 0;const r=Ie(),s=vt();let e=class{strategy=(0,s.grawlixCensorStrategy)();setStrategy(a){return this.strategy=a,this}applyTo(a,d){if(d.length===0)return a;const l=[...d].sort(r.compareMatchByPositionAndId);let t="",h=0;for(let o=0;o<l.length;o++){const i=l[o];if(h>i.endIndex)continue;const f=i.startIndex<h;f||(t+=a.slice(h,i.startIndex));const m=Math.max(h,i.startIndex),b=o<l.length-1&&i.endIndex>=l[o+1].startIndex&&i.endIndex<l[o+1].endIndex;t+=this.strategy({...i,startIndex:m,input:a,overlapsAtStart:f,overlapsAtEnd:b}),h=i.endIndex+1}return t+=a.slice(h),t}};return ne.TextCensor=e,ne}var z={},we={},Fe;function yt(){if(Fe)return we;Fe=1,Object.defineProperty(we,"__esModule",{value:!0}),we.assignIncrementingIds=r;function r(s){let e=0;return s.map(n=>({id:e++,pattern:n}))}return we}var Ke;function wt(){if(Ke)return z;Ke=1,Object.defineProperty(z,"__esModule",{value:!0}),z.PhraseBuilder=z.DataSet=void 0;const r=yt();let s=class{containers=[];patternCount=0;patternIdToPhraseContainer=new Map;addAll(a){for(const d of a.containers)this.registerContainer(d);return this}removePhrasesIf(a){this.patternCount=0,this.patternIdToPhraseContainer.clear();const d=this.containers.splice(0);for(const l of d)a(l)||this.registerContainer(l);return this}addPhrase(a){const d=a(new e).build();return this.registerContainer(d),this}getPayloadWithPhraseMetadata(a){const d=this.patternIdToPhraseContainer.get(a.termId);if(d===void 0)throw new Error(`The pattern with ID ${a.termId} does not exist in this dataset.`);return{...a,phraseMetadata:this.containers[d].metadata}}build(){return{blacklistedTerms:(0,r.assignIncrementingIds)(this.containers.flatMap(a=>a.patterns)),whitelistedTerms:this.containers.flatMap(a=>a.whitelistedTerms)}}registerContainer(a){const d=this.containers.push(a)-1;for(let l=0,t=this.patternCount;l<a.patterns.length;l++,t++)this.patternIdToPhraseContainer.set(t,d),this.patternCount++}};z.DataSet=s;class e{patterns=[];whitelistedTerms=[];metadata;addPattern(a){return this.patterns.push(a),this}addWhitelistedTerm(a){return this.whitelistedTerms.push(a),this}setMetadata(a){return this.metadata=a,this}build(){return{patterns:this.patterns,whitelistedTerms:this.whitelistedTerms,metadata:this.metadata}}}return z.PhraseBuilder=e,z}var je={},ze;function Zt(){return ze||(ze=1,Object.defineProperty(je,"__esModule",{value:!0})),je}var se={},G={},ie={},He;function Ee(){if(He)return ie;He=1,Object.defineProperty(ie,"__esModule",{value:!0}),ie.SyntaxKind=void 0;var r;return(function(s){s[s.Optional=0]="Optional",s[s.Wildcard=1]="Wildcard",s[s.Literal=2]="Literal",s[s.BoundaryAssertion=3]="BoundaryAssertion"})(r||(ie.SyntaxKind=r={})),ie}var Ge;function Qt(){if(Ge)return G;Ge=1,Object.defineProperty(G,"__esModule",{value:!0}),G.potentiallyMatchesEmptyString=s,G.compilePatternToRegExp=e,G.getRegExpStringForNode=a;const r=Ee();function s(d){return d.nodes.every(l=>l.kind===r.SyntaxKind.Optional)}function e(d){let l="";d.requireWordBoundaryAtStart&&(l+="\\b");for(const t of d.nodes)l+=a(t);return d.requireWordBoundaryAtEnd&&(l+="\\b"),new RegExp(l,"gs")}const n=["[",".","*","+","?","^","$","{","}","(",")","|","[","\\","]"].map(d=>
1d.charCodeAt(0));function a(d){switch(d.kind){case r.SyntaxKind.Literal:{let l="";for(const t of d.chars)n.includes(t)&&(l+="\\"),l+=String.fromCodePoint(t);return l}case r.SyntaxKind.Optional:return`(?:${a(d.childNode)})?`;case r.SyntaxKind.Wildcard:return"."}}return G}var oe={},Ye;function Vt(){if(Ye)return oe;Ye=1,Object.defineProperty(oe,"__esModule",{value:!0}),oe.TransformerSet=void 0;let r=class{transformers;statefulTransformers;constructor(e){this.transformers=e,this.statefulTransformers=Array.from({length:this.transformers.length});for(let n=0;n<this.transformers.length;n++){const a=this.transformers[n];a.type===1&&(this.statefulTransformers[n]=a.factory())}}applyTo(e){let n=e;for(let a=0;a<this.transformers.length&&n!==void 0;a++){const d=this.transformers[a];d.type===0?n=d.transform(n):n=this.statefulTransformers[a].transform(n)}return n}resetAll(){for(let e=0;e<this.transformers.length;e++)this.transformers[e].type===1&&this.statefulTransformers[e].reset()}};return oe.TransformerSet=r,oe}var de={},Xe;function Ae(){if(Xe)return de;Xe=1,Object.defineProperty(de,"__esModule",{value:!0}),de.CharacterIterator=void 0;const r=F();let s=class{_input;lastPosition=-1;currentPosition=0;_lastWidth=0;constructor(n){this._input=n??""}get input(){return this._input}setInput(n){return this._input=n,this.reset(),this}reset(){this.lastPosition=-1,this.currentPosition=0,this._lastWidth=0}next(){if(this.done)return{done:!0,value:void 0};this.lastPosition=this.currentPosition;const n=this._input.charCodeAt(this.currentPosition++);if(this._lastWidth=1,this.done||!(0,r.isHighSurrogate)(n))return{done:!1,value:n};const a=this._input.charCodeAt(this.currentPosition);return(0,r.isLowSurrogate)(a)?(this._lastWidth++,this.currentPosition++,{done:!1,value:(0,r.convertSurrogatePairToCodePoint)(n,a)}):{done:!1,value:n}}get position(){return this.lastPosition}get lastWidth(){return this._lastWidth}get done(){return this.currentPosition>=this._input.length}[Symbol.iterator](){return this}};return de.CharacterIterator=s,de}var le={},Ze;function Jt(){if(Ze)return le;
1Ze=1,Object.defineProperty(le,"__esModule",{value:!0}),le.IntervalCollection=void 0;let r=class{dirty=!1;intervals=[];insert(e,n){this.intervals.push([e,n]),this.dirty=!0}query(e,n){if(this.intervals.length===0)return!1;this.dirty&&(this.dirty=!1,this.intervals.sort((a,d)=>a[0]<d[0]?-1:d[0]<a[0]?1:0));for(const a of this.intervals){if(a[0]>e)break;if(a[0]<=e&&n<=a[1])return!0}return!1}values(){return this.intervals.values()}[Symbol.iterator](){return this.values()}};return le.IntervalCollection=r,le}var Qe;function er(){if(Qe)return se;Qe=1,Object.defineProperty(se,"__esModule",{value:!0}),se.RegExpMatcher=void 0;const r=Qt(),s=Vt(),e=F(),n=Ae(),a=Jt(),d=Ie();class l{blacklistedTerms;whitelistedTerms;blacklistMatcherTransformers;whitelistMatcherTransformers;constructor({blacklistedTerms:h,whitelistedTerms:o=[],blacklistMatcherTransformers:i=[],whitelistMatcherTransformers:f=[]}){this.blacklistedTerms=this.compileTerms(h),this.validateWhitelistedTerms(o),this.whitelistedTerms=o,this.blacklistMatcherTransformers=new s.TransformerSet(i),this.whitelistMatcherTransformers=new s.TransformerSet(f)}getAllMatches(h,o=!1){const i=this.getWhitelistedIntervals(h),[f,m]=this.applyTransformers(h,this.blackl
1istMatcherTransformers),b=[];for(const v of this.blacklistedTerms)for(const w of m.matchAll(v.regExp)){const A=f[w.index];let S=f[w.index+w[0].length-1];S<h.length-1&&(0,e.isHighSurrogate)(h.charCodeAt(S))&&(0,e.isLowSurrogate)(h.charCodeAt(S+1))&&S++,i.query(A,S)||b.push({termId:v.id,startIndex:A,endIndex:S,matchLength:[...w[0]].length})}return o&&b.sort(d.compareMatchByPositionAndId),b}hasMatch(h){const o=this.getWhitelistedIntervals(h),[i,f]=this.applyTransformers(h,this.blacklistMatcherTransformers);for(const m of this.blacklistedTerms)for(const b of f.matchAll(m.regExp)){const v=i[b.index];let w=i[b.index+b[0].length-1];if(w<h.length-1&&(0,e.isHighSurrogate)(h.charCodeAt(w))&&(0,e.isLowSurrogate)(h.charCodeAt(w+1))&&w++,!o.query(v,w))return!0}return!1}getWhitelistedIntervals(h){const o=new a.IntervalCollection,[i,f]=this.applyTransformers(h,this.whitelistMatcherTransformers);for(const m of this.whitelistedTerms){let b=0;for(let v=f.indexOf(m,b);v!==-1;v=f.indexOf(m,b)){let w=i[v+m.length-1];w<h.length-1&&(0,e.isHighSurrogate)(h.charCodeAt(w))&&(0,e.isLowSurrogate)(h.charCodeAt(w+1))&&w++,o.insert(i[v],w),b=v+m.length}}return o}applyTransformers(h,o){const i=[];let f="";const m=new n.CharacterIterator(h);for(const b of m){const v=o.applyTo(b);if(v!==void 0)for(f+=String.fromCodePoint(v);i.length<f.length;)i.push(m.position)}return o.resetAll(),[i,f]}compileTerms(h){const o=[],i=new Set;for(const f of h){if(i.has(f.id))throw new Error(`Duplicate blacklisted term ID ${f.id}.`);if((0,r.potentiallyMatchesEmptyString)(f.pattern))throw new Error(`Pattern with ID ${f.id} potentially matches empty string; this is unsupported.`);o.push({id:f.id,regExp:(0,r.compilePatternToRegExp)(f.pattern)}),i.add(f.id)}return o}validateWhitelistedTerms(h){if(h.some(o=>o.length===0))throw new Error("Whitelisted term set contains empty string; this is unsupported.")}}return se.RegExpMatcher=l,se}var ce={},Ve;function Tt(){if(Ve)return ce;Ve=1,Object.defineProperty(ce,"__esModule",{value:!0}),ce.ParserError=void 0;let r=class extends Error{name="ParserError";line;column;constructor(e,n,a){super(`${n}:${a}: ${e}`),this.line=n,this.column=a}};return ce.ParserError=r,ce}var he={},ue={},Je;function tr(){if(Je)return ue;Je=1,Object.defineProperty(ue,"__esModule",{value:!0}),ue.Parser=void 0;const r=F(),s=Ae(),e=Ee(),n=Tt(),a=[92,91,93,63,124],d=a.map(h=>`'${String.fromCodePoint(h)}'`).join(", "),l=-1;let t=class{input="";line=1;column=1;position=0;lastColumn=1;lastWidth=0;parse(o){this.setInput(o);const i=[],f=this.nextNode(),m=f?.kind===e.SyntaxKind.BoundaryAssertion;f&&!m&&i.push(f);let b=!1;for(;!this.done;){const v=this.mark(),w=this.nextNode();if(w.kind!==e.SyntaxKind.BoundaryAssertion){i.push(w);continue}this.done||this.reportError("Boundary assertions are not supported in this position; they are only allowed at the start / end of the pattern.",v),b=!0}return{requireWordBoundaryAtStart:m,requireWordBoundaryAtEnd:b,nodes:i}}setInput(o){return this.input=o,this.line=1,this.column=1,this.position=0,this.lastColumn=1,this.lastWidth=0,this}nextNode(){switch(this.peek()){case l:return;case 91:return this.parseOptional();case 93:this.reportError("Unexpected ']' with no corresponding '['.");case 63:return this.parseWildcard();case 124:return this.parseBoundaryAssertion();default:return this.parseLiteral()}}get done(){return this.position>=this.input.length}parseOptional(){const o=this.mark();this.next();const i=this.mark();this.done&&this.reportError("Unexpected unclosed '['.",o),this.accept("[")&&this.reportError("Unexpected nested optional node.",i);const f=this.nextNode();return f.kind===e.SyntaxKind.BoundaryAssertion&&this.reportError("Boundary assertions are not supported in this position; they are only allowed at the start / end of the pattern.",i),this.accept("]")||this.reportError("Unexpected unclosed '['."),{kind:e.SyntaxKind.Optional,childNode:f}}parseWildcard(){return this.next(),{kind:e.SyntaxKind.Wildcard}}parseBoundaryAssertion(){return this.next(),{kind:e.SyntaxKind.BoundaryAssertion}}parseLiteral(){const o=[];for(;!this.done;){if(this.accept("[]?|")){this.backup();break}const i=this.next();if(i===92){this.done&&(this.backup(),this.reportError("Unexpected trailing backslash."));const f=this.next();if(!a.includes(f)){const m=String.fromCodePoint(f);this.backup(),this.reportError(`Cannot escape character '${m}'; the only characters that can be escaped are the following: ${d}.`)}o.push(f)}else o.push(i)}return{kind:e.SyntaxKind.Literal,chars:o}}reportError(o,{line:i=this.line,column:f=this.column}={}){throw new n.ParserError(o,i,f)}mark(){return{line:this.line,column:this.column}}accept(o){const i=this.next(),f=new s.CharacterIterator(o);for(const m of f)if(m===i)return!0;return this.backup(),!1}peek(){const o=this.next();return this.backup(),o}
1next(){if(this.done)return l;const o=this.input.charCodeAt(this.position++);if(this.lastWidth=1,o===10)return this.lastColumn=this.column,this.column=1,this.line++,o;if(this.lastColumn=this.column++,!(0,r.isHighSurrogate)(o)||this.done)return o;const i=this.input.charCodeAt(this.position);return(0,r.isLowSurrogate)(i)?(this.position++,this.lastWidth++,(0,r.convertSurrogatePairToCodePoint)(o,i)):o}backup(){this.position-=this.lastWidth,this.column=this.lastColumn,this.lastWidth===1&&this.input.charCodeAt(this.position)===10&&this.line--}};return ue.Parser=t,ue}var et;function Mt(){if(et)return he;et=1,Object.defineProperty(he,"__esModule",{value:!0}),he.pattern=e,he.parseRawPattern=n;const r=tr(),s=new r.Parser;function e(a,...d){let l=a.raw[0];for(const[t,h]of d.entries())l+=String(h),l+=a.raw[t+1];return s.parse(l)}function n(a){return s.parse(a)}return he}var Re={},Te={},fe={},tt;function xe(){if(tt)return fe;tt=1,Object.defineProperty(fe,"__esModule",{value:!0}),fe.createSimpleTransformer=r,fe.createStatefulTransformer=s;function r(e){return{type:0,transform:e}}function s(e){return{type:1,factory:e}}return fe}var pe={},rt;function rr(){if(rt)return pe;rt=1,Object.defineProperty(pe,"__esModule",{value:!0}),pe.CollapseDuplicatesTransformer=void 0;class r{defaultThreshold;customThresholds;remaining=-1;lastChar=-1;constructor({defaultThreshold:e,customThresholds:n}){this.defaultThreshold=e,this.customThresholds=n}transform(e){if(e===this.lastChar)return this.remaining-- >0?e:void 0;const n=this.customThresholds.get(e)??this.defaultThreshold;return this.remaining=n-1,this.lastChar=e,n>0?e:void 0}reset(){this.remaining=-1,this.lastChar=-1}}return pe.CollapseDuplicatesTransformer=r,pe}var at;function Ct(){if(at)return Te;at=1,Object.defineProperty(Te,"__esModule",{value:!0}),Te.collapseDuplicatesTransformer=n;const r=F(),s=xe(),e=rr();function n({defaultThreshold:d=1,customThresholds:l=new Map}={}){const t=a(l);return(0,s.createStatefulTransformer)(()=>new e.CollapseDuplicatesTransformer({defaultThreshold:d,customThresholds:t}))}function a(d){const l=new Map;for(const[t,h]of d){if(h<0)throw new RangeError("Expected all thresholds to be non-negative.");const o=(0,r.getAndAssertSingleCodePoint)(t);l.set(o,h)}return l}return Te}var Me={},Ce={},nt;function Ne(){if(nt)return Ce;nt=1,Object.defineProperty(Ce,"__esModule",{value:!0}),Ce.remapCharactersTransformer=n;const r=F(),s=Ae(),e=xe();function n(d){const l=a(d);return(0,e.createSimpleTransformer)(t=>l.get(t)??t)}function a(d){const l=new Map,t=d instanceof Map?d.entries():Object.entries(d);for(const[h,o]of t){const i=(0,r.getAndAssertSingleCodePoint)(h),f=new s.CharacterIterator(o);for(const m of f)l.set(m,i)}return l}return Ce}var me={},st;function ar(){return st||(st=1,Object.defineProperty(me,"__esModule",{value:!0}),me.confusables=void 0,me.confusables=new Map([[" "," "],["0","â¿"],["1","âµââ´Â¹ððï¼ð·ð£âð1âââ â¶â¥ "],["2","â¶ââµâƻ²á¿ðï¼ð®ð¤á¾ð¸Æ§ðâ¡á´¤âââ·áƨ"],["3","³â³ê«ðâ¨ðð¯ð¥êªâÐÈâ·Ó Æ·ï¼ð¹â¶âÊÊǯǮƺð´á¶¾Ð·á¦¡ââ¢âá¶á´£á´â¸ÒÒÓ¬Ó¡ÓÓÓ"],["4","âÒ¶áðÒ·â¸Ò¸Ò¹Ó´Óµá¶£ï¼Ñã©â´âââ£â¹Óâ·â"],["5","ð±â¹âƼðð»ðð§ï¼ââ
â¤âµâºÆ½â¸â"],["6","â³á®ðð¨ðââºÏ¬Ïâ¶Ð±ï¼á§â¥â
ââ»â¹â"],["7","â»ðâï¼â·â¦ââ¼ââºâ"],["8","ðââ¼ï¼ð ðªà§ªâ¸âð´ââ§â½ð¾ðâ»â"],["9","ê®â³â½âà©§à§à¨ï¼ð«ð¿ðâ¹âÔ³ââ¨â¾â¼â"],["A","ð°á¯ð ð¬ðð´ê®áªð¨êºðð
â«âð¦â³ð
°ðððð¸Ð´Çºá
â¶ï¼¡Îá¾á©ÄÃÃ
ÇÈÈÄȺÄÊÎλÆá´á´¬ÐÐáÃâá±ÂªÇÓÎẠẢẦẨẬẮẰẲẴẶᾸᾹᾺΆᾼá¾á¾á¾á¾á¾á¾á¾á¼á¼á¼á¼á¼á¼á¼á¼á¸È¦Ç ÓÃÃÃẤẪð¢ðð°ð¼"],["a","ââºâÕ±Çáµá¶âаÉï½Î±ÈÈà¸ÇáäÉÄÉÄ
á¾áºáº¡áº£Ç¡áº§áºµá¸È§ÓÓãåάὰάÄẩằẳặá¾á¾á¾á¾á¾
á¾á¾°á¾±á¾²á¾³á¾´á¶á¾¶á¾·á¼á¼á¼á¼á¼á¼
á¼á¼á¾áºáº¯Ã áâấẫǻⱥðððð¶ðªððððºð®ð¢ðððð¼ð¶ð°ðªâ¶"],["B","ðð©ðð±ð¡ð¡ð½êððððð©ðð£ððµð±ð¹á´á¼ðê´ð
ð
฿ðá¿á¾á½ð
±â·ï¼¢Ð²Ïá·Æä¹Ãáªá©à¹Î²É®ÐÕ
à¹áÊá´®áµáá¸â¬ÎÐáºá¸á¸Éà´¦á¹á¸áµááááááá´ð§"],["b","áðð£ð·ðð«ðð»ððððð¯ðâá³áï½áá¹áºâá¸á¸
ÒÑá¸ÆÉÆ
á¯ÆÐ¬á²Ã¾ÆâЪá¶á¿áááá¾ÑÆÒѢѣá"],["C","áⲤð²êð¢ðð
²ðð
â¾ÄÃâ¸ï¼£âÆáã¢८â»ÄϾÕÈ»á
á¶âÄÒÄÂ©à¤ÆââϹСåá¸ÒªÊáá¡á¢á£á¤á¥â
ðð¶ðªððð®ð¢ððð¾á"],["c","â²¥ð½ê®¯Äï½âÄÄÄÃ§ÒÆá¸È¼âÑáá´Ï²Ò«êÏɽÏð²á¦á§ðððð¸ð¬ð ððð¼ð°ð¤ððâµð¨á¥´á¼â
½"],["D","á ð³ð¡ðð»ððð³ð·ððð«ð¯ð£ðð¿ê°â
ðêð
³ð
â¹ï¼¤ÆáªÆÃÔºá´
á´°âá¸ÄÃâ
®áá¯Äá¸á¸á¸á¸á«á¬áá á¶á´ð©"],["d","á§êðáµâ«Ôâï½á¸
1Äá¸á¸á¸á¸ÄÆÉÉáµâÔâ
¾á¶Ôáºá»á¼á½áá°á±á¶ðð½ðð¥ð
ððð±ðâ
ð¹Ê Õª"],["E","ê¼ð´ðð¼ðð¬ê°ðððð¬ðð
´ð
âºÎï¼¥Æá¼á®Æã¢Ðá´á´±áµÃä¹ÐÉê
â¬Ãâ°ÎÐâ´¹á¬ÄÄÄÄÄÃÃÔá»áº¾á»á»áº¼á¸á¸áººÈÈẸá»È¨á¸á¸á¸á¼á¼á¼á¼á¼á¿á¿ÓὲέÐϵðª"],["e","ðð®ððð¦ð²ðððð¢ð¾ðÒ¾Ò¿âï½
â èá§Ã©á¶ÃªÉá¼á»áº¿á»
૯ÇÑεÄÒ½Éá»áº½á¸á¸ÄÄëẻÄÈ
Èẹá»È©ÉâÄá¸á¸á¸â®ÐµÔÑÓᥱÑá¼á¼á¼á¼á¼â¯"],["F","ðµðððð¥êêð
µð
ðâ»ï¼¦ÒÒá´ÆÔ²Ïá»á¸â±Ïâ£ð«â²"],["f","ððâï½Æá¸Êբᶠâ¡Å¿ê°Êâ±á¶ð§"],["G","êá³ð¶áá»ð¾ðð®ð²ê®ð¢ðð¦ð¶ððºðð
¶ð
â¼ï¼§É¢ÆÊÄ¢áá´³Ç´Ä ÔÄḠÄǦǤÔâ²ð¬â
"],["g","âï½ÇµÄḡÄġǧģÖà«Ç¥É ï»ï»®áµâ¢âÉ¡á§ð ððð°ð¤ðððð´ð¨ðð"],["H","ð·ð¢ê§ðð»ðð§ððê®âá»ââ²ð¯ðð
·ð
áǶÔâ½ï¼¨Ä¤áºá¸¢á¸¦ÈḤḨḪĦⱧҢңҤá¿á¿á¿á¼¨á¼©á¼ªá¼«á¼á¼®á¼¯á¾á¾á¾á¾á¾á¾á¾á¾ÓÓÒ¥ÎнåâðâÐððð·Êð¨Îð®á¼Óᴴᵸð"],["h","Òºâ£Ñâï½Ä¥á¸£á¸§ÈḥḩḫáºÄ§â±¨Õ°Ò»á¨á©áªá«É¦âð¡ðð½ð±ð¥ððððµð©ððիʰááɧãÉ¥"],["I","ð¸Ðê¤áð
¸ð
Ø¥ïºÙ³Ø£ïºÙ²Ùµâ¾ï¼©á¸ÃÃÃĨĪĬİÃḮá»ÇÈÈá»Ä®á¸¬Æã§ã¨á¿á¿á¿á¿á¼¸á¼¹á¼ºá¼»á¼¼á¼½á¼¾â
ΪÎɪᶦáᥣðªððð¸ðµð¡ð¼á´µð°ð°ð®"],["i","âï½Ã¬ÃîĩīÄïḯá»ÇÈÈá»á¸á¿á¿á¿á¿á¿á¿á¼°á¼±á¼²â
°â
¼â£âµï¿¨×ا١۱ßáἳἴἵɨÑá½¶á½·á¶ð¦ðð¸ðð¢ððð¶ðªðίâ±áµ¢ð²â¤"],["J","ð¹ð
¹ð
â¿ï¼ªÐÊá× ï¾Ä´ÊวÙÕµÊá´á´¶ï»áÉâ±¼Õà¹
á±Ä¯á«È·ä¸¿ââááááá´áµááð¯"],["j","âï½Ï³Ê²â¥ÉĵǰÑڶᶨð¿ð«ð·ððð§ððð³ðððð£"],["K","ððºð¥ðêððâ²ðð«á¦ðð¦ð
ºð
ââï¼«Ä¸á¸°ÑÆÐºÒ ÎºÒÒÓÊÒÐÒ¡á´á´·áµâ¦áÐáḲÎâªÒÒÒĶḴǨⱩÏÓð°"],["k","âï½á¸±Ç©á¸³Ä·á¸µÆâ±ªá¶ð¤ð¬ððð
ðð¿ðð¹ðð³ð ðððϰðððð¸ð´ð"],["L","ð»ðâ³ð³ð»ððâ³ê®®áê¡ð
»ð
ïºââÖLĿáªä¹ÕÊê¶Î¹Ô¼á´¸Ë¡Ä¹á¨á¸¶âÎլĻáâ
¬âⱢᥧᥨá»á¶á·á¶«ïºáºá¹á¸á«â³ã¥Åâ± ïºÈ½ð±"],["l","âï½ÅĺľḷḹļÓâḽḻÅï¾ÉÆÉ«â±¡|Æâ§Ê
Ç××ÎÐï½á¶©Óððð¨ððð¥ðððð©ððð
ð¹ððð¤ðıð¤É©á¾¾ððð¾ð²"],["M","ð¼ðð°êâ²á·ð
¼ð
âï¼Ð¼á¹àµ±á°å·á»áà¹âÊáá´á´¹áµâ¨á¸¾Ðá¹à¯±â
¯â³ÎϺáÓÓððð´ðððð¸ð¬ð ððð¼ð³ðð§ð¡ðð²"],["m","â¥áµ¯ðð¦ððªððâï½à´¨á¢àµ©á¸¿á¹â
¿Ï»á¹á ɱá³á¶ð¢ð¶ðððºá§á§"],["N","ð½âê ð®ð¢ð½ð´ðµðâ²ðð©ðð¡ðð¨ððð
½â¦ð
ÐÐâÒá·ï¼®á´É´Æáå иÕÕ¼Ð×ÐÏᴺᶰÅåáá¹â¿ÃÐÎá´¨Õ¸ÏǸÅá¹Å
á¹á¹à¸ÅÓ¢Ó£Ó¤Ó¥ÑÑйᥢÒá´»ð³"],["n","×ðð·ð£ððð«ððð»á¥âήï½Ç¹á´Åñá¾Î·á¹
Åá¹É²Åá¹á¹Õ²àºÕÆÅâ©à¸ à¸É³Ð¿ÅлÔÈ á¼ á¼¡á¿Õ¤á¾á¾á¾á¾á¾á¾á¾á¿á¿á¿á¿á¼¢á¼£á¼¤á¼¥á¼¦á¼§á½´á½µá á¡á¢á£á¤á¥á¦Èµððð¼ð¶ð°ðð¯ð§ðá¶áµ°á¥¥â©"],["O","ê²ð¾ðð¬ê³â²ðð«ððð
â¥â¯âµâï¼âð¤Ñ²Ï´ð¶ðªÑºÓ¦Ó¨ÓªÎÊðÇÃÅÃÃÃÈÈã¿ââOá½ãâ¤à«¦âÃÐ¤Ô¾ÎÆ á´¼áµâªÅÃâ¤âΦãÎÐÕଠഠ௦סá»á»á»á»á¹È¬á¹Åá¹á¹È®È°Èªá»á»á»á» á»á»¢á»á»ÇªÇ¬Ç¾Æâµßá°âââ⦰⦱⦲⦳⦴⦵⦶⦷⦸⦹⦺⦻⦼⦽⦾⦿â§â§â§â§á½á½á½á½á½"],["o","ðððð¼áâ²ð¤áð¬ð¬ðªð¸ð´â¤âÏð
¾ðªð®ð¢ð¶ð¾ð°ð¼ð ðð¨ð¾ð¸á¤âѳá§á¥²Ã°ï½à° á¦ÕòөӧóºÅôÇÈÅá»á»Èá»á»ÃµÏá¹Èá¹á½á¹á¹È¯È«à¹á´ÅöѻоáÇȱ০à¦Ù¥à±¦à³¦àµ¦à¹à»Î¿Ö
á´à¥¦à©¦á»Æ¡á»á»á»¡á»á»£á»á»Ç«Ã¸Ç¿ÉµÕ®á½á½Ïὸόá½á½á½
"],["P","ð¿êð¸ð¿ð ðꮲⲢð«ð¦ðð·ð£ððð¬ððð¯ð²á¢ð
Òð
¿â
PƤáå°¸á¹ÖÏÖá´á´¾áµâ«á¹ï½±×§Ð á¨á´©â±£âΡῬá¸á¶á·á¹á¬á®ðµâ±"],["p","Òââï½á¹á¹Æ¥áµ½á¿¥ÏÑÆ¿Ç·á¿¤â´ð¹ð
ð©ðððð¡ððð½ð±ð¥ððððºðð"],["Q","ð
ðð
âï¼±ââµÔððð¸ð¬ð ðððð°ð¼ðð¤ð¶"],["q","â ï½Õ£â¬Û¹Õ¦á«ÉÉÔððð²ð¢ððððªð®ðºð¦"],["R","ââê±áð´ê®¢á¡ê£ðð
¡âï¼²á´ÈÊáÑå°ºÅЯરƦᴿáªá¹ÉÊâââá¹ÅÈá¹Åá¹â±¤ðð
ð¹ð¡ð½ð±ð¥ðððá±ð·á´"],["r","â¡ï½Åá¹ÅÈÈá¹á¹ÅгÕɾᥬá¹ÉʳâɼÑá´¦á¶ð«ðððð»ð¯ð£ððð¿ð³ð§áµ²Òáµ£"],["S","ð
êð¢ð¦áð®áððê¢ð²ðððð¾ð ððððºðð
¢âSṨÅÖÕÈË¢â®Ð
á¹ Å ÅṤÅṦṢà´ááá¢á¡á£á¤"],["s","â¢ê±ðꮪï½Åá¹¥ÅṡšṧÊṣṩÑÅÈÈ¿á¶à°ð¬ð ððð¼ð°ð¤ðððð´ð¨ðÞð¸"],["T","ð
ððð»ðµðð¿ð»ð±ðð³ðð¨ð©ð£ðð
1ðêâðⲦð§â¤ðá¢ê²ð¯ð
£âââï¼´ÑÒ¬ÒÆ¬ã¤Å¦ÔµÏá´áµï½²áÏ®Å¤â¥Æ®Î¤Ð¢ä¸á¹ªá¹¬ÈŢṰṮä¸
ä¸áªððððð½ð£ãð¹á¥"],["t","â£ï½á¹«áºÅ¥á¹Èȶ੮էÊâ ţṱṯÆÅ§áµâ¯Êեƫðð¡ððð½ð±ð¥ððððµð©ðã"],["U","ð
ê´ðê¤ðð
¤Å¨Å¬Å®ááÇÇÇÇâï¼µÈá嵯±Õ´Ô±êµÐ¦ÅªÕƲááµáµâ°Å°àªªÃÕÃÃÃṸṺÇá»¦ÈÆ¯á»ªá»¨á»®á»¬á»°á»¤á¹²Å²á¹¶á¹´Éᥩá§âªá®âððð¼ð°ð¤ðððð´ð¨ððððº"],["u","ὺύâ¤ï½Ã¹Å©Å«á»«á¹·á¹¹ÅÇữá¥ÇÇá½Ï
ΰà¸Õ½ÊÇÇúůá´Å±Å³à¸¢Ã»á¹»ÑáüᵾᵤµÊá»§ÈÈÆ°á»©á»á»±á»¥á¹³á¹µÊῠῡῢΰῦῧá½á½ÏÏá½á½á½á½á½á¥ð®ð¢ððð¾ð²ð¦ððá¶"],["V","ð
ê¦ð½ðµðáð
ððð
ð
¥âï¼¶á¯Ñ´áµâ±Û·á¹¾â
´â
¤á¹¼Ù§â´¸Ñ¶áºá»ð»ð¥"],["v","áâ¥ï½ððṽṿ౮à¸Ñµ×¢á´ ν×ᵥѷá´áð«ððððð¼ð¶ð·ðð¿"],["W","ð
áá³ð¾êªð²ððâð
¦ï½ï¼·áºá¾§á¯á¥å±±Ñ àºà°Õ¡Ð©Ð¨ÏÑฬÑááµÊ·â²à¸á áºÔáºÅ´áºáºà´§áºÑ¿á¡Æâ©ð¼"],["w","áºê®áºâ¦âµÅµáºáº
áºáºâ±³á½¼á½ ὡὢὣÏὤὥὦὧῲῳῴῶῷⱲѡÔᴡώᾠᾡᾢᾣᾤᾥᾦɯððð"],["X","ð¨ð©ðªð
ð«ð¬ðⲬê«ðð¦ððð¾ð¬ð²ê³ð¢ð·ðððð´ð«ðð
§ââð§ï¼¸áºáÏã¨ð³Ó¾á¯Ó¼Ò³ÐΧҲᵡˣâ³×á¸áºê¼â
©Ð¥â³á®áá½â
¹á·âµððä¹ðð½"],["x","â§ï½Ñ
áºÃâ⤫⤬⨯áºá¶ðÓ½ð¹ð±ð¡â¨°ï¾ð"],["Y","Ⲩððð¬ðê¬ðð°ð²ðð
¨âï¼¹á½Æ³ãÊâ
Ï¥¥ÕÏγץӲЧÐáŸÉϤΥÏҮỲÃŶỸȲáºá»¶á»´á¿¨á¿©á¿ªá¿«á½á½á½Î«ÎÓ®Ó°Ò°Ò±ðð¾"],["y","ð
á½á©â¨ï½á»³Ã½Å·á»¹È³áºÃ¿á»·Ñá§áºá»µÆ´ÉáµÉ£Ê¸á¶Ò¯â´Ó³Ó±Ó¯ÑУÊ"],["Z","ð
êððâ¡áð¡ðð
©âï¼ºáºÆµä¹áºÈ¤á¶»âµÅ¹â¤ÎŻŽáºâ±«ð¿"],["z","ê®â©ï½ÅºáºÅ¼Å¾áºáºÆ¶È¥Éá´¢áÊⱬá¶Êá"]])),me}var it;function St(){if(it)return Me;it=1,Object.defineProperty(Me,"__esModule",{value:!0}),Me.resolveConfusablesTransformer=e;const r=Ne(),s=ar();function e(){return(0,r.remapCharactersTransformer)(s.confusables)}return Me}var Se={},ge={},ot;function nr(){return ot||(ot=1,Object.defineProperty(ge,"__esModule",{value:!0}),ge.dictionary=void 0,ge.dictionary=new Map([["a","@4"],["c","("],["e","3"],["g","6"],["i","1|!"],["l","/"],["o","0"],["s","$5"],["t","7"],["z","2"]])),ge}var dt;function Wt(){if(dt)return Se;dt=1,Object.defineProperty(Se,"__esModule",{value:!0}),Se.resolveLeetSpeakTransformer=e;const r=Ne(),s=nr();function e(){return(0,r.remapCharactersTransformer)(s.dictionary)}return Se}var We={},lt;function kt(){if(lt)return We;lt=1,Object.defineProperty(We,"__esModule",{value:!0}),We.toAsciiLowerCaseTransformer=e;const r=F(),s=xe();function e(){return(0,s.createSimpleTransformer)(n=>(0,r.isUpperCase)(n)?(0,r.invertCaseOfAlphabeticChar)(n):n)}return We}var ct;function sr(){return ct||(ct=1,(function(r){Object.defineProperty(r,"__esModule",{value:!0}),r.englishDataset=r.englishRecommendedTransformers=r.englishRecommendedWhitelistMatcherTransformers=r.englishRecommendedBlacklistMatcherTransformers=void 0;const s=wt(),e=Mt(),n=Ct(),a=St(),d=Wt(),l=kt();r.englishRecommendedBlacklistMatcherTransformers=[(0,a.resolveConfusablesTransformer)(),(0,d.resolveLeetSpeakTransformer)(),(0,l.toAsciiLowerCaseTransformer)(),(0,n.collapseDuplicatesTransformer)({defaultThreshold:1,customThresholds:new Map([["b",2],["e",2],["o",2],["l",2],["s",2],["g",2]])})],r.englishRecommendedWhitelistMatcherTransformers=[(0,l.toAsciiLowerCaseTransformer)(),(0,n.collapseDuplicatesTransformer)({defaultThreshold:Number.POSITIVE_INFINITY,customThresholds:new Map([[" ",1]])})],r.englishRecommendedTransformers={blacklistMatcherTransformers:r.englishRecommendedBlacklistMatcherTransformers,whitelistMatcherTransformers:r.englishRecommendedWhitelistMatcherTransformers},r.englishDataset=new s.DataSet().addPhrase(t=>t.setMetadata({originalWord:"abo"}).addPattern((0,e.pattern)`|ab[b]o[s]|`)).addPhrase(t=>t.setMetadata({originalWord:"abeed"}).addPattern((0,e.pattern)`ab[b]eed`)).addPhrase(t=>t.setMetadata({originalWord:"africoon"}).addPattern((0,e.pattern)`africoon`)).addPhrase(t=>t.setMetadata({originalWord:"anal"}).addPattern((0,e.pattern)`|anal`).addWhitelistedTerm("analabos").addWhitelistedTerm("analagous").addWhitelistedTerm("analav").addWhitelistedTerm("analy").addWhitelistedTerm("analog").addWhitelistedTerm("an al").addPattern((0,e.pattern)`danal`).addPattern((0,e.pattern)`eanal`).addPattern((0,e.pattern)`fanal`).addWhitelistedTerm("fan al").addPattern((0,e.pattern)`ganal`).addWhitelistedTerm("gan al").addPattern((0,e.pattern)`ianal`).addWhitelistedTerm("ian al").addPattern((0,e.pattern)`janal`).addWhitelistedTerm("trojan al").addPattern((0,e.pattern)`kanal`).addPattern((0,e.pattern)`lanal`).addWhitelistedTerm("lan al").addPattern((0,e.pattern)`lanal`).addWhitelistedTerm("lan al").addPattern((0,e.pattern)`oanal|`).addPattern((0,e.pattern)`panal`).addWhitelistedTerm("pan al").addPattern((0,e.pattern)`qanal`).addPattern((0,e.pattern)`ranal`).addPattern((0,e.pattern)`sanal`).addPattern((0,e.pattern)`tanal`).addWhitelistedTerm("tan al").addPattern((0,e.pattern)`uanal`).addWhitelistedTerm("uan al").addPattern((0,e.pattern)`vanal`).addWhitelistedTerm("van al").addPattern((0,e.pattern)`wanal`).addPattern((0,e.pattern)`xanal`).addWhitelistedTerm("texan al").addPattern((0,e.pattern)`yanal`).addPattern((0,e.pattern)`zanal`)).addPhrase(t=>t.setMetadata({originalWord:"anus"}).addPattern((0,e.pattern)`anus`).addWhitelistedTerm("an us").addWhitelistedTerm("tetanus").addWhitelistedTerm("uranus").addWhitelistedTerm("janus").addWhitelistedTerm("manus")).addPhrase(t=>t.setMetadata({originalWord:"arabush"}).addPattern((0,e.pattern)`arab[b]ush`)).addPhrase(t=>t.setMetadata({originalWord:"arse"}).addPattern((0,e.pattern)`|ars[s]e`).addWhitelistedTerm("arsen")).addPhrase(t=>t.setMetadata({originalWord:"ass"}).addPattern((0,e.pattern)`|ass`).addWhitelistedTerm("45s").addWhitelistedTerm("assa").addWhitelistedTerm("assem").addWhitelistedTerm("assen").addWhitelistedTerm("asser").addWhitelistedTerm("assess").addWhitelistedTerm("asset").addWhitelistedTerm("assev").addWhitelistedTerm("assi").addWhitelistedTerm("assoc").addWhitelistedTerm("assoi").addWhitelistedTerm("assu")).addPhrase(t=>t.setMetadata({originalWord:"bastard"}).addPattern((0,e.pattern)`bas[s]tard`)).addPhrase(t=>t.setMetadata({originalWord:"bestiality"}).addPattern((0,e.pattern)`be[e][a]s[s]tial`)).addPhrase(t=>t.setMetadata({originalWord:"bitch"}).addPattern((0,e.pattern)`bitch`).addPattern((0,e.pattern)`bich|`)).addPhrase(t=>t.setMetadata({originalWord:"blowjob"}).addPattern((0,e.pattern)`b[b]l[l][o]wj[o]b`)).addPhrase(t=>t.setMetadata({originalWord:"bollocks"}).addPattern((0,e.pattern)`bol[l]ock`)).addPhrase(t=>t.setMetadata({originalWord:"boob"}).addPattern((0,e.pattern)`boob`)).addPhrase(t=>t.setMetadata({originalWord:"boonga"}).addPattern((0,e.pattern)`boonga`).addWhitelistedTerm("baboon ga")).addPhrase(t=>t.setMetadata({originalWord:"buttplug"}).addPattern((0,e.pattern)`buttplug`)).addPhrase(t=>t.setMetadata({originalWord:"chingchong"}).addPattern((0,e.pattern)`chingchong`)).addPhrase(t=>t.setMetadata({originalWord:"chink"}).addPattern((0,e.pattern)`chink`).addWhitelistedTerm("chin k")).addPhrase(t=>t.setMetadata({originalWord:"cock"}).addPattern((0,e.pattern)`|cock|`).addPattern((0,e.pattern)`|cocks`).addPattern((0,e.pattern)`|cockp`).addPattern((0,e.pattern)`|cocke[e]|`).addWhitelistedTerm("cockney")).addPhrase(t=>t.setMetadata({originalWord:"cuck"}).addPattern((0,e.pattern)`cuck`).addWhitelistedTerm("cuckoo")).addPhrase(t=>t.setMetadata({originalWord:"cum"}).addPattern((0,e.pattern)`|cum`).addWhitelistedTerm("cumu").addWhitelistedTerm("cumb")).addPhrase(t=>t.setMetadata({originalWord:"cunt"}).addPattern((0,e.pattern)`|cunt`).addPattern((0,e.pattern)`cunt|`)).addPhrase(t=>t.setMetadata({originalWord:"deepthroat"}
1).addPattern((0,e.pattern)`deepthro[o]at`).addPattern((0,e.pattern)`deepthro[o]t`)).addPhrase(t=>t.setMetadata({originalWord:"dick"}).addPattern((0,e.pattern)`|dck|`).addPattern((0,e.pattern)`dick`).addWhitelistedTerm("benedick").addWhitelistedTerm("dickens").addWhitelistedTerm("dickety").addWhitelistedTerm("dickory")).addPhrase(t=>t.setMetadata({originalWord:"dildo"}).addPattern((0,e.pattern)`dildo`)).addPhrase(t=>t.setMetadata({originalWord:"doggystyle"}).addPattern((0,e.pattern)`d[o]g[g]ys[s]t[y]l[l]`)).addPhrase(t=>t.setMetadata({originalWord:"double penetration"}).addPattern((0,e.pattern)`double penetra`)).addPhrase(t=>t.setMetadata({originalWord:"dyke"}).addPattern((0,e.pattern)`dyke`).addWhitelistedTerm("van dyke")).addPhrase(t=>t.setMetadata({originalWord:"ejaculate"}).addPattern((0,e.pattern)`e[e]jacul`).addPattern((0,e.pattern)`e[e]jakul`).addPattern((0,e.pattern)`e[e]acul[l]ate`)).addPhrase(t=>t.setMetadata({originalWord:"fag"}).addPattern((0,e.pattern)`|fag`).addPattern((0,e.pattern)`fggot`)).addPhrase(t=>t.setMetadata({originalWord:"felch"}).addPattern((0,e.pattern)`fe[e]l[l]ch`)).addPhrase(t=>t.setMetadata({originalWord:"fellatio"}).addPattern((0,e.pattern)`f[e][e]llat`)).addPhrase(t=>t.setMetadata({originalWord:"finger bang"}).addPattern((0,e.pattern)`fingerbang`)).addPhrase(t=>t.setMetadata({originalWord:"fisting"}).addPattern((0,e.pattern)`fistin`)).addPhrase(t=>t.setMetadata({originalWord:"fuck"}).addPattern((0,e.pattern)`f[?]ck`).addPattern((0,e.pattern)`|fk`).addPattern((0,e.pattern)`|fu|`).addPattern((0,e.pattern)`|fuk`).addWhitelistedTerm("fick").addWhitelistedTerm("kung-fu").addWhitelistedTerm("kung fu")).addPhrase(t=>t.setMetadata({originalWord:"gangbang"}).addPattern((0,e.pattern)`g[?]ngbang`)).addPhrase(t=>t.setMetadata({originalWord:"handjob"}).addPattern((0,e.pattern)`h[?]ndjob`)).addPhrase(t=>t.setMetadata({originalWord:"hentai"}).addPattern((0,e.pattern)`h[e][e]ntai`)).addPhrase(t=>t.setMetadata({originalWord:"hooker"}).addPattern((0,e.pattern)`hooker`)).addPhrase(t=>t.setMetadata({originalWord:"incest"}).addPattern((0,e.pattern)`incest`)).addPhrase(t=>t.setMetadata({originalWord:"jerk off"}).addPattern((0,e.pattern)`jerkoff`)).addPhrase(t=>t.setMetadata({originalWord:"jizz"}).addPattern((0,e.pattern)`jizz`)).addPhrase(t=>t.setMetadata({originalWord:"kike"}).addPattern((0,e.pattern)`kike`)).addPhrase(t=>t.setMetadata({originalWord:"lubejob"}).addPattern((0,e.pattern)`lubejob`)).addPhrase(t=>t.setMetadata({originalWord:"masturbate"}).addPattern((0,e.pattern)`m[?]sturbate`).addPattern((0,e.pattern)`masterbate`)).addPhrase(t=>t.setMetadata({originalWord:"negro"}).addPattern((0,e.pattern)`negro`).addWhitelistedTerm("montenegro").addWhitelistedTerm("negron").addWhitelistedTerm("stoneground").addWhitelistedTerm("winegrow")).addPhrase(t=>t.setMetadata({originalWord:"nigger"}).addPattern((0,e.pattern)`n[i]gger`).addPattern((0,e.pattern)`n[i]gga`).addPattern((0,e.pattern)`|nig|`).addPattern((0,e.pattern)`|nigs|`).addWhitelistedTerm("snigger")).addPhrase(t=>t.setMetadata({originalWord:"orgasm"}).addPattern((0,e.pattern)`[or]gasm`).addWhitelistedTerm("gasma")).addPhrase(t=>t.setMetadata({originalWord:"orgy"}).addPattern((0,e.pattern)`orgy`).addPattern((0,e.pattern)`orgies`).addWhitelistedTerm("porgy")).addPhrase(t=>t.setMetadata({originalWord:"penis"}).addPattern((0,e.pattern)`pe[e]nis`).addPattern((0,e.pattern)`|pnis`).addWhitelistedTerm("pen is")).addPhrase(t=>t.setMetadata({originalWord:"piss"}).addPattern((0,e.pattern)`|piss`)).addPhrase(t=>t.setMetadata({originalWord:"porn"}).addPattern((0,e.pattern)`|prn|`).addPattern((0,e.pattern)`porn`).addWhitelistedTerm("p orna")).addPhrase(t=>t.setMetadata({originalWord:"prick"}).addPattern((0,e.pattern)`|prick[s]|`)).addPhrase(t=>t.setMetadata({originalWord:"pussy"}).addPattern((0,e.pattern)`p[u]ssy`)).addPhrase(t=>t.setMetadata({originalWord:"rape"}).addPattern((0,e.pattern)`|rape`).addPattern((0,e.pattern)`|rapis[s]t`).addWhitelistedTerm("rapper")).addPhrase(t=>t.setMetadata({originalWord:"retard"}).addPattern((0,e.pattern)`retard`)).addPhrase(t=>t.setMetadata({originalWord:"scat"}).addPattern((0,e.pattern)`|s[s]cat|`)).addPhrase(t=>t.setMetadata({originalWord:"semen"}).addPattern((0,e.pattern)`|s[s]e[e]me[e]n`)).addPhrase(t=>t.setMetadata({originalWord:"sex"}).addPattern((0,e.pattern)`|s[s]e[e]x|`).addPattern((0,e.pattern)`|s[s]e[e]xy|`)).addPhrase(t=>t.setMetadata({originalWord:"shit"}).addPattern((0,e.pattern)`|shit`).addPattern((0,e.pattern)`shit|`).addWhitelistedTerm("s hit").addWhitelistedTerm("sh it").addWhitelistedTerm("shi t").addWhitelistedTerm("shitake")).addPhrase(t=>t.setMetadata({originalWord:"slut"}).addPattern((0,e.pattern)`s[s]lut`)).addPhrase(t=>t.setMetadata({originalWord:"spastic"}).addPattern((0,e.pattern)`|spastic`)).addPhrase(t=>t.setMetadata({originalWord:"tit"}).addPattern((0,e.pattern)`|tit|`).addPattern((0,e.pattern)`|tits|`).addPattern((0,e.pattern)`|titt`).addPattern((0,e.pattern)`|tiddies`).addPattern((0,e.pattern)`|tities`)).addPhrase(t=>t.setMetadata({originalWord:"tranny"}).addPattern((0,e.pattern)`|trany`)).addPhrase(t=>t.setMetadata({originalWord:"turd"}).addPattern((0,e.pattern)`|turd`).addWhitelistedTerm("turducken")).addPhrase(t=>t.setMetadata({originalWord:"twat"}).addPattern((0,e.pattern)`|twat`).addWhitelistedTerm("twattle")).addPhrase(t=>t.setMetadata({originalWord:"vagina"}).addPattern((0,e.pattern)`vagina`).addPattern((0,e.pattern)`|v[?]gina`)).addPhrase(t=>t.setMetadata({originalWord:"wank"}).addPattern((0,e.pattern)`|wank`)).addPhrase(t=>t.setMetadata({originalWord:"whore"}).addPattern((0,e.pattern)`|wh[o]re|`).addPattern((0,e.pattern)`|who[o]res[s]|`).addWhitelistedTerm("who're"))})(Re)),Re}var ke={},ht;function ir(){if(ht)return ke;
1ht=1,Object.defineProperty(ke,"__esModule",{value:!0}),ke.skipNonAlphabeticTransformer=e;const r=F(),s=xe();function e(){return(0,s.createSimpleTransformer)(n=>(0,r.isAlphabetic)(n)?n:void 0)}return ke}var ut;function or(){return ut||(ut=1,(function(r){var s=K&&K.__createBinding||(Object.create?(function(n,a,d,l){l===void 0&&(l=d);var t=Object.getOwnPropertyDescriptor(a,d);(!t||("get"in t?!a.__esModule:t.writable||t.configurable))&&(t={enumerable:!0,get:function(){return a[d]}}),Object.defineProperty(n,l,t)}):(function(n,a,d,l){l===void 0&&(l=d),n[l]=a[d]})),e=K&&K.__exportStar||function(n,a){for(var d in n)d!=="default"&&!Object.prototype.hasOwnProperty.call(a,d)&&s(a,n,d)};Object.defineProperty(r,"__esModule",{value:!0}),e(vt(),r),e(Xt(),r),e(wt(),r),e(yt(),r),e(Zt(),r),e(Ie(),r),e(er(),r),e(Ee(),r),e(Tt(),r),e(Mt(),r),e(sr(),r),e(Ct(),r),e(Ne(),r),e(St(),r),e(Wt(),r),e(ir(),r),e(xe(),r),e(kt(),r)})(K)),K}var dr=or();const y=Nt(dr);y.DataSet;y.ParserError;y.PhraseBuilder;const lr=y.RegExpMatcher;y.SyntaxKind;y.TextCensor;y.assignIncrementingIds;y.asteriskCensorStrategy;y.collapseDuplicatesTransformer;y.compareMatchByPositionAndId;y.createSimpleTransformer;y.createStatefulTransformer;const cr=y.englishDataset;y.englishRecommendedBlacklistMatcherTransformers;const hr=y.englishRecommendedTransformers;y.englishRecommendedWhitelistMatcherTransformers;y.fixedCharCensorStrategy;y.fixedPhraseCensorStrategy;y.grawlixCensorStrategy;y.keepEndCensorStrategy;y.keepStartCensorStrategy;y.parseRawPattern;y.pattern;y.randomCharFromSetCensorStrategy;y.remapCharactersTransformer;y.resolveConfusablesTransformer;y.resolveLeetSpeakTransformer;y.skipNonAlphabeticTransformer;y.toAsciiLowerCaseTransformer;const ur=new Set(["admin","administrator","ecobot","ecobot_team","staff","mod","moderator","support","help","root","null","undefined","system","owner","lovable","lee","leigh","anonymous","guest","me","you","wetlandapp","wetlandsapp","wetlandbot","gis4wetlands","bioapp","esri","arcgis","fieldmaps","survey123","collector","quickcapture","fulcrum","fieldpro","fieldmate","mergin","mergin_maps","qfield","oakspatial","wildnote","wildco","iform","gomapper","mapit","turboclean","ecoexplorer"].map(r=>r.toLowerCase())),fr=new lr({...cr.build(),...hr}),pr=/^[A-Za-z0-9](?:[A-Za-z0-9_-]{1,14}[A-Za-z0-9])?$/,mr=Ot().trim().min(3,"At least 3 characters").max(16,"At most 16 characters").regex(pr,"Letters, numbers, _ and - only. Can't start or end with _ or -.").refine(r=>!ur.has(r.toLowerCase()),{message:"That name is reserved, pick another"}).refine(r=>!fr.hasMatch(r),{message:"Pick a different name"});function gr(r){const s=mr.safeParse(r);return s.success?{ok:!0,value:s.data}:{ok:!1,error:s.error.issues[0]?.message??"Invalid"}}Lt({score:Oe().int().min(1).max(9999),durationMs:Oe().int().min(1e3).max(3600*1e3)});const xr=Pt({method:"GET"}).handler(gt("d02125457237981146dccd52f93573e248c0c7d7c8412d1dd2d27380877cd6f0")),Pr=Pt({method:"POST"}).handler(gt("8c2e1ce95ef40fb289a5f87562ebc234c59aea96467a953f16377d91cee9ec5a")),ft="snake.lastName";function br(r){const s=Date.now()-new Date(r).getTime(),e=Math.floor(s/864e5);return e<1?"today":e<2?"yesterday":e<30?`${e}d ago`:e<365?`${Math.floor(e/30)}mo ago`:`${Math.floor(e/365)}y ago`}function Er(){const[r,s]=x.useState(null),[e,n]=x.useState(null),[a,d]=x.useState(!1),l=mt(),t=xt(xr),{data:h}=qt({queryKey:["snake-entries"],queryFn:()=>t()}),o=h?.rows??[],i=x.useCallback(({score:T,durationMs:Z})=>{s({score:T,durationMs:Z}),n(null),d(!1)},[]),f=x.useCallback(T=>{n(T),l.invalidateQueries({queryKey:["snake-entries"]})},[l]),m=x.useMemo(()=>o.map(T=>({...T,isMe:T.id===e})),[o,e]),b=10,v=Math.max(1,Math.ceil(m.length/b)),[w,A]=x.useState(1),S=Math.min(w,v),Y=m.slice((S-1)*b,S*b);x.useEffect(()=>{if(!e)return;const T=m.findIndex(Z=>Z.id===e);T>=0&&A(Math.floor(T/b)+1)},[e,m]);const X=r!==null&&r.score>0&&!e&&!a;return c.jsx("div",{className:"flex min-h-screen flex-col bg-[#070b14] text-white",children:c.jsx("main",{className:"flex-1 px-4 py-10 sm:py-14",children:c.jsxs("div",{className:"mx-auto max-w-5xl",children:[c.jsxs("div",{className:"mb-8",children:[c.jsx("h1",{className:"font-display text-4xl tracking-tight sm:text-5xl",children:"Snake"}),c.jsx("p",{className:"mt-2 max-w-xl text-sm text-white/60",children:"Eat delineation flags. Don't bite yourself. Don't stray from the parcel boundary."}),c.jsx("p",{className:"mt-3 max-w-xl text-sm italic text-white/50",children:"Ever wonder what happens when your flags go missing from a site? Well now you know... but this time, you're the snake!"})]}),c.jsxs("div",{className:"grid gap-8 lg:grid-cols-[minmax(0,1fr)_340px]",children:[c.jsxs("div",{children:[c.jsx("div",{className:"mx-auto max-w-[480px]",children:c.jsx(Gt,{onGameOver:i})}),r!==null&&c.jsxs("div",{className:"mx-auto mt-4 max-w-[480px] space-y-3",children:[c.jsx("div",{className:"rounded-xl border border-white/10 bg-white/5 px-4 py-3 text-sm text-white/75",children:r.score===0?"No flags this round, try again.":e?`Saved. Score ${r.score} is on the leaderboard.`:a?`Score ${r.score}, not saved.`:`Score ${r.score}. Add your name to the leaderboard?`}),X&&c.jsx(vr,{score:r.score,durationMs:r.durationMs,onSaved:f,onSkip:()=>d(!0)})]})]}),c.jsxs("aside",{className:"space-y-6",children:[c.jsxs("div",{className:"rounded-2xl border border-white/10 bg-white/[0.03] p-5",children:[c.jsxs("div",{className:"flex items-baseline justify-between",children:[c.jsx("h2",{className:"font-display text-lg font-semibold text-white",children:"Leaderboard"}),c.jsxs("span",{className:"text-[10px] uppercase tracking-[0.18em] text-white/40",children:["Top ",m.length]})]}),c.jsxs("ol",{className:"mt-4 divide-y divide-white/5",children:[Y.map(T=>c.jsxs("li",{className:`flex items-center gap-3 py-2 text-sm ${T.isMe?"text-emerald-300":"text-white/85"}`,children:[c.jsxs("span",{className:"w-7 font-mono text-xs text-white/40",children:["#",T.rank]}),c.jsxs("span",{className:"flex-1 truncate font-medium",children:[T.displayName,T.isMe&&c.jsx("span",{className:"ml-2 text-[10px] uppercase tracking-wider text-emerald-400/80",children:"you"})]}),c.jsx("span",{className:"text-xs text-white/40",children:br(T.createdAt)}),c.jsx("span",{className:"w-10 text-right font-mono font-semibold",children:T.score})]}
1,T.id)),m.length===0&&c.jsx("li",{className:"py-4 text-center text-xs text-white/40",children:"No scores yet, be the first."})]}),v>1&&c.jsxs("div",{className:"mt-4 flex items-center justify-between border-t border-white/5 pt-3 text-xs text-white/55",children:[c.jsx("button",{type:"button",onClick:()=>A(T=>Math.max(1,T-1)),disabled:S===1,className:"rounded-md px-2 py-1 hover:bg-white/5 disabled:opacity-30 disabled:hover:bg-transparent",children:"â Prev"}),c.jsxs("span",{className:"font-mono text-[11px] text-white/40",children:["Page ",S," / ",v]}),c.jsx("button",{type:"button",onClick:()=>A(T=>Math.min(v,T+1)),disabled:S===v,className:"rounded-md px-2 py-1 hover:bg-white/5 disabled:opacity-30 disabled:hover:bg-transparent",children:"Next â"})]})]}),c.jsxs("div",{className:"rounded-2xl border border-white/10 bg-white/[0.03] p-5 text-xs text-white/55",children:[c.jsx("div",{className:"font-display text-[11px] font-bold uppercase tracking-[0.18em] text-white/55",children:"How to play"}),c.jsxs("ul",{className:"mt-2 space-y-1",children:[c.jsx("li",{children:"⢠Arrow keys or WASD on desktop"}),c.jsx("li",{children:"⢠Swipe on mobile"}),c.jsx("li",{children:"⢠Speed bumps up every 5 flags"})]})]})]})]})]})})})}function vr({score:r,durationMs:s,onSaved:e,onSkip:n}){const a=typeof window<"u"?window.localStorage.getItem(ft)??"":"",[d,l]=x.useState(a),[t,h]=x.useState(null),o=xt(Pr),i=Bt({mutationFn:m=>o({data:{displayName:m,score:r,durationMs:s}}),onSuccess:m=>{if(!m.ok){h(m.error);return}try{window.localStorage.setItem(ft,m.displayName)}catch{}e(m.id)},onError:()=>h("Something went wrong, try again")});function f(m){m.preventDefault(),h(null);const b=gr(d);if(!b.ok){h(b.error??"Invalid name");return}i.mutate(b.value??d.trim())}return c.jsxs("form",{onSubmit:f,className:"rounded-xl border border-emerald-500/30 bg-emerald-500/[0.06] p-4",children:[c.jsx("label",{className:"font-display text-[11px] font-bold uppercase tracking-[0.18em] text-emerald-300",children:"Your name for the leaderboard"}),c.jsxs("div",{className:"mt-2 flex gap-2",children:[c.jsx("input",{autoFocus:!0,autoComplete:"off",maxLength:16,value:d,onChange:m=>l(m.target.value),placeholder:"wetland_ninja",className:"h-11 flex-1 rounded-lg border border-white/15 bg-white/5 px-3 text-[15px] text-white outline-none placeholder:text-white/30 focus:border-emerald-400 focus:ring-2 focus:ring-emerald-400/30"}),c.jsx("button",{type:"submit",disabled:i.isPending,className:"inline-flex h-11 items-center justify-center rounded-pill bg-emerald-500 px-5 font-display text-sm font-semibold text-black hover:bg-emerald-400 disabled:opacity-50",children:i.isPending?"Savingâ¦":"Save"})]}),c.jsxs("div",{className:"mt-2 flex items-center justify-between text-xs text-white/40",children:[c.jsx("span",{children:"3-16 chars, letters, numbers, _ and -"}),c.jsx("button",{type:"button",onClick:n,className:"text-white/50 underline-offset-2 hover:text-white hover:underline",children:"Skip"})]}),t&&c.jsx("p",{className:"mt-2 text-xs text-red-400",children:t})]})}export{Er as component};
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.