@dineug/erd-editor-mcp 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,66 @@
1
+ #!/usr/bin/env node
2
+ import*as e from"node:path";import*as t from"node:url";import*as n from"node:net";import*as r from"node:crypto";import{randomUUID as i,webcrypto as a}from"node:crypto";import*as o from"node:os";import{homedir as s}from"node:os";import{realpath as c,stat as l}from"node:fs/promises";import*as u from"node:fs";var d=Object.create,f=Object.defineProperty,p=Object.getOwnPropertyDescriptor,m=Object.getOwnPropertyNames,h=Object.getPrototypeOf,g=Object.prototype.hasOwnProperty,_=(e,t)=>()=>(t||(e((t={exports:{}}).exports,t),e=null),t.exports),v=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=m(t),a=0,o=i.length,s;a<o;a++)s=i[a],!g.call(e,s)&&s!==n&&f(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=p(t,s))||r.enumerable});return e},y=(e,t,n)=>(n=e==null?{}:d(h(e)),v(t||!e||!e.__esModule||!g.call(e,`default`)?f(n,`default`,{value:e,enumerable:!0}):n,e)),b=(e,t)=>{switch(t.length){case 0:return e;case 1:return t[0](e);case 2:return t[1](t[0](e));case 3:return t[2](t[1](t[0](e)));case 4:return t[3](t[2](t[1](t[0](e))));case 5:return t[4](t[3](t[2](t[1](t[0](e)))));case 6:return t[5](t[4](t[3](t[2](t[1](t[0](e))))));case 7:return t[6](t[5](t[4](t[3](t[2](t[1](t[0](e)))))));case 8:return t[7](t[6](t[5](t[4](t[3](t[2](t[1](t[0](e))))))));case 9:return t[8](t[7](t[6](t[5](t[4](t[3](t[2](t[1](t[0](e)))))))));default:{let n=e;for(let e=0,r=t.length;e<r;e++)n=t[e](n);return n}}},ee={pipe(){return b(this,arguments)}},te=function(){function e(){}return e.prototype=ee,e}(),x=function(e,t){if(typeof e==`function`)return function(){return e(arguments)?t.apply(this,arguments):e=>t(e,...arguments)};switch(e){case 0:case 1:throw RangeError(`Invalid arity ${e}`);case 2:return function(e,n){return arguments.length>=2?t(e,n):function(n){return t(n,e)}};case 3:return function(e,n,r){return arguments.length>=3?t(e,n,r):function(r){return t(r,e,n)}};default:return function(){if(arguments.length>=e)return t.apply(this,arguments);let n=arguments;return function(e){return t(e,...n)}}}},S=e=>e,ne=e=>()=>e,re=ne(!0),ie=ne(!1),ae=ne(null),oe=ne(void 0),se=oe;function ce(e,...t){return b(e,t)}function le(e,t,n,r,i,a,o,s,c){switch(arguments.length){case 1:return e;case 2:return function(){return t(e.apply(this,arguments))};case 3:return function(){return n(t(e.apply(this,arguments)))};case 4:return function(){return r(n(t(e.apply(this,arguments))))};case 5:return function(){return i(r(n(t(e.apply(this,arguments)))))};case 6:return function(){return a(i(r(n(t(e.apply(this,arguments))))))};case 7:return function(){return o(a(i(r(n(t(e.apply(this,arguments)))))))};case 8:return function(){return s(o(a(i(r(n(t(e.apply(this,arguments))))))))};case 9:return function(){return c(s(o(a(i(r(n(t(e.apply(this,arguments)))))))))}}}function ue(e){let t=new WeakMap;return n=>{let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),i}}function de(e){let t=new WeakMap;return n=>{let r=t.get(n);if(r!==void 0)return r;let i=e(n);return t.set(n,i),t.set(i,i),i}}var fe=e=>{let t=new Set(Reflect.ownKeys(e));if(e.constructor===Object)return t;e instanceof Error&&t.delete(`stack`);let n=Object.getPrototypeOf(e),r=n;for(;r!==null&&r!==Object.prototype;){let e=Reflect.ownKeys(r);for(let n=0;n<e.length;n++)t.add(e[n]);r=Object.getPrototypeOf(r)}return t.has(`constructor`)&&typeof e.constructor==`function`&&n===e.constructor.prototype&&t.delete(`constructor`),t},pe=new WeakSet;function me(e){return typeof e==`string`}function he(e){return typeof e==`number`}function ge(e){return typeof e==`boolean`}function _e(e){return typeof e==`bigint`}function ve(e){return typeof e==`symbol`}function ye(e){return me(e)||he(e)||ve(e)}function be(e){return typeof e==`function`}function xe(e){return e===void 0}function Se(e){return e!==void 0}function Ce(e){return e==null}function we(e){return e!=null}function Te(e){return!1}function Ee(e){return!0}function De(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Oe(e){return De(e)}function ke(e){return typeof e==`object`&&!!e||be(e)}var C=x(2,(e,t)=>ke(e)&&t in e),Ae=x(2,(e,t)=>C(e,`_tag`)&&e._tag===t);function je(e){return e instanceof Error}function Me(e){return C(e,Symbol.iterator)||me(e)}var Ne=`~effect/Hash`,Pe=e=>{switch(typeof e){case`number`:return ze(e);case`bigint`:return Be(e.toString(10));case`string`:return Be(e);case`undefined`:return Be(`undefined`);case`function`:case`object`:if(e===null)return Be(`null`);if(e instanceof Date)return Number.isNaN(e.getTime())?Be(`Invalid Date`):Be(e.toISOString());if(e instanceof RegExp)return Be(e.toString());{if(pe.has(e))return Fe(e);if(Je.has(e))return Je.get(e);let t=Xe(e,()=>Re(e)?e[Ne]():typeof e==`function`?Fe(e):e instanceof DataView?We(new Uint8Array(e.buffer,e.byteOffset,e.byteLength)):Array.isArray(e)||ArrayBuffer.isView(e)?We(e):e instanceof Map?Ge(e):e instanceof Set?Ke(e):He(e));return Je.set(e,t),t}default:return Be(String(e))}},Fe=e=>(qe.has(e)||qe.set(e,ze(Math.floor(Math.random()*(2**53-1)))),qe.get(e)),Ie=x(2,(e,t)=>e*53^t),Le=e=>e&3221225471|e>>>1&1073741824,Re=e=>C(e,Ne),ze=e=>{if(e!==e||e===1/0||e===-1/0)return Be(String(e));let t=e|0;for(t!==e&&(t^=e*4294967295);e>4294967295;)t^=e/=4294967295;return Le(t)},Be=e=>{let t=5381,n=e.length;for(;n;)t=t*33^e.charCodeAt(--n);return Le(t)},Ve=(e,t)=>{let n=12289;for(let r of t)n^=Ie(Pe(r),Pe(e[r]));return Le(n)},He=e=>Ve(e,fe(e)),Ue=(e,t)=>n=>{let r=e;for(let e of n)r^=t(e);return Le(r)},We=Ue(6151,Pe),Ge=Ue(Be(`Map`),([e,t])=>Ie(Pe(e),Pe(t))),Ke=Ue(Be(`Set`),Pe),qe=new WeakMap,Je=new WeakMap,Ye=new WeakSet;function Xe(e,t){if(Ye.has(e))return Be(`[Circular]`);Ye.add(e);let n=t();return Ye.delete(e),n}var Ze=`~effect/Equal`;function Qe(){return arguments.length===1?e=>$e(e,arguments[0]):$e(arguments[0],arguments[1])}function $e(e,t){if(e===t)return!0;if(e==null||t==null)return!1;let n=typeof e;return n===typeof t?n===`number`&&e!==e&&t!==t?!0:n!==`object`&&n!==`function`||pe.has(e)||pe.has(t)?!1:it(e,t,rt):!1}function et(e,t,n){let r=tt.has(e),i=nt.has(t);if(r&&i)return!0;if(r||i)return!1;tt.add(e),nt.add(t);let a=n();return tt.delete(e),nt.delete(t),a}var tt=new WeakSet,nt=new WeakSet;function rt(e,t){if(Pe(e)!==Pe(t))return!1;if(e instanceof Date){if(!(t instanceof Date))return!1;let n=e.getTime(),r=t.getTime();return n===r||Number.isNaN(n)&&Number.isNaN(r)}if(e instanceof RegExp)return t instanceof RegExp&&e.toString()===t.toString();let n=pt(e),r=pt(t);if(n!==r)return!1;let i=n&&r;return typeof e==`function`&&!i?!1:et(e,t,()=>{if(i)return e[Ze](t);if(Array.isArray(e))return!Array.isArray(t)||e.length!==t.length?!1:ot(e,t);if(ArrayBuffer.isView(e)){let n=e instanceof DataView;if(!ArrayBuffer.isView(t)||e.byteLength!==t.byteLength||n!==t instanceof DataView)return!1;if(n){let n=t;return st(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(n.buffer,n.byteOffset,n.byteLength))}return st(e,t)}return e instanceof Map?!(t instanceof Map)||e.size!==t.size?!1:ut(e,t):e instanceof Set?!(t instanceof Set)||e.size!==t.size?!1:ft(e,t):ct(e,t)})}function it(e,t,n){let r=at.get(e);if(!r)r=new WeakMap,at.set(e,r);else if(r.has(t))return r.get(t);let i=n(e,t);r.set(t,i);let a=at.get(t);return a||(a=new WeakMap,at.set(t,a)),a.set(e,i),i}var at=new WeakMap;function ot(e,t){for(let n=0;n<e.length;n++)if(!$e(e[n],t[n]))return!1;return!0}function st(e,t){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function ct(e,t){let n=fe(e),r=fe(t);if(n.size!==r.size)return!1;for(let i of n)if(!r.has(i)||!$e(e[i],t[i]))return!1;return!0}function lt(e,t){return function(n,r){let i=Array.from(r);for(let[r,a]of n){let n=!1;for(let o=0;o<i.length;o++){let[s,c]=i[o];if(e(r,s)&&t(a,c)){i[o]=i[i.length-1],i.pop(),n=!0;break}}if(!n)return!1}return!0}}var ut=lt($e,$e);function dt(e){return function(t,n){let r=Array.from(n);for(let n of t){let t=!1;for(let i=0;i<r.length;i++){let a=r[i];if(e(n,a)){r[i]=r[r.length-1],r.pop(),t=!0;break}}if(!t)return!1}return!0}}var ft=dt($e),pt=e=>C(e,Ze),mt=Symbol.for(`~effect/Redactable`),ht=e=>C(e,mt);function gt(e){return ht(e)?_t(e):e}function _t(e){return e[mt](globalThis[`~effect/Fiber/currentFiber`]?.context??bt)}var vt=`~effect/Fiber/currentFiber`,yt=new Map,bt={"~effect/Context":{},base:yt,depth:0,mapUnsafe:yt,pipe(){return b(this,arguments)}};function xt(e,t){let n=t?.space??0,r=new WeakSet,i=n?typeof n==`number`?` `.repeat(n):n:``,a=e=>i.repeat(e),o=(e,t)=>{let n=e?.constructor;return n&&n!==Object.prototype.constructor&&n.name?`${n.name}(${t})`:t},s=e=>{try{return Reflect.ownKeys(e)}catch{return[`[ownKeys threw]`]}};function c(e,t=0){try{return l(e,t)}catch{return(typeof e==`object`&&e||typeof e==`function`)&&r.delete(e),`[inspection threw]`}}function l(e,n=0){if(typeof e==`string`)return JSON.stringify(e);if(typeof e==`number`||e==null||typeof e==`boolean`||typeof e==`symbol`)return String(e);if(typeof e==`bigint`)return String(e)+`n`;if(typeof e==`object`||typeof e==`function`){if(r.has(e))return St;r.add(e);let l;if(mt in e)l=c(_t(e),n);else if(Array.isArray(e))l=!i||e.length<=1?`[${e.map(e=>c(e,n)).join(`,`)}]`:`[\n${a(n+1)}${e.map(e=>c(e,n+1)).join(`,
3
+ `+a(n+1))}\n${a(n)}]`;else if(e instanceof Date)l=Tt(e);else if(!t?.ignoreToString&&C(e,`toString`)&&typeof e.toString==`function`&&e.toString!==Object.prototype.toString&&e.toString!==Array.prototype.toString){let t=Et(e);l=e instanceof Error&&e.cause!==void 0?`${t} (cause: ${c(e.cause,n)})`:t}else if(Symbol.iterator in e)l=`${e.constructor.name}(${c(Array.from(e),n)})`;else{let t=s(e);if(!i||t.length<=1){let r=`{${t.map(t=>`${Ct(t)}:${c(Dt(e,t),n)}`).join(`,`)}}`;l=o(e,r)}else{let r=`{\n${t.map(t=>`${a(n+1)}${Ct(t)}: ${c(Dt(e,t),n+1)}`).join(`,
4
+ `)}\n${a(n)}}`;l=o(e,r)}}return r.delete(e),l}return String(e)}return c(e,0)}var St=`[Circular]`;function Ct(e){return typeof e==`string`?JSON.stringify(e):String(e)}function wt(e){return e.map(e=>`[${Ct(e)}]`).join(``)}function Tt(e){try{return e.toISOString()}catch{return`Invalid Date`}}function Et(e){try{let t=e.toString();return typeof t==`string`?t:String(t)}catch{return`[toString threw]`}}function Dt(e,t){try{return e[t]}catch{return`[property access threw]`}}function Ot(e,t){let n=[];return JSON.stringify(e,function(e,t){let r=Object.getOwnPropertyDescriptor(this,e)?.value,i=C(r,mt)?gt(r):gt(t);if(typeof i==`bigint`)return xt(i);if(typeof i!=`object`||!i)return i;for(;n.length>0&&n[n.length-1]!==this;)n.pop();if(!n.includes(i))return n.push(i),i},t?.space)??`null`}var kt=Symbol.for(`nodejs.util.inspect.custom`),At=e=>{try{return e=gt(e),C(e,`toJSON`)&&be(e.toJSON)&&e.toJSON.length===0?e.toJSON():Array.isArray(e)?e.map(At):e}catch{return`[toJSON threw]`}},jt=(e,t=2)=>{if(typeof e==`string`)return e;try{return typeof e==`object`?Ot(e,{space:t}):xt(e,{space:t})}catch{return String(e)}},Mt={toJSON(){return At(this)},[kt](){return this.toJSON()},toString(){return xt(this.toJSON())}},Nt=(()=>{let e=Object.getOwnPropertyDescriptor(Error,`stackTraceLimit`);return e===void 0?Object.isExtensible(Error):Object.hasOwn(e,`writable`)?e.writable===!0:e.set!==void 0})(),Pt=()=>Error.stackTraceLimit,Ft=e=>{Nt&&(Error.stackTraceLimit=e)},It=class e{called=!1;self;constructor(e){this.self=e}next(e){return this.called?{value:e,done:!0}:(this.called=!0,{value:this.self,done:!1})}[Symbol.iterator](){return new e(this.self)}},Lt=(()=>{let e=`~effect/Utils/internal`,t={[e]:e=>e()},n={[e]:e=>{try{return e()}finally{}}};return Pt()!==0&&t[e](()=>Error().stack)?.includes(e)===!0?t[e]:n[e]})();function Rt(e,t,n){t===`__proto__`?Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0}):e[t]=n}function zt(e,t){for(let n of Reflect.ownKeys(t))Object.prototype.propertyIsEnumerable.call(t,n)&&Rt(e,n,t[n])}var Bt=`~effect/Effect`,Vt=`~effect/Exit`,Ht={_A:S,_E:S,_R:S},Ut=`${Bt}/identifier`,Wt=`${Bt}/args`,Gt=`${Bt}/evaluate`,Kt=`${Bt}/successCont`,qt=`${Bt}/failureCont`,Jt=`${Bt}/ensureCont`,Yt=Symbol.for(`effect/Effect/Yield`),Xt={pipe(){return b(this,arguments)},toJSON(){return{...this}},toString(){return xt(this.toJSON(),{ignoreToString:!0,space:2})},[kt](){return this.toJSON()}},Zt={[Bt]:Ht,...Xt,[Symbol.iterator](){return new It(this)},toJSON(){return{_id:`Effect`,op:this[Ut],...Wt in this?{args:this[Wt]}:void 0}}},Qt=e=>C(e,Bt),$t=e=>C(e,Vt),en=`~effect/Cause`,tn=`~effect/Cause/Reason`,nn=e=>C(e,en),rn=e=>C(e,tn),an=class{constructor(e){this[en]=en,this.reasons=e}pipe(){return b(this,arguments)}toJSON(){return{_id:`Cause`,failures:this.reasons.map(e=>e.toJSON())}}toString(){return`Cause(${xt(this.reasons)})`}[kt](){return this.toJSON()}[Ze](e){return nn(e)&&this.reasons.length===e.reasons.length&&this.reasons.every((t,n)=>Qe(t,e.reasons[n]))}[Ne](){return We(this.reasons)}},on=new WeakMap,sn=class{[tn];annotations;_tag;constructor(e,t,n){if(this[tn]=tn,this._tag=e,t!==cn&&typeof n==`object`&&n&&t.size>0){let e=on.get(n);e&&(t=new Map([...e,...t])),on.set(n,t)}this.annotations=t}annotate(e,t){if(e.mapUnsafe.size===0)return this;let n=new Map(this.annotations);e.mapUnsafe.forEach((e,r)=>{t?.overwrite!==!0&&n.has(r)||n.set(r,e)});let r=Object.assign(Object.create(Object.getPrototypeOf(this)),this);return r.annotations=n,r}pipe(){return b(this,arguments)}toString(){return xt(this)}[kt](){return this.toString()}},cn=new Map,ln=class extends sn{constructor(e,t=cn){super(`Fail`,t,e),this.error=e}toString(){return`Fail(${xt(this.error)})`}toJSON(){return{_tag:`Fail`,error:this.error}}[Ze](e){return gn(e)&&Qe(this.error,e.error)&&Qe(this.annotations,e.annotations)}[Ne](){return Ie(Be(this._tag))(Ie(Pe(this.error))(Pe(this.annotations)))}},un=e=>new an(e),dn=new an([]),fn=e=>new an([new ln(e)]),pn=class extends sn{constructor(e,t=cn){super(`Die`,t,e),this.defect=e}toString(){return`Die(${xt(this.defect)})`}toJSON(){return{_tag:`Die`,defect:this.defect}}[Ze](e){return _n(e)&&Qe(this.defect,e.defect)&&Qe(this.annotations,e.annotations)}[Ne](){return Ie(Be(this._tag))(Ie(Pe(this.defect))(Pe(this.annotations)))}},mn=e=>new an([new pn(e)]),hn=x(e=>nn(e[0]),(e,t,n)=>t.mapUnsafe.size===0?e:new an(e.reasons.map(e=>e.annotate(t,n)))),gn=e=>e._tag===`Fail`,_n=e=>e._tag===`Die`,vn=e=>e._tag===`Interrupt`;function yn(e){return On(`Effect.evaluate: Not implemented`)}var bn=e=>({...Zt,[Ut]:e.op,[Gt]:e[Gt]??yn,[Kt]:e[Kt],[qt]:e[qt],[Jt]:e[Jt]}),xn=e=>{let t=bn(e),n=function(e){this[Wt]=e};return n.prototype=t,function(e){return new n(e)}},Sn=e=>{let t={[Vt]:Vt,_tag:e.op,get[e.prop](){return this[Wt]},...bn(e),toString(){return`${e.op}(${xt(this[Wt])})`},toJSON(){return{_id:`Exit`,_tag:e.op,[e.prop]:this[Wt]}},[Ze](e){return $t(e)&&e._tag===this._tag&&Qe(this[Wt],e[Wt])},[Ne](){return Ie(Be(e.op),Pe(this[Wt]))}},n=function(e){this[Wt]=e};return n.prototype=t,function(e){return new n(e)}},Cn=Sn({op:`Success`,prop:`value`,[Gt](e){let t=e.getCont(Kt);return t?t[Kt](this[Wt],e,this):e.yieldWith(this)}}),wn={key:`effect/Cause/StackTrace`},Tn={key:`effect/Cause/InterruptorStackTrace`},En=Sn({op:`Failure`,prop:`cause`,[Gt](e){let t=this[Wt],n=!1;e.cache.stackFrame&&(t=hn(t,{mapUnsafe:new Map([[wn.key,e.cache.stackFrame]])}),n=!0);let r=e.getCont(qt);for(;e.interruptible&&e._interruptedCause&&r;)r=e.getCont(qt);return r?r[qt](t,e,n?void 0:this):e.yieldWith(n?En(t):this)}}),Dn=e=>En(fn(e)),On=e=>En(mn(e)),kn=xn({op:`WithFiber`,[Gt](e){return this[Wt](e)}}),An=function(){class e extends globalThis.Error{}let t=bn({op:`YieldableError`,[Gt](){return Dn(this)}});return delete t.toString,Object.assign(e.prototype,t),e}(),jn=function(){let e=Symbol.for(`effect/Data/Error/plainArgs`);return class extends An{constructor(t){super(t?.message,t?.cause?{cause:t.cause}:void 0),t&&(zt(this,t),Object.defineProperty(this,e,{value:t,enumerable:!1}))}toJSON(){return{...this[e],...this}}}}(),Mn=e=>{class t extends jn{_tag=e}return t.prototype.name=e,t},Nn=`~effect/Cause/NoSuchElementError`,Pn=class extends Mn(`NoSuchElementError`){[Nn]=Nn;constructor(e){super({message:e})}},Fn=`~effect/Cause/Done`,In=e=>C(e,Fn),Ln={[Fn]:Fn,_tag:`Done`,value:void 0},Rn=e=>e===void 0?Ln:{[Fn]:Fn,_tag:`Done`,value:e},eee=Dn(Ln),zn=e=>e===void 0?eee:Dn(Rn(e)),Bn=e=>bn({op:e.label,[Gt]:e.evaluate}),Vn=e=>(t,n)=>t===n||e(t,n),Hn=(e,t)=>e===t,Un=()=>Hn,Wn=`~effect/Option`,Gn={[Wn]:{_A:e=>e},...Xt,[Symbol.iterator](){return new It(this)}},Kn=Object.defineProperty(Object.assign(Object.create(Gn),{_tag:`Some`,_op:`Some`,[Ze](e){return Yn(e)&&Zn(e)&&Qe(this.value,e.value)},[Ne](){return Ie(Pe(this._tag))(Pe(this.value))},toString(){return`some(${xt(this.value)})`},toJSON(){return{_id:`Option`,_tag:this._tag,value:At(this.value)}}}),"valueOrUndefined",{get(){return this.value}}),qn=Pe(`None`),Jn=Object.assign(Object.create(Gn),{_tag:`None`,_op:`None`,valueOrUndefined:void 0,[Ze](e){return Yn(e)&&Xn(e)},[Ne](){return qn},toString(){return`none()`},toJSON(){return{_id:`Option`,_tag:this._tag}}}),Yn=e=>C(e,Wn),Xn=e=>e._tag===`None`,Zn=e=>e._tag===`Some`,Qn=Object.create(Jn),$n=function(e){this.value=e};$n.prototype=Kn;var er=e=>new $n(e),tr=`~effect/Result`,nr={[tr]:{_A:e=>e,_E:e=>e},...Xt,[Symbol.iterator](){return new It(this)}},tee=Object.assign(Object.create(nr),{_tag:`Success`,_op:`Success`,[Ze](e){return rr(e)&&ar(e)&&Qe(this.success,e.success)},[Ne](){return Ie(Pe(this._tag))(Pe(this.success))},toString(){return`success(${xt(this.success)})`},toJSON(){return{_id:`Result`,_tag:this._tag,value:At(this.success)}}}),nee=Object.assign(Object.create(nr),{_tag:`Failure`,_op:`Failure`,[Ze](e){return rr(e)&&ir(e)&&Qe(this.failure,e.failure)},[Ne](){return Ie(Pe(this._tag))(Pe(this.failure))},toString(){return`failure(${xt(this.failure)})`},toJSON(){return{_id:`Result`,_tag:this._tag,failure:At(this.failure)}}}),rr=e=>C(e,tr),ir=e=>e._tag===`Failure`,ar=e=>e._tag===`Success`,or=function(e){this.failure=e};or.prototype=nee;var ree=e=>new or(e),sr=function(e){this.success=e};sr.prototype=tee;var cr=e=>new sr(e);function lr(e){return(t,n)=>t===n?0:e(t,n)}var ur=lr((e,t)=>globalThis.Number.isNaN(e)&&globalThis.Number.isNaN(t)?0:globalThis.Number.isNaN(e)?-1:globalThis.Number.isNaN(t)?1:e<t?-1:1),dr=x(2,(e,t)=>lr((n,r)=>e(t(n),t(r)))),fr=e=>x(2,(t,n)=>e(t,n)===-1),pr=e=>x(2,(t,n)=>e(t,n)===1),mr=e=>x(2,(t,n)=>e(t,n)!==1),hr=e=>x(2,(t,n)=>e(t,n)!==-1),gr=()=>Qn,_r=er,vr=Yn,yr=Xn,br=Zn,xr=x(2,(e,{onNone:t,onSome:n})=>yr(e)?t():n(e.value)),Sr=x(2,(e,t)=>yr(e)?t():e.value),Cr=e=>e==null?gr():_r(e),wr=e=>e===void 0?gr():_r(e),Tr=Sr(oe),Er=e=>(...t)=>{try{return _r(e(...t))}catch{return gr()}},Dr=x(2,(e,t)=>yr(e)?gr():_r(t(e.value))),Or=x(2,(e,t)=>yr(e)?gr():t(e.value)),kr=x(2,(e,t)=>yr(e)?gr():t(e.value)?_r(e.value):gr()),Ar=`~effect/Context/Service`,jr=function(){function e(){}let t=e;Object.setPrototypeOf(t,Mr);let n=(e,n)=>(t.key=e,n?.defaultValue&&(t[Pr]=Pr,t.defaultValue=n.defaultValue),n?.make&&(t.make=n.make),n?.fiberCached&&Nr.add(e),t);return arguments.length>0?n(arguments[0],arguments[1]):n},Mr={[Ar]:Ar,...Bn({label:`Service`,evaluate(e){return Cn($r(e.context,this))}}),toJSON(){return{_id:`Service`,key:this.key}},of(e){return e},context(e){return Jr(this,e)},use(e){return kn(t=>e($r(t.context,this)))},useSync(e){return kn(t=>Cn(e($r(t.context,this))))}},Nr=new Set,Pr=`~effect/Context/Reference`,Fr=`~effect/Context`,Ir=8,Lr=8,Rr=(e,t,n,r)=>{let i=Object.create(iee);return i.cacheRoot=e??i,i.base=t,i.overlay=n,i.depth=r,i._flat=void 0,i.baseHits=0,i},zr=(e,t)=>{t&&(zr(e,t.parent),e.set(t.key,t.value))},Br=e=>{if(e._flat)return e._flat;if(!e.overlay)return e._flat=e.base;let t=new Map(e.base);return zr(t,e.overlay),e._flat=t},Vr=(e,t)=>{let n=new Map(e.mapUnsafe);return t(n),Wr(n)},Hr=Symbol(),Ur=(e,t)=>{let n=e;for(let e=n.overlay;e;e=e.parent)if(e.key===t)return e.value;let r=n.base.get(t);return r===void 0&&!n.base.has(t)?Hr:(n.overlay&&++n.baseHits>=Lr&&(n.base=Br(n),n.overlay=void 0,n.depth=0),r)},Wr=e=>Rr(void 0,e,void 0,0),iee={get mapUnsafe(){return Br(this)},...Xt,[Fr]:{_Services:e=>e},toJSON(){return{_id:`Context`,services:Array.from(this.mapUnsafe).map(([e,t])=>({key:e,value:t}))}},[Ze](e){if(!Gr(e))return!1;let t=this.mapUnsafe,n=e.mapUnsafe;if(t.size!==n.size)return!1;for(let[e,r]of t)if(!n.has(e)||!Qe(r,n.get(e)))return!1;return!0},[Ne](){return ze(this.mapUnsafe.size)}},aee=(e,t)=>e.cacheRoot===t.cacheRoot,Gr=e=>C(e,Fr),Kr=e=>!!e[Pr],qr=()=>oee,oee=Wr(new Map),Jr=(e,t)=>Wr(new Map([[e.key,t]])),Yr=x(3,(e,t,n)=>see(e,t.key,n)),see=(e,t,n)=>{let r=e,i=Nr.has(t)?void 0:r.cacheRoot;if(r.depth>=Ir){let e=new Map(r.mapUnsafe);return e.set(t,n),Rr(i,e,void 0,0)}return Rr(i,r.base,{key:t,value:n,parent:r.overlay},r.depth+1)},Xr=x(2,(e,t)=>Zr(e,t.key)),Zr=(e,t)=>{let n=Ur(e,t);return n===Hr?void 0:n},Qr=x(2,(e,t)=>{let n=Ur(e,t.key);if(n===Hr){if(Kr(t))return ti(t);throw ni(t)}return n}),$r=Qr,ei=`~effect/Context/defaultValue`,ti=e=>ei in e?e[ei]:e[ei]=e.defaultValue(),ni=e=>{let t=Error(`Service not found${e.key?`: ${String(e.key)}`:``}`);if(t.stack){let e=t.stack.split(`
5
+ `);e.splice(1,3),t.stack=e.join(`
6
+ `)}return t},ri=x(2,(e,t)=>{let n=Ur(e,t.key);return n===Hr?Kr(t)?_r(ti(t)):gr():_r(n)}),ii=x(2,(e,t)=>e.mapUnsafe.size===0?t:t.mapUnsafe.size===0?e:Vr(e,e=>t.mapUnsafe.forEach((t,n)=>e.set(n,t)))),ai=(...e)=>{let t=new Map;for(let n=0;n<e.length;n++)e[n].mapUnsafe.forEach((e,n)=>{t.set(n,e)});return Wr(t)},oi=(...e)=>t=>Vr(t,t=>{for(let n=0;n<e.length;n++)t.delete(e[n].key)}),si=jr,ci=e=>e.length>0,li=e=>e>0?Math.floor(e):0,ui=cr,di=ree,fi=rr,pi=ir,mi=ar,hi=x(2,(e,t)=>pi(e)?di(t(e.failure)):e),gi=x(2,(e,{onFailure:t,onSuccess:n})=>pi(e)?t(e.failure):n(e.success)),_i=x(2,(e,t)=>pi(e)?t(e.failure):e.success)(ae),vi=x(2,(e,t)=>Object.hasOwn(e,t)),yi=x(2,(e,t)=>{let n={...e};for(let r of bi(e))Rt(n,r,t(e[r],r));return n}),bi=e=>Object.keys(e),xi=e=>x(2,(t,n)=>{for(let r of bi(t))if(!vi(n,r)||!e(t[r],n[r]))return!1;return!0}),Si=e=>{let t=xi(e);return(e,n)=>t(e,n)&&t(n,e)},Ci=globalThis.Array,wi=e=>Ci.isArray(e)?e:Ci.from(e),Ti=x(2,(e,t)=>[...e,t]),Ei=Ci.isArray,Di=ci,Oi=ci,cee=e=>e[e.length-1],lee=(e,t)=>Math.min(li(e),t),uee=x(2,(e,t)=>{let n=wi(e);return n.slice(0,lee(t,n.length))}),ki=()=>[],Ai=e=>[e],ji=x(2,(e,t)=>e.map(t)),Mi=e=>{let t=[];for(let n of e)br(n)&&t.push(n.value);return t},Ni=`~effect/Duration`,Pi=BigInt(0),Fi=BigInt(1),Ii=BigInt(2),Li=BigInt(10),Ri=BigInt(24),zi=BigInt(60),Bi=BigInt(1e3),Vi=BigInt(1e6),Hi=e=>BigInt(e<0?Math.ceil(e-.5):Math.floor(e+.5)),Ui=e=>Hi(e*1e6),Wi=(e,t)=>{let n=e.indexOf(`.`);if(n===-1)return BigInt(e)*t;let r=e[0]===`-`,i=e.slice(n+1),a=Li**BigInt(i.length),o=(BigInt(e.slice(+!!r,n))*a+BigInt(i))*t,s=o/a+(o%a*Ii>=a?Fi:Pi);return r?-s:s},Gi=/^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|minutes?|hours?|days?|weeks?)$/,Ki=e=>{switch(typeof e){case`number`:return ca(e);case`bigint`:return sa(e);case`string`:{if(e===`Infinity`)return aa;if(e===`-Infinity`)return oa;let t=Gi.exec(e);if(!t)break;let[n,r,i]=t;if(i===`nano`||i===`nanos`)return sa(Wi(r,Fi));if(i===`micro`||i===`micros`)return sa(Wi(r,Bi));let a=Number(r);switch(i){case`milli`:case`millis`:return ca(a);case`second`:case`seconds`:return la(a);case`minute`:case`minutes`:return ua(a);case`hour`:case`hours`:return da(a);case`day`:case`days`:return fa(a);case`week`:case`weeks`:return pa(a)}break}case`object`:{if(e===null)break;if(Ni in e)return e;if(Array.isArray(e))return e.length!==2||!e.every(he)?qi(e):Number.isNaN(e[0])||Number.isNaN(e[1])?ia:e[0]===-1/0||e[1]===-1/0?oa:e[0]===1/0||e[1]===1/0?aa:Qi(Hi(e[0]*1e9+e[1]));let t=e,n=0;return t.weeks&&(n+=t.weeks*6048e5),t.days&&(n+=t.days*864e5),t.hours&&(n+=t.hours*36e5),t.minutes&&(n+=t.minutes*6e4),t.seconds&&(n+=t.seconds*1e3),t.milliseconds&&(n+=t.milliseconds),!t.microseconds&&!t.nanoseconds?Qi(n):Qi(Hi(n*1e6+(t.microseconds??0)*1e3+(t.nanoseconds??0)))}}return qi(e)},qi=e=>{throw Error(`Invalid Input: ${e}`)},Ji={_tag:`Millis`,millis:0},Yi={_tag:`Infinity`},Xi={_tag:`NegativeInfinity`},Zi={[Ni]:Ni,[Ne](){switch(this.value._tag){case`Millis`:{let e=this.value.millis*1e6;return Number.isFinite(e)?Pe(Hi(e)):ze(this.value.millis)}case`Nanos`:return Pe(this.value.nanos);default:return He(this.value)}},[Ze](e){return $i(e)&&ya(this,e)},toString(){switch(this.value._tag){case`Infinity`:return`Infinity`;case`NegativeInfinity`:return`-Infinity`;case`Nanos`:return`${this.value.nanos} nanos`;case`Millis`:return`${this.value.millis} millis`}},toJSON(){switch(this.value._tag){case`Millis`:return{_id:`Duration`,_tag:`Millis`,millis:this.value.millis};case`Nanos`:return{_id:`Duration`,_tag:`Nanos`,nanos:String(this.value.nanos)};case`Infinity`:return{_id:`Duration`,_tag:`Infinity`};case`NegativeInfinity`:return{_id:`Duration`,_tag:`NegativeInfinity`}}},[kt](){return this.toJSON()},pipe(){return b(this,arguments)}},Qi=e=>{let t=Object.create(Zi);return t.value=typeof e==`number`?isNaN(e)||e===0||Object.is(e,-0)?Ji:Number.isFinite(e)?Number.isInteger(e)?{_tag:`Millis`,millis:e}:{_tag:`Nanos`,nanos:Ui(e)}:e>0?Yi:Xi:e===Pi?Ji:{_tag:`Nanos`,nanos:e},t},$i=e=>C(e,Ni),ea=e=>e.value._tag!==`Infinity`&&e.value._tag!==`NegativeInfinity`,ta=e=>{switch(e.value._tag){case`Millis`:return e.value.millis===0;case`Nanos`:return e.value.nanos===Pi;case`Infinity`:case`NegativeInfinity`:return!1}},na=e=>{switch(e.value._tag){case`Millis`:return e.value.millis<0;case`Nanos`:return e.value.nanos<Pi;case`NegativeInfinity`:return!0;case`Infinity`:return!1}},ra=e=>{switch(e.value._tag){case`Infinity`:case`NegativeInfinity`:return aa;case`Millis`:return e.value.millis<0?Qi(-e.value.millis):e;case`Nanos`:return e.value.nanos<Pi?Qi(-e.value.nanos):e}},ia=Qi(0),aa=Qi(1/0),oa=Qi(-1/0),sa=e=>Qi(e),ca=e=>Qi(e),la=e=>Qi(e*1e3),ua=e=>Qi(e*6e4),da=e=>Qi(e*36e5),fa=e=>Qi(e*864e5),pa=e=>Qi(e*6048e5),ma=e=>ga(Ki(e),{onMillis:S,onNanos:e=>Number(e)/1e6,onInfinity:()=>1/0,onNegativeInfinity:()=>-1/0}),ha=e=>{let t=Ki(e);switch(t.value._tag){case`Infinity`:case`NegativeInfinity`:throw Error(`Cannot convert infinite duration to nanos`);case`Nanos`:return t.value.nanos;case`Millis`:return Ui(t.value.millis)}},ga=x(2,(e,t)=>{switch(e.value._tag){case`Millis`:return t.onMillis(e.value.millis);case`Nanos`:return t.onNanos(e.value.nanos);case`Infinity`:return t.onInfinity();case`NegativeInfinity`:return(t.onNegativeInfinity??t.onInfinity)()}}),_a=x(3,(e,t,n)=>e.value._tag===`Infinity`||e.value._tag===`NegativeInfinity`||t.value._tag===`Infinity`||t.value._tag===`NegativeInfinity`?n.onInfinity(e,t):e.value._tag===`Millis`?t.value._tag===`Millis`?n.onMillis(e.value.millis,t.value.millis):n.onNanos(ha(e),t.value.nanos):n.onNanos(e.value.nanos,ha(t))),va=(e,t)=>_a(e,t,{onMillis:(e,t)=>e===t,onNanos:(e,t)=>e===t,onInfinity:(e,t)=>e.value._tag===t.value._tag}),ya=x(2,(e,t)=>va(e,t)),ba=e=>{if(e.value._tag===`Infinity`)return{days:1/0,hours:1/0,minutes:1/0,seconds:1/0,millis:1/0,nanos:1/0};if(e.value._tag===`NegativeInfinity`)return{days:-1/0,hours:-1/0,minutes:-1/0,seconds:-1/0,millis:-1/0,nanos:-1/0};let t=ha(e),n=t<Pi,r=n?-t:t,i=r/Vi,a=i/Bi,o=a/zi,s=o/zi,c=s/Ri,l=n?-1:1;return{days:l*Number(c),hours:l*Number(s%Ri),minutes:l*Number(o%zi),seconds:l*Number(a%zi),millis:l*Number(i%Bi),nanos:l*Number(r%Vi)}},xa=e=>{if(e.value._tag===`Infinity`)return`Infinity`;if(e.value._tag===`NegativeInfinity`)return`-Infinity`;if(ta(e))return`0`;if(na(e))return`-`+xa(ra(e));let t=ba(e),n=[];return t.days!==0&&n.push(`${t.days}d`),t.hours!==0&&n.push(`${t.hours}h`),t.minutes!==0&&n.push(`${t.minutes}m`),t.seconds!==0&&n.push(`${t.seconds}s`),t.millis!==0&&n.push(`${t.millis}ms`),t.nanos!==0&&n.push(`${t.nanos}ns`),n.join(` `)},Sa=si(`effect/Scheduler`,{fiberCached:!0,defaultValue:()=>new Ta}),Ca=e=>{let t=!1;return Promise.resolve().then(()=>{t||e()}),()=>{t=!0}},dee=`setImmediate`in globalThis?e=>{let t=globalThis.setImmediate(e);return()=>globalThis.clearImmediate(t)}:e=>{let t=setTimeout(e,0);return()=>clearTimeout(t)},wa=e=>{try{return dee(e)}catch{return Ca(e)}},fee=class{buckets=[];scheduleTask(e,t){let n=this.buckets,r=n.length,i,a=0;for(;a<r&&!(n[a][0]>t);a++)i=n[a];i&&i[0]===t?i[1].push(e):a===r?n.push([t,[e]]):n.splice(a,0,[t,[e]])}drain(){let e=this.buckets;return this.buckets=[],e}},Ta=class{executionMode;setImmediate;constructor(e=`async`,t){this.executionMode=e,this.setImmediate=t??(e===`sync`?Ca:wa)}shouldYield(e){return e.currentOpCount>=e.cache.maxOpsBeforeYield}makeDispatcher(){return new pee(this.setImmediate)}},pee=class{tasks=new fee;running=void 0;setImmediate;constructor(e=wa){this.setImmediate=e}scheduleTask(e,t){this.tasks.scheduleTask(e,t),this.running===void 0&&(this.running=this.setImmediate(this.afterScheduled))}afterScheduled=()=>{this.running=void 0,this.runTasks()};runTasks(){let e=this.tasks.drain();for(let t=0;t<e.length;t++){let n=e[t][1];for(let e=0;e<n.length;e++)n[e]()}}flush(){for(;this.tasks.buckets.length>0;)this.running!==void 0&&(this.running(),this.running=void 0),this.runTasks()}},mee=si(`effect/Scheduler/MaxOpsBeforeYield`,{fiberCached:!0,defaultValue:()=>2048}),hee=si(`effect/Scheduler/PreventSchedulerYield`,{fiberCached:!0,defaultValue:()=>!1}),Ea=class extends te{constructor(e){super(),e&&zt(this,e)}},Da=()=>new Proxy({},{get(e,t,n){return t===`$is`?Ae:t===`$match`?gee:e=>({...e,_tag:t})}});function gee(){if(arguments.length===1){let e=arguments[0];return function(t){return e[t._tag](t)}}let e=arguments[0];return arguments[1][e._tag](e)}var _ee=jn,Oa=Mn,ka=`~effect/Encoding/EncodingError`,Aa=class extends Oa(`EncodingError`){[ka]=ka},ja=e=>Cee(typeof e==`string`?xee.encode(e):e),Ma=e=>{let t=See(e),n=t.length;if(n%4!=0)return di(new Aa({kind:`Decode`,module:`Base64`,input:t,message:`Length must be a multiple of 4, but is ${n}`}));let r=t.indexOf(`=`);if(r!==-1&&(r<n-2||r===n-2&&t[n-1]!==`=`))return di(new Aa({kind:`Decode`,module:`Base64`,input:t,message:`Found a '=' character, but it is not at the end`}));try{let e=t.endsWith(`==`)?2:+!!t.endsWith(`=`),r=new Uint8Array(n/4*3-e);for(let e=0,i=0;e<n;e+=4,i+=3){let n=Fa(t.charCodeAt(e))<<18|Fa(t.charCodeAt(e+1))<<12|Fa(t.charCodeAt(e+2))<<6|Fa(t.charCodeAt(e+3));r[i]=n>>16,r[i+1]=n>>8&255,r[i+2]=n&255}return ui(r)}catch(e){return di(new Aa({kind:`Decode`,module:`Base64`,input:t,message:e instanceof Error?e.message:`Invalid input`}))}},Na=e=>{switch(e){case 16:return yee();case 32:return bee();default:{let t=``;for(let n=e>>>3;n>0;n--)t+=vee();return t}}},w=Uint8Array.from(`0123456789abcdef`,e=>e.charCodeAt(0)),Pa=()=>Math.random()*4294967296>>>0,vee=()=>{let e=Pa();return String.fromCharCode(w[e>>>28],w[e>>>24&15],w[e>>>20&15],w[e>>>16&15],w[e>>>12&15],w[e>>>8&15],w[e>>>4&15],w[e&15])},yee=()=>{let e=Pa(),t=Pa();return String.fromCharCode(w[e>>>28],w[e>>>24&15],w[e>>>20&15],w[e>>>16&15],w[e>>>12&15],w[e>>>8&15],w[e>>>4&15],w[e&15],w[t>>>28],w[t>>>24&15],w[t>>>20&15],w[t>>>16&15],w[t>>>12&15],w[t>>>8&15],w[t>>>4&15],w[t&15])},bee=()=>{let e=Pa(),t=Pa(),n=Pa(),r=Pa();return String.fromCharCode(w[e>>>28],w[e>>>24&15],w[e>>>20&15],w[e>>>16&15],w[e>>>12&15],w[e>>>8&15],w[e>>>4&15],w[e&15],w[t>>>28],w[t>>>24&15],w[t>>>20&15],w[t>>>16&15],w[t>>>12&15],w[t>>>8&15],w[t>>>4&15],w[t&15],w[n>>>28],w[n>>>24&15],w[n>>>20&15],w[n>>>16&15],w[n>>>12&15],w[n>>>8&15],w[n>>>4&15],w[n&15],w[r>>>28],w[r>>>24&15],w[r>>>20&15],w[r>>>16&15],w[r>>>12&15],w[r>>>8&15],w[r>>>4&15],w[r&15])},xee=new TextEncoder,See=e=>e.replace(/[\n\r]/g,``),Cee=e=>{let t=e.length,n=``,r;for(r=2;r<t;r+=3)n+=Ia[e[r-2]>>2],n+=Ia[(e[r-2]&3)<<4|e[r-1]>>4],n+=Ia[(e[r-1]&15)<<2|e[r]>>6],n+=Ia[e[r]&63];return r===t+1&&(n+=Ia[e[r-2]>>2],n+=Ia[(e[r-2]&3)<<4],n+=`==`),r===t&&(n+=Ia[e[r-2]>>2],n+=Ia[(e[r-2]&3)<<4|e[r-1]>>4],n+=Ia[(e[r-1]&15)<<2],n+=`=`),n};function Fa(e){if(e>=La.length)throw TypeError(`Invalid character ${String.fromCharCode(e)}`);let t=La[e];if(t===255)throw TypeError(`Invalid character ${String.fromCharCode(e)}`);return t}var Ia=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`.split(``),La=[255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,62,255,255,255,63,52,53,54,55,56,57,58,59,60,61,255,255,255,0,255,255,255,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,255,255,255,255,255,255,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],Ra=`effect/Tracer/ParentSpan`,za=class extends jr()(Ra,{fiberCached:!0}){},wee=e=>e,Ba=e=>({_tag:`ExternalSpan`,spanId:e.spanId,traceId:e.traceId,sampled:e.sampled??!0,annotations:e.annotations??qr()}),Va=si(`effect/Tracer/DisablePropagation`,{defaultValue:ie}),Ha=si(`effect/Tracer/CurrentTraceLevel`,{defaultValue:()=>`Info`}),Ua=si(`effect/Tracer/MinimumTraceLevel`,{defaultValue:()=>`All`}),Wa=`effect/Tracer`,Ga=si(Wa,{fiberCached:!0,defaultValue:()=>Ka}),Ka=wee({span:e=>new qa(e)}),qa=class{_tag=`Span`;sampled;name;parent;annotations;links;startTime;kind;status;_traceId=void 0;_spanId=void 0;_attributes=void 0;_events=void 0;constructor(e){this.name=e.name,this.parent=e.parent,this.annotations=e.annotations,this.links=e.links,this.startTime=e.startTime,this.kind=e.kind,this.sampled=e.sampled,this.status={_tag:`Started`,startTime:e.startTime}}get traceId(){return this._traceId??=Tr(this.parent)?.traceId??Na(32)}get spanId(){return this._spanId??=Na(16)}get attributes(){return this._attributes??=new Map}get events(){return this._events??=[]}end(e,t){this.status={_tag:`Ended`,endTime:e,exit:t,startTime:this.status.startTime}}attribute(e,t){this.attributes.set(e,t)}event(e,t,n){this.events.push([e,t,n??{}])}addLinks(e){this.links.push(...e)}},Ja=`effect/Metric/FiberRuntimeMetrics`,Ya=si(`effect/ErrorReporter/CurrentErrorReporters`,{defaultValue:()=>new Set}),Xa=si(`effect/References/CurrentStackFrame`,{fiberCached:!0,defaultValue:oe}),Za=si(`effect/References/TracerEnabled`,{fiberCached:!0,defaultValue:re}),Qa=si(`effect/References/TracerTimingEnabled`,{defaultValue:re}),$a=si(`effect/References/TracerSpanAnnotations`,{defaultValue:()=>({})}),eo=si(`effect/References/TracerSpanLinks`,{defaultValue:()=>[]}),to=si(`effect/References/CurrentLogAnnotations`,{defaultValue:()=>({})}),no=si(`effect/References/CurrentLogLevel`,{fiberCached:!0,defaultValue:()=>`Info`}),ro=si(`effect/References/MinimumLogLevel`,{fiberCached:!0,defaultValue:()=>`Info`}),io=si(`effect/References/CurrentLogSpans`,{defaultValue:()=>[]}),ao=e=>{if(e?.captureStackTrace===!1||e?.captureStackTrace!==void 0&&typeof e.captureStackTrace!=`boolean`)return e;let t=Pt();if(t===0&&e?.captureStackTrace!==!0)return{...e,captureStackTrace:!1};Ft(3);let n=Error();return Ft(t),{...e,captureStackTrace:so(()=>n.stack)}},oo=e=>t=>{let n;return()=>{if(n!==void 0)return n;let r=t();if(!r)return;let i=r.split(`
7
+ `);if(i[e]!==void 0)return n=i[e].trim(),n}},so=oo(3),co=class extends sn{constructor(e,t=cn){super(`Interrupt`,t,`Interrupted`),this.fiberId=e}toString(){return`Interrupt(${this.fiberId})`}toJSON(){return{_tag:`Interrupt`,fiberId:this.fiberId}}[Ze](e){return vn(e)&&this.fiberId===e.fiberId&&this.annotations===e.annotations}[Ne](){return Ie(Be(`${this._tag}:${this.fiberId}`))(Fe(this.annotations))}},lo=e=>new co(e),uo=e=>new an([new co(e)]),fo=e=>{let t=e.reasons.find(gn);return t?ui(t):di(e)},po=e=>{for(let t=0;t<e.reasons.length;t++){let n=e.reasons[t];if(n._tag===`Fail`)return ui(n.error)}return di(e)},mo=e=>e.reasons.some(_n),ho=e=>{let t=e.reasons.find(_n);return t?ui(t.defect):di(e)},go=e=>e.reasons.some(vn),_o=e=>{let t;for(let n=0;n<e.reasons.length;n++){let r=e.reasons[n];r._tag===`Interrupt`&&(t??=new Set,r.fiberId!==void 0&&t.add(r.fiberId))}return t?ui(t):di(e)},vo=e=>{let t=_o(e);return pi(t)?yo:t.success},yo=new Set,bo=e=>e.reasons.length>0&&e.reasons.every(vn),xo=e=>Wr(e.annotations),So=(e,t)=>{let n=new Map,r=[];for(let i of e.concat(t)){let e=Pe(i),t=n.get(e);if(t===void 0)n.set(e,[i]);else if(t.some(e=>Qe(e,i)))continue;else t.push(i);r.push(i)}return r},Co=x(2,(e,t)=>{if(e.reasons.length===0)return t;if(t.reasons.length===0)return e;let n=new an(So(e.reasons,t.reasons));return Qe(e,n)?e:n}),wo=x(2,(e,t)=>{let n=!1,r=e.reasons.map(e=>gn(e)?(n=!0,new ln(t(e.error),e.annotations)):e);return n?un(r):e}),To=e=>{let t={Fail:[],Die:[],Interrupt:[]};for(let n=0;n<e.reasons.length;n++)t[e.reasons[n]._tag].push(e.reasons[n]);return t},Eo=e=>{let t=To(e);return t.Fail.length>0?t.Fail[0].error:t.Die.length>0?t.Die[0].defect:t.Interrupt.length>0?new globalThis.Error(`All fibers interrupted without error`):new globalThis.Error(`Empty cause`)},Do=(e,t)=>{let n=[],r=[];if(e.reasons.length===0)return n;let i=Pt();i!==0&&Ft(1);for(let i of e.reasons){if(i._tag===`Interrupt`){r.push(i);continue}n.push(Oo(i._tag===`Die`?i.defect:i.error,i.annotations,t))}if(n.length===0){let e=Error(`The fiber was interrupted by:`);e.name=`InterruptCause`,e.stack=No(e,r);let i=new globalThis.Error(`All fibers interrupted without error`,{cause:e});i.name=`InterruptError`,i.stack=`${i.name}: ${i.message}`,n.push(Oo(i,r[0].annotations,t))}return i!==0&&Ft(i),n},Oo=(e,t,n)=>{let r=typeof e,i;if(e&&r===`object`){if(i=new globalThis.Error(ko(e),{cause:e.cause?Oo(e.cause):void 0}),typeof e.name==`string`&&(i.name=e.name),typeof e.stack==`string`)i.stack=jo(e.stack,i,t);else{let e=`${i.name}: ${i.message}`;i.stack=t?Mo(e,t):e}n?.includeCauseInStack&&(i.stack=Io(i));for(let t of Object.keys(e))t in i||(i[t]=e[t])}else i=new globalThis.Error(e?r===`string`?e:Ot(e):`Unknown error: ${e}`);return i},ko=e=>{if(typeof e.message==`string`)return e.message;if(typeof e.toString==`function`&&e.toString!==Object.prototype.toString&&e.toString!==Array.prototype.toString)try{return e.toString()}catch{}return Ot(e)},Ao=/\((.*)\)/g,jo=(e,t,n)=>{let r=`${t.name}: ${t.message}`,i=(e.startsWith(r)?e.slice(r.length):e).split(`
8
+ `),a=[r];for(let e=1;e<i.length&&!/(?:Generator\.next|~effect\/Effect)/.test(i[e]);e++)a.push(i[e]);return n?Mo(a.join(`
9
+ `),n):a.join(`
10
+ `)},Mo=(e,t)=>{let n=t?.get(wn.key);return n&&(e=`${e}\n${Po(n)}`),e},No=(e,t)=>{let n=[`${e.name}: ${e.message}`];for(let e of t){let t=e.fiberId===void 0?`unknown`:`#${e.fiberId}`,r=e.annotations.get(Tn.key);n.push(` at fiber (${t})`),r&&n.push(Po(r))}return n.join(`
11
+ `)},Po=e=>{let t=[],n=e,r=0;for(;n&&r<10;){let e=n.stack();if(e){let r=e.matchAll(Ao),i=!1;for(let[,e]of r)i=!0,t.push(` at ${n.name} (${e})`);i||t.push(` at ${n.name} (${e.replace(/^at /,``)})`)}else t.push(` at ${n.name}`);n=n.parent,r++}return t.join(`
12
+ `)},Fo=e=>Do(e).map(Io).join(`
13
+ `),Io=e=>e.cause?`${e.stack} {\n${Lo(e.cause,` `)}\n}`:e.stack,Lo=(e,t)=>{let n=e.stack.split(`
14
+ `),r=`${t}[cause]: ${n[0]}`;for(let e=1,i=n.length;e<i;e++)r+=`\n${t}${n[e]}`;return e.cause&&(r+=` {\n${Lo(e.cause,`${t} `)}\n${t}}`),r},Ro=`~effect/Fiber`,zo={_A:S,_E:S},Bo={id:0},Vo=()=>globalThis[vt],Ho=class{constructor(e,t=!0){this[Ro]=zo,this.setContext(e),this.id=++Bo.id,this.currentOpCount=0,this.interruptible=t,this._stack=[],this._observers=void 0,this._exit=void 0,this._children=void 0,this._interruptedCause=void 0,this._yielded=void 0,this._running=!1,this._deferredInterrupt=!1,this._parent=void 0,this.cache.runtimeMetrics?.recordFiberStart(this.context)}[Ro];id;interruptible;currentOpCount;_stack;_observers;_exit;_children;_interruptedCause;_yielded;_running;_deferredInterrupt;_parent;context;cache;_dispatcher=void 0;get currentDispatcher(){return this._dispatcher??=this.cache.scheduler.makeDispatcher()}getRef(e){return $r(this.context,e)}addObserver(e){return this._exit?(e(this._exit),se):(this._observers===void 0?this._observers=[e]:this._observers.push(e),()=>{if(this._exit||this._observers===void 0)return;let t=this._observers.indexOf(e);t>=0&&this._observers.splice(t,1)})}interruptUnsafe(e,t){if(this._exit)return;let n=uo(e);this.cache.stackFrame&&(n=hn(n,Jr(wn,this.cache.stackFrame))),t&&(n=hn(n,t)),this._interruptedCause=this._interruptedCause?Co(this._interruptedCause,n):n,this.interruptible&&(this._running?this._deferredInterrupt=!0:this.evaluate(ts(this._interruptedCause)))}pollUnsafe(){return this._exit}evaluate(e){if(this._exit)return;if(this._yielded!==void 0){let e=this._yielded;this._yielded=void 0,e()}let t=this.runLoop(e);if(t===Yt)return;let n=Go.interruptChildren&&Go.interruptChildren(this);if(n!==void 0)return this.evaluate(Vs(n,()=>t));if(this._exit=t,this.cache.runtimeMetrics?.recordFiberEnd(this.context,this._exit),this._parent&&=(this._parent._children?.delete(this),void 0),this._observers!==void 0){let e=this._observers;this._observers=void 0;for(let n=0;n<e.length;n++)e[n](t)}this._stack.length=0,this._children=void 0,this.context=qr()}runLoop(e){let t=globalThis[vt];globalThis[vt]=this;let n=this._running;this._running=!0;let r=!1,i=e;this.currentOpCount=0;try{for(;;){this._deferredInterrupt&&(this._deferredInterrupt=!1,i=ts(this._interruptedCause)),this.currentOpCount++;let e=this.cache;if(!r&&!e.preventYield&&e.scheduler.shouldYield(this)){r=!0;let e=i;i=Vs(ss,()=>e)}if(i=e.tracerContext?e.tracerContext(i,this):i[Gt](this),i===Yt){let e=this._yielded;if(Vt in e)return this._deferredInterrupt=!1,this._yielded=void 0,e;if(this._deferredInterrupt){this._yielded=void 0,e();continue}return Yt}}}catch(e){return C(i,Gt)?this.runLoop(On(e)):On(`Fiber.runLoop: Not a valid effect: ${String(i)}`)}finally{this._running=n,globalThis[vt]=t}}getCont(e){if(this._deferredInterrupt)return this._deferredInterrupt=!1,Wo;for(;;){let t=this._stack.pop();if(!t)return;let n=t[Jt];if(n!==void 0){let r=n.call(t,this);if(r)return r[e]=r,r}if(t[e])return t}}yieldWith(e){return this._yielded=e,Yt}children(){return this._children??=new Set}pipe(){return b(this,arguments)}setContext(e){let t=this.context;if(this.context=e,t!==void 0&&aee(t,e))return;let n=e.cacheRoot,r=n._fiberCache??=Uo(e);this.cache!==void 0&&this.cache.scheduler!==r.scheduler&&(this._dispatcher=void 0),this.cache=r}get currentSpanLocal(){let e=this.cache.span;return e?._tag===`Span`?e:void 0}},Uo=e=>{let t=Zr(e,Wa);return{scheduler:$r(e,Sa),tracer:t,tracerContext:t?t.context:void 0,tracerEnabled:$r(e,Za),span:Zr(e,Ra),logLevel:$r(e,no),minimumLogLevel:$r(e,ro),stackFrame:$r(e,Xa),runtimeMetrics:Zr(e,Ja),maxOpsBeforeYield:$r(e,mee),preventYield:$r(e,hee)}},Wo={[Kt](e,t){return ts(t._interruptedCause)},[qt](e,t){return ts(t._interruptedCause)}},Go={interruptChildren:void 0},Ko=e=>{if(!e.cache.stackFrame)return;let t=new Map;return t.set(Tn.key,e.cache.stackFrame),Wr(t)},qo=e=>{if(e._children!==void 0&&e._children.size!==0)return $o(e._children)},Jo=e=>{let t=e;return t._exit?es(t._exit):ys(n=>t._exit?n(es(t._exit)):rs(e.addObserver(e=>n(es(e)))))},Yo=e=>ys(t=>{let n=e[Symbol.iterator](),r=[],i;function a(){let e=n.next();for(;!e.done;){if(e.value._exit){r.push(e.value._exit),e=n.next();continue}i=e.value.addObserver(e=>{r.push(e),a()});return}t(es(r))}return a(),rs(()=>i?.())}),Xo=e=>{let t=e;return t._exit?t._exit:ys(n=>t._exit?n(t._exit):rs(e.addObserver(n)))},Zo=e=>kn(t=>Qo(e,t.id)),Qo=x(e=>C(e[0],Ro),(e,t,n)=>kn(r=>{let i=Ko(r);return i=i&&n?ii(i,n):i??n,e.interruptUnsafe(t,i),zs(Jo(e))})),$o=e=>kn(t=>{let n=Ko(t),r=ki();for(let i of e)i.interruptUnsafe(t.id,n),r.push(i);return zs(Yo(r))}),es=Cn,ts=En,ns=Dn,rs=xn({op:`Sync`,[Gt](e){let t=this[Wt](),n=e.getCont(Kt);return n?n[Kt](t,e):e.yieldWith(Cn(t))}}),is=xn({op:`Suspend`,[Gt](e){return this[Wt]()}}),as=x(e=>e.length>=2||vr(e[0]),(e,t)=>yr(e)?ns(t?t():new Pn(`Effect.fromOption: Option.none`)):es(e.value)),os=gi({onFailure:ns,onSuccess:es}),ss=xn({op:`Yield`,[Gt](e){let t=!1;return e.currentDispatcher.scheduleTask(()=>{t||e.evaluate(Ks)},this[Wt]??0),e.yieldWith(()=>{t=!0})}})(0),cs=e=>es(_r(e)),ls=es(gr()),us=e=>is(()=>ts(Lt(e))),ds=e=>On(e),fs=e=>is(()=>ns(Lt(e))),ps=es(void 0),ms=e=>{let t=typeof e==`function`?e:e.try,n=typeof e==`function`?e=>new Bl(e,`An error occurred in Effect.try`):e.catch;return is(()=>{try{return es(Lt(t))}catch(e){return ns(Lt(()=>n(e)))}})},hs=e=>{let t=typeof e==`function`?e:e.try,n=typeof e==`function`?e=>new Bl(e,`An error occurred in Effect.tryPromise`):e.catch;return _s(function(e,r){let i=t=>{try{e(ns(Lt(()=>n(t))))}catch(t){e(ds(t))}};try{Lt(()=>t(r)).then(t=>e(es(t)),i)}catch(e){i(e)}},t.length!==0)},gs=e=>kn(t=>e(t.id)),_s=function(){let e=bn({op:`Async`,[Gt](e){let t=Lt(()=>this.register.bind(e.cache.scheduler)),n=!1,r=!1,i=this.withSignal?new AbortController:void 0,a=t(t=>{n||(n=!0,r?e.evaluate(t):r=t)},i?.signal);return r===!1?(r=!0,e._yielded=()=>{n=!0},i===void 0&&a===void 0||e._stack.push(vs(()=>(n=!0,i?.abort(),a??Ks))),Yt):r}}),t=function(e,t){this.register=e,this.withSignal=t};return t.prototype=e,function(e,n){return new t(e,n)}}(),vs=xn({op:`AsyncFinalizer`,[Jt](e){e.interruptible&&(e.interruptible=!1,e._stack.push(zc))},[qt](e,t){return go(e)?Vs(this[Wt](),()=>ts(e)):ts(e)}}),ys=e=>_s(e,e.length>=2),bs=ys(se),xs=(...e)=>{if(e.length===1){let t=e[0];return is(()=>ks(t()))}let[t,n]=e;return is(()=>ks(n.call(t.self)))},Ss=(e,...t)=>{let n=t.length===0?function(){return is(()=>ks(e.apply(this,arguments)))}:function(){let n=is(()=>ks(e.apply(this,arguments)));for(let e=0;e<t.length;e++)n=t[e](n,...arguments);return n};return Cs(e.length,n)},Cs=(e,t)=>Object.defineProperty(t,"length",{value:e,configurable:!0}),ws=oo(2),Ts=function(){let e=typeof arguments[0]==`string`,t=e?arguments[0]:`Effect.fn`,n=e?arguments[1]:void 0,r=Pt(),i;return r!==0&&(Ft(2),i=new globalThis.Error,Ft(r)),e?(r,...a)=>Es(t,r,i,a,e,n):Es(t,arguments[0],i,Array.prototype.slice.call(arguments,1),e,n)},Es=(e,t,n,r,i,a)=>{let o=typeof t==`function`?t:r.shift().bind(t.self);return Cs(o.length,function(...t){let s=is(()=>{let e=o.apply(this,arguments);return Qt(e)?e:ks(e)});for(let e=0;e<r.length;e++)s=r[e](s,...t);if(!Qt(s))return s;let c=Pt(),l;return c!==0&&(Ft(2),l=new globalThis.Error,Ft(c)),Js(i?Sl(e,a,e=>Cl(s,e)):s,Xa,t=>({name:e,stack:l?ws(()=>l.stack):oe,parent:{name:`${e} (definition)`,stack:n?ws(()=>n.stack):oe,parent:t}}))})},Ds=(e,...t)=>Cs(e.length,t.length===0?function(){return Os(()=>e.apply(this,arguments))}:function(){let n=Os(()=>e.apply(this,arguments));for(let e of t)n=e(n,...arguments);return n}),Os=e=>{try{let t=e(),n;for(;;){let r=t.next(n);if(r.done)return es(r.value);let i=r.value;if(i&&i._tag===`Success`){n=i.value;continue}if(i&&i._tag===`Failure`)return r.value;{let n=!0;return is(()=>n?(n=!1,Vs(r.value,e=>ks(t,e))):is(()=>ks(e())))}}}catch(e){return ds(e)}},ks=function(){let e=bn({op:`Iterator`,[Kt](e,t){let n=this.iterator;for(;;){let r=n.next(e);if(r.done)return es(r.value);if(!Hs(r.value))return t._stack.push(this),r.value;if(r.value._tag===`Failure`)return r.value;e=r.value.value}},[Gt](e){return this[Kt](this.initial,e)}}),t=function(e,t){this.iterator=e,this.initial=t};return t.prototype=e,function(e,n){return new t(e,n)}}(),As=x(2,(e,t)=>new Ps(e,Fs,es(t))),js=function(e){return e._stack.push(this),this[Wt]},Ms=bn({op:`OnSuccess`,[Gt]:js}),Ns=function(e,t){this[Wt]=e,this[Kt]=t};Ns.prototype=Ms;var Ps=function(e,t,n){this[Wt]=e,this[Kt]=t,this.payload=n};Ps.prototype=Ms;var Fs=function(){return this.payload},Tee=function(e){let t=this.payload;return es(Lt(()=>t(e)))},Eee=function(e){let t=this.payload;return Lt(()=>t(e))},Dee=function(e){let t=this.payload;return new Ps(Lt(()=>t(e)),Fs,Cn(e))},Oee=function(e){return new Ps(this.payload,Fs,Cn(e))},Is=e=>Us(e,_r),Ls=x(2,(e,t)=>new Ps(e,Qt(t)?Fs:Eee,t)),Rs=x(2,(e,t)=>new Ps(e,Qt(t)?Oee:Dee,t)),zs=e=>new Ps(e,Fs,Ks),kee=e=>$s(e,ns),Aee=(e,t)=>kn(n=>ys(r=>{let i=!1,a=new Set,o=e=>{i=!0,r(a.size===0?e:Vs(Lc($o(a)),()=>e))},s=0;for(let r of e){if(i)break;let e=s++,c=nl(n,r,!0,!0,!1);a.add(c),c.addObserver(r=>{a.delete(c);let s=!i;o(r),s&&t?.onWinner&&t.onWinner({fiber:c,index:e,parentFiber:n})})}return $o(a)})),Bs=x(e=>Qt(e[1]),(e,t,n)=>Aee([e,t],n)),Vs=x(2,(e,t)=>new Ns(e,t.length===1?t:e=>t(e))),Hs=e=>e[Vt]!==void 0,jee=x(2,(e,t)=>Hs(e)?e._tag===`Success`?t(e.value):e:Vs(e,t)),Mee=e=>Vs(e,S),Us=x(2,(e,t)=>new Ps(e,Tee,t)),Nee=x(2,(e,t)=>Hs(e)?Ree(e,t):Us(e,t)),Pee=x(2,(e,t)=>Hs(e)?zee(e,t):rc(e,t)),Fee=x(2,(e,t)=>Hs(e)?Bee(e,t):rte(e,t)),Ws=e=>En(uo(e)),Gs=e=>e._tag===`Success`,Iee=e=>e._tag===`Failure`,Lee=e=>e._tag===`Failure`?ui(e.cause):di(e),Ks=Cn(void 0),Ree=x(2,(e,t)=>e._tag===`Success`?Cn(t(e.value)):e),zee=x(2,(e,t)=>{if(e._tag===`Success`)return e;let n=po(e.cause);return pi(n)?e:Dn(t(n.success))}),Bee=x(2,(e,t)=>{if(e._tag===`Success`)return Cn(t.onSuccess(e.value));let n=po(e.cause);return pi(n)?e:Dn(t.onFailure(n.success))}),Vee=x(2,(e,t)=>Gs(e)?t:e),Hee=e=>{let t=[];for(let n of e)n._tag===`Failure`&&t.push(...n.cause.reasons);return t.length===0?Ks:En(un(t))},Uee=e=>kn(t=>es(ri(t.context,e))),qs=x(2,(e,t)=>kn(n=>{let r=n.context,i=t(r);return r===i?e:(n.setContext(i),kc(e,()=>{n.setContext(r)}))})),Js=x(3,(e,t,n)=>qs(e,e=>{let r=Qr(e,t),i=n(r);return r===i?e:Yr(e,t,i)})),Wee=()=>Gee,Gee=kn(e=>es(e.context)),Ys=e=>kn(t=>e(t.context)),Xs=x(2,(e,t)=>Hs(e)?e:qs(e,ii(t))),Zs=function(){return arguments.length===1?x(2,(e,t)=>Qs(e,arguments[0],t)):x(3,(e,t,n)=>Qs(e,t,n)).apply(this,arguments)},Qs=(e,t,n)=>qs(e,Yr(t,n)),Kee=x(2,(e,t)=>Vs(t,t=>t?Is(e):ls)),qee=x(e=>Qt(e[0]),(e,t)=>Kc({while:re,body:ne(t?.disableYield?e:Vs(e,e=>ss)),step:se})),$s=x(2,(e,t)=>new ec(e,t.length===1?t:e=>t(e))),Jee=bn({op:`OnFailure`,[Gt]:js}),ec=function(e,t){this[Wt]=e,this[qt]=t};ec.prototype=Jee;var tc=x(3,(e,t,n)=>$s(e,e=>{let r=t(e);return pi(r)?ts(r.failure):Lt(()=>n(r.success,e))})),nc=x(2,(e,t)=>tc(e,po,e=>t(e))),Yee=x(2,(e,t)=>tc(e,ho,t)),Xee=x(2,(e,t)=>$s(e,e=>Ls(Lt(()=>t(e)),ts(e)))),Zee=x(3,(e,t,n)=>$s(e,e=>{let r=t(e);return pi(r)?ts(e):Ls(Lt(()=>n(r.success,e)),ts(e))})),Qee=x(2,(e,t)=>Zee(e,po,e=>t(e))),$ee=x(e=>Qt(e[0]),(e,t,n,r)=>$s(e,e=>{let i=po(e);return pi(i)?ts(i.failure):t(i.success)?Lt(()=>n(i.success)):r?Lt(()=>r(i.success)):ts(e)})),ete=x(e=>Qt(e[0]),(e,t,n,r)=>$s(e,e=>{let i=po(e);if(pi(i))return ts(i.failure);let a=t(i.success);return pi(a)?r?Lt(()=>r(a.failure)):ts(e):Lt(()=>n(a.success))})),tte=x(e=>Qt(e[0]),(e,t,n,r)=>$ee(e,Array.isArray(t)?e=>C(e,`_tag`)&&t.includes(e._tag):Ae(t),n,r)),nte=x(e=>Qt(e[0]),(e,t,n)=>{let r;return ete(e,e=>(r??=Object.keys(t),C(e,`_tag`)&&me(e._tag)&&r.includes(e._tag)?ui(e):di(e)),e=>Lt(()=>t[e._tag](e)),n)}),rc=x(2,(e,t)=>nc(e,e=>fs(()=>t(e)))),rte=x(2,(e,t)=>sc(e,{onFailure:e=>fs(()=>t.onFailure(e)),onSuccess:e=>rs(()=>t.onSuccess(e))})),ite=e=>nc(e,ds),ate=x(2,(e,t)=>nc(e,e=>rs(()=>t(e)))),ote=x(e=>Qt(e[0]),(e,t)=>{if(!t?.log)return sc(e,{onFailure:e=>ps,onSuccess:e=>ps});let n=Gl(t.log===!0?void 0:t.log);return ac(e,{onFailure(e){let r=fo(e);return pi(r)?ts(r.failure):t.message===void 0?n(e):n(t.message,e)},onSuccess:e=>ps})}),ste=x(e=>Qt(e[0]),(e,t)=>{if(!t?.log)return ac(e,{onFailure:e=>ps,onSuccess:e=>ps});let n=Gl(t.log===!0?void 0:t.log);return ac(e,{onFailure:e=>t.message===void 0?n(e):n(t.message,e),onSuccess:e=>ps})}),cte=e=>cc(e,{onFailure:gr,onSuccess:_r}),ic=e=>ute(e,{onFailure:di,onSuccess:ui}),ac=x(2,(e,t)=>new oc(e,t.onSuccess.length===1?t.onSuccess:e=>t.onSuccess(e),t.onFailure.length===1?t.onFailure:e=>t.onFailure(e))),lte=bn({op:`OnSuccessAndFailure`,[Gt]:js}),oc=function(e,t,n){this[Wt]=e,this[Kt]=t,this[qt]=n};oc.prototype=lte;var sc=x(2,(e,t)=>ac(e,{onFailure:e=>{let n=e.reasons.find(gn);return n?Lt(()=>t.onFailure(n.error)):ts(e)},onSuccess:t.onSuccess})),cc=x(2,(e,t)=>sc(e,{onFailure:e=>rs(()=>t.onFailure(e)),onSuccess:e=>rs(()=>t.onSuccess(e))})),ute=x(2,(e,t)=>{if(Hs(e)){if(e._tag===`Success`)return Cn(t.onSuccess(e.value));let n=po(e.cause);return pi(n)?e:Cn(t.onFailure(n.success))}return cc(e,t)}),lc=e=>Hs(e)?Cn(e):dte(e),dte=xn({op:`Exit`,[Gt](e){return e._stack.push(this),this[Wt]},[Kt](e,t,n){return es(n??Cn(e))},[qt](e,t,n){return es(n??En(e))}}),uc=x(2,(e,t)=>Vs(mte(e,t.duration),e=>yr(e)?t.orElse():es(e.value))),fte=e=>new yte(`Operation timed out after '${xa(e)}'`),pte=x(2,(e,t)=>{let n=Ki(t);return uc(e,{duration:n,orElse:()=>ns(fte(n))})}),mte=x(2,(e,t)=>Bs(Is(e),As(Pl(t),gr()))),dc=`~effect/Scope`,fc=`~effect/Scope/Closeable`,pc=jr(`effect/Scope`),mc=(e,t)=>is(()=>hc(e,t)??ps),hc=(e,t)=>{if(e.state._tag===`Closed`)return;let n={_tag:`Closed`,exit:t};if(e.state._tag===`Empty`){e.state=n;return}let r=e.state;if(e.state=n,r.finalizer!==void 0)return r.finalizer(t);let i=r.finalizers;if(i!==void 0&&i.size!==0)return i.size===1?i.values().next().value(t):hte(e,i,t)},gc=(e,t)=>Gs(e)?t:$s(t,t=>ts(Co(e.cause,t))),hte=Ss(function*(e,t,n){let r=[],i=[],a=Array.from(t.values()),o=Vo();for(let t=a.length-1;t>=0;t--){let s=a[t];e.strategy===`sequential`?r.push(yield*lc(s(n))):i.push(nl(o,s(n),!0,!0,`inherit`))}return i.length>0&&(r=yield*Yo(i)),yield*Hee(r)}),_c=(e,t)=>rs(()=>vc(e,t)),vc=(e,t)=>{let n=Cc(t);if(e.state._tag===`Closed`)return n.state=e.state,n;let r={};return xc(e,r,e=>mc(n,e)),xc(n,r,t=>rs(()=>Sc(e,r))),n},yc=(e,t)=>is(()=>e.state._tag===`Closed`?t(e.state.exit):(xc(e,{},t),ps)),bc=(e,t)=>yc(e,ne(t)),xc=(e,t,n)=>{if(e.state._tag===`Empty`)e.state={_tag:`Open`,finalizerKey:t,finalizer:n,finalizers:void 0};else if(e.state._tag===`Open`){let r=e.state;r.finalizer===void 0?r.finalizers===void 0?(r.finalizerKey=t,r.finalizer=n):r.finalizers.set(t,n):(r.finalizers=new Map([[r.finalizerKey,r.finalizer]]),r.finalizerKey=void 0,r.finalizer=void 0,r.finalizers.set(t,n))}},Sc=(e,t)=>{if(e.state._tag===`Open`){let n=e.state;n.finalizerKey===t?(n.finalizerKey=void 0,n.finalizer=void 0):n.finalizers!==void 0&&n.finalizers.delete(t)}},Cc=(e=`sequential`)=>({[fc]:fc,[dc]:dc,strategy:e,state:wc}),wc={_tag:`Empty`},Tc=e=>rs(()=>Cc(e)),Ec=pc,gte=Zs(pc),Dc=e=>kn(t=>{let n=t.context,r=Cc();return t.setContext(Yr(t.context,pc,r)),kc(e,e=>(t.setContext(n),hc(r,e)))}),Oc=e=>is(()=>{let t=Cc();return Ac(e(t),e=>is(()=>hc(t,e)??ps))}),_te=(e,t,n)=>Ys(r=>Uc(i=>Vs(Ec,a=>Rs(n?.interruptible?i(e):e,e=>yc(a,n=>Xs(t(e,n),r)))))),vte=e=>Vs(Ec,t=>Ys(n=>yc(t,t=>Xs(e(t),n)))),kc=function(){let e=bn({op:`OnExit`,[Gt](e){return e._stack.push(this),this.effect},[Jt](e){e.interruptible&&this.interruptible!==!0&&(e._stack.push(zc),e.interruptible=!1)},[Kt](e,t,n){n??=Cn(e);let r=this.onExit(n);return r?Vs(r,e=>n):n},[qt](e,t,n){n??=En(e);let r=this.onExit(n);return r?Vs(gc(n,r),e=>n):n}}),t=function(e,t,n){this.effect=e,this.onExit=t,this.interruptible=n};return t.prototype=e,function(e,n,r){return new t(e,n,r)}}(),Ac=x(2,kc),jc=x(2,(e,t)=>Ac(e,e=>t)),Mc=x(3,(e,t,n)=>Ac(e,e=>{let r=t(e);return pi(r)?ps:n(r.success,e)})),Nc=x(2,(e,t)=>Mc(e,Lee,t)),Pc=x(3,(e,t,n)=>Ac(e,e=>{if(e._tag!==`Failure`)return ps;let r=t(e.cause);return pi(r)?ps:n(r.success,e.cause)})),Fc=x(2,(e,t)=>Pc(_o,t)(e)),Ic=kn(e=>ts(uo(e.id))),Lc=e=>kn(t=>t.interruptible?(t.interruptible=!1,t._stack.push(zc),e):e),Rc=xn({op:`SetInterruptible`,[Jt](e){if(e.interruptible=this[Wt],e._interruptedCause&&e.interruptible)return()=>ts(e._interruptedCause)}}),zc=Rc(!0),Bc=Rc(!1),Vc=e=>{if(e.interruptible=!0,e._stack.push(Bc),e._interruptedCause)return ts(e._interruptedCause)},Hc=e=>kn(t=>t.interruptible?e:Vc(t)??e),Uc=e=>kn(t=>t.interruptible?(t.interruptible=!1,t._stack.push(zc),e(Hc)):e(S)),Wc=e=>kn(t=>{if(t.interruptible)return e(S);let n=Vc(t),r=e(Lc);return n??r}),Gc=(e,t)=>Me(e)?t?.mode===`result`?qc(e,ic,t):qc(e,S,t):t?.discard?t.mode===`result`?qc(Object.values(e),ic,t):qc(Object.values(e),S,t):is(()=>{let n={};return As(qc(Object.entries(e),([e,r])=>Us(t?.mode===`result`?ic(r):r,t=>{Rt(n,e,t)}),{discard:!0,concurrency:t?.concurrency}),n)}),Kc=xn({op:`While`,[Kt](e,t){return this[Wt].step(e),this[Wt].while()?(t._stack.push(this),this[Wt].body()):Ks},[Gt](e){return this[Wt].while()?(e._stack.push(this),this[Wt].body()):Ks}}),qc=x(e=>typeof e[1]==`function`,(e,t,n)=>is(()=>{let r=Yc(n?.concurrency);if(r===1)return Jc(e,t,n);let i=wi(e),a=i.length;if(a===0)return n?.discard?ps:es([]);let o=n?.discard?void 0:Array(a),s=$c({f:t,out:o},i,{concurrency:r});return s?As(s,o):es(o)})),Jc=(e,t,n)=>is(()=>{let r=n?.discard?void 0:[],i=e[Symbol.iterator](),a=i.next(),o=0;return As(Kc({while:()=>!a.done,body:()=>t(a.value,o++),step:e=>{r&&r.push(e),a=i.next()}}),r)}),Yc=e=>e===`unbounded`?1/0:Math.max(1,e??1),Xc=()=>e=>{let t=e.onItem,n=e.step,r=(e,i,a=0,o=i.length)=>{for(;a<o;a++){let s=i[a],c=t(e,s,a);if(!Hs(c))return Vs(lc(c),t=>n(e,s,t,a)??r(e,i,a+1,o)??ps);let l=n(e,s,c,a);if(l)return l._tag===`Failure`?l:void 0}};return r},Zc=e=>{let t=e.onItem,n=e.step;return(e,r,i)=>{let a=0,o=i.end??r.length,s=i.concurrency,c=!1,l,u,d,f=!1,p,m,h=e=>{let t=On(e);return p=t,c=!0,f=!0,u&&u.size>0?Vs(Lc($o(Array.from(u))),()=>t):t},g=()=>{let i=!1;for(;!p&&a<o;a++){let o=r[a],_=m??t(e,o,a);if(Hs(_)){if(p=n(e,o,_,a),p)break}else if(l){m=void 0;let t=nl(l,_,!0,!0,`inherit`);if(t._exit){if(p=n(e,o,t._exit,a),p)break;continue}u.add(t);let r=a;if(t.addObserver(a=>{u.delete(t);try{if(p){if(!f&&a._tag===`Failure`)for(let e of a.cause.reasons)if(e._tag===`Interrupt`)continue;else p._tag===`Failure`?p.cause.reasons.push(e):p=En(un([e]))}else{let t=n(e,o,a,r);t&&(p=t._tag===`Failure`?En(un(t.cause.reasons.slice())):t,g())}if(i){let e=g();e&&d(e)}else c&&u.size===0&&d(p??ps)}catch(e){d(h(e))}}),u.size<s)continue;i=!0,a++;return}else return ys(e=>{l=Vo(),u=new Set,m=_,d=e;let t;try{t=g()}catch(t){return e(h(t))}return t?e(t):is(()=>(p=Ks,f=!0,u?$o(u):ps))})}if(c=!0,p){if(u&&u.size>0){let e=Ko(l);u.forEach(t=>t.interruptUnsafe(l.id,e));return}if(d||p._tag===`Failure`)return p}else if(d){if(u)u.size===0&&d(ps);else return Ks}};return g()}},Qc=()=>e=>Zc(e),$c=Zc({onItem(e,t,n){return e.f(t,n)},step(e,t,n,r){if(n._tag===`Failure`)return n;e.out&&(e.out[r]=n.value)}}),el=x(e=>Me(e[0])&&!Qt(e[0]),(e,t,n)=>is(()=>{let r=[];return As(qc(e,(e,n)=>{let i=t(e,n);return typeof i==`boolean`?(i&&r.push(e),ps):Us(i,t=>{t&&r.push(e)})},{discard:!0,concurrency:n?.concurrency}),r)})),tl=x(e=>Qt(e[0]),(e,t)=>kn(n=>(Yl(),es(nl(n,e,t?.startImmediately,!1,t?.uninterruptible??!1))))),nl=(e,t,n=!1,r=!1,i=!1)=>{let a=e,o=i===`inherit`?a.interruptible:!i,s=new Ho(a.context,o);return n?s.evaluate(t):a.currentDispatcher.scheduleTask(()=>s.evaluate(t),0),!r&&!s._exit&&(a.children().add(s),s._parent=a),s},rl=x(e=>Qt(e[0]),(e,t)=>kn(n=>es(nl(n,e,t?.startImmediately,!0,t?.uninterruptible)))),il=x(e=>Qt(e[0]),(e,t,n)=>kn(r=>{let i=nl(r,e,n?.startImmediately,!0,n?.uninterruptible);if(!i._exit){if(t.state._tag!==`Closed`){let e={};xc(t,e,()=>gs(e=>e===i.id?ps:Zo(i))),i.addObserver(()=>Sc(t,e))}else i.interruptUnsafe(r.id,Ko(r))}return es(i)})),al=x(e=>Qt(e[0]),(e,t)=>Vs(Ec,n=>il(e,n,t))),ol=e=>(t,n)=>{let r=new Ho(n?.scheduler?Yr(e,Sa,n.scheduler):e,n?.uninterruptible!==!0);if(r.evaluate(t),r._exit)return r;if(n?.signal){if(n.signal.aborted)r.interruptUnsafe();else{let e=()=>r.interruptUnsafe();n.signal.addEventListener(`abort`,e,{once:!0}),r.addObserver(()=>n.signal.removeEventListener(`abort`,e))}}return n?.onFiberStart&&n.onFiberStart(r),r},sl=x(2,(e,t)=>{if(e._exit)return e;if(t.state._tag===`Closed`)return e.interruptUnsafe(e.id),e;let n={};return xc(t,n,()=>Zo(e)),e.addObserver(()=>Sc(t,n)),e}),cl=ol(qr()),ll=(e=>{let t=ol(e);return e=>{if(Hs(e))return e;let n=new Ta(`sync`),r=t(e,{scheduler:n});return r._dispatcher?.flush(),r._exit??On(new Ste(r))}})(qr()),ul=es(!0),dl=es(!1),fl=class{waiters=[];scheduled=void 0;_isOpen;constructor(e){this._isOpen=e}scheduleUnsafe(e){if(this.waiters.length===0)return ul;if(this.scheduled===void 0)this.scheduled=this.waiters,e.currentDispatcher.scheduleTask(this.flushScheduled,0);else for(let e=0;e<this.waiters.length;e++)this.scheduled.push(this.waiters[e]);return this.waiters=[],ul}flushScheduled=()=>{if(this.scheduled===void 0)return;let e=this.scheduled;this.scheduled=void 0;for(let t=0;t<e.length;t++)e[t](Ks)};flushWaiters(){let e=this.waiters;this.waiters=[],this.flushScheduled();for(let t=0;t<e.length;t++)e[t](Ks)}open=kn(e=>this._isOpen?dl:(this._isOpen=!0,this.scheduleUnsafe(e)));release=kn(e=>this._isOpen?dl:this.scheduleUnsafe(e));openUnsafe(){return!this._isOpen&&(this._isOpen=!0,this.flushWaiters(),!0)}await=ys(e=>this._isOpen?e(ps):(this.waiters.push(e),rs(()=>{let t=this.waiters.indexOf(e);t===-1?this.scheduled!==void 0&&(t=this.scheduled.indexOf(e),t!==-1&&this.scheduled.splice(t,1)):this.waiters.splice(t,1)})));closeUnsafe(){return this._isOpen?(this._isOpen=!1,!0):!1}close=rs(()=>this.closeUnsafe());whenOpen=e=>Vs(this.await,()=>e);isOpen(){return this._isOpen}},pl=e=>new fl(e??!1),ml=BigInt(0),hl={_tag:`Span`,spanId:`noop`,traceId:`noop`,sampled:!1,status:{_tag:`Ended`,startTime:ml,endTime:ml,exit:Ks},attributes:new Map,links:[],kind:`internal`,attribute(){},event(){},end(){},addLinks(){}},gl=e=>Object.assign(Object.create(hl),e),_l=e=>e?$r(e.annotations,Va)?e._tag===`Span`?_l(Tr(e.parent)):gr():_r(e):gr(),vl=(e,t,n)=>{let r=!e.getRef(Za)||n?.annotations&&$r(n.annotations,Va),i=n?.parent===void 0?n?.root?gr():_l(e.cache.span):_r(n.parent),a;if(r)a=gl({name:t,parent:i,annotations:Yr(n?.annotations??qr(),Va,!0)});else{let r=e.getRef(Ga),o=e.getRef(Dl),s=e.getRef(Qa),c=e.getRef($a),l=e.getRef(eo),u=n?.level??e.getRef(Ha),d=n?.links===void 0?l.length===0?[]:l.slice():[...l,...n.links];a=r.span({name:t,parent:i,annotations:n?.annotations??qr(),links:d,startTime:s?o.currentTimeNanosUnsafe():ml,kind:n?.kind??`internal`,root:n?.root??yr(i),sampled:n?.sampled??(br(i)&&i.value.sampled===!1?!1:!Hl(e.getRef(Ua),u))});for(let e in c)a.attribute(e,c[e]);if(n?.attributes!==void 0)for(let e in n.attributes)a.attribute(e,n.attributes[e])}return a},yl=(e,t)=>Lc(kn(n=>{let r=Qr(n.context,pc),i=vl(n,e,t??{}),a=n.getRef(Dl),o=n.getRef(Qa);return As(yc(r,e=>xl(i,e,a,o)),i)})),bl=(e,t)=>(t=typeof t==`function`?t:oe,Js(Xa,n=>({name:e,stack:t,parent:n}))),xl=(e,t,n,r)=>rs(()=>{e.status._tag!==`Ended`&&e.end(r?n.currentTimeNanosUnsafe():ml,t)}),Sl=(e,...t)=>{let n=t.length===1?void 0:t[0],r=t[t.length-1];return kn(t=>{let i=vl(t,e,n),a=t.getRef(Dl),o=t.getRef(Qa);return Ac(is(()=>Lt(()=>r(i))),e=>xl(i,e,a,o))})},Cl=Zs(za),wl=function(){let e=Qt(arguments[0]),t=e?arguments[1]:arguments[0],n=e?arguments[2]:arguments[1],r=S;return t._tag===`Span`&&(n=ao(n),r=bl(t.name,n?.captureStackTrace)),e?Cl(r(arguments[0]),t):e=>Cl(r(e),t)},Tl=function(){let e=typeof arguments[0]!=`string`,t=e?arguments[1]:arguments[0],n=ao(arguments[2]);if(e){let e=arguments[0];return Sl(t,arguments[2],t=>wl(e,t,n))}let r=typeof arguments[1]==`function`?arguments[1]:void 0,i=r?void 0:arguments[1];return(e,...a)=>Sl(t,r?r(...a):i,t=>wl(e,t,n))},El=(...e)=>kn(t=>{let n=t.currentSpanLocal;if(n){if(e.length===1)for(let[t,r]of Object.entries(e[0]))n.attribute(t,r);else n.attribute(e[0],e[1])}return ps}),Dl=si(`effect/Clock`,{defaultValue:()=>new kl}),Ol=2**31-1,kl=class{currentTimeMillisUnsafe(){return Date.now()}currentTimeMillis=rs(()=>this.currentTimeMillisUnsafe());currentTimeNanosUnsafe(){return Ml()}currentTimeNanos=rs(()=>this.currentTimeNanosUnsafe());monotonicTimeNanosUnsafe(){return jl()}monotonicTimeNanos=rs(()=>this.monotonicTimeNanosUnsafe());sleep(e){return this.sleepMillis(ma(e))}sleepMillis(e){return e<=0?ss:Number.isFinite(e)?ys(t=>{let n=e>Ol?this.sleepMillis(e-Ol):ps,r=setTimeout(()=>t(n),Math.min(e,Ol));return rs(()=>clearTimeout(r))}):bs}},Al=BigInt(1e6),jl=function(){let e=globalThis.process?.hrtime;if(typeof e?.bigint==`function`)return()=>e.bigint();if(typeof performance<`u`&&typeof performance.now==`function`)return()=>BigInt(Math.round(performance.now()*1e6));let t=BigInt(0);return()=>{let e=BigInt(Date.now())*Al;return e>t&&(t=e),t}}(),Ml=function(){let e=BigInt(1e9),t;return()=>{let n=jl(),r=BigInt(Date.now())*Al;if(t===void 0)t=r-n;else{let i=t+n;(r>i?r-i:i-r)>e&&(t=r-n)}return t+n}}(),Nl=e=>kn(t=>e(t.getRef(Dl))),Pl=e=>Nl(t=>t.sleep(Ki(e))),Fl=`~effect/Cause/TimeoutError`,yte=class extends Mn(`TimeoutError`){[Fl]=Fl;constructor(e){super({message:e})}},Il=`~effect/Cause/IllegalArgumentError`,bte=class extends Mn(`IllegalArgumentError`){[Il]=Il;constructor(e){super({message:e})}},Ll=`~effect/Cause/ExceededCapacityError`,xte=class extends Mn(`ExceededCapacityError`){[Ll]=Ll;constructor(e){super({message:e})}},Rl=`~effect/Cause/AsyncFiberError`,Ste=class extends Mn(`AsyncFiberError`){[Rl]=Rl;constructor(e){super({message:`An asynchronous Effect was executed with Effect.runSync`,fiber:e})}},zl=`~effect/Cause/UnknownError`,Bl=class extends Mn(`UnknownError`){[zl]=zl;constructor(e,t){super({message:t,cause:e})}},Cte=si(`effect/Console`,{defaultValue:()=>globalThis.console}),Vl=dr(ur,e=>{switch(e){case`All`:return-(2**53-1);case`Fatal`:return 5e4;case`Error`:return 4e4;case`Warn`:return 3e4;case`Info`:return 2e4;case`Debug`:return 1e4;case`Trace`:return 0;case`None`:return 2**53-1}}),Hl=pr(Vl),Ul=si(`effect/Logger/CurrentLoggers`,{defaultValue:()=>new Set([ql,Jl])}),wte=si(`effect/Logger/LogToStderr`,{defaultValue:ie}),Tte={"~effect/Logger":{_Message:S,_Output:S},pipe(){return b(this,arguments)}},Wl=e=>{let t=Object.create(Tte);return t.log=e,t},Ete=e=>e.replace(/[\s="]/g,`_`),Dte=(e,t)=>`${Ete(e[0])}=${t-e[1]}ms`,Gl=e=>(...t)=>{let n;for(let e=0,r=t.length;e<r;e++){let r=t[e];nn(r)&&(n?t.splice(e,1):t=t.slice(0,e).concat(t.slice(e+1)),n=n?un(n.reasons.concat(r.reasons)):r,e--)}return n===void 0&&(n=dn),kn(r=>{let i=e??r.cache.logLevel;if(Hl(r.cache.minimumLogLevel,i))return ps;let a=r.getRef(Dl),o=r.getRef(Ul);if(o.size>0){let e=new Date(a.currentTimeMillisUnsafe());for(let a of o)a.log({cause:n,fiber:r,date:e,logLevel:i,message:t})}return ps})},Kl={bold:`1`,red:`31`,green:`32`,yellow:`33`,blue:`34`,cyan:`36`,white:`37`,gray:`90`,black:`30`,bgBrightRed:`101`};Kl.gray,Kl.blue,Kl.green,Kl.yellow,Kl.red,Kl.bgBrightRed,Kl.black;var Ote=e=>`${e.getHours().toString().padStart(2,`0`)}:${e.getMinutes().toString().padStart(2,`0`)}:${e.getSeconds().toString().padStart(2,`0`)}.${e.getMilliseconds().toString().padStart(3,`0`)}`,ql=Wl(({cause:e,date:t,fiber:n,logLevel:r,message:i})=>{let a=Array.isArray(i)?i.slice():[i];e.reasons.length>0&&a.push(Fo(e));let o=t.getTime(),s=n.getRef(io),c=``;for(let e of s)c+=` ${Dte(e,o)}`;let l=n.getRef(to);Object.keys(l).length>0&&a.push(l);let u=n.getRef(Cte);(n.getRef(wte)?u.error:u.log)(`[${Ote(t)}] ${r.toUpperCase()} (#${n.id})${c}:`,...a)}),Jl=Wl(({cause:e,fiber:t,logLevel:n,message:r})=>{let i=t.getRef(Dl),a=t.getRef(to),o=t.cache.span;if(o===void 0||o._tag===`ExternalSpan`)return;let s={};for(let[e,t]of Object.entries(a))Rt(s,e,t);s[`effect.fiberId`]=t.id,s[`effect.logLevel`]=n.toUpperCase(),e.reasons.length>0&&(s[`effect.cause`]=Fo(e)),o.event(jt(Array.isArray(r)&&r.length===1?r[0]:r),i.currentTimeNanosUnsafe(),s)});function Yl(){Go.interruptChildren??=qo}var Xl=(e,t,n)=>{let r=e.getRef(Ya);if(r.size===0||n&&!mo(t))return;let i={cause:t,fiber:e,timestamp:e.getRef(Dl).currentTimeNanosUnsafe()};r.forEach(e=>e.report(i))},Zl=nn,Ql=rn,$l=gn,eu=un,tu=fn,nu=mn,ru=e=>new ln(e),iu=e=>new pn(e),au=lo,ou=bo,su=wo,cu=Eo,lu=fo,uu=po,du=mo,fu=go,pu=vo,mu=Fo,hu=In,gu=Rn,_u=zn,vu=bte,yu=xte,bu=Bl,xu=hn,Su=xo,Cu=class extends jr()(`effect/Cause/StackTrace`){};jr()(`effect/Cause/InterruptorStackTrace`);var wu=$t,Tu=Cn,Eu=En,Du=Dn,Ou=On,ku=Ws,Au=Ks,ju=Gs,Mu=Iee,Nu=`~effect/Deferred`,Pu=e=>C(e,Nu),Fu={[Nu]:{_A:S,_E:S},pipe(){return b(this,arguments)}},Iu=function(){this.resumes=void 0,this.effect=void 0};Iu.prototype=Fu;var Lu=()=>new Iu,Ru=()=>rs(()=>Lu()),zu=e=>ys(t=>e.effect?t(e.effect):(e.resumes??=[],e.resumes.push(t),rs(()=>{let n=e.resumes;if(n===void 0)return;let r=n.indexOf(t);r>=0&&n.splice(r,1)}))),Bu=x(2,(e,t)=>rs(()=>Wu(e,t))),Vu=x(2,(e,t)=>Bu(e,En(t))),Hu=x(2,(e,t)=>Vu(e,uo(t))),Uu=x(2,(e,t)=>Bu(e,Cn(t))),Wu=(e,t)=>{if(e.effect)return!1;if(e.effect=t,e.resumes){let n=e.resumes;e.resumes=void 0;for(let e=0;e<n.length;e++)n[e](t)}return!0},Gu=to,Ku=no,qu=pc,Ju=Tc,Yu=Cc,Xu=gte,Zu=yc,Qu=bc,$u=_c,ed=vc,td=mc,nd=hc,rd=`~effect/Layer`,id=`~effect/Layer/MemoMap`,ad=(e,t)=>(e.observers++,Ls(yc(t,t=>e.finalizer(t)),e.effect)),od={[rd]:{_ROut:S,_E:S,_RIn:S},pipe(){return b(this,arguments)}},sd=e=>{let t=Object.create(od);return t.build=e,t},cd=e=>sd((t,n)=>{let r=ed(n);return Ac(e(t,r),e=>e._tag===`Failure`?td(r,e):ps)}),ld=e=>{let t=cd((n,r)=>n.getOrElseMemoize(t,r,e));return t},ud=(e,t,n,r)=>{let i=Yu(),a=Lu(),o={observers:1,effect:zu(a),finalizer:n=>is(()=>(o.observers--,o.observers===0?(e.map.delete(t),td(i,n)):ps))};return e.map.set(t,o),yc(n,o.finalizer).pipe(Vs(()=>r(e,i)),Ac(e=>(o.effect=e,Bu(a,e))))},dd=class{get[id](){return id}parent;constructor(e){this.parent=e}map=new Map;get(e,t){let n=this.map.get(e);return n?ad(n,t):this.parent?.get(e,t)}getOrElseMemoize(e,t,n){return is(()=>this.get(e,t)||ud(this,e,t,n))}},fd=()=>new dd,pd=e=>new dd(e),md=class e extends jr()(`effect/Layer/CurrentMemoMap`){static forkOrCreate(t){let n=Xr(t,e);return n?pd(n):fd()}},hd=x(3,(e,t,n)=>Zs(Us(e.build(t,n),Yr(md,t)),md,t)),gd=e=>kn(t=>hd(e,md.forkOrCreate(t.context),Qr(t.context,qu))),_d=x(2,(e,t)=>kn(n=>hd(e,md.forkOrCreate(n.context),t))),vd=function(){return arguments.length===1?e=>yd(Jr(arguments[0],e)):yd(Jr(arguments[0],arguments[1]))},yd=e=>sd(ne(es(e))),bd=function(){return arguments.length===1?e=>xd(()=>Jr(arguments[0],e())):xd(()=>Jr(arguments[0],arguments[1]()))},xd=e=>ld(ne(rs(e))),Sd=function(){return arguments.length===1?e=>Cd(arguments[0],e):Cd(arguments[0],arguments[1])},Cd=(e,t)=>wd(Us(t,t=>Jr(e,t))),wd=e=>ld((t,n)=>Xu(e,n)),Td=e=>wd(As(e,qr())),Ed=(e,t,n)=>{let r=ed(n,`parallel`);return qc(e,e=>e.build(t,ed(r,`sequential`)),{concurrency:e.length}).pipe(Us(e=>ai(...e)))},Dd=(...e)=>cd((t,n)=>Ed(e,t,n)),Od=(e,t,n)=>cd((r,i)=>Vs(Array.isArray(t)?Ed(t,r,i):t.build(r,i),t=>e.build(r,i).pipe(Xs(t),Us(e=>n(e,t))))),kd=x(2,(e,t)=>Od(e,t,S)),Ad=x(2,(e,t)=>Od(e,t,(e,t)=>ii(t,e))),jd=e=>Dc(Ls(gd(e),bs)),Md=Dl,Nd=Nl,Pd=`~effect/DateTime`,Fd=`~effect/DateTime/TimeZone`,Id={[Pd]:Pd,pipe(){return b(this,arguments)},[kt](){return this.toString()},toJSON(){return qd(this).toJSON()}},Ld={...Id,_tag:`Utc`,[Ne](){return ze(this.epochMilliseconds)},[Ze](e){return zd(e)&&e._tag===`Utc`&&this.epochMilliseconds===e.epochMilliseconds},toString(){return`DateTime.Utc(${qd(this).toJSON()})`}};({...Id});var Rd={[Fd]:Fd,[kt](){return this.toString()}};({...Rd}),{...Rd};var zd=e=>C(e,Pd),Bd=e=>e._tag===`Utc`,Vd=e=>{let t=Object.create(Ld);return t.epochMilliseconds=e,Object.defineProperty(t,"partsUtc",{value:void 0,enumerable:!1,writable:!0}),t},Hd=e=>{let t=e.getTime();if(Number.isNaN(t))throw new vu(`Invalid date`);return Vd(t)},Ud=e=>{if(zd(e))return e;if(e instanceof Date)return Hd(e);if(typeof e==`object`){if(`epochMilliseconds`in e)return Hd(new Date(e.epochMilliseconds));let t=new Date(0);return Jd(t,e),Hd(t)}return typeof e==`string`&&!Wd(e)?Hd(new Date(e+`Z`)):Hd(new Date(e))},Wd=e=>/Z|GMT|[+-]\d{2}$|[+-]\d{2}:?\d{2}$|\]$/.test(e),Gd=Er(Ud),Kd=e=>Vd(e.epochMilliseconds),qd=e=>new Date(e.epochMilliseconds),Jd=(e,t)=>{if((t.year!==void 0||t.month!==void 0||t.day!==void 0)&&e.setUTCFullYear(t.year??e.getUTCFullYear(),t.month===void 0?e.getUTCMonth():t.month-1,t.day??e.getUTCDate()),t.weekDay!==void 0){let n=t.weekDay-e.getUTCDay();e.setUTCDate(e.getUTCDate()+n)}t.hour!==void 0&&e.setUTCHours(t.hour),t.minute!==void 0&&e.setUTCMinutes(t.minute),t.second!==void 0&&e.setUTCSeconds(t.second),t.millisecond!==void 0&&e.setUTCMilliseconds(t.millisecond)},Yd=e=>qd(e).toISOString(),Xd=x(2,(e,t)=>tc(e,ef,e=>t(e))),Zd=e=>e.reasons.some(Qd),Qd=e=>e._tag===`Fail`&&hu(e.error),$d=e=>{let t,n=!1;for(let r of e.reasons)Qd(r)?t??=r.error:r._tag!==`Interrupt`&&(n=!0);return t===void 0?di(e):n?di(eu(e.reasons.filter(e=>!Qd(e)))):ui(t)},ef=e=>{let t=$d(e);return pi(t)?t:ui(t.success.value)},tf=e=>{let t=$d(e);return pi(t)?Eu(t.failure):Tu(t.success.value)},nf=x(2,(e,t)=>ac(e,{onSuccess:t.onSuccess,onFailure:e=>{let n=$d(e);return pi(n)?t.onFailure(n.failure):t.onDone(n.success.value)}})),rf=`~effect/Schedule`,af=si(`effect/Schedule/CurrentMetadata`,{defaultValue:ne({input:void 0,output:void 0,duration:ia,attempt:0,start:0,now:0,elapsed:0,elapsedSincePrevious:0})}),of={[rf]:{_Out:S,_In:S,_Env:S},pipe(){return b(this,arguments)}},sf=e=>C(e,rf),cf=e=>{let t=Object.create(of);return t.step=e,t},lf=()=>{let e=0,t,n;return(r,i)=>{n===void 0&&(n=r);let a=r-n,o=t===void 0?0:r-t;return t=r,{input:i,attempt:++e,start:n,now:r,elapsed:a,elapsedSincePrevious:o}}},uf=e=>cf(Us(e,e=>{let t=lf();return(n,r)=>e(t(n,r))})),df=e=>$s(e.step,e=>es(()=>ts(e))),ff=e=>Nl(t=>Us(df(e),e=>{let n=lf();return r=>is(()=>{let i=t.currentTimeMillisUnsafe();return Vs(e(i,r),([e,t])=>{let a=n(i,r);return a.output=e,a.duration=t,As(Pl(t),a)})})})),pf=e=>cf(Us(df(e),e=>(t,n)=>nf(e(t,n),{onSuccess:e=>es([n,e[1]]),onFailure:ts,onDone:()=>_u(n)}))),mf=e=>{let t=Ki(e);return uf(es(e=>es([e.attempt-1,t])))},hf=x(2,(e,t)=>cf(Us(df(e),e=>{let n=lf();return(r,i)=>Vs(e(r,i),e=>{let[a,o]=e,s=t({...n(r,i),output:a,duration:o});return Vs(Qt(s)?s:es(s),t=>t?es(e):_u(a))})}))),gf=mf(ia),_f=(e,t,n)=>Oc(r=>Vs(n?.local?hd(t,fd(),r):_d(t,r),t=>Xs(e,t))),vf=x(e=>Qt(e[0]),(e,t,n)=>Gr(t)?Xs(e,t):_f(e,Array.isArray(t)?Dd(...t):t,n)),yf=x(3,(e,t,n)=>Vs(ff(t),t=>{let r=af.defaultValue(),i,a=nc(is(()=>Zs(e,af,r)),e=>(i=e,Vs(t(e),e=>(r=e,a))));return Xd(a,e=>Lt(()=>n(i,e)))})),kte=x(2,(e,t)=>yf(e,typeof t==`function`?t(S):sf(t)?t:Mte(t),ns)),Ate=x(3,(e,t,n)=>Vs(ff(n),n=>{let r=af.defaultValue(),i=is(()=>Zs(e,af,r));return nc(Vs(n(t),e=>(r=e,Kc({while:re,body:ne(Vs(i,n)),step(e){r=e}}))),e=>In(e)?es(e.value):ns(e))})),jte=pf(gf),Mte=e=>{let t=e.schedule?pf(e.schedule):jte;return e.while&&(t=hf(t,({input:t})=>{let n=e.while(t);return Qt(n)?n:es(n)})),e.until&&(t=hf(t,({input:t})=>{let n=e.until(t);return Qt(n)?Us(n,e=>!e):es(!n)})),e.times!==void 0&&(t=hf(t,({attempt:t})=>es(t<=e.times))),t},bf=Qt,xf=Gc,Sf=qc,Cf=Kc,wf=hs,T=es,Tf=ls,Nte=cs,Ef=is,E=rs,D=ps,Df=ys,Of=bs,O=xs,k=ns,kf=ts,Af=us,jf=ds,Mf=ms,Nf=ss,Pf=kn,Pte=os,Fte=as,A=Vs,Ite=Mee,Ff=Ls,If=Rs,Lf=ic,Rf=cte,zf=lc,j=Us,Bf=As,Vf=zs,Hf=nc,Uf=tte,Lte=nte,Wf=$s,Gf=Yee,Kf=rc,qf=ite,Jf=Qee,Yf=Xee,Xf=kte,Rte=kee,Zf=ote,Qf=ste,$f=ate,ep=pte,tp=uc,np=Bs,rp=el,ip=Kee,ap=ac,op=sc,sp=Wee,cp=Ys,lp=vf,up=Xs,dp=Uee,fp=qs,pp=Zs,mp=Ec,hp=Dc,gp=Oc,_p=_te,vp=vte,yp=jc,bp=Nc,xp=Ac,Sp=Ic,Cp=Hc,wp=Fc,Tp=Lc,Ep=Uc,Dp=Wc,Op=qee,kp=x(2,(e,t)=>Ap(e,void 0,t)),Ap=Ate,jp=El,Mp=yl,Np=Sl,Pp=Tl,Fp=wl,Ip=tl,Lp=il,Rp=al,zp=rl,Bp=cl,Vp=ol,Hp=ll,M=Ss,Up=Ts,Wp=Gl(`Fatal`),Gp=Gl(`Warn`),Kp=Gl(`Error`),qp=Gl(`Debug`),Jp=x(e=>bf(e[0]),(e,...t)=>Js(e,Gu,e=>{let n=t.length===1?{...e,...t[0]}:{...e};return t.length===1||Rt(n,t[0],t[1]),n}));jr()(`effect/Effect/Transaction`);var Yp=(e,t,n)=>(...r)=>Df(i=>{try{e(...r,(e,n)=>{i(e?k(t?t(e,r):e):T(n))})}catch(e){i(n?k(n(e,r)):jf(e))}}),Xp=Nee,Zp=Pee,Qp=Fee,$p=jee,em=Ds,tm=(e,t)=>ju(e)?t(0):ou(e.cause)?t(130):t(im(cu(e.cause))),nm=e=>x(e=>bf(e[0]),(t,n)=>{let r=n?.disableErrorReporting===!0?Bp(t):Bp(Yf(t,e=>ou(e)?D:om(cu(e))?Kp(e):D));try{let e=globalThis.setInterval(se,2147483647);r.addObserver(()=>{clearInterval(e)})}catch{}return e({fiber:r,teardown:n?.teardown??tm})}),rm=`~effect/Runtime/errorExitCode`,im=e=>{if(typeof e==`object`&&e&&`~effect/Runtime/errorExitCode`in e){let t=e[rm];if(typeof t==`number`)return t}return 1},am=`~effect/Runtime/errorReported`,om=e=>{if(typeof e==`object`&&e&&`~effect/Runtime/errorReported`in e){let t=e[am];if(typeof t==`boolean`)return t}return!0},sm=nm(({fiber:e,teardown:t})=>{let n=!1;e.addObserver(e=>{process.removeListener(`SIGINT`,r),process.removeListener(`SIGTERM`,r),t(e,e=>{(n||e!==0)&&process.exit(e)})});function r(){n=!0,e.interruptUnsafe(e.id)}process.on(`SIGINT`,r),process.on(`SIGTERM`,r)}),cm=`~effect/PlatformError`,lm=class extends Oa(`BadArgument`){get message(){return`${this.module}.${this.method}${this.description?`: ${this.description}`:``}`}},um=class extends _ee{get message(){return`${this._tag}: ${this.module}.${this.method}${this.pathOrDescriptor===void 0?``:` (${this.pathOrDescriptor})`}${this.description?`: ${this.description}`:``}`}},dm=class extends Oa(`PlatformError`){constructor(e){`cause`in e?super({reason:e,cause:e.cause}):super({reason:e})}[cm]=cm;get message(){return this.reason.message}},fm=e=>new dm(new um(e)),pm=e=>new dm(new lm(e)),mm=Jo,hm=Xo,gm=Zo,_m=Vo,vm=sl,ym=pl,bm=`~effect/MutableRef`,xm={[bm]:bm,...Xt,toJSON(){return{_id:`MutableRef`,current:At(this.current)}}},Sm=e=>{let t=Object.create(xm);return t.current=e,t},Cm=x(2,(e,t)=>(e.current=t,e)),wm=Symbol.for(`effect/MutableList/Empty`),Tm=()=>({head:void 0,tail:void 0,length:0}),Em=()=>({array:[],mutable:!0,offset:0,next:void 0}),Dm=(e,t)=>{e.tail?e.tail.mutable||(e.tail.next=Em(),e.tail=e.tail.next):e.head=e.tail=Em(),e.tail.array.push(t),e.length++},Om=(e,t)=>{e.head={array:[t],mutable:!0,offset:0,next:e.head},e.tail||=e.head,e.length++},km=(e,t)=>Am(e,wi(t),!Array.isArray(t)),Am=(e,t,n=!1)=>{if(t.length===0)return 0;let r={array:t,mutable:n,offset:0,next:void 0};return e.head?e.tail=e.tail.next=r:e.head=e.tail=r,e.length+=t.length,t.length},jm=e=>{e.head=e.tail=void 0,e.length=0},Mm=(e,t)=>{if(t=li(t),t<=0||!e.head)return[];if(t=Math.min(t,e.length),t===e.length&&e.head?.offset===0&&!e.head.next){let t=e.head.array;return jm(e),t}let n=Array(t),r=0,i=e.head;for(;i;){for(;i.offset<i.array.length;)if(n[r++]=i.array[i.offset],i.mutable&&(i.array[i.offset]=void 0),i.offset++,r===t)return e.head=i,e.length-=t,e.length===0&&jm(e),n;i=i.next}return jm(e),n},Nm=e=>Mm(e,e.length),Pm=e=>{if(!e.head)return wm;let t=e.head.array[e.head.offset];return e.head.mutable&&(e.head.array[e.head.offset]=void 0),e.head.offset++,e.length--,e.head.offset===e.head.array.length&&(e.head.next?e.head=e.head.next:jm(e)),t},Fm=`~effect/PubSub`,Im=`~effect/PubSub/Subscription`,Lm=e=>E(()=>Zm(e.atomicPubSub(),new Map,Yu(),ym(!1),Sm(!1),e.strategy())),Rm=e=>Lm({atomicPubSub:()=>zm(e),strategy:()=>new Qm}),zm=e=>{let t=e?.replay;return new qm(t&&t>0?new th(Math.ceil(t)):void 0)},Bm=x(2,(e,t)=>Ef(()=>e.shutdownFlag.current?T(!1):e.pubsub.publish(t)?(e.strategy.completeSubscribersUnsafe(e.pubsub,e.subscribers),T(!0)):e.strategy.handleSurplus(e.pubsub,e.subscribers,[t],e.shutdownFlag))),Vm=e=>Tp(cp(t=>{let n=$r(t,qu),r=ed(e.scope),i=Km(e.pubsub,e.subscribers,e.strategy);return Qu(r,Hm(i)).pipe(Ff(Zu(n,e=>td(r,e))),Bf(i))})),Hm=e=>Tp(Pf(t=>(Cm(e.shutdownFlag,!0),Sf(Nm(e.pollers),e=>Hu(e,t.id),{discard:!0,concurrency:`unbounded`}).pipe(If(()=>E(()=>{e.subscribers.delete(e.subscription),e.subscription.unsubscribe(),e.replayWindow.close(),e.strategy.onPubSubEmptySpaceUnsafe(e.pubsub,e.subscribers)})),ip(e.shutdownHook.open),Vf)))),Um=Symbol.for(`effect/PubSub/AbsentValue`),Wm=(e,t,n)=>{e.has(t)||e.set(t,new Set),e.get(t).add(n)},Gm=(e,t,n)=>{if(!e.has(t))return;let r=e.get(t);r.delete(n),r.size===0&&e.delete(t)},Km=(e,t,n)=>new Ym(e,t,e.subscribe(),Tm(),ym(!1),Sm(!1),n,e.replayWindow()),qm=class{publisherHead={value:Um,replayIndex:void 0,subscribers:0,next:null};publisherTail=this.publisherHead;publisherIndex=0;subscribersIndex=0;capacity=2**53-1;replayBuffer;constructor(e){this.replayBuffer=e}replayWindow(){return this.replayBuffer?new nh(this.replayBuffer):rh}isEmpty(){return this.publisherHead===this.publisherTail}isFull(){return!1}size(){return this.publisherIndex-this.subscribersIndex}publish(e){let t=this.replayBuffer?.offer(e),n=this.publisherTail.subscribers;if(n!==0){let r={value:e,replayIndex:t,subscribers:n,next:null};this.publisherTail.next=r,this.publisherTail=this.publisherTail.next,this.publisherIndex+=1}return!0}publishAll(e){if(this.publisherTail.subscribers!==0)for(let t of e)this.publish(t);else this.replayBuffer&&this.replayBuffer.offerAll(e);return[]}slide(){if(this.publisherHead!==this.publisherTail){let e=this.publisherHead.next,t=e.value;this.publisherHead=this.publisherHead.next,this.publisherHead.value=Um,this.subscribersIndex+=1,this.replayBuffer?.slide(t,e.replayIndex)}}subscribe(){return this.publisherTail.subscribers+=1,new Jm(this,this.publisherTail,this.publisherIndex,!1)}},Jm=class{self;subscriberHead;subscriberIndex;unsubscribed;constructor(e,t,n,r){this.self=e,this.subscriberHead=t,this.subscriberIndex=n,this.unsubscribed=r}isEmpty(){if(this.unsubscribed)return!0;let e=!0,t=!0;for(;t;)this.subscriberHead===this.self.publisherTail?t=!1:this.subscriberHead.next.value===Um?(this.subscriberHead=this.subscriberHead.next,this.subscriberIndex+=1):(e=!1,t=!1);return e}size(){return this.unsubscribed?0:this.self.publisherIndex-Math.max(this.subscriberIndex,this.self.subscribersIndex)}poll(){if(this.unsubscribed)return wm;let e=!0,t=wm;for(;e;)if(this.subscriberHead===this.self.publisherTail)e=!1;else{let n=this.subscriberHead.next.value;n!==Um&&(t=n,--this.subscriberHead.subscribers,this.subscriberHead.subscribers===0&&(this.self.publisherHead=this.self.publisherHead.next,this.self.publisherHead.value=Um,this.self.subscribersIndex+=1),e=!1),this.subscriberHead=this.subscriberHead.next,this.subscriberIndex+=1}return t}pollUpTo(e){e=li(e);let t=[],n=0;for(;n!==e;){let r=this.poll();r===wm?n=e:(t.push(r),n+=1)}return t}unsubscribe(){if(!this.unsubscribed)for(this.unsubscribed=!0,--this.self.publisherTail.subscribers;this.subscriberHead!==this.self.publisherTail;)this.subscriberHead.next.value!==Um&&(--this.subscriberHead.subscribers,this.subscriberHead.subscribers===0&&(this.self.publisherHead=this.self.publisherHead.next,this.self.publisherHead.value=Um,this.self.subscribersIndex+=1)),this.subscriberHead=this.subscriberHead.next}},Ym=class{[Im]={_A:S};pubsub;subscribers;subscription;pollers;shutdownHook;shutdownFlag;strategy;replayWindow;constructor(e,t,n,r,i,a,o,s){this.pubsub=e,this.subscribers=t,this.subscription=n,this.pollers=r,this.shutdownHook=i,this.shutdownFlag=a,this.strategy=o,this.replayWindow=s}pipe(){return b(this,arguments)}},Xm=class{[Fm]={_A:S};pubsub;subscribers;scope;shutdownHook;shutdownFlag;strategy;constructor(e,t,n,r,i,a){this.pubsub=e,this.subscribers=t,this.scope=n,this.shutdownHook=r,this.shutdownFlag=i,this.strategy=a}pipe(){return b(this,arguments)}},Zm=(e,t,n,r,i,a)=>new Xm(e,t,n,r,i,a),Qm=class{get shutdown(){return D}handleSurplus(e,t,n,r){return T(!1)}onPubSubEmptySpaceUnsafe(e,t){}completePollersUnsafe(e,t,n,r){return $m(this,e,t,n,r)}completeSubscribersUnsafe(e,t){return eh(this,e,t)}},$m=(e,t,n,r,i)=>{let a=!0;for(;a&&!r.isEmpty();){let o=Pm(i);if(o===wm)Gm(n,r,i),i.length===0?a=!1:Wm(n,r,i);else{let a=r.poll();a===wm?Om(i,o):(Wu(o,Tu(a)),e.onPubSubEmptySpaceUnsafe(t,n))}}},eh=(e,t,n)=>{for(let[r,i]of n)for(let a of i)e.completePollersUnsafe(t,n,r,a)},th=class{capacity;head={value:Um,index:0,next:null};tail=this.head;slideValues=[];size=0;index=0;publisherIndex=0;constructor(e){this.capacity=e}slide(e,t){this.slideValues[this.index%this.capacity]={value:e,index:t},this.index++}offer(e){let t=this.publisherIndex++;return this.tail.value=e,this.tail.index=t,this.tail.next={value:Um,index:0,next:null},this.tail=this.tail.next,this.size===this.capacity?this.head=this.head.next:this.size+=1,t}offerAll(e){for(let t of e)this.offer(t)}},nh=class{buffer;values;index=0;remaining;slideIndex;newestIndex=-1;constructor(e){this.buffer=e,this.remaining=e.size,this.slideIndex=e.index,this.values=Array(this.remaining);let t=e.head;for(let e=0;e<this.remaining;e++)this.values[e]=t.value,this.newestIndex=t.index,t=t.next}close(){this.values.length=0,this.remaining=0}sync(){let e=this.buffer.index-this.slideIndex;if(e===0||this.remaining===0)return;let t=Math.min(e,this.buffer.capacity),n=this.buffer.index-t;for(let e=0;e<t;e++){let t=this.buffer.slideValues[(n+e)%this.buffer.capacity];t.index>this.newestIndex&&(this.index=(this.index+1)%this.values.length,this.values[(this.index+this.remaining-1)%this.values.length]=t.value,this.newestIndex=t.index)}this.slideIndex=this.buffer.index}take(){if(this.remaining===0)return;this.sync();let e=this.values[this.index];return this.values[this.index]=Um,this.index=(this.index+1)%this.values.length,this.remaining--,this.remaining===0&&this.close(),e}takeN(e){e=li(e);let t=Math.min(e,this.remaining),n=Array(t);for(let e=0;e<t;e++)n[e]=this.take();return n}takeAll(){return this.takeN(this.remaining)}},rh={remaining:0,take:()=>void 0,takeN:()=>[],takeAll:()=>[],close:()=>void 0},ih=`~effect/Queue`,ah=`~effect/Queue/Enqueue`,oh=`~effect/Queue/Dequeue`,sh={_A:S,_E:S},ch={[ih]:sh,[ah]:sh,[oh]:sh,...Xt,toJSON(){return{_id:`effect/Queue`,state:this.state._tag,size:Oh(this)}}},lh=e=>kn(t=>{let n=Object.create(ch);return n.dispatcher=t.currentDispatcher,n.capacity=e?.capacity??1/0,n.strategy=e?.strategy??`suspend`,n.messages=Tm(),n.scheduleRunning=!1,n.state={_tag:`Open`,takers:new Set,offers:new Set,awaiters:new Set},es(n)}),uh=e=>lh({capacity:e}),dh=()=>lh(),fh=(e,t)=>is(()=>{if(e.state._tag!==`Open`)return kh;if(e.messages.length>=e.capacity)switch(e.strategy){case`dropping`:return kh;case`suspend`:return e.capacity<=0&&e.state.takers.size>0?(Dm(e.messages,t),Nh(e),Ah):Ih(e,t);case`sliding`:return Pm(e.messages),Dm(e.messages,t),Ah}return Dm(e.messages,t),Ph(e),Ah}),ph=(e,t)=>e.state._tag===`Open`?e.messages.length>=e.capacity?e.strategy===`sliding`?(Pm(e.messages),Dm(e.messages,t),!0):e.capacity<=0&&e.state.takers.size>0&&(Dm(e.messages,t),Nh(e),!0):(Dm(e.messages,t),Ph(e),!0):!1,mh=(e,t)=>is(()=>{if(e.state._tag!==`Open`)return es(wi(t));let n=hh(e,t);return n.length===0?Cn([]):e.strategy===`dropping`?es(n):Lh(e,n)}),hh=(e,t)=>{if(e.state._tag!==`Open`)return wi(t);if(e.capacity===1/0||e.strategy===`sliding`)return km(e.messages,t),e.strategy===`sliding`&&Mm(e.messages,e.messages.length-e.capacity),Ph(e),[];let n=e.capacity<=0?e.state.takers.size:e.capacity-e.messages.length;if(n===0)return wi(t);let r=[],i=0;for(let a of t)i<n?Dm(e.messages,a):r.push(a),i++;return Ph(e),r},gh=x(2,(e,t)=>rs(()=>_h(e,t))),_h=(e,t)=>{if(e.state._tag!==`Open`)return!1;let n=Vee(En(t),jh);return e.state.offers.size===0&&e.messages.length===0?(Hh(e,n),!0):(e.state={...e.state,_tag:`Closing`,exit:n},!0)},vh=e=>gh(e,fn(Rn())),yh=e=>_h(e,fn(Rn())),bh=e=>rs(()=>xh(e)),xh=e=>{if(e.state._tag===`Done`)return!1;jm(e.messages);let t=e.state.offers;Hh(e,e.state._tag===`Open`?Mh:e.state.exit);for(let e of t)e._tag===`Single`?e.resume(kh):e.resume(Cn(e.remaining.slice(e.offset)));return!0},Sh=e=>is(()=>{if(e.state._tag===`Done`)return Zd(e.state.exit.cause)?es([]):e.state.exit;let t=Vh(e);return zh(e),es(t)}),Ch=e=>wh(e,1,1/0),wh=(e,t,n)=>(t=li(t),n=li(n),is(()=>Fh(e,t,n)??Ls(Bh(e),wh(e,1,n)))),Th=e=>is(()=>Dh(e)??Ls(Bh(e),Th(e))),Eh=e=>is(()=>{let t=Dh(e);return t===void 0?es(gr()):t._tag===`Success`?es(_r(t.value)):es(gr())}),Dh=e=>{if(e.state._tag===`Done`)return e.state.exit;if(e.messages.length>0){let t=Pm(e.messages);return zh(e),Cn(t)}if(e.capacity<=0&&e.state.offers.size>0){let t=Rh(e.state.offers);return zh(e),Cn(t)}},Oh=e=>e.state._tag===`Done`?0:e.messages.length,kh=Cn(!1),Ah=Cn(!0),jh=Dn(Rn()),Mh=Ws(),Nh=e=>{if(e.state._tag!==`Done`&&e.state.takers.size!==0){for(let t of e.state.takers)if(e.state.takers.delete(t),t(Ks),e.messages.length===0)break}},Ph=e=>{e.scheduleRunning||e.state._tag===`Done`||e.state.takers.size===0||(e.scheduleRunning=!0,e.dispatcher.scheduleTask(()=>{e.scheduleRunning=!1,Nh(e)},0))},Fh=(e,t,n)=>{if(e.state._tag===`Done`)return e.state.exit;if(n<=0||t<=0)return Cn([]);if(e.capacity<=0&&e.messages.length===0&&e.state.offers.size>0){let t=[Rh(e.state.offers)];return zh(e),Cn(t)}if(t=Math.min(t,e.capacity||1),t<=e.messages.length){let t=Mm(e.messages,n);return zh(e),Cn(t)}},Ih=(e,t)=>ys(n=>{if(e.state._tag!==`Open`)return n(kh);let r={_tag:`Single`,message:t,resume:n};return e.state.offers.add(r),rs(()=>{e.state._tag===`Open`&&e.state.offers.delete(r)})}),Lh=(e,t)=>ys(n=>{if(e.state._tag!==`Open`)return n(Cn(t));let r={_tag:`Array`,remaining:t,offset:0,resume:n};return e.state.offers.add(r),rs(()=>{e.state._tag===`Open`&&e.state.offers.delete(r)})}),Rh=e=>{let t=e.values().next().value;if(t._tag===`Single`)return e.delete(t),t.resume(Ah),t.message;let n=t.remaining[t.offset++];return t.offset===t.remaining.length&&(e.delete(t),t.resume(Cn([]))),n},zh=e=>{if(e.state._tag===`Done`)return Zd(e.state.exit.cause);if(e.state.offers.size===0)return e.state._tag===`Closing`&&e.messages.length===0&&(Hh(e,e.state.exit),Zd(e.state.exit.cause));for(let t of e.state.offers){let n=e.capacity-e.messages.length;if(n<=0)break;if(t._tag===`Single`)Dm(e.messages,t.message),e.state.offers.delete(t),t.resume(Ah);else{for(;t.offset<t.remaining.length;t.offset++){if(n===0)return!1;Dm(e.messages,t.remaining[t.offset]),n--}e.state.offers.delete(t),t.resume(Cn([]))}}return!1},Bh=e=>ys(t=>e.state._tag===`Done`?t(e.state.exit):(e.state.takers.add(t),rs(()=>{e.state._tag!==`Done`&&e.state.takers.delete(t)}))),Vh=e=>{if(e.messages.length>0){let t=Nm(e.messages);return zh(e),t}if(e.state._tag!==`Done`&&e.state.offers.size>0){let t=[Rh(e.state.offers)];return zh(e),t}return[]},Hh=(e,t)=>{if(e.state._tag===`Done`)return;let n=e.state;e.state={_tag:`Done`,exit:t};for(let e of n.takers)e(t);n.takers.clear();for(let e of n.awaiters)e(t);n.awaiters.clear()},Uh=e=>new Gh(e),Wh=(e,t,n)=>ys(r=>{if(e.free>=t)return r(n);let i=()=>{e.free<t||(e.waiters.delete(i),r(n))};return e.waiters.add(i),rs(()=>{e.waiters.delete(i)})}),Gh=class{waiters=new Set;taken=0;permits;constructor(e){this.permits=e}get free(){return this.permits-this.taken}take(e){let t=is(()=>this.free<e?Wh(this,e,t):(this.taken+=e,es(e)));return t}takeIfAvailable(e){return is(()=>this.free<e?es(!1):(this.taken+=e,es(!0)))}releaseUnsafe(e,t){return this.taken-=t,this.waiters.size>0&&e.currentDispatcher.scheduleTask(()=>{for(let e of this.waiters){if(this.free<=0)break;e()}},0),this.free}resize(e){return kn(t=>(this.permits=e,this.free<0||this.releaseUnsafe(t,0),ps))}release(e){return kn(t=>es(this.releaseUnsafe(t,e)))}get releaseAll(){return kn(e=>es(this.releaseUnsafe(e,this.taken)))}withPermits(e){return t=>Uc(n=>{let r=is(()=>this.free<e?Vs(n(Wh(this,e,ps)),()=>r):(this.taken+=e,kc(n(t),()=>{this.releaseUnsafe(Vo(),e)},!0)));return r})}withPermit=this.withPermits(1);withPermitsIfAvailable(e){return t=>Uc(n=>this.free<e?ls:(this.taken+=e,kc(n(Is(t)),()=>{this.releaseUnsafe(Vo(),e)},!0)))}},Kh=e=>rs(()=>new Gh(e)),qh=`~effect/Channel`,Jh=e=>C(e,qh),Yh={[qh]:{_Env:S,_InErr:S,_InElem:S,_OutErr:S,_OutElem:S},pipe(){return b(this,arguments)}},Xh=e=>{let t=Object.create(Yh);return t.transform=(t,n)=>Wf(e(t,n),e=>T(kf(e))),t},Zh=(e,t)=>Xh((n,r)=>A(eg(e)(n,r),e=>t(e,r))),Qh=e=>Xh((t,n)=>e),$h=e=>Xh(M(function*(t,n){let r=ed(n),i=e=>td(r,tf(e));return bp(yield*bp(e(t,n,r),i),i)})),eg=e=>e.transform,tg=(e,t,n)=>lh({capacity:n?.bufferSize,strategy:n?.strategy}).pipe(If(t=>Qu(e,bh(t))),If(n=>Lp(Xu(t(n),e),e))),ng=(e,t)=>Xh((n,r)=>j(tg(r,e,t),Ch)),rg=e=>Xh((t,n)=>Ef(()=>eg(e())(t,n))),ig=e=>og(T(e)),ag=e=>Qh(kf(e)),og=e=>Qh(E(()=>{let t=!1;return Ef(()=>t?_u():(t=!0,e))})),sg=e=>Qh(T(Ch(e))),cg=x(2,(e,t)=>Zh(e,e=>E(()=>{let n=0;return j(e,e=>t(e,n++))}))),lg=x(2,(e,t)=>ug(e,e=>T(t(e)))),ug=x(2,(e,t)=>Zh(e,e=>T(Xd(e,e=>A(t(e),_u))))),dg=e=>e===void 0||e!==`unbounded`&&e<=1,fg=x(e=>Jh(e[0]),(e,t,n)=>dg(n?.concurrency)?pg(e,t):mg(e,t,n)),pg=(e,t)=>Xh((n,r)=>{let i=0;return j(eg(e)(n,r),A(e=>t(e,i++)))}),mg=(e,t,n)=>$h(M(function*(r,i,a){let o=0,s=yield*eg(e)(r,i),c=n.concurrency===`unbounded`?2**53-1:n.concurrency,l=yield*uh(0);yield*Qu(a,bh(l));let u=Vp(yield*sp()),d=vm(a);if(n.unordered){let e=Uh(c),n=ne(e.release(1)),r=ap({onFailure:e=>A(gh(l,e),n),onSuccess:e=>A(fh(l,e),n)});yield*e.take(1).pipe(A(()=>s),A(e=>(d(u(r(t(e,o++)))),D)),Op({disableYield:!0}),Wf(t=>e.withPermits(c-1)(gh(l,t))),Lp(a))}else{let e=yield*uh(c-2);yield*Qu(a,bh(e)),yield*Th(e).pipe(Ite,A(e=>fh(l,e)),Op({disableYield:!0}),Wf(e=>gh(l,e)),Lp(a));let n,r=e=>{e._tag!==`Success`&&(n=e.cause,_h(l,e.cause))};yield*s.pipe(A(i=>{if(n)return kf(n);let a=u(t(i,o++));return d(a),a.addObserver(r),fh(e,hm(a))}),Op({disableYield:!0}),Wf(t=>fh(e,Eu(t)).pipe(Ff(gh(e,t)))),Lp(a))}return Th(l)})),hg=e=>Zh(e,e=>{let t,n=0;return T(Ef(function r(){if(t===void 0)return A(e,e=>{switch(e.length){case 0:return r();case 1:return T(e[0]);default:return t=e,T(e[n++])}});let i=t[n++];return n>=t.length&&(t=void 0,n=0),T(i)}))}),gg=x(2,(e,t)=>Zh(e,e=>T(A(e,function n(r){let i=[];for(let e=0;e<r.length;e++)t(r[e])&&i.push(r[e]);return Oi(i)?T(i):A(e,n)})))),_g=x(2,(e,t)=>Zh(e,e=>{let n=A(e,e=>rp(e,t));return T(A(n,function e(t){return Oi(t)?T(t):A(n,e)}))})),vg=x(e=>Jh(e[0]),(e,t,n,r)=>Xh((i,a)=>j(eg(e)(i,a),e=>{let i=t(),a,o=0,s,c=ap(e,{onFailure(e){s=e;let t=r?.onHalt&&r.onHalt(i);return t&&t.length>0?T([i,t]):kf(e)},onSuccess(e){let t=n(i,e);return Ei(t)?T(t):t}});return Ef(function e(){if(a===void 0)return s?kf(s):A(c,([t,n])=>(i=t,n.length===0?e():n.length===1?T(n[0]):(a=n,e())));let t=a[o++];return o>=a.length&&(a=void 0,o=0),T(t)})}))),yg=x(2,(e,t)=>Xh((n,r)=>{let i=ed(r);return j(eg(e)(n,i),e=>{let a=e.pipe(Wf(e=>{if(Zd(e))return kf(e);let o=i;return i=ed(r),td(o,Eu(e)).pipe(Ff(eg(t(e))(n,i)),A(e=>(a=e,e)))}));return Ef(()=>a)})})),bg=x(3,(e,t,n)=>yg(e,e=>{let r=t(e);return pi(r)?ag(r.failure):n(r.success,e)})),xg=x(2,(e,t)=>bg(e,uu,e=>t(e))),Sg=e=>Xh((t,n)=>{let r;return T(Ef(()=>r||e.pipe(Xu(n),A(e=>eg(e)(t,n)),A(e=>r=e))))}),Cg=x(2,(e,t)=>Zh(e,e=>T(Xd(e,e=>A(t,()=>_u(e)))))),wg=(e,t,n)=>Ef(()=>{let r=Yu();return Xd(A(eg(e)(_u(),r),t),n||T).pipe(xp(e=>td(r,e)))}),Tg=x(2,(e,t)=>Xh((n,r)=>j(up(eg(e)(n,r),t),up(t)))),Eg=x(2,(e,t)=>wg(e,e=>Op(A(e,t),{disableYield:!0}))),Dg=e=>Ef(()=>{let t=Symbol(),n=t;return wg(e,e=>Op(A(e,e=>(n=e,D)),{disableYield:!0}),()=>n===t?Tf:Nte(n))}),Og=(e,t)=>eg(e)(_u(),t),kg=`~effect/Stream`,Ag={_R:S,_E:S,_A:S},jg=function(e){this.channel=e};jg.prototype={[kg]:Ag,pipe(){return b(this,arguments)}};var Mg=e=>new jg(e),Ng=`~effect/Sink`,Pg=T([void 0]),Fg={_A:S,_In:S,_L:S,_E:S,_R:S},Ig={[Ng]:Fg,pipe(){return b(this,arguments)}},Lg=e=>Rg((t,n)=>eg(e)(t,n).pipe(A(Op({disableYield:!0})),Xd(T))),Rg=e=>{let t=Object.create(Ig);return t.transform=e,t},zg=e=>Xh((t,n)=>T(A(e.transform(t,n),_u))),Bg=e=>Vg(Sf(t=>e(t),{discard:!0})),Vg=e=>Rg(t=>t.pipe(A(e),Op({disableYield:!0}),Xd(()=>Pg))),Hg=e=>Lg(Sg(j(e,zg))),Ug=globalThis.BigInt,Wg=e=>e>Ug(2**53-1)||e<Ug(-(2**53-1))?gr():_r(Number(e)),Gg=BigInt(0),Kg=BigInt(1),qg=BigInt(1e3),Jg=BigInt(1024),Yg=[{symbol:`B`,factor:Kg,names:[`B`,`byte`,`bytes`]},{symbol:`kB`,factor:qg,names:[`kB`,`kilobyte`,`kilobytes`]},{symbol:`MB`,factor:qg**BigInt(2),names:[`MB`,`megabyte`,`megabytes`]},{symbol:`GB`,factor:qg**BigInt(3),names:[`GB`,`gigabyte`,`gigabytes`]},{symbol:`TB`,factor:qg**BigInt(4),names:[`TB`,`terabyte`,`terabytes`]},{symbol:`PB`,factor:qg**BigInt(5),names:[`PB`,`petabyte`,`petabytes`]},{symbol:`EB`,factor:qg**BigInt(6),names:[`EB`,`exabyte`,`exabytes`]},{symbol:`ZB`,factor:qg**BigInt(7),names:[`ZB`,`zettabyte`,`zettabytes`]},{symbol:`YB`,factor:qg**BigInt(8),names:[`YB`,`yottabyte`,`yottabytes`]},{symbol:`RB`,factor:qg**BigInt(9),names:[`RB`,`ronnabyte`,`ronnabytes`]},{symbol:`QB`,factor:qg**BigInt(10),names:[`QB`,`quettabyte`,`quettabytes`]}],Xg=[Yg[0],{symbol:`KiB`,factor:Jg,names:[`KiB`,`kibibyte`,`kibibytes`]},{symbol:`MiB`,factor:Jg**BigInt(2),names:[`MiB`,`mebibyte`,`mebibytes`]},{symbol:`GiB`,factor:Jg**BigInt(3),names:[`GiB`,`gibibyte`,`gibibytes`]},{symbol:`TiB`,factor:Jg**BigInt(4),names:[`TiB`,`tebibyte`,`tebibytes`]},{symbol:`PiB`,factor:Jg**BigInt(5),names:[`PiB`,`pebibyte`,`pebibytes`]},{symbol:`EiB`,factor:Jg**BigInt(6),names:[`EiB`,`exbibyte`,`exbibytes`]},{symbol:`ZiB`,factor:Jg**BigInt(7),names:[`ZiB`,`zebibyte`,`zebibytes`]},{symbol:`YiB`,factor:Jg**BigInt(8),names:[`YiB`,`yobibyte`,`yobibytes`]}],Zg=[...Yg,...Xg.slice(1)],Qg=new Map(Zg.flatMap(e=>e.names.map(t=>[t,e]))),$g=e=>e,e_=e=>{throw Error(`Invalid ByteSize: ${e}`)},t_=e=>!Number.isSafeInteger(e)||e<0?e_(`expected a non-negative safe integer, received ${e}`):$g(BigInt(e)),n_=e=>{let t=/^\s*(\d+)(?:\.(\d+))?\s*([A-Za-z]+)\s*$/.exec(e);if(t===null)return e_(`unsupported syntax ${JSON.stringify(e)}`);let n=Qg.get(t[3]);if(n===void 0)return e_(`unsupported unit ${JSON.stringify(t[3])}`);let r=t[2]??``,i=BigInt(10)**BigInt(r.length),a=BigInt(t[1]+r)*n.factor;return a%i===Gg?$g(a/i):e_(`${JSON.stringify(e)} does not represent an integral number of bytes`)},r_=e=>{switch(typeof e){case`bigint`:return e<Gg?e_(`expected a non-negative bigint, received ${e}`):$g(e);case`number`:return t_(e);case`string`:return n_(e)}return e_(`unsupported input ${e}`)},i_=e=>typeof e==`bigint`?r_(e):t_(e),a_=`~effect/MutableHashMap`,o_={[a_]:a_,[Symbol.iterator](){return this.backing[Symbol.iterator]()},toString(){return`MutableHashMap(${xt(Array.from(this))})`},toJSON(){return{_id:`MutableHashMap`,values:At(Array.from(this))}},[kt](){return this.toJSON()},pipe(){return b(this,arguments)}},s_=()=>{let e=Object.create(o_);return e.backing=new Map,e.buckets=new Map,e},c_=x(2,(e,t)=>{if(e.backing.has(t))return _r(e.backing.get(t));if(u_(t))return gr();let n=l_.get(e);if(n!==void 0)return e.backing.has(n)?_r(e.backing.get(n)):gr();let r=Pe(t),i=e.buckets.get(r);return i===void 0?gr():d_(e,i,t)}),l_=new WeakMap,u_=e=>typeof e!=`object`&&typeof e!=`function`,d_=(e,t,n)=>{for(let r=0,i=t.length;r<i;r++)if(Qe(n,t[r])){let i=t[r];return l_.set(n,i),_r(e.backing.get(i))}return gr()},f_=x(3,(e,t,n)=>{if(e.backing.has(t)||u_(t))return e.backing.set(t,n),e;let r=l_.get(e);if(r!==void 0&&e.backing.has(r))return e.backing.set(r,n),e;let i=Pe(t),a=e.buckets.get(i);return a===void 0?(e.buckets.set(i,[t]),e.backing.set(t,n),e):(r=p_(a,t),r===void 0&&(a.push(t),r=t),e.backing.set(r,n),e)}),p_=(e,t)=>{for(let n=0,r=e.length;n<r;n++)if(Qe(t,e[n]))return l_.set(t,e[n]),e[n]},m_=x(2,(e,t)=>{if(u_(t))return e.backing.delete(t),e;let n=l_.get(e)??t,r=Pe(n),i=e.buckets.get(r);if(i===void 0)return e;for(let t=0,r=i.length;t<r;t++){let r=i[t];if(r===n||Qe(n,r)){e.backing.delete(r),i.splice(t,1);break}}return i.length===0&&e.buckets.delete(r),e}),h_=e=>(e.backing.clear(),e.buckets.clear(),e),g_=e=>e.backing.size,__=`~effect/RcMap`,v_=e=>({[__]:__,lookup:e.lookup,context:e.context,scope:e.scope,idleTimeToLive:e.idleTimeToLive,capacity:e.capacity,state:{_tag:`Open`,map:s_()},pipe(){return b(this,arguments)}}),y_=e=>Pf(t=>{let n=t.context,r=$r(n,qu),i=v_({lookup:e.lookup,context:n,scope:r,idleTimeToLive:typeof e.idleTimeToLive==`function`?le(e.idleTimeToLive,Ki):ne(Ki(e.idleTimeToLive??ia)),capacity:Math.max(e.capacity??1/0,0)});return Bf(Zu(r,()=>{if(i.state._tag===`Closed`)return D;let e=i.state.map;return i.state={_tag:`Closed`},Sf(e,([,e])=>zf(x_(e))).pipe(If(()=>E(()=>{h_(e)})))}),i)}),b_=x(2,(e,t)=>Ep(n=>{if(e.state._tag===`Closed`)return Sp;let r=e.state,i=_m(),a=c_(r.map,t),o;if(a._tag===`Some`)o=a.value,o.refCount++;else if(Number.isFinite(e.capacity)&&g_(e.state.map)>=e.capacity)return k(new yu(`RcMap attempted to exceed capacity of ${e.capacity}`));else{o={deferred:Lu(),scope:Yu(),idleTimeToLive:e.idleTimeToLive(t),finalizer:void 0,fiber:void 0,expiresAt:0,refCount:1},o.finalizer=S_(e,t,o),f_(r.map,t,o);let n=new Map(e.context.mapUnsafe);i.context.mapUnsafe.forEach((e,t)=>{n.set(t,e)}),n.set(qu.key,o.scope),Ef(()=>e.lookup(t)).pipe(Vp(Wr(n)),vm(o.scope)).addObserver(e=>Wu(o.deferred,e))}return Qu(Qr(i.context,qu),o.finalizer).pipe(Ff(n(zu(o.deferred))))})),x_=e=>e.fiber?gm(e.fiber).pipe(Ff(td(e.scope,Au))):td(e.scope,Au),S_=(e,t,n)=>Pf(r=>{if(n.refCount--,n.refCount>0)return D;if(e.state._tag===`Closed`)return x_(n);let i=c_(e.state.map,t);if(i._tag===`None`||i.value!==n)return x_(n);if(ta(n.idleTimeToLive))return m_(e.state.map,t),x_(n);if(!ea(n.idleTimeToLive))return D;let a=r.getRef(Md);return n.expiresAt=a.currentTimeMillisUnsafe()+ma(n.idleTimeToLive),n.fiber||=Dp(function r(i){let o=a.currentTimeMillisUnsafe(),s=n.expiresAt-o;if(s<=0){if(e.state._tag===`Closed`||n.refCount>0)return D;let r=c_(e.state.map,t);return r._tag===`None`||r.value!==n?D:(m_(e.state.map,t),i(td(n.scope,Au)))}return A(a.sleep(ca(s)),()=>r(i))}).pipe(yp(E(()=>{n.fiber=void 0})),Vp(r.context),vm(e.scope)),D}),C_=`~effect/Stream`,w_=e=>C(e,C_),T_=Mg,E_=e=>T_(og(j(e,Ai))),D_=e=>T_(Qh(e)),O_=e=>e.channel,k_=(e,t)=>T_(ng(e,t)),A_=e=>T_(ig(Ai(e))),j_=e=>T_(rg(()=>e().channel)),M_=e=>T_(ag(e)),N_=e=>T_(sg(e)),P_=e=>T_(Sg(j(e,O_))),F_=x(2,(e,t)=>j_(()=>{let n=0;return T_(cg(e.channel,ji(e=>t(e,n++))))})),I_=x(e=>w_(e[0]),(e,t,n)=>e.channel.pipe(hg,fg(t,n),cg(Ai),T_)),L_=x(2,(e,t)=>T_(gg(O_(e),t))),R_=x(2,(e,t)=>T_(_g(O_(e),t))),z_=x(2,(e,t)=>T_(xg(e.channel,e=>t(e).channel))),B_=x(e=>w_(e[0]),(e,t,n,r)=>T_(vg(e.channel,t,(e,t)=>{let r=ki();for(let i=0;i<t.length;i++){let[a,o]=n(e,t[i]);e=a,r.push(...o)}return[e,Di(r)?Ai(r):V_]},r?.onHalt?{onHalt(e){let t=r.onHalt(e);return Oi(t)?Ai(t):V_}}:void 0))),V_=ki(),H_=x(e=>w_(e[0]),(e,t,n,r)=>e.channel.pipe(hg,vg(t,(e,t)=>j(n(e,t),([e,t])=>[e,Oi(t)?Ai(t):ki()]),r?.onHalt?{onHalt(e){let t=r.onHalt(e);return Oi(t)?Ai(t):V_}}:void 0),T_)),U_=x(e=>w_(e[0]),(e,t)=>j_(()=>{let n=new TextDecoder(t?.encoding);return F_(e,e=>n.decode(e,{stream:!0}))})),W_=e=>j_(()=>{let t=new TextEncoder;return F_(e,e=>t.encode(e))}),G_=x(2,(e,t)=>T_(Cg(e.channel,t))),K_=x(2,(e,t)=>T_(Tg(e.channel,t))),q_=x(2,(e,t)=>gp(n=>Og(e.channel,n).pipe(A(e=>t.transform(e,n)),j(([e])=>e)))),J_=e=>j(Dg(e.channel),Dr(cee)),Y_=x(2,(e,t)=>Eg(e.channel,e=>{let n=0;return Cf({while:()=>n<e.length,body:()=>t(e[n++]),step:se})})),X_=x(2,(e,t)=>Eg(e.channel,t)),Z_=`~effect/Stdio`,Q_=jr(Z_),$_=e=>({[Z_]:Z_,stdinIsTerminal:T(!1),stdoutIsTerminal:T(!1),...e}),ev=e=>Lg(lg(tv(e),e=>[e])),tv=e=>Xh(t=>{let n=e.evaluate();return T(nv({...e,writable:n,pull:t}))}),nv=e=>e.pull.pipe(A(t=>{let n=0;return Df(r=>{let i=!1,a=()=>{for(;n<t.length;){if(i)return;if(!e.writable.write(t[n++],e.encoding)){i||e.writable.once(`drain`,a);return}}i||r(D)};return a(),E(()=>{i=!0,e.writable.off(`drain`,a)})})}),Op({disableYield:!0}),e.endOnDone===!1?S:Xd(t=>`closed`in e.writable&&e.writable.closed?_u(t):Df(n=>{let r=()=>n(_u(t));return e.writable.once(`finish`,r),e.writable.end(),E(()=>{e.writable.off(`finish`,r)})})),np(Df(t=>{let n=n=>t(k(e.onError(n)));return e.writable.once(`error`,n),E(()=>{e.writable.off(`error`,n)})}))),rv=e=>T_(iv(e)),iv=e=>Xh((t,n)=>av({scope:n,readable:e.evaluate(),onError:e.onError??ov,chunkSize:e.chunkSize,closeOnDone:e.closeOnDone})),av=e=>{let t=e.readable,n=e.closeOnDone??!0,r=e.exit??Sm(void 0),i=e.latch??ym(!1);function a(){i.openUnsafe()}function o(t){r.current=Du(e.onError(t)),i.openUnsafe()}function s(){r.current=Du(gu()),i.openUnsafe()}t.on(`readable`,a),t.once(`error`,o),t.once(`end`,s);let c=Ef(function n(){let a=e.readable.read(e.chunkSize);if(a===null)return r.current?r.current:t.readableEnded?k(gu()):(i.closeUnsafe(),A(i.await,n));let o=Ai(a);for(;a=e.readable.read(e.chunkSize),a!==null;)o.push(a);return T(o)});return Bf(Qu(e.scope,E(()=>{t.off(`readable`,a),t.off(`error`,o),t.off(`end`,s),n&&`closed`in e.readable&&!e.readable.closed&&e.readable.destroy()})),c)},ov=e=>new bu(e),sv=vd(Q_,$_({args:E(()=>process.argv.slice(2)),stdinIsTerminal:E(()=>process.stdin.isTTY===!0),stdoutIsTerminal:E(()=>process.stdout.isTTY===!0),stdout:e=>ev({evaluate:()=>process.stdout,onError:e=>fm({module:`Stdio`,method:`stdout`,_tag:`Unknown`,cause:e}),endOnDone:e?.endOnDone??!1}),stderr:e=>ev({evaluate:()=>process.stderr,onError:e=>fm({module:`Stdio`,method:`stderr`,_tag:`Unknown`,cause:e}),endOnDone:e?.endOnDone??!1}),stdin:rv({evaluate:()=>process.stdin,onError:e=>fm({module:`Stdio`,method:`stdin`,_tag:`Unknown`,cause:e}),closeOnDone:!1})})),cv=`~effect/BigDecimal`,lv={[cv]:cv,[Ne](){let e=_v(this);return Ie(Pe(e.value),ze(e.scale))},[Ze](e){return uv(e)&&Ev(this,e)},toString(){return`BigDecimal(${Dv(this)})`},toJSON(){return{_id:`BigDecimal`,value:String(this.value),scale:this.scale}},[kt](){return this.toJSON()},pipe(){return b(this,arguments)}},uv=e=>C(e,cv),dv=(e,t)=>{if(!Number.isSafeInteger(t))throw RangeError(`Scale must be a safe integer, got ${t}`);let n=Object.create(lv);return n.value=e,n.scale=t,n},fv=(e,t)=>{if(e!==pv&&e%hv===pv)throw RangeError(`Value must be normalized`);let n=dv(e,t);return n.normalized=n,n},pv=BigInt(0),mv=BigInt(1),hv=BigInt(10),gv=fv(pv,0),_v=e=>{if(e.normalized===void 0){if(e.value===pv)e.normalized=gv;else{let t=`${e.value}`,n=0;for(let e=t.length-1;e>=0&&t[e]===`0`;e--)n++;n===0&&(e.normalized=e),e.normalized=fv(BigInt(t.substring(0,t.length-n)),e.scale-n)}}return e.normalized},vv=100,yv=[mv],bv=(e,t)=>e===t?0:e<t?-1:1,xv=(e,t)=>{let n=`${e.value<pv?-e.value:e.value}`,r=`${t.value<pv?-t.value:t.value}`,i=BigInt(n.length-r.length)-BigInt(e.scale)+BigInt(t.scale);if(i!==pv)return i<pv?-1:1;let a=Math.max(n.length,r.length);for(let e=0;e<a;e++){let t=e<n.length?n.charCodeAt(e):48,i=e<r.length?r.charCodeAt(e):48;if(t!==i)return t<i?-1:1}return 0},Sv=(e,t)=>{if(e.scale===t.scale)return bv(e.value,t.value);let n=Cv(e),r=Cv(t);if(n!==r)return n<r?-1:1;if(n===0)return 0;let i=e.scale-t.scale,a=Math.abs(i);if(a>vv)return n===-1?xv(t,e):xv(e,t);let o=yv[a]??=hv**BigInt(a);return i>0?bv(e.value,t.value*o):bv(e.value*o,t.value)},Cv=e=>e.value===pv?0:e.value<pv?-1:1,wv=e=>e.value<pv?dv(-e.value,e.scale):e,Tv=Vn((e,t)=>Sv(e,t)===0),Ev=x(2,(e,t)=>Tv(e,t)),Dv=e=>{let t=_v(e);if(Math.abs(t.scale)>=16)return Ov(t);let n=t.value<pv,r=n?`${t.value}`.substring(1):`${t.value}`,i,a;if(t.scale>=r.length)i=`0`,a=`0`.repeat(t.scale-r.length)+r;else{let e=r.length-t.scale;if(e>r.length){let t=e-r.length;i=`${r}${`0`.repeat(t)}`,a=``}else a=r.slice(e),i=r.slice(0,e)}let o=a===``?i:`${i}.${a}`;return n?`-${o}`:o},Ov=e=>{if(kv(e))return`0e+0`;let t=_v(e),n=`${wv(t).value}`,r=n.slice(0,1),i=n.slice(1),a=`${Av(t)?`-`:``}${r}`;i!==``&&(a+=`.${i}`);let o=i.length-t.scale;return`${a}e${o>=0?`+`:``}${o}`},kv=e=>e.value===pv,Av=e=>e.value<pv;function jv(e){return e.checks?e.checks[e.checks.length-1].annotations:e.annotations}function Mv(e){return t=>jv(t)?.[e]}var Nv=`~structural`,Pv=`~identifier`,Fv=`~sentinels`,Iv=`~constructor`,Lv=[`title`,`description`,`default`,`examples`,`readOnly`,`writeOnly`,`format`,`contentEncoding`,`contentMediaType`,`contentSchema`],Rv=Mv(`identifier`),zv=Mv(Pv),Bv=Mv(`description`),Vv=ue(e=>{let t=jv(e)?.identifier;return typeof t==`string`?t:e.getExpected(Vv)}),Hv=new Set([Fv,Nv,`representation`,`arbitraryConstraint`,`brands`,`toJsonSchema`,`toCode`,`toEquivalence`,`toFormatter`,`toCodec`,`toCodecJson`,`toCodecStringTree`,`toCodecIso`,`toCodecArbitrary`]),Uv=Symbol(),Wv=Tu,Gv=Wv(Uv),Kv=Wv(Uv),qv=e=>e===Uv?gr():_r(e),Jv=e=>e._tag===`None`?Gv:Wv(e.value),Yv=`~effect/SchemaIssue/Issue`;function Xv(e){return C(e,Yv)&&e[Yv]===Yv}function Zv(e){return Object.hasOwn(e,`input`)}var Qv=class{[Yv]=Yv;constructor(e,t){t?.reportInput===!0&&e!==Uv&&(this.input=e)}},$v=class extends Qv{_tag=`Filter`;filter;issue;constructor(e,t,n,r){super(n,r),this.filter=e,this.issue=t}},zte=class extends Qv{_tag=`Encoding`;ast;issue;constructor(e,t,n,r){super(n,r),this.ast=e,this.issue=t}},ey=class extends Qv{_tag=`Pointer`;path;issue;constructor(e,t){super(),this.path=e,this.issue=t}},ty=class extends Qv{_tag=`MissingKey`;annotations;constructor(e){super(),this.annotations=e}},ny=class extends Qv{_tag=`UnexpectedKey`;ast;constructor(e,t,n){super(t,n),this.ast=e}},ry=class extends Qv{_tag=`Composite`;ast;issues;constructor(e,t,n,r){super(n,r),this.ast=e,this.issues=t}},iy=class extends Qv{_tag=`InvalidType`;ast;constructor(e,t,n){super(t,n),this.ast=e}},ay=class extends Qv{_tag=`InvalidValue`;annotations;constructor(e,t,n){super(t,n),this.annotations=e}};function oy(e,t,n,r,i){return new ry(e,[new ey([t],n)],r,i)}var sy=class extends Qv{_tag=`Forbidden`;annotations;constructor(e,t,n){super(t,n),this.annotations=e}},cy=class extends Qv{_tag=`AnyOf`;ast;issues;constructor(e,t,n,r){super(n,r),this.ast=e,this.issues=t}},Bte=class extends Qv{_tag=`OneOf`;ast;successes;constructor(e,t,n,r){super(n,r),this.ast=e,this.successes=t}};function ly(e,t,n){if(Xv(e))return e;if(typeof e==`string`)return new ay({message:e},t,n);let r=typeof e.issue==`string`?new ay({message:e.issue},t,n):e.issue;return new ey(e.path,r)}function Vte(e,t,n){if(e!==void 0)return typeof e==`boolean`?e?void 0:new ay(void 0,t,n):ly(e,t,n)}function Hte(e,t,n,r){return Array.isArray(t)?Oi(t)?t.length===1?ly(t[0],n,r):new ry(e,ji(t,e=>ly(e,n,r)),n,r):void 0:Vte(t,n,r)}var Ute=e=>{let t=gy(e);if(t!==void 0)return t;switch(e._tag){case`InvalidType`:return fy(Vv(e.ast),e);case`InvalidValue`:{let t=dy(e);if(t!==void 0)return fy(t,e);let n=uy(e);return n===void 0?`Expected a valid value`:`Invalid data ${n}`}case`MissingKey`:return`Missing key`;case`UnexpectedKey`:{let t=uy(e);return t===void 0?`Expected no excess property`:`Unexpected key with value ${t}`}case`Forbidden`:return`Forbidden operation`;case`OneOf`:{let t=uy(e);return t===void 0?`Expected exactly one member to match`:`Expected exactly one member to match the input ${t}`}}},Wte=e=>gy(e.issue)??gy(e);function uy(e){return Zv(e)?xt(e.input):void 0}function dy(e){let t=e.annotations?.expected;return typeof t==`string`?t:void 0}function fy(e,t){let n=uy(t);return n===void 0?`Expected ${e}`:`Expected ${e}, got ${n}`}function py(e){let t=e.annotations?.expected;if(typeof t==`string`)return t;switch(e._tag){case`Filter`:return`<filter>`;case`FilterGroup`:return e.checks.map(e=>py(e)).join(` & `)}}function Gte(){return e=>hy(e,``)}var my=Gte();function hy(e,t){let n;switch(e._tag){case`Filter`:{let r=Wte(e);if(r!==void 0)n=r;else{if(e.issue._tag!==`InvalidValue`)return hy(e.issue,t);let r=dy(e.issue);n=r===void 0?fy(py(e.filter),e):fy(r,e.issue)}break}case`Encoding`:return hy(e.issue,t);case`Pointer`:return hy(e.issue,t+wt(e.path));case`Composite`:case`AnyOf`:if(e._tag===`Composite`||e.issues.length>0)return e.issues.map(e=>hy(e,t)).join(`
15
+ `);n=gy(e)??fy(Vv(e.ast),e);break;default:n=Ute(e)}return t?`${n}\n at ${t}`:n}function gy(e){if(e._tag===`Pointer`)return;if(e._tag===`Encoding`)return gy(e.issue);let t=(e._tag===`Filter`?e.filter.annotations:`annotations`in e?e.annotations:e.ast.annotations)?.[e._tag===`MissingKey`?`messageMissingKey`:e._tag===`UnexpectedKey`?`messageUnexpectedKey`:`message`];if(typeof t==`string`)return t}function _y(e){let t;for(let n of e.reasons){if(!$l(n)||!Xv(n.error))return;t??=n.error}return t}function vy(e,t){let n=_y(e);if(n===void 0)throw Error(t,{cause:e});return n}var Kte=zd,qte=Bd,Jte=Ud,Yte=Gd,Xte=Kd;jr()(`effect/DateTime/CurrentTimeZone`);var Zte=Yd,yy=e=>Object.assign(Object.create(ee),e);function Qte(e){return Ty((t,n)=>k(e(t,n)))}function by(e){return Qte((t,n)=>{let r={message:e(t)};return br(t)?new sy(r,t.value,n):new sy(r)})}var $te=by(()=>`Encoding is not supported`),ene=yy({_tag:`Passthrough`});function xy(){return ene}function Sy(e){return yy({_tag:`Transform`,transform:e})}function Cy(e){return yy({_tag:`TransformEffect`,transform:e})}function wy(e){return yy({_tag:`TransformOptional`,transform:e})}function Ty(e){return yy({_tag:`TransformOptionalEffect`,transform:e})}function tne(){return wy(()=>gr())}function Ey(e){return Ty(t=>{let n=kr(t,Se);return br(n)?T(n):Xp(e,_r)})}function Dy(){return Sy(globalThis.String)}function Oy(){return Sy(globalThis.Number)}function nne(){return Sy(globalThis.BigInt)}function rne(e){return Cy((t,n)=>Mf({try:()=>JSON.parse(t,e?.reviver),catch:()=>new ay({expected:`a valid JSON string`},t,n)}))}function ine(e){return Cy((t,n)=>Mf({try:()=>{let n=JSON.stringify(t,e?.replacer,e?.space);if(n===void 0)throw TypeError(`Value cannot be represented as JSON`);return n},catch:()=>new ay({expected:`a JSON-serializable value`},t,n)}))}function ane(){return Sy(ja)}function one(){return Cy((e,t)=>Zp(Pte(Ma(e)),()=>new ay({expected:`a valid Base64 string`},e,t)))}var sne=class extends te{_tag=`Middleware`;decode;encode;constructor(e,t){super(),this.decode=e,this.encode=t}flip(){return new sne(this.encode,this.decode)}},ky=`~effect/SchemaTransformation/Transformation`,Ay=class extends te{[ky]=ky;_tag=`Transformation`;decode;encode;constructor(e,t){super(),this.decode=e,this.encode=t}flip(){return new Ay(this.encode,this.decode)}};function cne(e){return C(e,ky)&&e[ky]===ky}var jy=e=>cne(e)?e:new Ay(e.decode,e.encode);function lne(e){return new Ay(Cy(e.decode),Cy(e.encode))}function My(e){return new Ay(Sy(e.decode),Sy(e.encode))}var une=new Ay(xy(),xy());function Ny(){return une}var Py=new Ay(Oy(),Dy()),dne=new Ay(nne(),Dy()),fne=e=>De(e)&&typeof e.message==`string`,pne=e=>{let t=Object.hasOwn(e,`cause`)?Error(e.message,{cause:Fy(e.cause)}):Error(e.message);return typeof e.name==`string`&&e.name!==`Error`&&(t.name=e.name),typeof e.stack==`string`&&(t.stack=e.stack),t},mne=e=>{try{let t=Ot(e);return t===void 0?xt(e):JSON.parse(t)}catch{return xt(e)}},hne=(e,t,n)=>{let r={name:e.name,message:typeof e.message==`string`?e.message:``};return t?.includeStack&&typeof e.stack==`string`&&(r.stack=e.stack),!t?.excludeCause&&e.cause!==void 0&&(r.cause=n(e.cause)),r},gne=e=>{let t=new WeakSet,n=r=>{if(je(r)){if(t.has(r))return`[Circular]`;t.add(r);let i=hne(r,e,n);return t.delete(r),i}return mne(r)};return n},Fy=e=>fne(e)?pne(e):e,_ne=e=>My({decode:Fy,encode:gne(e)}),Iy=new Ay(one(),ane());function vne(e){return new Ay(rne(e??{}),ine(e))}function Ly(e){return t=>t._tag===e}var Ry=Ly(`Declaration`),yne=Ly(`Never`),zy=Ly(`Literal`),By=Ly(`UniqueSymbol`),bne=Ly(`Arrays`),xne=Ly(`Objects`),Sne=Ly(`Suspend`),Vy=class{to;transformation;constructor(e,t){this.to=e,this.transformation=t}},Hy={},Uy=class{isOptional;isMutable;constructorDefault;annotations;constructor(e,t,n=void 0,r=void 0){this.isOptional=e,this.isMutable=t,this.constructorDefault=n,this.annotations=r}},Wy=`~effect/Schema`,Gy=class{[Wy]=Wy;annotations;checks;encoding;context;constructor(e=void 0,t=void 0,n=void 0,r=void 0){this.annotations=e,this.checks=t,this.encoding=n,this.context=r}toString(){return`<${this._tag}>`}},Ky=class extends Gy{_tag=`Declaration`;typeParameters;run;encodingChecks;encodingRun;constructor(e,t,n,r,i,a,o,s){super(n,r,i,a),this.typeParameters=e,this.run=t,this.encodingChecks=o,this.encodingRun=s}getParser(){let e;return(t,n)=>t===Uv?Gv:(e??=this.run(this.typeParameters))(t,this,n)}_rebuild(e,t,n,r,i){let a=Zb(this.typeParameters,e);return a===this.typeParameters&&t===this.checks&&n===this.encodingChecks&&r===this.run&&i===this.encodingRun?this:new Ky(a,r,this.annotations,t,void 0,this.context,n,i)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks,this.run,this.encodingRun)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks,this.encodingRun??this.run,this.run)}getExpected(){let e=this.annotations?.expected;return typeof e==`string`?e:`<Declaration>`}},qy=new class extends Gy{_tag=`Null`;getParser(){return sx(this,null)}getExpected(){return`null`}},Cne=class extends Gy{_tag=`Undefined`;getParser(){return sx(this,void 0)}toCodecJson(){return Vb(this,[Jy])}getExpected(){return`undefined`}},Jy=new Vy(qy,new Ay(Sy(()=>void 0),Sy(()=>null))),Yy=new Cne,wne=new class extends Gy{_tag=`Void`;getParser(){let e=Wv(void 0);return t=>t===Uv?Gv:e}toCodecJson(){return Vb(this,[Jy])}getExpected(){return`void`}},Tne=new class extends Gy{_tag=`Never`;getParser(){return cx(this,Te)}getExpected(){return`never`}},Ene=new class extends Gy{_tag=`Any`;getParser(){return cx(this,Ee)}getExpected(){return`any`}},Xy=new class extends Gy{_tag=`Unknown`;getParser(){return cx(this,Ee)}getExpected(){return`unknown`}};function Zy(e){return typeof e==`number`?`parts[${e}]`:e}function Qy(e,t,n){if(n.has(e))return!0;if(e.encoding)throw Error(`TemplateLiteral parts cannot have an encoding at ${Zy(t)}`);let r;switch(e._tag){case`String`:case`Number`:case`BigInt`:r=!0;break;case`Literal`:r=!e.checks;break;case`TemplateLiteral`:{let i=Zy(t);r=!e.checks&&e.parts.every((e,t)=>Qy(e,`${i}.parts[${t}]`,n));break}case`Union`:{let i=Zy(t);r=!e.checks&&e.types.every((e,t)=>Qy(e,`${i}.types[${t}]`,n));break}default:return!1}return r&&n.add(e),r}var Dne=class extends Gy{_tag=`TemplateLiteral`;parts;encodedParts;literals;suffixLengths;constructor(e,t,n,r,i){super(t,n,r,i);let a=[],o=[],s=new Set;for(let t=0;t<e.length;t++){let n=e[t];if(!Qy(n,t,s))throw Error(`Invalid TemplateLiteral part ${n._tag}`);a.push(n),o.push(n._tag===`Literal`?globalThis.String(n.literal):void 0)}let c=Array(a.length+1);c[a.length]=0;for(let e=a.length-1;e>=0;e--)c[e]=c[e+1]+(o[e]?.length??0);this.parts=e,this.encodedParts=a,this.literals=o,this.suffixLengths=c}getParser(e){let t=e(ex(tb,new ib(!1,this.parts.map(fx),[]),One(this)));return(e,n)=>{if(e===Uv)return Gv;let r=t(e,n);return r._tag===`Success`?Kv:Qp(r,{onSuccess:()=>e,onFailure:t=>new ry(this,[t],e,n)})}}getExpected(){return`string`}matchPart(e,t){return lx(this,e,t)===void 0?void 0:e}};function One(e){return new Ay(Cy((t,n)=>{let r=lx(e,t,n);return r?T(r):k(new ay({expected:`a string matching template literal parts`},t,n))}),Sy(e=>e.join(``)))}var $y=class extends Gy{_tag=`Literal`;literal;constructor(e,t,n,r,i){if(super(t,n,r,i),typeof e==`number`&&!globalThis.Number.isFinite(e))throw Error(`A numeric literal must be finite, got ${xt(e)}`);this.literal=e}getParser(){return sx(this,this.literal)}matchPart(e,t){return e===globalThis.String(this.literal)?this.literal:void 0}toCodecJson(){return typeof this.literal==`bigint`?eb(this):this}toCodecStringTree(){return typeof this.literal==`string`?this:eb(this)}getExpected(){return typeof this.literal==`string`?JSON.stringify(this.literal):globalThis.String(this.literal)}};function eb(e){let t=globalThis.String(e.literal);return Vb(e,[new Vy(new $y(t),new Ay(Sy(()=>e.literal),Sy(()=>t)))])}var tb=new class extends Gy{_tag=`String`;getParser(){return cx(this,me)}matchPart(e,t){let n=this.checks;return n&&!t.disableChecks&&gx(n,e,void 0,this,t)?void 0:e}getExpected(){return`string`}},kne=class extends Gy{_tag=`Number`;getParser(){return cx(this,he)}matchKey(e,t){return this._match(nre,e,t)}matchPart(e,t){return this._match(px,e,t)}_match(e,t,n){if(!e.test(t))return;let r=globalThis.Number(t);return n.disableChecks||!this.checks?r:gx(this.checks,r,void 0,this,n)?void 0:r}toCodecJson(){return this.checks&&(nb(this.checks,`effect/schema/isFinite`)||nb(this.checks,`effect/schema/isInt`))?this:Vb(this,[Wne])}toCodecStringTree(){return this.toCodecJson()===this?Vb(this,[ire]):Vb(this,[are])}getExpected(){return`number`}};function nb(e,t){return e.some(e=>e.annotations?.representation?.id===t||e._tag===`FilterGroup`&&nb(e.checks,t))}var rb=new kne,Ane=new class extends Gy{_tag=`Boolean`;getParser(){return cx(this,ge)}getExpected(){return`boolean`}},jne=new class extends Gy{_tag=`BigInt`;getParser(){return cx(this,_e)}matchPart(e,t){if(!hx.test(e))return;let n=globalThis.BigInt(e);return t.disableChecks||!this.checks?n:gx(this.checks,n,void 0,this,t)?void 0:n}toCodecStringTree(){return Vb(this,[sre])}getExpected(){return`bigint`}},ib=class extends Gy{_tag=`Arrays`;isMutable;elements;rest;encodingChecks;constructor(e,t,n,r,i,a,o,s){super(r,i,a,o),this.isMutable=e,this.elements=t,this.rest=n,this.encodingChecks=s;let c=!1;for(let e=0;e<t.length;e++)if(tx(t[e]))c=!0;else if(c)throw Error(`A required element cannot follow an optional element. ts(1257)`);if(c&&n.length>1)throw Error(`A required element cannot follow an optional element. ts(1257)`);for(let e=1;e<n.length;e++)if(tx(n[e]))throw Error(`An optional element cannot follow a rest element. ts(1266)`)}getParser(e,t=e){let n=this,r,i,a=n.elements.length,o=Math.max(0,n.rest.length-1);function s(e,t){return t<a?r[t]:t>=e?i[t-e+1]:i[0]}return em(function*(e,c){if(e===Uv)return Uv;if(!Array.isArray(e))return yield*k(new iy(n,e,c));r||(r=n.elements.map(e=>({ast:e,parser:t(e)})),i=n.rest.map(e=>({ast:e,parser:t(e)})));let l=e.length,u={ast:n,getParser:s,input:e,len:l,tailThreshold:Math.max(a,l-o),output:new globalThis.Array(l),issues:void 0,options:c},d=n.rest.length===0?a:Math.max(l,a+o),f=c.concurrency===void 0?1:Yc(c.concurrency),p=f===1?Nne(u,e,0,d):Pne(u,e,{concurrency:f,end:d});if(p&&(yield*p),n.rest.length===0&&l>a)for(let t=a;t<=l-1;t++){let r=new ny(n,e[t],c),i=new ey([t],r);if(c.errors===`all`)u.issues?u.issues.push(i):u.issues=[i];else return yield*k(new ry(n,[i],e,c))}return u.issues?yield*k(new ry(n,u.issues,e,c)):u.output})}_rebuild(e,t,n){let r=Zb(this.elements,e),i=Zb(this.rest,e);return r===this.elements&&i===this.rest&&t===this.checks&&n===this.encodingChecks?this:new ib(this.isMutable,r,i,this.annotations,t,void 0,this.context,n)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks)}getExpected(){return`array`}};function Mne(e,t,n,r){if(n._tag===`Failure`)return ob(e,e.ast,r,n);let i=n===Kv?t:n[Wt];if(i!==Uv)e.output[r]=i;else{let t=e.getParser(e.tailThreshold,r);if(tx(t.ast))return;let n=new ey([r],new ty(t.ast.context?.annotations));if(e.options.errors===`all`)e.issues?e.issues.push(n):e.issues=[n];else return Du(new ry(e.ast,[n],e.input,e.options))}}var ab={onItem(e,t,n){let r=n<e.len?t:Uv;return e.getParser(e.tailThreshold,n).parser(r,e.options)},step:Mne},Nne=Xc()(ab),Pne=Qc()(ab),ob=(e,t,n,r)=>{if(r.cause.reasons.length===0)return r;let i=_y(r.cause);if(i===void 0)return Eu(su(r.cause,r=>new ry(t,[new ey([n],r)],e.input,e.options)));let a=new ey([n],i);if(e.options.errors===`all`)e.issues?e.issues.push(a):e.issues=[a];else return Du(new ry(t,[a],e.input,e.options))},sb=`[+-]?\\d*\\.?\\d+(?:[Ee][+-]?\\d+)?`;function cb(e,t,n=Hy){let r,i;function a(t){switch(t._tag){case`String`:case`TemplateLiteral`:return(r??=Object.keys(e)).filter(e=>t.matchPart(e,n)!==void 0);case`Number`:return(r??=Object.keys(e)).filter(e=>t.matchKey(e,n)!==void 0);case`Symbol`:return(i??=Object.getOwnPropertySymbols(e)).filter(e=>t.matchKey(e,n)!==void 0);case`Union`:return[...new Set(t.types.flatMap(a))];default:return[]}}return a(ux(ix(t)))}var lb=class{name;type;constructor(e,t){this.name=e,this.type=t}};function ub(e){switch(e._tag){case`String`:case`Number`:case`Symbol`:case`TemplateLiteral`:return!0;case`Union`:return e.types.every(ub);default:return!1}}function db(e){let t=Ub(e);switch(t._tag){case`String`:case`Number`:case`Symbol`:case`TemplateLiteral`:return!0;case`Union`:return t.types.every(db);default:return!1}}function Fne(e){return ub(e)&&db(e)}var fb=class{parameter;type;constructor(e,t){if(!Fne(e))throw Error(`Invalid index signature parameter ${e._tag}`);if(this.parameter=e,this.type=t,tx(t)&&!ox(t))throw Error("Cannot use `Schema.optionalKey` with index signatures, use `Schema.optional` instead.")}},pb=class extends Gy{_tag=`Objects`;propertySignatures;indexSignatures;encodingChecks;constructor(e,t,n,r,i,a,o){super(n,r,i,a),this.propertySignatures=e,this.indexSignatures=t,this.encodingChecks=o;let s=new Set,c=[];for(let t of e){let e=t.name;s.has(e)?c.push(e):s.add(e)}if(c.length>0)throw Error(`Duplicate identifiers: ${JSON.stringify(c)}. ts(2300)`)}getParser(e,t=e){let n=this,r=[];for(let e of n.propertySignatures)r.push(typeof e.name==`number`?globalThis.String(e.name):e.name);let i=r.length,a=n.indexSignatures.length,o=i&&a?new Set(r):void 0;if(!i&&!a)return cx(n,we);let s,c,l=(e,t,r,a,s)=>{if(s._tag===`Failure`)return ob(e,n,t,s)??Au;let c=s===Kv?a:s[Wt];if(r!==Uv&&c!==Uv){if(i&&(o.has(t)||o.has(typeof r==`number`?globalThis.String(r):r)))return Au;Rt(e.out,r,c)}return Au},u=(e,t,r,i)=>{if(!i){let n=r.parserKey(t,e.options);if(!Hs(n))return A(zf(n),n=>u(e,t,r,n));i=n}if(i._tag===`Failure`)return ob(e,n,t,i)??Au;let a=i===Kv?t:i[Wt],o=e.input[t],s=r.parserValue(o,e.options);return Hs(s)?l(e,t,a,o,s):A(zf(s),n=>l(e,t,a,o,n))},d=(e,t,n)=>{let r=e.input[t],i=n.parserValue(r,e.options);return Hs(i)?l(e,t,t,r,i):A(zf(i),n=>l(e,t,t,r,n))},f=a?Qc()({onItem:(e,[t,n])=>n.is.parameter===tb?d(e,t,n):u(e,t,n),step:(e,t,n)=>n._tag===`Failure`?n:void 0}):void 0,p=()=>(s||(s=n.propertySignatures.map(e=>({parser:t(e.type),name:e.name,type:e.type})),c=a?n.indexSignatures.map(n=>({is:n,parserKey:e(ux(n.parameter)),parserValue:t(n.type)})):void 0),s),m=em(function*(e,t){if(e===Uv)return Uv;if(!(typeof e==`object`&&e&&!Array.isArray(e)))return yield*k(new iy(n,e,t));p();let l=e,m={},h={ast:n,input:l,out:m,issues:void 0,options:t},g=t.errors===`all`,_=t.onExcessProperty===`error`,v=t.concurrency===void 0?1:Yc(t.concurrency),y=a&&_?n.indexSignatures.map(e=>cb(l,e.parameter,t)):void 0;if(_){o??=new Set(r);let i=y?new Set(o):o;if(y)for(let e of y)for(let t of e)i.add(t);let a=Reflect.ownKeys(l);for(let r=0;r<a.length;r++){let o=a[r];if(!i.has(o)){let r=new ny(n,l[o],t),i=new ey([o],r);if(g){h.issues?h.issues.push(i):h.issues=[i];continue}return yield*k(new ry(n,[i],e,t))}}}if(i){let e=v===1?gb(h,s):Ine(h,s,{concurrency:v});e&&(yield*e)}if(a&&v===1)for(let e=0;e<a;e++){let n=c[e],r=n.is.parameter===tb?d:u,i=y?.[e]??(n.is.parameter===tb?Object.keys(l):cb(l,n.is.parameter,t));for(let e=0;e<i.length;e++){let t=r(h,i[e],n);if(!Hs(t))yield*t;else if(t._tag===`Failure`)return yield*t}}else if(f){let e=ki();for(let n=0;n<a;n++){let r=c[n],i=y?.[n]??(r.is.parameter===tb?Object.keys(l):cb(l,r.is.parameter,t));for(let t=0;t<i.length;t++)e.push([i[t],r])}let n=f(h,e,{concurrency:v});n&&(yield*n)}return h.issues?yield*k(new ry(n,h.issues,e,t)):m});if(a)return m;let h=(e,t,n)=>{let r=s[t];return A(zf(n),n=>{let i=mb(e,r,n);if(i)return i;let a=()=>Wv(e.out),o=gb(e,s.slice(t+1));return o?$p(o,a):a()})};return(e,t)=>{if(e===Uv)return Gv;if(t.errors===`all`||t.onExcessProperty!==void 0||t.concurrency!==void 0&&Yc(t.concurrency)!==1)return m(e,t);if(!(typeof e==`object`&&e&&!Array.isArray(e)))return k(new iy(n,e,t));let r=p(),i=e,a={},o={ast:n,input:i,out:a,issues:void 0,options:t};try{for(let e=0;e<r.length;e++){let n=r[e],s=n.name,c=Db(i,s),l=c?i[s]:Uv,u=n.parser(l,t);if(!Hs(u))return h(o,e,u);if(u===Kv){c&&Rt(a,s,l);continue}let d=mb(o,n,u);if(d)return d}}catch(e){return jf(e)}return Wv(a)}}_rebuild(e,t,n,r){let i=Zb(this.propertySignatures,t=>{let n=e(t.type);return n===t.type?t:new lb(t.name,n)}),a=Zb(this.indexSignatures,n=>{let r=t(n.parameter),i=e(n.type);return r===n.parameter&&i===n.type?n:new fb(r,i)});return i===this.propertySignatures&&a===this.indexSignatures&&n===this.checks&&r===this.encodingChecks?this:new pb(i,a,this.annotations,n,void 0,this.context,r)}flip(e){return this._rebuild(e,e,this.encodingChecks,this.checks)}recur(e,t=e){return this._rebuild(e,t,this.checks,this.encodingChecks)}getExpected(){return this.propertySignatures.length===0&&this.indexSignatures.length===0?`object | array`:`object`}};function mb(e,t,n){if(n._tag===`Failure`)return ob(e,e.ast,t.name,n);if(n===Kv)return;let r=n[Wt];if(r!==Uv){Rt(e.out,t.name,r);return}if(delete e.out[t.name],!tx(t.type)){let n=new ey([t.name],new ty(t.type.context?.annotations));if(e.options.errors===`all`){e.issues?e.issues.push(n):e.issues=[n];return}return Du(new ry(e.ast,[n],e.input,e.options))}}var hb={onItem(e,t){if(!Db(e.input,t.name))return t.parser(Uv,e.options);let n=e.input[t.name];return Rt(e.out,t.name,n),t.parser(n,e.options)},step:mb},gb=Xc()(hb),Ine=Qc()(hb);function _b(e,t){return e?t?[...e,...t]:e:t}function vb(e,t,n){return new pb(Reflect.ownKeys(e).map(t=>new lb(t,e[t].ast)),[],n,t)}function yb(e){return e.ast}function bb(e,t=void 0){return new ib(!1,e.map(e=>e.ast),[],void 0,t)}function xb(e,t,n){return new Ob(e.map(yb),t,void 0,n)}function Lne(e,t){if(e.encoding||t.some(e=>e.encoding))throw Error(`StructWithRest does not support encodings`);let n=e.propertySignatures,r=e.indexSignatures,i=e.checks;for(let e of t)n=n.concat(e.propertySignatures),r=r.concat(e.indexSignatures),i=_b(i,e.checks);return new pb(n,r,void 0,i)}function Rne(e){if(e.encoding)throw Error(`mutable does not support encodings`);return new ib(!0,e.elements,e.rest,e.annotations,e.checks,void 0,e.context,e.encodingChecks)}var Sb=de(e=>{for(;;){if(Sne(e))return Xy;let t=e.encoding;if(!t)return e.recur?.(Sb,S)??e;if(t.some(e=>e.transformation._tag===`Middleware`&&e.transformation.decode!==S))return Xy;e=t[t.length-1].to}});function Cb(e){switch(e._tag){case`Null`:return[`null`];case`Undefined`:return[`undefined`];case`String`:case`TemplateLiteral`:return[`string`];case`Number`:return[`number`];case`Boolean`:return[`boolean`];case`Symbol`:case`UniqueSymbol`:return[`symbol`];case`BigInt`:return[`bigint`];case`Arrays`:return[`array`];case`ObjectKeyword`:return[`object`,`array`,`function`];case`Objects`:return e.propertySignatures.length||e.indexSignatures.length?[`object`]:[`string`,`number`,`boolean`,`symbol`,`bigint`,`object`,`array`,`function`];case`Enum`:return Array.from(new Set(e.enums.map(([,e])=>typeof e)));case`Literal`:return[typeof e.literal];case`Union`:return Array.from(new Set(e.types.flatMap(Cb)));default:return[`null`,`undefined`,`string`,`number`,`boolean`,`symbol`,`bigint`,`object`,`array`,`function`]}}function wb(e){switch(e._tag){default:return[];case`Declaration`:{let t=e.annotations?.[Fv];return Array.isArray(t)?t:[]}case`Objects`:return e.propertySignatures.flatMap(e=>{let t=e.type;if(!tx(t)){if(zy(t))return[{key:e.name,literal:t.literal}];if(By(t))return[{key:e.name,literal:t.symbol}]}return[]});case`Arrays`:return e.elements.flatMap((e,t)=>{if(!tx(e)){if(zy(e))return[{key:t,literal:e.literal}];if(By(e))return[{key:t,literal:e.symbol}]}return[]});case`Union`:{if(e.types.length===0)return[];let t=e.types.map(e=>wb(Sb(e)));return t[0].filter(e=>t.every(t=>t.some(t=>t.key===e.key&&t.literal===e.literal)))}case`Suspend`:return wb(e.thunk())}}var Tb=new WeakMap,Eb=Object.freeze([]),Db=(e,t)=>t===`__proto__`?Object.hasOwn(e,t):t in e;function zne(e){let t=Tb.get(e);if(t)return t;let n,r=0,i,a,o=!0;for(let t=0;t<e.length;t++){let s=e[t],c=Sb(s);if(yne(c))continue;if(o){if(zy(c)||By(c)){a??=new Map;let e=zy(c)?c.literal:c.symbol,t=a.get(e);t||a.set(e,t=[]),t.push(s)}else o=!1}let l=wb(c);if(l.length){n??=new Map,r++;for(let{key:e,literal:r}of l){let i=n.get(e);i||n.set(e,i=[new Map,new Set]),i[1].add(t);let a=i[0].get(r);a||i[0].set(r,a=new Set),a.add(t)}}else{i??={};let e=Cb(c);for(let n of e)(i[n]??=[]).push(t)}}if(o&&a)a.forEach(Object.freeze),t=e=>a.get(e)??Eb;else if(n?.size===1&&!i){let[r,[i]]=n.entries().next().value,a=i;for(let[t,n]of i)a.set(t,Object.freeze(Array.from(n,t=>e[t])));t=(t,n)=>{if(ke(t)){let i=Db(t,r)?t[r]:void 0;if(i!==void 0)return a.get(i)??Eb;if(n)return e}return Eb}}else if(n){let a;for(let e of n)(!a||e[1][0].size>a[1][0].size)&&e[1][1].size===r&&(a=e);t=(t,r)=>{let o=i?.[t===null?`null`:Array.isArray(t)?`array`:typeof t]??Eb;if(!ke(t))return o.map(t=>e[t]);let s=new Set(o),c;if(a){let[n,[i]]=a,l=Db(t,n),u=l?t[n]:void 0;if(l&&(!r||u!==void 0)){let t=i.get(u);if(!t)return o.map(t=>e[t]);for(let e of t)s.add(e);c=n}}if(c===void 0)for(let[e,[i,a]]of n){let n=Db(t,e),o=n?t[e]:void 0;if(n&&(!r||o!==void 0)){let e=i.get(o);if(e)for(let t of e)s.add(t)}else if(r)for(let e of a)s.add(e)}for(let[e,[i,a]]of n){if(e===c)continue;let n=Db(t,e),o=n?t[e]:void 0;if(n&&(!r||o!==void 0)){let e=i.get(o);for(let t of s)a.has(t)&&!e?.has(t)&&s.delete(t)}}return Array.from(s).sort((e,t)=>e-t).map(t=>e[t])}}else t=t=>(i?.[t===null?`null`:Array.isArray(t)?`array`:typeof t]??Eb).map(t=>e[t]).filter(Bne(t));return Tb.set(e,t),t}function Bne(e){return t=>{let n=Sb(t);return n._tag===`Literal`?n.literal===e:n._tag!==`UniqueSymbol`||n.symbol===e}}function Vne(e,t,n=!1){return zne(t)(e,n)}var Ob=class extends Gy{_tag=`Union`;types;options;encodingChecks;constructor(e,t,n,r,i,a,o){super(n,r,i,a),this.types=e,this.options=t,this.encodingChecks=o}getParser(e,t){let n=this;return(r,i)=>{if(r===Uv)return Gv;let a=Vne(r,n.types,t!==void 0);if(a.length===0)return k(new cy(n,[],r,i));if(a.length===1){let t=e(a[0])(r,i);return t._tag===`Success`?t:Hs(t)?kb(n,t.cause,r,i):Wf(t,e=>kb(n,e,r,i))}let o={ast:n,compile:e,input:r,out:void 0,successes:n.options?.mode===`oneOf`?[]:void 0,issues:void 0,options:i},s=Hne(o,a);return s?$p(s,e=>o.out===Kv?T(r):o.out?o.out:k(new cy(n,o.issues??[],r,i))):o.out?o.out:k(new cy(n,o.issues??[],r,i))}}_rebuild(e,t,n){let r=Zb(this.types,e);return r===this.types&&t===this.checks&&n===this.encodingChecks?this:new Ob(r,this.options,this.annotations,t,void 0,this.context,n)}recur(e){return this._rebuild(e,this.checks,this.encodingChecks)}flip(e){return this._rebuild(e,this.encodingChecks,this.checks)}matchPart(e,t){for(let n of this.types){let r=n.matchPart(e,t);if(r!==void 0)return r}}getExpected(e){let t=this.annotations?.expected;if(typeof t==`string`)return t;if(this.types.length===0)return`never`;let n=this.types.map(t=>{let n=ix(t);switch(n._tag){case`Arrays`:{let t=n.elements.filter(zy);if(t.length>0)return`${jb(n.isMutable)}[ ${t.map(t=>e(t)+Mb(t.context?.isOptional)).join(`, `)}, ... ]`;break}case`Objects`:{let t=n.propertySignatures.filter(e=>zy(e.type));if(t.length>0)return`{ ${t.map(t=>`${jb(t.type.context?.isMutable)}${Ct(t.name)}${Mb(t.type.context?.isOptional)}: ${e(t.type)}`).join(`, `)}, ... }`;break}}return e(n)});return Array.from(new Set(n)).join(` | `)}};function kb(e,t,n,r){let i=_y(t);return i?Du(new cy(e,[i],n,r)):Eu(t)}var Hne=Xc()({onItem(e,t){return e.compile(t)(e.input,e.options)},step(e,t,n){if(n._tag===`Failure`){let t=_y(n.cause);if(t===void 0)return n;e.issues?e.issues.push(t):e.issues=[t]}else{if(e.out&&e.successes)return e.successes.push(t),Du(new Bte(e.ast,e.successes,e.input,e.options));if(e.out=n,e.successes)e.successes.push(t);else return Au}}}),Ab=new Ob([new $y(`Infinity`),new $y(`-Infinity`),new $y(`NaN`)]);function jb(e){return e?``:`readonly `}function Mb(e){return e?`?`:``}var Nb=class extends te{_tag=`Filter`;run;annotations;aborted;constructor(e,t=void 0,n=!1){super(),this.run=e,this.annotations=t,this.aborted=n}annotate(e){return new Nb(this.run,{...this.annotations,...e},this.aborted)}abort(){return new Nb(this.run,this.annotations,!0)}and(e,t){return new Pb([this,e],t)}},Pb=class extends te{_tag=`FilterGroup`;checks;annotations;constructor(e,t=void 0){super(),this.checks=e,this.annotations=t}annotate(e){return new Pb(this.checks,{...this.annotations,...e})}and(e,t){return new Pb([this,e],t)}};function Fb(e,t,n=!1){return new Nb((t,n,r)=>Hte(n,e(t,n,r),t,r),t,n)}function Une(e){return Fb(e=>globalThis.Number.isFinite(e),{expected:`a finite number`,representation:{id:`effect/schema/isFinite`,payload:null},toJsonSchema:()=>({type:`number`}),toCode:()=>({runtime:`Schema.isFinite()`}),arbitraryConstraint:{number:`finite`},...e})}var Ib=Kb(rb,[Une()]),Wne=new Vy(new Ob([Ib,Ab]),new Ay(Oy(),Sy(e=>globalThis.Number.isFinite(e)?e:globalThis.String(e))));function Lb(e,t){let n=e.source,r=new globalThis.RegExp(n,e.flags);return Fb(e=>(r.lastIndex=0,r.test(e)),{expected:`a string matching the RegExp ${n}`,representation:{id:`effect/schema/isPattern`,payload:{source:n,flags:e.flags}},toJsonSchema:()=>({pattern:n}),arbitraryConstraint:{patterns:[{source:e.source,flags:e.flags}]},...t})}function Rb(e,t){let n=Object.getOwnPropertyDescriptors(e);return t(n),Object.create(Object.getPrototypeOf(e),n)}var zb=new WeakMap;function Bb(e){return zb.get(e)??e}function Vb(e,t){return e.encoding===t?e:Rb(e,e=>{e.encoding.value=t})}function Hb(e,t){if(e.context===t)return e;let n=Bb(e);if(n.context===t)return n;let r=Rb(e,e=>{e.context.value=t});return zb.set(r,n),r}function Ub(e){return e.encoding?Ub(e.encoding[e.encoding.length-1].to):e}function Wb(e,t){if(e.checks){let n=e.checks[e.checks.length-1];return Gb(e,Ti(e.checks.slice(0,-1),n.annotate(t)))}return Rb(e,e=>{e.annotations.value={...e.annotations.value,...t}})}function Gb(e,t){if(e._tag===`Suspend`&&t)throw Error(`Cannot add checks to Suspend`);return e.checks===t?e:Rb(e,e=>{e.checks.value=t})}function Kb(e,t){return Gb(e,_b(e.checks,t))}function qb(e,t){let n=t(e.to);return n===e.to?e:new Vy(n,e.transformation)}function Jb(e,t){let n=e,r=n[n.length-1],i=qb(r,t);return i===r?e:Ti(e.slice(0,e.length-1),i)}function Yb(e){return t=>t.encoding?Vb(t,Jb(t.encoding,e)):t}function Gne(e,t){return Yb(e=>Hb(e,t))(e)}function Xb(e,t){function n(r){if(r.encoding){let e=r.encoding[r.encoding.length-1];return t?.stopAt?.(e)?r:Vb(r,Jb(r.encoding,n))}return e(r)}return de(n)}function Kne(e,t,n){let r=new Vy(e,t);return Vb(n,n.encoding?[...n.encoding,r]:[r])}function Zb(e,t){let n=!1,r=Array(e.length);for(let i=0;i<e.length;i++){let a=e[i],o=t(a);o!==a&&(n=!0),r[i]=o}return n?r:e}function Qb(e,t){return Hb(e,e.context?new Uy(e.context.isOptional,e.context.isMutable,e.context.constructorDefault,{...e.context.annotations,...t}):new Uy(!1,!1,void 0,t))}var $b=de(e=>qne(Hb(e,e.context?e.context.isOptional===!1?new Uy(!0,e.context.isMutable,e.context.constructorDefault,e.context.annotations):e.context:new Uy(!0,!1)))),qne=Yb($b),Jne=ue(e=>$b(new Ob([e,Yy])));function Yne(e,t){return Hb(e,e.context?new Uy(e.context.isOptional,e.context.isMutable,t,e.context.annotations):new Uy(!1,!1,t))}function ex(e,t,n){return Kne(e,n,t)}function Xne(e){let t=[],n=[];function r(e){switch(e._tag){case`Literal`:ye(e.literal)&&t.push(e.literal);return;case`UniqueSymbol`:t.push(e.symbol);return;case`Never`:return;case`Union`:for(let t=0;t<e.types.length;t++)r(e.types[t]);return;default:n.push(e)}}return r(e),{literals:t,parameters:n}}function Zne(e,t){let{literals:n,parameters:r}=Xne(e);return new pb(n.map(e=>new lb(e,t)),r.map(e=>new fb(e,t)))}function tx(e){return e.context?.isOptional??!1}function Qne(e){return e.context?.isMutable??!1}function nx(e){return e.annotations?.[`~structural`]===!0||e._tag===`FilterGroup`&&e.checks.every(nx)}function $ne(e){function t(e){return nx(e)?[e]:e._tag===`FilterGroup`?e.checks.flatMap(t):[]}let n=e.flatMap(t);return Di(n)?n:void 0}var rx=de(e=>{if(e.encoding)return rx(Vb(e,void 0));let t=e,n=t.recur?.(rx)??t,r=n.encodingChecks;if(r){let t=n===e?r:bne(n)||xne(n)||Ry(n)&&n.typeParameters.length>0?$ne(r):void 0;return Rb(n,e=>{e.encodingChecks.value=void 0,e.checks.value=_b(n.checks,t)})}return n}),ix=de(e=>rx(ax(e)));function ere(e,t){let n=t,r=n.length,i=n[r-1],a=[new Vy(ax(Vb(e,void 0)),n[0].transformation.flip())];for(let e=1;e<r;e++)a.unshift(new Vy(ax(n[e-1].to),n[e].transformation.flip()));let o=ax(i.to);return o.encoding?Vb(o,[...o.encoding,...a]):Vb(o,a)}var ax=ue(e=>{if(e.encoding)return ere(e,e.encoding);let t=e;return t.flip?.(ax)??t.recur?.(ax)??t});function ox(e){switch(e._tag){case`Undefined`:return!0;case`Union`:return e.types.some(ox);default:return!1}}function sx(e,t){let n=t===0?Kv:Wv(t);return(r,i)=>r===Uv?Gv:r===t?n:k(new iy(e,r,i))}function cx(e,t){return(n,r)=>n===Uv?Gv:t(n)?Kv:k(new iy(e,n,r))}function lx(e,t,n){let r=e.encodedParts,i=e.literals,a=t.length;for(let e=0;e<i.length;e++){let n=i[e];if(n&&!t.includes(n))return}if(e.suffixLengths[0]>a)return;let o=Array(r.length),s;function c(l,u){if(l===r.length)return u===a;if(s?.has(l*(a+1)+u))return!1;let d=r[l];if(l===r.length-1){let e=t.slice(u);if(d.matchPart(e,n)!==void 0)return o[l]=e,!0}else if(d._tag===`Literal`){let e=i[l];if(t.startsWith(e,u)&&c(l+1,u+e.length))return o[l]=e,!0}else{let r=a-e.suffixLengths[l+1],s=i[l+1],f=s===void 0?r:t.lastIndexOf(s,r);for(;f>=u;){let e=t.slice(u,f);if(d.matchPart(e,n)!==void 0&&c(l+1,f))return o[l]=e,!0;if(f===0)break;f=s===void 0?f-1:t.lastIndexOf(s,f-1)}}return s??=new Set,s.add(l*(a+1)+u),!1}return c(0,0)?o:void 0}var ux=Xb(e=>{switch(e._tag){default:return e;case`Number`:return e.toCodecStringTree();case`Union`:return e.recur(ux)}}),dx=Xb(e=>{switch(e._tag){default:return e;case`Symbol`:case`UniqueSymbol`:return e.toCodecStringTree();case`Union`:return e.recur(dx)}}),fx=Xb(e=>{switch(e._tag){default:return e;case`Number`:case`Literal`:case`BigInt`:return e.toCodecStringTree();case`Union`:return e.recur(fx)}}),tre=`[\\s\\S]*?`,px=new globalThis.RegExp(`^${sb}$`),nre=new globalThis.RegExp(`^(?:${sb}|Infinity|-Infinity|NaN)$`);function rre(e){return Lb(px,{expected:`a string representing a finite number`,representation:{id:`effect/schema/isStringFinite`,payload:null},toJsonSchema:()=>({pattern:px.source}),...e})}var mx=Kb(tb,[rre()]),ire=new Vy(mx,Py),are=new Vy(new Ob([mx,Ab]),Py),hx=new globalThis.RegExp(`^-?\\d+$`);function ore(e){return Lb(hx,{expected:`a string representing a bigint`,representation:{id:`effect/schema/isStringBigInt`,payload:null},toJsonSchema:()=>({pattern:hx.source}),...e})}var sre=new Vy(Kb(tb,[ore({expected:`a string representing a bigint`})]),dne);function gx(e,t,n,r,i){for(let a=0;a<e.length;a++){let o=e[a];if(o._tag===`FilterGroup`){if(n=gx(o.checks,t,n,r,i),n&&(i.errors!==`all`||n[n.length-1].filter.aborted))return n}else{let e=o.run(t,r,i);if(e){let r=new $v(o,e,t,i);if(n?n.push(r):n=[r],i.errors!==`all`||o.aborted)return n}}}return n}function _x(e){if(!Ry(e))return;let t=e.annotations?.[Iv];return be(t)?t(e.typeParameters):void 0}var vx=Bv;function cre(e){return e===null||typeof e==`string`||typeof e==`boolean`||typeof e==`number`&&globalThis.Number.isFinite(e)}function lre(e){return e===void 0||typeof e==`string`}function yx(e,t){let n=new WeakMap,r=[];outer:for(;;){if(typeof e!=`object`||!e){if(!t(e))return!1}else{let t=e,i=n.get(t);if(i===!1)return!1;if(i===void 0){let e=Array.isArray(t);if(!e){let e=Object.getPrototypeOf(t);if(e!==null&&e!==Object.prototype&&Object.getPrototypeOf(e)!==null)return!1}n.set(t,!1),r.push({value:t,keys:e?t.length:Object.keys(t),index:0})}}for(;r.length>0;){let t=r[r.length-1],i=t.keys;if(typeof i==`number`){if(t.index<i){e=t.value[t.index++];continue outer}}else if(t.index<i.length){e=t.value[i[t.index++]];continue outer}n.set(t.value,!0),r.pop()}return!0}}function bx(e){return yx(e,cre)}var xx=new Ky([],()=>(e,t,n)=>bx(e)?Kv:k(new iy(t,e,n)),{representation:{id:`effect/schema/Json`,payload:null},expected:`JSON value`,toCodecJson:()=>void 0,toCodecStringTree:()=>dre}),Sx=Wb(xx,{representation:{id:`effect/schema/MutableJson`,payload:null}}),Cx=new Vy(xx,Ny()),wx=new Vy(new Ob([new ib(!1,[],[xx]),new pb([],[new fb(tb,xx)])]),Ny());function ure(e){return yx(e,lre)}var dre=new Vy(new Ky([],()=>(e,t,n)=>ure(e)?Kv:k(new iy(t,e,n)),{expected:`StringTree`,toCodecStringTree:()=>void 0}),Ny()),Tx=(e,t,n)=>e===Kv?n(t):$p(e,n);function Ex(e){if(e._tag===`Middleware`)return(t,n,r)=>Dx(t===Kv?e.decode(Wv(qv(n)),r):e.decode(Xp(t,qv),r));let t=e.decode;switch(t._tag){case`Passthrough`:return(e,t)=>e===Kv?Wv(t):e;case`Transform`:{let e=e=>e===Uv?Gv:Wv(t.transform(e));return(t,n)=>Tx(t,n,e)}case`TransformOptional`:{let e=e=>Jv(t.transform(qv(e)));return(t,n)=>Tx(t,n,e)}case`TransformEffect`:return(e,n,r)=>Tx(e,n,e=>e===Uv?Gv:t.transform(e,r));case`TransformOptionalEffect`:return(e,n,r)=>Tx(e,n,e=>Dx(t.transform(qv(e),r)))}}var Dx=e=>$p(e,Jv),Ox=(e,t,n,r)=>Wf(r,r=>Af(()=>su(r,r=>new zte(e,r,t,n))));function kx(e,t){let n=Ex(e.link.transformation),r;return(i,a)=>{if(i===Uv)return Gv;if(e.isConstructed(i))return Kv;let o=(r??=t(e.link.to))(i,a);return n(o,i,a)}}function Ax(e,t){let n=e.context.constructorDefault;return(r,i)=>{if(r!==Uv&&r!==void 0)return t(r,i);let a=n;if(Hs(a)&&a._tag===`Success`){let e=t(a[Wt],i);return e===Kv?a:e}return $p(Ox(e,r,i,a),e=>{let n=t(e,i);return n===Kv?Wv(e):n})}}function jx(e,t){let n=t(e);return e.context?.constructorDefault===void 0?n:Ax(e,n)}function Mx(e,t,n,r,i){if(e._tag===`Declaration`)for(let n of e.typeParameters)t(n);let a=n?_x(e):void 0,o=a?kx(a,t):r??e.getParser(t,n),s=e.checks,c=e.encoding,l=c?.map(e=>Ex(e.transformation)),u=e.encodingChecks;if(!c&&!s&&!u)return o;let d,f=(t,n)=>{let r=o(t,n);if(u&&!n.disableChecks){if(Hs(r)){if(r._tag===`Success`){let i=r===Kv?t:r[Wt];if(t!==Uv&&i!==Uv){let i=gx(u,t,void 0,e,n);i&&(r=k(new ry(e,i,t,n)))}}}else r=A(r,r=>{if(t!==Uv&&r!==Uv){let r=gx(u,t,void 0,e,n);if(r)return k(new ry(e,r,t,n))}return T(r)})}if(s&&!n.disableChecks){if(Hs(r)){if(r._tag===`Success`){let i=r===Kv?t:r[Wt];if(i===Uv)return r;let a=gx(s,i,void 0,e,n);a&&(r=k(new ry(e,a,i,n)))}}else r=A(r,t=>{if(t!==Uv){let r=gx(s,t,void 0,e,n);if(r)return k(new ry(e,r,t,n))}return T(t)})}return r},p=i===void 0?f:i(f);return c?(n,r)=>{let i=d??=c.map(e=>t(e.to)),a=n,o=i[i.length-1](n,r);for(let e=c.length-1;e>=0;e--)if(o=l[e](o,a,r),e!==0){let t=i[e-1];o._tag===`Success`?(a=o[Wt],o=t(a,r)):o=$p(o,e=>{let n=t(e,r);return n===Kv?Wv(e):n})}if(o._tag===`Success`){let e=o[Wt],t=p(e,r);return t===Kv?o:t}return o=Ox(e,n,r,o),$p(o,e=>{let t=p(e,r);return t===Kv?Wv(e):t})}:p}var Nx=Symbol(),Px=new WeakMap,Fx,Ix=e=>Bx(e).parser,Lx=e=>Bx(e).makeEffect,fre=e=>jx(e,Lx),Rx=class{ast;constructor(e){this.ast=e}get decodeEffect(){return this.cachedDecodeEffect??=Mx(this.ast,Ix)}get parser(){return this.decodeEffect}get makeEffect(){return this.cachedMakeEffect??=Mx(this.ast,Lx,fre)}},pre=class extends Rx{compiled;resolve;constructor(e,t,n){super(e),this.compiled=t,this.resolve=n}save(e,t){return Object.defineProperty(this,e,{value:t}),t}operation(e){let t=this.compiled;return typeof t==`function`?t(this.ast,this.resolve,e):t?.[e]}get is(){return this.save(`is`,this.operation(`is`))}get decode(){return this.save(`decode`,this.operation(`decode`))}get make(){return this.save(`make`,this.operation(`make`))}get decodeEffect(){return this.save(`decodeEffect`,this.operation(`decodeEffect`)??Mx(this.ast,e=>zx(this.resolve,e,`parser`)))}get parser(){let e=this.decode;return e===void 0?this.decodeEffect:this.save(`parser`,mre(e,()=>this.decodeEffect))}get makeEffect(){let e=this.operation(`makeEffect`);if(e!==void 0)return this.save(`makeEffect`,e);let t=e=>zx(this.resolve,e,`makeEffect`);return this.save(`makeEffect`,Mx(this.ast,t,e=>jx(e,t)))}};function mre(e,t){let n;return(r,i)=>{if(r!==Uv)try{let t=e(r,i);if(t!==Nx)return t===r?Kv:Wv(t)}catch(e){return jf(e)}return(n??=t())(r,i)}}function zx(e,t,n){let r=e(t);if(r.compiled===void 0||Object.hasOwn(r,n))return r[n];let i;return(e,t)=>(i??=r[n])(e,t)}function Bx(e){let t=Px.get(e);if(t!==void 0)return t;let n=Fx===void 0?new Rx(e):new pre(e,Fx(e,Bx),Bx);return Px.set(e,n),n}function Vx(e){let t=e.ast,n;return(e,r)=>(n??=eS(oS,rx(t)))(e,r?.disableChecks?r?.parseOptions?{...r.parseOptions,disableChecks:!0}:{disableChecks:!0}:r?.parseOptions)}function Hx(e){let t=Vx(e);return(e,n)=>{let r=Hp(t(e,n));return ju(r)?_r(r.value):(vy(r.cause,`Option adapter can only return none for schema issues`),gr())}}function Ux(e){return iS(rx(e.ast))}function Wx(e){return Kx(e.ast)}function Gx(e){{let t=tS(Qx(e));return e=>{let n=t(e,Hy);return ju(n)?!0:(vy(n.cause,`Type guard adapter can only return false for schema issues`),!1)}}}function Kx(e){let t=rx(e),n=e=>(n=Gx(t),n(e));return e=>n(e)}function qx(e,t){let n=Qx(e.ast);return t===void 0?n:(e,r)=>n(e,Xx(t,r))}function Jx(e,t){return nS(qx(e,t))}function Yx(e,t){let n=Qx(ax(e.ast));return t===void 0?n:(e,r)=>n(e,Xx(t,r))}var Xx=(e,t)=>t?{...e,...t}:e,Zx=e=>e===Uv?k(new ay):T(e);function Qx(e){return eS(aS,e)}function $x(e,t){return e===Kv?T(t):Hs(e)?e[Wt]===Uv?Zx(Uv):e:$p(e,Zx)}function eS(e,t){let n;return(r,i)=>{let a=(n??=e(t))(r,i??Hy);return a===Kv?T(r):Hs(a)?a[Wt]===Uv?Zx(Uv):a:$p(a,Zx)}}function tS(e){return(t,n)=>Hp(e(t,n))}function nS(e){let t=tS(e);return(e,n)=>{let r=t(e,n);return ju(r)?ui(r.value):di(vy(r.cause,`Result adapter can only return schema issues`))}}function rS(e,t){let n=Hp(e);if(ju(n))return n.value;let r=vy(n.cause,t);throw Error(`Schema validation failed`,{cause:r})}function iS(e){let t,n;return(r,i)=>{t??=Bx(e);let a=i?.disableChecks?i.parseOptions?{...i.parseOptions,disableChecks:!0}:{disableChecks:!0}:i?.parseOptions??Hy,o=t.make;if(o!==void 0&&r!==Uv){let e;try{e=o(r,a)}catch(e){throw vy(nu(e),`Constructor adapter can only throw schema issues`),e}if(e!==Nx&&e!==Uv)return e}return rS($x((n??=t.makeEffect)(r,a),r),`Constructor adapter can only throw schema issues`)}}var aS=e=>Bx(e).parser,oS=e=>Bx(e).makeEffect,sS=`~effect/Schema/Schema`,cS={[sS]:sS,pipe(){return b(this,arguments)},annotate(e){return this.rebuild(Wb(this.ast,e))},annotateKey(e){return this.rebuild(Qb(this.ast,e))},check(...e){return this.rebuild(Kb(this.ast,e))}};function lS(e,t){function n(){}let r=Object.setPrototypeOf(n,cS);return t&&(Object.hasOwn(t,`name`)||Object.hasOwn(t,`length`)||Object.hasOwn(t,`__proto__`))?Object.defineProperties(r,Object.getOwnPropertyDescriptors({...t})):Object.assign(r,t),r.ast=e,r.rebuild=e=>lS(e,t),r.makeEffect=Vx(r),r.make=Ux(r),r.makeOption=Hx(r),r}function uS(e){return e.replace(/~/g,`~0`).replace(/\//g,`~1`)}function dS(e){return e.replace(/~1/g,`/`).replace(/~0/g,`~`)}function fS(e){return encodeURI(uS(e)).replace(/#/g,`%23`)}function pS(e){if(e.length===0||e===`#`)return``;if(!e.startsWith(`#`))return;let t=e.slice(1);try{if(encodeURI(t).replace(/%25/g,`%`).replace(/#/g,`%23`)!==t)return;let e=decodeURIComponent(t);return e.startsWith(`/`)&&!/~(?:[^01]|$)/.test(e)?e:void 0}catch{return}}function mS(e){let t=pS(e);return t===void 0?void 0:t.length===0?[]:t.slice(1).split(`/`).map(dS)}function hS(e){let t=e.startsWith(`#`)?mS(e):void 0;return t!==void 0&&t.length===2&&t[0]===`$defs`?t[1]:void 0}function gS(e,t){return n(e,!1,!0);function n(e,r,i=!1){if(!De(e))return e;let a=r||!i&&bS(e.$id),o={};for(let t of Object.keys(e)){let r=e[t],i=r;switch(t){case`$defs`:case`properties`:case`patternProperties`:case`dependentSchemas`:i=yS(r,e=>n(e,a))??r;break;case`allOf`:case`anyOf`:case`oneOf`:case`prefixItems`:i=Array.isArray(r)?r.map(e=>n(e,a)):r;break;case`not`:case`additionalProperties`:case`propertyNames`:case`unevaluatedProperties`:case`items`:case`contains`:case`unevaluatedItems`:case`if`:case`then`:case`else`:case`contentSchema`:i=n(r,a)}Rt(o,t,i)}return t(o,a),o}}function _S(e,t){return gS(e,e=>{vS(e,t)})}function vS(e,t){typeof e.$ref==`string`&&Rt(e,`$ref`,t(e.$ref,`$ref`)),typeof e.$dynamicRef==`string`&&Rt(e,`$dynamicRef`,t(e.$dynamicRef,`$dynamicRef`))}function yS(e,t){if(!De(e))return;let n={};for(let r of Object.keys(e))Rt(n,r,t(e[r],r));return n}function bS(e){return typeof e==`string`&&e.length>0&&e[0]!==`#`}var xS=[`$anchor`,`$defs`,`$dynamicAnchor`,`$dynamicRef`,`$vocabulary`,`contentSchema`,`dependentRequired`,`dependentSchemas`,`maxContains`,`minContains`,`prefixItems`,`unevaluatedItems`,`unevaluatedProperties`];[...xS],[...xS];function SS(e){return lS(CS(e.ast),{schema:e})}var CS=Xb(e=>{let t=OS(e,CS),n=e.context;return t===e||n===void 0?t:Gne(t,wS(n))});function wS(e){return e.constructorDefault===void 0?e:new Uy(e.isOptional,e.isMutable,void 0,e.annotations)}function TS(e){if(e.propertySignatures.some(e=>typeof e.name!=`string`))throw new globalThis.Error(`Objects property names must be strings`,{cause:e})}function ES(e){return t=>{let n=new Map;for(let e=0;e<t.length;e++)n.set(ix(t[e]),e);let r=[...t].sort((t,r)=>{t=ix(t),r=ix(r);let i=e(t),a=e(r);return i===a?n.get(t)-n.get(r):i-a});return r.some((e,n)=>e!==t[n])?r:t}}var DS=ES(e=>{switch(e._tag){case`BigInt`:case`Symbol`:case`UniqueSymbol`:return 0;default:return 1}});function OS(e,t){switch(e._tag){case`Declaration`:{let n=e.annotations?.toCodecJson??e.annotations?.toCodec;if(!be(n))return Vb(e,[Cx]);let r=n(e.typeParameters.map(e=>lS(ix(e))));return r===void 0?e:Vb(e,[qb(r,t)])}case`Unknown`:return Vb(e,[Cx]);case`ObjectKeyword`:return Vb(e,[wx]);case`Undefined`:case`Void`:case`Literal`:case`Number`:return e.toCodecJson();case`UniqueSymbol`:case`Symbol`:case`BigInt`:return e.toCodecStringTree();case`Objects`:return TS(e),e.recur(t,dx);case`Union`:{let n=DS(e.types);return n===e.types?e.recur(t):new Ob(n,e.options,e.annotations,e.checks,e.encoding,e.context,e.encodingChecks).recur(t)}case`Arrays`:case`Suspend`:return e.recur(t)}return e}globalThis.RegExp;var kS=e=>e.replace(/[/\\^$*+?.()|[\]{}]/g,`\\$&`);function AS(e,t){return t.length>0&&(e+=`\n at ${wt(t)}`),Error(e)}function jS(e){return`#/$defs/${fS(e)}`}var MS=new Set([...Hv,Pv,...Lv]);function NS(e,t){if(e===void 0)return;let n={},r=e.title;typeof r==`string`&&(n.title=r);let i=e.description,a=e.expected;typeof i==`string`?n.description=i:t?.generateDescriptions===!0&&typeof a==`string`&&(n.description=a);let o=e.default;bx(o)&&(n.default=o);let s=e.examples;Array.isArray(s)&&bx(s)&&(n.examples=s);let c=e.readOnly;typeof c==`boolean`&&(n.readOnly=c);let l=e.writeOnly;typeof l==`boolean`&&(n.writeOnly=l);let u=e.format;typeof u==`string`&&(n.format=u);let d=e.contentEncoding;typeof d==`string`&&(n.contentEncoding=d);let f=e.contentMediaType;typeof f==`string`&&(n.contentMediaType=f);let p=e.contentSchema;if(bx(p)&&(n.contentSchema=p),t?.includeAnnotationKey!==void 0)for(let[r,i]of Object.entries(e))MS.has(r)||!t.includeAnnotationKey(r)||bx(i)&&Rt(n,r,i);return Object.keys(n).length===0?void 0:n}function PS(e){let t=e.type===`number`||e.type===`integer`?e.type:void 0,n=e;if(t!==void 0&&(n={...e},delete n.type),Array.isArray(n.allOf)){let e=[],r=!1;for(let i of n.allOf){let n=PS(i);n.type!==void 0&&(r=!0,(t===void 0||n.type===`integer`)&&(t=n.type)),Object.keys(n.schema).length>0&&e.push(n.schema)}if(r){let{allOf:t,...r}=n;n=e.length===0?r:{...r,allOf:e}}}return{type:t,schema:n}}function hre(e){if(!Array.isArray(e.anyOf)||e.anyOf.length!==2||e.anyOf[0]?.type!==`number`)return!1;let t=e.anyOf[1];return t?.type===`string`&&Array.isArray(t.enum)&&t.enum.length===3&&t.enum.includes(`NaN`)&&t.enum.includes(`Infinity`)&&t.enum.includes(`-Infinity`)}var gre=`|type|format|pattern|multipleOf|minimum|maximum|exclusiveMinimum|exclusiveMaximum|minLength|maxLength|minItems|maxItems|uniqueItems|minProperties|maxProperties|propertyNames|`;function FS(e,t){return Object.keys(e).every(e=>t.includes(`|${e}|`))}function IS(e,t){return typeof e.$ref!=`string`&&t.every(t=>!Object.hasOwn(e,t))}var LS=`|title|description|default|examples|readOnly|writeOnly|`,_re=`|type|format|pattern|multipleOf|minimum|maximum|exclusiveMinimum|exclusiveMaximum|minLength|maxLength|minItems|maxItems|uniqueItems|minProperties|maxProperties|propertyNames||title|description|default|examples|readOnly|writeOnly|`;function RS(e,t,n){if(Object.keys(e).length===0)return t;let r=Object.keys(t);if(r.length===0)return e;let i=e.type===`number`||e.type===`integer`?e.type:void 0,a=hre(e);if(i!==void 0||a){let r=PS(t);if(r.type!==void 0){let t=i===`integer`||r.type===`integer`?`integer`:`number`,o={...e,type:t};a&&delete o.anyOf;let s=Object.keys(r.schema);return s.length===0?o:FS(r.schema,LS)&&IS(o,s)?{...o,...r.schema}:RS(o,r.schema,n)}}if(n&&IS(e,r))return{...e,...t};let o=Array.isArray(t.allOf)&&r.length===1?t.allOf:[t];return Array.isArray(e.allOf)?{...e,allOf:[...e.allOf,...o]}:typeof e.$ref==`string`?{allOf:[e,...o]}:{...e,allOf:o}}function vre(e,t,n,r){let i=new Map,a=new WeakMap,o=new Map,s=Object.keys(n);for(let e of s)u(e,[`references`,e]);let c=ji(e,(e,n)=>d(h(e,t[n]))),l={};for(let e of s){let t=i.get(e);typeof t!=`string`&&Rt(l,e,d(t))}return{dialect:`draft-2020-12`,schemas:c,definitions:l};function u(e,t){let r=i.get(e);if(r!==void 0)return typeof r==`string`?r:e;if(!Object.hasOwn(n,e))throw AS(`Invalid reference ${e}`,[...t,`$ref`]);i.set(e,null);let a=n[e],s=h(a,[`references`,e]),c=f(a);if(c!==void 0){let t=o.get(c),n=t?.find(e=>Qe(i.get(e),s));if(n===void 0)t===void 0?o.set(c,[e]):t.push(e);else return i.set(e,n),n}return i.set(e,s),e}function d(e){return _S(e,e=>{let t=pS(e);if(t===void 0){if(/^#(?:\/|%2f)/i.test(e))throw Error(`Invalid JSON Pointer URI fragment ${JSON.stringify(e)}`);return e}if(!t.startsWith(`/$defs/`))return e;let n=t.indexOf(`/`,7),r=i.get(dS(t.slice(7,n<0?void 0:n)));return typeof r==`string`?e.replace(/^#(?:\/|%2f).*?(?:\/|%2f).*?(?=\/|%2f|$)/i,jS(r)):e})}function f(e){if(e._tag===`Reference`)return;let t=e.checks.length===0?e.annotations:e.checks[e.checks.length-1].annotations;return typeof t?.identifier!=`string`&&typeof t?.[`~identifier`]==`string`?t[Pv]:void 0}function p(e,t){return e?.schemas?.map((e,n)=>h(e,[...t,`schemas`,n]))??[]}function m(e,t,n){let i=e.annotations,a=i?.toJsonSchema;if(a!==void 0){let o=a({type:t,schemas:p(e.representation,[...n,`representation`])}),s=NS(i,r),c=s===void 0?o:{...o,...s},l=s===void 0?gre:_re;return e._tag===`Filter`&&FS(c,l)&&(s===void 0||FS(s,LS))?[c,!0]:[c]}if(e._tag===`Filter`)return;let o=e.checks.map((e,r)=>m(e,t,[...n,`checks`,r])).filter(e=>e!==void 0);if(o.length===0)return;let s=NS(i,r),c=o.map(([e])=>e);return[s===void 0?{allOf:c}:{allOf:c,...s}]}function h(e,t){if(e._tag===`Reference`)return{$ref:jS(u(e.$ref,t))};let n=a.get(e);if(n!==void 0)return n;let i=g(e,t),o=NS(e.annotations,r);o!==void 0&&(i={...i,...o});for(let n=0;n<e.checks.length;n++){let r=typeof i.type==`string`&&yre(i.type)?i.type:void 0,a=m(e.checks[n],r,[...t,`checks`,n]);a!==void 0&&(i=RS(i,...a))}return a.set(e,i),i}function g(e,t){switch(e._tag){case`Any`:case`Unknown`:return{};case`ObjectKeyword`:return{anyOf:[{type:`object`},{type:`array`}]};case`Void`:case`Undefined`:case`Null`:return{type:`null`};case`BigInt`:return{type:`string`,allOf:[{pattern:`^-?\\d+$`}]};case`Symbol`:return{type:`string`,allOf:[{pattern:`^Symbol\\(([\\s\\S]*)\\)$`}]};case`UniqueSymbol`:return globalThis.Symbol.keyFor(e.symbol)===void 0?{not:{}}:{type:`string`,enum:[globalThis.String(e.symbol)]};case`Declaration`:return{};case`Suspend`:return h(e.thunk,[...t,`thunk`]);case`Never`:return{not:{}};case`String`:return{type:`string`};case`Number`:return{anyOf:[{type:`number`},{type:`string`,enum:[`NaN`,`Infinity`,`-Infinity`]}]};case`Boolean`:return{type:`boolean`};case`Literal`:{let t=e.literal;return typeof t==`bigint`?{type:`string`,enum:[globalThis.String(t)]}:{type:typeof t,enum:[t]}}case`Enum`:{let n=e.enums.map(([e,n],r)=>{if(typeof n==`number`&&!globalThis.Number.isFinite(n))throw AS(`Invalid numeric enum value ${globalThis.String(n)}`,[...t,`enums`,r,1]);return{type:typeof n,enum:[n],title:e}});return n.length===0?{not:{}}:{anyOf:n}}case`TemplateLiteral`:return{type:`string`,pattern:`^${e.parts.map(zS).join(``)}$`};case`Arrays`:{if(e.rest.length>1)throw AS(`Invalid schema representation document`,[...t,`rest`]);let n={type:`array`},i=e.elements.length,a=e.elements.map((e,n)=>{e.isOptional&&i--;let a=h(e.type,[...t,`elements`,n,`type`]),o=NS(e.annotations,r);return o===void 0?a:RS(a,o)});if(a.length>0?(n.prefixItems=a,n.maxItems=e.elements.length,i>0&&(n.minItems=i)):n.items=!1,e.rest.length===1){delete n.maxItems;let r=h(e.rest[0],[...t,`rest`,0]);Object.keys(r).length>0?n.items=r:delete n.items}return n}case`Objects`:{if(e.propertySignatures.length===0&&e.indexSignatures.length===0)return{not:{type:`null`}};let n={type:`object`},i={},a=[];for(let n=0;n<e.propertySignatures.length;n++){let o=e.propertySignatures[n];if(typeof o.name!=`string`)throw AS(`Invalid schema representation document`,[...t,`propertySignatures`,n,`name`]);let s=o.name,c=h(o.type,[...t,`propertySignatures`,n,`type`]),l=NS(o.annotations,r);Rt(i,s,l===void 0?c:RS(c,l)),o.isOptional||a.push(s)}e.propertySignatures.length>0&&(n.properties=i),a.length>0&&(n.required=a);let o={},s=[],c=[],l=!1;for(let n=0;n<e.indexSignatures.length;n++){let r=e.indexSignatures[n],i=h(r.type,[...t,`indexSignatures`,n,`type`]);Qe(i,{not:{}})&&(i=!1),c.push(i);let a=_(r.parameter,[...t,`indexSignatures`,n,`parameter`],new Set);if(a===void 0){l=!0;continue}if(a.length===0)s.push(i);else for(let e of a){let t=o[e];Rt(o,e,t===void 0?i:t===!1||i===!1?!1:RS(t,i))}}let u=Object.keys(o).length>0;if(u&&(n.patternProperties=o),l&&r?.onExcessProperty===`error`){let r=[];e.propertySignatures.length>0&&r.push({enum:Object.keys(i)});for(let n=0;n<e.indexSignatures.length;n++)r.push(h(e.indexSignatures[n].parameter,[...t,`indexSignatures`,n,`parameter`]));n.propertyNames=r.length===1?r[0]:{anyOf:r},n.additionalProperties=c.length===1?c[0]:{anyOf:c},s.length>0&&(n.allOf=s.map(e=>({type:`object`,additionalProperties:e})))}else s.length===0?n.additionalProperties=l||r?.onExcessProperty!==`error`:s.length===1&&e.propertySignatures.length===0&&!u?n.additionalProperties=s[0]:s.length>0&&(n.allOf=s.map(e=>({type:`object`,additionalProperties:e})));return typeof n.additionalProperties==`object`&&n.additionalProperties!==null&&Object.keys(n.additionalProperties).length===0&&delete n.additionalProperties,n}case`Union`:{let n=e.types.map((e,n)=>h(e,[...t,`types`,n]));if(n.length===0)return{not:{}};let r=e.options?.mode??`anyOf`;if(r===`anyOf`&&n.length>1){let e=bre(n);if(e!==void 0)return e}return r===`anyOf`?{anyOf:n}:{oneOf:n}}}}function _(e,t,r){switch(e._tag){case`Reference`:{if(!Object.hasOwn(n,e.$ref))throw AS(`Invalid reference ${e.$ref}`,[...t,`$ref`]);if(u(e.$ref,t),r.has(e.$ref))return;let i=new Set(r).add(e.$ref);return _(n[e.$ref],[`references`,e.$ref],i)}case`String`:{if(e.checks.length===0)return[];if(e.checks.length!==1||e.checks[0]._tag!==`Filter`||e.checks[0].annotations?.toJsonSchema===void 0)return;let n=h(e,t);return n.type===`string`&&typeof n.pattern==`string`&&FS(n,`|type|pattern|title|description|default|examples|readOnly|writeOnly|`)?[n.pattern]:void 0}case`TemplateLiteral`:return e.checks.length===0?[`^${e.parts.map(zS).join(``)}$`]:void 0;case`Union`:{if(e.types.length===0||e.checks.length>0||e.options?.mode===`oneOf`)return;let n=[];for(let i=0;i<e.types.length;i++){let a=_(e.types[i],[...t,`types`,i],r);if(a===void 0)return;if(a.length===0)return[];n.push(...a)}return n}default:throw AS(`Invalid schema representation document`,t)}}}function yre(e){return e===`string`||e===`number`||e===`boolean`||e===`array`||e===`object`||e===`null`||e===`integer`}function bre(e){let t,n=[];for(let r of e){if(Object.keys(r).length!==2||r.type===void 0||!Array.isArray(r.enum)||r.enum.length===0)return;if(t===void 0)t=r.type;else if(r.type!==t)return;for(let e of r.enum){if(n.includes(e))return;n.push(e)}}return{type:t,enum:n}}function zS(e){switch(e._tag){case`Literal`:return kS(globalThis.String(e.literal));case`String`:return tre;case`Number`:return sb;case`TemplateLiteral`:return e.parts.map(zS).join(``);case`Union`:return`(?:${e.types.map(zS).join(`|`)})`;default:throw AS(`Invalid schema representation document`,[])}}function xre(e,t){let n=vre([e.representation],[[`representation`]],e.references,t);return{dialect:n.dialect,schema:n.schemas[0],definitions:n.definitions}}var Sre=({identifier:e})=>e;function BS(e){return e===void 0?void 0:{annotations:e}}function Cre(e,t){let{references:n,representations:r}=wre([e],t);return{representation:r[0],references:n}}function wre(e,t){let n={},r=new Map,i=new Set,a=new Map,o=new Set;for(let t of e)f(t);let s=t?.referencePolicy??Sre;for(let e of a.values())for(let t of e.values()){let e=s({ast:t.ast,occurrences:t.occurrences,identifier:t.identifier});e===void 0?t.isRecursive&&(t.reference=c(`${t.ast._tag}_`,t,``)):t.reference=c(e,t,e===t.identifier||!e.endsWith(`_`)?`_`:``)}return{representations:ji(e,e=>m(e)),references:n};function c(e,t,n=`_`){let i=e,a=0;for(;r.has(i);){if(r.get(i)===t)return i;i=`${e}${n}${++a}`}return r.set(i,t),i}function l(e,t,n){let r=t.fallback;return r===void 0?n===t.identifier?e:Wb(e,{identifier:n}):zv(e)===r?e:Wb(e,{[Pv]:r})}function u(e,t){if(!Object.hasOwn(n,e)&&!i.has(e)){i.add(e);let r=h(t);i.delete(e),Rt(n,e,r)}return{_tag:`Reference`,$ref:e}}function d(e){let t=Ub(e),n=Bb(t),r=Rv(t),i=r===void 0?(t===e?void 0:Rv(e))??zv(t):void 0;i!==void 0&&(r=`${i}Encoded`);let o=a.get(n);o===void 0&&(o=new Map,a.set(n,o));let s=o.get(r);return s===void 0&&(s={ast:n,identifier:r,fallback:i,occurrences:0,isRecursive:!1,reference:void 0},o.set(r,s)),s}function f(e){let t=d(e),n=t.ast;if(t.occurrences++,o.has(t)){t.isRecursive=!0;return}if(!(t.occurrences>1)){switch(o.add(t),p(n.checks),n._tag){case`Declaration`:case`Arrays`:case`Objects`:case`Union`:n.recur(e=>(f(e),e));break;case`TemplateLiteral`:n.parts.forEach(f);break;case`Suspend`:f(n.thunk())}o.delete(t)}}function p(e){e?.forEach(e=>{e.annotations?.representation?.schemas?.forEach(e=>f(rx(e))),e._tag===`FilterGroup`&&p(e.checks)})}function m(e){let t=d(e),n=t.ast,r=t.reference;return r===void 0?h(n):u(r,t.identifier===void 0?n:l(n,t,r))}function h(e){let t=g(e.checks);switch(e._tag){case`Declaration`:return{_tag:`Declaration`,typeParameters:e.typeParameters.map(e=>m(e)),checks:t,...v(e.annotations)};case`Null`:case`Undefined`:case`Void`:case`Never`:case`Unknown`:case`Any`:case`String`:case`Boolean`:case`Number`:case`BigInt`:case`Symbol`:case`ObjectKeyword`:return{_tag:e._tag,checks:t,...BS(e.annotations)};case`Literal`:return{_tag:`Literal`,literal:e.literal,checks:t,...BS(e.annotations)};case`UniqueSymbol`:return{_tag:`UniqueSymbol`,symbol:e.symbol,checks:t,...BS(e.annotations)};case`Enum`:return{_tag:`Enum`,enums:e.enums,checks:t,...BS(e.annotations)};case`TemplateLiteral`:return{_tag:`TemplateLiteral`,parts:e.parts.map(e=>m(e)),checks:t,...BS(e.annotations)};case`Arrays`:return{_tag:`Arrays`,elements:e.elements.map(e=>{let t=Ub(e),n=t.context?.annotations;return{isOptional:tx(t),type:m(e),...BS(n)}}),rest:e.rest.map(e=>m(e)),checks:t,...BS(e.annotations)};case`Objects`:return{_tag:`Objects`,propertySignatures:e.propertySignatures.map(e=>{let t=Ub(e.type),n=t.context?.annotations;return{name:e.name,type:m(e.type),isOptional:tx(t),isMutable:Qne(t),...BS(n)}}),indexSignatures:e.indexSignatures.map(e=>({parameter:m(e.parameter),type:m(e.type)})),checks:t,...BS(e.annotations)};case`Union`:return{_tag:`Union`,types:e.types.map(e=>m(e)),...e.options===void 0?{}:{options:e.options},checks:t,...BS(e.annotations)};case`Suspend`:return{_tag:`Suspend`,checks:[],thunk:m(e.thunk()),...BS(e.annotations)}}}function g(e){return e?.map(_)??[]}function _(e){switch(e._tag){case`Filter`:return{_tag:`Filter`,aborted:e.aborted,...y(e.annotations)};case`FilterGroup`:return{_tag:`FilterGroup`,checks:ji(e.checks,_),...y(e.annotations)}}}function v(e){if(e===void 0)return;let{representation:t,...n}=e;return{...t===void 0?void 0:{representation:t},...Object.keys(n).length===0?void 0:{annotations:n}}}function y(e){if(e===void 0)return;let{representation:t,...n}=e,r=t===void 0?void 0:t.schemas===void 0?t:{...t,schemas:t.schemas.map(e=>m(rx(e)))};return{...r===void 0?void 0:{representation:r},...Object.keys(n).length===0?void 0:{annotations:n}}}}var Tre=x(2,(e,t)=>Dre(e,(e,n)=>Ere(t,e)?void 0:[e,n])),VS=e=>e;function Ere(e,t){return e.some(e=>e===t||typeof e==`number`&&String(e)===t)}function Dre(e,t){let n={};for(let r of Reflect.ownKeys(e)){if(!Object.prototype.propertyIsEnumerable.call(e,r))continue;let i=t(r,e[r]);if(i){let[e,t]=i;Rt(n,e,t)}}return n}var HS=`~effect/Schema/SchemaError`;function Ore(e){return C(e,`~effect/Schema/SchemaError`)&&e[`~effect/Schema/SchemaError`]===`~effect/Schema/SchemaError`}var US=new WeakMap,WS=e=>{if(US.has(e))return US.get(e);throw Error(`Unable to get redacted value`+(e.label?` with label: "${e.label}"`:``))},GS=`~effect/Redacted`,KS=e=>C(e,GS),qS=(e,t)=>{let n=Object.create(JS);return t?.label&&(n.label=t.label),US.set(n,e),n},JS={[GS]:{_A:e=>e},label:void 0,...Xt,toJSON(){return this.toString()},toString(){return`<redacted${me(this.label)?`:`+this.label:``}>`},[Ne](){return Pe(US.get(this))},[Ze](e){return KS(e)&&Qe(US.get(this),US.get(e))}},YS=WS,XS=e=>Vn((t,n)=>e(YS(t),YS(n))),ZS=`~effect/http/Cookies`;Oa(`CookiesError`);var QS={[ZS]:ZS,...Mt,toJSON(){return{_id:`effect/Cookies`,cookies:yi(this.cookies,e=>e.toJSON())}},pipe(){return b(this,arguments)}},$S=e=>{let t=Object.create(QS);return t.cookies=e,t},eC=(e=>{let t={};for(let n of e)Rt(t,n.name,n);return $S(t)})([]);({...Mt});var tC=Symbol.for(`~effect/http/Headers`),nC=Object.defineProperties(Object.create(null),{[tC]:{value:tC},[mt]:{value(e){return fC(this,$r(e,pC))}},toJSON:{value(){return gt(this)}},[Ze]:{value(e){return iC(this,e)}},[Ne]:{value(){return He(this)}},toString:{value:Mt.toString},[kt]:{value:Mt[kt]}}),rC=e=>Object.assign(Object.create(nC),e),iC=Si(Un()),aC=Object.create(nC),oC=e=>{if(e===void 0)return aC;if(Symbol.iterator in e){let t=Object.create(nC);for(let[n,r]of e)t[n.toLowerCase()]=r;return t}let t=Object.create(nC);for(let[n,r]of Object.entries(e))Array.isArray(r)?t[n.toLowerCase()]=r.join(`, `):r!==void 0&&(t[n.toLowerCase()]=r);return t},sC=e=>Object.setPrototypeOf(e,nC),cC=x(3,(e,t,n)=>{let r=rC(e);return r[t.toLowerCase()]=n,r}),lC=x(2,(e,t)=>rC({...e,...oC(t)})),uC=x(2,(e,t)=>{let n=rC(e);return Object.assign(n,t),n}),dC=x(2,(e,t)=>{let n=rC(e);return delete n[t.toLowerCase()],n}),fC=x(2,(e,t)=>{let n={...e},r=t=>{if(typeof t==`string`){let r=t.toLowerCase();r in e&&(n[r]=qS(e[r]))}else for(let r in e)r.search(t)!==-1&&(n[r]=qS(e[r]))};if(Array.isArray(t))for(let e=0;e<t.length;e++)r(t[e]);else r(t);return n}),pC=si(`effect/Headers/CurrentRedactedNames`,{defaultValue:()=>[`authorization`,`cookie`,`set-cookie`,`x-api-key`]});({...Xt});var mC=sS;function hC(){return(e,t,n)=>MC(new Ky(e.map(yb),e=>t(e.map(e=>MC(e))),n))}function gC(e,t){return hC()([],()=>(t,n,r)=>e(t)?T(t):k(new iy(n,t,r)),t)}var _C=class extends Oa(`SchemaError`){[HS]=HS;constructor(e){let t=Pt();Ft(0);try{super({issue:e})}finally{Ft(t)}}get message(){return my(this.issue)}toString(){return`SchemaError(${this.message})`}};function vC(e){return Ore(e)}function yC(e){return Hs(e)?bC(e):Wf(e,e=>Af(()=>su(e,e=>new _C(e))))}function bC(e){return ju(e)?e:Eu(su(e.cause,e=>new _C(e)))}function xC(e,t){let n;for(let r of e.reasons){if(!$l(r)||!vC(r.error))throw new globalThis.Error(t,{cause:e});n??=r.error}if(n===void 0)throw new globalThis.Error(t,{cause:e});return n}function SC(e){let t=Hp(e);if(ju(t))return t.value;throw xC(t.cause,`Sync adapter can only throw schema errors`)}var CC=Wx;function wC(e,t){let n=qx(e,t);return(e,t)=>yC(n(e,t))}function TC(e,t){let n=Jx(e,t);return(e,t)=>hi(n(e,t),e=>new _C(e))}function EC(e,t){let n=wC(e,t);return(e,t)=>SC(n(e,t))}var DC=EC;function OC(e,t){let n=Yx(e,t);return(e,t)=>yC(n(e,t))}var kC=OC;function AC(e,t){let n=OC(e,t);return(e,t)=>SC(n(e,t))}var jC=AC,MC=lS;function NC(e){return C(e,mC)&&e[mC]===mC}var PC=VS(e=>MC($b(e.ast),{schema:e})),FC=VS(e=>{let t=sw(e);return MC(Jne(e.ast),{schema:t})}),IC=VS(e=>MC(rx(e.ast),{schema:e})),LC=VS(e=>MC(ix(e.ast),{schema:e}));function RC(e){let t=MC(new $y(e),{literal:e,transform(n){return t.pipe(cw(RC(n),{decode:Sy(()=>n),encode:Sy(()=>e)}))}});return t}function zC(e){return e.map(e=>NC(e)?e.ast:new $y(e))}function BC(e){return MC(new Dne(zC(e)),{parts:e})}var VC=MC(Tne),HC=MC(Ene),UC=MC(Xy),WC=MC(qy),GC=MC(Yy),N=MC(tb),KC=MC(rb),qC=MC(Ane),JC=MC(jne),YC=MC(wne);function XC(e,t){return MC(e,{fields:t,mapFields(e,t){let n=e(this.fields);return XC(vb(n,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function P(e){return XC(vb(e,void 0),e)}function ZC(e,t){return MC(Zne(e.ast,t.ast),{key:e,value:t})}function QC(e,t){return MC(Lne(e.ast,t.map(yb)),{schema:e,records:t})}function $C(e,t){return MC(e,{elements:t,mapElements(e,t){let n=e(this.elements);return $C(bb(n,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function ew(e){return $C(bb(e),e)}var F=VS(e=>MC(new ib(!1,[],[e.ast]),{value:e})),tw=VS(e=>MC(new ib(!1,[e.ast],[e.ast]),{value:e})),nw=VS(e=>MC(Rne(e.ast),{schema:e}));function rw(e,t){return MC(e,{members:t,mapMembers(e,t){let n=e(this.members);return rw(xb(n,this.ast.options,t?.unsafePreserveChecks?this.ast.checks:void 0),n)}})}function iw(e,t){return rw(xb(e,t,void 0),e)}function aw(e){let t=e.map(RC);return MC(xb(t,void 0,void 0),{literals:e,members:t,mapMembers(e){return iw(e(this.members))},pick(e){return aw(e)},transform(e){return iw(t.map((t,n)=>t.transform(e[n])))}})}var ow=VS(e=>iw([e,WC])),sw=VS(e=>iw([e,GC]));function cw(e,t){return n=>MC(ex(n.ast,e.ast,t?jy(t):Ny()),{from:n,to:e})}function lw(){return(e,t)=>_w()(e,{decode:t,encode:$te})}function uw(e){return t=>cw(IC(t),e)(t)}function dw(e){return t=>MC(Yne(t.ast,e),{schema:t})}function fw(e){return Wf(e,e=>Af(()=>su(e,e=>e.issue)))}function pw(e,t){let n=t?.encodingStrategy===`omit`?tne():xy();return t=>FC(LC(t)).pipe(cw(t,{decode:Ey(fw(e)),encode:n}))}function I(e){return RC(e).pipe(dw(T(e)))}function mw(e,t){return P({_tag:I(e),...t})}function hw(){return e=>e}function gw(e,t){return gC(t=>t instanceof e,t)}function _w(){return(e,t)=>new Vy(e.ast,jy(t))}var vw=Fb;function yw(e,t){let n=e.source,r=e.flags,i=r===``?`new RegExp(${xt(n)})`:`new RegExp(${xt(n)}, ${xt(r)})`;return Lb(e,{toCode:()=>({runtime:`Schema.isPattern(${i})`}),...t})}var bw=MC(Ib);function xw(e){let t=hr(e.order),n=e.formatter??xt;return(r,i)=>vw(e=>t(e,r),{expected:`a value greater than or equal to ${n(r)}`,arbitraryConstraint:{order:e.order,minimum:r},...e.annotate?.(r),...i})}function Sw(e){let t=hr(e.order),n=pr(e.order),r=mr(e.order),i=fr(e.order),a=e.formatter??xt;return(o,s)=>{let c=o.exclusiveMinimum?n:t,l=o.exclusiveMaximum?i:r;return vw(e=>c(e,o.minimum)&&l(e,o.maximum),{expected:`a value between ${a(o.minimum)}${o.exclusiveMinimum?` (excluded)`:``} and ${a(o.maximum)}${o.exclusiveMaximum?` (excluded)`:``}`,arbitraryConstraint:{order:e.order,minimum:o.minimum,maximum:o.maximum,...o.exclusiveMinimum&&{exclusiveMinimum:!0},...o.exclusiveMaximum&&{exclusiveMaximum:!0}},...e.annotate?.(o),...s})}}function Cw(e){if(!globalThis.Number.isFinite(e))throw new globalThis.RangeError(`Expected a finite number, got ${xt(e)}`);return e}var ww=xw({order:ur,annotate:e=>({representation:{id:`effect/schema/isGreaterThanOrEqualTo`,payload:{minimum:Cw(e)}},toJsonSchema:()=>({minimum:e}),toCode:()=>({runtime:`Schema.isGreaterThanOrEqualTo(${xt(e)})`})})}),Tw=Sw({order:ur,annotate:e=>{let t=e.exclusiveMinimum?!0:void 0,n=e.exclusiveMaximum?!0:void 0;return{representation:{id:`effect/schema/isBetween`,payload:{minimum:Cw(e.minimum),maximum:Cw(e.maximum),...t&&{exclusiveMinimum:t},...n&&{exclusiveMaximum:n}}},toJsonSchema:()=>({[t?`exclusiveMinimum`:`minimum`]:e.minimum,[n?`exclusiveMaximum`:`maximum`]:e.maximum}),toCode:()=>({runtime:`Schema.isBetween({ minimum: ${xt(e.minimum)}, maximum: ${xt(e.maximum)}, exclusiveMinimum: ${xt(t)}, exclusiveMaximum: ${xt(n)} })`})}}});function Ew(e){return vw(e=>globalThis.Number.isSafeInteger(e),{expected:`an integer`,representation:{id:`effect/schema/isInt`,payload:null},toJsonSchema:()=>({type:`integer`}),toCode:()=>({runtime:`Schema.isInt()`}),arbitraryConstraint:{number:`integer`},...e})}var Dw=KC.check(Ew());function Ow(e,t){return e=Math.max(0,Math.floor(e)),vw(t=>t.length>=e,{expected:`a value with a length of at least ${e}`,representation:{id:`effect/schema/isMinLength`,payload:{minLength:e}},toJsonSchema:({type:t})=>t===`array`?{minItems:e}:{minLength:e},toCode:()=>({runtime:`Schema.isMinLength(${e})`}),[Nv]:!0,arbitraryConstraint:{minLength:e},...t})}function kw(e,t){return e=Math.max(0,Math.floor(e)),vw(t=>t.length<=e,{expected:`a value with a length of at most ${e}`,representation:{id:`effect/schema/isMaxLength`,payload:{maxLength:e}},toJsonSchema:({type:t})=>t===`array`?{maxItems:e}:{maxLength:e},toCode:()=>({runtime:`Schema.isMaxLength(${e})`}),[Nv]:!0,arbitraryConstraint:{maxLength:e},...t})}var Aw=e=>e?.includeStack===!0|(e?.excludeCause===!0?2:0),jw=e=>{switch(e){case 0:return;case 1:return{includeStack:!0};case 2:return{excludeCause:!0};case 3:return{includeStack:!0,excludeCause:!0}}},Mw=[];function Nw(e){let t=Aw(e),n=Mw[t];if(n!==void 0)return n;let r=cT.pipe(cw(UC,_ne(jw(t))));return Mw[t]=r,r}globalThis.RegExp,globalThis.URL;var Pw=N.annotate({expected:`a string that will be decoded as JSON`,contentMediaType:`application/json`});function Fw(e,t){return Pw.pipe(cw(e,vne(t)))}globalThis.File,globalThis.FormData,globalThis.URLSearchParams;var Iw=N.annotate({expected:`a base64 encoded string that will be decoded as Uint8Array`,format:`byte`,contentEncoding:`base64`}),Lw=gw(globalThis.Uint8Array,{representation:{id:`effect/schema/Uint8Array`,payload:null},toCode:()=>({runtime:`Schema.Uint8Array`,Type:`globalThis.Uint8Array`}),expected:`Uint8Array`,toCodecJson:()=>_w()(Iw,Iy)}),Rw=Iw.pipe(cw(Lw,Iy));function zw(e,t){return MC(hC()([e,t],([e,t])=>(n,r,i)=>{if(!Ql(n))return k(new iy(r,n,i));switch(n._tag){case`Fail`:return Qp(qx(e)(n.error,i),{onSuccess:ru,onFailure:e=>oy(r,`error`,e,n,i)});case`Die`:return Qp(qx(t)(n.defect,i),{onSuccess:iu,onFailure:e=>oy(r,`defect`,e,n,i)});case`Interrupt`:return T(n)}},{representation:{id:`effect/schema/CauseReason`,payload:null},toCode:({typeParameters:e})=>({runtime:`Schema.CauseReason(${e[0].runtime}, ${e[1].runtime})`,Type:`Cause.Failure<${e[0].Type}, ${e[1].Type}>`,importDeclarations:[`import * as Cause from "effect/Cause"`]}),expected:`Cause.Failure`,toCodec:([e,t])=>_w()(iw([P({_tag:RC(`Fail`),error:e}),P({_tag:RC(`Die`),defect:t}),P({_tag:RC(`Interrupt`),fiberId:sw(bw)})]),My({decode:e=>{switch(e._tag){case`Fail`:return ru(e.error);case`Die`:return iu(e.defect);case`Interrupt`:return au(e.fiberId)}},encode:e=>{switch(e._tag){case`Fail`:return{_tag:`Fail`,error:e.error};case`Die`:return{_tag:`Die`,defect:e.defect};case`Interrupt`:return{_tag:`Interrupt`,fiberId:e.fiberId}}}}))}).ast,{error:e,defect:t})}function Bw(e,t){return MC(hC()([e,t],([e,t])=>{let n=F(zw(e,t));return(e,t,r)=>Zl(e)?Qp(qx(n)(e.reasons,r),{onSuccess:eu,onFailure:n=>oy(t,`failures`,n,e,r)}):k(new iy(t,e,r))},{representation:{id:`effect/schema/Cause`,payload:null},toCode:({typeParameters:e})=>({runtime:`Schema.Cause(${e[0].runtime}, ${e[1].runtime})`,Type:`Cause.Cause<${e[0].Type}, ${e[1].Type}>`,importDeclarations:[`import * as Cause from "effect/Cause"`]}),expected:`Cause`,toCodec:([e,t])=>_w()(F(zw(e,t)),My({decode:eu,encode:({reasons:e})=>e}))}).ast,{error:e,defect:t})}var Vw=lne({decode:(e,t)=>xr(Yte(e),{onNone:()=>k(new ay({expected:`a valid UTC DateTime string`},e,t)),onSome:e=>T(Xte(e))}),encode:e=>T(Zte(e))}),Hw=-864e13,Uw=864e13;function Ww(e,t,n){let r=Math.max(t,e?.minimum===void 0?t:e.minimum.epochMilliseconds+ +(e.exclusiveMinimum===!0)),i=Math.min(n,e?.maximum===void 0?n:e.maximum.epochMilliseconds-+(e.exclusiveMaximum===!0));return r<=i?[r,i]:[t,n]}function Gw(e,t){return Dw.check(Tw({minimum:e,maximum:t}))}var Kw=gC(e=>Kte(e)&&qte(e),{representation:{id:`effect/schema/DateTimeUtc`,payload:null},toCode:()=>({runtime:`Schema.DateTimeUtc`,Type:`DateTime.Utc`,importDeclarations:[`import * as DateTime from "effect/DateTime"`]}),expected:`DateTime.Utc`,toCodecArbitrary:({constraint:e})=>{let[t,n]=Ww(e,Hw,Uw);return lw()(Gw(t,n),Sy(Jte))},toCodecJson:()=>_w()(N,Vw),toFormatter:()=>e=>e.toString()}),qw=gC($i,{representation:{id:`effect/schema/Duration`,payload:null},toCode:()=>({runtime:`Schema.Duration`,Type:`Duration.Duration`,importDeclarations:[`import * as Duration from "effect/Duration"`]}),expected:`Duration`,toCodecJson:()=>_w()(iw([P({_tag:RC(`Infinity`)}),P({_tag:RC(`NegativeInfinity`)}),P({_tag:RC(`Nanos`),value:JC}),P({_tag:RC(`Millis`),value:Dw})]),My({decode:e=>{switch(e._tag){case`Infinity`:return aa;case`NegativeInfinity`:return oa;case`Nanos`:return sa(e.value);case`Millis`:return ca(e.value)}},encode:e=>{switch(e.value._tag){case`Infinity`:return{_tag:`Infinity`};case`NegativeInfinity`:return{_tag:`NegativeInfinity`};case`Nanos`:return{_tag:`Nanos`,value:e.value.nanos};case`Millis`:return{_tag:`Millis`,value:e.value.millis}}}}))});function Jw(e,t,n){return MC(hC()([e,t,n],([e,t,n])=>{let r=Bw(t,n);return(t,n,i)=>{if(!wu(t))return k(new iy(n,t,i));switch(t._tag){case`Success`:return Qp(qx(e)(t.value,i),{onSuccess:Tu,onFailure:e=>oy(n,`value`,e,t,i)});case`Failure`:return Qp(qx(r)(t.cause,i),{onSuccess:Eu,onFailure:e=>oy(n,`cause`,e,t,i)})}}},{representation:{id:`effect/schema/Exit`,payload:null},toCode:({typeParameters:e})=>({runtime:`Schema.Exit(${e[0].runtime}, ${e[1].runtime}, ${e[2].runtime})`,Type:`Exit.Exit<${e[0].Type}, ${e[1].Type}, ${e[2].Type}>`,importDeclarations:[`import * as Exit from "effect/Exit"`]}),expected:`Exit`,toCodec:([e,t,n])=>_w()(iw([P({_tag:RC(`Success`),value:e}),P({_tag:RC(`Failure`),cause:Bw(t,n)})]),My({decode:e=>e._tag===`Success`?Tu(e.value):Eu(e.cause),encode:e=>ju(e)?{_tag:`Success`,value:e.value}:{_tag:`Failure`,cause:e.cause}}))}).ast,{value:e,error:t,defect:n})}function Yw(e,t){let n=typeof t?.label==`string`?t.label:void 0,r=t?.disallowJsonEncode===!0,i=n===void 0?r?{disallowJsonEncode:!0}:void 0:r?{label:n,disallowJsonEncode:!0}:{label:n},a=n===void 0?void 0:qx(RC(n));return MC(hC()([e],([e])=>(t,n,r)=>KS(t)?$p(a===void 0?D:Zp(a(t.label,r),e=>new ey([`label`],e)),()=>Qp(qx(e)(YS(t),r),{onSuccess:e=>qS(e,{label:t.label}),onFailure:()=>new ry(n,[new ey([`value`],new ay(void 0,t,r))],t,r)})):k(new iy(n,t,r)),{representation:{id:`effect/schema/Redacted`,payload:i??null},toCode:({typeParameters:e})=>({runtime:i===void 0?`Schema.Redacted(${e[0].runtime})`:`Schema.Redacted(${e[0].runtime}, ${xt(i)})`,Type:`Redacted.Redacted<${e[0].Type}>`,importDeclarations:[`import * as Redacted from "effect/Redacted"`]}),expected:`Redacted`,toCodecJson:([e])=>_w()(e,{decode:Sy(e=>qS(e,{label:n})),encode:r?by(e=>`Cannot serialize Redacted`+(br(e)&&typeof e.value.label==`string`?` with label: "${e.value.label}"`:``)):Sy(YS)}),toEquivalence:([e])=>XS(e)}).ast,{value:e})}var Xw=globalThis.Symbol.for(`immer-draftable`),Zw={};function Qw(e,t,n,r,i){let a=tT(n,t,r),o=eT(t),s=class extends e{constructor(...[e,t]){let r=t?.[`~payload`],i=r?.token===Zw?r.value:n.make(e??{},t);super(i,{...t,disableChecks:!0,"~payload":{token:Zw,value:i}})}static[mC]=mC;get[o](){return o}static[Xw]=!0;static identifier=t;static fields=n.fields;static get ast(){return a(this).ast}static pipe(){return b(this,arguments)}static rebuild(e){return a(this).rebuild(e)}static make(e,t){return Ux(a(this))(e??{},t)}static makeOption(e,t){return Hx(a(this))(e??{},t)}static makeEffect(e,t){return a(this).makeEffect(e??{},t)}static annotate(e){return this.rebuild(Wb(this.ast,e))}static annotateKey(e){return this.rebuild(Qb(this.ast,e))}static check(...e){return this.rebuild(Kb(this.ast,e))}static extend(e){return(t,r)=>{let a=nT(t)?t:P(t),o={...n.fields,...a.fields},s=vb(o,n.ast.checks,{identifier:e});return Qw(this,e,XC(Kb(s,a.ast.checks),o),r,i)}}static mapFields(e,t){return n.mapFields(e,t)}};return i!==void 0&&Object.assign(s.prototype,i(t)),s}function $w(e){return new Ay(Sy(t=>new e(t,{"~payload":{token:Zw,value:t}})),xy())}function eT(e){return`~effect/Schema/Class/${e}`}function tT(e,t,n){let r;return i=>{if(r!==void 0)return r;let a=eT(t),o=e=>e instanceof i||C(e,a),s=$w(i);return r=cw(MC(new Ky([e.ast],()=>(e,t,n)=>o(e)?T(e):k(new iy(t,e,n)),{identifier:t,[Iv]:([e])=>({isConstructed:o,link:new Vy(e,s)}),toCodec:([e])=>new Vy(e.ast,s),toEquivalence:([e])=>e,toFormatter:([e])=>t=>`${i.identifier}(${e(t)})`,[Fv]:wb(e.ast),...n})),s)(e)}}function nT(e){return NC(e)}var rT=e=>(t,n)=>Qw(Ea,e,nT(t)?t:P(t),n,e=>({toString(){return`${e}(${xt({...this})})`}})),iT=e=>(t,n)=>Qw(jn,e,nT(t)?t:P(t),n,e=>({name:e})),aT=e=>(t,n,r)=>{let i=nT(n)?n.mapFields(e=>({_tag:I(t),...e}),{unsafePreserveChecks:!0}):mw(t,n);return iT(e??t)(i,r)};function oT(e,t){return xre(Cre(CS(e.ast),t),t)}var sT=SS,cT=MC(Wb(xx,{toCode:()=>({runtime:`Schema.Json`,Type:`Schema.Json`})})),lT=ZC(N,cT),kre=MC(Wb(Sx,{toCode:()=>({runtime:`Schema.MutableJson`,Type:`Schema.MutableJson`})})),uT=`~effect/FileSystem`,dT=jr(`effect/FileSystem`),Are=e=>dT.of({...e,[uT]:uT,exists:t=>ce(e.access(t),Bf(!0),Uf(`PlatformError`,e=>e.reason._tag===`NotFound`?T(!1):k(e))),readFileString:(t,n)=>A(e.readFile(t),e=>Mf({try:()=>new TextDecoder(n).decode(e),catch:e=>pm({module:`FileSystem`,method:`readFileString`,description:`invalid encoding`,cause:e})})),stream:M(function*(t,n){let r=yield*e.open(t,{flag:`r`}),i=n?.offset===void 0?void 0:r_(n.offset);i&&(yield*r.seek(i,`start`));let a=n?.bytesToRead===void 0?void 0:r_(n.bytesToRead),o=BigInt(0),s=Number(BigInt(n?.chunkSize??65536)),c=r.readAlloc(s);return D_(T(A(Ef(()=>a!==void 0&&a<=o?_u():a!==void 0&&a-o<s?r.readAlloc(Number(a-o)):c),xr({onNone:()=>_u(),onSome:e=>(o+=BigInt(e.length),T(Ai(e)))}))))},P_),sink:(t,n)=>ce(e.open(t,{...n,flag:n?.flag??`w`}),j(e=>Bg(t=>e.writeAll(t))),Hg),writeFileString:(t,n,r)=>A(Mf({try:()=>new TextEncoder().encode(n),catch:e=>pm({module:`FileSystem`,method:`writeFileString`,description:`could not encode string`,cause:e})}),n=>e.writeFile(t,n,r))}),fT=`~effect/FileSystem/File`,jre=class extends jr()(`effect/FileSystem/WatchBackend`){},pT=`~effect/Path`,mT=jr(`effect/Path`),Mre=hr(Vl),Nre=e=>Pf(t=>(Xl(t,e),D)),Pre=`~effect/ErrorReporter/ignore`,Fre=`~effect/PrimaryKey`,Ire=Ul,Lre=Wl,Rre=(e,t)=>Sd(Ire,kn(Ss(function*(n){let r=new Set(t?.mergeWithExisting===!0?n.getRef(Ul):[]);for(let t of e)r.add(Qt(t)?yield*t:t);return r}))),zre={"~effect/Match/Matcher":{_input:S,_filters:S,_result:S,_return:S,_flavor:S},_tag:`ValueMatcher`,add(e){return mi(this.value)?this:e._tag===`When`&&e.guard(this.provided)===!0||e._tag===`Not`&&e.guard(this.provided)===!1?hT(this.provided,ui(e.evaluate(this.provided))):this},pipe(){return b(this,arguments)}};function hT(e,t){let n=Object.create(zre);return n.provided=e,n.value=t,n}var gT=(e,t)=>({_tag:`When`,guard:e,evaluate:t}),_T=e=>{if(typeof e==`function`)return e;if(Array.isArray(e)){let t=e.map(_T),n=t.length;return e=>{if(!Array.isArray(e))return!1;for(let r=0;r<n;r++)if(t[r](e[r])===!1)return!1;return!0}}if(typeof e==`object`&&e){let t=Reflect.ownKeys(e).map(t=>[t,_T(e[t])]),n=t.length;return e=>{if(typeof e!=`object`||!e)return!1;for(let r=0;r<n;r++){let[n,i]=t[r];if(!(n in e)||i(e[n])===!1)return!1}return!0}}return t=>t===e},Bre=e=>hT(e,di(e)),Vre=(e,t)=>n=>n.add(gT(_T(e),t)),Hre=e=>(...t)=>{let n=t[t.length-1],r=t.slice(0,-1),i=r.length===1?t=>t!=null&&t[e]===r[0]:t=>t!=null&&r.includes(t[e]);return e=>e.add(gT(i,n))},Ure=e=>t=>{let n=gT(n=>n!=null&&Object.hasOwn(t,n[e]),n=>t[n[e]](n));return e=>e.add(n)},Wre=Hre(`_tag`),Gre=Ure(`_tag`),Kre=(...e)=>{let t=e.length;return n=>{for(let r=0;r<t;r++)if(n===e[r])return!0;return!1}},qre=e=>{if(e._tag===`ValueMatcher`)return e.value;let t=e.cases.length;if(t===1){let t=e.cases[0];return(...n)=>{let r=e.select(...n);return t._tag===`When`&&t.guard(r)===!0||t._tag===`Not`&&t.guard(r)===!1?ui(t.evaluate(r,...n)):di(r)}}return(...n)=>{let r=e.select(...n);for(let i=0;i<t;i++){let t=e.cases[i];if(t._tag===`When`&&t.guard(r)===!0||t._tag===`Not`&&t.guard(r)===!1)return ui(t.evaluate(r,...n))}return di(r)}},vT=`effect/match/Match/exhaustive: absurd`,Jre=e=>{let t=qre(e);if(fi(t)){if(mi(t))return t.success;throw Error(vT)}return(...e)=>{let n=t(...e);if(mi(n))return n.success;throw Error(vT)}},yT=Bre,bT=Vre,xT=Wre,Yre=Gre,ST=Kre,CT=Jre,Xre=`[erd-editor-mcp]`,wT=Rre([Lre(({message:e,cause:t})=>{let n=[...e];t.reasons.length>0&&n.push(mu(t)),console.error(Xre,...n)})]),TT=e=>({fromFileUrl:n=>Mf({try:()=>t.fileURLToPath(n,{windows:e}),catch:e=>new lm({module:`Path`,method:`fromFileUrl`,cause:e})}),toFileUrl:n=>Mf({try:()=>t.pathToFileURL(n,{windows:e}),catch:e=>new lm({module:`Path`,method:`toFileUrl`,cause:e})})});({...e.posix,...TT(!1)}),{...e.win32,...TT(!0)};var Zre=vd(mT)({[pT]:pT,...e,...TT(void 0)}),ET=P({method:aw([`GET`,`POST`,`PATCH`,`PUT`,`DELETE`,`HEAD`,`OPTIONS`,`TRACE`,`QUERY`]),url:N,urlParams:F(ew([N,N])),hash:FC(N),headers:ZC(N,iw([N,Yw(N)]))}).annotate({identifier:`HttpRequestDetails`}),Qre=P({status:Dw,headers:ZC(N,iw([N,Yw(N)]))}).annotate({identifier:`HttpResponseDetails`}),DT=`~effect/ai/AiError/Reason`,OT=()=>tie.pipe(dw(T({})),pw(T({}))),$re=e=>{let t=gt(e),n={};for(let e in t){let r=t[e];Rt(n,e,KS(r)?r.toString():r)}return n},eie=class e extends iT(`effect/ai/AiError/NetworkError`)({_tag:I(`NetworkError`),reason:aw([`TransportError`,`EncodeError`,`InvalidUrlError`]),request:ET,description:FC(N)}){[DT]=DT;get isRetryable(){return this.reason===`TransportError`}static fromRequestError(t){return new e({description:t.description,reason:t._tag,request:{hash:Tr(t.request.hash),headers:$re(t.request.headers),method:t.request.method,url:t.request.url,urlParams:Array.from(t.request.urlParams)}})}get message(){let e=`${this.request.method} ${this.request.url}`,t=this.description?`${this.reason}: ${this.description}`:`${this.reason}: A network error occurred.`;t+=` (${e})`;let n=``;switch(this.reason){case`EncodeError`:n+=`Check that the request body data is properly formatted and matches the expected content type.`;break;case`InvalidUrlError`:n+=`Verify that the URL format is correct and that all required parameters have been provided.`,n+=` Check for any special characters that may need encoding.`;break;case`TransportError`:n+=`Check your network connection and verify that the requested URL is accessible.`}return t+=`\n\n${n}`,t}},tie=ZC(N,ow(kre)),kT=P({promptTokens:FC(Dw),completionTokens:FC(Dw),totalTokens:FC(Dw)}).annotate({identifier:`UsageInfo`}),AT=P({request:ET,response:FC(Qre),body:FC(N)}).annotate({identifier:`HttpContext`}),nie=class extends iT(`effect/ai/AiError/RateLimitError`)({_tag:I(`RateLimitError`),retryAfter:FC(qw),metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!0}get message(){let e=`Rate limit exceeded`;return this.retryAfter&&(e+=`. Retry after ${xa(this.retryAfter)}`),e}},rie=class extends iT(`effect/ai/AiError/QuotaExhaustedError`)({_tag:I(`QuotaExhaustedError`),resetAt:FC(Kw),metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!1}get message(){let e=`Quota exhausted`;return this.resetAt&&(e+=`. Resets at ${this.resetAt}`),`${e}. Check your account billing and usage limits.`}},iie=class extends iT(`effect/ai/AiError/AuthenticationError`)({_tag:I(`AuthenticationError`),kind:aw([`InvalidKey`,`ExpiredKey`,`MissingKey`,`InsufficientPermissions`,`Unknown`]),description:FC(N),metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!1}get message(){let e=`${this.kind}: ${{InvalidKey:`Verify your API key is correct`,ExpiredKey:`Your API key has expired. Generate a new one`,MissingKey:`No API key provided. Set the appropriate environment variable`,InsufficientPermissions:`Your API key lacks required permissions`,Unknown:`Authentication failed. Check your credentials`}[this.kind]}`;return this.description&&(e+=`. ${this.description}`),e}},aie=class extends iT(`effect/ai/AiError/ContentPolicyError`)({_tag:I(`ContentPolicyError`),description:N,metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!1}get message(){return`Content policy violation: ${this.description}`}},oie=class extends iT(`effect/ai/AiError/InvalidRequestError`)({_tag:I(`InvalidRequestError`),parameter:FC(N),constraint:FC(N),description:FC(N),metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!1}get message(){let e=`Invalid request`;return this.parameter&&(e+=`: parameter '${this.parameter}'`),this.constraint&&(e+=` ${this.constraint}`),this.description&&(e+=`. ${this.description}`),e}},sie=class extends iT(`effect/ai/AiError/InternalProviderError`)({_tag:I(`InternalProviderError`),description:N,metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!0}get message(){return`Internal provider error: ${this.description}`}},cie=class e extends iT(`effect/ai/AiError/InvalidOutputError`)({_tag:I(`InvalidOutputError`),description:N,metadata:OT(),usage:FC(kT)}){[DT]=DT;get isRetryable(){return!0}static fromSchemaError(t){return new e({description:t.message})}get message(){return`Invalid output: ${this.description}`}},lie=class e extends iT(`effect/ai/AiError/StructuredOutputError`)({_tag:I(`StructuredOutputError`),description:N,responseText:N,metadata:OT(),usage:FC(kT)}){[DT]=DT;get isRetryable(){return!0}static fromSchemaError(t,n){return new e({description:t.message,responseText:n})}get message(){return`Structured output validation failed: ${this.description}`}},uie=class extends iT(`effect/ai/AiError/UnsupportedSchemaError`)({_tag:I(`UnsupportedSchemaError`),description:N,metadata:OT()}){[DT]=DT;get isRetryable(){return!1}get message(){return`Unsupported schema: ${this.description}`}},die=class extends iT(`effect/ai/AiError/UnknownError`)({_tag:I(`UnknownError`),description:FC(N),metadata:OT(),http:FC(AT)}){[DT]=DT;get isRetryable(){return!1}get message(){return this.description??`Unknown error`}},jT=class extends iT(`effect/ai/AiError/ToolNotFoundError`)({_tag:I(`ToolNotFoundError`),toolName:N,availableTools:F(N)}){[DT]=DT;get isRetryable(){return!0}get message(){let e=this.availableTools.length>0?this.availableTools.join(`, `):`none`;return`Tool '${this.toolName}' not found. Available tools: ${e}`}},MT=class extends iT(`effect/ai/AiError/ToolParameterValidationError`)({_tag:I(`ToolParameterValidationError`),toolName:N,description:N}){[DT]=DT;get isRetryable(){return!0}get message(){return`Invalid parameters for tool '${this.toolName}': ${this.description}`}},NT=class extends iT(`effect/ai/AiError/InvalidToolResultError`)({_tag:I(`InvalidToolResultError`),toolName:N,description:N}){[DT]=DT;get isRetryable(){return!1}get message(){return`Tool '${this.toolName}' returned invalid result: ${this.description}`}},PT=class extends iT(`effect/ai/AiError/ToolResultEncodingError`)({_tag:I(`ToolResultEncodingError`),toolName:N,toolResult:UC,description:N}){[DT]=DT;get isRetryable(){return!1}get message(){return`Failed to encode result for tool '${this.toolName}': ${this.description}`}},fie=iw([nie,rie,iie,aie,oie,sie,eie,cie,lie,uie,die,jT,MT,NT,PT,class extends iT(`effect/ai/AiError/ToolConfigurationError`)({_tag:I(`ToolConfigurationError`),toolName:N,description:N}){[DT]=DT;get isRetryable(){return!1}get message(){return`Invalid configuration for tool '${this.toolName}': ${this.description}`}},class extends iT(`effect/ai/AiError/ToolkitRequiredError`)({_tag:I(`ToolkitRequiredError`),pendingApprovals:F(N),description:FC(N)}){[DT]=DT;get isRetryable(){return!1}get message(){return`Toolkit required to resolve pending tool approvals: ${this.pendingApprovals.join(`, `)}`}},class extends iT(`effect/ai/AiError/InvalidUserInputError`)({_tag:I(`InvalidUserInputError`),description:N}){[DT]=DT;get isRetryable(){return!1}get message(){return`Invalid user input: ${this.description}`}}]),FT=`~effect/ai/AiError`,IT=class extends iT(`effect/ai/AiError/AiError`)({_tag:I(`AiError`),module:N,method:N,reason:fie}){[FT]=FT;cause=this.reason;get isRetryable(){return this.reason.isRetryable}get retryAfter(){return`retryAfter`in this.reason?this.reason.retryAfter:void 0}get message(){return`${this.module}.${this.method}: ${this.reason.message}`}},pie=e=>C(e,FT),mie=e=>C(e,DT),LT=e=>new IT(e),hie=`~effect/ai/Tool`,RT=`~effect/ai/Tool/Dynamic`,gie=e=>C(e,RT),zT=(e,t)=>Object.assign(Object.create(Object.getPrototypeOf(e)),e,t),BT={[hie]:{_Requirements:S},pipe(){return b(this,arguments)},addDependency(){return zT(this)},setParameters(e){return zT(this,{parametersSchema:e,jsonSchema:void 0})},setSuccess(e){return zT(this,{successSchema:e})},setFailure(e){return zT(this,{failureSchema:e})},setNeedsApproval(e){return zT(this,{needsApproval:e})},annotate(e,t){return zT(this,{annotations:Yr(this.annotations,e,t)})},annotateMerge(e){return zT(this,{annotations:ii(this.annotations,e)})}};({...BT});var _ie={...BT,[RT]:RT},vie=e=>{let t=Object.assign(Object.create(BT),e);return t.id=`effect/ai/Tool/${e.name}`,t},yie=e=>{let t=Object.assign(Object.create(_ie),e);return t.id=`effect/ai/Tool/${e.name}`,t},VT=(e,t)=>{let n=t?.success??YC,r=t?.failure??VC;return vie({name:e,description:t?.description,parametersSchema:t?.parameters??GT,successSchema:n,failureSchema:r,failureMode:t?.failureMode??`error`,annotations:qr(),needsApproval:t?.needsApproval})},bie=(e,t)=>{let n=t?.success??UC,r=t?.failure??VC,i=t?.parameters??UC,a=NC(i),o=a?i:UC,s=a?void 0:i;return yie({name:e,description:t?.description,parametersSchema:o,successSchema:n,failureSchema:r,failureMode:t?.failureMode??`error`,annotations:qr(),needsApproval:t?.needsApproval,jsonSchema:s})},xie=e=>{if(e.description!==void 0)return e.description;if(NC(e.parametersSchema))return vx(e.parametersSchema.ast)},Sie=class extends jr()(`effect/ai/Tool/Title`){},Cie=class extends jr()(`effect/ai/Tool/Meta`){},HT=si(`effect/ai/Tool/Readonly`,{defaultValue:ie}),UT=si(`effect/ai/Tool/Destructive`,{defaultValue:re}),wie=si(`effect/ai/Tool/Idempotent`,{defaultValue:ie}),Tie=si(`effect/ai/Tool/OpenWorld`,{defaultValue:re}),WT=si(`effect/ai/Tool/Strict`,{defaultValue:()=>void 0}),Eie=e=>$r(e.annotations,WT),Die=P({type:aw([`execution-denied`,`execution-interrupted`]),reason:N}).annotate({identifier:`ToolExecutionFailure`}),Oie=e=>iw([IT,e.failureSchema,Die]),GT=ZC(N,VC);function KT(e,t){let n=hS(e);if(n===void 0)throw Error(`Unsupported reference ${JSON.stringify(e)}`);if(!Object.hasOwn(t,n))throw Error(`Invalid reference ${JSON.stringify(e)}`);return t[n]}function qT(e){return typeof e.schema.$ref==`string`?{...e,schema:KT(e.schema.$ref,e.definitions)}:e}var JT=`~effect/ai/Toolkit`,YT=si(`effect/ai/Toolkit/FailureOrigin`,{defaultValue:()=>`result`}),XT=(e,t)=>xu(tu(e),Jr(YT,t)),ZT={...Bn({label:`Toolkit`,evaluate:M(function*(e){let t=this.tools,n=e.context,r=new WeakMap,i=e=>{let t=r.get(e);if(xe(t)){let i=n.mapUnsafe.get(e.id),a=NC(e.parametersSchema)?wC(e.parametersSchema):e=>T(e),o=OC(e.successSchema),s=OC(Oie(e));t={context:i.context,handler:i.handler,decodeParameters:a,encodeResult:(e,t)=>t?s(e):o(e)},r.set(e,t)}return t};return{tools:t,handle:M(function*(e,n,r,a){let o=Object.hasOwn(t,e)?t[e]:void 0;if(yield*jp({tool:e,parameters:n}),xe(o))return yield*LT({module:`Toolkit`,method:`${e}.handle`,reason:new jT({toolName:e,availableTools:Object.keys(t)})});let s=i(o),c=(t,n)=>s.encodeResult(t,n).pipe(Kf(n=>LT({module:`Toolkit`,method:`${e}.handle`,reason:new PT({toolName:e,toolResult:t,description:n.message})}))),l=yield*Lf(s.decodeParameters(n,a));if(pi(l)){let t=LT({module:`Toolkit`,method:`${e}.handle`,reason:new MT({toolName:e,description:l.failure.message})});return o.failureMode===`error`?yield*kf(XT(t,`parameters`)):E_(j(c(t,!0),e=>({result:t,isFailure:!0,failureOrigin:`parameters`,preliminary:!1,encodedResult:e})))}let u=l.success,d=yield*lh(),f={toolCallId:r,preliminary:e=>Vf(fh(d,{result:e,isFailure:!1,preliminary:!0}))},p=yield*s.handler(u,f).pipe(A(e=>fh(d,{result:e,isFailure:!1,preliminary:!1})),fp(e=>ii(s.context,e)),ap({onFailure:e=>gh(d,e),onSuccess:()=>vh(d)}),Ip),m=t=>vC(t)?LT({module:`Toolkit`,method:`${e}.handle`,reason:new NT({toolName:e,description:`Tool handler returned invalid result: ${t.message}`})}):mie(t)?LT({module:`Toolkit`,method:`${e}.handle`,reason:t}):t;return N_(d).pipe(z_(e=>{let t=m(e),n=vC(e)?`result`:`handler`;return o.failureMode===`error`?M_(XT(t,n)):A_({result:t,isFailure:!0,failureOrigin:n,preliminary:!1})}),I_(M(function*(e){let t=yield*c(e.result,e.isFailure);return{...e,encodedResult:t}})),G_(gm(p)))})}})}),[JT]:JT,of:S,toHandlers(e){return O({self:this},function*(){let t=yield*sp(),n=bf(e)?yield*e:e,r=new Map;for(let[e,i]of Object.entries(n)){let n=Object.hasOwn(this.tools,e)?this.tools[e]:void 0;n!==void 0&&r.set(n.id,{name:e,handler:i,context:t})}return Wr(r)})},toLayer(e){return wd(this.toHandlers(e))},toJSON(){return{_id:`effect/ai/Toolkit`,tools:Array.from(Object.values(this.tools)).map(e=>e.name)}}},QT=e=>Object.assign(function(){},ZT,{tools:e}),$T=(...e)=>{let t={};for(let n of e)Rt(t,n.name,n);return t},eE=(...e)=>QT($T(...e)),tE=`~effect/rpc/RpcSchema/StreamSchema`;function nE(e){return C(e,tE)}function rE(e){return nE(e)?_r({success:e.success,error:e.error}):gr()}var iE=gC(w_);function aE(e,t){return MC(iE.ast,{[tE]:tE,success:e,error:t})}var oE=class extends jr()(`effect/rpc/RpcSchema/ClientAbort`){static annotation=this.context(!0).pipe(Yr(Cu,{name:`ClientAbort`,stack:oe,parent:void 0}))},sE=`~effect/rpc/Rpc`,cE=class{id;annotations;constructor(e){this.id=e,this.annotations=qr()}annotate(e,t){return this.annotations=Yr(this.annotations,e,t),this}},lE={[sE]:sE,pipe(){return b(this,arguments)},setSuccess(e){return uE({_tag:this._tag,payloadSchema:this.payloadSchema,successSchema:e,errorSchema:this.errorSchema,defectSchema:this.defectSchema,annotations:this.annotations,middlewares:this.middlewares})},setError(e){return uE({_tag:this._tag,payloadSchema:this.payloadSchema,successSchema:this.successSchema,errorSchema:e,defectSchema:this.defectSchema,annotations:this.annotations,middlewares:this.middlewares})},setPayload(e){return uE({_tag:this._tag,payloadSchema:NC(e)?e:P(e),successSchema:this.successSchema,errorSchema:this.errorSchema,defectSchema:this.defectSchema,annotations:this.annotations,middlewares:this.middlewares})},middleware(e){return uE({_tag:this._tag,payloadSchema:this.payloadSchema,successSchema:this.successSchema,errorSchema:this.errorSchema,defectSchema:this.defectSchema,annotations:this.annotations,middlewares:new Set([...this.middlewares,e])})},prefix(e){return uE({_tag:`${e}${this._tag}`,payloadSchema:this.payloadSchema,successSchema:this.successSchema,errorSchema:this.errorSchema,defectSchema:this.defectSchema,annotations:this.annotations,middlewares:this.middlewares})},annotate(e,t){return uE({_tag:this._tag,payloadSchema:this.payloadSchema,successSchema:this.successSchema,errorSchema:this.errorSchema,defectSchema:this.defectSchema,middlewares:this.middlewares,annotations:Yr(this.annotations,e,t)})},annotateMerge(e){return uE({_tag:this._tag,payloadSchema:this.payloadSchema,successSchema:this.successSchema,errorSchema:this.errorSchema,defectSchema:this.defectSchema,middlewares:this.middlewares,annotations:ii(this.annotations,e)})}},uE=e=>{function t(){}return Object.setPrototypeOf(t,lE),Object.assign(t,e),t.key=`effect/rpc/Rpc/${e._tag}`,t},L=(e,t)=>{let n=t?.success??YC,r=t?.error??VC,i=t?.defect??Nw(),a;return a=t?.primaryKey?class extends rT(`effect/rpc/Rpc/${e}`)(t.payload){[Fre](){return t.primaryKey(this)}}:NC(t?.payload)?t?.payload:t?.payload?P(t?.payload):YC,uE({_tag:e,payloadSchema:a,successSchema:t?.stream?aE(n,r):n,errorSchema:t?.stream?VC:r,defectSchema:i,annotations:qr(),middlewares:new Set})},dE=new WeakMap,fE=e=>{if(dE.has(e))return dE.get(e);let t=e,n=new Set([t.errorSchema]),r=rE(t.successSchema);br(r)&&n.add(r.value.error);for(let e of t.middlewares)n.add(e.error);let i=Jw(br(r)?YC:t.successSchema,iw([...n]),t.defectSchema);return dE.set(e,i),i},pE=`~effect/rpc/Rpc/Wrapper`,mE=e=>pE in e,hE={add(...e){let t=new Map(this.requests);for(let n of e)t.set(n._tag,n);return gE({requests:t,annotations:this.annotations})},merge(...e){let t=new Map(this.requests),n=new Map(this.annotations.mapUnsafe);for(let r of e){for(let[e,n]of r.requests)t.set(e,n);for(let[e,t]of r.annotations.mapUnsafe)n.set(e,t)}return gE({requests:t,annotations:Wr(n)})},omit(...e){let t=new Map(this.requests);for(let n of e)t.delete(n);return gE({requests:t,annotations:this.annotations})},middleware(e){let t=new Map;for(let[n,r]of this.requests)t.set(n,r.middleware(e));return gE({requests:t,annotations:this.annotations})},toHandlers(e){let t=this;return O(function*(){let n=yield*sp(),r=bf(e)?yield*e:e,i=new Map;return t.requests.forEach((e,t)=>{i.set(e.key,{tag:e._tag,handler:r[t],context:n})}),Wr(i)})},prefix(e){let t=new Map;for(let n of this.requests.values()){let r=n.prefix(e);t.set(r._tag,r)}return gE({requests:t,annotations:this.annotations})},toLayer(e){return wd(this.toHandlers(e))},of:S,toLayerHandler(e,t){let n=this;return wd(O(function*(){let r=yield*sp(),i=bf(t)?yield*t:t,a=new Map,o=n.requests.get(e);return a.set(o.key,{handler:i,context:r}),Wr(a)}))},accessHandler(e){return cp(t=>{let n=this.requests.get(e),{handler:r,context:i}=Zr(t,n.key);return T((e,t)=>{t.rpc=n;let a=r(e,t),o=mE(a)?a.value:a;return bf(o)?lp(o,i):K_(o,i)})})},annotate(e,t){return gE({requests:this.requests,annotations:Yr(this.annotations,e,t)})},annotateRpcs(e,t){return this.annotateRpcsMerge(Jr(e,t))},annotateMerge(e){return gE({requests:this.requests,annotations:ii(this.annotations,e)})},annotateRpcsMerge(e){let t=new Map;for(let[n,r]of this.requests)t.set(n,r.annotateMerge(ii(e,r.annotations)));return gE({requests:t,annotations:this.annotations})}},gE=e=>Object.assign(function(){},hE,{requests:e.requests,annotations:e.annotations}),_E=(...e)=>gE({requests:new Map(e.map(e=>[e._tag,e])),annotations:qr()}),vE=`~effect/rpc/RpcMiddleware`,yE=()=>(e,t)=>{let n=Pt(),r;n!==0&&(Ft(2),r=new globalThis.Error,Ft(n));function i(){}let a=i;return Object.setPrototypeOf(i,Object.getPrototypeOf(jr(e))),i.key=e,Object.defineProperty(i,"stack",{get(){return r?.stack}}),a[vE]=vE,a.error=t?.error??VC,a.requiredForClient=t?.requiredForClient??!1,i},bE=(e,t)=>{let n=E(t);return PC(e).pipe(uw({decode:Ey(n),encode:xy()}),dw(n))},R=e=>PC(e).pipe(cw(FC(e),{decode:xy(),encode:wy(Or(wr))})),xE=iw([N,bw]),SE=iw([N,bw]),CE=class extends hw()(P({_meta:R(QC(P({progressToken:R(SE)}),[lT]))})){},wE=class extends hw()(P({_meta:R(lT)})){},TE=class extends hw()(P({_meta:R(lT)})){},EE=N,DE=class extends hw()(P({...CE.fields,cursor:R(EE)})){},OE=class extends hw()(P({...wE.fields,nextCursor:R(EE)})){},kE=aw([`user`,`assistant`]),AE=class extends hw()(P({audience:R(F(kE)),priority:R(bw.check(Tw({minimum:0,maximum:1}))),lastModified:R(N)})){},jE=class extends rT(`@effect/ai/McpSchema/Icon`)({src:N,mimeType:R(N),sizes:R(F(N)),theme:R(aw([`light`,`dark`]))}){},ME=class extends hw()(P({name:N,title:R(N),version:N,icons:R(F(jE)),description:R(N),websiteUrl:R(N)})){},NE=class extends rT(`@effect/ai/McpSchema/ClientCapabilities`)({experimental:R(ZC(N,P({}))),extensions:R(ZC(BC([N,`/`,N]),cT)),roots:R(P({listChanged:R(qC)})),sampling:R(P({context:R(P({})),tools:R(P({}))})),elicitation:R(P({form:R(P({})),url:R(P({}))}))}){},PE=class extends hw()(P({experimental:R(ZC(N,P({}))),extensions:R(ZC(BC([N,`/`,N]),cT)),logging:R(P({})),completions:R(P({})),prompts:R(P({listChanged:R(qC)})),resources:R(P({subscribe:R(qC),listChanged:R(qC)})),tools:R(P({listChanged:R(qC)}))})){},FE=class extends rT(`@effect/ai/McpSchema/McpErrorBase`)({code:Dw,message:N,data:R(HC)}){},IE=-32600,LE=-32601,RE=-32602,zE=-32603,BE=-32700,VE=-32020,HE=class extends iT(`effect/ai/McpSchema/ParseError`)({...FE.fields,_tag:I(`ParseError`),code:I(BE)}){},UE=class extends iT(`effect/ai/McpSchema/InvalidRequest`)({...FE.fields,_tag:I(`InvalidRequest`),code:I(IE)}){},WE=class extends iT(`effect/ai/McpSchema/MethodNotFound`)({...FE.fields,_tag:I(`MethodNotFound`),code:I(LE)}){},GE=class extends iT(`effect/ai/McpSchema/InvalidParams`)({...FE.fields,_tag:I(`InvalidParams`),code:I(RE)}){},KE=class e extends iT(`effect/ai/McpSchema/InternalError`)({...FE.fields,_tag:I(`InternalError`),code:I(zE)}){static notImplemented=new e({message:`Not implemented`})},qE=iw([HE,UE,WE,GE,KE,FE]),JE=class extends L(`ping`,{success:P({}),error:qE,payload:sw(CE)}){},YE=class extends hw()(P({...wE.fields,protocolVersion:N,capabilities:PE,serverInfo:ME,instructions:R(N)})){},XE=class extends L(`initialize`,{success:YE,error:qE,payload:{...CE.fields,protocolVersion:N,capabilities:NE,clientInfo:ME}}){},ZE=class extends L(`notifications/initialized`,{payload:sw(TE)}){},QE=class extends L(`notifications/cancelled`,{payload:{...TE.fields,requestId:xE,reason:R(N)}}){},$E=class extends L(`notifications/progress`,{payload:{...TE.fields,progressToken:SE,progress:bw,total:R(bw),message:R(N)}}){},eD=class extends rT(`@effect/ai/McpSchema/Resource`)({uri:N,name:N,title:R(N),description:R(N),mimeType:R(N),annotations:R(AE),icons:R(F(jE)),size:R(Dw),_meta:R(lT)}){},tD=class extends rT(`@effect/ai/McpSchema/ResourceTemplate`)({uriTemplate:N,name:N,title:R(N),description:R(N),mimeType:R(N),annotations:R(AE),icons:R(F(jE)),_meta:R(lT)}){},nD=class extends hw()(P({uri:N,mimeType:R(N),_meta:R(lT)})){},rD=class extends hw()(P({...nD.fields,text:N})){},iD=class extends hw()(P({...nD.fields,blob:Rw})){},aD=class extends rT(`@effect/ai/McpSchema/ListResourcesResult`)({...OE.fields,resources:F(eD)}){},oD=class extends L(`resources/list`,{success:aD,error:qE,payload:sw(DE)}){},sD=class extends rT(`@effect/ai/McpSchema/ListResourceTemplatesResult`)({...OE.fields,resourceTemplates:F(tD)}){},cD=class extends L(`resources/templates/list`,{success:sD,error:qE,payload:sw(DE)}){},lD=class extends hw()(P({...wE.fields,contents:F(iw([rD,iD]))})){},uD=class extends L(`resources/read`,{success:lD,error:qE,payload:{...CE.fields,uri:N}}){},dD=class extends L(`notifications/resources/list_changed`,{payload:sw(TE)}){},fD=class extends L(`resources/subscribe`,{success:P({}),error:qE,payload:{...CE.fields,uri:N}}){},pD=class extends L(`resources/unsubscribe`,{success:P({}),error:qE,payload:{...CE.fields,uri:N}}){},mD=class extends L(`notifications/resources/updated`,{payload:{...TE.fields,uri:N}}){},hD=class extends hw()(P({name:N,title:R(N),description:R(N),required:R(qC)})){},gD=class extends rT(`@effect/ai/McpSchema/Prompt`)({name:N,title:R(N),description:R(N),arguments:R(F(hD)),icons:R(F(jE)),_meta:R(lT)}){},_D=class extends hw()(P({type:I(`text`),text:N,annotations:R(AE),_meta:R(lT)})){},vD=class extends hw()(P({type:I(`image`),data:Rw,mimeType:N,annotations:R(AE),_meta:R(lT)})){},yD=class extends hw()(P({type:I(`audio`),data:Rw,mimeType:N,annotations:R(AE),_meta:R(lT)})){},bD=iw([_D,vD,yD,class extends hw()(P({type:I(`resource`),resource:iw([rD,iD]),annotations:R(AE),_meta:R(lT)})){},class extends hw()(P({...eD.fields,type:I(`resource_link`)})){}]),xD=class extends hw()(P({role:kE,content:bD})){},SD=class extends rT(`@effect/ai/McpSchema/ListPromptsResult`)({...OE.fields,prompts:F(gD)}){},CD=class extends L(`prompts/list`,{success:SD,error:qE,payload:sw(DE)}){},wD=class extends rT(`@effect/ai/McpSchema/GetPromptResult`)({...wE.fields,messages:F(xD),description:R(N)}){},TD=class extends L(`prompts/get`,{success:wD,error:qE,payload:{...CE.fields,name:N,title:R(N),arguments:R(ZC(N,N))}}){},ED=class extends L(`notifications/prompts/list_changed`,{payload:sw(TE)}){},DD=class extends hw()(P({title:R(N),readOnlyHint:bE(qC,ie),destructiveHint:bE(qC,re),idempotentHint:bE(qC,ie),openWorldHint:bE(qC,re)})){},OD=QC(P({type:RC(`object`),properties:R(ZC(N,lT)),required:R(F(N))}),[lT]),kD=lT,AD=class extends rT(`@effect/ai/McpSchema/Tool`)({name:N,title:R(N),description:R(N),inputSchema:OD,outputSchema:R(kD),annotations:R(DD),icons:R(F(jE)),_meta:R(lT)}){},jD=class extends rT(`@effect/ai/McpSchema/ListToolsResult`)({...OE.fields,tools:F(AD)}){},MD=class extends L(`tools/list`,{success:jD,error:qE,payload:sw(DE)}){},ND=class extends rT(`@effect/ai/McpSchema/CallToolResult`)({...wE.fields,content:F(bD),structuredContent:R(cT),isError:R(qC)}){},PD=class extends L(`tools/call`,{success:ND,error:qE,payload:{...CE.fields,name:N,arguments:bE(ZC(N,HC),()=>({}))}}){},FD=class extends L(`notifications/tools/list_changed`,{payload:sw(TE)}){},ID=aw([`debug`,`info`,`notice`,`warning`,`error`,`critical`,`alert`,`emergency`]),LD=class extends L(`logging/setLevel`,{payload:{...CE.fields,level:ID},success:P({}),error:qE}){},RD=class extends L(`notifications/message`,{payload:P({...TE.fields,level:ID,logger:R(N),data:HC})}){},zD=iw([_D,vD,yD,class extends rT(`@effect/ai/McpSchema/ToolUseContent`)({type:I(`tool_use`),id:N,name:N,input:ZC(N,UC),_meta:R(lT)}){},class extends rT(`@effect/ai/McpSchema/ToolResultContent`)({type:I(`tool_result`),toolUseId:N,content:F(bD),structuredContent:R(cT),isError:R(qC),_meta:R(lT)}){}]),BD=class extends hw()(P({role:kE,content:iw([zD,F(zD)]),_meta:R(lT)})){},VD=class extends rT(`@effect/ai/McpSchema/ToolChoice`)({mode:R(aw([`auto`,`required`,`none`]))}){},HD=class extends hw()(P({name:R(N)})){},UD=class extends rT(`@effect/ai/McpSchema/ModelPreferences`)({hints:R(F(HD)),costPriority:R(bw.check(Tw({minimum:0,maximum:1}))),speedPriority:R(bw.check(Tw({minimum:0,maximum:1}))),intelligencePriority:R(bw.check(Tw({minimum:0,maximum:1})))}){},WD=class extends rT(`@effect/ai/McpSchema/CreateMessageResult`)({role:kE,content:iw([zD,F(zD)]),_meta:R(lT),model:N,stopReason:R(N)}){},GD=class extends L(`sampling/createMessage`,{success:WD,error:qE,payload:{messages:F(BD),modelPreferences:R(P(UD.fields)),systemPrompt:R(N),includeContext:R(aw([`none`,`thisServer`,`allServers`])),temperature:R(bw),maxTokens:Dw,stopSequences:R(F(N)),metadata:R(ZC(N,UC)),tools:R(F(P(AD.fields))),toolChoice:R(P(VD.fields))}}){},KD=class extends hw()(P({type:I(`ref/resource`),uri:N})){},qD=class extends hw()(P({type:I(`ref/prompt`),name:N,title:R(N)})){},JD=class e extends hw()(P({...wE.fields,completion:P({values:F(N),total:R(Dw),hasMore:R(qC)})})){static empty=e.make({completion:{values:[],total:0,hasMore:!1}})},YD=class extends L(`completion/complete`,{success:JD,error:qE,payload:P({ref:iw([qD,KD]),argument:P({name:N,value:N}),context:bE(P({arguments:bE(ZC(N,N),()=>({}))}),()=>({arguments:{}}))})}){},XD=class extends rT(`@effect/ai/McpSchema/Root`)({uri:N,name:R(N),_meta:R(lT)}){},ZD=class extends rT(`@effect/ai/McpSchema/ListRootsResult`)({roots:F(XD)}){},QD=class extends L(`roots/list`,{success:ZD,error:qE,payload:sw(CE)}){},$D=class extends L(`notifications/roots/list_changed`,{payload:sw(TE)}){},eO=class extends rT(`@effect/ai/McpSchema/ElicitationString`)({type:I(`string`),title:R(N),description:R(N),minLength:R(Dw),maxLength:R(Dw),format:R(aw([`email`,`uri`,`date`,`date-time`])),default:R(N)}){},tO=class extends rT(`@effect/ai/McpSchema/ElicitationNumber`)({type:aw([`number`,`integer`]),title:R(N),description:R(N),minimum:R(bw),maximum:R(bw),default:R(bw)}){},nO=class extends rT(`@effect/ai/McpSchema/ElicitationBoolean`)({type:I(`boolean`),title:R(N),description:R(N),default:R(qC)}){},rO=iw([class extends rT(`@effect/ai/McpSchema/UntitledSingleSelectEnum`)({type:I(`string`),title:R(N),description:R(N),enum:F(N),default:R(N)}){},class extends rT(`@effect/ai/McpSchema/TitledSingleSelectEnum`)({type:I(`string`),title:R(N),description:R(N),oneOf:F(P({const:N,title:N})),default:R(N)}){}]),iO=iw([class extends rT(`@effect/ai/McpSchema/UntitledMultiSelectEnum`)({type:I(`array`),title:R(N),description:R(N),minItems:R(Dw),maxItems:R(Dw),items:P({type:I(`string`),enum:F(N)}),default:R(F(N))}){},class extends rT(`@effect/ai/McpSchema/TitledMultiSelectEnum`)({type:I(`array`),title:R(N),description:R(N),minItems:R(Dw),maxItems:R(Dw),items:P({anyOf:F(P({const:N,title:N}))}),default:R(F(N))}){}]),aO=iw([iw([class extends rT(`@effect/ai/McpSchema/LegacyTitledEnum`)({type:I(`string`),title:R(N),description:R(N),enum:F(N),enumNames:R(F(N)),default:R(N)}){},rO,iO]),eO,tO,nO]),oO=P({$schema:R(N),type:I(`object`),properties:ZC(N,aO),required:R(F(N))}),sO=iw([class extends rT(`@effect/ai/McpSchema/ElicitRequestFormParams`)({...CE.fields,mode:R(RC(`form`)),message:N,requestedSchema:oO}){},class extends rT(`@effect/ai/McpSchema/ElicitRequestURLParams`)({...CE.fields,mode:RC(`url`),message:N,elicitationId:N,url:N}){}]),cO=iw([class extends rT(`@effect/ai/McpSchema/ElicitAcceptResult`)({...wE.fields,action:RC(`accept`),content:R(ZC(N,iw([N,bw,qC,F(N)])))}){},class extends rT(`@effect/ai/McpSchema/ElicitDeclineResult`)({...wE.fields,action:aw([`cancel`,`decline`])}){}]),lO=class extends L(`elicitation/create`,{success:cO,error:qE,payload:sO}){},uO=class extends L(`notifications/elicitation/complete`,{payload:{elicitationId:N}}){};iT(`@effect/ai/McpSchema/ElicitationDeclined`)({_tag:I(`ElicitationDeclined`),request:lO.payloadSchema,cause:R(Nw())});var dO=class extends Oa(`McpReverseOperationUnsupported`){},fO=class extends Oa(`McpReverseOperationError`){},pO=class extends jr()(`effect/ai/McpSchema/McpRequestContext`){},mO=class extends jr()(`effect/ai/McpSchema/McpServerClient`){},hO=class extends yE()(`effect/ai/McpSchema/McpServerClientMiddleware`){},gO=class extends _E(JE,XE,YD,LD,TD,CD,oD,cD,uD,fD,pD,PD,MD).middleware(hO){},_O=class extends _E(QE,$E,ZE,$D){};gO.merge(_O),_E(JE,GD,QD,lO);var vO=class extends _E(QE,$E,RD,mD,dD,FD,ED,uO){},yO=class extends jr()(`effect/unstable/ai/McpSchema/EnabledWhen`){},bO={Complete:e=>({_tag:`Complete`,value:e}),InputRequired:e=>({_tag:`InputRequired`,...e})},xO=class extends Oa(`ResourceNotFound`){},SO=class extends Oa(`ToolNotFound`){},CO=class extends Oa(`InvalidToolInput`){},wO=class extends Oa(`InvalidToolContinuation`){},TO=class extends Oa(`ToolExecutionError`){},EO=class extends Oa(`UnsupportedByProtocol`){},DO=class extends Oa(`PromptNotFound`){},OO=Da(),kO=Da(),AO=E(()=>{let e=new Map,t=[],n=[],r=new Map,i=new Map;return{tools:{register:t=>E(()=>{e.set(t.descriptor.name,t)}),list:t=>E(()=>{let n=[];for(let r of e.values())r.isVisible(t)&&n.push(r.descriptor);return n}),call:(t,n)=>Ef(()=>{let r=e.get(t.name);return r===void 0||!r.isVisible(n.protocol)?new SO({name:t.name}):r.handle(t,n)})},resources:{register:e=>E(()=>{let n=t.findIndex(t=>t.descriptor.uri===e.descriptor.uri);n===-1?t.push(e):t[n]=e}),registerTemplate:e=>E(()=>{let t=n.findIndex(t=>t.descriptor.uriTemplate===e.descriptor.uriTemplate);t===-1?n.push(e):n[t]=e}),list:e=>E(()=>t.filter(t=>t.isVisible(e)).map(e=>e.descriptor)),listTemplates:e=>E(()=>n.filter(t=>t.isVisible(e)).map(e=>e.descriptor)),read:M(function*(e,r){let i=t.find(t=>t.descriptor.uri===e);if(i!==void 0&&i.isVisible(r.protocol))return yield*i.read(r);for(let t of n){let n=t.match(e);if(n!==void 0&&t.isVisible(r.protocol))return yield*t.read(e,n,r)}return yield*new xO({uri:e})})},prompts:{register:e=>E(()=>{r.set(e.descriptor.name,e)}),list:e=>E(()=>Array.from(r.values()).filter(t=>t.isVisible(e)).map(e=>e.descriptor)),get:M(function*(e,t,n){let i=r.get(e);return i===void 0||!i.isVisible(n.protocol)?yield*new DO({name:e}):yield*i.get(t,n)})},completions:{register:(e,t)=>E(()=>{i.set(e,t)}),complete:M(function*(e,t){let n=e.reference.type===`prompt`?`prompt/${e.reference.name}/${e.argument.name}`:`resource/${e.reference.uriTemplate}/${e.argument.name}`,r=i.get(n);if(r===void 0)return yield*new GE({message:`Unknown completion reference or argument`});let a=yield*r(e,t),o=uee(a.values,100);return{...a,values:o,hasMore:a.hasMore===!0||o.length<a.values.length}})},registrationPresence:E(()=>({tools:e.size>0,resources:t.length>0||n.length>0,prompts:r.size>0}))}}),jO=`~effect/http/HttpBody`;Oa(`HttpBodyError`);var MO=class{[jO];constructor(){this[jO]=jO}[kt](){return this.toJSON()}toString(){return xt(this,{ignoreToString:!0})}},NO=new class extends MO{_tag=`Empty`;toJSON(){return{_id:`effect/HttpBody`,_tag:`Empty`}}},PO=class extends MO{_tag=`Uint8Array`;contentType;contentLength;text;_body;constructor(e,t,n,r){super(),this._body=e,this.text=r,this.contentType=t,this.contentLength=n}get body(){return this._body??=LO(this.text)}toJSON(){return{_id:`effect/HttpBody`,_tag:`Uint8Array`,body:this.contentType.startsWith(`text/`)||this.contentType.endsWith(`json`)?new TextDecoder().decode(this.body):`Uint8Array(${this.body.length})`,contentType:this.contentType,contentLength:this.contentLength}}},FO=new TextEncoder,IO=globalThis.Buffer,LO=IO===void 0?e=>FO.encode(e):e=>IO.from(e,`utf8`),RO=(e,t)=>{if(typeof e!=`string`&&(e=e===void 0?``:String(e)),IO!==void 0)return new PO(void 0,t??`text/plain`,IO.byteLength(e,`utf8`),e);let n=FO.encode(e);return new PO(n,t??`text/plain`,n.length,e)},zO=(e,t)=>RO(JSON.stringify(e),t??`application/json`);Oa(`HttpClientError`),Oa(`TransportError`),Oa(`EncodeError`),Oa(`InvalidUrlError`),Oa(`StatusCodeError`),Oa(`DecodeError`),Oa(`EmptyBodyError`),iT(`~effect/http/HttpClientError`)({_tag:I(`HttpError`),kind:aw([`EncodeError`,`DecodeError`,`TransportError`,`InvalidUrlError`,`StatusCodeError`,`EmptyBodyError`]),cause:FC(Nw())}),Oa(`UrlError`),{...Mt};var BO=`~effect/socket/Socket`,VO=jr(`effect/socket/Socket`),HO=e=>VO.of({[BO]:BO,reader:e.reader,writer:e.writer}),UO=(e,t)=>j(e.reader,({pull:e})=>{let n=new TextDecoder(t);return j(e,e=>{let t=Array(e.length);for(let r=0;r<e.length;r++){let i=e[r];t[r]=typeof i==`string`?i:n.decode(i)}return t})}),WO=`~effect/socket/Socket/CloseEvent`,GO=class{[WO];code;reason;constructor(e=1e3,t){this[WO]=WO,this.code=e,this.reason=t}toString(){return this.reason?`${this.code}: ${this.reason}`:`${this.code}`}},KO=e=>C(e,WO),qO=`~effect/socket/Socket/SocketError`,JO=e=>C(e,qO),YO=class extends iT(`effect/socket/Socket/SocketReadError`)({_tag:I(`SocketReadError`),cause:Nw()}){message=`An error occurred during Read`},XO=class extends iT(`effect/socket/Socket/SocketWriteError`)({_tag:I(`SocketWriteError`),cause:Nw()}){message=`An error occurred during Write`},ZO=class extends iT(`effect/socket/Socket/SocketOpenError`)({_tag:I(`SocketOpenError`),kind:aw([`Unknown`,`Timeout`]),cause:Nw()}){get message(){return this.kind===`Timeout`?`timeout waiting for "open"`:`An error occurred during Open`}},QO=class e extends iT(`effect/socket/Socket/SocketUpgradeError`)({_tag:I(`SocketUpgradeError`),cause:FC(Nw())}){static unsupported=()=>k(new tk({reason:new e({})}));get message(){return this.cause===void 0?`Socket does not support TLS upgrade`:`An error occurred during TLS upgrade`}},$O=class extends iT(`effect/socket/Socket/SocketCloseError`)({_tag:I(`SocketCloseError`),code:Dw,closeReason:FC(N)}){get message(){return this.closeReason?`${this.code}: ${this.closeReason}`:`${this.code}`}},ek=iw([YO,XO,ZO,QO,$O]),tk=class extends aT(qO)(`SocketError`,{_tag:I(`SocketError`),reason:ek}){constructor(e){`cause`in e.reason?super({...e,cause:e.reason.cause}):super(e)}[qO]=qO;static is(e){return JO(e)}message=this.reason.message};jr()(`~effect/socket/Socket/WebSocket`),jr()(`@effect/platform/Socket/WebSocketConstructor`);var nk=class extends jr()(`effect/workers/Transferable/Collector`){},rk=()=>{let e=[],t=t=>{e.push(...t)},n=()=>e,r=()=>{let t=e;return e=[],t};return nk.of({addAllUnsafe:t,addAll:e=>E(()=>t(e)),readUnsafe:n,read:E(n),clearUnsafe:r,clear:E(r)})},ik=e=>e,ak=e=>({_tag:`Defect`,defect:e}),ok={_tag:`Pong`},sk=sT,ck,lk=e=>(ck??=new TextDecoder).decode(e),uk=class extends jr()(`effect/rpc/RpcSerialization`){},dk=class extends Oa(`MaxBufferSizeExceeded`){get message(){return`RPC serialization buffer exceeded the maximum size of ${this.maxBufferSize}`}},fk=16777216,pk=(e,t)=>t!==`unbounded`&&e>t,mk=(e=>{let t=e?.maxBufferSize??fk;return uk.of({contentType:`application/ndjson`,includesFraming:!0,codecFor:sk,makeUnsafe:()=>{let e,n=``,r=e=>{throw n=``,new dk({maxBufferSize:e})};return{decode:i=>{n+=typeof i==`string`?i:(e??=new TextDecoder).decode(i,{stream:!0});let a=0,o=n.indexOf(`
16
+ `,a),s=[];for(;o!==-1;){pk(o-a,t)&&r(t);let e=JSON.parse(n.slice(a,o));s.push(e),a=o+1,o=n.indexOf(`
17
+ `,a)}return n=n.slice(a),pk(n.length,t)&&r(t),s},encode:e=>{if(Array.isArray(e)){if(e.length===0)return;let t=``;for(let n=0;n<e.length;n++)t+=JSON.stringify(e[n])+`
18
+ `;return t}return JSON.stringify(e)+`
19
+ `}}}})})(),hk=e=>uk.of({contentType:e?.contentType??`application/json`,includesFraming:!1,codecFor:sk,makeUnsafe:()=>{let e=new Map;return{decode:t=>gk(JSON.parse(typeof t==`string`?t:lk(t)),e),encode:t=>{let n=yk(t,e);return n&&JSON.stringify(n)}}}});function gk(e,t){if(Array.isArray(e)){let n={size:0,responses:new Map},r=[];for(let i=0;i<e.length;i++){let a=_k(e[i]);r.push(a),a._tag===`Request`&&!a.isNotification&&(n.size++,t.set(a.id,n))}return r}return[_k(e)]}function _k(e){if(Object.hasOwn(e,`method`)){let t=e;if(Ce(t.id)&&t.method.startsWith(`@effect/rpc/`)){let e=t.method.slice(12),n=t.params?.requestId;return n===void 0?{_tag:e}:{_tag:e,requestId:n}}return{_tag:`Request`,id:t.id??``,tag:t.method,payload:t.params??null,headers:t.headers??[],...C(t,`id`)?{}:{isNotification:!0},...t.spanId?{traceId:t.traceId,spanId:t.spanId,sampled:t.sampled}:{}}}let t=e,n=Object.hasOwn(t,`error`);return n&&t.error&&t.error._tag===`Defect`?{_tag:`Defect`,defect:t.error.data}:Object.hasOwn(t,`chunk`)&&t.chunk===!0?{_tag:`Chunk`,requestId:t.id??``,values:t.result}:{_tag:`Exit`,requestId:t.id??``,exit:n&&t.error!=null?{_tag:`Failure`,cause:t.error._tag===`Cause`?t.error.data:[{_tag:`Fail`,error:t.error}]}:{_tag:`Success`,value:t.result}}}function vk(e,t){if(!(`requestId`in e))return bk(e);let n=t.get(e.requestId);return n?(t.delete(e.requestId),n.responses.set(e.requestId,e),n.size===n.responses.size?Array.from(n.responses.values(),bk):void 0):bk(e)}function yk(e,t){if(Array.isArray(e)===!1)return vk(e,t);if(e.length===0)return;let n=[];for(let r=0;r<e.length;r++){let i=vk(e[r],t);i!==void 0&&n.push(i)}if(n.length===0)return;if(n.length===1)return n[0];let r=[];for(let e=0;e<n.length;e++){let t=n[e];Array.isArray(t)?r.push(...t):r.push(t)}return r}function bk(e){switch(e._tag){case`Request`:return{jsonrpc:`2.0`,method:e.tag,params:e.payload,...e.isNotification?{}:{id:e.id},...e.headers?.length>0?{headers:e.headers}:{},traceId:e.traceId,spanId:e.spanId,sampled:e.sampled};case`Ping`:case`Pong`:case`Interrupt`:case`Ack`:case`Eof`:return{jsonrpc:`2.0`,method:`@effect/rpc/${e._tag}`,params:`requestId`in e?{requestId:e.requestId}:void 0};case`Chunk`:return{jsonrpc:`2.0`,chunk:!0,id:e.requestId,result:e.values};case`Exit`:{if(e.exit._tag===`Success`)return{jsonrpc:`2.0`,id:e.requestId??void 0,result:e.exit.value};let t=e.exit.cause.find(e=>e._tag===`Fail`),n=t?._tag===`Fail`?t.error:void 0;return{jsonrpc:`2.0`,id:e.requestId??void 0,error:e.exit._tag===`Failure`?{_tag:`Cause`,code:n&&C(n,`code`)?Number(n.code):0,message:n&&C(n,`message`)?n.message:JSON.stringify(e.exit.cause),data:e.exit.cause}:void 0}}case`Defect`:return{jsonrpc:`2.0`,id:xk,error:{_tag:`Defect`,code:1,message:`A defect occurred`,data:e.defect}};case`ClientProtocolError`:return{}}}var xk=-32603,Sk=()=>e=>Ef(()=>{let t=Uh(1),n=[],r=(...e)=>cp(t=>(n.push([e,t]),D));return j(e((...e)=>r(...e)),e=>({...e,run(e){return t.withPermits(1)(O(function*(){let t=r;r=e;for(let[t,r]of n)yield*up(Ef(()=>e(...t)),r);return n=[],yield*xp(Of,()=>(r=t,D))}))}}))}),Ck=e=>Ef(()=>{let t=new Set,n=new Map,r=new Map,i=(e,t)=>cp(r=>{let i=n.get(e);return i||(i=[],n.set(e,i)),i.push([t,r]),D});return j(e((e,t)=>{let n=r.get(e);return n?n(t):i(e,t)},t),e=>({...e,run(e,i){return O(function*(){t.add(e),r.set(e,i);let a=n.get(e);if(a){n.delete(e);for(let[e,t]of a)yield*up(Ef(()=>i(e)),t)}return yield*xp(Of,()=>(t.delete(e),r.delete(e),D))})}}))}),wk=0,Tk=M(function*(e,t){let n=t?.spanPrefix??`RpcClient`,r=t?.supportsAck??!0,i=t?.disableTracing??!1,a=t?.generateRequestId??(()=>wk++),o=yield*sp(),s=$r(o,qu),c=new Map,l=!1;yield*Qu(s,Pf(e=>(l=!0,u(ku(e.id)))));let u=M(function*(e){for(let[t,n]of c)c.delete(t),n._tag===`Queue`?yield*e._tag===`Success`?vh(n.queue):gh(n.queue,e.cause):n.resume(e)}),d=e=>{let r=nE(e.successSchema),a=m(e);return(o,s)=>{let c=s?.headers?oC(s.headers):aC,l=s?.context??qr();if(!r){let r=t=>f(e,a,t,e.payloadSchema.make(o),c,l,s?.discard??!1);return i?r(void 0):Np(`${n}.${e._tag}`,{attributes:t.spanAttributes},r)}let u=p(e,a,e.payloadSchema.make(o),c,s?.streamBufferSize??16,l);return s?.asQueue?u:P_(j(u,N_))}},f=(e,n,r,i,o,s,u)=>Pf(d=>{if(l)return Sp;let f=a(),p=n(e=>t.onFromClient({message:e,context:s,discard:u}),{_tag:`Request`,id:f,tag:e._tag,payload:i,...r?{traceId:r.traceId,spanId:r.spanId,sampled:r.sampled}:{},headers:uC(d.getRef(kk),o)});if(u)return p;let m;return wp(Df(t=>{let n={_tag:`Effect`,rpc:e,context:s,resume(e){t(e),m&&!m.pollUnsafe()&&d.currentDispatcher.scheduleTask(()=>{m.interruptUnsafe(d.id)},0)}};c.set(f,n),m=p.pipe(r?Fp(r,{captureStackTrace:!1}):S,Vp(d.context)),m.addObserver(e=>{if(e._tag===`Failure`)return t(e)})}),e=>(c.delete(f),Ff(gm(m),h(f,Array.from(e),s))))}),p=M(function*(e,r,o,s,u,d){if(l)return yield*Sp;let f=i?void 0:yield*Mp(`${n}.${e._tag}`,{attributes:t.spanAttributes}),p=_m(),m=a(),g=Qr(p.context,qu);yield*Zu(g,e=>c.has(m)?(c.delete(m),h(m,Mu(e)?Array.from(pu(e.cause)):[],d)):D);let _=yield*uh(u);return c.set(m,{_tag:`Queue`,rpc:e,queue:_,scope:g,context:d}),yield*r(e=>t.onFromClient({message:e,context:d,discard:!1}),{_tag:`Request`,id:m,tag:e._tag,payload:o,...f?{traceId:f.traceId,spanId:f.spanId,sampled:f.sampled}:{},headers:uC(p.getRef(kk),s)}).pipe(f?Fp(f,{captureStackTrace:!1}):S,bp(e=>gh(_,e)),Cp,Lp(g,{startImmediately:!0})),_}),m=e=>{let t=[];for(let n of e.middlewares.values()){let e=Zr(o,`${n.key}/Client`);e&&t.push(e)}return t.length===0?(e,t)=>e(t):function n(r,i,a=t.length-1){return a===-1?r(i):t[a]({rpc:e,request:i,next(e){return n(r,e,a-1)}})}},h=(e,n,r)=>Df(i=>{let a=_m();t.onFromClient({message:{_tag:`Interrupt`,requestId:e,interruptors:n},context:r,discard:!1}).pipe(ep(1e3),Vp(a.context)).addObserver(()=>{i(D)})}),g=e=>{switch(e._tag){case`Chunk`:{let n=e.requestId,i=c.get(n);return!i||i._tag!==`Queue`?D:mh(i.queue,e.values).pipe(r?A(()=>t.onFromClient({message:{_tag:`Ack`,requestId:e.requestId},context:i.context,discard:!1})):S,Wf(e=>gh(i.queue,e)))}case`Exit`:{let t=e.requestId,n=c.get(t);return n?(c.delete(t),n._tag===`Effect`?(n.resume(e.exit),D):e.exit._tag===`Success`?vh(n.queue):gh(n.queue,e.exit.cause)):D}case`Defect`:return u(Ou(e.defect));case`ClientEnd`:return D}},_;if(t.flatten){let t=new Map;_=function(n,r,i){let a=t.get(n);return a||(a=d(e.requests.get(n)),t.set(n,a)),a(r,i)}}else _={},e.requests.forEach(e=>{Rt(_,e._tag,d(e))});return{client:_,write:g}}),Ek=0,Dk=M(function*(e,t){let n=Ek++,{codecFor:r,run:i,send:a,supportsAck:o,supportsTransferables:s}=yield*Ak,c=Ok(r),l=DC(r(Nw())),u=new Map,{client:d,write:f}=yield*Tk(e,{...t,supportsAck:o,onFromClient({message:t}){switch(t._tag){case`Request`:{let r=e.requests.get(t.tag),i=s?rk():void 0,o=_m(),l={rpc:r,context:i?Yr(o.context,nk,i):o.context,schemas:c(r)};return u.set(t.id,l),l.schemas.encodePayload(t.payload).pipe(up(l.context),qf,A(e=>a(n,{...t,id:t.id,payload:e,headers:Object.entries(t.headers)},i&&i.readUnsafe())))}case`Ack`:return u.get(t.requestId)?a(n,{_tag:`Ack`,requestId:t.requestId}):D;case`Interrupt`:return u.get(t.requestId)?(u.delete(t.requestId),a(n,{_tag:`Interrupt`,requestId:t.requestId})):D;case`Eof`:return D}}});return yield*i(n,e=>{switch(e._tag){case`Chunk`:{let t=ik(e.requestId),n=u.get(t);return!n||yr(n.schemas.decodeChunk)?D:n.schemas.decodeChunk.value(e.values).pipe(up(n.context),qf,A(t=>f({_tag:`Chunk`,clientId:0,requestId:ik(e.requestId),values:t})),bp(t=>f({_tag:`Exit`,clientId:0,requestId:ik(e.requestId),exit:Eu(t)})))}case`Exit`:{let t=ik(e.requestId),n=u.get(t);return n?(u.delete(t),n.schemas.decodeExit(e.exit).pipe(up(n.context),qf,ap({onSuccess:e=>f({_tag:`Exit`,clientId:0,requestId:t,exit:e}),onFailure:e=>f({_tag:`Exit`,clientId:0,requestId:t,exit:Eu(e)})}))):D}case`Defect`:return f({_tag:`Defect`,clientId:0,defect:l(e.defect)});case`ClientProtocolError`:{let t=Du(e.error);return Sf(u.keys(),e=>f({_tag:`Exit`,clientId:0,requestId:e,exit:t}))}default:return D}}).pipe(Wf(Kp),Cp,Rp),d}),Ok=e=>{let t=new WeakMap;return n=>{let r=t.get(n);return r===void 0?(r={decodeChunk:Dr(rE(n.successSchema),t=>wC(e(tw(t.success)))),encodePayload:kC(e(n.payloadSchema)),decodeExit:wC(e(fE(n)))},t.set(n,r),r):r}},kk=si(`effect/rpc/RpcClient/CurrentHeaders`,{defaultValue:()=>aC}),Ak=class extends jr()(`effect/rpc/RpcClient/Protocol`){static make=Ck};jr()(`effect/rpc/RpcClient/ConnectionHooks`);var jk=-32002,Mk=`=?base64?`,Nk=`?=`,Pk=new TextDecoder(`utf-8`,{fatal:!0,ignoreBOM:!0}),Fk={debug:{effect:`Debug`,order:0},info:{effect:`Info`,order:1},notice:{effect:`Info`,order:2},warning:{effect:`Warn`,order:3},error:{effect:`Error`,order:4},critical:{effect:`Fatal`,order:5},alert:{effect:`Fatal`,order:6},emergency:{effect:`Fatal`,order:7}},Ik=e=>{let t=e.startsWith(Mk),n=e.endsWith(Nk);if(!t||!n)return/^[\t\x20-\x7e]*$/.test(e)?e:void 0;let r=Ma(e.slice(9,-2));if(!pi(r))try{return Pk.decode(r.success)}catch{return}},Lk=e=>({protocolVersion:e.protocolVersion,clientCapabilities:e.clientCapabilities,clientInfo:e.clientInfo,requestMetadata:e.initializePayload._meta}),Rk=e=>({clientId:e.clientId,protocol:Lk(e),requestContext:pO.of({clientId:e.clientId,protocolVersion:e.protocolVersion,clientCapabilities:e.clientCapabilities,clientInfo:e.clientInfo,requestMetadata:e.requestMetadata}),serverClient:e}),zk=(e,t)=>t._tag===`Complete`?T(t.value):k(new EO({protocolVersion:e,feature:`Client input`})),Bk=class e extends Oa(`ProtocolError`){static fromTool(t){let n=yT(t).pipe(xT(`ToolNotFound`,e=>`Tool '${e.name}' not found`),xT(`UnsupportedByProtocol`,e=>`${e.feature} is not supported by MCP ${e.protocolVersion}`),Yre({InvalidToolInput:e=>e.message,InvalidToolContinuation:e=>e.message,ToolExecutionError:e=>e.message}),CT);return new e({code:RE,message:n})}static fromFeature(t){if(C(t,`_tag`)){if(t._tag===`PromptNotFound`&&C(t,`name`)&&me(t.name))return new e({code:RE,message:`Prompt '${t.name}' not found`});if(t._tag===`ResourceNotFound`&&C(t,`uri`)&&me(t.uri))return new e({code:jk,message:`Resource '${t.uri}' not found`})}let n=Vk(t);return mi(n)?new e(n.success):new e({code:zE,message:`MCP feature handler failed`})}},Vk=TC(P({code:bw,message:N,data:PC(UC)})),Hk=e=>Ae(e,`McpReverseOperationUnsupported`),Uk=e=>t=>Hk(t)?t:new fO({operation:e,cause:t}),Wk=(e,t,n)=>kC(e)(n).pipe(A(wC(t))),Gk=(e,t,n)=>kC(e)(n).pipe(A(wC(t,{onExcessProperty:`error`}))),Kk=Up(function*(e,t){return kO.$match(t,{Cancelled:e=>({tag:QE._tag,payload:QE.payloadSchema.make({_meta:e.metadata,requestId:e.requestId,reason:e.reason})}),Progress:t=>({tag:$E._tag,payload:$E.payloadSchema.make({_meta:t.metadata,progressToken:t.progressToken,progress:t.progress,total:t.total,message:e.supportsProgressMessage?t.message:void 0})}),LoggingMessage:e=>({tag:RD._tag,payload:RD.payloadSchema.make({_meta:e.metadata,level:e.level,logger:e.logger,data:e.data})}),ResourceUpdated:e=>({tag:mD._tag,payload:mD.payloadSchema.make({_meta:e.metadata,uri:e.uri})}),ResourcesChanged:e=>({tag:dD._tag,payload:dD.payloadSchema.make({_meta:e.metadata})}),ToolsChanged:e=>({tag:FD._tag,payload:FD.payloadSchema.make({_meta:e.metadata})}),PromptsChanged:e=>({tag:ED._tag,payload:ED.payloadSchema.make({_meta:e.metadata})}),ElicitationComplete:()=>void 0})}),qk=e=>{switch(e._tag){case`ToolsChanged`:case`PromptsChanged`:case`ResourcesChanged`:case`ResourceUpdated`:return!0;default:return!1}},Jk=e=>{let t=new WeakMap,n=e=>{let n=t.get(e);if(n===void 0){let r=sT(e.payloadSchema);n={decode:wC(r),encode:OC(r)},t.set(e,n)}return n},r=(t,n,r)=>e.handlerRpcs===void 0||e.makeHandlers===void 0?D:n===void 0&&e.runtime._tag===`Stateful`?jf(`MCP sessionful handler installation requires a lifecycle runtime`):r.install(e,e.handlerRpcs,e.makeHandlers(t,e.runtime._tag===`Stateful`?n:void 0,r.context)),i=t=>Dk(e.serverRequestRpcs,{spanPrefix:`McpServer/Client`}).pipe(j(n=>e.toReverseClient(t,n)));return{...e,payloadCodecs:n,installHandlers:r,makeReverseClient:i}},Yk=Object.getPrototypeOf(aC),Xk=()=>Object.create(Yk),Zk=`~effect/http/HttpServerResponse`,Qk=e=>iA({status:e?.status??204,statusText:e?.statusText,headers:e?.headers?oC(e.headers):void 0,cookies:e?.cookies}),$k=(e,t)=>{if(e?.contentType)return e.contentType;if(e?.headers)return t[`content-type`]},eA=(e,t)=>{let n=t?.headers?oC(t.headers):aC;return iA({status:t?.status??200,statusText:t?.statusText,headers:n,cookies:t?.cookies,body:zO(e,$k(t,n))})},tA=x(3,(e,t,n)=>iA(e,cC(e.headers,t,n))),nA=x(2,(e,t)=>iA(e,lC(e.headers,t))),rA={...Xt,[Zk]:Zk,[Pre]:!0,toJSON(){return{_id:`HttpServerResponse`,status:this.status,statusText:this.statusText,headers:gt(this.headers),cookies:this.cookies.toJSON(),body:this.body.toJSON()}}},iA=(e,t)=>{let n=Object.create(rA);if(n.status=e.status,n.statusText=e.statusText,n.cookies=e.cookies??eC,n.body=e.body??NO,n.body._tag!==`Empty`&&(n.body.contentType||n.body.contentLength!==void 0)){let r=t!==void 0,i=r?t:e.headers===void 0||e.headers===aC?Xk():sC({...e.headers});n.body.contentType&&(!r||i[`content-type`]===void 0)&&(i[`content-type`]=n.body.contentType),n.body.contentLength!==void 0&&(!r||i[`content-length`]===void 0)&&(i[`content-length`]=n.body.contentLength.toString()),n.headers=i}else n.headers=t??e.headers??aC;return n};Oa(`HttpServerError`),Oa(`RequestParseError`),Oa(`RouteNotFound`),Oa(`InternalError`),Oa(`ResponseError`),Oa(`ServeError`),jr()(`effect/http/HttpServerError/ClientAbort`);var aA=new Uint8Array(256);for(let e of"!#$%&'*+-.^_`|~0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ")aA[e.charCodeAt(0)]=1;var oA=new Uint8Array(256);oA[9]=1;for(let e=32;e<=126;e++)oA[e]=1;for(let e=128;e<=255;e++)oA[e]=1;Oa(`MultipartError`);var sA=jr(`effect/http/HttpServerRequest`);jr()(`effect/http/ParsedSearchParams`);var cA=new WeakMap,lA=(e,t)=>{let n=cA.get(e.source),r=n?(e,r)=>A(n(e,r),n=>t(e,n)):t;cA.set(e.source,r)},uA=e=>`@effect/mcp/${encodeURIComponent(e.protocolVersion)}/`,dA=M(function*(e){if(e.length===0)return yield*new vu(`MCP protocol declaration must contain at least one MCP protocol`);let t=Object.freeze(Array.from(e)),n=new Map;for(let e of t){if(n.has(e.protocolVersion))return yield*new vu(`Duplicate MCP protocol version: ${e.protocolVersion}`);n.set(e.protocolVersion,e)}let r=t[0].clientRpcs.prefix(uA(t[0]));for(let e=1;e<t.length;e++)r=r.merge(t[e].clientRpcs.prefix(uA(t[e])));return{protocols:t,clientRpcs:r,select:e=>n.get(e)??t[0],protocolForInternalTag:e=>t.find(t=>e.startsWith(uA(t)))??t[0],routeClientRequest:(e,t)=>({...t,tag:`${uA(e)}${t.tag}`}),handlerTarget:(e,t)=>({context:t,install:M(function*(t,n,i){let a=yield*n.toHandlers(i);for(let i of n.requests.values()){let n=r.requests.get(`${uA(t)}${i._tag}`),o=a.mapUnsafe.get(i.key);if(n===void 0||o===void 0)return yield*jf(`MCP handler registration invariant failed for ${t.protocolVersion}/${i._tag}`);e.set(n.key,o)}})})}}),fA=`mcp-session-id`,pA=e=>({initializePayload:e.initializePayload,negotiatedProfile:e.negotiatedProfile,protocol:e.protocol,resourceSubscriptions:e.supportsResourceSubscriptions?new Set:void 0,logLevel:{_tag:`Effect`,level:e.logLevel}}),mA=()=>{let e=new Map,t=new Map,n=new Set,r=(n,r)=>{let i=r[fA];return i===void 0?t.get(n):e.get(i)};return{registerHttp:(t,n)=>{let r=pA(n);return e.set(t,r),r},registerConnection:(e,n)=>{let r=pA(n);return t.set(e,r),r},resolve:r,resolveSessionId:t=>e.get(t),setLogLevel:(e,t,n)=>E(()=>{let i=r(t,n);i!==void 0&&(i.logLevel={_tag:`Mcp`,level:e})}),subscribe:(e,t,n)=>{let i=r(t,n)?.resourceSubscriptions;return i===void 0?k(new Bk({code:LE,message:`Resource subscriptions are not supported`})):E(()=>i.add(e)).pipe(Vf)},unsubscribe:(e,t,n)=>{let i=r(t,n)?.resourceSubscriptions;return i===void 0?k(new Bk({code:LE,message:`Resource subscriptions are not supported`})):E(()=>i.delete(e)).pipe(Vf)},effectLogLevel:(e,t,n)=>{let i=r(e,t);return i?.logLevel._tag===`Mcp`?Fk[i.logLevel.level].effect:i?.logLevel.level??n},canDeliver:(e,t,n,i)=>{let a=r(e,t);if(n._tag===`LoggingMessage`){let e=a?.logLevel;return e?._tag===`Mcp`?Fk[n.level].order>=Fk[e.level].order:Mre(Fk[n.level].effect,e?.level??i)}return n._tag!==`ResourceUpdated`||a?.resourceSubscriptions?.has(n.uri)===!0},markInitialized:e=>{n.add(e)},initializedClientIds:()=>n.values(),disconnect:e=>{t.delete(e),n.delete(e)}}},hA=`mcp-session-id`,gA=`mcp-protocol-version`,_A=`mcp-method`,vA=`mcp-name`,yA=`io.modelcontextprotocol/protocolVersion`,bA=`io.modelcontextprotocol/clientCapabilities`,xA=-32022,SA=e=>typeof e==`object`&&e?e:void 0,CA=e=>{let t=SA(e);return t!==void 0&&yA in t?{present:!0,value:t[yA]}:{present:!1,value:void 0}},wA=e=>CA(SA(SA(e)?.params)?._meta).present,TA=e=>{switch(e){case`tools/call`:case`prompts/get`:return`name`;case`resources/read`:return`uri`;default:return}},EA=e=>({_tag:`Rejected`,status:400,error:{code:VE,message:e}}),DA=_E(JE).middleware(hO),OA=e=>({_tag:`Stateful`,transport:e}),kA=class extends jr()(`effect/ai/McpRuntime/ServerRuntime`){},AA=(e,t)=>e.find(e=>e.runtime._tag===`Stateful`&&e.protocolVersion===t)??e.find(e=>e.runtime._tag===`Stateful`),jA=M(function*(e){let t=e.find(e=>e.runtime._tag===`Stateful`)===void 0?void 0:mA(),n=e.map(e=>e.protocolVersion),r,i;for(let t of e)if(t.runtime._tag===`Stateless`){if(r!==void 0)return yield*new vu(`MCP runtime supports at most one stateless protocol`);r=t.runtime,i=t}let a=yield*dA(e),o=(e,r)=>{let o=e[gA],s=e[hA],c=SA(r),l=SA(SA(c?.params)?._meta),u=CA(l),d=c?.id,f=c?.jsonrpc===`2.0`&&c.method===`initialize`&&(typeof d==`string`||typeof d==`number`),p=c?.jsonrpc===`2.0`&&c.method===`notifications/cancelled`&&d===void 0;if(u.present||(!f||t===void 0)&&i!==void 0&&(o===i.protocolVersion||t===void 0&&c?.jsonrpc===`2.0`&&typeof c.method==`string`&&(typeof d==`string`||typeof d==`number`))){if(o===void 0)return EA(`MCP-Protocol-Version header is required`);if(!p&&(l===void 0||typeof u.value!=`string`))return{_tag:`Rejected`,status:400,error:{code:RE,message:`Required request metadata is missing`}};if((!p||u.present)&&u.value!==o)return EA(`MCP-Protocol-Version header does not match request metadata`);if(!p&&SA(l?.[bA])===void 0)return{_tag:`Rejected`,status:400,error:{code:RE,message:`${bA} request metadata is required`}};if(i===void 0||o!==i.protocolVersion)return{_tag:`Rejected`,status:400,error:{code:xA,message:`Unsupported protocol version '${o}'`,data:{supported:n,requested:o}}};let t=c?.method;if(typeof t!=`string`||e[_A]!==t)return EA(`Mcp-Method header does not match request method`);let r=TA(t);if(r!==void 0){let t=SA(c?.params)?.[r],n=e[vA];if(typeof t!=`string`||n===void 0||Ik(n)!==t)return EA(`Mcp-Name header does not match request parameters`)}return{_tag:`Accepted`,binding:void 0,protocol:i}}let m=s===void 0?void 0:t?.resolveSessionId(s);return s!==void 0&&m===void 0?{_tag:`Rejected`,status:404}:!f&&o!==void 0&&!a.protocols.some(e=>e.protocolVersion===o)||!f&&m?.protocol.runtime.transport.http.requiresVersionHeader===!0&&o!==m.protocol.protocolVersion?{_tag:`Rejected`,status:400}:{_tag:`Accepted`,binding:m,protocol:m?.protocol}};return kA.of({protocols:a.protocols,clientRpcs:a.clientRpcs,selectProtocol:a.select,protocolForInternalTag:a.protocolForInternalTag,routeClientRequest:a.routeClientRequest,prepareRequest:M(function*(e,o,s){let c=SA(s.payload)?._meta,l=CA(c),u=typeof l.value==`string`?l.value:void 0,d=l.present?void 0:t?.resolve(e,o),f;if(l.present)f=a.protocols.find(e=>e.protocolVersion===u)??i??a.protocols[0];else if(d!==void 0)f=d.protocol;else if(s.tag===`initialize`){let e=s.payload?.protocolVersion,t=AA(a.protocols,e);if(t===void 0)return yield*new Bk({code:xA,message:`initialize is not supported by the configured MCP protocols (requested '${e}')`});f=t}else f=a.protocols[0];if(f.runtime._tag===`Stateful`)return{protocol:f,binding:d};if(s.isNotification&&s.tag===`notifications/cancelled`)return{protocol:f};if(r===void 0)return yield*jf(`MCP stateless runtime invariant failed`);if(u!==void 0&&u!==f.protocolVersion)return yield*new Bk({code:xA,message:`Unsupported protocol version '${u}'`,data:{supported:n,requested:u}});let p=yield*r.profileFromRequestMetadata(c),m={protocolVersion:p.protocolVersion,clientCapabilities:p.clientCapabilities,clientInfo:p.clientInfo,requestMetadata:p.requestMetadata},h=pO.of({clientId:e,protocolVersion:m.protocolVersion,clientCapabilities:m.clientCapabilities,clientInfo:m.clientInfo,requestMetadata:m.requestMetadata});return{protocol:f,profile:m,requestContext:h}}),resolveRequest:(e,n)=>t?.resolve(e,n),admitHttp:(e,t)=>{let n=(e,t,n=null)=>({_tag:`Rejected`,response:t===void 0?Qk({status:e}):eA({jsonrpc:`2.0`,id:n,error:t},{status:e})});if(pi(t)){let t=e[gA];if(t!==void 0&&!a.protocols.some(e=>e.protocolVersion===t))return n(400);let r=o(e,void 0);return r._tag===`Rejected`&&r.error===void 0?n(r.status):n(200,new HE({message:`Parse error`}))}let r=t.success;if(Array.isArray(r)){if(r.length===0)return n(400,new UE({message:`Invalid Request`}));let t=o(e,r);return t._tag===`Rejected`||r.some(wA)||r.some(e=>C(e,`method`)&&e.method===`initialize`)||t.binding?.protocol.runtime.transport.jsonRpc.acceptsBatches!==!0?n(400):{_tag:`Accepted`,acknowledge:!r.some(e=>C(e,`method`)&&C(e,`id`)),isSubscription:!1}}let i=C(r,`id`),s=i&&(typeof r.id==`string`||typeof r.id==`number`)?r.id:null,c=C(r,`jsonrpc`)&&r.jsonrpc===`2.0`,l=!i||typeof r.id==`string`||typeof r.id==`number`,u=c&&l&&C(r,`method`)&&typeof r.method==`string`,d=i&&(typeof r.id==`string`||typeof r.id==`number`||r.id===null),f=C(r,`result`),p=C(r,`error`),m=c&&d&&f!==p,h=o(e,r);if(h._tag===`Rejected`)return n(h.status,h.error,s);if(!u&&!m)return n(200,new UE({message:`Invalid Request`}),s);let g=C(r,`method`)&&r.method===`initialize`,_=e[hA]!==void 0;return(g?_:!_&&h.protocol?.runtime._tag!==`Stateless`)?n(400):u&&h.protocol?.runtime._tag===`Stateless`&&!(h.protocol.handlerRpcs?.requests.has(r.method)??h.protocol.clientRpcs.requests.has(r.method))?n(404,new WE({message:`Method not found: ${r.method}`}),s):{_tag:`Accepted`,acknowledge:!u||!i,isSubscription:C(r,`method`)&&r.method===`subscriptions/listen`}},effectLogLevel:(e,n,r)=>t?.effectLogLevel(e,n,r)??r,disconnect:e=>t?.disconnect(e),deliveryClientIds:()=>t?.initializedClientIds()??[],canDeliver:(e,n,r,i)=>t?.canDeliver(e,n,r,i)??!0,installHandlers:M(function*(e){let r=new Map,i={subscribeServerNotifications:e.subscribeServerNotifications,...e.sendNotification===void 0?{}:{sendNotification:e.sendNotification},...e.markSubscriptionCancelled===void 0?{}:{markSubscriptionCancelled:e.markSubscriptionCancelled},...e.terminateSubscription===void 0?{}:{terminateSubscription:e.terminateSubscription},supportedVersions:n,serverInfo:e.serverInfo,registrationPresence:e.core.registrationPresence},o=a.handlerTarget(r,i);for(let n of a.protocols){if(n.runtime._tag===`Stateless`){yield*n.installHandlers(e.core,void 0,o);continue}if(t===void 0)return yield*jf(`MCP sessionful runtime invariant failed`);yield*o.install(n,DA,DA.of({ping:()=>T({})}));let r={initialize:M(function*(r,i,a){let o=yield*e.core.registrationPresence;return yield*Pf(s=>{let c=Xr(s.context,sA),l={completions:!0,logging:!0,...o.tools?{tools:{listChanged:!0}}:{},...o.resources?{resources:{listChanged:!0,subscribe:c===void 0}}:{},...o.prompts?{prompts:{listChanged:!0}}:{},...e.serverInfo.extensions?{extensions:e.serverInfo.extensions}:{}},u={initializePayload:XE.payloadSchema.make({protocolVersion:r,capabilities:i.clientCapabilities,clientInfo:i.clientInfo,_meta:i.requestMetadata}),negotiatedProfile:i,protocol:n,supportsResourceSubscriptions:c===void 0&&l.resources?.subscribe===!0,logLevel:e.defaultLogLevel};if(c!==void 0){let e=crypto.randomUUID();t.registerHttp(e,u),lA(c,(t,r)=>T(nA(r,{[hA]:e,[gA]:n.protocolVersion})))}else t.registerConnection(a,u);return T({capabilities:l,instructions:e.serverInfo.instructions,serverInfo:ME.make({name:e.serverInfo.name,version:e.serverInfo.version,description:e.serverInfo.description,websiteUrl:e.serverInfo.websiteUrl,icons:e.serverInfo.icons})})})}),setLogLevel:t.setLogLevel,subscribe:t.subscribe,unsubscribe:t.unsubscribe,clientNotification:M(function*(e,n){e._tag===`Initialized`&&t.markInitialized(n)})};yield*n.installHandlers(e.core,r,o)}return Wr(r)})})}),MA=e=>Sd(kA)(jA(e)),NA=`2024-11-05`,z=e=>PC(e).pipe(cw(FC(e),{decode:xy(),encode:wy(Or(wr))})),PA=lT,FA=iw([N,bw]),IA=iw([N,bw]),LA=aw([`user`,`assistant`]),RA=aw([`debug`,`info`,`notice`,`warning`,`error`,`critical`,`alert`,`emergency`]),zA=P({_meta:z(QC(P({progressToken:z(IA)}),[lT]))}),BA=P({_meta:z(PA)}),VA=P({_meta:z(PA)}),HA=P({...zA.fields,cursor:z(N)}),UA=P({...VA.fields,nextCursor:z(N)}),WA=P({name:N,version:N}),GA=P({experimental:z(ZC(N,PA)),roots:z(P({listChanged:z(qC)})),sampling:z(PA)}),KA=P({experimental:z(ZC(N,PA)),logging:z(PA),prompts:z(P({listChanged:z(qC)})),resources:z(P({subscribe:z(qC),listChanged:z(qC)})),tools:z(P({listChanged:z(qC)}))}),qA=P({code:Dw,message:N,data:z(HC)}),JA=P({audience:z(F(LA)),priority:z(bw.check(Tw({minimum:0,maximum:1})))}),YA=P({uri:N,mimeType:z(N),text:N}),XA=P({uri:N,mimeType:z(N),blob:N}),ZA=iw([YA,XA]),QA=P({type:RC(`text`),text:N,annotations:z(JA)}),$A=P({type:RC(`image`),data:N,mimeType:N,annotations:z(JA)}),ej=P({type:RC(`resource`),resource:ZA,annotations:z(JA)}),tj=iw([QA,$A,ej]),nj=iw([QA,$A]),rj=P({uri:N,name:N,description:z(N),mimeType:z(N),size:z(bw),annotations:z(JA)}),ij=P({uriTemplate:N,name:N,description:z(N),mimeType:z(N),annotations:z(JA)}),aj=P({name:N,description:z(N),required:z(qC)}),oj=P({name:N,description:z(N),arguments:z(F(aj))}),sj=P({role:LA,content:tj}),cj=P({name:N,description:z(N),inputSchema:P({type:RC(`object`),properties:z(ZC(N,PA)),required:z(F(N))})}),lj=P({hints:z(F(P({name:z(N)}))),costPriority:z(bw.check(Tw({minimum:0,maximum:1}))),speedPriority:z(bw.check(Tw({minimum:0,maximum:1}))),intelligencePriority:z(bw.check(Tw({minimum:0,maximum:1})))}),uj=P({role:LA,content:nj}),dj=P({type:RC(`ref/resource`),uri:N}),fj=P({type:RC(`ref/prompt`),name:N}),pj=P({uri:N,name:z(N)}),mj=P({...VA.fields,protocolVersion:N,capabilities:KA,serverInfo:WA,instructions:z(N)}),hj=P({...UA.fields,resources:F(rj)}),gj=P({...UA.fields,resourceTemplates:F(ij)}),_j=P({...VA.fields,contents:F(ZA)}),vj=P({...UA.fields,prompts:F(oj)}),yj=P({...VA.fields,description:z(N),messages:F(sj)}),bj=P({...UA.fields,tools:F(cj)}),xj=P({...VA.fields,content:F(tj),isError:z(qC)}),Sj=P({...VA.fields,role:LA,content:nj,model:N,stopReason:z(N)}),Cj=P({...VA.fields,completion:P({values:F(N),total:z(bw),hasMore:z(qC)})}),wj=P({...VA.fields,roots:F(pj)}),Tj=class extends L(`ping`,{success:VA,error:qA,payload:sw(zA)}){},Ej=class extends L(`initialize`,{success:mj,error:qA,payload:{...zA.fields,protocolVersion:N,capabilities:GA,clientInfo:WA}}){},Dj=class extends L(`completion/complete`,{success:Cj,error:qA,payload:{...zA.fields,ref:iw([fj,dj]),argument:P({name:N,value:N})}}){},Oj=class extends L(`logging/setLevel`,{success:VA,error:qA,payload:{...zA.fields,level:RA}}){},kj=class extends L(`prompts/get`,{success:yj,error:qA,payload:{...zA.fields,name:N,arguments:z(ZC(N,N))}}){},Aj=class extends L(`prompts/list`,{success:vj,error:qA,payload:sw(HA)}){},jj=class extends L(`resources/list`,{success:hj,error:qA,payload:sw(HA)}){},Mj=class extends L(`resources/templates/list`,{success:gj,error:qA,payload:sw(HA)}){},Nj=class extends L(`resources/read`,{success:_j,error:qA,payload:{...zA.fields,uri:N}}){},Pj=class extends L(`resources/subscribe`,{success:VA,error:qA,payload:{...zA.fields,uri:N}}){},Fj=class extends L(`resources/unsubscribe`,{success:VA,error:qA,payload:{...zA.fields,uri:N}}){},Ij=class extends L(`tools/call`,{success:xj,error:qA,payload:{...zA.fields,name:N,arguments:z(PA)}}){},Lj=class extends L(`tools/list`,{success:bj,error:qA,payload:sw(HA)}){},Rj=class extends L(`sampling/createMessage`,{success:Sj,error:qA,payload:{...zA.fields,messages:F(uj),modelPreferences:z(lj),systemPrompt:z(N),includeContext:z(aw([`none`,`thisServer`,`allServers`])),temperature:z(bw),maxTokens:bw,stopSequences:z(F(N)),metadata:z(PA)}}){},zj=class extends L(`roots/list`,{success:wj,error:qA,payload:sw(zA)}){},Bj=class extends L(`notifications/cancelled`,{payload:{...BA.fields,requestId:FA,reason:z(N)}}){},Vj=class extends L(`notifications/progress`,{payload:{...BA.fields,progressToken:IA,progress:bw,total:z(bw)}}){},Hj=class extends L(`notifications/initialized`,{payload:sw(BA)}){},Uj=class extends L(`notifications/roots/list_changed`,{payload:sw(BA)}){},Wj=class extends L(`notifications/message`,{payload:{...BA.fields,level:RA,logger:z(N),data:HC}}){},Gj=class extends L(`notifications/resources/updated`,{payload:{...BA.fields,uri:N}}){},Kj=class extends L(`notifications/resources/list_changed`,{payload:sw(BA)}){},qj=class extends L(`notifications/tools/list_changed`,{payload:sw(BA)}){},Jj=class extends L(`notifications/prompts/list_changed`,{payload:sw(BA)}){},Yj=class extends _E(Tj,Ej,Dj,Oj,kj,Aj,jj,Mj,Nj,Pj,Fj,Ij,Lj){},Xj=class extends _E(Bj,Vj,Hj,Uj){},Zj=class extends _E(Tj,Rj,zj){},Qj=class extends _E(Bj,Vj,Wj,Gj,Kj,qj,Jj){},$j=Yj.middleware(hO).merge(Xj),eM=$j.omit(`ping`),tM=e=>({protocolVersion:NA,clientCapabilities:NE.make(e.capabilities),clientInfo:ME.make(e.clientInfo),requestMetadata:e._meta}),nM=(e,t)=>new dO({operation:e,protocolVersion:NA,reason:t}),rM=(e,t,n)=>Object.hasOwn(e.clientCapabilities,n)&&e.clientCapabilities[n]!==void 0?D:k(nM(t,`Client did not advertise the ${n} capability`)),iM=e=>({experimental:e.experimental,logging:e.logging?{}:void 0,prompts:e.prompts,resources:e.resources,tools:e.tools}),aM=M(function*(e){let t=yT(e).pipe(bT({type:`text`},e=>({...e,annotations:e.annotations})),bT({type:`image`},e=>$A.make({type:`image`,mimeType:e.mimeType,data:ja(e.data),annotations:e.annotations})),bT({type:`resource`},e=>{let t=e.resource;return`text`in t?ej.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,text:t.text},annotations:e.annotations}):ej.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,blob:ja(t.blob)},annotations:e.annotations})}),bT({type:ST(`audio`,`resource_link`)},e=>new EO({protocolVersion:NA,feature:`${e.type} tool content`})),CT);return t instanceof EO?yield*t:t}),oM=Jk({protocolVersion:NA,runtime:OA({jsonRpc:{acceptsBatches:!1},http:{requiresVersionHeader:!1}}),clientRpcs:$j,clientNotificationRpcs:Xj,serverRequestRpcs:Zj,serverNotificationRpcs:Qj,handlerRpcs:eM,makeHandlers:(e,t)=>eM.of({initialize:(e,{client:n})=>t.initialize(NA,tM(e),n.id).pipe(j(e=>mj.make({protocolVersion:NA,capabilities:iM(e.capabilities),serverInfo:e.serverInfo,instructions:e.instructions}))),"logging/setLevel":({level:e},{client:n,headers:r})=>t.setLogLevel(e,n.id,r).pipe(Bf({})),"notifications/cancelled":()=>D,"notifications/initialized":(e,{client:n,headers:r})=>t.clientNotification(OO.Initialized(),n.id,r),"notifications/progress":(e,{client:n,headers:r})=>t.clientNotification(OO.Progress({progressToken:e.progressToken,progress:e.progress,total:e.total,metadata:e._meta}),n.id,r),"notifications/roots/list_changed":(e,{client:n,headers:r})=>t.clientNotification(OO.RootsChanged(),n.id,r),"resources/list":t=>mO.use(t=>e.resources.list(Lk(t))).pipe(j(e=>hj.make({resources:e}))),"resources/templates/list":t=>mO.use(t=>e.resources.listTemplates(Lk(t))).pipe(j(e=>gj.make({resourceTemplates:e}))),"resources/read":M(function*({uri:t}){let n=yield*mO,r=yield*e.resources.read(t,Rk(n)).pipe(Kf(Bk.fromFeature));return _j.make({contents:r.contents.map(e=>`text`in e?{uri:e.uri,mimeType:e.mimeType,text:e.text}:{uri:e.uri,mimeType:e.mimeType,blob:ja(e.blob)}),_meta:r._meta})}),"resources/subscribe":({uri:e},{client:n,headers:r})=>t.subscribe(e,n.id,r).pipe(Bf({})),"resources/unsubscribe":({uri:e},{client:n,headers:r})=>t.unsubscribe(e,n.id,r).pipe(Bf({})),"prompts/list":()=>mO.use(t=>e.prompts.list(Lk(t))).pipe(j(e=>vj.make({prompts:e.map(e=>({name:e.name,description:e.description,arguments:e.arguments?.map(e=>({name:e.name,description:e.description,required:e.required}))}))}))),"prompts/get":M(function*({arguments:t,name:n}){let r=yield*mO,i=yield*e.prompts.get(n,t??{},Rk(r)).pipe(Kf(Bk.fromFeature));if(i._tag===`InputRequired`)return yield*Bk.fromFeature(new EO({protocolVersion:NA,feature:`prompt input requirements`}));let a=i.value,o=yield*Sf(a.messages,e=>aM(e.content).pipe(j(t=>({role:e.role,content:t})),Kf(Bk.fromTool)));return yj.make({description:a.description,messages:o,_meta:a._meta})}),"completion/complete":M(function*(t){let n=yield*mO,r=yield*e.completions.complete({reference:t.ref.type===`ref/prompt`?{type:`prompt`,name:t.ref.name}:{type:`resourceTemplate`,uriTemplate:t.ref.uri},argument:t.argument,metadata:t._meta},Rk(n)).pipe(Kf(Bk.fromFeature));return Cj.make({completion:{values:Array.from(r.values),total:r.total,hasMore:r.hasMore},_meta:r.metadata})}),"tools/list":M(function*(){let t=yield*mO;return yield*e.tools.list(Lk(t)).pipe(j(e=>bj.make({tools:e.map(e=>cj.make({name:e.name,description:e.description,inputSchema:e.inputSchema}))})))}),"tools/call":M(function*(t){let n=yield*mO,r=yield*e.tools.call({...t,arguments:t.arguments??{}},Rk(n)).pipe(A(e=>zk(NA,e)),Kf(Bk.fromTool)),i=yield*Sf(r.content,aM).pipe(Kf(Bk.fromTool));return xj.make({content:i,isError:r.isError,_meta:r._meta})})}),toReverseClient:(e,t)=>({listRoots:M(function*(n){yield*rM(e,`roots/list`,`roots`);let r=yield*Wk(QD.payloadSchema,zj.payloadSchema,n).pipe(Kf(()=>nM(`roots/list`,`Request is not representable by this protocol`))),{roots:i}=yield*t[`roots/list`](r).pipe(Kf(Uk(`roots/list`)));return new ZD({roots:i})}),createMessage:M(function*(n){yield*rM(e,`sampling/createMessage`,`sampling`);let r=yield*Gk(GD.payloadSchema,Rj.payloadSchema,n).pipe(Kf(()=>nM(`sampling/createMessage`,`Request is not representable by this protocol`))),i=yield*t[`sampling/createMessage`](r).pipe(Kf(Uk(`sampling/createMessage`)));return yield*Wk(Rj.successSchema,GD.successSchema,i).pipe(Kf(()=>nM(`sampling/createMessage`,`Response is not representable by the canonical model`)))}),elicit:()=>k(nM(`elicitation/create`,`Elicitation was introduced after this protocol revision`))}),projectNotification:e=>Kk({supportsProgressMessage:!1},e),normalizeCancellation:e=>wC(Bj.payloadSchema)(e).pipe(j(e=>({requestId:e.requestId,reason:e.reason,metadata:e._meta})))}),sM=`2025-03-26`,cM=z,lM=P({...KA.fields,completions:cM(P({}))}),uM=P({type:RC(`audio`),data:N,mimeType:N,annotations:cM(JA)}),dM=iw([QA,$A,uM,ej]),fM=iw([QA,$A,uM]),pM=P({role:LA,content:dM}),kie=P({role:LA,content:fM}),mM=P({title:cM(N),readOnlyHint:cM(qC),destructiveHint:cM(qC),idempotentHint:cM(qC),openWorldHint:cM(qC)}),hM=P({...cj.fields,annotations:cM(mM)}),gM=P({...VA.fields,protocolVersion:N,capabilities:lM,serverInfo:WA,instructions:cM(N)}),_M=P({...VA.fields,description:cM(N),messages:F(pM)}),vM=P({...UA.fields,tools:F(hM)}),yM=P({...VA.fields,content:F(dM),isError:cM(qC)}),Aie=P({...VA.fields,role:LA,content:fM,model:N,stopReason:cM(N)}),jie=class extends L(`initialize`,{success:gM,error:qA,payload:{...zA.fields,protocolVersion:N,capabilities:GA,clientInfo:WA}}){},Mie=class extends L(`prompts/get`,{success:_M,error:qA,payload:{...zA.fields,name:N,arguments:cM(ZC(N,N))}}){},Nie=class extends L(`tools/list`,{success:vM,error:qA,payload:sw(HA)}){},Pie=class extends L(`tools/call`,{success:yM,error:qA,payload:{...zA.fields,name:N,arguments:cM(lT)}}){},bM=class extends L(`sampling/createMessage`,{success:Aie,error:qA,payload:{...zA.fields,messages:F(kie),modelPreferences:cM(lj),systemPrompt:cM(N),includeContext:cM(aw([`none`,`thisServer`,`allServers`])),temperature:cM(bw),maxTokens:bw,stopSequences:cM(F(N)),metadata:cM(lT)}}){},xM=class extends L(`notifications/progress`,{payload:{...BA.fields,progressToken:IA,progress:bw,total:cM(bw),message:cM(N)}}){},Fie=class extends _E(Tj,jie,Dj,Oj,Mie,Aj,jj,Mj,Nj,Pj,Fj,Pie,Nie){},SM=class extends _E(Bj,xM,Hj,Uj){},Iie=class extends _E(Tj,bM,zj){},Lie=class extends _E(Bj,xM,Wj,Gj,Kj,qj,Jj){},CM=Fie.middleware(hO).merge(SM),wM=CM.omit(`ping`),Rie=e=>({protocolVersion:sM,clientCapabilities:NE.make(e.capabilities),clientInfo:ME.make(e.clientInfo),requestMetadata:e._meta}),TM=(e,t)=>new dO({operation:e,protocolVersion:sM,reason:t}),EM=(e,t,n)=>Object.hasOwn(e.clientCapabilities,n)&&e.clientCapabilities[n]!==void 0?D:k(TM(t,`Client did not advertise the ${n} capability`)),DM=M(function*(e){let t=yT(e).pipe(bT({type:`text`},e=>({...e,annotations:e.annotations})),bT({type:ST(`image`,`audio`)},e=>({type:e.type,mimeType:e.mimeType,data:ja(e.data),annotations:e.annotations})),bT({type:`resource`},e=>{let t=e.resource;return`text`in t?ej.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,text:t.text},annotations:e.annotations}):ej.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,blob:ja(t.blob)},annotations:e.annotations})}),bT({type:`resource_link`},()=>new EO({protocolVersion:sM,feature:`resource_link tool content`})),CT);return t instanceof EO?yield*t:t}),zie=e=>`text`in e?{uri:e.uri,mimeType:e.mimeType,text:e.text}:{uri:e.uri,mimeType:e.mimeType,blob:ja(e.blob)},Bie=Jk({protocolVersion:sM,runtime:OA({jsonRpc:{acceptsBatches:!0},http:{requiresVersionHeader:!1}}),clientRpcs:CM,clientNotificationRpcs:SM,serverRequestRpcs:Iie,serverNotificationRpcs:Lie,handlerRpcs:wM,makeHandlers:(e,t)=>wM.of({initialize:(e,{client:n})=>t.initialize(sM,Rie(e),n.id).pipe(j(e=>gM.make({protocolVersion:sM,capabilities:{experimental:e.capabilities.experimental,logging:e.capabilities.logging?{}:void 0,completions:e.capabilities.completions?{}:void 0,prompts:e.capabilities.prompts,resources:e.capabilities.resources,tools:e.capabilities.tools},serverInfo:e.serverInfo,instructions:e.instructions}))),"logging/setLevel":({level:e},{client:n,headers:r})=>t.setLogLevel(e,n.id,r).pipe(Bf({})),"notifications/cancelled":()=>D,"notifications/initialized":(e,{client:n,headers:r})=>t.clientNotification(OO.Initialized(),n.id,r),"notifications/progress":(e,{client:n,headers:r})=>t.clientNotification(OO.Progress({progressToken:e.progressToken,progress:e.progress,total:e.total,message:e.message,metadata:e._meta}),n.id,r),"notifications/roots/list_changed":(e,{client:n,headers:r})=>t.clientNotification(OO.RootsChanged(),n.id,r),"resources/list":t=>mO.use(t=>e.resources.list(Lk(t))).pipe(j(e=>hj.make({resources:e.map(e=>({uri:e.uri,name:e.name,description:e.description,mimeType:e.mimeType,size:e.size,annotations:e.annotations}))}))),"resources/templates/list":t=>mO.use(t=>e.resources.listTemplates(Lk(t))).pipe(j(e=>gj.make({resourceTemplates:e.map(e=>({uriTemplate:e.uriTemplate,name:e.name,description:e.description,mimeType:e.mimeType,annotations:e.annotations}))}))),"resources/read":M(function*({uri:t}){let n=yield*mO,r=yield*e.resources.read(t,Rk(n)).pipe(Kf(Bk.fromFeature));return _j.make({contents:r.contents.map(zie),_meta:r._meta})}),"resources/subscribe":({uri:e},{client:n,headers:r})=>t.subscribe(e,n.id,r).pipe(Bf({})),"resources/unsubscribe":({uri:e},{client:n,headers:r})=>t.unsubscribe(e,n.id,r).pipe(Bf({})),"prompts/list":t=>mO.use(t=>e.prompts.list(Lk(t))).pipe(j(e=>vj.make({prompts:e.map(e=>({name:e.name,description:e.description,arguments:e.arguments?.map(e=>({name:e.name,description:e.description,required:e.required}))}))}))),"prompts/get":M(function*({arguments:t,name:n}){let r=yield*mO,i=yield*e.prompts.get(n,t??{},Rk(r)).pipe(Kf(Bk.fromFeature));if(i._tag===`InputRequired`)return yield*Bk.fromFeature(new EO({protocolVersion:sM,feature:`prompt input requirements`}));let a=i.value,o=yield*Sf(a.messages,e=>DM(e.content).pipe(j(t=>({role:e.role,content:t})),Kf(Bk.fromTool)));return _M.make({description:a.description,messages:o,_meta:a._meta})}),"completion/complete":M(function*(t){let n=yield*mO,r=yield*e.completions.complete({reference:t.ref.type===`ref/prompt`?{type:`prompt`,name:t.ref.name}:{type:`resourceTemplate`,uriTemplate:t.ref.uri},argument:t.argument,metadata:t._meta},Rk(n)).pipe(Kf(Bk.fromFeature));return Cj.make({completion:{values:Array.from(r.values),total:r.total,hasMore:r.hasMore},_meta:r.metadata})}),"tools/list":M(function*(){let t=yield*mO,n=yield*e.tools.list(Lk(t));return vM.make({tools:n.map(e=>hM.make({name:e.name,description:e.description,inputSchema:e.inputSchema,annotations:e.title===void 0&&e.annotations===void 0?void 0:mM.make({...e.annotations,title:e.title})}))})}),"tools/call":M(function*(t){let n=yield*mO,r=yield*e.tools.call({...t,arguments:t.arguments??{}},Rk(n)).pipe(A(e=>zk(sM,e)),Kf(Bk.fromTool)),i=yield*Sf(r.content,DM).pipe(Kf(Bk.fromTool));return yM.make({content:i,isError:r.isError,_meta:r._meta})})}),toReverseClient:(e,t)=>({listRoots:M(function*(n){yield*EM(e,`roots/list`,`roots`);let r=yield*Wk(QD.payloadSchema,zj.payloadSchema,n).pipe(Kf(()=>TM(`roots/list`,`Request is not representable by this protocol`))),{roots:i}=yield*t[`roots/list`](r).pipe(Kf(Uk(`roots/list`)));return new ZD({roots:i})}),createMessage:M(function*(n){yield*EM(e,`sampling/createMessage`,`sampling`);let r=yield*Gk(GD.payloadSchema,bM.payloadSchema,n).pipe(Kf(()=>TM(`sampling/createMessage`,`Request is not representable by this protocol`))),i=yield*t[`sampling/createMessage`](r).pipe(Kf(Uk(`sampling/createMessage`)));return yield*Wk(bM.successSchema,GD.successSchema,i).pipe(Kf(()=>TM(`sampling/createMessage`,`Response is not representable by the canonical model`)))}),elicit:()=>k(TM(`elicitation/create`,`Elicitation was introduced after this protocol revision`))}),projectNotification:e=>Kk({supportsProgressMessage:!0},e),normalizeCancellation:e=>wC(Bj.payloadSchema)(e).pipe(j(e=>({requestId:e.requestId,reason:e.reason,metadata:e._meta})))}),OM=`2025-06-18`,B=z,kM=lT,AM=B(kM),jM=P({name:N,title:B(N),version:N}),Vie=P({...GA.fields,elicitation:B(P({}))}),MM=P({audience:B(F(LA)),priority:B(bw.check(Tw({minimum:0,maximum:1})))}),NM=P({...rj.fields,title:B(N),annotations:B(MM),_meta:AM}),Hie=P({...ij.fields,title:B(N),annotations:B(MM),_meta:AM}),PM=iw([P({...YA.fields,_meta:AM}),P({...XA.fields,_meta:AM})]),Uie=P({...aj.fields,title:B(N)}),Wie=P({...oj.fields,title:B(N),arguments:B(F(Uie)),_meta:AM}),FM=P({type:RC(`resource`),resource:PM,annotations:B(MM),_meta:AM}),Gie=P({...NM.fields,type:RC(`resource_link`)}),IM=P({...QA.fields,annotations:B(MM),_meta:AM}),LM=P({...$A.fields,annotations:B(MM),_meta:AM}),RM=P({...uM.fields,annotations:B(MM),_meta:AM}),zM=iw([IM,LM,RM,FM,Gie]),BM=iw([IM,LM,RM]),Kie=P({role:LA,content:zM}),qie=P({role:LA,content:BM}),Jie=P({...lM.fields}),VM=P({...VA.fields,protocolVersion:N,capabilities:Jie,serverInfo:jM,instructions:B(N)}),Yie=class extends L(`initialize`,{success:VM,error:qA,payload:{...zA.fields,protocolVersion:N,capabilities:Vie,clientInfo:jM}}){},HM=QC(P({type:RC(`object`),properties:B(ZC(N,kM)),required:B(F(N))}),[lT]),UM=P({name:N,title:B(N),description:B(N),inputSchema:HM,outputSchema:B(HM),annotations:B(mM),_meta:AM}),WM=P({...VA.fields,content:F(zM),structuredContent:B(kM),isError:B(qC)}),Xie=P({...VA.fields,role:LA,content:BM,model:N,stopReason:B(N)}),GM=class extends L(`sampling/createMessage`,{success:Xie,error:qA,payload:{...zA.fields,messages:F(qie),modelPreferences:B(lj),systemPrompt:B(N),includeContext:B(aw([`none`,`thisServer`,`allServers`])),temperature:B(bw),maxTokens:bw,stopSequences:B(F(N)),metadata:B(kM)}}){},Zie=P({...fj.fields,title:B(N)}),Qie=P({type:RC(`ref/resource`),uri:N}),KM=Cj,$ie=class extends L(`completion/complete`,{success:KM,error:qA,payload:{...zA.fields,ref:iw([Zie,Qie]),argument:P({name:N,value:N}),context:B(P({arguments:B(ZC(N,N))}))}}){},qM=P({...UA.fields,resources:F(NM)}),JM=P({...UA.fields,resourceTemplates:F(Hie)}),YM=P({...VA.fields,contents:F(PM)}),XM=P({...UA.fields,prompts:F(Wie)}),ZM=P({...VA.fields,description:B(N),messages:F(Kie)}),QM=P({...UA.fields,tools:F(UM)}),eae=class extends L(`resources/list`,{success:qM,error:qA,payload:sw(HA)}){},tae=class extends L(`resources/templates/list`,{success:JM,error:qA,payload:sw(HA)}){},nae=class extends L(`resources/read`,{success:YM,error:qA,payload:{...zA.fields,uri:N}}){},rae=class extends L(`prompts/list`,{success:XM,error:qA,payload:sw(HA)}){},iae=class extends L(`prompts/get`,{success:ZM,error:qA,payload:{...zA.fields,name:N,arguments:B(ZC(N,N))}}){},aae=class extends L(`tools/list`,{success:QM,error:qA,payload:sw(HA)}){},oae=class extends L(`tools/call`,{success:WM,error:qA,payload:{...zA.fields,name:N,arguments:B(kM)}}){},sae=P({...VA.fields,action:aw([`accept`,`decline`,`cancel`]),content:B(ZC(N,iw([N,bw,qC])))}),cae=P({type:RC(`object`),properties:ZC(N,iw([P({type:RC(`string`),title:B(N),description:B(N),minLength:B(Dw),maxLength:B(Dw),format:B(aw([`email`,`uri`,`date`,`date-time`]))}),P({type:aw([`number`,`integer`]),title:B(N),description:B(N),minimum:B(bw),maximum:B(bw)}),P({type:RC(`boolean`),title:B(N),description:B(N),default:B(qC)}),P({type:RC(`string`),title:B(N),description:B(N),enum:F(N),enumNames:B(F(N))})])),required:B(F(N))}),$M=class extends L(`elicitation/create`,{success:sae,error:qA,payload:{...zA.fields,message:N,requestedSchema:cae}}){},lae=class extends _E(Tj,Yie,$ie,Oj,iae,rae,eae,tae,nae,Pj,Fj,oae,aae){},eN=class extends _E(Bj,xM,Hj,Uj){},uae=class extends _E(Tj,GM,zj,$M){},dae=class extends _E(Bj,xM,Wj,Gj,Kj,qj,Jj){},tN=lae.middleware(hO).merge(eN),nN=tN.omit(`ping`),fae=e=>{if(e?.type!==`object`)return!1;let t=e.properties===void 0||Oe(e.properties)&&Object.values(e.properties).every(Oe),n=e.required===void 0||Array.isArray(e.required)&&e.required.every(me);return t&&n},pae=e=>({protocolVersion:OM,clientCapabilities:NE.make(e.capabilities),clientInfo:ME.make(e.clientInfo),requestMetadata:e._meta}),rN=(e,t)=>new dO({operation:e,protocolVersion:OM,reason:t}),iN=(e,t,n)=>Object.hasOwn(e.clientCapabilities,n)&&e.clientCapabilities[n]!==void 0?D:k(rN(t,`Client did not advertise the ${n} capability`)),aN=M(function*(e){return yT(e).pipe(bT({type:ST(`text`,`resource_link`)},e=>e),bT({type:ST(`image`,`audio`)},e=>({type:e.type,mimeType:e.mimeType,data:ja(e.data),annotations:e.annotations,_meta:e._meta})),bT({type:`resource`},e=>{let t=e.resource;return`text`in t?FM.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,_meta:t._meta,text:t.text},annotations:e.annotations,_meta:e._meta}):FM.make({type:`resource`,resource:{uri:t.uri,mimeType:t.mimeType,_meta:t._meta,blob:ja(t.blob)},annotations:e.annotations,_meta:e._meta})}),CT)}),mae=e=>`text`in e?{uri:e.uri,mimeType:e.mimeType,_meta:e._meta,text:e.text}:{uri:e.uri,mimeType:e.mimeType,_meta:e._meta,blob:ja(e.blob)},hae=e=>e===void 0||gae(e)?e:void 0,gae=e=>Oe(e),_ae=Jk({protocolVersion:OM,runtime:OA({jsonRpc:{acceptsBatches:!1},http:{requiresVersionHeader:!0}}),clientRpcs:tN,clientNotificationRpcs:eN,serverRequestRpcs:uae,serverNotificationRpcs:dae,handlerRpcs:nN,makeHandlers:(e,t)=>nN.of({initialize:(e,{client:n})=>t.initialize(OM,pae(e),n.id).pipe(j(e=>VM.make({protocolVersion:OM,capabilities:{experimental:e.capabilities.experimental,logging:e.capabilities.logging?{}:void 0,completions:e.capabilities.completions?{}:void 0,prompts:e.capabilities.prompts,resources:e.capabilities.resources,tools:e.capabilities.tools},serverInfo:e.serverInfo,instructions:e.instructions}))),"logging/setLevel":({level:e},{client:n,headers:r})=>t.setLogLevel(e,n.id,r).pipe(Bf({})),"notifications/cancelled":()=>D,"notifications/initialized":(e,{client:n,headers:r})=>t.clientNotification(OO.Initialized(),n.id,r),"notifications/progress":(e,{client:n,headers:r})=>t.clientNotification(OO.Progress({progressToken:e.progressToken,progress:e.progress,total:e.total,message:e.message,metadata:e._meta}),n.id,r),"notifications/roots/list_changed":(e,{client:n,headers:r})=>t.clientNotification(OO.RootsChanged(),n.id,r),"resources/list":t=>mO.use(t=>e.resources.list(Lk(t))).pipe(j(e=>qM.make({resources:e}))),"resources/templates/list":t=>mO.use(t=>e.resources.listTemplates(Lk(t))).pipe(j(e=>JM.make({resourceTemplates:e}))),"resources/read":M(function*({uri:t}){let n=yield*mO,r=yield*e.resources.read(t,Rk(n)).pipe(Kf(Bk.fromFeature));return YM.make({contents:r.contents.map(mae),_meta:r._meta})}),"resources/subscribe":({uri:e},{client:n,headers:r})=>t.subscribe(e,n.id,r).pipe(Bf({})),"resources/unsubscribe":({uri:e},{client:n,headers:r})=>t.unsubscribe(e,n.id,r).pipe(Bf({})),"prompts/list":t=>mO.use(t=>e.prompts.list(Lk(t))).pipe(j(e=>XM.make({prompts:e}))),"prompts/get":M(function*({arguments:t,name:n}){let r=yield*mO,i=yield*e.prompts.get(n,t??{},Rk(r)).pipe(Kf(Bk.fromFeature));if(i._tag===`InputRequired`)return yield*Bk.fromFeature(new EO({protocolVersion:OM,feature:`prompt input requirements`}));let a=i.value,o=yield*Sf(a.messages,e=>aN(e.content).pipe(j(t=>({role:e.role,content:t})),Kf(Bk.fromTool)));return ZM.make({description:a.description,messages:o,_meta:a._meta})}),"completion/complete":M(function*(t){let n=yield*mO,r=yield*e.completions.complete({reference:t.ref.type===`ref/prompt`?{type:`prompt`,name:t.ref.name,title:t.ref.title}:{type:`resourceTemplate`,uriTemplate:t.ref.uri},argument:t.argument,context:t.context?.arguments===void 0?void 0:{arguments:t.context.arguments},metadata:t._meta},Rk(n)).pipe(Kf(Bk.fromFeature));return KM.make({completion:{values:Array.from(r.values),total:r.total,hasMore:r.hasMore},_meta:r.metadata})}),"tools/list":M(function*(){let t=yield*mO,n=yield*e.tools.list(Lk(t));return QM.make({tools:n.map(e=>UM.make({name:e.name,title:e.title,description:e.description,inputSchema:e.inputSchema,outputSchema:fae(e.outputSchema)?e.outputSchema:void 0,annotations:e.annotations===void 0?void 0:mM.make({readOnlyHint:e.annotations.readOnlyHint,destructiveHint:e.annotations.destructiveHint,idempotentHint:e.annotations.idempotentHint,openWorldHint:e.annotations.openWorldHint}),_meta:e._meta}))})}),"tools/call":M(function*(t){let n=yield*mO,r=yield*e.tools.call({...t,arguments:t.arguments??{}},Rk(n)).pipe(A(e=>zk(OM,e)),Kf(Bk.fromTool)),i=yield*Sf(r.content,aN).pipe(Kf(Bk.fromTool)),a=hae(r.structuredContent);return WM.make({content:i,structuredContent:a,isError:r.isError,_meta:r._meta})})}),toReverseClient:(e,t)=>({listRoots:M(function*(n){yield*iN(e,`roots/list`,`roots`);let r=yield*Wk(QD.payloadSchema,zj.payloadSchema,n).pipe(Kf(()=>rN(`roots/list`,`Request is not representable by this protocol`))),{roots:i}=yield*t[`roots/list`](r).pipe(Kf(Uk(`roots/list`)));return new ZD({roots:i})}),createMessage:M(function*(n){yield*iN(e,`sampling/createMessage`,`sampling`);let r=yield*Gk(GD.payloadSchema,GM.payloadSchema,n).pipe(Kf(()=>rN(`sampling/createMessage`,`Request is not representable by this protocol`))),i=yield*t[`sampling/createMessage`](r).pipe(Kf(Uk(`sampling/createMessage`)));return yield*Wk(GM.successSchema,GD.successSchema,i).pipe(Kf(()=>rN(`sampling/createMessage`,`Response is not representable by the canonical model`)))}),elicit:M(function*(n){yield*iN(e,`elicitation/create`,`elicitation`);let r=n.mode===`form`?Tre(n,[`mode`]):n,i=yield*wC($M.payloadSchema,{onExcessProperty:`error`})(r).pipe(Kf(()=>rN(`elicitation/create`,`Request is not representable by this protocol`))),a=yield*t[`elicitation/create`](i).pipe(Kf(Uk(`elicitation/create`)));return yield*Wk($M.successSchema,lO.successSchema,a).pipe(Kf(()=>rN(`elicitation/create`,`Response is not representable by the canonical model`)))})}),projectNotification:e=>Kk({supportsProgressMessage:!0},e),normalizeCancellation:e=>wC(Bj.payloadSchema)(e).pipe(j(e=>({requestId:e.requestId,reason:e.reason,metadata:e._meta})))}),vae=Bie,yae=oM,oN=/\+/g,sN=function(){};sN.prototype=Object.create(null);function cN(e){let t=new sN;if(typeof e!=`string`)return t;let n=e.length,r=``,i=``,a=-1,o=-1,s=!1,c=!1,l=!1,u=!1,d=!1,f=0;for(let p=0;p<n+1;p++)if(f=p===n?38:e.charCodeAt(p),f===38){if(d=o>a,d||(o=p),r=e.slice(a+1,o),d||r.length>0){if(l&&(r=r.replace(oN,` `)),s)try{r=decodeURIComponent(r)||r}catch{}if(d&&(i=e.slice(o+1,p),u&&(i=i.replace(oN,` `)),c))try{i=decodeURIComponent(i)||i}catch{}let n=t[r];n===void 0?t[r]=i:n.pop?n.push(i):t[r]=[n,i]}i=``,a=p,o=p,s=!1,c=!1,l=!1,u=!1}else f===61?o<=a?o=p:c=!0:f===43?o>a?u=!0:l=!0:f===37&&(o>a?c=!0:s=!0);return t}var bae=/^https?:\/\/.*?\//,lN=/(\/:[^/()]*?)\?(\/?)/,xae=[],Sae=/^[^:*(]*\/:[^/:*(.-]+$/,Cae=e=>Sae.test(e),wae=(e={})=>new Tae(e),Tae=class{constructor(e={}){this.options={ignoreTrailingSlash:!0,ignoreDuplicateSlashes:!0,caseSensitive:!1,maxParamLength:100,...e}}options;routes=[];trees=Object.create(null);staticRoutes=Object.create(null);singleParamRoutes=Object.create(null);singleParamDisabled=Object.create(null);brothersNodesStack=[];singleParamArray=[``];on(e,t,n){let r=t.match(lN);if(r&&r.index!==void 0){kae(t.length===r.index+r[0].length,`Optional Parameter needs to be the last parameter of the path`);let i=t.replace(lN,`$1$2`),a=t.replace(lN,`$2`)||`/`;this.on(e,i,n),this.on(e,a,n);return}this.options.ignoreDuplicateSlashes&&(t=pN(t)),this.options.ignoreTrailingSlash&&(t=mN(t));let i=typeof e==`string`?[e]:e;for(let e of i)this._on(e,t,n)}all(e,t){this.on(Lae,e,t)}_on(e,t,n){this.trees[e]===void 0&&(this.trees[e]=new fN(`/`));let r=t;if(r===`*`&&this.trees[e].prefix.length!==0){let t=this.trees[e];this.trees[e]=new fN(``),this.trees[e].staticChildren[`/`]=t}let i=this.trees[e].prefix.length,a=this.trees[e],o=[];for(let e=0;e<=r.length;e++){if(r.charCodeAt(e)===58&&r.charCodeAt(e+1)===58){e++;continue}let t=r.charCodeAt(e)===58&&r.charCodeAt(e+1)!==58,n=r.charCodeAt(e)===42;if(t||n||e===r.length&&e!==i){let t=r.slice(i,e);this.options.caseSensitive||(t=t.toLowerCase()),t=t.split(`::`).join(`:`),t=t.split(`%`).join(`%25`),a=a.createStaticChild(t)}if(t){let t=!1,n=!0,s=``,c=[],l=``,u=e+1;for(let d=u;;d++){let f=r.charCodeAt(d),p=f===40,m=f===45||f===46,h=f===47||d===r.length;if(p||m||h){let f=r.slice(u,d);if(o.push(f),t=t||p||m,p){let e=Nae(r,d),t=r.slice(d,e+1);c.push(Pae(t)),d=e+1,n=!0}else c.push(n?`(.*?)`:`(${s}|(?:(?!${s}).)*)`),n=!1;let g=d;for(;d<r.length;d++){let e=r.charCodeAt(d);if(e===47)break;if(e===58){if(r.charCodeAt(d+1)===58)d++;else break}}let _=r.slice(g,d);if(_&&(_=_.split(`::`).join(`:`),_=_.split(`%`).join(`%25`),c.push(s=Fae(_))),u=d+1,l+=`()`+_,h||r.charCodeAt(d)===47||d===r.length){let n=t?l:_,o=r.slice(e,d);r=r.slice(0,e+1)+n+r.slice(d),e+=n.length;let s=t?RegExp(`^`+c.join(``)+`$`):void 0;a=a.createParametricChild(s,_,o),i=e+1;break}}}}else if(n&&(o.push(`*`),a=a.createWildcardChild(),i=e+1,e!==r.length-1))throw Error(`Wildcard must be the last character in the route`)}this.options.caseSensitive||(r=r.toLowerCase()),r===`*`&&(r=`/*`);for(let t of this.routes)if(t.method===e&&t.pattern===r)throw Error(`Method '${e}' already declared for route '${r}'`);let s={method:e,path:t,pattern:r,params:o,handler:n};if(this.routes.push(s),a.addRoute(s),o.length===0){let t=r.split(`::`).join(`:`).split(`%`).join(`%25`),n=this.staticRoutes[e]??=new Map;n.has(t)||n.set(t,a.handlerStorage.unconstrainedHandler)}else if(Cae(t)){if(this.singleParamDisabled[e]!==!0){let n=t.slice(0,t.indexOf(`:`));this.options.caseSensitive||(n=n.toLowerCase()),n=n.split(`%`).join(`%25`);let r=this.singleParamRoutes[e]??=new Map;r.has(n)||r.set(n,a.handlerStorage.unconstrainedHandler)}}else/[(*]|[^/]:|:[^/]*[-.]/.test(t)&&(this.singleParamDisabled[e]=!0,delete this.singleParamRoutes[e])}has(e,t){let n=this.trees[e];if(n===void 0)return!1;let r=n.getStaticChild(t);return r!==void 0&&r.isLeafNode}find(e,t){let n=this.trees[e];if(n===void 0)return;let r=``,i=!1,a=t.charCodeAt(0)===47&&(t.length===1||t.charCodeAt(t.length-1)!==47);if(a)for(let e=1;e<t.length;e++){let n=t.charCodeAt(e);if(n===37||n===63||n===59||n===35||n>=65&&n<=90||n===47&&t.charCodeAt(e-1)===47){a=!1;break}}if(!a){t.charCodeAt(0)!==47&&(t=t.replace(bae,`/`)),this.options.ignoreDuplicateSlashes&&(t=pN(t));let e;try{e=Iae(t),t=e.path,r=e.querystring,i=e.shouldDecodeParam}catch{return}this.options.ignoreTrailingSlash&&(t=mN(t))}let o=t;!a&&this.options.caseSensitive===!1&&(t=t.toLowerCase());let s=this.options.maxParamLength,c=this.staticRoutes[e];if(c!==void 0){let e=c.get(t);if(e!==void 0)return{handler:e.handler,params:e.createParams(xae),searchParams:cN(r)}}let l=this.singleParamRoutes[e];if(l!==void 0){let e=t.lastIndexOf(`/`)+1,n=l.get(t.slice(0,e));if(n!==void 0&&t.length>e){let t=o.slice(e);if(i&&(t=gN(t)),t.length<=s)return this.singleParamArray[0]=t,{handler:n.handler,params:n.createParams(this.singleParamArray),searchParams:cN(r)}}}let u=n.prefix.length,d=[],f=t.length,p=this.brothersNodesStack;for(p.length=0;;){if(u===f&&n.isLeafNode){let e=n.handlerStorage?.find();if(e!==void 0)return{handler:e.handler,params:e.createParams(d),searchParams:cN(r)}}let e=n.getNextNode(t,u,p,d.length);if(e===void 0){if(p.length===0)return;let t=p.pop();u=t.brotherPathIndex,d.splice(t.paramsCount),e=t.brotherNode}for(n=e;;){if(n._tag===`StaticNode`){u+=n.prefix.length;break}if(n._tag===`WildcardNode`){let e=o.slice(u);i&&(e=gN(e)),d.push(e),u=f;break}let e=o.indexOf(`/`,u);e===-1&&(e=f);let t=o.slice(u,e);if(i&&(t=gN(t)),n.regex!==void 0){let e=n.regex.exec(t);if(e===null){if(p.length===0)return;let e=p.pop();u=e.brotherPathIndex,d.splice(e.paramsCount),n=e.brotherNode;continue}let r=!1;for(let t=1;t<e.length;t++)if((e[t]??``).length>s){r=!0;break}if(r){if(p.length===0)return;let e=p.pop();u=e.brotherPathIndex,d.splice(e.paramsCount),n=e.brotherNode;continue}for(let t=1;t<e.length;t++)d.push(e[t]??``)}else{if(t.length>s){if(p.length===0)return;let e=p.pop();u=e.brotherPathIndex,d.splice(e.paramsCount),n=e.brotherNode;continue}d.push(t)}u=e;break}}}},Eae=class{handlers=[];unconstrainedHandler;find(){return this.unconstrainedHandler}add(e){let t={params:e.params,handler:e.handler,createParams:Mae(e.params)};this.handlers.push(t),this.unconstrainedHandler=this.handlers[0]}},uN=class{isLeafNode=!1;routes;handlerStorage;addRoute(e){this.routes===void 0?this.routes=[e]:this.routes.push(e),this.handlerStorage===void 0&&(this.handlerStorage=new Eae),this.isLeafNode=!0,this.handlerStorage.add(e)}},dN=class extends uN{staticChildren=Object.create(null);findStaticMatchingChild(e,t){let n=this.staticChildren[e.charAt(t)];if(!(n===void 0||!n.matchPrefix(e,t)))return n}getStaticChild(e,t=0){if(e.length===t)return this;let n=this.findStaticMatchingChild(e,t);if(n!==void 0)return n.getStaticChild(e,t+n.prefix.length)}createStaticChild(e){if(e.length===0)return this;let t=this.staticChildren[e.charAt(0)];if(t){let n=1;for(;n<t.prefix.length;n++)if(e.charCodeAt(n)!==t.prefix.charCodeAt(n)){t=t.split(this,n);break}return t.createStaticChild(e.slice(n))}let n=e.charAt(0);return this.staticChildren[n]=new fN(e),this.staticChildren[n]}},fN=class e extends dN{_tag=`StaticNode`;constructor(e){super(),this.setPrefix(e)}prefix;matchPrefix;parametricChildren=[];wildcardChild;setPrefix(e){if(this.prefix=e,e.length===1)this.matchPrefix=(e,t)=>!0;else{let t=e.slice(1);this.matchPrefix=(e,n)=>e.startsWith(t,n+1)}}getParametricChild(e){if(e===void 0)return this.parametricChildren.find(e=>e.isRegex===!1);let t=e.source;return this.parametricChildren.find(e=>e.regex!==void 0&&e.regex.source===t)}createParametricChild(e,t,n){let r=this.getParametricChild(e);return r===void 0?(r=new Dae(e,t,n),this.parametricChildren.push(r),this.parametricChildren.sort((e,t)=>e.isRegex?t.isRegex?e.staticSuffix===void 0?1:t.staticSuffix===void 0?-1:t.staticSuffix.endsWith(e.staticSuffix)?1:e.staticSuffix.endsWith(t.staticSuffix)?-1:0:-1:1),r):(r.nodePaths.add(n),r)}createWildcardChild(){return this.wildcardChild===void 0&&(this.wildcardChild=new Oae),this.wildcardChild}split(t,n){let r=this.prefix.slice(0,n),i=this.prefix.slice(n);this.setPrefix(i);let a=new e(r);return a.staticChildren[i.charAt(0)]=this,t.staticChildren[r.charAt(0)]=a,a}getNextNode(e,t,n,r){let i=this.findStaticMatchingChild(e,t),a=0;if(i===void 0){if(this.parametricChildren.length===0)return this.wildcardChild;i=this.parametricChildren[0],a=1}this.wildcardChild!==void 0&&n.push({paramsCount:r,brotherPathIndex:t,brotherNode:this.wildcardChild});for(let e=this.parametricChildren.length-1;e>=a;e--)n.push({paramsCount:r,brotherPathIndex:t,brotherNode:this.parametricChildren[e]});return i}},Dae=class extends dN{_tag=`ParametricNode`;regex;staticSuffix;constructor(e,t,n){super(),this.regex=e,this.staticSuffix=t,this.isRegex=!!e,this.nodePaths=new Set([n])}isRegex;nodePaths;getNextNode(e,t){return this.findStaticMatchingChild(e,t)}},Oae=class extends uN{_tag=`WildcardNode`;getNextNode(e,t,n,r){}},kae=(e,t)=>{if(!e)throw Error(t)};function pN(e){return e.indexOf(`//`)===-1?e:e.replace(/\/\/+/g,`/`)}function mN(e){return e.length>1&&e.charCodeAt(e.length-1)===47?e.slice(0,-1):e}var Aae=/^[A-Za-z_$][A-Za-z0-9_$]*$/,jae=e=>e!==`__proto__`&&Aae.test(e);function Mae(e){let t=e.length;if(t===0)return()=>Object.create(null);if(e.every(jae)&&new Set(e).size===t)try{return Function(`a`,`return {__proto__:null,${e.map((e,t)=>`${e}:a[${t}]`).join(`,`)}}`)}catch{}return function(n){let r=Object.create(null);for(let i=0;i<t;i++)r[e[i]]=n[i];return r}}function Nae(e,t){let n=1;for(;t<e.length;){if(t++,e[t]===`\\`){t++;continue}if(e[t]===`)`?n--:e[t]===`(`&&n++,!n)return t}throw TypeError(`Invalid regexp expression in "`+e+`"`)}function Pae(e){return e.charCodeAt(1)===94&&(e=e.slice(0,1)+e.slice(2)),e.charCodeAt(e.length-2)===36&&(e=e.slice(0,e.length-2)+e.slice(e.length-1)),e}function Fae(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function hN(e,t){if(e===50)return t===53?`%`:t===51?`#`:t===52?`$`:t===54?`&`:t===66||t===98?`+`:t===67||t===99?`,`:t===70||t===102?`/`:void 0;if(e===51)return t===65||t===97?`:`:t===66||t===98?`;`:t===68||t===100?`=`:t===70||t===102?`?`:void 0;if(e===52&&t===48)return`@`}function Iae(e){let t=!1,n=!1,r=``;for(let i=1;i<e.length;i++){let a=e.charCodeAt(i);if(a===37){let r=e.charCodeAt(i+1),a=e.charCodeAt(i+2);hN(r,a)===void 0?t=!0:(n=!0,r===50&&a===53&&(t=!0,e=e.slice(0,i+1)+`25`+e.slice(i+1),i+=2),i+=2)}else if(a===63||a===59||a===35){r=e.slice(i+1),e=e.slice(0,i);break}}return{path:t?decodeURI(e):e,querystring:r,shouldDecodeParam:n}}function gN(e){let t=e.indexOf(`%`);if(t===-1)return e;let n=``,r=t;for(let i=t;i<e.length;i++)if(e.charCodeAt(i)===37){if(i+2>=e.length)break;let t=hN(e.charCodeAt(i+1),e.charCodeAt(i+2));n+=e.slice(r,i)+t,r=i+3}return e.slice(0,t)+n+e.slice(r)}var Lae=`ACL.BIND.CHECKOUT.CONNECT.COPY.DELETE.GET.HEAD.LINK.LOCK.M-SEARCH.MERGE.MKACTIVITY.MKCALENDAR.MKCOL.MOVE.NOTIFY.OPTIONS.PATCH.POST.PROPFIND.PROPPATCH.PURGE.PUT.QUERY.REBIND.REPORT.SEARCH.SOURCE.SUBSCRIBE.TRACE.UNBIND.UNLINK.UNLOCK.UNSUBSCRIBE`.split(`.`),Rae=wae,zae=M(function*(e,t){let n=t.disableTracing!==!0,r=t.disableSpanPropagation!==!0,i=t.disableClientAcks!==!0,a=t.spanPrefix??`RpcServer`,o=t.concurrency??`unbounded`,s=t.disableFatalDefects??!1,c=yield*sp(),l=$r(c,qu),u=vm(ed(l,`parallel`)),d=o===`unbounded`?void 0:yield*Kh(o),f=new Map,p=!1,m=ym(!1);yield*Qu(l,Pf(e=>{p=!0;for(let t of f.values()){if(t.ended=!0,t.fibers.size===0){u(Vp(c)(_(t)));continue}for(let n of t.fibers.values())n.interruptUnsafe(e.id)}return f.size===0?D:m.await}));let h=e=>Pf(t=>{let n=f.get(e);if(!n)return D;for(let e of n.fibers.values())e.interruptUnsafe(t.id);return f.delete(e),D}),g=(e,n,r)=>Gf(Pf(i=>{if(p)return Sp;let a=f.get(e);if(!a)a={id:e,latches:void 0,fibers:new Map,ended:!1,serverClient:new cE(e)},f.set(e,a);else if(a.ended&&(n._tag!==`Interrupt`||!a.fibers.has(n.requestId)))return Sp;switch(n._tag){case`Request`:return v(i,a,n,r);case`Ack`:{let e=a.latches?.get(n.requestId);return e?e.open:D}case`Interrupt`:{let r=a.fibers.get(n.requestId);return r?(r.interruptUnsafe(i.id,oE.annotation),D):t.onFromServer({_tag:`Exit`,clientId:e,requestId:n.requestId,exit:ku()})}case`Eof`:return a.ended=!0,a.fibers.size>0?D:_(a);default:return b(a,`Unknown request tag: ${n._tag}`)}}),t=>b(f.get(e),t)),_=e=>{f.delete(e.id);let n=t.onFromServer({_tag:`ClientEnd`,clientId:e.id});return p&&f.size===0?Ff(n,m.open):n},v=(i,o,l,f)=>{if(o.fibers.has(l.id))return Sp;let p=e.requests.get(l.tag),m=Zr(c,p?.key);if(!p||!m){let e=Gf(t.onFromServer({_tag:`Exit`,clientId:o.id,requestId:l.id,exit:Ou(`Unknown request tag: ${l.tag}`)}),e=>b(o,e));return!o.ended||o.fibers.size>0?e:yp(e,_(o))}let h=nE(p.successSchema),g={rpc:p,client:o.serverClient,requestId:l.id,headers:l.headers,payload:l.payload},v=m.handler(l.payload,g),ee=mE(v),te=ee&&v.fork,x=ee&&v.uninterruptible,S=ee?v.value:v,ne=h?y(o,l,S):S,re=p.middlewares.size>0?Vae(c,ne,g):ne,ie=!1,ae=Yu(),oe,se=xp(re,e=>{ie=!0;let n;e._tag===`Success`?Pu(e.value)?(oe=e.value,n=D):n=t.onFromServer({_tag:`Exit`,clientId:o.id,requestId:l.id,exit:e}):n=!s&&du(e.cause)&&!fu(e.cause)?b(o,cu(e.cause)):t.onFromServer({_tag:`Exit`,clientId:o.id,requestId:l.id,exit:e});let r=nd(ae,e);return e._tag===`Failure`&&Xl(_m(),e.cause),r?yp(n,r):n});if(f?.onRequest&&(se=f.onRequest(se)),n){let e=Xr(i.context,za);se=Pp(se,`${a}.${l.tag}`,{captureStackTrace:!1,attributes:t.spanAttributes,parent:r&&l.spanId?Ba({traceId:l.traceId,spanId:l.spanId,sampled:l.sampled}):void 0,links:r&&e?[{span:e,attributes:{}}]:void 0})}!te&&d&&(se=d.withPermit(se));let ce=Vp(Yr(Bae(m,i.context),qu,ae)),le=u(ce(se,x?{uninterruptible:!0}:void 0));return o.fibers.set(l.id,le),le.addObserver(function e(n){if(oe){let n=u(ce(xp(zu(oe),e=>t.onFromServer({_tag:`Exit`,clientId:o.id,requestId:l.id,exit:e}))));o.fibers.set(l.id,n),oe=void 0,n.addObserver(e);return}!ie&&n._tag===`Failure`&&u(ce(t.onFromServer({_tag:`Exit`,clientId:o.id,requestId:l.id,exit:ku()}))),o.fibers.delete(l.id),o.latches?.delete(l.id),o.ended&&o.fibers.size===0&&u(ce(_(o)))}),D},y=(e,n,r)=>{let a;return i&&(e.latches??=new Map,a=e.latches.get(n.id),a||(a=ym(!1),e.latches.set(n.id,a))),bf(r)?r.pipe(A(r=>Cf({while:re,body:ne(A(Ch(r),r=>{let i=t.onFromServer({_tag:`Chunk`,clientId:e.id,requestId:n.id,values:r});return a?(a.closeUnsafe(),A(i,()=>a.await)):i})),step:se})),Xd(()=>D),hp):X_(r,r=>{let i=t.onFromServer({_tag:`Chunk`,clientId:e.id,requestId:n.id,values:r});return a?(a.closeUnsafe(),Ff(i,a.await)):i})},b=(e,n)=>Ef(()=>{let r=e.ended&&e.fibers.size===0,i=t.onFromServer({_tag:`Defect`,clientId:e.id,defect:n});return r?Ff(i,_(e)):i});return S({write:g,disconnect:h})}),_N=new WeakMap,Bae=(e,t)=>{let n=_N.get(e);n===void 0&&(n=new WeakMap,_N.set(e,n));let r=n.get(t);return r===void 0&&(r=ii(e.context,t),n.set(t,r)),r},Vae=(e,t,n)=>{for(let r of n.rpc.middlewares)t=Qr(e,r)(t,n);return t},Hae=M(function*(e,t){let{codecFor:n,disconnects:r,end:i,run:a,send:o,supportsAck:s,supportsSpanPropagation:c,supportsTransferables:l}=yield*vN,u=jC(n(Nw())),d=yield*sp(),f=yield*Ju(),p=yield*zae(e,{...t,disableClientAcks:!s,disableSpanPropagation:!c,onFromServer(e){let t=g.get(e.clientId);if(!t)return D;switch(e._tag){case`Chunk`:{let n=t.schemas.get(e.requestId);return n?v(t,e.requestId,n,n.encodeChunk(e.values),`Chunk`):D}case`Exit`:{let n=t.schemas.get(e.requestId);return n?(t.schemas.delete(e.requestId),v(t,e.requestId,n,n.encodeExit(e.exit),`Exit`)):D}case`Defect`:return b(t,e.defect);case`ClientEnd`:return g.delete(e.clientId),i(e.clientId)}}}).pipe(Xu(f));yield*Ip(Cf({while:re,body:ne(A(Th(r),e=>(g.delete(e),p.disconnect(e)))),step:se}));let m=new WeakMap,h=e=>{let t=m.get(e);if(!t){let r=Zr(d,e.key),i=rE(e.successSchema);t={decode:wC(n(e.payloadSchema)),encodeChunk:OC(n(tw(br(i)?i.value.success:HC))),encodeExit:OC(n(fE(e))),encodeDefect:OC(n(e.defectSchema)),context:r.context},m.set(e,t)}return t},g=new Map,_=(e,t,n)=>t===`Chunk`?{_tag:`Chunk`,requestId:e,values:n}:{_tag:`Exit`,requestId:e,exit:n},v=(e,t,n,r,i)=>{let a=n.collector;return Wf(wu(r)&&ju(r)?o(e.id,_(t,i,r.value),a&&a.clearUnsafe()):A(up(a?pp(r,nk,a):r,n.context),n=>o(e.id,_(t,i,n),a&&a.clearUnsafe())),r=>{e.schemas.delete(t);let i=cu(su(r,e=>my(e.issue)));return Ff(y(e,t,n.encodeDefect,i),p.write(e.id,{_tag:`Interrupt`,requestId:t,interruptors:[]}))})},y=(e,t,n,r)=>Wf(A(n(r),n=>o(e.id,{_tag:`Exit`,requestId:t,exit:{_tag:`Failure`,cause:[{_tag:`Die`,defect:n}]}})),t=>b(e,cu(t))),b=(e,t)=>Wf(o(e.id,ak(u(t))),e=>Jp(qp(e),{module:`RpcServer`,method:`sendDefect`})),ee=(e,t,n,r,i)=>{e.schemas.set(t,l?{...n,collector:rk()}:n);let a=r;return a.id=t,a.payload=i,a.headers=oC(r.headers),p.write(e.id,a)};return yield*a((t,n)=>{let r=g.get(t);switch(r||(r={id:t,schemas:new Map},g.set(t,r)),n._tag){case`Request`:{let t=Object.hasOwn(n,`tag`)?n.tag:``,i;switch(typeof n.id){case`number`:case`string`:i=ik(n.id);break;default:return b(r,`Invalid request id: ${n.id}`)}let a=e.requests.get(t);if(!a)return y(r,i,e=>T(e),`Unknown request tag: ${t}`);let o=h(a),s=o.decode(n.payload);return wu(s)&&ju(s)?ee(r,i,o,n,s.value):op(up(s,o.context),{onFailure:e=>y(r,i,o.encodeDefect,my(e.issue)),onSuccess:e=>ee(r,i,o,n,e)})}case`Ping`:return Wf(o(r.id,ok),e=>b(r,cu(e)));case`Eof`:return p.write(t,n);case`Ack`:return p.write(t,n);case`Interrupt`:return p.write(t,{...n,requestId:ik(n.requestId),interruptors:[]});default:return b(r,`Unknown request tag: ${n._tag}`)}}).pipe(Yf(e=>Wp(`BUG: RpcServer protocol crashed`,e)),xp(e=>td(f,e)))}),vN=class extends jr()(`effect/rpc/RpcServer/Protocol`){static make=Sk()},Uae=Sd(vN,O(function*(){let e=yield*Q_,t=_m(),n=yield*uk;return yield*vN.make(M(function*(r){let i=yield*uh(8),a=n.makeUnsafe();return yield*e.stdin.pipe(Y_(e=>{let t=a.decode(e);if(t.length===0)return D;let n=0;return Cf({while:()=>n<t.length,body:()=>r(0,t[n++]),step:se})}),Rte,Jf(Kp),Xf(mf(500)),yp(zp(gm(t),{startImmediately:!0})),Rp),yield*N_(i).pipe(q_(e.stdout()),Xf(mf(500)),Rp),{disconnects:yield*lh(),send(e,t){let n=a.encode(t);return n===void 0?D:fh(i,n)},end(e){return vh(i)},clientIds:T(new Set([0])),initialMessage:Tf,supportsAck:!0,supportsTransferables:!1,supportsSpanPropagation:!0,supportsNotifications:!0,codecFor:n.codecFor}}))})),yN=new WeakMap,Wae=vO.omit(`notifications/elicitation/complete`),bN=CC(ID),Gae=e=>{switch(e.tag){case`notifications/cancelled`:return kO.Cancelled({requestId:e.payload.requestId,reason:e.payload.reason,metadata:e.payload._meta});case`notifications/progress`:return kO.Progress({progressToken:e.payload.progressToken,progress:e.payload.progress,total:e.payload.total,message:e.payload.message,metadata:e.payload._meta});case`notifications/message`:return kO.LoggingMessage({level:e.payload.level,logger:e.payload.logger,data:e.payload.data,metadata:e.payload._meta});case`notifications/resources/updated`:return kO.ResourceUpdated({uri:e.payload.uri,metadata:e.payload._meta});case`notifications/resources/list_changed`:return kO.ResourcesChanged({metadata:e.payload?._meta});case`notifications/tools/list_changed`:return kO.ToolsChanged({metadata:e.payload?._meta});case`notifications/prompts/list_changed`:return kO.PromptsChanged({metadata:e.payload?._meta});default:return}},xN=oi(pO,mO,sA,Ku),SN=(e,t)=>{let n=pp(e,pO,t.requestContext),r=t.requestContext.requestMetadata,i=C(r,`io.modelcontextprotocol/logLevel`)?r[`io.modelcontextprotocol/logLevel`]:void 0;return bN(i)&&(n=pp(n,Ku,Fk[i].effect)),t.serverClient===void 0?n:pp(n,mO,t.serverClient)},CN=class e extends jr()(`effect/ai/McpServer`){static make=O(function*(){let t=yield*AO,n=ki(),r=[],i=[],a=[],o=yield*lh(),s={consumers:0},c=new Set,l=(yield*Sa).makeDispatcher(),u=yield*Tk(Wae,{spanPrefix:`McpServer/Notifications`,onFromClient:e=>Ru().pipe(A(t=>Pf(n=>{let r=e.message;if(r._tag!==`Request`)return D;let i=Gae(r);if(i===void 0)return D;let a={notification:i,delivered:t,requestContext:Xr(n.context,pO),requestHeaders:Xr(n.context,sA)?.headers},d=!1;if(r.tag.includes(`list_changed`)){if(!c.has(r.tag)){d=!0;let e=r.tag;l.scheduleTask(()=>{ph(o,a),c.delete(r.tag)},0),c.add(e)}}else d=!0,ph(o,a);let f=Ef(()=>u.write({clientId:0,requestId:r.id,_tag:`Exit`,exit:Au}));return d&&a.requestContext!==void 0&&s.consumers>0?Ff(zu(t),f):f})))}),d=e.of({notifications:u.client,notifyElicitationComplete:({clientId:e,elicitationId:t})=>Ru().pipe(A(n=>fh(o,{notification:kO.ElicitationComplete({elicitationId:t}),targetClientId:e,delivered:n}).pipe(Ff(Ef(()=>s.consumers>0?zu(n):D))))),get tools(){return n},addTool:e=>O(function*(){let r=n.findIndex(({tool:t})=>t.name===e.tool.name);r===-1?n.push(e):n[r]=e;let i=Xr(e.annotations,yO);yield*t.tools.register({descriptor:new AD({...e.tool,title:e.tool.title??e.tool.annotations?.title}),isVisible:e=>i===void 0||i({protocolVersion:e.protocolVersion,capabilities:e.clientCapabilities,clientInfo:e.clientInfo}),handle:(t,n)=>SN(e.handle(t.arguments),n).pipe(Lte({InternalError:t=>k(new TO({name:e.tool.name,message:t.message})),InvalidParams:t=>k(new(n.requestContext.requestState===void 0&&n.requestContext.inputResponses===void 0?CO:wO)({name:e.tool.name,message:t.message}))}),j(e=>Ae(e,`InputRequired`)?bO.InputRequired(e):bO.Complete(e)))}),yield*u.client[`notifications/tools/list_changed`]({})}),callTool:e=>O(function*(){let n=yield*mO,r=yield*t.tools.call(e,Rk(n)).pipe(Kf(e=>new GE({message:e._tag===`ToolNotFound`?`Tool '${e.name}' not found`:e.message})));return r._tag===`InputRequired`?yield*new GE({message:`Client input is not supported by this MCP protocol`}):r.value}),get resources(){return r},get resourceTemplates(){return i},addResource:e=>O(function*(){let n=r.findIndex(({resource:t})=>t.uri===e.resource.uri);n===-1?r.push(e):r[n]=e,yield*t.resources.register({descriptor:e.resource,isVisible:t=>{let n=Xr(e.annotations,yO);return n===void 0||n({protocolVersion:t.protocolVersion,capabilities:t.clientCapabilities,clientInfo:t.clientInfo})},read:t=>SN(e.handle,t)}),yield*u.client[`notifications/resources/list_changed`]({})}),addResourceTemplate:({annotations:e,completions:n,handle:r,routerPath:a,template:o})=>O(function*(){let s=i.findIndex(({template:e})=>e.uriTemplate===o.uriTemplate);s===-1?i.push({template:o,annotations:e}):i[s]={template:o,annotations:e};let c=ioe();c.add(a,!0),yield*t.resources.registerTemplate({descriptor:o,isVisible:t=>{let n=Xr(e,yO);return n===void 0||n({protocolVersion:t.protocolVersion,capabilities:t.clientCapabilities,clientInfo:t.clientInfo})},match:e=>{let t=c.find(e);if(t===void 0)return;let n=[];for(let e of Object.keys(t.params))n[Number(e)]=t.params[e];return n},read:(e,t,n)=>SN(r(e,Array.from(t)),n)});for(let[e,r]of Object.entries(n))yield*t.completions.register(`resource/${o.uriTemplate}/${e}`,(e,t)=>SN(r(e.argument.value,e.context),t).pipe(j(e=>({values:e.completion.values,total:e.completion.total,hasMore:e.completion.hasMore,metadata:e._meta}))));yield*u.client[`notifications/resources/list_changed`]({})}),findResource:e=>O(function*(){let n=yield*mO;return yield*t.resources.read(e,Rk(n)).pipe(Uf(`ResourceNotFound`,e=>k(new GE({message:`Resource '${e.uri}' not found`}))))}),get prompts(){return a},addPrompt:e=>O(function*(){let n=a.findIndex(({prompt:t})=>t.name===e.prompt.name);n===-1?a.push(e):a[n]=e,yield*t.prompts.register({descriptor:e.prompt,isVisible:t=>{let n=Xr(e.annotations,yO);return n===void 0||n({protocolVersion:t.protocolVersion,capabilities:t.clientCapabilities,clientInfo:t.clientInfo})},get:(t,n)=>SN(e.handle(t),n).pipe(j(e=>Ae(e,`InputRequired`)?bO.InputRequired(e):bO.Complete(e)))});for(let[n,r]of Object.entries(e.completions))yield*t.completions.register(`prompt/${e.prompt.name}/${n}`,(e,t)=>SN(r(e.argument.value,e.context),t).pipe(j(e=>({values:e.completion.values,total:e.completion.total,hasMore:e.completion.hasMore,metadata:e._meta}))));yield*u.client[`notifications/prompts/list_changed`]({})}),getPromptResult:M(function*({arguments:e,name:n}){let r=yield*mO,i=yield*t.prompts.get(n,e??{},Rk(r)).pipe(Uf(`PromptNotFound`,()=>new GE({message:`Prompt '${n}' not found`})));return i._tag===`Complete`?i.value:yield*new GE({message:`Client input is not supported by this MCP protocol`})}),completion:M(function*(e){let n=yield*mO,r=e.ref,i=yield*t.completions.complete({reference:r.type===`ref/resource`?{type:`resourceTemplate`,uriTemplate:r.uri}:{type:`prompt`,name:r.name},argument:e.argument,context:e.context},Rk(n));return{_meta:i.metadata,completion:{values:i.values,total:i.total,hasMore:i.hasMore}}})});return yN.set(d,{core:t,notifications:o,notificationDelivery:s}),d});static layer=Sd(e)(e.make)},wN=`mcp-session-id`,Kae=`mcp-protocol-version`,TN=`invalid/json-rpc-batch`,EN=new WeakMap,DN=e=>`${typeof e}:${e}`,ON=class extends Ea{},qae=M(function*(e,t,n){let r=yield*vN,i=yield*CN,a=yield*Ku,o=n===`http`,s=new Map,c=new Map,l=new Map,u=e=>{c.delete(e),s.delete(e),t.disconnect(e)},d=(e,t,n)=>r.send(e,{_tag:`Exit`,requestId:t,exit:{_tag:`Failure`,cause:[{_tag:`Fail`,error:n}]}}),f=(e,t)=>{let n=l.get(e);if(n===void 0)return;let r=n.filter(e=>e!==t);r.length===0?l.delete(e):l.set(e,r)},p=yield*Rm(),m=(e,n,i)=>Ef(()=>{let a=t.selectProtocol(e),o=a.serverNotificationRpcs.requests.get(i.tag);return o===void 0?jf(`MCP protocol ${e} does not define server notification ${i.tag}`):a.payloadCodecs(o).encode(i.payload).pipe(qf,A(e=>r.send(n,{_tag:`Request`,id:``,tag:i.tag,payload:e,headers:[],isNotification:!0})))}),h=(e,t)=>{let n=c.get(e),r=DN(t),i=n?.get(r);return i!==void 0&&(n.set(r,{...i,cancelled:!0}),!0)},g=yield*t.installHandlers({core:yN.get(i).core,subscribeServerNotifications:Vm(p),...r.supportsNotifications?{sendNotification:m,markSubscriptionCancelled:(e,t)=>E(()=>{h(e,t)}),terminateSubscription:(e,t,n,i)=>Ef(()=>h(t,n)?o?r.end(t):m(e,t,{tag:`notifications/cancelled`,payload:{requestId:n,reason:i}}):D)}:{},defaultLogLevel:a,serverInfo:e}),_=yield*y_({lookup:M(function*(e){let n=t.selectProtocol(e.profile.protocolVersion),i,a=yield*Ak.make(M(function*(t){let n=0;return i=e=>t(n,e),{send(t,i,a){if(n=t,i._tag===`Request`){let t=DN(i.id),n=l.get(t)??[];return n.push(e),l.set(t,n),r.send(e.clientId,{_tag:`Request`,id:i.id,tag:i.tag,payload:i.payload,headers:[]}).pipe(bp(()=>E(()=>f(t,e))))}return i._tag===`Interrupt`&&f(DN(i.requestId),e),r.send(e.clientId,i)},supportsAck:!0,supportsTransferables:!1,supportsStructuredClone:!1,codecFor:r.codecFor}}));return{client:yield*n.makeReverseClient(e.profile).pipe(pp(Ak,a)),write:i}}),idleTimeToLive:1e4}),v=hO.of((e,{client:n,headers:r,payload:i,rpc:o})=>{let c=t.resolveRequest(n.id,r);if(!o._tag.endsWith(`/initialize`)&&!c){let e=Xr(_m().context,sA);return e&&lA(e,()=>T(Qk({status:r[wN]===void 0?400:404}))),jf(Error(`Mcp-Session-Id does not exist`))}let l=c?.initializePayload??i,u=s.get(n.id),d=c?.protocol??u?.protocol??t.protocolForInternalTag(o._tag);if(!ooe(d.protocolVersion)||d.protocolVersion===`2026-07-28`)return jf(`Unsupported selected MCP protocol version: ${d.protocolVersion}`);let f=c?.negotiatedProfile??{protocolVersion:d.protocolVersion,clientCapabilities:l.capabilities,clientInfo:l.clientInfo};u!==void 0&&(u.profile=f);let p=pO.of({clientId:n.id,protocolVersion:f.protocolVersion,clientCapabilities:f.clientCapabilities,clientInfo:f.clientInfo,requestMetadata:l._meta});return pp(pp(pp(e,mO,mO.of({clientId:n.id,protocolVersion:f.protocolVersion,clientCapabilities:f.clientCapabilities,clientInfo:f.clientInfo,initializePayload:l,requestMetadata:Oe(i)&&Oe(i._meta)?i._meta:void 0,getClient:b_(_,new ON({clientId:n.id,profile:f})).pipe(j(({client:e})=>e))})),pO,p),Ku,t.effectLogLevel(n.id,r,a))}),y=vN.of({...r,send:(e,t)=>{if(t._tag===`Exit`){let i=c.get(e),a=DN(t.requestId),o=i?.get(a)?.cancelled;if(i!==void 0&&i.delete(a)&&i.size===0&&c.delete(e),o===!0)return n===`custom`?D:(EN.set(t,t.requestId),r.send(e,t));if(t.exit._tag===`Failure`&&!t.exit.cause.some(e=>e._tag===`Fail`))return r.send(e,{_tag:`Exit`,requestId:t.requestId,exit:{_tag:`Failure`,cause:[{_tag:`Fail`,error:new KE({message:`Internal error`})}]}})}return r.send(e,t)},run:e=>r.run((n,r)=>{let i=_m(),a=r,p=o?Xr(i.context,sA):void 0;switch(p!==void 0&&a._tag!==`Eof`&&lA(p,(e,t)=>T(t.status===200&&t.body._tag===`Uint8Array`&&t.body.contentLength===0?Qk({headers:dC(t.headers,`content-type`),status:202}):t)),a._tag){case`Request`:{let r=o?Qr(_m().context,sA).headers:oC(a.headers),l=a.tag===`notifications/cancelled`&&typeof a.payload==`object`&&a.payload!==null&&`requestId`in a.payload&&(typeof a.payload.requestId==`string`||typeof a.payload.requestId==`number`)?c.get(n)?.get(DN(a.payload.requestId)):void 0,f=l===void 0?t.prepareRequest(n,r,a):T(l.prepared);return O(function*(){let l=yield*f,m=s.get(n);o&&m===void 0&&(yield*Qu(Qr(i.context,qu),E(()=>u(n))));let _=l.binding,v=l.protocol;if(s.set(n,{protocol:v,profile:l.profile??m?.profile,sessionHeaders:o&&r[wN]!==void 0?oC({[wN]:r[wN]}):m?.sessionHeaders}),a.tag===TN)return yield*d(n,a.id,new UE({message:`JSON-RPC batches are not supported`}));p!==void 0&&_!==void 0&&lA(p,(e,t)=>T(tA(t,Kae,_.protocol.protocolVersion)));let y=t.routeClientRequest(v,a),b=t.clientRpcs.requests.get(y.tag),ee=v.clientNotificationRpcs.requests.has(a.tag);if(b&&ee&&a.isNotification){if(!_&&v.runtime._tag===`Stateful`){p&&lA(p,()=>T(Qk({status:r[wN]===void 0?400:404})));return}let t=v.payloadCodecs(b).decode(a.payload);return yield*O(function*(){let i=yield*t;if(a.tag===`notifications/cancelled`){let t=yield*v.normalizeCancellation(i),r=DN(t.requestId),a=n;if(o){if(_===void 0)return;let e=Array.from(c).find(([,e])=>e.get(r)?.prepared.binding===_);if(e===void 0)return;a=e[0]}return h(a,t.requestId)?yield*e(a,{_tag:`Interrupt`,requestId:t.requestId}):void 0}let s=g.mapUnsafe.get(b.key),u=s?s.handler(i,{rpc:b,requestId:ik(a.id),client:new cE(n),headers:r}):D;return yield*l.requestContext===void 0?u:pp(u,pO,l.requestContext)}).pipe(Qf)}if(!b||ee)return a.isNotification?void 0:yield*d(n,a.id,new WE({message:`Method not found: ${a.tag}`}));if(pi(yield*Lf(v.payloadCodecs(b).decode(a.payload))))return yield*a.isNotification?D:d(n,a.id,new GE({message:`Invalid method parameters`}));if(a.isNotification!==!0){let e=c.get(n)??new Map;e.set(DN(a.id),{prepared:l,cancelled:!1}),c.set(n,e)}let te=e(n,y);return yield*l.requestContext===void 0?te:pp(te,pO,l.requestContext)}).pipe(Hf(e=>a.isNotification?D:d(n,a.id,Ae(e,`ProtocolError`)?Bk.fromFeature(e):new GE({message:`Invalid request metadata`}))))}case`Ping`:case`Ack`:case`Interrupt`:return e(n,a);case`Eof`:return o||u(n),e(n,a);case`Pong`:case`Exit`:case`Chunk`:case`ClientProtocolError`:case`Defect`:{let e=a._tag===`Exit`?DN(a.requestId):void 0,r=o?t.resolveRequest(n,Qr(_m().context,sA).headers):void 0,i=(e===void 0?void 0:l.get(e))?.find(e=>o?e.profile===r?.negotiatedProfile:e.clientId===n);if(a._tag===`Exit`&&i===void 0)return D;i!==void 0&&e!==void 0&&f(e,i);let c=i?.clientId??n,u=s.get(c),d=u?.protocol??t.protocols[0],p=i?.profile??u?.profile??{protocolVersion:d.protocolVersion,clientCapabilities:{},clientInfo:{name:`unknown`,version:`unknown`}};return b_(_,new ON({clientId:c,profile:p})).pipe(A(({write:e})=>e(a)),hp)}}})}),{notificationDelivery:b,notifications:ee}=yN.get(i);yield*_p(E(()=>{b.consumers++}),()=>E(()=>{b.consumers--}));let te=new Map;return yield*Th(ee).pipe(A(M(function*(e){let{delivered:n,notification:r,targetClientId:i,requestContext:c,requestHeaders:l}=e;qk(r)&&(yield*Bm(p,{notification:r,targetClientId:i}));let u=yield*y.clientIds;for(let e of s.keys())u.has(e)||(s.delete(e),t.disconnect(e));let d=r._tag===`LoggingMessage`||r._tag===`Progress`,f=d&&c!==void 0?[c.clientId]:i===void 0?o?s.keys():t.deliveryClientIds():[i],m=[],h=!1;for(let e of f){if(i!==void 0&&e!==i)continue;if(!u.has(e)){t.disconnect(e);continue}if(!y.supportsNotifications)continue;let o=d&&c!==void 0?t.selectProtocol(c.protocolVersion):s.get(e)?.protocol;if(!o)continue;let f=te.get(e),p=e===(i??c?.clientId);h||=p;let g=p?n:Lu();te.set(e,g);let _=O(function*(){f!==void 0&&(yield*zu(f));let n=yield*o.projectNotification(r);if(n===void 0||r._tag===`Progress`&&o.runtime._tag===`Stateless`&&c?.requestMetadata?.progressToken!==r.progressToken)return;if(r._tag===`LoggingMessage`&&o.runtime._tag===`Stateless`){let t=c?.requestMetadata,n=C(t,`io.modelcontextprotocol/logLevel`)?t[`io.modelcontextprotocol/logLevel`]:void 0;if(c?.clientId!==e||!bN(n)||ID.literals.indexOf(r.level)<ID.literals.indexOf(n))return}else if(!t.canDeliver(e,(c?.clientId===e?l:void 0)??s.get(e)?.sessionHeaders??aC,r,a))return;let i=o.serverNotificationRpcs.requests.get(n.tag);if(!i)return;let u=yield*o.payloadCodecs(i).encode(n.payload);yield*y.send(e,{_tag:`Request`,id:``,tag:n.tag,payload:u,headers:[],isNotification:!0})}).pipe(Qf,yp(E(()=>{Wu(g,Au),te.get(e)===g&&te.delete(e)})));m.push(_)}h||(yield*Uu(n,void 0)),yield*xf(m,{concurrency:`unbounded`,discard:!0}).pipe(Rp({startImmediately:!0}))})),Qf,Op,Rp),yield*Hae(t.clientRpcs,{spanPrefix:`McpServer`,disableFatalDefects:!0}).pipe(pp(vN,y),pp(hO,v),lp(g))},hp),Jae=(e,t)=>Td(O(function*(){yield*Rp(qae(e,yield*kA,t))})).pipe(Ad(CN.layer)),Yae=e=>Jae(e,`stdio`).pipe(kd(MA(e.protocols)),kd(Uae),kd(vd(uk,Xae(e.protocols)))),Xae=e=>{let t=Qae({contentType:`application/json-rpc`});return uk.of({contentType:t.contentType,includesFraming:!0,codecFor:t.codecFor,makeUnsafe:()=>{let n=mk.makeUnsafe(),r=t.makeUnsafe(),i;return{decode:t=>{let a=[];for(let o of n.decode(t)){if(Array.isArray(o)){if(i?.runtime.transport.jsonRpc.acceptsBatches!==!0||o.length===0||o.some(wA)||o.some(AN)){a.push({_tag:`Request`,id:null,tag:TN,payload:null,headers:[]});continue}}else AN(o)&&(i=AA(e,toe(o)));a.push(...r.decode(JSON.stringify(o)))}return a},encode:e=>{if(mi(aoe(e)))return JSON.stringify({jsonrpc:`2.0`,id:null,error:{code:IE,message:`JSON-RPC batches are not supported`}})+`
20
+ `;let t=r.encode(e);return t===void 0?void 0:`${t}\n`}}}})},Zae=CC(mw(`Cause`,{data:ew([mw(`Fail`,{error:LC(qE)})])})),kN=e=>Array.isArray(e)?e.map(kN):!Oe(e)||!C(e,`error`)?e:Zae(e.error)?{...e,error:e.error.data[0].error}:e;function Qae(e){let t=hk(e);return uk.of({...t,makeUnsafe:()=>{let e=t.makeUnsafe(),n=new Set;return{decode:e.decode,encode:t=>{if(Oe(t)){let e=EN.get(t);e!==void 0&&(EN.delete(t),n.add(e))}let r=e.encode(t);if(typeof r!=`string`||n.size===0&&!r.includes(`"_tag":"Cause"`))return r;let i=JSON.parse(r);if(n.size>0){let e=e=>!(Oe(e)&&!C(e,`method`)&&(typeof e.id==`string`||typeof e.id==`number`)&&n.delete(e.id));if(Array.isArray(i)){let t=i.filter(e);if(t.length===0)return;i=t}else if(!e(i))return}return JSON.stringify(kN(i))}}}})}var $ae=P({method:RC(`initialize`)}),AN=e=>mi(TC($ae)(e)),eoe=P({params:P({protocolVersion:N})}),toe=e=>{let t=TC(eoe)(e);return mi(t)?t.success.params.protocolVersion:void 0},noe=`Tool execution failed due to an internal server error.`,jN=e=>new ND({isError:!0,content:[{type:`text`,text:e}]}),MN=e=>e===void 0?[]:[{type:`text`,text:JSON.stringify(e)}],NN=M(function*(e){let t=yield*CN,n=yield*e.pipe(fp(t=>{let n=new Map(t.mapUnsafe);for(let t of Object.values(e.tools)){let e=n.get(t.id);e!==void 0&&n.set(t.id,{...e,context:xN(e.context)})}return Wr(n)})),r=xN(yield*sp()),i=e=>up(Nre(e),r),a=e=>{let t=lu(e);return pi(t)&&!du(e)?kf(t.failure):Kp(e).pipe(Ff(i(e)),Bf(jN(noe)))},o=[];for(let e of Object.values(n.tools)){let t=Eie(e)===!0,i=gie(e)?e.jsonSchema:void 0;if(t&&i!==void 0)return yield*jf(`McpServer cannot strictly validate the raw JSON Schema for tool '${e.name}'; use an Effect Schema instead`);let s=t?{onExcessProperty:`error`}:void 0,c=e.annotations,l=Xr(c,Cie),u=CC(e.failureSchema),d=OC(e.failureSchema),f=e=>e instanceof Error?T(jN(e.message)):j(d(e),e=>new ND({isError:!0,content:MN(e)})),p=e=>{let t=lu(e);if(mi(t)){let e=t.success.error,n=$r(Su(t.success),YT);if(n===`parameters`&&roe(e))return k(new GE({message:e.reason.message}));if(n===`handler`&&u(e))return Wf(f(e),a)}return a(e)},m=yield*wC(kD)(PN(e.successSchema,!1)).pipe(qf),h=yield*wC(OD)(i??PN(e.parametersSchema,t)).pipe(qf),g=new AD({name:e.name,description:xie(e),inputSchema:h,outputSchema:m,annotations:{...ri(e.annotations,Sie).pipe(Dr(e=>({title:e})),Tr),readOnlyHint:$r(e.annotations,HT),destructiveHint:$r(e.annotations,UT),idempotentHint:$r(e.annotations,wie),openWorldHint:$r(e.annotations,Tie)},_meta:l});o.push({tool:g,annotations:c,handle(t){return n.handle(e.name,t??{},void 0,s).pipe(P_,J_,A(Fte),A(e=>e.isFailure&&e.failureOrigin!==`handler`?kf(xu(tu(e.result),Jr(YT,e.failureOrigin??`result`))):T(new ND({isError:e.isFailure,structuredContent:e.isFailure?void 0:e.encodedResult,content:MN(e.encodedResult)}))),Wf(p),up(r))}})}for(let e of o)yield*t.addTool(e)}),roe=e=>pie(e)&&e.reason._tag===`ToolParameterValidationError`,PN=(e,t)=>{let n=qT(oT(e,{onExcessProperty:t?`error`:`ignore`}));return Object.keys(n.definitions).length===0?n.schema:{...n.schema,$defs:n.definitions}},ioe=()=>{let e=Rae({ignoreTrailingSlash:!0,ignoreDuplicateSlashes:!0,caseSensitive:!0});return{add:(t,n)=>{e.on(`GET`,`/${t}`,n)},find:t=>e.find(`GET`,`/${t}`)}},aoe=TC(mw(`Exit`,{requestId:WC,exit:mw(`Failure`,{cause:UC})})),ooe=e=>e===`2024-11-05`||e===`2025-03-26`||e===`2025-06-18`||e===`2025-11-25`||e===`2026-07-28`,FN=nw(F(N)),IN=Fw(P({pipe:N,workspaceFolders:FN,documents:FN,ide:N,version:N,protocolVersion:Dw,token:N,hub:qC}),{space:2}),soe=TC(IN);jC(IN);var coe=/^([1-9]\d*)\.json$/;new TextEncoder;function LN(e){return`${e.replace(/[\\/]+$/,``)}/.erd-editor/ide`}function RN(e,t){return`${LN(e)}/${t}.json`}function loe(e,t,n){return n===`win32`?`\\\\.\\pipe\\erd-editor-ide-${t}`:`${LN(e)}/${t}.sock`}function uoe(e){let t=coe.exec(e),n=t?Number(t[1]):NaN;return Number.isSafeInteger(n)?n:null}function doe(e){return _i(soe(e))}var zN={protocolMismatch:`protocolMismatch`,unauthorized:`unauthorized`,outsideWorkspace:`outsideWorkspace`,notFound:`notFound`,notOpen:`notOpen`,readonly:`readonly`,hubDisabled:`hubDisabled`,badRequest:`badRequest`,internal:`internal`},BN=aw(Object.values(zN)),foe=P({code:BN,message:N,hubProtocolVersion:PC(KC),clientProtocolVersion:PC(KC)}),VN=P({path:N,open:qC,active:qC,dirty:qC,readonly:qC}),poe=P({initialValue:N,snapshotVersion:Dw,readonly:qC}),HN=ZC(N,UC),UN=nw(F(UC)),WN=P({path:N}),moe=P({path:N,opened:qC,webviews:Dw});function GN(e,t){return P({id:Dw,method:RC(e),params:t})}function KN(e,t){return[P({id:Dw,ok:RC(!0),method:RC(e),result:t}),P({id:Dw,ok:RC(!1),method:RC(e),error:foe})]}function qN(e,t){return P({id:PC(VC),method:RC(e),params:t})}var JN=iw([GN(`hello`,P({token:N,protocolVersion:Dw,client:N})),GN(`listDocuments`,HN),GN(`openDocument`,P({path:N,create:FC(qC),initialValue:FC(N)})),GN(`join`,WN),GN(`applyActions`,P({path:N,actions:UN})),GN(`leave`,WN),GN(`save`,WN)]),hoe=iw([...KN(`hello`,P({protocolVersion:Dw,ide:N,version:N})),...KN(`listDocuments`,P({documents:nw(F(VN))})),...KN(`openDocument`,moe),...KN(`join`,poe),...KN(`applyActions`,P({webviews:Dw})),...KN(`leave`,HN),...KN(`save`,P({saved:qC}))]),YN=iw([qN(`actions`,P({path:N,actions:UN})),qN(`documentClosed`,WN)]),XN=JN,goe=iw([...hoe.members,...YN.members]);Object.freeze(JN.members.map(e=>e.fields.method.literal)),Object.freeze(YN.members.map(e=>e.fields.method.literal)),aT()(`HubRequestError`,{code:BN,message:N});function ZN(e,t){return`The ERD Editor hub speaks protocol ${e} but the client speaks protocol ${t}. ${e<t?`Update the ERD Editor extension in the IDE until its hub speaks protocol ${t}`:`Update the MCP server (npx -y @dineug/erd-editor-mcp@latest) until it speaks protocol ${e}`}.`}var QN=/^[a-z]:$/i;function _oe(e){return e===`win32`||e===`darwin`}function voe(e,t){return e===`/`||t===`win32`&&(e===`//`||QN.test(e))}function $N(e,t){if(e===``)return[];let n=t===`win32`?e.replaceAll(`\\`,`/`):e,[r,...i]=n.split(`/`);return[r===``?t===`win32`&&n.startsWith(`//`)?`//`:`/`:t===`win32`&&QN.test(r)?r.toLowerCase():r,...i.filter(e=>e!==``&&e!==`.`)]}function eP(e,t){let n=$N(e,t);return n.length===0||!voe(n[0],t)||n.includes(`..`)?null:_oe(t)?n.map(e=>e.toLowerCase()):n}function tP(e,t){return t.length>=e.length&&e.every((e,n)=>e===t[n])}function yoe(e,t,n){let r=eP(e,n),i=eP(t,n);return r!==null&&i!==null&&tP(r,i)}function nP(e,t,n){let r=eP(e,n),i=eP(t,n);return r!==null&&i!==null&&r.length===i.length&&tP(r,i)}function boe(e,t,n){let r=-1,i=-1;return e.forEach((e,a)=>{let o=$N(e,n).length;o>i&&yoe(e,t,n)&&(r=a,i=o)}),r}function xoe(e,t,n){let r=RN(t,n);return xf([e.readFileString(r),e.stat(r)],{concurrency:2}).pipe(j(([e,t])=>({pid:n,raw:e,mtimeMs:xr(t.mtime,{onNone:()=>0,onSome:e=>e.getTime()})})),Rf)}var Soe=Up(`readLockDirectory`)(function*(e){let t=yield*dT;return Mi(yield*Sf((yield*t.readDirectory(LN(e)).pipe($f(()=>[]))).map(uoe).filter(e=>e!==null),n=>xoe(t,e,n)))});function Coe(e,t,n){if(e.documents.some(e=>nP(e,t,n)))return 1/0;let r=boe(e.workspaceFolders,t,n);return r===-1?-1:$N(e.workspaceFolders[r],n).length}function woe(e,t){return e.rank===t.rank?e.candidate.mtimeMs===t.candidate.mtimeMs?e.candidate.pid>t.candidate.pid:e.candidate.mtimeMs>t.candidate.mtimeMs:e.rank>t.rank}function Toe(e,t,n,r){let i=[],a=null;for(let{pid:o,raw:s,mtimeMs:c}of e){if(!r(o)){i.push({pid:o,reason:`dead`});continue}let e=doe(s);if(!e){i.push({pid:o,reason:`malformed`});continue}let l=Coe(e,t,n),u={candidate:{pid:o,record:e,mtimeMs:c},rank:l};l>=0&&(!a||woe(u,a))&&(a=u)}return{selected:a?{kind:a.candidate.record.hub?`live`:`blocked`,candidate:a.candidate}:{kind:`headless`},stale:i}}function Eoe(e,t,n,r){return E(()=>Toe(e,t,n,r))}var Doe=67108864,rP=class extends aT()(`FrameError`,{reason:aw([`tooLarge`,`notJson`,`invalid`]),message:N}){},Ooe=new TextEncoder;function iP(e){return Ooe.encode(e).length}function aP(e){return e>67108864?`A frame of ${e} bytes exceeds the ${Doe} byte limit`:null}function koe(e){let t=JSON.stringify(e);if(t===void 0)throw TypeError(`A frame must hold a JSON value`);let n=aP(iP(t));if(n)throw RangeError(n);return`${t}\n`}var oP=e=>new rP({reason:`tooLarge`,message:e});function Aoe(e,t){let n=[],{text:r,bytes:i}=e,a=0,o=t.indexOf(`
21
+ `);for(;o!==-1;){let e=t.slice(a,o),s=aP(i+iP(e));if(s)return k(oP(s));n.push(r+e),r=``,i=0,a=o+1,o=t.indexOf(`
22
+ `,a)}let s=t.slice(a),c=i+iP(s),l=aP(c);return l?k(oP(l)):T([{text:r+s,bytes:c},n])}var joe=e=>Mf({try:()=>JSON.parse(e),catch:e=>new rP({reason:`notJson`,message:`A frame is not JSON: ${String(e)}`})});function sP(e){let t=wC(e),n=e=>A(joe(e),e=>t(e).pipe(Lf,j(hi(t=>({value:e,issue:t.message})))));return e=>e.pipe(H_(()=>({text:``,bytes:0}),Aoe),L_(e=>e.trim()!==``),I_(n))}sP(XN);var Moe=sP(goe),Noe=jC(XN);function Poe(e){return koe(Noe(e))}jC(YN);var cP={blocked:`blocked`,hubAppeared:`hubAppeared`,hubUnreachable:`hubUnreachable`,hubGone:`hubGone`,disconnected:`disconnected`,timeout:`timeout`,conflict:`conflict`,invalidDocument:`invalidDocument`,invalidPath:`invalidPath`,notSaved:`notSaved`},lP=class extends aT()(`SessionError`,{code:N,message:N}){constructor(e,t){super(typeof e==`string`?{code:e,message:String(t)}:e,typeof t==`string`?void 0:t)}};function uP(e,t){return e instanceof dm&&e.reason._tag===t}function Foe(e,t){return e instanceof lP&&(t===void 0||e.code===t)}function dP(e){return e instanceof dm&&e.reason.cause instanceof Error?e.reason.cause.message:e instanceof Error?e.message:String(e)}var Ioe=class extends aT()(`HubUnreachable`,{pipe:N,message:N}){};function Loe(e){let t=O(function*(){let t=yield*mp,n,r,i=e=>{n??=new tk({reason:e});let t=r;r=void 0,t?.(k(n))},a=()=>{if(!r)return;let t=e.read();if(t===null)return;let n=r;r=void 0,n(T([t]))},o=()=>i(new $O({code:1e3})),s=e=>i(new YO({cause:e}));return e.pause(),e.setEncoding(`utf8`),e.on(`readable`,a),e.on(`end`,o),e.on(`close`,o),e.on(`error`,s),yield*Qu(t,E(()=>{i(new $O({code:1006})),e.off(`readable`,a),e.off(`end`,o),e.off(`close`,o),e.off(`error`,s)})),{pull:Ef(()=>{let t=e.read();return t===null?n?k(n):Df(e=>(r=e,E(()=>{r===e&&(r=void 0)}))):T([t])}),upgrade:QO.unsupported}}),n=t=>Df(n=>{if(e.writableEnded||e.destroyed)return n(D);e.write(t,e=>n(e?k(new tk({reason:new XO({cause:e})})):D))});return HO({reader:t,writer:_p(T({write:t=>KO(t)?E(()=>void e.destroy()):n(t),writeAll:e=>Sf(e,n,{discard:!0})}),()=>E(()=>void e.end()))})}var Roe=e=>_p(Df(t=>{let r=n.connect(e),i=n=>t(k(new Ioe({pipe:e,message:n.message})));return r.once(`error`,i),r.once(`connect`,()=>{r.off(`error`,i),r.on(`error`,()=>void 0),t(T(r))}),E(()=>void r.destroy())}),e=>E(()=>void e.destroy())).pipe(j(Loe)),fP=3e4;function pP(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function zoe(e){return e.ok?{ok:!0,result:e.result}:{ok:!1,error:new lP(e.error.code,e.error.message)}}function Boe(e,t){if(t.ok===!0)return{ok:!0,result:t.result};let n=pP(t.error)?t.error:{};return{ok:!1,error:new lP(typeof n.code==`string`?n.code:zN.internal,typeof n.message==`string`?n.message:`The hub refused ${e}`)}}var Voe=(e,t,n)=>O(function*(){let r=yield*mp,i=yield*e.writer,a=yield*dh(),o=new Map,s=1,c=!1,l=[],u=[],d=!0,f=e=>new lP(cP.disconnected,`The connection to the VS Code window (pid ${t}) closed before it answered ${e}`),p=()=>{let e=l;l=[];for(let t of e)t()},m=()=>{let e=u;u=[];for(let t of e)t()},h=()=>{if(!c){c=!0,m(),p();for(let{method:e,deferred:t}of o.values())Wu(t,Du(f(e)));o.clear(),n.onClose?.()}},g=e=>Mf({try:()=>n.onNotification?.(e),catch:e=>e}).pipe(Hf(e=>Kp(`dropped a notification from the hub of pid ${t}`,e))),_=(e,t)=>zf(t.ok?e.then?e.then(t.result):T(t.result):k(t.error)).pipe(A(t=>e.then?E(()=>{l.push(()=>Wu(e.deferred,t))}):Bu(e.deferred,t))),v=Ef(()=>(d=!0,Th(a))),y=Ef(()=>l.length===0&&u.length===0?v:Eh(a).pipe(A(e=>br(e)?T(e.value):(d=!0,m(),l.length===0?v:Nf.pipe(Ff(E(p)),Ff(y)))))).pipe(If(()=>E(()=>{d=!1}))),b=(e,t)=>{let n=o.get(e);return n?(o.delete(e),_(n,t(n))):D};yield*D_(UO(e)).pipe(Moe,Y_(e=>E(()=>void ph(a,e))),Hf(e=>e._tag===`FrameError`?Kp(`closed the hub connection of pid ${t} on a bad frame`,e).pipe(Ff(i.write(new GO)),Zf):D),yp(E(()=>void yh(a))),Rp),yield*y.pipe(A(e=>{if(mi(e)){let t=e.success;return`ok`in t?b(t.id,()=>zoe(t)):g(t)}let{value:n,issue:r}=e.failure;return pP(n)&&typeof n.id==`number`?b(n.id,e=>Boe(e.method,n)):pP(n)&&typeof n.method==`string`&&pP(n.params)?g(n):Gp(`skipped a frame from the hub of pid ${t} that is neither a response nor a notification`,r)}),Op({disableYield:!0}),Hf(()=>E(h).pipe(Ff(td(r,Au)))),Rp),yield*vp(()=>E(h));let ee=(e,n,r)=>Ef(()=>{if(c)return k(new lP(cP.disconnected,`The connection to the VS Code window (pid ${t}) is closed`));let a=s++,l=Lu();return o.set(a,{method:e,deferred:l,then:r}),Mf({try:()=>Poe({id:a,method:e,params:n}),catch:e=>e}).pipe(A(t=>i.write(t).pipe(Kf(()=>f(e)))),Ff(zu(l)),tp({duration:fP,orElse:()=>k(new lP(cP.timeout,`The VS Code window (pid ${t}) did not answer ${e} within ${fP} ms`))}),yp(E(()=>void o.delete(a))))});return{pid:t,get closed(){return c},request:(e,t)=>ee(e,t),requestThen:(e,t,n)=>ee(e,t,n),drained:Ef(()=>c||d?D:Df(e=>{u.push(()=>e(D))})),close:td(r,Au)}}),mP=class extends jr()(`@dineug/erd-editor-mcp/HubConnector`){},Hoe=e=>({connect:Up(`HubConnector.connect`)(function*(t,n){let{pid:r,record:i}=t;if(i.protocolVersion!==1)return yield*new lP(zN.protocolMismatch,ZN(i.protocolVersion,1));let a=yield*$u(yield*mp);return yield*O(function*(){let t=yield*Voe(yield*e(i.pipe).pipe(Kf(e=>new lP(cP.hubUnreachable,`The VS Code window with pid ${r} advertises an ERD Editor hub at ${i.pipe}, but it did not accept a connection (${e.message}). Nothing was written; reload that window or check the ERD Editor extension.`))),r,n),a=yield*t.request(`hello`,{token:i.token,protocolVersion:1,client:n.client});return a.protocolVersion===1?t:yield*new lP(zN.protocolMismatch,ZN(a.protocolVersion,1))}).pipe(Xu(a),bp(()=>td(a,Au)))})}),Uoe=(e=>vd(mP,Hoe(e)))(Roe),hP=class extends jr()(`@dineug/erd-editor-mcp/ProcessInfo`){};function Woe(e){try{return process.kill(e,0),!0}catch{return!1}}var Goe=bd(hP,()=>({cwd:process.cwd(),homeDir:s(),platform:process.platform,randomId:E(()=>i()),isAlive:Woe})),gP=class extends jr()(`@dineug/erd-editor-mcp/HubDiscovery`){},Koe=Sd(gP,O(function*(){let e=yield*dT,{homeDir:t,platform:n,isAlive:r}=yield*hP,i=t=>e.remove(t).pipe(Zf),a=Up(`HubDiscovery.removeDeadLock`)(function*(e){let r=RN(t,e);yield*i(r),yield*i(`${r}.tmp`),n!==`win32`&&(yield*i(loe(t,e,n)))}),o=Up(`HubDiscovery.discover`)(function*(i){let{selected:o,stale:s}=yield*Soe(t).pipe(A(e=>Eoe(e,i,n,e=>r(e))),pp(dT,e));for(let{pid:e,reason:t}of s)t===`dead`?yield*a(e):yield*Gp(`skipped the lock of pid ${e}: it does not parse`);return o});return gP.of({discover:o})})),_P=(e,t)=>(n,[r])=>{let i=`Unknown`;switch(n.code){case`ENOENT`:i=`NotFound`;break;case`EACCES`:i=`PermissionDenied`;break;case`EEXIST`:i=`AlreadyExists`;break;case`EISDIR`:i=`BadResource`;break;case`ENOTDIR`:i=`BadResource`;break;case`EBUSY`:i=`Busy`;break;case`ELOOP`:i=`BadResource`}return fm({_tag:i,module:e,method:t,pathOrDescriptor:r,syscall:n.syscall,cause:n})},vP=e=>t=>pm({module:`FileSystem`,method:e,description:t.message??String(t)}),yP=(e,t)=>{let n=Number(e);if(!Number.isSafeInteger(n))throw RangeError(`${t} exceeds the safe integer range: ${e}`);return n},bP=e=>Or(Cr(e),Wg),xP=(e,t)=>Mf({try:()=>yP(e,`position`),catch:vP(t)}),qoe=(()=>{let e=Yp(u.access,_P(`FileSystem`,`access`),vP(`access`));return(t,n)=>{let r=u.constants.F_OK;return n?.readable&&(r|=u.constants.R_OK),n?.writable&&(r|=u.constants.W_OK),e(t,r)}})(),Joe=(()=>{let e=Yp(u.cp,_P(`FileSystem`,`copy`),vP(`copy`));return(t,n,r)=>e(t,n,{force:r?.overwrite??!1,preserveTimestamps:r?.preserveTimestamps??!1,recursive:!0})})(),Yoe=(()=>{let e=Yp(u.copyFile,_P(`FileSystem`,`copyFile`),vP(`copyFile`));return(t,n)=>e(t,n)})(),Xoe=(()=>{let e=Yp(u.chmod,_P(`FileSystem`,`chmod`),vP(`chmod`));return(t,n)=>e(t,n)})(),Zoe=(()=>{let e=Yp(u.chown,_P(`FileSystem`,`chown`),vP(`chown`));return(t,n,r)=>e(t,n,r)})(),Qoe=(()=>{let e=Yp(u.glob,_P(`FileSystem`,`glob`),vP(`glob`));return(t,n)=>e(t,{cwd:n?.root,exclude:n?.exclude})})(),$oe=(()=>{let e=Yp(u.link,_P(`FileSystem`,`link`),vP(`link`));return(t,n)=>e(t,n)})(),ese=(()=>{let e=Yp(u.mkdir,_P(`FileSystem`,`makeDirectory`),vP(`makeDirectory`));return(t,n)=>e(t,{recursive:n?.recursive??!1,mode:n?.mode})})(),SP=t=>{let n=Yp(u.mkdtemp,_P(`FileSystem`,t),vP(t));return t=>Ef(()=>{let r=t?.prefix??``,i=typeof t?.directory==`string`?e.join(t.directory,`.`):o.tmpdir();return n(r?e.join(i,r):i+`/`)})},tse=SP(`makeTempDirectory`),CP=e=>{let t=Yp(u.rm,_P(`FileSystem`,e),vP(e));return(e,n)=>t(e,{recursive:n?.recursive??!1,force:n?.force??!1})},nse=CP(`remove`),rse=(()=>{let e=SP(`makeTempDirectoryScoped`),t=CP(`makeTempDirectoryScoped`);return n=>_p(e(n),e=>qf(t(e,{recursive:!0})))})(),ise=(e=>{let t=Yp(u.open,_P(`FileSystem`,e),vP(e)),n=Yp(u.close,_P(`FileSystem`,e),vP(e));return(e,r)=>ce(_p(t(e,r?.flag??`r`,r?.mode),e=>qf(n(e))),j(e=>ase(e,r?.flag?.startsWith(`a`)??!1)))})(`open`),ase=(()=>{let e=e=>Yp(u.read,_P(`FileSystem`,e),vP(e)),t=e(`read`),n=e(`readAlloc`),r=Yp(u.fstat,_P(`FileSystem`,`stat`),vP(`stat`)),i=Yp(u.ftruncate,_P(`FileSystem`,`truncate`),vP(`truncate`)),a=Yp(u.fsync,_P(`FileSystem`,`sync`),vP(`sync`)),o=e=>Yp(u.write,_P(`FileSystem`,e),vP(e)),s=o(`write`),c=o(`writeAll`);class l{[fT];fd;append;position=BigInt(0);constructor(e,t){this[fT]=fT,this.fd=e,this.append=t}get stat(){return A(r(this.fd,{bigint:!0}),MP)}get sync(){return a(this.fd)}seek(e,t){return Ef(()=>{let n=t===`start`?e:this.position+e;return n<BigInt(0)?k(pm({module:`FileSystem`,method:`seek`,description:`Cannot seek before the start of the file`})):(this.position=n,T(n))})}read(e){return Ef(()=>{let n=this.position;return j(t(this.fd,{buffer:e,position:n}),e=>(this.position=n+BigInt(e),e))})}readAlloc(e){return Ef(()=>{try{if(!Number.isInteger(e)||e<0)throw RangeError(`size must be a non-negative integer`);let t=Buffer.allocUnsafeSlow(e),r=this.position;return j(n(this.fd,{buffer:t,position:r}),n=>{if(n===0)return gr();if(this.position=r+BigInt(n),n===e)return _r(t);let i=Buffer.allocUnsafeSlow(n);return t.copy(i,0,0,n),_r(i)})}catch(e){return k(vP(`readAlloc`)(e))}})}truncate(e){return j(i(this.fd,e||void 0),()=>{if(!this.append){let t=BigInt(e??0);this.position>t&&(this.position=t)}})}write(e){return Ef(()=>{let t=this.position;return A(this.append?T(void 0):xP(t,`write`),n=>j(s(this.fd,e,void 0,void 0,n),e=>(this.append||(this.position=t+BigInt(e)),e)))})}writeAllChunk(e){return Ef(()=>{let t=this.position;return A(this.append?T(void 0):xP(t,`writeAll`),n=>A(c(this.fd,e,void 0,void 0,n),n=>n===0?k(fm({module:`FileSystem`,method:`writeAll`,_tag:`WriteZero`,pathOrDescriptor:this.fd,description:`write returned 0 bytes written`})):(this.append||(this.position=t+BigInt(n)),n<e.length?this.writeAllChunk(e.subarray(n)):D)))})}writeAll(e){return e.length===0?D:this.writeAllChunk(e)}}return(e,t)=>new l(e,t)})(),wP=t=>{let n=SP(t);return M(function*(t){let i=yield*n(t),a=r.randomBytes(6).toString(`hex`),o=e.join(i,t?.suffix?`${a}${t.suffix}`:a);return yield*zP(o,new Uint8Array),o})},TP=wP(`makeTempFile`),EP=(()=>{let t=wP(`makeTempFileScoped`),n=CP(`makeTempFileScoped`);return r=>_p(t(r),t=>qf(n(e.dirname(t),{recursive:!0})))})(),DP=(e,t)=>wf({try:()=>u.promises.readdir(e,t),catch:t=>_P(`FileSystem`,`readDirectory`)(t,[e])}),OP=e=>Df((t,n)=>{try{u.readFile(e,{signal:n},(n,r)=>{t(n?k(_P(`FileSystem`,`readFile`)(n,[e])):T(r))})}catch(e){t(k(vP(`readFile`)(e)))}}),kP=(()=>{let e=Yp(u.readlink,_P(`FileSystem`,`readLink`),vP(`readLink`));return t=>e(t)})(),AP=(()=>{let e=Yp(u.realpath,_P(`FileSystem`,`realPath`),vP(`realPath`));return t=>e(t)})(),jP=(()=>{let e=Yp(u.rename,_P(`FileSystem`,`rename`),vP(`rename`));return(t,n)=>e(t,n)})(),MP=e=>Mf({try:()=>({type:e.isFile()?`File`:e.isDirectory()?`Directory`:e.isSymbolicLink()?`SymbolicLink`:e.isBlockDevice()?`BlockDevice`:e.isCharacterDevice()?`CharacterDevice`:e.isFIFO()?`FIFO`:e.isSocket()?`Socket`:`Unknown`,mtime:Cr(e.mtime),atime:Cr(e.atime),birthtime:Cr(e.birthtime),dev:yP(e.dev,`dev`),rdev:bP(e.rdev),ino:bP(e.ino),mode:yP(e.mode,`mode`),nlink:bP(e.nlink),uid:bP(e.uid),gid:bP(e.gid),size:i_(e.size),blksize:e.blksize===void 0?gr():_r(i_(e.blksize)),blocks:bP(e.blocks)}),catch:vP(`stat`)}),NP=(()=>{let e=Yp(u.stat,_P(`FileSystem`,`stat`),vP(`stat`));return t=>A(e(t,{bigint:!0}),MP)})(),PP=(()=>{let e=Yp(u.symlink,_P(`FileSystem`,`symlink`),vP(`symlink`));return(t,n)=>e(t,n)})(),FP=(()=>{let e=Yp(u.truncate,_P(`FileSystem`,`truncate`),vP(`truncate`));return(t,n)=>e(t,n)})(),IP=(()=>{let e=Yp(u.utimes,_P(`FileSystem`,`utime`),vP(`utime`));return(t,n,r)=>e(t,n,r)})(),LP=(t,n,r)=>k_(i=>_p(E(()=>{let a=n.type===`Directory`?t:e.dirname(t),o=u.watch(t,{recursive:r?.recursive??!1},(t,n)=>{if(n)switch(t){case`rename`:Bp(op(NP(e.resolve(a,n)),{onSuccess:e=>fh(i,{_tag:`Create`,path:n}),onFailure:e=>fh(i,{_tag:`Remove`,path:n})}));return;case`change`:ph(i,{_tag:`Update`,path:n});return}});return o.on(`error`,e=>{_h(i,tu(fm({module:`FileSystem`,_tag:`Unknown`,method:`watch`,pathOrDescriptor:t,cause:e})))}),o.on(`close`,()=>{yh(i)}),o}),e=>E(()=>e.close()))),RP=(e,t,n)=>NP(t).pipe(j(r=>e.pipe(Or(e=>e.register(t,r,n)),Sr(()=>LP(t,r,n)))),P_),zP=(e,t,n)=>Df((r,i)=>{try{u.writeFile(e,t,{signal:i,flag:n?.flag,mode:n?.mode},t=>{r(t?k(_P(`FileSystem`,`writeFile`)(t,[e])):D)})}catch(e){r(k(vP(`writeFile`)(e)))}}),BP=j(dp(jre),e=>Are({access:qoe,chmod:Xoe,chown:Zoe,copy:Joe,copyFile:Yoe,glob:Qoe,link:$oe,makeDirectory:ese,makeTempDirectory:tse,makeTempDirectoryScoped:rse,makeTempFile:TP,makeTempFileScoped:EP,open:ise,readDirectory:DP,readFile:OP,readLink:kP,realPath:AP,remove:nse,rename:jP,stat:NP,symlink:PP,truncate:FP,utimes:IP,watch(t,n){return RP(e,t,n)},writeFile:zP})),VP=Sd(dT)(BP),HP=e=>dT.of({...e,realPath:t=>wf(()=>c(t)).pipe(Hf(()=>e.realPath(t)))}),UP=e=>({size:Number(e.size),mtimeMs:xr(e.mtime,{onNone:()=>0,onSome:e=>e.getTime()}),mode:e.mode&511}),WP=class extends jr()(`@dineug/erd-editor-mcp/FileStats`){};Sd(WP,dT.useSync(e=>WP.of({stat:t=>e.stat(t).pipe(j(UP))})));var GP=Dd(Sd(dT,dT.useSync(HP)),Sd(WP,dT.useSync(e=>WP.of({stat:t=>wf(()=>l(t)).pipe(j(e=>({size:e.size,mtimeMs:e.mtimeMs,mode:e.mode&511})),Hf(()=>e.stat(t).pipe(j(UP))))})))).pipe(kd(VP)),KP=[`erd`,`vuerd`,`erd.json`,`vuerd.json`],qP=`.erd.json`;function JP(e){let t=e.toLowerCase();return KP.some(e=>t.endsWith(`.${e}`))}function YP(e,t){return t===`win32`||t===`darwin`?e.toLowerCase():e}var XP=Up(`realPath`)(function*(e){let t=yield*dT,n=yield*mT,r=e=>t.realPath(e).pipe(Hf(t=>{let i=n.dirname(e);return t.reason._tag!==`NotFound`||i===e?T(e):r(i).pipe(j(t=>n.join(t,n.basename(e))))}));return yield*r(e)}),ZP=Up(`resolveDocumentPath`)(function*(e,t=!1){let n=yield*mT,{cwd:r}=yield*hP;if(e.trim()===``)return yield*new lP(cP.invalidPath,`path is empty`);let i=n.resolve(r,e);if(!JP(i)){if(!t||n.extname(i)!==``)return yield*new lP(cP.invalidPath,`${i} is not an ERD document; use a ${KP.map(e=>`.${e}`).join(`, `)} file, and ${qP} for a new one`);i+=qP}return yield*XP(i)});function QP(e,t){return e===t||Number.isNaN(e)&&Number.isNaN(t)}function $P(){}function eF(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function tF(e){return e==null?e===void 0?`[object Undefined]`:`[object Null]`:Object.prototype.toString.call(e)}var nF=`[object RegExp]`,rF=`[object String]`,iF=`[object Number]`,aF=`[object Boolean]`,oF=`[object Arguments]`,sF=`[object Symbol]`,cF=`[object Date]`,lF=`[object Map]`,uF=`[object Set]`,dF=`[object Array]`,fF=`[object Function]`,pF=`[object ArrayBuffer]`,mF=`[object Object]`,hF=`[object Error]`,gF=`[object DataView]`,_F=`[object Uint8Array]`,vF=`[object Uint8ClampedArray]`,yF=`[object Uint16Array]`,bF=`[object Uint32Array]`,xF=`[object BigUint64Array]`,SF=`[object Int8Array]`,CF=`[object Int16Array]`,wF=`[object Int32Array]`,TF=`[object BigInt64Array]`,EF=`[object Float32Array]`,DF=`[object Float64Array]`,OF=typeof globalThis==`object`&&globalThis||typeof window==`object`&&window||typeof self==`object`&&self||typeof global==`object`&&global||(function(){return this})();function kF(e){return OF.Buffer!==void 0&&OF.Buffer.isBuffer(e)}function AF(e){if(!e||typeof e!=`object`)return!1;let t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null?!1:Object.prototype.toString.call(e)===`[object Object]`}function jF(e,t,n){return MF(e,t,void 0,void 0,void 0,void 0,n)}function MF(e,t,n,r,i,a,o){let s=o(e,t,n,r,i,a);if(s!==void 0)return s;if(typeof e==typeof t)switch(typeof e){case`bigint`:case`string`:case`boolean`:case`symbol`:case`undefined`:return e===t;case`number`:return e===t||Object.is(e,t);case`function`:return e===t;case`object`:return NF(e,t,a,o)}return NF(e,t,a,o)}function NF(e,t,n,r){if(Object.is(e,t))return!0;let i=tF(e),a=tF(t);if(i===`[object Arguments]`&&(i=mF),a===`[object Arguments]`&&(a=mF),i!==a)return!1;switch(i){case rF:return e.toString()===t.toString();case iF:return QP(e.valueOf(),t.valueOf());case aF:case cF:case sF:return Object.is(e.valueOf(),t.valueOf());case nF:return e.source===t.source&&e.flags===t.flags;case fF:return e===t}n??=new Map;let o=n.get(e),s=n.get(t);if(o!=null&&s!=null)return o===t;n.set(e,t),n.set(t,e);try{switch(i){case lF:if(e.size!==t.size)return!1;for(let[i,a]of e.entries())if(!t.has(i)||!MF(a,t.get(i),i,e,t,n,r))return!1;return!0;case uF:{if(e.size!==t.size)return!1;let i=Array.from(e.values()),a=Array.from(t.values());for(let o=0;o<i.length;o++){let s=i[o],c=a.findIndex(i=>MF(s,i,void 0,e,t,n,r));if(c===-1)return!1;a.splice(c,1)}return!0}case dF:case _F:case vF:case yF:case bF:case xF:case SF:case CF:case wF:case TF:case EF:case DF:if(kF(e)!==kF(t)||e.length!==t.length)return!1;for(let i=0;i<e.length;i++)if(!MF(e[i],t[i],i,e,t,n,r))return!1;return!0;case pF:return e.byteLength===t.byteLength&&NF(new Uint8Array(e),new Uint8Array(t),n,r);case gF:return e.byteLength!==t.byteLength||e.byteOffset!==t.byteOffset?!1:NF(new Uint8Array(e),new Uint8Array(t),n,r);case hF:return e.name===t.name&&e.message===t.message;case mF:{if(!(NF(e.constructor,t.constructor,n,r)||AF(e)&&AF(t)))return!1;let i=[...Object.keys(e),...eF(e)],a=[...Object.keys(t),...eF(t)];if(i.length!==a.length)return!1;for(let a=0;a<i.length;a++){let o=i[a],s=e[o];if(!Object.hasOwn(t,o))return!1;let c=t[o];if(!MF(s,c,o,e,t,n,r))return!1}return!0}default:return!1}}finally{n.delete(e),n.delete(t)}}function PF(e,t){return jF(e,t,$P)}function FF(e){return Number.isSafeInteger(e)&&e>=0}function IF(e){return e!=null&&typeof e!=`function`&&FF(e.length)}function LF(e){return e==null||typeof e!=`object`&&typeof e!=`function`}function RF(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function zF(e,t,n,r=new Map,i=void 0){let a=i?.(e,t,n,r);if(a!==void 0)return a;if(LF(e))return e;if(r.has(e))return r.get(e);if(Array.isArray(e)){let t=Array(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=zF(e[a],a,n,r,i);return Object.hasOwn(e,`index`)&&(t.index=e.index),Object.hasOwn(e,`input`)&&(t.input=e.input),t}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(e instanceof Map){let t=new Map;r.set(e,t);for(let[a,o]of e)t.set(a,zF(o,a,n,r,i));return t}if(e instanceof Set){let t=new Set;r.set(e,t);for(let a of e)t.add(zF(a,void 0,n,r,i));return t}if(kF(e))return e.subarray();if(RF(e)){let t=new(Object.getPrototypeOf(e)).constructor(e.length);r.set(e,t);for(let a=0;a<e.length;a++)t[a]=zF(e[a],a,n,r,i);return t}if(e instanceof ArrayBuffer||typeof SharedArrayBuffer<`u`&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let t=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return r.set(e,t),BF(t,e,n,r,i),t}if(typeof File<`u`&&e instanceof File){let t=new File([e],e.name,{type:e.type});return r.set(e,t),BF(t,e,n,r,i),t}if(typeof Blob<`u`&&e instanceof Blob){let t=new Blob([e],{type:e.type});return r.set(e,t),BF(t,e,n,r,i),t}if(e instanceof Error){let t=structuredClone(e);return r.set(e,t),t.message=e.message,t.name=e.name,t.stack=e.stack,t.cause=e.cause,t.constructor=e.constructor,BF(t,e,n,r,i),t}if(e instanceof Boolean){let t=new Boolean(e.valueOf());return r.set(e,t),BF(t,e,n,r,i),t}if(e instanceof Number){let t=new Number(e.valueOf());return r.set(e,t),BF(t,e,n,r,i),t}if(e instanceof String){let t=new String(e.valueOf());return r.set(e,t),BF(t,e,n,r,i),t}if(typeof e==`object`&&VF(e)){let t=Object.create(Object.getPrototypeOf(e));return r.set(e,t),BF(t,e,n,r,i),t}return e}function BF(e,t,n=e,r,i){let a=[...Object.keys(t),...eF(t)];for(let o=0;o<a.length;o++){let s=a[o],c=Object.getOwnPropertyDescriptor(e,s);(c==null||c.writable)&&(e[s]=zF(t[s],s,n,r,i))}}function VF(e){switch(tF(e)){case oF:case dF:case pF:case gF:case aF:case cF:case EF:case DF:case SF:case CF:case wF:case lF:case iF:case mF:case nF:case uF:case rF:case sF:case _F:case vF:case yF:case bF:return!0;default:return!1}}function HF(e){return zF(e,void 0,e,new Map,void 0)}function UF(e){return typeof e==`object`&&!!e&&tF(e)===`[object Arguments]`}function WF(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function GF(e){return e[e.length-1]}function KF(e,t,n=1){if(t??(t=e,e=0),!Number.isInteger(n)||n===0)throw Error(`The step value must be a non-zero integer.`);let r=Math.max(Math.ceil((t-e)/n),0),i=Array(r);for(let t=0;t<r;t++)i[t]=e+t*n;return i}function qF(e){return e[0]}function JF(e){return e==null}function YF(e,t){let n={};for(let r=0;r<e.length;r++){let i=e[r],a=t(i,r,e);Object.hasOwn(n,a)||(n[a]=[]),n[a].push(i)}return n}function XF(e){return[...new Set(e)]}function ZF(e){return typeof e==`function`}function QF(e){return typeof e==`boolean`}function $F(e){return e!=null}function eI(e){return typeof e==`number`}function V(e){return typeof e==`string`}function tI(e){return RF(e)}function nI(e){let t=e?.constructor;return e===(typeof t==`function`?t.prototype:Object.prototype)}function rI(e,t,n=0){if(t=Number(t),Object.is(t,-0)&&(t=`-0`),n=Math.min(Number.parseInt(n,10),292),n&&Number.isFinite(Number(t))){let[r,i=0]=t.toString().split(`e`),a=Math[e](Number(`${r}e${Number(i)+n}`));Object.is(a,-0)&&(a=`-0`);let[o,s=0]=a.toString().split(`e`);return Number(`${o}e${Number(s)-n}`)}return Math[e](Number(t))}function iI(e,t=0){return rI(`round`,e,t)}function aI(e){if(e==null)return!0;if(IF(e))return typeof e.splice!=`function`&&typeof e!=`string`&&!kF(e)&&!tI(e)&&!UF(e)?!1:e.length===0;if(typeof e==`object`||typeof e==`function`){if(e instanceof Map||e instanceof Set)return e.size===0;let t=Object.keys(e);return nI(e)?t.filter(e=>e!==`constructor`).length===0:t.length===0}return!0}function oI(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function sI(e){return e.substring(0,1).toLowerCase()+e.substring(1)}function cI(e){return e.substring(0,1).toUpperCase()+e.substring(1)}function lI(e,t,n){return n==null?Math.min(e,t):Math.min(Math.max(e,t),n)}function uI(e,t){let n={...e};for(let e=0;e<t.length;e++){let r=t[e];delete n[r]}return n}function dI(e,t){let n={};for(let r=0;r<t.length;r++){let i=t[r];Object.hasOwn(e,i)&&(n[i]=e[i])}return n}var fI=/\p{Lu}?\p{Ll}+|[0-9]+|\p{Lu}+(?!\p{Ll})|\p{Emoji_Presentation}|\p{Extended_Pictographic}|\p{L}+/gu;function pI(e){return Array.from(e.match(fI)??[])}function mI(e){let t=pI(e);if(t.length===0)return``;let[n,...r]=t;return`${n.toLowerCase()}${r.map(e=>oI(e)).join(``)}`}function hI(e){return pI(e).map(e=>e.toLowerCase()).join(`_`)}var gI=`useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict`,_I=128,vI,yI;function bI(e){!vI||vI.length<e?(vI=Buffer.allocUnsafe(e*_I),a.getRandomValues(vI),yI=0):yI+e>vI.length&&(a.getRandomValues(vI),yI=0),yI+=e}function xI(e=21){bI(e|=0);let t=``;for(let n=yI-e;n<yI;n++)t+=gI[vI[n]&63];return t}var SI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isFunction=void 0;function t(e){return typeof e==`function`}e.isFunction=t})),CI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createErrorClass=void 0;function t(e){var t=e(function(e){Error.call(e),e.stack=Error().stack});return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}e.createErrorClass=t})),wI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.UnsubscriptionError=void 0,e.UnsubscriptionError=CI().createErrorClass(function(e){return function(t){e(this),this.message=t?t.length+` errors occurred during unsubscription:
23
+ `+t.map(function(e,t){return t+1+`) `+e.toString()}).join(`
24
+ `):``,this.name=`UnsubscriptionError`,this.errors=t}})})),TI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.arrRemove=void 0;function t(e,t){if(e){var n=e.indexOf(t);0<=n&&e.splice(n,1)}}e.arrRemove=t})),EI=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)},n=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},r=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.isSubscription=e.EMPTY_SUBSCRIPTION=e.Subscription=void 0;var i=SI(),a=wI(),o=TI(),s=function(){function e(e){this.initialTeardown=e,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var e,o,s,c,u;if(!this.closed){this.closed=!0;var d=this._parentage;if(d){if(this._parentage=null,Array.isArray(d))try{for(var f=t(d),p=f.next();!p.done;p=f.next())p.value.remove(this)}catch(t){e={error:t}}finally{try{p&&!p.done&&(o=f.return)&&o.call(f)}finally{if(e)throw e.error}}else d.remove(this)}var m=this.initialTeardown;if(i.isFunction(m))try{m()}catch(e){u=e instanceof a.UnsubscriptionError?e.errors:[e]}var h=this._finalizers;if(h){this._finalizers=null;try{for(var g=t(h),_=g.next();!_.done;_=g.next()){var v=_.value;try{l(v)}catch(e){u??=[],e instanceof a.UnsubscriptionError?u=r(r([],n(u)),n(e.errors)):u.push(e)}}}catch(e){s={error:e}}finally{try{_&&!_.done&&(c=g.return)&&c.call(g)}finally{if(s)throw s.error}}}if(u)throw new a.UnsubscriptionError(u)}},e.prototype.add=function(t){if(t&&t!==this){if(this.closed)l(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=this._finalizers??[]).push(t)}}},e.prototype._hasParent=function(e){var t=this._parentage;return t===e||Array.isArray(t)&&t.includes(e)},e.prototype._addParent=function(e){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(e),t):t?[t,e]:e},e.prototype._removeParent=function(e){var t=this._parentage;t===e?this._parentage=null:Array.isArray(t)&&o.arrRemove(t,e)},e.prototype.remove=function(t){var n=this._finalizers;n&&o.arrRemove(n,t),t instanceof e&&t._removeParent(this)},e.EMPTY=(function(){var t=new e;return t.closed=!0,t})(),e}();e.Subscription=s,e.EMPTY_SUBSCRIPTION=s.EMPTY;function c(e){return e instanceof s||e&&`closed`in e&&i.isFunction(e.remove)&&i.isFunction(e.add)&&i.isFunction(e.unsubscribe)}e.isSubscription=c;function l(e){i.isFunction(e)?e():e.unsubscribe()}})),DI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.config=void 0,e.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}})),OI=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.timeoutProvider=void 0,e.timeoutProvider={setTimeout:function(r,i){var a=[...arguments].slice(2),o=e.timeoutProvider.delegate;return o?.setTimeout?o.setTimeout.apply(o,n([r,i],t(a))):setTimeout.apply(void 0,n([r,i],t(a)))},clearTimeout:function(t){return(e.timeoutProvider.delegate?.clearTimeout||clearTimeout)(t)},delegate:void 0}})),kI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reportUnhandledError=void 0;var t=DI(),n=OI();function r(e){n.timeoutProvider.setTimeout(function(){var n=t.config.onUnhandledError;if(n)n(e);else throw e})}e.reportUnhandledError=r})),AI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.noop=void 0;function t(){}e.noop=t})),jI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createNotification=e.nextNotification=e.errorNotification=e.COMPLETE_NOTIFICATION=void 0,e.COMPLETE_NOTIFICATION=(function(){return r(`C`,void 0,void 0)})();function t(e){return r(`E`,void 0,e)}e.errorNotification=t;function n(e){return r(`N`,e,void 0)}e.nextNotification=n;function r(e,t,n){return{kind:e,value:t,error:n}}e.createNotification=r})),MI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.captureError=e.errorContext=void 0;var t=DI(),n=null;function r(e){if(t.config.useDeprecatedSynchronousErrorHandling){var r=!n;if(r&&(n={errorThrown:!1,error:null}),e(),r){var i=n,a=i.errorThrown,o=i.error;if(n=null,a)throw o}}else e()}e.errorContext=r;function i(e){t.config.useDeprecatedSynchronousErrorHandling&&n&&(n.errorThrown=!0,n.error=e)}e.captureError=i})),NI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.EMPTY_OBSERVER=e.SafeSubscriber=e.Subscriber=void 0;var n=SI(),r=EI(),i=DI(),a=kI(),o=AI(),s=jI(),c=OI(),l=MI(),u=function(n){t(i,n);function i(t){var i=n.call(this)||this;return i.isStopped=!1,t?(i.destination=t,r.isSubscription(t)&&t.add(i)):i.destination=e.EMPTY_OBSERVER,i}return i.create=function(e,t,n){return new m(e,t,n)},i.prototype.next=function(e){this.isStopped?_(s.nextNotification(e),this):this._next(e)},i.prototype.error=function(e){this.isStopped?_(s.errorNotification(e),this):(this.isStopped=!0,this._error(e))},i.prototype.complete=function(){this.isStopped?_(s.COMPLETE_NOTIFICATION,this):(this.isStopped=!0,this._complete())},i.prototype.unsubscribe=function(){this.closed||(this.isStopped=!0,n.prototype.unsubscribe.call(this),this.destination=null)},i.prototype._next=function(e){this.destination.next(e)},i.prototype._error=function(e){try{this.destination.error(e)}finally{this.unsubscribe()}},i.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},i}(r.Subscription);e.Subscriber=u;var d=Function.prototype.bind;function f(e,t){return d.call(e,t)}var p=function(){function e(e){this.partialObserver=e}return e.prototype.next=function(e){var t=this.partialObserver;if(t.next)try{t.next(e)}catch(e){h(e)}},e.prototype.error=function(e){var t=this.partialObserver;if(t.error)try{t.error(e)}catch(e){h(e)}else h(e)},e.prototype.complete=function(){var e=this.partialObserver;if(e.complete)try{e.complete()}catch(e){h(e)}},e}(),m=function(e){t(r,e);function r(t,r,a){var o=e.call(this)||this,s;if(n.isFunction(t)||!t)s={next:t??void 0,error:r??void 0,complete:a??void 0};else{var c;o&&i.config.useDeprecatedNextContext?(c=Object.create(t),c.unsubscribe=function(){return o.unsubscribe()},s={next:t.next&&f(t.next,c),error:t.error&&f(t.error,c),complete:t.complete&&f(t.complete,c)}):s=t}return o.destination=new p(s),o}return r}(u);e.SafeSubscriber=m;function h(e){i.config.useDeprecatedSynchronousErrorHandling?l.captureError(e):a.reportUnhandledError(e)}function g(e){throw e}function _(e,t){var n=i.config.onStoppedNotification;n&&c.timeoutProvider.setTimeout(function(){return n(e,t)})}e.EMPTY_OBSERVER={closed:!0,next:o.noop,error:g,complete:o.noop}})),PI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.observable=void 0,e.observable=(function(){return typeof Symbol==`function`&&Symbol.observable||`@@observable`})()})),FI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.identity=void 0;function t(e){return e}e.identity=t})),II=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.pipeFromArray=e.pipe=void 0;var t=FI();function n(){return r([...arguments])}e.pipe=n;function r(e){return e.length===0?t.identity:e.length===1?e[0]:function(t){return e.reduce(function(e,t){return t(e)},t)}}e.pipeFromArray=r})),LI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.Observable=void 0;var t=NI(),n=EI(),r=PI(),i=II(),a=DI(),o=SI(),s=MI();e.Observable=function(){function e(e){e&&(this._subscribe=e)}return e.prototype.lift=function(t){var n=new e;return n.source=this,n.operator=t,n},e.prototype.subscribe=function(e,n,r){var i=this,a=u(e)?e:new t.SafeSubscriber(e,n,r);return s.errorContext(function(){var e=i,t=e.operator,n=e.source;a.add(t?t.call(a,n):n?i._subscribe(a):i._trySubscribe(a))}),a},e.prototype._trySubscribe=function(e){try{return this._subscribe(e)}catch(t){e.error(t)}},e.prototype.forEach=function(e,n){var r=this;return n=c(n),new n(function(n,i){var a=new t.SafeSubscriber({next:function(t){try{e(t)}catch(e){i(e),a.unsubscribe()}},error:i,complete:n});r.subscribe(a)})},e.prototype._subscribe=function(e){return this.source?.subscribe(e)},e.prototype[r.observable]=function(){return this},e.prototype.pipe=function(){var e=[...arguments];return i.pipeFromArray(e)(this)},e.prototype.toPromise=function(e){var t=this;return e=c(e),new e(function(e,n){var r;t.subscribe(function(e){return r=e},function(e){return n(e)},function(){return e(r)})})},e.create=function(t){return new e(t)},e}();function c(e){return e??a.config.Promise??Promise}function l(e){return e&&o.isFunction(e.next)&&o.isFunction(e.error)&&o.isFunction(e.complete)}function u(e){return e&&e instanceof t.Subscriber||l(e)&&n.isSubscription(e)}})),H=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.operate=e.hasLift=void 0;var t=SI();function n(e){return t.isFunction(e?.lift)}e.hasLift=n;function r(e){return function(t){if(n(t))return t.lift(function(t){try{return e(t,this)}catch(e){this.error(e)}});throw TypeError(`Unable to lift unknown Observable type`)}}e.operate=r})),U=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.OperatorSubscriber=e.createOperatorSubscriber=void 0;var n=NI();function r(e,t,n,r,a){return new i(e,t,n,r,a)}e.createOperatorSubscriber=r;var i=function(e){t(n,e);function n(t,n,r,i,a,o){var s=e.call(this,t)||this;return s.onFinalize=a,s.shouldUnsubscribe=o,s._next=n?function(e){try{n(e)}catch(e){t.error(e)}}:e.prototype._next,s._error=i?function(e){try{i(e)}catch(e){t.error(e)}finally{this.unsubscribe()}}:e.prototype._error,s._complete=r?function(){try{r()}catch(e){t.error(e)}finally{this.unsubscribe()}}:e.prototype._complete,s}return n.prototype.unsubscribe=function(){var t;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var n=this.closed;e.prototype.unsubscribe.call(this),!n&&((t=this.onFinalize)==null||t.call(this))}},n}(n.Subscriber);e.OperatorSubscriber=i})),RI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.refCount=void 0;var t=H(),n=U();function r(){return t.operate(function(e,t){var r=null;e._refCount++;var i=n.createOperatorSubscriber(t,void 0,void 0,void 0,function(){if(!e||e._refCount<=0||0<--e._refCount){r=null;return}var n=e._connection,i=r;r=null,n&&(!i||n===i)&&n.unsubscribe(),t.unsubscribe()});e.subscribe(i),i.closed||(r=e.connect())})}e.refCount=r})),zI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.ConnectableObservable=void 0;var n=LI(),r=EI(),i=RI(),a=U(),o=H();e.ConnectableObservable=function(e){t(n,e);function n(t,n){var r=e.call(this)||this;return r.source=t,r.subjectFactory=n,r._subject=null,r._refCount=0,r._connection=null,o.hasLift(t)&&(r.lift=t.lift),r}return n.prototype._subscribe=function(e){return this.getSubject().subscribe(e)},n.prototype.getSubject=function(){var e=this._subject;return(!e||e.isStopped)&&(this._subject=this.subjectFactory()),this._subject},n.prototype._teardown=function(){this._refCount=0;var e=this._connection;this._subject=this._connection=null,e?.unsubscribe()},n.prototype.connect=function(){var e=this,t=this._connection;if(!t){t=this._connection=new r.Subscription;var n=this.getSubject();t.add(this.source.subscribe(a.createOperatorSubscriber(n,void 0,function(){e._teardown(),n.complete()},function(t){e._teardown(),n.error(t)},function(){return e._teardown()}))),t.closed&&(this._connection=null,t=r.Subscription.EMPTY)}return t},n.prototype.refCount=function(){return i.refCount()(this)},n}(n.Observable)})),BI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.performanceTimestampProvider=void 0,e.performanceTimestampProvider={now:function(){return(e.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}})),VI=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.animationFrameProvider=void 0;var r=EI();e.animationFrameProvider={schedule:function(t){var n=requestAnimationFrame,i=cancelAnimationFrame,a=e.animationFrameProvider.delegate;a&&(n=a.requestAnimationFrame,i=a.cancelAnimationFrame);var o=n(function(e){i=void 0,t(e)});return new r.Subscription(function(){return i?.(o)})},requestAnimationFrame:function(){var r=[...arguments];return(e.animationFrameProvider.delegate?.requestAnimationFrame||requestAnimationFrame).apply(void 0,n([],t(r)))},cancelAnimationFrame:function(){var r=[...arguments];return(e.animationFrameProvider.delegate?.cancelAnimationFrame||cancelAnimationFrame).apply(void 0,n([],t(r)))},delegate:void 0}})),HI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.animationFrames=void 0;var t=LI(),n=BI(),r=VI();function i(e){return e?a(e):o}e.animationFrames=i;function a(e){return new t.Observable(function(t){var i=e||n.performanceTimestampProvider,a=i.now(),o=0,s=function(){t.closed||(o=r.animationFrameProvider.requestAnimationFrame(function(n){o=0;var r=i.now();t.next({timestamp:e?r:n,elapsed:r-a}),s()}))};return s(),function(){o&&r.animationFrameProvider.cancelAnimationFrame(o)}})}var o=a()})),UI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ObjectUnsubscribedError=void 0,e.ObjectUnsubscribedError=CI().createErrorClass(function(e){return function(){e(this),this.name=`ObjectUnsubscribedError`,this.message=`object unsubscribed`}})})),WI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})(),n=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.AnonymousSubject=e.Subject=void 0;var r=LI(),i=EI(),a=UI(),o=TI(),s=MI(),c=function(e){t(c,e);function c(){var t=e.call(this)||this;return t.closed=!1,t.currentObservers=null,t.observers=[],t.isStopped=!1,t.hasError=!1,t.thrownError=null,t}return c.prototype.lift=function(e){var t=new l(this,this);return t.operator=e,t},c.prototype._throwIfClosed=function(){if(this.closed)throw new a.ObjectUnsubscribedError},c.prototype.next=function(e){var t=this;s.errorContext(function(){var r,i;if(t._throwIfClosed(),!t.isStopped){t.currentObservers||=Array.from(t.observers);try{for(var a=n(t.currentObservers),o=a.next();!o.done;o=a.next())o.value.next(e)}catch(e){r={error:e}}finally{try{o&&!o.done&&(i=a.return)&&i.call(a)}finally{if(r)throw r.error}}}})},c.prototype.error=function(e){var t=this;s.errorContext(function(){if(t._throwIfClosed(),!t.isStopped){t.hasError=t.isStopped=!0,t.thrownError=e;for(var n=t.observers;n.length;)n.shift().error(e)}})},c.prototype.complete=function(){var e=this;s.errorContext(function(){if(e._throwIfClosed(),!e.isStopped){e.isStopped=!0;for(var t=e.observers;t.length;)t.shift().complete()}})},c.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(c.prototype,"observed",{get:function(){return this.observers?.length>0},enumerable:!1,configurable:!0}),c.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},c.prototype._subscribe=function(e){return this._throwIfClosed(),this._checkFinalizedStatuses(e),this._innerSubscribe(e)},c.prototype._innerSubscribe=function(e){var t=this,n=this,r=n.hasError,a=n.isStopped,s=n.observers;return r||a?i.EMPTY_SUBSCRIPTION:(this.currentObservers=null,s.push(e),new i.Subscription(function(){t.currentObservers=null,o.arrRemove(s,e)}))},c.prototype._checkFinalizedStatuses=function(e){var t=this,n=t.hasError,r=t.thrownError,i=t.isStopped;n?e.error(r):i&&e.complete()},c.prototype.asObservable=function(){var e=new r.Observable;return e.source=this,e},c.create=function(e,t){return new l(e,t)},c}(r.Observable);e.Subject=c;var l=function(e){t(n,e);function n(t,n){var r=e.call(this)||this;return r.destination=t,r.source=n,r}return n.prototype.next=function(e){var t,n;(n=(t=this.destination)?.next)==null||n.call(t,e)},n.prototype.error=function(e){var t,n;(n=(t=this.destination)?.error)==null||n.call(t,e)},n.prototype.complete=function(){var e,t;(t=(e=this.destination)?.complete)==null||t.call(e)},n.prototype._subscribe=function(e){return this.source?.subscribe(e)??i.EMPTY_SUBSCRIPTION},n}(c);e.AnonymousSubject=l})),GI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.BehaviorSubject=void 0,e.BehaviorSubject=function(e){t(n,e);function n(t){var n=e.call(this)||this;return n._value=t,n}return Object.defineProperty(n.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),n.prototype._subscribe=function(t){var n=e.prototype._subscribe.call(this,t);return!n.closed&&t.next(this._value),n},n.prototype.getValue=function(){var e=this,t=e.hasError,n=e.thrownError,r=e._value;if(t)throw n;return this._throwIfClosed(),r},n.prototype.next=function(t){e.prototype.next.call(this,this._value=t)},n}(WI().Subject)})),KI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.dateTimestampProvider=void 0,e.dateTimestampProvider={now:function(){return(e.dateTimestampProvider.delegate||Date).now()},delegate:void 0}})),qI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.ReplaySubject=void 0;var n=WI(),r=KI();e.ReplaySubject=function(e){t(n,e);function n(t,n,i){t===void 0&&(t=1/0),n===void 0&&(n=1/0),i===void 0&&(i=r.dateTimestampProvider);var a=e.call(this)||this;return a._bufferSize=t,a._windowTime=n,a._timestampProvider=i,a._buffer=[],a._infiniteTimeWindow=!0,a._infiniteTimeWindow=n===1/0,a._bufferSize=Math.max(1,t),a._windowTime=Math.max(1,n),a}return n.prototype.next=function(t){var n=this,r=n.isStopped,i=n._buffer,a=n._infiniteTimeWindow,o=n._timestampProvider,s=n._windowTime;r||(i.push(t),!a&&i.push(o.now()+s)),this._trimBuffer(),e.prototype.next.call(this,t)},n.prototype._subscribe=function(e){this._throwIfClosed(),this._trimBuffer();for(var t=this._innerSubscribe(e),n=this,r=n._infiniteTimeWindow,i=n._buffer.slice(),a=0;a<i.length&&!e.closed;a+=r?1:2)e.next(i[a]);return this._checkFinalizedStatuses(e),t},n.prototype._trimBuffer=function(){var e=this,t=e._bufferSize,n=e._timestampProvider,r=e._buffer,i=e._infiniteTimeWindow,a=(i?1:2)*t;if(t<1/0&&a<r.length&&r.splice(0,r.length-a),!i){for(var o=n.now(),s=0,c=1;c<r.length&&r[c]<=o;c+=2)s=c;s&&r.splice(0,s+1)}},n}(n.Subject)})),JI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AsyncSubject=void 0,e.AsyncSubject=function(e){t(n,e);function n(){var t=e!==null&&e.apply(this,arguments)||this;return t._value=null,t._hasValue=!1,t._isComplete=!1,t}return n.prototype._checkFinalizedStatuses=function(e){var t=this,n=t.hasError,r=t._hasValue,i=t._value,a=t.thrownError,o=t.isStopped,s=t._isComplete;n?e.error(a):(o||s)&&(r&&e.next(i),e.complete())},n.prototype.next=function(e){this.isStopped||(this._value=e,this._hasValue=!0)},n.prototype.complete=function(){var t=this,n=t._hasValue,r=t._value;t._isComplete||(this._isComplete=!0,n&&e.prototype.next.call(this,r),e.prototype.complete.call(this))},n}(WI().Subject)})),YI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.Action=void 0,e.Action=function(e){t(n,e);function n(t,n){return e.call(this)||this}return n.prototype.schedule=function(e,t){return t===void 0&&(t=0),this},n}(EI().Subscription)})),XI=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.intervalProvider=void 0,e.intervalProvider={setInterval:function(r,i){var a=[...arguments].slice(2),o=e.intervalProvider.delegate;return o?.setInterval?o.setInterval.apply(o,n([r,i],t(a))):setInterval.apply(void 0,n([r,i],t(a)))},clearInterval:function(t){return(e.intervalProvider.delegate?.clearInterval||clearInterval)(t)},delegate:void 0}})),ZI=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AsyncAction=void 0;var n=YI(),r=XI(),i=TI();e.AsyncAction=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r.pending=!1,r}return n.prototype.schedule=function(e,t){if(t===void 0&&(t=0),this.closed)return this;this.state=e;var n=this.id,r=this.scheduler;return n!=null&&(this.id=this.recycleAsyncId(r,n,t)),this.pending=!0,this.delay=t,this.id=this.id??this.requestAsyncId(r,this.id,t),this},n.prototype.requestAsyncId=function(e,t,n){return n===void 0&&(n=0),r.intervalProvider.setInterval(e.flush.bind(e,this),n)},n.prototype.recycleAsyncId=function(e,t,n){if(n===void 0&&(n=0),n!=null&&this.delay===n&&this.pending===!1)return t;t!=null&&r.intervalProvider.clearInterval(t)},n.prototype.execute=function(e,t){if(this.closed)return Error(`executing a cancelled action`);this.pending=!1;var n=this._execute(e,t);if(n)return n;this.pending===!1&&this.id!=null&&(this.id=this.recycleAsyncId(this.scheduler,this.id,null))},n.prototype._execute=function(e,t){var n=!1,r;try{this.work(e)}catch(e){n=!0,r=e||Error(`Scheduled action threw falsy error`)}if(n)return this.unsubscribe(),r},n.prototype.unsubscribe=function(){if(!this.closed){var t=this,n=t.id,r=t.scheduler,a=r.actions;this.work=this.state=this.scheduler=null,this.pending=!1,i.arrRemove(a,this),n!=null&&(this.id=this.recycleAsyncId(r,n,null)),this.delay=null,e.prototype.unsubscribe.call(this)}},n}(n.Action)})),QI=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.TestTools=e.Immediate=void 0;var t=1,n,r={};function i(e){return e in r&&(delete r[e],!0)}e.Immediate={setImmediate:function(e){var a=t++;return r[a]=!0,n||=Promise.resolve(),n.then(function(){return i(a)&&e()}),a},clearImmediate:function(e){i(e)}},e.TestTools={pending:function(){return Object.keys(r).length}}})),$I=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.immediateProvider=void 0;var r=QI(),i=r.Immediate.setImmediate,a=r.Immediate.clearImmediate;e.immediateProvider={setImmediate:function(){var r=[...arguments];return(e.immediateProvider.delegate?.setImmediate||i).apply(void 0,n([],t(r)))},clearImmediate:function(t){return(e.immediateProvider.delegate?.clearImmediate||a)(t)},delegate:void 0}})),eL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AsapAction=void 0;var n=ZI(),r=$I();e.AsapAction=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r}return n.prototype.requestAsyncId=function(t,n,i){return i===void 0&&(i=0),i!==null&&i>0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t._scheduled||=r.immediateProvider.setImmediate(t.flush.bind(t,void 0)))},n.prototype.recycleAsyncId=function(t,n,i){if(i===void 0&&(i=0),i==null?this.delay>0:i>0)return e.prototype.recycleAsyncId.call(this,t,n,i);var a=t.actions;n!=null&&a[a.length-1]?.id!==n&&(r.immediateProvider.clearImmediate(n),t._scheduled===n&&(t._scheduled=void 0))},n}(n.AsyncAction)})),tL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.Scheduler=void 0;var t=KI();e.Scheduler=function(){function e(t,n){n===void 0&&(n=e.now),this.schedulerActionCtor=t,this.now=n}return e.prototype.schedule=function(e,t,n){return t===void 0&&(t=0),new this.schedulerActionCtor(this,e).schedule(n,t)},e.now=t.dateTimestampProvider.now,e}()})),nL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AsyncScheduler=void 0;var n=tL();e.AsyncScheduler=function(e){t(r,e);function r(t,r){r===void 0&&(r=n.Scheduler.now);var i=e.call(this,t,r)||this;return i.actions=[],i._active=!1,i}return r.prototype.flush=function(e){var t=this.actions;if(this._active){t.push(e);return}var n;this._active=!0;do if(n=e.execute(e.state,e.delay))break;while(e=t.shift());if(this._active=!1,n){for(;e=t.shift();)e.unsubscribe();throw n}},r}(n.Scheduler)})),rL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AsapScheduler=void 0,e.AsapScheduler=function(e){t(n,e);function n(){return e!==null&&e.apply(this,arguments)||this}return n.prototype.flush=function(e){this._active=!0;var t=this._scheduled;this._scheduled=void 0;var n=this.actions,r;e||=n.shift();do if(r=e.execute(e.state,e.delay))break;while((e=n[0])&&e.id===t&&n.shift());if(this._active=!1,r){for(;(e=n[0])&&e.id===t&&n.shift();)e.unsubscribe();throw r}},n}(nL().AsyncScheduler)})),iL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.asap=e.asapScheduler=void 0;var t=eL();e.asapScheduler=new(rL()).AsapScheduler(t.AsapAction),e.asap=e.asapScheduler})),aL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.async=e.asyncScheduler=void 0;var t=ZI();e.asyncScheduler=new(nL()).AsyncScheduler(t.AsyncAction),e.async=e.asyncScheduler})),oL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.QueueAction=void 0,e.QueueAction=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r}return n.prototype.schedule=function(t,n){return n===void 0&&(n=0),n>0?e.prototype.schedule.call(this,t,n):(this.delay=n,this.state=t,this.scheduler.flush(this),this)},n.prototype.execute=function(t,n){return n>0||this.closed?e.prototype.execute.call(this,t,n):this._execute(t,n)},n.prototype.requestAsyncId=function(t,n,r){return r===void 0&&(r=0),r!=null&&r>0||r==null&&this.delay>0?e.prototype.requestAsyncId.call(this,t,n,r):(t.flush(this),0)},n}(ZI().AsyncAction)})),sL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.QueueScheduler=void 0,e.QueueScheduler=function(e){t(n,e);function n(){return e!==null&&e.apply(this,arguments)||this}return n}(nL().AsyncScheduler)})),cL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.queue=e.queueScheduler=void 0;var t=oL();e.queueScheduler=new(sL()).QueueScheduler(t.QueueAction),e.queue=e.queueScheduler})),lL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AnimationFrameAction=void 0;var n=ZI(),r=VI();e.AnimationFrameAction=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.scheduler=t,r.work=n,r}return n.prototype.requestAsyncId=function(t,n,i){return i===void 0&&(i=0),i!==null&&i>0?e.prototype.requestAsyncId.call(this,t,n,i):(t.actions.push(this),t._scheduled||=r.animationFrameProvider.requestAnimationFrame(function(){return t.flush(void 0)}))},n.prototype.recycleAsyncId=function(t,n,i){if(i===void 0&&(i=0),i==null?this.delay>0:i>0)return e.prototype.recycleAsyncId.call(this,t,n,i);var a=t.actions;n!=null&&a[a.length-1]?.id!==n&&(r.animationFrameProvider.cancelAnimationFrame(n),t._scheduled=void 0)},n}(n.AsyncAction)})),uL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.AnimationFrameScheduler=void 0,e.AnimationFrameScheduler=function(e){t(n,e);function n(){return e!==null&&e.apply(this,arguments)||this}return n.prototype.flush=function(e){this._active=!0;var t=this._scheduled;this._scheduled=void 0;var n=this.actions,r;e||=n.shift();do if(r=e.execute(e.state,e.delay))break;while((e=n[0])&&e.id===t&&n.shift());if(this._active=!1,r){for(;(e=n[0])&&e.id===t&&n.shift();)e.unsubscribe();throw r}},n}(nL().AsyncScheduler)})),dL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.animationFrame=e.animationFrameScheduler=void 0;var t=lL();e.animationFrameScheduler=new(uL()).AnimationFrameScheduler(t.AnimationFrameAction),e.animationFrame=e.animationFrameScheduler})),fL=_((e=>{var t=e&&e.__extends||(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};return function(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}})();Object.defineProperty(e,"__esModule",{value:!0}),e.VirtualAction=e.VirtualTimeScheduler=void 0;var n=ZI(),r=EI();e.VirtualTimeScheduler=function(e){t(n,e);function n(t,n){t===void 0&&(t=i),n===void 0&&(n=1/0);var r=e.call(this,t,function(){return r.frame})||this;return r.maxFrames=n,r.frame=0,r.index=-1,r}return n.prototype.flush=function(){for(var e=this,t=e.actions,n=e.maxFrames,r,i;(i=t[0])&&i.delay<=n&&(t.shift(),this.frame=i.delay,!(r=i.execute(i.state,i.delay))););if(r){for(;i=t.shift();)i.unsubscribe();throw r}},n.frameTimeFactor=10,n}(nL().AsyncScheduler);var i=function(e){t(n,e);function n(t,n,r){r===void 0&&(r=t.index+=1);var i=e.call(this,t,n)||this;return i.scheduler=t,i.work=n,i.index=r,i.active=!0,i.index=t.index=r,i}return n.prototype.schedule=function(t,i){if(i===void 0&&(i=0),Number.isFinite(i)){if(!this.id)return e.prototype.schedule.call(this,t,i);this.active=!1;var a=new n(this.scheduler,this.work);return this.add(a),a.schedule(t,i)}return r.Subscription.EMPTY},n.prototype.requestAsyncId=function(e,t,r){r===void 0&&(r=0),this.delay=e.frame+r;var i=e.actions;return i.push(this),i.sort(n.sortActions),1},n.prototype.recycleAsyncId=function(e,t,n){n===void 0&&(n=0)},n.prototype._execute=function(t,n){if(this.active===!0)return e.prototype._execute.call(this,t,n)},n.sortActions=function(e,t){return e.delay===t.delay?e.index===t.index?0:e.index>t.index?1:-1:e.delay>t.delay?1:-1},n}(n.AsyncAction);e.VirtualAction=i})),pL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.empty=e.EMPTY=void 0;var t=LI();e.EMPTY=new t.Observable(function(e){return e.complete()});function n(t){return t?r(t):e.EMPTY}e.empty=n;function r(e){return new t.Observable(function(t){return e.schedule(function(){return t.complete()})})}})),mL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isScheduler=void 0;var t=SI();function n(e){return e&&t.isFunction(e.schedule)}e.isScheduler=n})),hL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.popNumber=e.popScheduler=e.popResultSelector=void 0;var t=SI(),n=mL();function r(e){return e[e.length-1]}function i(e){return t.isFunction(r(e))?e.pop():void 0}e.popResultSelector=i;function a(e){return n.isScheduler(r(e))?e.pop():void 0}e.popScheduler=a;function o(e,t){return typeof r(e)==`number`?e.pop():t}e.popNumber=o})),gL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isArrayLike=void 0,e.isArrayLike=(function(e){return e&&typeof e.length==`number`&&typeof e!=`function`})})),_L=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isPromise=void 0;var t=SI();function n(e){return t.isFunction(e?.then)}e.isPromise=n})),vL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isInteropObservable=void 0;var t=PI(),n=SI();function r(e){return n.isFunction(e[t.observable])}e.isInteropObservable=r})),yL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isAsyncIterable=void 0;var t=SI();function n(e){return Symbol.asyncIterator&&t.isFunction(e?.[Symbol.asyncIterator])}e.isAsyncIterable=n})),bL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createInvalidObservableTypeError=void 0;function t(e){return TypeError(`You provided `+(typeof e==`object`&&e?`an invalid object`:`'`+e+`'`)+` where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.`)}e.createInvalidObservableTypeError=t})),xL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.iterator=e.getSymbolIterator=void 0;function t(){return typeof Symbol!=`function`||!Symbol.iterator?`@@iterator`:Symbol.iterator}e.getSymbolIterator=t,e.iterator=t()})),SL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isIterable=void 0;var t=xL(),n=SI();function r(e){return n.isFunction(e?.[t.iterator])}e.isIterable=r})),CL=_((e=>{var t=e&&e.__generator||function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(r)throw TypeError(`Generator is already executing.`);for(;n;)try{if(r=1,i&&(a=o[0]&2?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[o[0]&2,a.value]),o[0]){case 0:case 1:a=o;break;case 4:return n.label++,{value:o[1],done:!1};case 5:n.label++,i=o[1],o=[0];continue;case 7:o=n.ops.pop(),n.trys.pop();continue;default:if(a=n.trys,!(a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){n.label=o[1];break}if(o[0]===6&&n.label<a[1]){n.label=a[1],a=o;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(o);break}a[2]&&n.ops.pop(),n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e],i=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}},n=e&&e.__await||function(e){return this instanceof n?(this.v=e,this):new n(e)},r=e&&e.__asyncGenerator||function(e,t,r){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var i=r.apply(e,t||[]),a,o=[];return a={},s(`next`),s(`throw`),s(`return`),a[Symbol.asyncIterator]=function(){return this},a;function s(e){i[e]&&(a[e]=function(t){return new Promise(function(n,r){o.push([e,t,n,r])>1||c(e,t)})})}function c(e,t){try{l(i[e](t))}catch(e){f(o[0][3],e)}}function l(e){e.value instanceof n?Promise.resolve(e.value.v).then(u,d):f(o[0][2],e)}function u(e){c(`next`,e)}function d(e){c(`throw`,e)}function f(e,t){e(t),o.shift(),o.length&&c(o[0][0],o[0][1])}};Object.defineProperty(e,"__esModule",{value:!0}),e.isReadableStreamLike=e.readableStreamLikeToAsyncGenerator=void 0;var i=SI();function a(e){return r(this,arguments,function(){var r,i,a,o;return t(this,function(t){switch(t.label){case 0:r=e.getReader(),t.label=1;case 1:t.trys.push([1,,9,10]),t.label=2;case 2:return[4,n(r.read())];case 3:return i=t.sent(),a=i.value,o=i.done,o?[4,n(void 0)]:[3,5];case 4:return[2,t.sent()];case 5:return[4,n(a)];case 6:return[4,t.sent()];case 7:return t.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}e.readableStreamLikeToAsyncGenerator=a;function o(e){return i.isFunction(e?.getReader)}e.isReadableStreamLike=o})),wL=_((e=>{var t=e&&e.__awaiter||function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},n=e&&e.__generator||function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(r)throw TypeError(`Generator is already executing.`);for(;n;)try{if(r=1,i&&(a=o[0]&2?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[o[0]&2,a.value]),o[0]){case 0:case 1:a=o;break;case 4:return n.label++,{value:o[1],done:!1};case 5:n.label++,i=o[1],o=[0];continue;case 7:o=n.ops.pop(),n.trys.pop();continue;default:if(a=n.trys,!(a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){n.label=o[1];break}if(o[0]===6&&n.label<a[1]){n.label=a[1],a=o;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(o);break}a[2]&&n.ops.pop(),n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e],i=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}},r=e&&e.__asyncValues||function(e){if(!Symbol.asyncIterator)throw TypeError(`Symbol.asyncIterator is not defined.`);var t=e[Symbol.asyncIterator],n;return t?t.call(e):(e=typeof i==`function`?i(e):e[Symbol.iterator](),n={},r(`next`),r(`throw`),r(`return`),n[Symbol.asyncIterator]=function(){return this},n);function r(t){n[t]=e[t]&&function(n){return new Promise(function(r,i){n=e[t](n),a(r,i,n.done,n.value)})}}function a(e,t,n,r){Promise.resolve(r).then(function(t){e({value:t,done:n})},t)}},i=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.fromReadableStreamLike=e.fromAsyncIterable=e.fromIterable=e.fromPromise=e.fromArrayLike=e.fromInteropObservable=e.innerFrom=void 0;var a=gL(),o=_L(),s=LI(),c=vL(),l=yL(),u=bL(),d=SL(),f=CL(),p=SI(),m=kI(),h=PI();function g(e){if(e instanceof s.Observable)return e;if(e!=null){if(c.isInteropObservable(e))return _(e);if(a.isArrayLike(e))return v(e);if(o.isPromise(e))return y(e);if(l.isAsyncIterable(e))return ee(e);if(d.isIterable(e))return b(e);if(f.isReadableStreamLike(e))return te(e)}throw u.createInvalidObservableTypeError(e)}e.innerFrom=g;function _(e){return new s.Observable(function(t){var n=e[h.observable]();if(p.isFunction(n.subscribe))return n.subscribe(t);throw TypeError(`Provided object does not correctly implement Symbol.observable`)})}e.fromInteropObservable=_;function v(e){return new s.Observable(function(t){for(var n=0;n<e.length&&!t.closed;n++)t.next(e[n]);t.complete()})}e.fromArrayLike=v;function y(e){return new s.Observable(function(t){e.then(function(e){t.closed||(t.next(e),t.complete())},function(e){return t.error(e)}).then(null,m.reportUnhandledError)})}e.fromPromise=y;function b(e){return new s.Observable(function(t){var n,r;try{for(var a=i(e),o=a.next();!o.done;o=a.next()){var s=o.value;if(t.next(s),t.closed)return}}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}t.complete()})}e.fromIterable=b;function ee(e){return new s.Observable(function(t){x(e,t).catch(function(e){return t.error(e)})})}e.fromAsyncIterable=ee;function te(e){return ee(f.readableStreamLikeToAsyncGenerator(e))}e.fromReadableStreamLike=te;function x(e,i){var a,o,s,c;return t(this,void 0,void 0,function(){var t,l;return n(this,function(n){switch(n.label){case 0:n.trys.push([0,5,6,11]),a=r(e),n.label=1;case 1:return[4,a.next()];case 2:if(o=n.sent(),o.done)return[3,4];if(t=o.value,i.next(t),i.closed)return[2];n.label=3;case 3:return[3,1];case 4:return[3,11];case 5:return l=n.sent(),s={error:l},[3,11];case 6:return n.trys.push([6,,9,10]),o&&!o.done&&(c=a.return)?[4,c.call(a)]:[3,8];case 7:n.sent(),n.label=8;case 8:return[3,10];case 9:if(s)throw s.error;return[7];case 10:return[7];case 11:return i.complete(),[2]}})})}})),TL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.executeSchedule=void 0;function t(e,t,n,r,i){r===void 0&&(r=0),i===void 0&&(i=!1);var a=t.schedule(function(){n(),i?e.add(this.schedule(null,r)):this.unsubscribe()},r);if(e.add(a),!i)return a}e.executeSchedule=t})),EL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.observeOn=void 0;var t=TL(),n=H(),r=U();function i(e,i){return i===void 0&&(i=0),n.operate(function(n,a){n.subscribe(r.createOperatorSubscriber(a,function(n){return t.executeSchedule(a,e,function(){return a.next(n)},i)},function(){return t.executeSchedule(a,e,function(){return a.complete()},i)},function(n){return t.executeSchedule(a,e,function(){return a.error(n)},i)}))})}e.observeOn=i})),DL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.subscribeOn=void 0;var t=H();function n(e,n){return n===void 0&&(n=0),t.operate(function(t,r){r.add(e.schedule(function(){return t.subscribe(r)},n))})}e.subscribeOn=n})),OL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduleObservable=void 0;var t=wL(),n=EL(),r=DL();function i(e,i){return t.innerFrom(e).pipe(r.subscribeOn(i),n.observeOn(i))}e.scheduleObservable=i})),kL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.schedulePromise=void 0;var t=wL(),n=EL(),r=DL();function i(e,i){return t.innerFrom(e).pipe(r.subscribeOn(i),n.observeOn(i))}e.schedulePromise=i})),AL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduleArray=void 0;var t=LI();function n(e,n){return new t.Observable(function(t){var r=0;return n.schedule(function(){r===e.length?t.complete():(t.next(e[r++]),t.closed||this.schedule())})})}e.scheduleArray=n})),jL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduleIterable=void 0;var t=LI(),n=xL(),r=SI(),i=TL();function a(e,a){return new t.Observable(function(t){var o;return i.executeSchedule(t,a,function(){o=e[n.iterator](),i.executeSchedule(t,a,function(){var e,n,r;try{e=o.next(),n=e.value,r=e.done}catch(e){t.error(e);return}r?t.complete():t.next(n)},0,!0)}),function(){return r.isFunction(o?.return)&&o.return()}})}e.scheduleIterable=a})),ML=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduleAsyncIterable=void 0;var t=LI(),n=TL();function r(e,r){if(!e)throw Error(`Iterable cannot be null`);return new t.Observable(function(t){n.executeSchedule(t,r,function(){var i=e[Symbol.asyncIterator]();n.executeSchedule(t,r,function(){i.next().then(function(e){e.done?t.complete():t.next(e.value)})},0,!0)})})}e.scheduleAsyncIterable=r})),NL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduleReadableStreamLike=void 0;var t=ML(),n=CL();function r(e,r){return t.scheduleAsyncIterable(n.readableStreamLikeToAsyncGenerator(e),r)}e.scheduleReadableStreamLike=r})),PL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scheduled=void 0;var t=OL(),n=kL(),r=AL(),i=jL(),a=ML(),o=vL(),s=_L(),c=gL(),l=SL(),u=yL(),d=bL(),f=CL(),p=NL();function m(e,m){if(e!=null){if(o.isInteropObservable(e))return t.scheduleObservable(e,m);if(c.isArrayLike(e))return r.scheduleArray(e,m);if(s.isPromise(e))return n.schedulePromise(e,m);if(u.isAsyncIterable(e))return a.scheduleAsyncIterable(e,m);if(l.isIterable(e))return i.scheduleIterable(e,m);if(f.isReadableStreamLike(e))return p.scheduleReadableStreamLike(e,m)}throw d.createInvalidObservableTypeError(e)}e.scheduled=m})),FL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.from=void 0;var t=PL(),n=wL();function r(e,r){return r?t.scheduled(e,r):n.innerFrom(e)}e.from=r})),IL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.of=void 0;var t=hL(),n=FL();function r(){var e=[...arguments],r=t.popScheduler(e);return n.from(e,r)}e.of=r})),LL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.throwError=void 0;var t=LI(),n=SI();function r(e,r){var i=n.isFunction(e)?e:function(){return e},a=function(e){return e.error(i())};return new t.Observable(r?function(e){return r.schedule(a,0,e)}:a)}e.throwError=r})),RL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.observeNotification=e.Notification=e.NotificationKind=void 0;var t=pL(),n=IL(),r=LL(),i=SI();(function(e){e.NEXT=`N`,e.ERROR=`E`,e.COMPLETE=`C`})(e.NotificationKind||={}),e.Notification=function(){function e(e,t,n){this.kind=e,this.value=t,this.error=n,this.hasValue=e===`N`}return e.prototype.observe=function(e){return a(this,e)},e.prototype.do=function(e,t,n){var r=this,i=r.kind,a=r.value,o=r.error;return i===`N`?e?.(a):i===`E`?t?.(o):n?.()},e.prototype.accept=function(e,t,n){return i.isFunction(e?.next)?this.observe(e):this.do(e,t,n)},e.prototype.toObservable=function(){var e=this,i=e.kind,a=e.value,o=e.error,s=i===`N`?n.of(a):i===`E`?r.throwError(function(){return o}):i===`C`?t.EMPTY:0;if(!s)throw TypeError(`Unexpected notification kind `+i);return s},e.createNext=function(t){return new e(`N`,t)},e.createError=function(t){return new e(`E`,void 0,t)},e.createComplete=function(){return e.completeNotification},e.completeNotification=new e(`C`),e}();function a(e,t){var n,r,i,a=e,o=a.kind,s=a.value,c=a.error;if(typeof o!=`string`)throw TypeError(`Invalid notification, missing "kind"`);o===`N`?(n=t.next)==null||n.call(t,s):o===`E`?(r=t.error)==null||r.call(t,c):(i=t.complete)==null||i.call(t)}e.observeNotification=a})),zL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isObservable=void 0;var t=LI(),n=SI();function r(e){return!!e&&(e instanceof t.Observable||n.isFunction(e.lift)&&n.isFunction(e.subscribe))}e.isObservable=r})),BL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EmptyError=void 0,e.EmptyError=CI().createErrorClass(function(e){return function(){e(this),this.name=`EmptyError`,this.message=`no elements in sequence`}})})),VL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.lastValueFrom=void 0;var t=BL();function n(e,n){var r=typeof n==`object`;return new Promise(function(i,a){var o=!1,s;e.subscribe({next:function(e){s=e,o=!0},error:a,complete:function(){o?i(s):r?i(n.defaultValue):a(new t.EmptyError)}})})}e.lastValueFrom=n})),HL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.firstValueFrom=void 0;var t=BL(),n=NI();function r(e,r){var i=typeof r==`object`;return new Promise(function(a,o){var s=new n.SafeSubscriber({next:function(e){a(e),s.unsubscribe()},error:o,complete:function(){i?a(r.defaultValue):o(new t.EmptyError)}});e.subscribe(s)})}e.firstValueFrom=r})),UL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ArgumentOutOfRangeError=void 0,e.ArgumentOutOfRangeError=CI().createErrorClass(function(e){return function(){e(this),this.name=`ArgumentOutOfRangeError`,this.message=`argument out of range`}})})),WL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.NotFoundError=void 0,e.NotFoundError=CI().createErrorClass(function(e){return function(t){e(this),this.name=`NotFoundError`,this.message=t}})})),GL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.SequenceError=void 0,e.SequenceError=CI().createErrorClass(function(e){return function(t){e(this),this.name=`SequenceError`,this.message=t}})})),KL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isValidDate=void 0;function t(e){return e instanceof Date&&!isNaN(e)}e.isValidDate=t})),qL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.timeout=e.TimeoutError=void 0;var t=aL(),n=KL(),r=H(),i=wL(),a=CI(),o=U(),s=TL();e.TimeoutError=a.createErrorClass(function(e){return function(t){t===void 0&&(t=null),e(this),this.message=`Timeout has occurred`,this.name=`TimeoutError`,this.info=t}});function c(e,a){var c=n.isValidDate(e)?{first:e}:typeof e==`number`?{each:e}:e,u=c.first,d=c.each,f=c.with,p=f===void 0?l:f,m=c.scheduler,h=m===void 0?a??t.asyncScheduler:m,g=c.meta,_=g===void 0?null:g;if(u==null&&d==null)throw TypeError(`No timeout provided.`);return r.operate(function(e,t){var n,r,a=null,c=0,l=function(e){r=s.executeSchedule(t,h,function(){try{n.unsubscribe(),i.innerFrom(p({meta:_,lastValue:a,seen:c})).subscribe(t)}catch(e){t.error(e)}},e)};n=e.subscribe(o.createOperatorSubscriber(t,function(e){r?.unsubscribe(),c++,t.next(a=e),d>0&&l(d)},void 0,void 0,function(){r?.closed||r?.unsubscribe(),a=null})),!c&&l(u==null?d:typeof u==`number`?u:+u-h.now())})}e.timeout=c;function l(t){throw new e.TimeoutError(t)}})),JL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.map=void 0;var t=H(),n=U();function r(e,r){return t.operate(function(t,i){var a=0;t.subscribe(n.createOperatorSubscriber(i,function(t){i.next(e.call(r,t,a++))}))})}e.map=r})),YL=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.mapOneOrManyArgs=void 0;var r=JL(),i=Array.isArray;function a(e,r){return i(r)?e.apply(void 0,n([],t(r))):e(r)}function o(e){return r.map(function(t){return a(e,t)})}e.mapOneOrManyArgs=o})),XL=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.bindCallbackInternals=void 0;var r=mL(),i=LI(),a=DL(),o=YL(),s=EL(),c=JI();function l(e,u,d,f){if(d){if(r.isScheduler(d))f=d;else return function(){var t=[...arguments];return l(e,u,f).apply(this,t).pipe(o.mapOneOrManyArgs(d))}}return f?function(){var t=[...arguments];return l(e,u).apply(this,t).pipe(a.subscribeOn(f),s.observeOn(f))}:function(){for(var r=this,a=[],o=0;o<arguments.length;o++)a[o]=arguments[o];var s=new c.AsyncSubject,l=!0;return new i.Observable(function(i){var o=s.subscribe(i);if(l){l=!1;var c=!1,d=!1;u.apply(r,n(n([],t(a)),[function(){var t=[...arguments];if(e){var n=t.shift();if(n!=null){s.error(n);return}}s.next(1<t.length?t:t[0]),d=!0,c&&s.complete()}])),d&&s.complete(),c=!0}return o})}}e.bindCallbackInternals=l})),ZL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bindCallback=void 0;var t=XL();function n(e,n,r){return t.bindCallbackInternals(!1,e,n,r)}e.bindCallback=n})),QL=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bindNodeCallback=void 0;var t=XL();function n(e,n,r){return t.bindCallbackInternals(!0,e,n,r)}e.bindNodeCallback=n})),$L=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.argsArgArrayOrObject=void 0;var t=Array.isArray,n=Object.getPrototypeOf,r=Object.prototype,i=Object.keys;function a(e){if(e.length===1){var n=e[0];if(t(n))return{args:n,keys:null};if(o(n)){var r=i(n);return{args:r.map(function(e){return n[e]}),keys:r}}}return{args:e,keys:null}}e.argsArgArrayOrObject=a;function o(e){return e&&typeof e==`object`&&n(e)===r}})),eR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createObject=void 0;function t(e,t){return e.reduce(function(e,n,r){return e[n]=t[r],e},{})}e.createObject=t})),tR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.combineLatestInit=e.combineLatest=void 0;var t=LI(),n=$L(),r=FL(),i=FI(),a=YL(),o=hL(),s=eR(),c=U(),l=TL();function u(){var e=[...arguments],c=o.popScheduler(e),l=o.popResultSelector(e),u=n.argsArgArrayOrObject(e),f=u.args,p=u.keys;if(f.length===0)return r.from([],c);var m=new t.Observable(d(f,c,p?function(e){return s.createObject(p,e)}:i.identity));return l?m.pipe(a.mapOneOrManyArgs(l)):m}e.combineLatest=u;function d(e,t,n){return n===void 0&&(n=i.identity),function(i){f(t,function(){for(var a=e.length,o=Array(a),s=a,l=a,u=function(a){f(t,function(){var u=r.from(e[a],t),d=!1;u.subscribe(c.createOperatorSubscriber(i,function(e){o[a]=e,d||(d=!0,l--),l||i.next(n(o.slice()))},function(){--s||i.complete()}))},i)},d=0;d<a;d++)u(d)},i)}}e.combineLatestInit=d;function f(e,t,n){e?l.executeSchedule(n,e,t):t()}})),nR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeInternals=void 0;var t=wL(),n=TL(),r=U();function i(e,i,a,o,s,c,l,u){var d=[],f=0,p=0,m=!1,h=function(){m&&!d.length&&!f&&i.complete()},g=function(e){return f<o?_(e):d.push(e)},_=function(e){c&&i.next(e),f++;var u=!1;t.innerFrom(a(e,p++)).subscribe(r.createOperatorSubscriber(i,function(e){s?.(e),c?g(e):i.next(e)},function(){u=!0},void 0,function(){if(u)try{f--;for(var e=function(){var e=d.shift();l?n.executeSchedule(i,l,function(){return _(e)}):_(e)};d.length&&f<o;)e();h()}catch(e){i.error(e)}}))};return e.subscribe(r.createOperatorSubscriber(i,g,function(){m=!0,h()})),function(){u?.()}}e.mergeInternals=i})),rR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeMap=void 0;var t=JL(),n=wL(),r=H(),i=nR(),a=SI();function o(e,s,c){return c===void 0&&(c=1/0),a.isFunction(s)?o(function(r,i){return t.map(function(e,t){return s(r,e,i,t)})(n.innerFrom(e(r,i)))},c):(typeof s==`number`&&(c=s),r.operate(function(t,n){return i.mergeInternals(t,n,e,c)}))}e.mergeMap=o})),iR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeAll=void 0;var t=rR(),n=FI();function r(e){return e===void 0&&(e=1/0),t.mergeMap(n.identity,e)}e.mergeAll=r})),aR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.concatAll=void 0;var t=iR();function n(){return t.mergeAll(1)}e.concatAll=n})),oR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.concat=void 0;var t=aR(),n=hL(),r=FL();function i(){var e=[...arguments];return t.concatAll()(r.from(e,n.popScheduler(e)))}e.concat=i})),sR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.defer=void 0;var t=LI(),n=wL();function r(e){return new t.Observable(function(t){n.innerFrom(e()).subscribe(t)})}e.defer=r})),cR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.connectable=void 0;var t=WI(),n=LI(),r=sR(),i={connector:function(){return new t.Subject},resetOnDisconnect:!0};function a(e,t){t===void 0&&(t=i);var a=null,o=t.connector,s=t.resetOnDisconnect,c=s===void 0||s,l=o(),u=new n.Observable(function(e){return l.subscribe(e)});return u.connect=function(){return(!a||a.closed)&&(a=r.defer(function(){return e}).subscribe(l),c&&a.add(function(){return l=o()})),a},u}e.connectable=a})),lR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.forkJoin=void 0;var t=LI(),n=$L(),r=wL(),i=hL(),a=U(),o=YL(),s=eR();function c(){var e=[...arguments],c=i.popResultSelector(e),l=n.argsArgArrayOrObject(e),u=l.args,d=l.keys,f=new t.Observable(function(e){var t=u.length;if(!t){e.complete();return}for(var n=Array(t),i=t,o=t,c=function(t){var c=!1;r.innerFrom(u[t]).subscribe(a.createOperatorSubscriber(e,function(e){c||(c=!0,o--),n[t]=e},function(){return i--},void 0,function(){(!i||!c)&&(o||e.next(d?s.createObject(d,n):n),e.complete())}))},l=0;l<t;l++)c(l)});return c?f.pipe(o.mapOneOrManyArgs(c)):f}e.forkJoin=c})),uR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a};Object.defineProperty(e,"__esModule",{value:!0}),e.fromEvent=void 0;var n=wL(),r=LI(),i=rR(),a=gL(),o=SI(),s=YL(),c=[`addListener`,`removeListener`],l=[`addEventListener`,`removeEventListener`],u=[`on`,`off`];function d(e,g,_,v){if(o.isFunction(_)&&(v=_,_=void 0),v)return d(e,g,_).pipe(s.mapOneOrManyArgs(v));var y=t(h(e)?l.map(function(t){return function(n){return e[t](g,n,_)}}):p(e)?c.map(f(e,g)):m(e)?u.map(f(e,g)):[],2),b=y[0],ee=y[1];if(!b&&a.isArrayLike(e))return i.mergeMap(function(e){return d(e,g,_)})(n.innerFrom(e));if(!b)throw TypeError(`Invalid event target`);return new r.Observable(function(e){var t=function(){var t=[...arguments];return e.next(1<t.length?t:t[0])};return b(t),function(){return ee(t)}})}e.fromEvent=d;function f(e,t){return function(n){return function(r){return e[n](t,r)}}}function p(e){return o.isFunction(e.addListener)&&o.isFunction(e.removeListener)}function m(e){return o.isFunction(e.on)&&o.isFunction(e.off)}function h(e){return o.isFunction(e.addEventListener)&&o.isFunction(e.removeEventListener)}})),dR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.fromEventPattern=void 0;var t=LI(),n=SI(),r=YL();function i(e,a,o){return o?i(e,a).pipe(r.mapOneOrManyArgs(o)):new t.Observable(function(t){var r=function(){var e=[...arguments];return t.next(e.length===1?e[0]:e)},i=e(r);return n.isFunction(a)?function(){return a(r,i)}:void 0})}e.fromEventPattern=i})),fR=_((e=>{var t=e&&e.__generator||function(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(r)throw TypeError(`Generator is already executing.`);for(;n;)try{if(r=1,i&&(a=o[0]&2?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[o[0]&2,a.value]),o[0]){case 0:case 1:a=o;break;case 4:return n.label++,{value:o[1],done:!1};case 5:n.label++,i=o[1],o=[0];continue;case 7:o=n.ops.pop(),n.trys.pop();continue;default:if(a=n.trys,!(a=a.length>0&&a[a.length-1])&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){n.label=o[1];break}if(o[0]===6&&n.label<a[1]){n.label=a[1],a=o;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(o);break}a[2]&&n.ops.pop(),n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e],i=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}};Object.defineProperty(e,"__esModule",{value:!0}),e.generate=void 0;var n=FI(),r=mL(),i=sR(),a=jL();function o(e,o,s,c,l){var u,d,f,p;arguments.length===1?(u=e,p=u.initialState,o=u.condition,s=u.iterate,d=u.resultSelector,f=d===void 0?n.identity:d,l=u.scheduler):(p=e,!c||r.isScheduler(c)?(f=n.identity,l=c):f=c);function m(){var e;return t(this,function(t){switch(t.label){case 0:e=p,t.label=1;case 1:return!o||o(e)?[4,f(e)]:[3,4];case 2:t.sent(),t.label=3;case 3:return e=s(e),[3,1];case 4:return[2]}})}return i.defer(l?function(){return a.scheduleIterable(m(),l)}:m)}e.generate=o})),pR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.iif=void 0;var t=sR();function n(e,n,r){return t.defer(function(){return e()?n:r})}e.iif=n})),mR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.timer=void 0;var t=LI(),n=aL(),r=mL(),i=KL();function a(e,a,o){e===void 0&&(e=0),o===void 0&&(o=n.async);var s=-1;return a!=null&&(r.isScheduler(a)?o=a:s=a),new t.Observable(function(t){var n=i.isValidDate(e)?+e-o.now():e;n<0&&(n=0);var r=0;return o.schedule(function(){t.closed||(t.next(r++),0<=s?this.schedule(void 0,s):t.complete())},n)})}e.timer=a})),hR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.interval=void 0;var t=aL(),n=mR();function r(e,r){return e===void 0&&(e=0),r===void 0&&(r=t.asyncScheduler),e<0&&(e=0),n.timer(e,e,r)}e.interval=r})),gR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;var t=iR(),n=wL(),r=pL(),i=hL(),a=FL();function o(){var e=[...arguments],o=i.popScheduler(e),s=i.popNumber(e,1/0),c=e;return c.length?c.length===1?n.innerFrom(c[0]):t.mergeAll(s)(a.from(c,o)):r.EMPTY}e.merge=o})),_R=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.never=e.NEVER=void 0;var t=LI(),n=AI();e.NEVER=new t.Observable(n.noop);function r(){return e.NEVER}e.never=r})),vR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.argsOrArgArray=void 0;var t=Array.isArray;function n(e){return e.length===1&&t(e[0])?e[0]:e}e.argsOrArgArray=n})),yR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.onErrorResumeNext=void 0;var t=LI(),n=vR(),r=U(),i=AI(),a=wL();function o(){var e=[...arguments],o=n.argsOrArgArray(e);return new t.Observable(function(e){var t=0,n=function(){if(t<o.length){var s=void 0;try{s=a.innerFrom(o[t++])}catch{n();return}var c=new r.OperatorSubscriber(e,void 0,i.noop,i.noop);s.subscribe(c),c.add(n)}else e.complete()};n()})}e.onErrorResumeNext=o})),bR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.pairs=void 0;var t=FL();function n(e,n){return t.from(Object.entries(e),n)}e.pairs=n})),xR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.not=void 0;function t(e,t){return function(n,r){return!e.call(t,n,r)}}e.not=t})),SR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.filter=void 0;var t=H(),n=U();function r(e,r){return t.operate(function(t,i){var a=0;t.subscribe(n.createOperatorSubscriber(i,function(t){return e.call(r,t,a++)&&i.next(t)}))})}e.filter=r})),CR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.partition=void 0;var t=xR(),n=SR(),r=wL();function i(e,i,a){return[n.filter(i,a)(r.innerFrom(e)),n.filter(t.not(i,a))(r.innerFrom(e))]}e.partition=i})),wR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.raceInit=e.race=void 0;var t=LI(),n=wL(),r=vR(),i=U();function a(){var e=[...arguments];return e=r.argsOrArgArray(e),e.length===1?n.innerFrom(e[0]):new t.Observable(o(e))}e.race=a;function o(e){return function(t){for(var r=[],a=function(a){r.push(n.innerFrom(e[a]).subscribe(i.createOperatorSubscriber(t,function(e){if(r){for(var n=0;n<r.length;n++)n!==a&&r[n].unsubscribe();r=null}t.next(e)})))},o=0;r&&!t.closed&&o<e.length;o++)a(o)}}e.raceInit=o})),TR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.range=void 0;var t=LI(),n=pL();function r(e,r,i){if(r??(r=e,e=0),r<=0)return n.EMPTY;var a=r+e;return new t.Observable(i?function(t){var n=e;return i.schedule(function(){n<a?(t.next(n++),this.schedule()):t.complete()})}:function(t){for(var n=e;n<a&&!t.closed;)t.next(n++);t.complete()})}e.range=r})),ER=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.using=void 0;var t=LI(),n=wL(),r=pL();function i(e,i){return new t.Observable(function(t){var a=e(),o=i(a);return(o?n.innerFrom(o):r.EMPTY).subscribe(t),function(){a&&a.unsubscribe()}})}e.using=i})),DR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.zip=void 0;var r=LI(),i=wL(),a=vR(),o=pL(),s=U(),c=hL();function l(){var e=[...arguments],l=c.popResultSelector(e),u=a.argsOrArgArray(e);return u.length?new r.Observable(function(e){var r=u.map(function(){return[]}),a=u.map(function(){return!1});e.add(function(){r=a=null});for(var o=function(o){i.innerFrom(u[o]).subscribe(s.createOperatorSubscriber(e,function(i){if(r[o].push(i),r.every(function(e){return e.length})){var s=r.map(function(e){return e.shift()});e.next(l?l.apply(void 0,n([],t(s))):s),r.some(function(e,t){return!e.length&&a[t]})&&e.complete()}},function(){a[o]=!0,!r[o].length&&e.complete()}))},c=0;!e.closed&&c<u.length;c++)o(c);return function(){r=a=null}}):o.EMPTY}e.zip=l})),OR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0})})),kR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.audit=void 0;var t=H(),n=wL(),r=U();function i(e){return t.operate(function(t,i){var a=!1,o=null,s=null,c=!1,l=function(){if(s?.unsubscribe(),s=null,a){a=!1;var e=o;o=null,i.next(e)}c&&i.complete()},u=function(){s=null,c&&i.complete()};t.subscribe(r.createOperatorSubscriber(i,function(t){a=!0,o=t,s||n.innerFrom(e(t)).subscribe(s=r.createOperatorSubscriber(i,l,u))},function(){c=!0,(!a||!s||s.closed)&&i.complete()}))})}e.audit=i})),AR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.auditTime=void 0;var t=aL(),n=kR(),r=mR();function i(e,i){return i===void 0&&(i=t.asyncScheduler),n.audit(function(){return r.timer(e,i)})}e.auditTime=i})),jR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.buffer=void 0;var t=H(),n=AI(),r=U(),i=wL();function a(e){return t.operate(function(t,a){var o=[];return t.subscribe(r.createOperatorSubscriber(a,function(e){return o.push(e)},function(){a.next(o),a.complete()})),i.innerFrom(e).subscribe(r.createOperatorSubscriber(a,function(){var e=o;o=[],a.next(e)},n.noop)),function(){o=null}})}e.buffer=a})),MR=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.bufferCount=void 0;var n=H(),r=U(),i=TI();function a(e,a){return a===void 0&&(a=null),a??=e,n.operate(function(n,o){var s=[],c=0;n.subscribe(r.createOperatorSubscriber(o,function(n){var r,l,u,d,f=null;c++%a===0&&s.push([]);try{for(var p=t(s),m=p.next();!m.done;m=p.next()){var h=m.value;h.push(n),e<=h.length&&(f??=[],f.push(h))}}catch(e){r={error:e}}finally{try{m&&!m.done&&(l=p.return)&&l.call(p)}finally{if(r)throw r.error}}if(f)try{for(var g=t(f),_=g.next();!_.done;_=g.next()){var h=_.value;i.arrRemove(s,h),o.next(h)}}catch(e){u={error:e}}finally{try{_&&!_.done&&(d=g.return)&&d.call(g)}finally{if(u)throw u.error}}},function(){var e,n;try{for(var r=t(s),i=r.next();!i.done;i=r.next()){var a=i.value;o.next(a)}}catch(t){e={error:t}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(e)throw e.error}}o.complete()},void 0,function(){s=null}))})}e.bufferCount=a})),NR=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.bufferTime=void 0;var n=EI(),r=H(),i=U(),a=TI(),o=aL(),s=hL(),c=TL();function l(e){var l=[...arguments].slice(1),u=s.popScheduler(l)??o.asyncScheduler,d=l[0]??null,f=l[1]||1/0;return r.operate(function(r,o){var s=[],l=!1,p=function(e){var t=e.buffer;e.subs.unsubscribe(),a.arrRemove(s,e),o.next(t),l&&m()},m=function(){if(s){var t=new n.Subscription;o.add(t);var r={buffer:[],subs:t};s.push(r),c.executeSchedule(t,u,function(){return p(r)},e)}};d!==null&&d>=0?c.executeSchedule(o,u,m,d,!0):l=!0,m();var h=i.createOperatorSubscriber(o,function(e){var n,r,i=s.slice();try{for(var a=t(i),o=a.next();!o.done;o=a.next()){var c=o.value,l=c.buffer;l.push(e),f<=l.length&&p(c)}}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}},function(){for(;s?.length;)o.next(s.shift().buffer);h?.unsubscribe(),o.complete(),o.unsubscribe()},void 0,function(){return s=null});r.subscribe(h)})}e.bufferTime=l})),PR=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.bufferToggle=void 0;var n=EI(),r=H(),i=wL(),a=U(),o=AI(),s=TI();function c(e,c){return r.operate(function(r,l){var u=[];i.innerFrom(e).subscribe(a.createOperatorSubscriber(l,function(e){var t=[];u.push(t);var r=new n.Subscription;r.add(i.innerFrom(c(e)).subscribe(a.createOperatorSubscriber(l,function(){s.arrRemove(u,t),l.next(t),r.unsubscribe()},o.noop)))},o.noop)),r.subscribe(a.createOperatorSubscriber(l,function(e){var n,r;try{for(var i=t(u),a=i.next();!a.done;a=i.next())a.value.push(e)}catch(e){n={error:e}}finally{try{a&&!a.done&&(r=i.return)&&r.call(i)}finally{if(n)throw n.error}}},function(){for(;u.length>0;)l.next(u.shift());l.complete()}))})}e.bufferToggle=c})),FR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.bufferWhen=void 0;var t=H(),n=AI(),r=U(),i=wL();function a(e){return t.operate(function(t,a){var o=null,s=null,c=function(){s?.unsubscribe();var t=o;o=[],t&&a.next(t),i.innerFrom(e()).subscribe(s=r.createOperatorSubscriber(a,c,n.noop))};c(),t.subscribe(r.createOperatorSubscriber(a,function(e){return o?.push(e)},function(){o&&a.next(o),a.complete()},void 0,function(){return o=s=null}))})}e.bufferWhen=a})),IR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.catchError=void 0;var t=wL(),n=U(),r=H();function i(e){return r.operate(function(r,a){var o=null,s=!1,c;o=r.subscribe(n.createOperatorSubscriber(a,void 0,void 0,function(n){c=t.innerFrom(e(n,i(e)(r))),o?(o.unsubscribe(),o=null,c.subscribe(a)):s=!0})),s&&(o.unsubscribe(),o=null,c.subscribe(a))})}e.catchError=i})),LR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scanInternals=void 0;var t=U();function n(e,n,r,i,a){return function(o,s){var c=r,l=n,u=0;o.subscribe(t.createOperatorSubscriber(s,function(t){var n=u++;l=c?e(l,t,n):(c=!0,t),i&&s.next(l)},a&&(function(){c&&s.next(l),s.complete()})))}}e.scanInternals=n})),RR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.reduce=void 0;var t=LR(),n=H();function r(e,r){return n.operate(t.scanInternals(e,r,arguments.length>=2,!1,!0))}e.reduce=r})),zR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.toArray=void 0;var t=RR(),n=H(),r=function(e,t){return e.push(t),e};function i(){return n.operate(function(e,n){t.reduce(r,[])(e).subscribe(n)})}e.toArray=i})),BR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.joinAllInternals=void 0;var t=FI(),n=YL(),r=II(),i=rR(),a=zR();function o(e,o){return r.pipe(a.toArray(),i.mergeMap(function(t){return e(t)}),o?n.mapOneOrManyArgs(o):t.identity)}e.joinAllInternals=o})),VR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.combineLatestAll=void 0;var t=tR(),n=BR();function r(e){return n.joinAllInternals(t.combineLatest,e)}e.combineLatestAll=r})),HR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.combineAll=void 0,e.combineAll=VR().combineLatestAll})),UR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.combineLatest=void 0;var r=tR(),i=H(),a=vR(),o=YL(),s=II(),c=hL();function l(){var e=[...arguments],u=c.popResultSelector(e);return u?s.pipe(l.apply(void 0,n([],t(e))),o.mapOneOrManyArgs(u)):i.operate(function(i,o){r.combineLatestInit(n([i],t(a.argsOrArgArray(e))))(o)})}e.combineLatest=l})),WR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.combineLatestWith=void 0;var r=UR();function i(){var e=[...arguments];return r.combineLatest.apply(void 0,n([],t(e)))}e.combineLatestWith=i})),GR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.concatMap=void 0;var t=rR(),n=SI();function r(e,r){return n.isFunction(r)?t.mergeMap(e,r,1):t.mergeMap(e,1)}e.concatMap=r})),KR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.concatMapTo=void 0;var t=GR(),n=SI();function r(e,r){return n.isFunction(r)?t.concatMap(function(){return e},r):t.concatMap(function(){return e})}e.concatMapTo=r})),qR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.concat=void 0;var r=H(),i=aR(),a=hL(),o=FL();function s(){var e=[...arguments],s=a.popScheduler(e);return r.operate(function(r,a){i.concatAll()(o.from(n([r],t(e)),s)).subscribe(a)})}e.concat=s})),JR=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.concatWith=void 0;var r=qR();function i(){var e=[...arguments];return r.concat.apply(void 0,n([],t(e)))}e.concatWith=i})),YR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.fromSubscribable=void 0;var t=LI();function n(e){return new t.Observable(function(t){return e.subscribe(t)})}e.fromSubscribable=n})),XR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.connect=void 0;var t=WI(),n=wL(),r=H(),i=YR(),a={connector:function(){return new t.Subject}};function o(e,t){t===void 0&&(t=a);var o=t.connector;return r.operate(function(t,r){var a=o();n.innerFrom(e(i.fromSubscribable(a))).subscribe(r),r.add(t.subscribe(a))})}e.connect=o})),ZR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.count=void 0;var t=RR();function n(e){return t.reduce(function(t,n,r){return!e||e(n,r)?t+1:t},0)}e.count=n})),QR=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.debounce=void 0;var t=H(),n=AI(),r=U(),i=wL();function a(e){return t.operate(function(t,a){var o=!1,s=null,c=null,l=function(){if(c?.unsubscribe(),c=null,o){o=!1;var e=s;s=null,a.next(e)}};t.subscribe(r.createOperatorSubscriber(a,function(t){c?.unsubscribe(),o=!0,s=t,c=r.createOperatorSubscriber(a,l,n.noop),i.innerFrom(e(t)).subscribe(c)},function(){l(),a.complete()},void 0,function(){s=c=null}))})}e.debounce=a})),$R=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.debounceTime=void 0;var t=aL(),n=H(),r=U();function i(e,i){return i===void 0&&(i=t.asyncScheduler),n.operate(function(t,n){var a=null,o=null,s=null,c=function(){if(a){a.unsubscribe(),a=null;var e=o;o=null,n.next(e)}};function l(){var t=s+e,r=i.now();if(r<t){a=this.schedule(void 0,t-r),n.add(a);return}c()}t.subscribe(r.createOperatorSubscriber(n,function(t){o=t,s=i.now(),a||(a=i.schedule(l,e),n.add(a))},function(){c(),n.complete()},void 0,function(){o=a=null}))})}e.debounceTime=i})),ez=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.defaultIfEmpty=void 0;var t=H(),n=U();function r(e){return t.operate(function(t,r){var i=!1;t.subscribe(n.createOperatorSubscriber(r,function(e){i=!0,r.next(e)},function(){i||r.next(e),r.complete()}))})}e.defaultIfEmpty=r})),tz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.take=void 0;var t=pL(),n=H(),r=U();function i(e){return e<=0?function(){return t.EMPTY}:n.operate(function(t,n){var i=0;t.subscribe(r.createOperatorSubscriber(n,function(t){++i<=e&&(n.next(t),e<=i&&n.complete())}))})}e.take=i})),nz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.ignoreElements=void 0;var t=H(),n=U(),r=AI();function i(){return t.operate(function(e,t){e.subscribe(n.createOperatorSubscriber(t,r.noop))})}e.ignoreElements=i})),rz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mapTo=void 0;var t=JL();function n(e){return t.map(function(){return e})}e.mapTo=n})),iz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.delayWhen=void 0;var t=oR(),n=tz(),r=nz(),i=rz(),a=rR(),o=wL();function s(e,c){return c?function(i){return t.concat(c.pipe(n.take(1),r.ignoreElements()),i.pipe(s(e)))}:a.mergeMap(function(t,r){return o.innerFrom(e(t,r)).pipe(n.take(1),i.mapTo(t))})}e.delayWhen=s})),az=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.delay=void 0;var t=aL(),n=iz(),r=mR();function i(e,i){i===void 0&&(i=t.asyncScheduler);var a=r.timer(e,i);return n.delayWhen(function(){return a})}e.delay=i})),oz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.dematerialize=void 0;var t=RL(),n=H(),r=U();function i(){return n.operate(function(e,n){e.subscribe(r.createOperatorSubscriber(n,function(e){return t.observeNotification(e,n)}))})}e.dematerialize=i})),sz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.distinct=void 0;var t=H(),n=U(),r=AI(),i=wL();function a(e,a){return t.operate(function(t,o){var s=new Set;t.subscribe(n.createOperatorSubscriber(o,function(t){var n=e?e(t):t;s.has(n)||(s.add(n),o.next(t))})),a&&i.innerFrom(a).subscribe(n.createOperatorSubscriber(o,function(){return s.clear()},r.noop))})}e.distinct=a})),cz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.distinctUntilChanged=void 0;var t=FI(),n=H(),r=U();function i(e,i){return i===void 0&&(i=t.identity),e??=a,n.operate(function(t,n){var a,o=!0;t.subscribe(r.createOperatorSubscriber(n,function(t){var r=i(t);(o||!e(a,r))&&(o=!1,a=r,n.next(t))}))})}e.distinctUntilChanged=i;function a(e,t){return e===t}})),lz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.distinctUntilKeyChanged=void 0;var t=cz();function n(e,n){return t.distinctUntilChanged(function(t,r){return n?n(t[e],r[e]):t[e]===r[e]})}e.distinctUntilKeyChanged=n})),uz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.throwIfEmpty=void 0;var t=BL(),n=H(),r=U();function i(e){return e===void 0&&(e=a),n.operate(function(t,n){var i=!1;t.subscribe(r.createOperatorSubscriber(n,function(e){i=!0,n.next(e)},function(){return i?n.complete():n.error(e())}))})}e.throwIfEmpty=i;function a(){return new t.EmptyError}})),dz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.elementAt=void 0;var t=UL(),n=SR(),r=uz(),i=ez(),a=tz();function o(e,o){if(e<0)throw new t.ArgumentOutOfRangeError;var s=arguments.length>=2;return function(c){return c.pipe(n.filter(function(t,n){return n===e}),a.take(1),s?i.defaultIfEmpty(o):r.throwIfEmpty(function(){return new t.ArgumentOutOfRangeError}))}}e.elementAt=o})),fz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.endWith=void 0;var r=oR(),i=IL();function a(){var e=[...arguments];return function(a){return r.concat(a,i.of.apply(void 0,n([],t(e))))}}e.endWith=a})),pz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.every=void 0;var t=H(),n=U();function r(e,r){return t.operate(function(t,i){var a=0;t.subscribe(n.createOperatorSubscriber(i,function(n){e.call(r,n,a++,t)||(i.next(!1),i.complete())},function(){i.next(!0),i.complete()}))})}e.every=r})),mz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.exhaustMap=void 0;var t=JL(),n=wL(),r=H(),i=U();function a(e,o){return o?function(r){return r.pipe(a(function(r,i){return n.innerFrom(e(r,i)).pipe(t.map(function(e,t){return o(r,e,i,t)}))}))}:r.operate(function(t,r){var a=0,o=null,s=!1;t.subscribe(i.createOperatorSubscriber(r,function(t){o||(o=i.createOperatorSubscriber(r,void 0,function(){o=null,s&&r.complete()}),n.innerFrom(e(t,a++)).subscribe(o))},function(){s=!0,!o&&r.complete()}))})}e.exhaustMap=a})),hz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.exhaustAll=void 0;var t=mz(),n=FI();function r(){return t.exhaustMap(n.identity)}e.exhaustAll=r})),gz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.exhaust=void 0,e.exhaust=hz().exhaustAll})),_z=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.expand=void 0;var t=H(),n=nR();function r(e,r,i){return r===void 0&&(r=1/0),r=(r||0)<1?1/0:r,t.operate(function(t,a){return n.mergeInternals(t,a,e,r,void 0,!0,i)})}e.expand=r})),vz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.finalize=void 0;var t=H();function n(e){return t.operate(function(t,n){try{t.subscribe(n)}finally{n.add(e)}})}e.finalize=n})),yz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.createFind=e.find=void 0;var t=H(),n=U();function r(e,n){return t.operate(i(e,n,`value`))}e.find=r;function i(e,t,r){var i=r===`index`;return function(r,a){var o=0;r.subscribe(n.createOperatorSubscriber(a,function(n){var s=o++;e.call(t,n,s,r)&&(a.next(i?s:n),a.complete())},function(){a.next(i?-1:void 0),a.complete()}))}}e.createFind=i})),bz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.findIndex=void 0;var t=H(),n=yz();function r(e,r){return t.operate(n.createFind(e,r,`index`))}e.findIndex=r})),xz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.first=void 0;var t=BL(),n=SR(),r=tz(),i=ez(),a=uz(),o=FI();function s(e,s){var c=arguments.length>=2;return function(l){return l.pipe(e?n.filter(function(t,n){return e(t,n,l)}):o.identity,r.take(1),c?i.defaultIfEmpty(s):a.throwIfEmpty(function(){return new t.EmptyError}))}}e.first=s})),Sz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.groupBy=void 0;var t=LI(),n=wL(),r=WI(),i=H(),a=U();function o(e,o,s,c){return i.operate(function(i,l){var u;!o||typeof o==`function`?u=o:(s=o.duration,u=o.element,c=o.connector);var d=new Map,f=function(e){d.forEach(e),e(l)},p=function(e){return f(function(t){return t.error(e)})},m=0,h=!1,g=new a.OperatorSubscriber(l,function(t){try{var i=e(t),o=d.get(i);if(!o){d.set(i,o=c?c():new r.Subject);var f=_(i,o);if(l.next(f),s){var m=a.createOperatorSubscriber(o,function(){o.complete(),m?.unsubscribe()},void 0,void 0,function(){return d.delete(i)});g.add(n.innerFrom(s(f)).subscribe(m))}}o.next(u?u(t):t)}catch(e){p(e)}},function(){return f(function(e){return e.complete()})},p,function(){return d.clear()},function(){return h=!0,m===0});i.subscribe(g);function _(e,n){var r=new t.Observable(function(e){m++;var t=n.subscribe(e);return function(){t.unsubscribe(),--m===0&&h&&g.unsubscribe()}});return r.key=e,r}})}e.groupBy=o})),Cz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.isEmpty=void 0;var t=H(),n=U();function r(){return t.operate(function(e,t){e.subscribe(n.createOperatorSubscriber(t,function(){t.next(!1),t.complete()},function(){t.next(!0),t.complete()}))})}e.isEmpty=r})),wz=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.takeLast=void 0;var n=pL(),r=H(),i=U();function a(e){return e<=0?function(){return n.EMPTY}:r.operate(function(n,r){var a=[];n.subscribe(i.createOperatorSubscriber(r,function(t){a.push(t),e<a.length&&a.shift()},function(){var e,n;try{for(var i=t(a),o=i.next();!o.done;o=i.next()){var s=o.value;r.next(s)}}catch(t){e={error:t}}finally{try{o&&!o.done&&(n=i.return)&&n.call(i)}finally{if(e)throw e.error}}r.complete()},void 0,function(){a=null}))})}e.takeLast=a})),Tz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.last=void 0;var t=BL(),n=SR(),r=wz(),i=uz(),a=ez(),o=FI();function s(e,s){var c=arguments.length>=2;return function(l){return l.pipe(e?n.filter(function(t,n){return e(t,n,l)}):o.identity,r.takeLast(1),c?a.defaultIfEmpty(s):i.throwIfEmpty(function(){return new t.EmptyError}))}}e.last=s})),Ez=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.materialize=void 0;var t=RL(),n=H(),r=U();function i(){return n.operate(function(e,n){e.subscribe(r.createOperatorSubscriber(n,function(e){n.next(t.Notification.createNext(e))},function(){n.next(t.Notification.createComplete()),n.complete()},function(e){n.next(t.Notification.createError(e)),n.complete()}))})}e.materialize=i})),Dz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.max=void 0;var t=RR(),n=SI();function r(e){return t.reduce(n.isFunction(e)?function(t,n){return e(t,n)>0?t:n}:function(e,t){return e>t?e:t})}e.max=r})),Oz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.flatMap=void 0,e.flatMap=rR().mergeMap})),kz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeMapTo=void 0;var t=rR(),n=SI();function r(e,r,i){return i===void 0&&(i=1/0),n.isFunction(r)?t.mergeMap(function(){return e},r,i):(typeof r==`number`&&(i=r),t.mergeMap(function(){return e},i))}e.mergeMapTo=r})),Az=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.mergeScan=void 0;var t=H(),n=nR();function r(e,r,i){return i===void 0&&(i=1/0),t.operate(function(t,a){var o=r;return n.mergeInternals(t,a,function(t,n){return e(o,t,n)},i,function(e){o=e},!1,void 0,function(){return o=null})})}e.mergeScan=r})),jz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.merge=void 0;var r=H(),i=vR(),a=iR(),o=hL(),s=FL();function c(){var e=[...arguments],c=o.popScheduler(e),l=o.popNumber(e,1/0);return e=i.argsOrArgArray(e),r.operate(function(r,i){a.mergeAll(l)(s.from(n([r],t(e)),c)).subscribe(i)})}e.merge=c})),Mz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.mergeWith=void 0;var r=jz();function i(){var e=[...arguments];return r.merge.apply(void 0,n([],t(e)))}e.mergeWith=i})),Nz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.min=void 0;var t=RR(),n=SI();function r(e){return t.reduce(n.isFunction(e)?function(t,n){return e(t,n)<0?t:n}:function(e,t){return e<t?e:t})}e.min=r})),Pz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.multicast=void 0;var t=zI(),n=SI(),r=XR();function i(e,i){var a=n.isFunction(e)?e:function(){return e};return n.isFunction(i)?r.connect(i,{connector:a}):function(e){return new t.ConnectableObservable(e,a)}}e.multicast=i})),Fz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.onErrorResumeNext=e.onErrorResumeNextWith=void 0;var r=vR(),i=yR();function a(){var e=[...arguments],a=r.argsOrArgArray(e);return function(e){return i.onErrorResumeNext.apply(void 0,n([e],t(a)))}}e.onErrorResumeNextWith=a,e.onErrorResumeNext=a})),Iz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.pairwise=void 0;var t=H(),n=U();function r(){return t.operate(function(e,t){var r,i=!1;e.subscribe(n.createOperatorSubscriber(t,function(e){var n=r;r=e,i&&t.next([n,e]),i=!0}))})}e.pairwise=r})),Lz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.pluck=void 0;var t=JL();function n(){var e=[...arguments],n=e.length;if(n===0)throw Error(`list of properties cannot be empty.`);return t.map(function(t){for(var r=t,i=0;i<n;i++){var a=r?.[e[i]];if(a!==void 0)r=a;else return}return r})}e.pluck=n})),Rz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.publish=void 0;var t=WI(),n=Pz(),r=XR();function i(e){return e?function(t){return r.connect(e)(t)}:function(e){return n.multicast(new t.Subject)(e)}}e.publish=i})),zz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.publishBehavior=void 0;var t=GI(),n=zI();function r(e){return function(r){var i=new t.BehaviorSubject(e);return new n.ConnectableObservable(r,function(){return i})}}e.publishBehavior=r})),Bz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.publishLast=void 0;var t=JI(),n=zI();function r(){return function(e){var r=new t.AsyncSubject;return new n.ConnectableObservable(e,function(){return r})}}e.publishLast=r})),Vz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.publishReplay=void 0;var t=qI(),n=Pz(),r=SI();function i(e,i,a,o){a&&!r.isFunction(a)&&(o=a);var s=r.isFunction(a)?a:void 0;return function(r){return n.multicast(new t.ReplaySubject(e,i,o),s)(r)}}e.publishReplay=i})),Hz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.raceWith=void 0;var r=wR(),i=H(),a=FI();function o(){var e=[...arguments];return e.length?i.operate(function(i,a){r.raceInit(n([i],t(e)))(a)}):a.identity}e.raceWith=o})),Uz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.repeat=void 0;var t=pL(),n=H(),r=U(),i=wL(),a=mR();function o(e){var o,s=1/0,c;return e!=null&&(typeof e==`object`?(o=e.count,s=o===void 0?1/0:o,c=e.delay):s=e),s<=0?function(){return t.EMPTY}:n.operate(function(e,t){var n=0,o,l=function(){if(o?.unsubscribe(),o=null,c!=null){var e=typeof c==`number`?a.timer(c):i.innerFrom(c(n)),s=r.createOperatorSubscriber(t,function(){s.unsubscribe(),u()});e.subscribe(s)}else u()},u=function(){var i=!1;o=e.subscribe(r.createOperatorSubscriber(t,void 0,function(){++n<s?o?l():i=!0:t.complete()})),i&&l()};u()})}e.repeat=o})),Wz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.repeatWhen=void 0;var t=wL(),n=WI(),r=H(),i=U();function a(e){return r.operate(function(r,a){var o,s=!1,c,l=!1,u=!1,d=function(){return u&&l&&(a.complete(),!0)},f=function(){return c||(c=new n.Subject,t.innerFrom(e(c)).subscribe(i.createOperatorSubscriber(a,function(){o?p():s=!0},function(){l=!0,d()}))),c},p=function(){u=!1,o=r.subscribe(i.createOperatorSubscriber(a,void 0,function(){u=!0,!d()&&f().next()})),s&&(o.unsubscribe(),o=null,s=!1,p())};p()})}e.repeatWhen=a})),Gz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.retry=void 0;var t=H(),n=U(),r=FI(),i=mR(),a=wL();function o(e){e===void 0&&(e=1/0);var o=e&&typeof e==`object`?e:{count:e},s=o.count,c=s===void 0?1/0:s,l=o.delay,u=o.resetOnSuccess,d=u!==void 0&&u;return c<=0?r.identity:t.operate(function(e,t){var r=0,o,s=function(){var u=!1;o=e.subscribe(n.createOperatorSubscriber(t,function(e){d&&(r=0),t.next(e)},void 0,function(e){if(r++<c){var d=function(){o?(o.unsubscribe(),o=null,s()):u=!0};if(l!=null){var f=typeof l==`number`?i.timer(l):a.innerFrom(l(e,r)),p=n.createOperatorSubscriber(t,function(){p.unsubscribe(),d()},function(){t.complete()});f.subscribe(p)}else d()}else t.error(e)})),u&&(o.unsubscribe(),o=null,s())};s()})}e.retry=o})),Kz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.retryWhen=void 0;var t=wL(),n=WI(),r=H(),i=U();function a(e){return r.operate(function(r,a){var o,s=!1,c,l=function(){o=r.subscribe(i.createOperatorSubscriber(a,void 0,void 0,function(r){c||(c=new n.Subject,t.innerFrom(e(c)).subscribe(i.createOperatorSubscriber(a,function(){return o?l():s=!0}))),c&&c.next(r)})),s&&(o.unsubscribe(),o=null,s=!1,l())};l()})}e.retryWhen=a})),qz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.sample=void 0;var t=wL(),n=H(),r=AI(),i=U();function a(e){return n.operate(function(n,a){var o=!1,s=null;n.subscribe(i.createOperatorSubscriber(a,function(e){o=!0,s=e})),t.innerFrom(e).subscribe(i.createOperatorSubscriber(a,function(){if(o){o=!1;var e=s;s=null,a.next(e)}},r.noop))})}e.sample=a})),Jz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.sampleTime=void 0;var t=aL(),n=qz(),r=hR();function i(e,i){return i===void 0&&(i=t.asyncScheduler),n.sample(r.interval(e,i))}e.sampleTime=i})),Yz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.scan=void 0;var t=H(),n=LR();function r(e,r){return t.operate(n.scanInternals(e,r,arguments.length>=2,!0))}e.scan=r})),Xz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.sequenceEqual=void 0;var t=H(),n=U(),r=wL();function i(e,i){return i===void 0&&(i=function(e,t){return e===t}),t.operate(function(t,o){var s=a(),c=a(),l=function(e){o.next(e),o.complete()},u=function(e,t){var r=n.createOperatorSubscriber(o,function(n){var r=t.buffer,a=t.complete;r.length===0?a?l(!1):e.buffer.push(n):!i(n,r.shift())&&l(!1)},function(){e.complete=!0;var n=t.complete,i=t.buffer;n&&l(i.length===0),r?.unsubscribe()});return r};t.subscribe(u(s,c)),r.innerFrom(e).subscribe(u(c,s))})}e.sequenceEqual=i;function a(){return{buffer:[],complete:!1}}})),Zz=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.share=void 0;var r=wL(),i=WI(),a=NI(),o=H();function s(e){e===void 0&&(e={});var t=e.connector,n=t===void 0?function(){return new i.Subject}:t,s=e.resetOnError,l=s===void 0||s,u=e.resetOnComplete,d=u===void 0||u,f=e.resetOnRefCountZero,p=f===void 0||f;return function(e){var t,i,s,u=0,f=!1,m=!1,h=function(){i?.unsubscribe(),i=void 0},g=function(){h(),t=s=void 0,f=m=!1},_=function(){var e=t;g(),e?.unsubscribe()};return o.operate(function(e,o){u++,!m&&!f&&h();var v=s??=n();o.add(function(){u--,u===0&&!m&&!f&&(i=c(_,p))}),v.subscribe(o),!t&&u>0&&(t=new a.SafeSubscriber({next:function(e){return v.next(e)},error:function(e){m=!0,h(),i=c(g,l,e),v.error(e)},complete:function(){f=!0,h(),i=c(g,d),v.complete()}}),r.innerFrom(e).subscribe(t))})(e)}}e.share=s;function c(e,i){var o=[...arguments].slice(2);if(i===!0){e();return}if(i!==!1){var s=new a.SafeSubscriber({next:function(){s.unsubscribe(),e()}});return r.innerFrom(i.apply(void 0,n([],t(o)))).subscribe(s)}}})),Qz=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.shareReplay=void 0;var t=qI(),n=Zz();function r(e,r,i){var a,o,s,c,l=!1;return e&&typeof e==`object`?(a=e.bufferSize,c=a===void 0?1/0:a,o=e.windowTime,r=o===void 0?1/0:o,s=e.refCount,l=s!==void 0&&s,i=e.scheduler):c=e??1/0,n.share({connector:function(){return new t.ReplaySubject(c,r,i)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:l})}e.shareReplay=r})),$z=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.single=void 0;var t=BL(),n=GL(),r=WL(),i=H(),a=U();function o(e){return i.operate(function(i,o){var s=!1,c,l=!1,u=0;i.subscribe(a.createOperatorSubscriber(o,function(t){l=!0,(!e||e(t,u++,i))&&(s&&o.error(new n.SequenceError(`Too many matching values`)),s=!0,c=t)},function(){s?(o.next(c),o.complete()):o.error(l?new r.NotFoundError(`No matching values`):new t.EmptyError)}))})}e.single=o})),eB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.skip=void 0;var t=SR();function n(e){return t.filter(function(t,n){return e<=n})}e.skip=n})),tB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.skipLast=void 0;var t=FI(),n=H(),r=U();function i(e){return e<=0?t.identity:n.operate(function(t,n){var i=Array(e),a=0;return t.subscribe(r.createOperatorSubscriber(n,function(t){var r=a++;if(r<e)i[r]=t;else{var o=r%e,s=i[o];i[o]=t,n.next(s)}})),function(){i=null}})}e.skipLast=i})),nB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.skipUntil=void 0;var t=H(),n=U(),r=wL(),i=AI();function a(e){return t.operate(function(t,a){var o=!1,s=n.createOperatorSubscriber(a,function(){s?.unsubscribe(),o=!0},i.noop);r.innerFrom(e).subscribe(s),t.subscribe(n.createOperatorSubscriber(a,function(e){return o&&a.next(e)}))})}e.skipUntil=a})),rB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.skipWhile=void 0;var t=H(),n=U();function r(e){return t.operate(function(t,r){var i=!1,a=0;t.subscribe(n.createOperatorSubscriber(r,function(t){return(i||=!e(t,a++))&&r.next(t)}))})}e.skipWhile=r})),iB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.startWith=void 0;var t=oR(),n=hL(),r=H();function i(){var e=[...arguments],i=n.popScheduler(e);return r.operate(function(n,r){(i?t.concat(e,n,i):t.concat(e,n)).subscribe(r)})}e.startWith=i})),aB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.switchMap=void 0;var t=wL(),n=H(),r=U();function i(e,i){return n.operate(function(n,a){var o=null,s=0,c=!1,l=function(){return c&&!o&&a.complete()};n.subscribe(r.createOperatorSubscriber(a,function(n){o?.unsubscribe();var c=0,u=s++;t.innerFrom(e(n,u)).subscribe(o=r.createOperatorSubscriber(a,function(e){return a.next(i?i(n,e,u,c++):e)},function(){o=null,l()}))},function(){c=!0,l()}))})}e.switchMap=i})),oB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.switchAll=void 0;var t=aB(),n=FI();function r(){return t.switchMap(n.identity)}e.switchAll=r})),sB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.switchMapTo=void 0;var t=aB(),n=SI();function r(e,r){return n.isFunction(r)?t.switchMap(function(){return e},r):t.switchMap(function(){return e})}e.switchMapTo=r})),cB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.switchScan=void 0;var t=aB(),n=H();function r(e,r){return n.operate(function(n,i){var a=r;return t.switchMap(function(t,n){return e(a,t,n)},function(e,t){return a=t,t})(n).subscribe(i),function(){a=null}})}e.switchScan=r})),lB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.takeUntil=void 0;var t=H(),n=U(),r=wL(),i=AI();function a(e){return t.operate(function(t,a){r.innerFrom(e).subscribe(n.createOperatorSubscriber(a,function(){return a.complete()},i.noop)),!a.closed&&t.subscribe(a)})}e.takeUntil=a})),uB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.takeWhile=void 0;var t=H(),n=U();function r(e,r){return r===void 0&&(r=!1),t.operate(function(t,i){var a=0;t.subscribe(n.createOperatorSubscriber(i,function(t){var n=e(t,a++);(n||r)&&i.next(t),!n&&i.complete()}))})}e.takeWhile=r})),dB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.tap=void 0;var t=SI(),n=H(),r=U(),i=FI();function a(e,a,o){var s=t.isFunction(e)||a||o?{next:e,error:a,complete:o}:e;return s?n.operate(function(e,t){var n;(n=s.subscribe)==null||n.call(s);var i=!0;e.subscribe(r.createOperatorSubscriber(t,function(e){var n;(n=s.next)==null||n.call(s,e),t.next(e)},function(){var e;i=!1,(e=s.complete)==null||e.call(s),t.complete()},function(e){var n;i=!1,(n=s.error)==null||n.call(s,e),t.error(e)},function(){var e,t;i&&((e=s.unsubscribe)==null||e.call(s)),(t=s.finalize)==null||t.call(s)}))}):i.identity}e.tap=a})),fB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.throttle=void 0;var t=H(),n=U(),r=wL();function i(e,i){return t.operate(function(t,a){var o=i??{},s=o.leading,c=s===void 0||s,l=o.trailing,u=l!==void 0&&l,d=!1,f=null,p=null,m=!1,h=function(){p?.unsubscribe(),p=null,u&&(v(),m&&a.complete())},g=function(){p=null,m&&a.complete()},_=function(t){return p=r.innerFrom(e(t)).subscribe(n.createOperatorSubscriber(a,h,g))},v=function(){if(d){d=!1;var e=f;f=null,a.next(e),!m&&_(e)}};t.subscribe(n.createOperatorSubscriber(a,function(e){d=!0,f=e,!(p&&!p.closed)&&(c?v():_(e))},function(){m=!0,!(u&&d&&p&&!p.closed)&&a.complete()}))})}e.throttle=i})),pB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.throttleTime=void 0;var t=aL(),n=fB(),r=mR();function i(e,i,a){i===void 0&&(i=t.asyncScheduler);var o=r.timer(e,i);return n.throttle(function(){return o},a)}e.throttleTime=i})),mB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.TimeInterval=e.timeInterval=void 0;var t=aL(),n=H(),r=U();function i(e){return e===void 0&&(e=t.asyncScheduler),n.operate(function(t,n){var i=e.now();t.subscribe(r.createOperatorSubscriber(n,function(t){var r=e.now(),o=r-i;i=r,n.next(new a(t,o))}))})}e.timeInterval=i;var a=function(){function e(e,t){this.value=e,this.interval=t}return e}();e.TimeInterval=a})),hB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.timeoutWith=void 0;var t=aL(),n=KL(),r=qL();function i(e,i,a){var o,s,c;if(a??=t.async,n.isValidDate(e)?o=e:typeof e==`number`&&(s=e),i)c=function(){return i};else throw TypeError(`No observable provided to switch to`);if(o==null&&s==null)throw TypeError(`No timeout provided.`);return r.timeout({first:o,each:s,scheduler:a,with:c})}e.timeoutWith=i})),gB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.timestamp=void 0;var t=KI(),n=JL();function r(e){return e===void 0&&(e=t.dateTimestampProvider),n.map(function(t){return{value:t,timestamp:e.now()}})}e.timestamp=r})),_B=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.window=void 0;var t=WI(),n=H(),r=U(),i=AI(),a=wL();function o(e){return n.operate(function(n,o){var s=new t.Subject;o.next(s.asObservable());var c=function(e){s.error(e),o.error(e)};return n.subscribe(r.createOperatorSubscriber(o,function(e){return s?.next(e)},function(){s.complete(),o.complete()},c)),a.innerFrom(e).subscribe(r.createOperatorSubscriber(o,function(){s.complete(),o.next(s=new t.Subject)},i.noop,c)),function(){s?.unsubscribe(),s=null}})}e.window=o})),vB=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.windowCount=void 0;var n=WI(),r=H(),i=U();function a(e,a){a===void 0&&(a=0);var o=a>0?a:e;return r.operate(function(r,a){var s=[new n.Subject],c=0;a.next(s[0].asObservable()),r.subscribe(i.createOperatorSubscriber(a,function(r){var i,l;try{for(var u=t(s),d=u.next();!d.done;d=u.next())d.value.next(r)}catch(e){i={error:e}}finally{try{d&&!d.done&&(l=u.return)&&l.call(u)}finally{if(i)throw i.error}}var f=c-e+1;if(f>=0&&f%o===0&&s.shift().complete(),++c%o===0){var p=new n.Subject;s.push(p),a.next(p.asObservable())}},function(){for(;s.length>0;)s.shift().complete();a.complete()},function(e){for(;s.length>0;)s.shift().error(e);a.error(e)},function(){s=null}))})}e.windowCount=a})),yB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.windowTime=void 0;var t=WI(),n=aL(),r=EI(),i=H(),a=U(),o=TI(),s=hL(),c=TL();function l(e){var l=[...arguments].slice(1),u=s.popScheduler(l)??n.asyncScheduler,d=l[0]??null,f=l[1]||1/0;return i.operate(function(n,i){var s=[],l=!1,p=function(e){var t=e.window,n=e.subs;t.complete(),n.unsubscribe(),o.arrRemove(s,e),l&&m()},m=function(){if(s){var n=new r.Subscription;i.add(n);var a=new t.Subject,o={window:a,subs:n,seen:0};s.push(o),i.next(a.asObservable()),c.executeSchedule(n,u,function(){return p(o)},e)}};d!==null&&d>=0?c.executeSchedule(i,u,m,d,!0):l=!0,m();var h=function(e){return s.slice().forEach(e)},g=function(e){h(function(t){var n=t.window;return e(n)}),e(i),i.unsubscribe()};return n.subscribe(a.createOperatorSubscriber(i,function(e){h(function(t){t.window.next(e),f<=++t.seen&&p(t)})},function(){return g(function(e){return e.complete()})},function(e){return g(function(t){return t.error(e)})})),function(){s=null}})}e.windowTime=l})),bB=_((e=>{var t=e&&e.__values||function(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)};Object.defineProperty(e,"__esModule",{value:!0}),e.windowToggle=void 0;var n=WI(),r=EI(),i=H(),a=wL(),o=U(),s=AI(),c=TI();function l(e,l){return i.operate(function(i,u){var d=[],f=function(e){for(;0<d.length;)d.shift().error(e);u.error(e)};a.innerFrom(e).subscribe(o.createOperatorSubscriber(u,function(e){var t=new n.Subject;d.push(t);var i=new r.Subscription,p=function(){c.arrRemove(d,t),t.complete(),i.unsubscribe()},m;try{m=a.innerFrom(l(e))}catch(e){f(e);return}u.next(t.asObservable()),i.add(m.subscribe(o.createOperatorSubscriber(u,p,s.noop,f)))},s.noop)),i.subscribe(o.createOperatorSubscriber(u,function(e){var n,r,i=d.slice();try{for(var a=t(i),o=a.next();!o.done;o=a.next())o.value.next(e)}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}},function(){for(;0<d.length;)d.shift().complete();u.complete()},f,function(){for(;0<d.length;)d.shift().unsubscribe()}))})}e.windowToggle=l})),xB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.windowWhen=void 0;var t=WI(),n=H(),r=U(),i=wL();function a(e){return n.operate(function(n,a){var o,s,c=function(e){o.error(e),a.error(e)},l=function(){s?.unsubscribe(),o?.complete(),o=new t.Subject,a.next(o.asObservable());var n;try{n=i.innerFrom(e())}catch(e){c(e);return}n.subscribe(s=r.createOperatorSubscriber(a,l,l,c))};l(),n.subscribe(r.createOperatorSubscriber(a,function(e){return o.next(e)},function(){o.complete(),a.complete()},c,function(){s?.unsubscribe(),o=null}))})}e.windowWhen=a})),SB=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.withLatestFrom=void 0;var r=H(),i=U(),a=wL(),o=FI(),s=AI(),c=hL();function l(){var e=[...arguments],l=c.popResultSelector(e);return r.operate(function(r,c){for(var u=e.length,d=Array(u),f=e.map(function(){return!1}),p=!1,m=function(t){a.innerFrom(e[t]).subscribe(i.createOperatorSubscriber(c,function(e){d[t]=e,!p&&!f[t]&&(f[t]=!0,(p=f.every(o.identity))&&(f=null))},s.noop))},h=0;h<u;h++)m(h);r.subscribe(i.createOperatorSubscriber(c,function(e){if(p){var r=n([e],t(d));c.next(l?l.apply(void 0,n([],t(r))):r)}}))})}e.withLatestFrom=l})),CB=_((e=>{Object.defineProperty(e,"__esModule",{value:!0}),e.zipAll=void 0;var t=DR(),n=BR();function r(e){return n.joinAllInternals(t.zip,e)}e.zipAll=r})),wB=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.zip=void 0;var r=DR(),i=H();function a(){var e=[...arguments];return i.operate(function(i,a){r.zip.apply(void 0,n([i],t(e))).subscribe(a)})}e.zip=a})),TB=_((e=>{var t=e&&e.__read||function(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-->0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a},n=e&&e.__spreadArray||function(e,t){for(var n=0,r=t.length,i=e.length;n<r;n++,i++)e[i]=t[n];return e};Object.defineProperty(e,"__esModule",{value:!0}),e.zipWith=void 0;var r=wB();function i(){var e=[...arguments];return r.zip.apply(void 0,n([],t(e)))}e.zipWith=i})),EB=_((e=>{var t=e&&e.__createBinding||(Object.create?(function(e,t,n,r){r===void 0&&(r=n),Object.defineProperty(e,r,{enumerable:!0,get:function(){return t[n]}})}):(function(e,t,n,r){r===void 0&&(r=n),e[r]=t[n]})),n=e&&e.__exportStar||function(e,n){for(var r in e)r!=="default"&&!Object.prototype.hasOwnProperty.call(n,r)&&t(n,e,r)};Object.defineProperty(e,"__esModule",{value:!0}),e.interval=e.iif=e.generate=e.fromEventPattern=e.fromEvent=e.from=e.forkJoin=e.empty=e.defer=e.connectable=e.concat=e.combineLatest=e.bindNodeCallback=e.bindCallback=e.UnsubscriptionError=e.TimeoutError=e.SequenceError=e.ObjectUnsubscribedError=e.NotFoundError=e.EmptyError=e.ArgumentOutOfRangeError=e.firstValueFrom=e.lastValueFrom=e.isObservable=e.identity=e.noop=e.pipe=e.NotificationKind=e.Notification=e.Subscriber=e.Subscription=e.Scheduler=e.VirtualAction=e.VirtualTimeScheduler=e.animationFrameScheduler=e.animationFrame=e.queueScheduler=e.queue=e.asyncScheduler=e.async=e.asapScheduler=e.asap=e.AsyncSubject=e.ReplaySubject=e.BehaviorSubject=e.Subject=e.animationFrames=e.observable=e.ConnectableObservable=e.Observable=void 0,e.filter=e.expand=e.exhaustMap=e.exhaustAll=e.exhaust=e.every=e.endWith=e.elementAt=e.distinctUntilKeyChanged=e.distinctUntilChanged=e.distinct=e.dematerialize=e.delayWhen=e.delay=e.defaultIfEmpty=e.debounceTime=e.debounce=e.count=e.connect=e.concatWith=e.concatMapTo=e.concatMap=e.concatAll=e.combineLatestWith=e.combineLatestAll=e.combineAll=e.catchError=e.bufferWhen=e.bufferToggle=e.bufferTime=e.bufferCount=e.buffer=e.auditTime=e.audit=e.config=e.NEVER=e.EMPTY=e.scheduled=e.zip=e.using=e.timer=e.throwError=e.range=e.race=e.partition=e.pairs=e.onErrorResumeNext=e.of=e.never=e.merge=void 0,e.switchMap=e.switchAll=e.subscribeOn=e.startWith=e.skipWhile=e.skipUntil=e.skipLast=e.skip=e.single=e.shareReplay=e.share=e.sequenceEqual=e.scan=e.sampleTime=e.sample=e.refCount=e.retryWhen=e.retry=e.repeatWhen=e.repeat=e.reduce=e.raceWith=e.publishReplay=e.publishLast=e.publishBehavior=e.publish=e.pluck=e.pairwise=e.onErrorResumeNextWith=e.observeOn=e.multicast=e.min=e.mergeWith=e.mergeScan=e.mergeMapTo=e.mergeMap=e.flatMap=e.mergeAll=e.max=e.materialize=e.mapTo=e.map=e.last=e.isEmpty=e.ignoreElements=e.groupBy=e.first=e.findIndex=e.find=e.finalize=void 0,e.zipWith=e.zipAll=e.withLatestFrom=e.windowWhen=e.windowToggle=e.windowTime=e.windowCount=e.window=e.toArray=e.timestamp=e.timeoutWith=e.timeout=e.timeInterval=e.throwIfEmpty=e.throttleTime=e.throttle=e.tap=e.takeWhile=e.takeUntil=e.takeLast=e.take=e.switchScan=e.switchMapTo=void 0;var r=LI();Object.defineProperty(e,"Observable",{enumerable:!0,get:function(){return r.Observable}});var i=zI();Object.defineProperty(e,"ConnectableObservable",{enumerable:!0,get:function(){return i.ConnectableObservable}});var a=PI();Object.defineProperty(e,"observable",{enumerable:!0,get:function(){return a.observable}});var o=HI();Object.defineProperty(e,"animationFrames",{enumerable:!0,get:function(){return o.animationFrames}});var s=WI();Object.defineProperty(e,"Subject",{enumerable:!0,get:function(){return s.Subject}});var c=GI();Object.defineProperty(e,"BehaviorSubject",{enumerable:!0,get:function(){return c.BehaviorSubject}});var l=qI();Object.defineProperty(e,"ReplaySubject",{enumerable:!0,get:function(){return l.ReplaySubject}});var u=JI();Object.defineProperty(e,"AsyncSubject",{enumerable:!0,get:function(){return u.AsyncSubject}});var d=iL();Object.defineProperty(e,"asap",{enumerable:!0,get:function(){return d.asap}}),Object.defineProperty(e,"asapScheduler",{enumerable:!0,get:function(){return d.asapScheduler}});var f=aL();Object.defineProperty(e,"async",{enumerable:!0,get:function(){return f.async}}),Object.defineProperty(e,"asyncScheduler",{enumerable:!0,get:function(){return f.asyncScheduler}});var p=cL();Object.defineProperty(e,"queue",{enumerable:!0,get:function(){return p.queue}}),Object.defineProperty(e,"queueScheduler",{enumerable:!0,get:function(){return p.queueScheduler}});var m=dL();Object.defineProperty(e,"animationFrame",{enumerable:!0,get:function(){return m.animationFrame}}),Object.defineProperty(e,"animationFrameScheduler",{enumerable:!0,get:function(){return m.animationFrameScheduler}});var h=fL();Object.defineProperty(e,"VirtualTimeScheduler",{enumerable:!0,get:function(){return h.VirtualTimeScheduler}}),Object.defineProperty(e,"VirtualAction",{enumerable:!0,get:function(){return h.VirtualAction}});var g=tL();Object.defineProperty(e,"Scheduler",{enumerable:!0,get:function(){return g.Scheduler}});var _=EI();Object.defineProperty(e,"Subscription",{enumerable:!0,get:function(){return _.Subscription}});var v=NI();Object.defineProperty(e,"Subscriber",{enumerable:!0,get:function(){return v.Subscriber}});var y=RL();Object.defineProperty(e,"Notification",{enumerable:!0,get:function(){return y.Notification}}),Object.defineProperty(e,"NotificationKind",{enumerable:!0,get:function(){return y.NotificationKind}});var b=II();Object.defineProperty(e,"pipe",{enumerable:!0,get:function(){return b.pipe}});var ee=AI();Object.defineProperty(e,"noop",{enumerable:!0,get:function(){return ee.noop}});var te=FI();Object.defineProperty(e,"identity",{enumerable:!0,get:function(){return te.identity}});var x=zL();Object.defineProperty(e,"isObservable",{enumerable:!0,get:function(){return x.isObservable}});var S=VL();Object.defineProperty(e,"lastValueFrom",{enumerable:!0,get:function(){return S.lastValueFrom}});var ne=HL();Object.defineProperty(e,"firstValueFrom",{enumerable:!0,get:function(){return ne.firstValueFrom}});var re=UL();Object.defineProperty(e,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return re.ArgumentOutOfRangeError}});var ie=BL();Object.defineProperty(e,"EmptyError",{enumerable:!0,get:function(){return ie.EmptyError}});var ae=WL();Object.defineProperty(e,"NotFoundError",{enumerable:!0,get:function(){return ae.NotFoundError}});var oe=UI();Object.defineProperty(e,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return oe.ObjectUnsubscribedError}});var se=GL();Object.defineProperty(e,"SequenceError",{enumerable:!0,get:function(){return se.SequenceError}});var ce=qL();Object.defineProperty(e,"TimeoutError",{enumerable:!0,get:function(){return ce.TimeoutError}});var le=wI();Object.defineProperty(e,"UnsubscriptionError",{enumerable:!0,get:function(){return le.UnsubscriptionError}});var ue=ZL();Object.defineProperty(e,"bindCallback",{enumerable:!0,get:function(){return ue.bindCallback}});var de=QL();Object.defineProperty(e,"bindNodeCallback",{enumerable:!0,get:function(){return de.bindNodeCallback}});var fe=tR();Object.defineProperty(e,"combineLatest",{enumerable:!0,get:function(){return fe.combineLatest}});var pe=oR();Object.defineProperty(e,"concat",{enumerable:!0,get:function(){return pe.concat}});var me=cR();Object.defineProperty(e,"connectable",{enumerable:!0,get:function(){return me.connectable}});var he=sR();Object.defineProperty(e,"defer",{enumerable:!0,get:function(){return he.defer}});var ge=pL();Object.defineProperty(e,"empty",{enumerable:!0,get:function(){return ge.empty}});var _e=lR();Object.defineProperty(e,"forkJoin",{enumerable:!0,get:function(){return _e.forkJoin}});var ve=FL();Object.defineProperty(e,"from",{enumerable:!0,get:function(){return ve.from}});var ye=uR();Object.defineProperty(e,"fromEvent",{enumerable:!0,get:function(){return ye.fromEvent}});var be=dR();Object.defineProperty(e,"fromEventPattern",{enumerable:!0,get:function(){return be.fromEventPattern}});var xe=fR();Object.defineProperty(e,"generate",{enumerable:!0,get:function(){return xe.generate}});var Se=pR();Object.defineProperty(e,"iif",{enumerable:!0,get:function(){return Se.iif}});var Ce=hR();Object.defineProperty(e,"interval",{enumerable:!0,get:function(){return Ce.interval}});var we=gR();Object.defineProperty(e,"merge",{enumerable:!0,get:function(){return we.merge}});var Te=_R();Object.defineProperty(e,"never",{enumerable:!0,get:function(){return Te.never}});var Ee=IL();Object.defineProperty(e,"of",{enumerable:!0,get:function(){return Ee.of}});var De=yR();Object.defineProperty(e,"onErrorResumeNext",{enumerable:!0,get:function(){return De.onErrorResumeNext}});var Oe=bR();Object.defineProperty(e,"pairs",{enumerable:!0,get:function(){return Oe.pairs}});var ke=CR();Object.defineProperty(e,"partition",{enumerable:!0,get:function(){return ke.partition}});var C=wR();Object.defineProperty(e,"race",{enumerable:!0,get:function(){return C.race}});var Ae=TR();Object.defineProperty(e,"range",{enumerable:!0,get:function(){return Ae.range}});var je=LL();Object.defineProperty(e,"throwError",{enumerable:!0,get:function(){return je.throwError}});var Me=mR();Object.defineProperty(e,"timer",{enumerable:!0,get:function(){return Me.timer}});var Ne=ER();Object.defineProperty(e,"using",{enumerable:!0,get:function(){return Ne.using}});var Pe=DR();Object.defineProperty(e,"zip",{enumerable:!0,get:function(){return Pe.zip}});var Fe=PL();Object.defineProperty(e,"scheduled",{enumerable:!0,get:function(){return Fe.scheduled}});var Ie=pL();Object.defineProperty(e,"EMPTY",{enumerable:!0,get:function(){return Ie.EMPTY}});var Le=_R();Object.defineProperty(e,"NEVER",{enumerable:!0,get:function(){return Le.NEVER}}),n(OR(),e);var Re=DI();Object.defineProperty(e,"config",{enumerable:!0,get:function(){return Re.config}});var ze=kR();Object.defineProperty(e,"audit",{enumerable:!0,get:function(){return ze.audit}});var Be=AR();Object.defineProperty(e,"auditTime",{enumerable:!0,get:function(){return Be.auditTime}});var Ve=jR();Object.defineProperty(e,"buffer",{enumerable:!0,get:function(){return Ve.buffer}});var He=MR();Object.defineProperty(e,"bufferCount",{enumerable:!0,get:function(){return He.bufferCount}});var Ue=NR();Object.defineProperty(e,"bufferTime",{enumerable:!0,get:function(){return Ue.bufferTime}});var We=PR();Object.defineProperty(e,"bufferToggle",{enumerable:!0,get:function(){return We.bufferToggle}});var Ge=FR();Object.defineProperty(e,"bufferWhen",{enumerable:!0,get:function(){return Ge.bufferWhen}});var Ke=IR();Object.defineProperty(e,"catchError",{enumerable:!0,get:function(){return Ke.catchError}});var qe=HR();Object.defineProperty(e,"combineAll",{enumerable:!0,get:function(){return qe.combineAll}});var Je=VR();Object.defineProperty(e,"combineLatestAll",{enumerable:!0,get:function(){return Je.combineLatestAll}});var Ye=WR();Object.defineProperty(e,"combineLatestWith",{enumerable:!0,get:function(){return Ye.combineLatestWith}});var Xe=aR();Object.defineProperty(e,"concatAll",{enumerable:!0,get:function(){return Xe.concatAll}});var Ze=GR();Object.defineProperty(e,"concatMap",{enumerable:!0,get:function(){return Ze.concatMap}});var Qe=KR();Object.defineProperty(e,"concatMapTo",{enumerable:!0,get:function(){return Qe.concatMapTo}});var $e=JR();Object.defineProperty(e,"concatWith",{enumerable:!0,get:function(){return $e.concatWith}});var et=XR();Object.defineProperty(e,"connect",{enumerable:!0,get:function(){return et.connect}});var tt=ZR();Object.defineProperty(e,"count",{enumerable:!0,get:function(){return tt.count}});var nt=QR();Object.defineProperty(e,"debounce",{enumerable:!0,get:function(){return nt.debounce}});var rt=$R();Object.defineProperty(e,"debounceTime",{enumerable:!0,get:function(){return rt.debounceTime}});var it=ez();Object.defineProperty(e,"defaultIfEmpty",{enumerable:!0,get:function(){return it.defaultIfEmpty}});var at=az();Object.defineProperty(e,"delay",{enumerable:!0,get:function(){return at.delay}});var ot=iz();Object.defineProperty(e,"delayWhen",{enumerable:!0,get:function(){return ot.delayWhen}});var st=oz();Object.defineProperty(e,"dematerialize",{enumerable:!0,get:function(){return st.dematerialize}});var ct=sz();Object.defineProperty(e,"distinct",{enumerable:!0,get:function(){return ct.distinct}});var lt=cz();Object.defineProperty(e,"distinctUntilChanged",{enumerable:!0,get:function(){return lt.distinctUntilChanged}});var ut=lz();Object.defineProperty(e,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return ut.distinctUntilKeyChanged}});var dt=dz();Object.defineProperty(e,"elementAt",{enumerable:!0,get:function(){return dt.elementAt}});var ft=fz();Object.defineProperty(e,"endWith",{enumerable:!0,get:function(){return ft.endWith}});var pt=pz();Object.defineProperty(e,"every",{enumerable:!0,get:function(){return pt.every}});var mt=gz();Object.defineProperty(e,"exhaust",{enumerable:!0,get:function(){return mt.exhaust}});var ht=hz();Object.defineProperty(e,"exhaustAll",{enumerable:!0,get:function(){return ht.exhaustAll}});var gt=mz();Object.defineProperty(e,"exhaustMap",{enumerable:!0,get:function(){return gt.exhaustMap}});var _t=_z();Object.defineProperty(e,"expand",{enumerable:!0,get:function(){return _t.expand}});var vt=SR();Object.defineProperty(e,"filter",{enumerable:!0,get:function(){return vt.filter}});var yt=vz();Object.defineProperty(e,"finalize",{enumerable:!0,get:function(){return yt.finalize}});var bt=yz();Object.defineProperty(e,"find",{enumerable:!0,get:function(){return bt.find}});var xt=bz();Object.defineProperty(e,"findIndex",{enumerable:!0,get:function(){return xt.findIndex}});var St=xz();Object.defineProperty(e,"first",{enumerable:!0,get:function(){return St.first}});var Ct=Sz();Object.defineProperty(e,"groupBy",{enumerable:!0,get:function(){return Ct.groupBy}});var wt=nz();Object.defineProperty(e,"ignoreElements",{enumerable:!0,get:function(){return wt.ignoreElements}});var Tt=Cz();Object.defineProperty(e,"isEmpty",{enumerable:!0,get:function(){return Tt.isEmpty}});var Et=Tz();Object.defineProperty(e,"last",{enumerable:!0,get:function(){return Et.last}});var Dt=JL();Object.defineProperty(e,"map",{enumerable:!0,get:function(){return Dt.map}});var Ot=rz();Object.defineProperty(e,"mapTo",{enumerable:!0,get:function(){return Ot.mapTo}});var kt=Ez();Object.defineProperty(e,"materialize",{enumerable:!0,get:function(){return kt.materialize}});var At=Dz();Object.defineProperty(e,"max",{enumerable:!0,get:function(){return At.max}});var jt=iR();Object.defineProperty(e,"mergeAll",{enumerable:!0,get:function(){return jt.mergeAll}});var Mt=Oz();Object.defineProperty(e,"flatMap",{enumerable:!0,get:function(){return Mt.flatMap}});var Nt=rR();Object.defineProperty(e,"mergeMap",{enumerable:!0,get:function(){return Nt.mergeMap}});var Pt=kz();Object.defineProperty(e,"mergeMapTo",{enumerable:!0,get:function(){return Pt.mergeMapTo}});var Ft=Az();Object.defineProperty(e,"mergeScan",{enumerable:!0,get:function(){return Ft.mergeScan}});var It=Mz();Object.defineProperty(e,"mergeWith",{enumerable:!0,get:function(){return It.mergeWith}});var Lt=Nz();Object.defineProperty(e,"min",{enumerable:!0,get:function(){return Lt.min}});var Rt=Pz();Object.defineProperty(e,"multicast",{enumerable:!0,get:function(){return Rt.multicast}});var zt=EL();Object.defineProperty(e,"observeOn",{enumerable:!0,get:function(){return zt.observeOn}});var Bt=Fz();Object.defineProperty(e,"onErrorResumeNextWith",{enumerable:!0,get:function(){return Bt.onErrorResumeNextWith}});var Vt=Iz();Object.defineProperty(e,"pairwise",{enumerable:!0,get:function(){return Vt.pairwise}});var Ht=Lz();Object.defineProperty(e,"pluck",{enumerable:!0,get:function(){return Ht.pluck}});var Ut=Rz();Object.defineProperty(e,"publish",{enumerable:!0,get:function(){return Ut.publish}});var Wt=zz();Object.defineProperty(e,"publishBehavior",{enumerable:!0,get:function(){return Wt.publishBehavior}});var Gt=Bz();Object.defineProperty(e,"publishLast",{enumerable:!0,get:function(){return Gt.publishLast}});var Kt=Vz();Object.defineProperty(e,"publishReplay",{enumerable:!0,get:function(){return Kt.publishReplay}});var qt=Hz();Object.defineProperty(e,"raceWith",{enumerable:!0,get:function(){return qt.raceWith}});var Jt=RR();Object.defineProperty(e,"reduce",{enumerable:!0,get:function(){return Jt.reduce}});var Yt=Uz();Object.defineProperty(e,"repeat",{enumerable:!0,get:function(){return Yt.repeat}});var Xt=Wz();Object.defineProperty(e,"repeatWhen",{enumerable:!0,get:function(){return Xt.repeatWhen}});var Zt=Gz();Object.defineProperty(e,"retry",{enumerable:!0,get:function(){return Zt.retry}});var Qt=Kz();Object.defineProperty(e,"retryWhen",{enumerable:!0,get:function(){return Qt.retryWhen}});var $t=RI();Object.defineProperty(e,"refCount",{enumerable:!0,get:function(){return $t.refCount}});var en=qz();Object.defineProperty(e,"sample",{enumerable:!0,get:function(){return en.sample}});var tn=Jz();Object.defineProperty(e,"sampleTime",{enumerable:!0,get:function(){return tn.sampleTime}});var nn=Yz();Object.defineProperty(e,"scan",{enumerable:!0,get:function(){return nn.scan}});var rn=Xz();Object.defineProperty(e,"sequenceEqual",{enumerable:!0,get:function(){return rn.sequenceEqual}});var an=Zz();Object.defineProperty(e,"share",{enumerable:!0,get:function(){return an.share}});var on=Qz();Object.defineProperty(e,"shareReplay",{enumerable:!0,get:function(){return on.shareReplay}});var sn=$z();Object.defineProperty(e,"single",{enumerable:!0,get:function(){return sn.single}});var cn=eB();Object.defineProperty(e,"skip",{enumerable:!0,get:function(){return cn.skip}});var ln=tB();Object.defineProperty(e,"skipLast",{enumerable:!0,get:function(){return ln.skipLast}});var un=nB();Object.defineProperty(e,"skipUntil",{enumerable:!0,get:function(){return un.skipUntil}});var dn=rB();Object.defineProperty(e,"skipWhile",{enumerable:!0,get:function(){return dn.skipWhile}});var fn=iB();Object.defineProperty(e,"startWith",{enumerable:!0,get:function(){return fn.startWith}});var pn=DL();Object.defineProperty(e,"subscribeOn",{enumerable:!0,get:function(){return pn.subscribeOn}});var mn=oB();Object.defineProperty(e,"switchAll",{enumerable:!0,get:function(){return mn.switchAll}});var hn=aB();Object.defineProperty(e,"switchMap",{enumerable:!0,get:function(){return hn.switchMap}});var gn=sB();Object.defineProperty(e,"switchMapTo",{enumerable:!0,get:function(){return gn.switchMapTo}});var _n=cB();Object.defineProperty(e,"switchScan",{enumerable:!0,get:function(){return _n.switchScan}});var vn=tz();Object.defineProperty(e,"take",{enumerable:!0,get:function(){return vn.take}});var yn=wz();Object.defineProperty(e,"takeLast",{enumerable:!0,get:function(){return yn.takeLast}});var bn=lB();Object.defineProperty(e,"takeUntil",{enumerable:!0,get:function(){return bn.takeUntil}});var xn=uB();Object.defineProperty(e,"takeWhile",{enumerable:!0,get:function(){return xn.takeWhile}});var Sn=dB();Object.defineProperty(e,"tap",{enumerable:!0,get:function(){return Sn.tap}});var Cn=fB();Object.defineProperty(e,"throttle",{enumerable:!0,get:function(){return Cn.throttle}});var wn=pB();Object.defineProperty(e,"throttleTime",{enumerable:!0,get:function(){return wn.throttleTime}});var Tn=uz();Object.defineProperty(e,"throwIfEmpty",{enumerable:!0,get:function(){return Tn.throwIfEmpty}});var En=mB();Object.defineProperty(e,"timeInterval",{enumerable:!0,get:function(){return En.timeInterval}});var Dn=qL();Object.defineProperty(e,"timeout",{enumerable:!0,get:function(){return Dn.timeout}});var On=hB();Object.defineProperty(e,"timeoutWith",{enumerable:!0,get:function(){return On.timeoutWith}});var kn=gB();Object.defineProperty(e,"timestamp",{enumerable:!0,get:function(){return kn.timestamp}});var An=zR();Object.defineProperty(e,"toArray",{enumerable:!0,get:function(){return An.toArray}});var jn=_B();Object.defineProperty(e,"window",{enumerable:!0,get:function(){return jn.window}});var Mn=vB();Object.defineProperty(e,"windowCount",{enumerable:!0,get:function(){return Mn.windowCount}});var Nn=yB();Object.defineProperty(e,"windowTime",{enumerable:!0,get:function(){return Nn.windowTime}});var Pn=bB();Object.defineProperty(e,"windowToggle",{enumerable:!0,get:function(){return Pn.windowToggle}});var Fn=xB();Object.defineProperty(e,"windowWhen",{enumerable:!0,get:function(){return Fn.windowWhen}});var In=SB();Object.defineProperty(e,"withLatestFrom",{enumerable:!0,get:function(){return In.withLatestFrom}});var Ln=CB();Object.defineProperty(e,"zipAll",{enumerable:!0,get:function(){return Ln.zipAll}});var Rn=TB();Object.defineProperty(e,"zipWith",{enumerable:!0,get:function(){return Rn.zipWith}})})),DB=_(((e,t)=>{var n=function(e){return r(e)&&!i(e)};function r(e){return!!e&&typeof e==`object`}function i(e){var t=Object.prototype.toString.call(e);return t===`[object RegExp]`||t===`[object Date]`||o(e)}var a=typeof Symbol==`function`&&Symbol.for?Symbol.for(`react.element`):60103;function o(e){return e.$$typeof===a}function s(e){return Array.isArray(e)?[]:{}}function c(e,t){return t.clone!==!1&&t.isMergeableObject(e)?g(s(e),e,t):e}function l(e,t,n){return e.concat(t).map(function(e){return c(e,n)})}function u(e,t){if(!t.customMerge)return g;var n=t.customMerge(e);return typeof n==`function`?n:g}function d(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter(function(t){return Object.propertyIsEnumerable.call(e,t)}):[]}function f(e){return Object.keys(e).concat(d(e))}function p(e,t){try{return t in e}catch{return!1}}function m(e,t){return p(e,t)&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}function h(e,t,n){var r={};return n.isMergeableObject(e)&&f(e).forEach(function(t){r[t]=c(e[t],n)}),f(t).forEach(function(i){m(e,i)||(r[i]=p(e,i)&&n.isMergeableObject(t[i])?u(i,n)(e[i],t[i],n):c(t[i],n))}),r}function g(e,t,r){r||={},r.arrayMerge=r.arrayMerge||l,r.isMergeableObject=r.isMergeableObject||n,r.cloneUnlessOtherwiseSpecified=c;var i=Array.isArray(t);return i===Array.isArray(e)?i?r.arrayMerge(e,t,r):h(e,t,r):c(t,r)}g.all=function(e,t){if(!Array.isArray(e))throw Error(`first argument should be an array`);return e.reduce(function(e,n){return g(e,n,t)},{})},t.exports=g}));function OB(e,t){return e?.__kind===t}var kB=OB;function AB(e){return typeof e==`object`&&!!e}function jB(e,t){if(!e)throw Error(t??`Unexpected invariant triggered.`)}var MB=/\r\n|[\n\r]/g;function NB(e,t){let n=0,r=1;for(let i of e.body.matchAll(MB)){if(typeof i.index!=`number`&&jB(!1),i.index>=t)break;n=i.index+i[0].length,r+=1}return{line:r,column:t+1-n}}function PB(e){return FB(e.source,NB(e.source,e.start))}function FB(e,t){let n=e.locationOffset.column-1,r=``.padStart(n)+e.body,i=t.line-1,a=e.locationOffset.line-1,o=t.line+a,s=t.line===1?n:0,c=t.column+s,l=`${e.name}:${o}:${c}\n`,u=r.split(/\r\n|[\n\r]/g),d=u[i];if(d.length>120){let e=Math.floor(c/80),t=c%80,n=[];for(let e=0;e<d.length;e+=80)n.push(d.slice(e,e+80));return l+IB([[`${o} |`,n[0]],...n.slice(1,e+1).map(e=>[`|`,e]),[`|`,`^`.padStart(t)],[`|`,n[e+1]]])}return l+IB([[`${o-1} |`,u[i-1]],[`${o} |`,d],[`|`,`^`.padStart(c)],[`${o+1} |`,u[i+1]]])}function IB(e){let t=e.filter(([e,t])=>t!==void 0),n=Math.max(...t.map(([e])=>e.length));return t.map(([e,t])=>e.padStart(n)+(t?` `+t:``)).join(`
25
+ `)}var LB=class e extends Error{constructor(t,n={}){let{nodes:r,source:i,positions:a,path:o,originalError:s,cause:c,extensions:l}=n,u=`cause`in n;super(t,u||s!=null?{cause:u?c:s}:void 0),this.name=`GraphQLError`,this.path=o??void 0;let d=s??(c instanceof Error?c:void 0);this.originalError=d,this.nodes=RB(Array.isArray(r)?r:r?[r]:void 0);let f=RB(this.nodes?.map(e=>e.loc).filter(e=>e!=null));this.source=i??f?.[0]?.source,this.positions=a??f?.map(e=>e.start),this.locations=a&&i?a.map(e=>NB(i,e)):f?.map(e=>NB(e.source,e.start));let p=AB(d?.extensions)?d.extensions:void 0;this.extensions=l??p??Object.create(null),Object.defineProperties(this,{message:{writable:!0,enumerable:!0},name:{enumerable:!1},nodes:{enumerable:!1},source:{enumerable:!1},positions:{enumerable:!1},originalError:{enumerable:!1}}),s?.stack==null?Error.captureStackTrace==null?Object.defineProperty(this,"stack",{value:Error().stack,writable:!0,configurable:!0}):Error.captureStackTrace(this,e):Object.defineProperty(this,"stack",{value:s.stack,writable:!0,configurable:!0})}get[Symbol.toStringTag](){return`GraphQLError`}toString(){let e=this.message;if(this.nodes)for(let t of this.nodes)t.loc&&(e+=`
26
+
27
+ `+PB(t.loc));else if(this.source&&this.locations)for(let t of this.locations)e+=`
28
+
29
+ `+FB(this.source,t);return e}toJSON(){let e={message:this.message};return this.locations!=null&&(e.locations=this.locations),this.path!=null&&(e.path=this.path),this.extensions!=null&&Object.keys(this.extensions).length>0&&(e.extensions=this.extensions),e}};function RB(e){return e===void 0||e.length===0?void 0:e}var zB=class{constructor(e,t,n){this.start=e.start,this.end=t.end,this.startToken=e,this.endToken=t,this.source=n}get[Symbol.toStringTag](){return`Location`}toJSON(){return{start:this.start,end:this.end}}},BB=class{constructor(e,t,n,r,i,a){this.kind=e,this.start=t,this.end=n,this.line=r,this.column=i,this.value=a,this.prev=null,this.next=null}get[Symbol.toStringTag](){return`Token`}toJSON(){return{kind:this.kind,value:this.value,line:this.line,column:this.column}}};new Set(Object.keys({Name:[],Document:[`definitions`],OperationDefinition:[`description`,`name`,`variableDefinitions`,`directives`,`selectionSet`],VariableDefinition:[`description`,`variable`,`type`,`defaultValue`,`directives`],Variable:[`name`],SelectionSet:[`selections`],Field:[`alias`,`name`,`arguments`,`directives`,`selectionSet`],Argument:[`name`,`value`],FragmentArgument:[`name`,`value`],FragmentSpread:[`name`,`arguments`,`directives`],InlineFragment:[`typeCondition`,`directives`,`selectionSet`],FragmentDefinition:[`description`,`name`,`variableDefinitions`,`typeCondition`,`directives`,`selectionSet`],IntValue:[],FloatValue:[],StringValue:[],BooleanValue:[],NullValue:[],EnumValue:[],ListValue:[`values`],ObjectValue:[`fields`],ObjectField:[`name`,`value`],Directive:[`name`,`arguments`],NamedType:[`name`],ListType:[`type`],NonNullType:[`type`],SchemaDefinition:[`description`,`directives`,`operationTypes`],OperationTypeDefinition:[`type`],ScalarTypeDefinition:[`description`,`name`,`directives`],ObjectTypeDefinition:[`description`,`name`,`interfaces`,`directives`,`fields`],FieldDefinition:[`description`,`name`,`arguments`,`type`,`directives`],InputValueDefinition:[`description`,`name`,`type`,`defaultValue`,`directives`],InterfaceTypeDefinition:[`description`,`name`,`interfaces`,`directives`,`fields`],UnionTypeDefinition:[`description`,`name`,`directives`,`types`],EnumTypeDefinition:[`description`,`name`,`directives`,`values`],EnumValueDefinition:[`description`,`name`,`directives`],InputObjectTypeDefinition:[`description`,`name`,`directives`,`fields`],DirectiveDefinition:[`description`,`name`,`arguments`,`directives`,`locations`],SchemaExtension:[`directives`,`operationTypes`],DirectiveExtension:[`name`,`directives`],ScalarTypeExtension:[`name`,`directives`],ObjectTypeExtension:[`name`,`interfaces`,`directives`,`fields`],InterfaceTypeExtension:[`name`,`interfaces`,`directives`,`fields`],UnionTypeExtension:[`name`,`directives`,`types`],EnumTypeExtension:[`name`,`directives`,`values`],InputObjectTypeExtension:[`name`,`directives`,`fields`],TypeCoordinate:[`name`],MemberCoordinate:[`name`,`memberName`],ArgumentCoordinate:[`name`,`fieldName`,`argumentName`],DirectiveCoordinate:[`name`],DirectiveArgumentCoordinate:[`name`,`argumentName`]}));var VB={QUERY:`query`,MUTATION:`mutation`,SUBSCRIPTION:`subscription`},HB=`Name`,UB=`Document`,WB=`OperationDefinition`,GB=`VariableDefinition`,KB=`SelectionSet`,qB=`Field`,JB=`Argument`,YB=`FragmentArgument`,XB=`FragmentSpread`,ZB=`InlineFragment`,QB=`FragmentDefinition`,$B=`Variable`,eV=`IntValue`,tV=`FloatValue`,nV=`StringValue`,rV=`BooleanValue`,iV=`NullValue`,aV=`EnumValue`,oV=`ListValue`,sV=`ObjectValue`,cV=`ObjectField`,lV=`Directive`,uV=`NamedType`,dV=`ListType`,fV=`NonNullType`,pV=`SchemaDefinition`,mV=`OperationTypeDefinition`,hV=`ScalarTypeDefinition`,gV=`ObjectTypeDefinition`,_V=`FieldDefinition`,vV=`InputValueDefinition`,yV=`InterfaceTypeDefinition`,bV=`UnionTypeDefinition`,xV=`EnumTypeDefinition`,SV=`EnumValueDefinition`,CV=`InputObjectTypeDefinition`,wV=`DirectiveDefinition`,TV=`SchemaExtension`,EV=`DirectiveExtension`,DV=`ScalarTypeExtension`,OV=`ObjectTypeExtension`,kV=`InterfaceTypeExtension`,AV=`UnionTypeExtension`,jV=`EnumTypeExtension`,MV=`InputObjectTypeExtension`,NV=`TypeCoordinate`,PV=`MemberCoordinate`,FV=`ArgumentCoordinate`,IV=`DirectiveCoordinate`,LV=`DirectiveArgumentCoordinate`;function RV(e,t){if(!e)throw Error(t)}function zV(e){return e===9||e===32}function BV(e){return e>=48&&e<=57}function VV(e){return e>=97&&e<=122||e>=65&&e<=90}function HV(e){return VV(e)||e===95}function UV(e){return VV(e)||BV(e)||e===95}function WV(e){let t=2**53-1,n=null,r=-1;for(let i=0;i<e.length;++i){let a=e[i],o=GV(a);o!==a.length&&(n??=i,r=i,i!==0&&o<t&&(t=o))}return e.map((e,n)=>n===0?e:e.slice(t)).slice(n??0,r+1)}function GV(e){let t=0;for(;t<e.length&&zV(e.charCodeAt(t));)++t;return t}var KV={QUERY:`QUERY`,MUTATION:`MUTATION`,SUBSCRIPTION:`SUBSCRIPTION`,FIELD:`FIELD`,FRAGMENT_DEFINITION:`FRAGMENT_DEFINITION`,FRAGMENT_SPREAD:`FRAGMENT_SPREAD`,INLINE_FRAGMENT:`INLINE_FRAGMENT`,VARIABLE_DEFINITION:`VARIABLE_DEFINITION`,FRAGMENT_VARIABLE_DEFINITION:`FRAGMENT_VARIABLE_DEFINITION`,SCHEMA:`SCHEMA`,SCALAR:`SCALAR`,OBJECT:`OBJECT`,FIELD_DEFINITION:`FIELD_DEFINITION`,ARGUMENT_DEFINITION:`ARGUMENT_DEFINITION`,INTERFACE:`INTERFACE`,UNION:`UNION`,ENUM:`ENUM`,ENUM_VALUE:`ENUM_VALUE`,INPUT_OBJECT:`INPUT_OBJECT`,INPUT_FIELD_DEFINITION:`INPUT_FIELD_DEFINITION`,DIRECTIVE_DEFINITION:`DIRECTIVE_DEFINITION`};function qV(e,t,n){return new LB(`Syntax Error: ${n}`,{source:e,positions:[t]})}function JV(){let e;try{let t=globalThis.process;typeof t?.getBuiltinModule==`function`&&(e=t.getBuiltinModule(`node:diagnostics_channel`))}catch{}return e}var YV=JV(),XV=YV?.tracingChannel(`graphql:parse`);YV?.tracingChannel(`graphql:validate`),YV?.tracingChannel(`graphql:execute`),YV?.tracingChannel(`graphql:execute:variableCoercion`),YV?.tracingChannel(`graphql:execute:rootSelectionSet`),YV?.tracingChannel(`graphql:subscribe`),YV?.tracingChannel(`graphql:resolve`);var ZV=[`start`,`end`,`asyncStart`,`asyncEnd`,`error`];function QV(e){if(e==null)return!1;let t=e.hasSubscribers;if(t!==void 0)return t;for(let t of ZV)if(e[t].hasSubscribers)return!0;return!1}var W={SOF:`<SOF>`,EOF:`<EOF>`,BANG:`!`,DOLLAR:`$`,AMP:`&`,PAREN_L:`(`,PAREN_R:`)`,DOT:`.`,SPREAD:`...`,COLON:`:`,EQUALS:`=`,AT:`@`,BRACKET_L:`[`,BRACKET_R:`]`,BRACE_L:`{`,PIPE:`|`,BRACE_R:`}`,NAME:`Name`,INT:`Int`,FLOAT:`Float`,STRING:`String`,BLOCK_STRING:`BlockString`,COMMENT:`Comment`},$V=class{constructor(e){let t=new BB(W.SOF,0,0,0,0);this.source=e,this.lastToken=t,this.token=t,this.line=1,this.lineStart=0}get[Symbol.toStringTag](){return`Lexer`}advance(){return this.lastToken=this.token,this.token=this.lookahead()}lookahead(){let e=this.token;if(e.kind!==W.EOF)do if(e.next)e=e.next;else{let t=sH(this,e.end);e.next=t,t.prev=e,e=t}while(e.kind===W.COMMENT);return e}};function eH(e){return e===W.BANG||e===W.DOLLAR||e===W.AMP||e===W.PAREN_L||e===W.PAREN_R||e===W.DOT||e===W.SPREAD||e===W.COLON||e===W.EQUALS||e===W.AT||e===W.BRACKET_L||e===W.BRACKET_R||e===W.BRACE_L||e===W.PIPE||e===W.BRACE_R}function tH(e){return e>=0&&e<=55295||e>=57344&&e<=1114111}function nH(e,t){return rH(e.charCodeAt(t))&&iH(e.charCodeAt(t+1))}function rH(e){return e>=55296&&e<=56319}function iH(e){return e>=56320&&e<=57343}function aH(e,t){let n=e.source.body.codePointAt(t);if(n===void 0)return W.EOF;if(n>=32&&n<=126){let e=String.fromCodePoint(n);return e===`"`?`'"'`:`"${e}"`}return`U+`+n.toString(16).toUpperCase().padStart(4,`0`)}function oH(e,t,n,r,i){let a=e.line;return new BB(t,n,r,a,1+n-e.lineStart,i)}function sH(e,t){let n=e.source.body,r=n.length,i=t;for(;i<r;){let t=n.charCodeAt(i);switch(t){case 65279:case 9:case 32:case 44:++i;continue;case 10:++i,++e.line,e.lineStart=i;continue;case 13:n.charCodeAt(i+1)===10?i+=2:++i,++e.line,e.lineStart=i;continue;case 35:return cH(e,i);case 33:return oH(e,W.BANG,i,i+1);case 36:return oH(e,W.DOLLAR,i,i+1);case 38:return oH(e,W.AMP,i,i+1);case 40:return oH(e,W.PAREN_L,i,i+1);case 41:return oH(e,W.PAREN_R,i,i+1);case 46:{let t=n.charCodeAt(i+1);if(t===46&&n.charCodeAt(i+2)===46)return oH(e,W.SPREAD,i,i+3);if(t===46)throw qV(e.source,i,`Unexpected "..", did you mean "..."?`);if(BV(t)){let n=e.source.body.slice(i+1,uH(e,i+1,t));throw qV(e.source,i,`Invalid number, expected digit before ".", did you mean "0.${n}"?`)}break}case 58:return oH(e,W.COLON,i,i+1);case 61:return oH(e,W.EQUALS,i,i+1);case 64:return oH(e,W.AT,i,i+1);case 91:return oH(e,W.BRACKET_L,i,i+1);case 93:return oH(e,W.BRACKET_R,i,i+1);case 123:return oH(e,W.BRACE_L,i,i+1);case 124:return oH(e,W.PIPE,i,i+1);case 125:return oH(e,W.BRACE_R,i,i+1);case 34:return n.charCodeAt(i+1)===34&&n.charCodeAt(i+2)===34?_H(e,i):dH(e,i)}if(BV(t)||t===45)return lH(e,i,t);if(HV(t))return vH(e,i);throw qV(e.source,i,t===39?`Unexpected single quote character ('), did you mean to use a double quote (")?`:tH(t)||nH(n,i)?`Unexpected character: ${aH(e,i)}.`:`Invalid character: ${aH(e,i)}.`)}return oH(e,W.EOF,r,r)}function cH(e,t){let n=e.source.body,r=n.length,i=t+1;for(;i<r;){let e=n.charCodeAt(i);if(e===10||e===13)break;if(tH(e))++i;else if(nH(n,i))i+=2;else break}return oH(e,W.COMMENT,t,i,n.slice(t+1,i))}function lH(e,t,n){let r=e.source.body,i=t,a=n,o=!1;if(a===45&&(a=r.charCodeAt(++i)),a===48){if(a=r.charCodeAt(++i),BV(a))throw qV(e.source,i,`Invalid number, unexpected digit after 0: ${aH(e,i)}.`)}else i=uH(e,i,a),a=r.charCodeAt(i);if(a===46&&(o=!0,a=r.charCodeAt(++i),i=uH(e,i,a),a=r.charCodeAt(i)),(a===69||a===101)&&(o=!0,a=r.charCodeAt(++i),(a===43||a===45)&&(a=r.charCodeAt(++i)),i=uH(e,i,a),a=r.charCodeAt(i)),a===46||HV(a))throw qV(e.source,i,`Invalid number, expected digit but got: ${aH(e,i)}.`);return oH(e,o?W.FLOAT:W.INT,t,i,r.slice(t,i))}function uH(e,t,n){if(!BV(n))throw qV(e.source,t,`Invalid number, expected digit but got: ${aH(e,t)}.`);let r=e.source.body,i=t+1;for(;BV(r.charCodeAt(i));)++i;return i}function dH(e,t){let n=e.source.body,r=n.length,i=t+1,a=i,o=``;for(;i<r;){let r=n.charCodeAt(i);if(r===34)return o+=n.slice(a,i),oH(e,W.STRING,t,i+1,o);if(r===92){o+=n.slice(a,i);let t=n.charCodeAt(i+1)===117?n.charCodeAt(i+2)===123?fH(e,i):pH(e,i):gH(e,i);o+=t.value,i+=t.size,a=i;continue}if(r===10||r===13)break;if(tH(r))++i;else if(nH(n,i))i+=2;else throw qV(e.source,i,`Invalid character within String: ${aH(e,i)}.`)}throw qV(e.source,i,`Unterminated string.`)}function fH(e,t){let n=e.source.body,r=0,i=3;for(;i<12;){let e=n.charCodeAt(t+i++);if(e===125){if(i<5||!tH(r))break;return{value:String.fromCodePoint(r),size:i}}if(r=r<<4|hH(e),r<0)break}throw qV(e.source,t,`Invalid Unicode escape sequence: "${n.slice(t,t+i)}".`)}function pH(e,t){let n=e.source.body,r=mH(n,t+2);if(tH(r))return{value:String.fromCodePoint(r),size:6};if(rH(r)&&n.charCodeAt(t+6)===92&&n.charCodeAt(t+7)===117){let e=mH(n,t+8);if(iH(e))return{value:String.fromCodePoint(r,e),size:12}}throw qV(e.source,t,`Invalid Unicode escape sequence: "${n.slice(t,t+6)}".`)}function mH(e,t){return hH(e.charCodeAt(t))<<12|hH(e.charCodeAt(t+1))<<8|hH(e.charCodeAt(t+2))<<4|hH(e.charCodeAt(t+3))}function hH(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:-1}function gH(e,t){let n=e.source.body;switch(n.charCodeAt(t+1)){case 34:return{value:`"`,size:2};case 92:return{value:`\\`,size:2};case 47:return{value:`/`,size:2};case 98:return{value:`\b`,size:2};case 102:return{value:`\f`,size:2};case 110:return{value:`
30
+ `,size:2};case 114:return{value:`\r`,size:2};case 116:return{value:` `,size:2}}throw qV(e.source,t,`Invalid character escape sequence: "${n.slice(t,t+2)}".`)}function _H(e,t){let n=e.source.body,r=n.length,i=e.lineStart,a=t+3,o=a,s=``,c=[];for(;a<r;){let r=n.charCodeAt(a);if(r===34&&n.charCodeAt(a+1)===34&&n.charCodeAt(a+2)===34){s+=n.slice(o,a),c.push(s);let r=oH(e,W.BLOCK_STRING,t,a+3,WV(c).join(`
31
+ `));return e.line+=c.length-1,e.lineStart=i,r}if(r===92&&n.charCodeAt(a+1)===34&&n.charCodeAt(a+2)===34&&n.charCodeAt(a+3)===34){s+=n.slice(o,a),o=a+1,a+=4;continue}if(r===10||r===13){s+=n.slice(o,a),c.push(s),r===13&&n.charCodeAt(a+1)===10?a+=2:++a,s=``,o=a,i=a;continue}if(tH(r))++a;else if(nH(n,a))a+=2;else throw qV(e.source,a,`Invalid character within String: ${aH(e,a)}.`)}throw qV(e.source,a,`Unterminated string.`)}function vH(e,t){let n=e.source.body,r=n.length,i=t+1;for(;i<r&&UV(n.charCodeAt(i));)++i;return oH(e,W.NAME,t,i,n.slice(t,i))}var yH=Symbol(`Source`),bH=class{constructor(e,t=`GraphQL request`,n={line:1,column:1}){this.__kind=yH,this.body=e,this.name=t,this.locationOffset=n,this.locationOffset.line>0||RV(!1,`line in locationOffset is 1-indexed and must be positive.`),this.locationOffset.column>0||RV(!1,`column in locationOffset is 1-indexed and must be positive.`)}get[Symbol.toStringTag](){return`Source`}};function xH(e){return kB(e,yH,bH)}function SH(e,t){return QV(XV)?XV.traceSync(()=>CH(e,t),{source:e}):CH(e,t)}function CH(e,t){let n=new wH(e,t),r=n.parseDocument();return Object.defineProperty(r,"tokenCount",{enumerable:!1,value:n.tokenCount}),r}var wH=class{constructor(e,t={}){let{lexer:n,...r}=t;if(n)this._lexer=n;else{let t=xH(e)?e:new bH(e);this._lexer=new $V(t)}this._options=r,this._tokenCounter=0}get tokenCount(){return this._tokenCounter}parseName(){let e=this.expectToken(W.NAME);return this.node(e,{kind:HB,value:e.value})}parseDocument(){return this.node(this._lexer.token,{kind:UB,definitions:this.many(W.SOF,this.parseDefinition,W.EOF)})}parseDefinition(){if(this.peek(W.BRACE_L))return this.parseOperationDefinition();let e=this.peekDescription(),t=e?this._lexer.lookahead():this._lexer.token;if(e&&t.kind===W.BRACE_L)throw qV(this._lexer.source,this._lexer.token.start,`Unexpected description, descriptions are not supported on shorthand queries.`);if(t.kind===W.NAME){switch(t.value){case`schema`:return this.parseSchemaDefinition();case`scalar`:return this.parseScalarTypeDefinition();case`type`:return this.parseObjectTypeDefinition();case`interface`:return this.parseInterfaceTypeDefinition();case`union`:return this.parseUnionTypeDefinition();case`enum`:return this.parseEnumTypeDefinition();case`input`:return this.parseInputObjectTypeDefinition();case`directive`:return this.parseDirectiveDefinition()}switch(t.value){case`query`:case`mutation`:case`subscription`:return this.parseOperationDefinition();case`fragment`:return this.parseFragmentDefinition()}if(e)throw qV(this._lexer.source,this._lexer.token.start,`Unexpected description, only GraphQL definitions support descriptions.`);if(t.value===`extend`)return this.parseTypeSystemExtension()}throw this.unexpected(t)}parseOperationDefinition(){let e=this._lexer.token;if(this.peek(W.BRACE_L))return this.node(e,{kind:WB,operation:VB.QUERY,description:void 0,name:void 0,variableDefinitions:void 0,directives:void 0,selectionSet:this.parseSelectionSet()});let t=this.parseDescription(),n=this.parseOperationType(),r;return this.peek(W.NAME)&&(r=this.parseName()),this.node(e,{kind:WB,operation:n,description:t,name:r,variableDefinitions:this.parseVariableDefinitions(),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseOperationType(){let e=this.expectToken(W.NAME);switch(e.value){case`query`:return VB.QUERY;case`mutation`:return VB.MUTATION;case`subscription`:return VB.SUBSCRIPTION}throw this.unexpected(e)}parseVariableDefinitions(){return this.optionalMany(W.PAREN_L,this.parseVariableDefinition,W.PAREN_R)}parseVariableDefinition(){return this.node(this._lexer.token,{kind:GB,description:this.parseDescription(),variable:this.parseVariable(),type:(this.expectToken(W.COLON),this.parseTypeReference()),defaultValue:this.expectOptionalToken(W.EQUALS)?this.parseConstValueLiteral():void 0,directives:this.parseConstDirectives()})}parseVariable(){let e=this._lexer.token;return this.expectToken(W.DOLLAR),this.node(e,{kind:$B,name:this.parseName()})}parseSelectionSet(){return this.node(this._lexer.token,{kind:KB,selections:this.many(W.BRACE_L,this.parseSelection,W.BRACE_R)})}parseSelection(){return this.peek(W.SPREAD)?this.parseFragment():this.parseField()}parseField(){let e=this._lexer.token,t=this.parseName(),n,r;return this.expectOptionalToken(W.COLON)?(n=t,r=this.parseName()):r=t,this.node(e,{kind:qB,alias:n,name:r,arguments:this.parseArguments(!1),directives:this.parseDirectives(!1),selectionSet:this.peek(W.BRACE_L)?this.parseSelectionSet():void 0})}parseArguments(e){let t=e?this.parseConstArgument:this.parseArgument;return this.optionalMany(W.PAREN_L,t,W.PAREN_R)}parseFragmentArguments(){let e=this.parseFragmentArgument;return this.optionalMany(W.PAREN_L,e,W.PAREN_R)}parseArgument(e=!1){let t=this._lexer.token,n=this.parseName();return this.expectToken(W.COLON),this.node(t,{kind:JB,name:n,value:this.parseValueLiteral(e)})}parseConstArgument(){return this.parseArgument(!0)}parseFragmentArgument(){let e=this._lexer.token,t=this.parseName();return this.expectToken(W.COLON),this.node(e,{kind:YB,name:t,value:this.parseValueLiteral(!1)})}parseFragment(){let e=this._lexer.token;this.expectToken(W.SPREAD);let t=this.expectOptionalKeyword(`on`);if(!t&&this.peek(W.NAME)){let t=this.parseFragmentName();return this.peek(W.PAREN_L)&&this._options.experimentalFragmentArguments?this.node(e,{kind:XB,name:t,arguments:this.parseFragmentArguments(),directives:this.parseDirectives(!1)}):this.node(e,{kind:XB,name:t,directives:this.parseDirectives(!1)})}return this.node(e,{kind:ZB,typeCondition:t?this.parseNamedType():void 0,directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentDefinition(){let e=this._lexer.token,t=this.parseDescription();return this.expectKeyword(`fragment`),this._options.experimentalFragmentArguments===!0?this.node(e,{kind:QB,description:t,name:this.parseFragmentName(),variableDefinitions:this.parseVariableDefinitions(),typeCondition:(this.expectKeyword(`on`),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()}):this.node(e,{kind:QB,description:t,name:this.parseFragmentName(),typeCondition:(this.expectKeyword(`on`),this.parseNamedType()),directives:this.parseDirectives(!1),selectionSet:this.parseSelectionSet()})}parseFragmentName(){if(this._lexer.token.value===`on`)throw this.unexpected();return this.parseName()}parseValueLiteral(e){let t=this._lexer.token;switch(t.kind){case W.BRACKET_L:return this.parseList(e);case W.BRACE_L:return this.parseObject(e);case W.INT:return this.advanceLexer(),this.node(t,{kind:eV,value:t.value});case W.FLOAT:return this.advanceLexer(),this.node(t,{kind:tV,value:t.value});case W.STRING:case W.BLOCK_STRING:return this.parseStringLiteral();case W.NAME:switch(this.advanceLexer(),t.value){case`true`:return this.node(t,{kind:rV,value:!0});case`false`:return this.node(t,{kind:rV,value:!1});case`null`:return this.node(t,{kind:iV});default:return this.node(t,{kind:aV,value:t.value})}case W.DOLLAR:if(e){if(this.expectToken(W.DOLLAR),this._lexer.token.kind===W.NAME){let e=this._lexer.token.value;throw qV(this._lexer.source,t.start,`Unexpected variable "$${e}" in constant value.`)}throw this.unexpected(t)}return this.parseVariable();default:throw this.unexpected()}}parseConstValueLiteral(){return this.parseValueLiteral(!0)}parseStringLiteral(){let e=this._lexer.token;return this.advanceLexer(),this.node(e,{kind:nV,value:e.value,block:e.kind===W.BLOCK_STRING})}parseList(e){return this.node(this._lexer.token,{kind:oV,values:this.any(W.BRACKET_L,()=>this.parseValueLiteral(e),W.BRACKET_R)})}parseObject(e){return this.node(this._lexer.token,{kind:sV,fields:this.any(W.BRACE_L,()=>this.parseObjectField(e),W.BRACE_R)})}parseObjectField(e){let t=this._lexer.token,n=this.parseName();return this.expectToken(W.COLON),this.node(t,{kind:cV,name:n,value:this.parseValueLiteral(e)})}parseDirectives(e){let t=[];for(;this.peek(W.AT);)t.push(this.parseDirective(e));if(t.length)return t}parseConstDirectives(){return this.parseDirectives(!0)}parseDirective(e){let t=this._lexer.token;return this.expectToken(W.AT),this.node(t,{kind:lV,name:this.parseName(),arguments:this.parseArguments(e)})}parseTypeReference(){let e=this._lexer.token,t;if(this.expectOptionalToken(W.BRACKET_L)){let n=this.parseTypeReference();this.expectToken(W.BRACKET_R),t=this.node(e,{kind:dV,type:n})}else t=this.parseNamedType();return this.expectOptionalToken(W.BANG)?this.node(e,{kind:fV,type:t}):t}parseNamedType(){return this.node(this._lexer.token,{kind:uV,name:this.parseName()})}peekDescription(){return this.peek(W.STRING)||this.peek(W.BLOCK_STRING)}parseDescription(){if(this.peekDescription())return this.parseStringLiteral()}parseSchemaDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`schema`);let n=this.parseConstDirectives(),r=this.many(W.BRACE_L,this.parseOperationTypeDefinition,W.BRACE_R);return this.node(e,{kind:pV,description:t,directives:n,operationTypes:r})}parseOperationTypeDefinition(){let e=this._lexer.token,t=this.parseOperationType();this.expectToken(W.COLON);let n=this.parseNamedType();return this.node(e,{kind:mV,operation:t,type:n})}parseScalarTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`scalar`);let n=this.parseName(),r=this.parseConstDirectives();return this.node(e,{kind:hV,description:t,name:n,directives:r})}parseObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`type`);let n=this.parseName(),r=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),a=this.parseFieldsDefinition();return this.node(e,{kind:gV,description:t,name:n,interfaces:r,directives:i,fields:a})}parseImplementsInterfaces(){return this.expectOptionalKeyword(`implements`)?this.delimitedMany(W.AMP,this.parseNamedType):void 0}parseFieldsDefinition(){return this.optionalMany(W.BRACE_L,this.parseFieldDefinition,W.BRACE_R)}parseFieldDefinition(){let e=this._lexer.token,t=this.parseDescription(),n=this.parseName(),r=this.parseArgumentDefs();this.expectToken(W.COLON);let i=this.parseTypeReference(),a=this.parseConstDirectives();return this.node(e,{kind:_V,description:t,name:n,arguments:r,type:i,directives:a})}parseArgumentDefs(){return this.optionalMany(W.PAREN_L,this.parseInputValueDef,W.PAREN_R)}parseInputValueDef(){let e=this._lexer.token,t=this.parseDescription(),n=this.parseName();this.expectToken(W.COLON);let r=this.parseTypeReference(),i;this.expectOptionalToken(W.EQUALS)&&(i=this.parseConstValueLiteral());let a=this.parseConstDirectives();return this.node(e,{kind:vV,description:t,name:n,type:r,defaultValue:i,directives:a})}parseInterfaceTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`interface`);let n=this.parseName(),r=this.parseImplementsInterfaces(),i=this.parseConstDirectives(),a=this.parseFieldsDefinition();return this.node(e,{kind:yV,description:t,name:n,interfaces:r,directives:i,fields:a})}parseUnionTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`union`);let n=this.parseName(),r=this.parseConstDirectives(),i=this.parseUnionMemberTypes();return this.node(e,{kind:bV,description:t,name:n,directives:r,types:i})}parseUnionMemberTypes(){return this.expectOptionalToken(W.EQUALS)?this.delimitedMany(W.PIPE,this.parseNamedType):void 0}parseEnumTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`enum`);let n=this.parseName(),r=this.parseConstDirectives(),i=this.parseEnumValuesDefinition();return this.node(e,{kind:xV,description:t,name:n,directives:r,values:i})}parseEnumValuesDefinition(){return this.optionalMany(W.BRACE_L,this.parseEnumValueDefinition,W.BRACE_R)}parseEnumValueDefinition(){let e=this._lexer.token,t=this.parseDescription(),n=this.parseEnumValueName(),r=this.parseConstDirectives();return this.node(e,{kind:SV,description:t,name:n,directives:r})}parseEnumValueName(){if(this._lexer.token.value===`true`||this._lexer.token.value===`false`||this._lexer.token.value===`null`)throw qV(this._lexer.source,this._lexer.token.start,`${TH(this._lexer.token)} is reserved and cannot be used for an enum value.`);return this.parseName()}parseInputObjectTypeDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`input`);let n=this.parseName(),r=this.parseConstDirectives(),i=this.parseInputFieldsDefinition();return this.node(e,{kind:CV,description:t,name:n,directives:r,fields:i})}parseInputFieldsDefinition(){return this.optionalMany(W.BRACE_L,this.parseInputValueDef,W.BRACE_R)}parseTypeSystemExtension(){let e=this._lexer.lookahead();if(e.kind===W.NAME)switch(e.value){case`schema`:return this.parseSchemaExtension();case`scalar`:return this.parseScalarTypeExtension();case`type`:return this.parseObjectTypeExtension();case`interface`:return this.parseInterfaceTypeExtension();case`union`:return this.parseUnionTypeExtension();case`enum`:return this.parseEnumTypeExtension();case`input`:return this.parseInputObjectTypeExtension();case`directive`:return this.parseDirectiveExtension()}throw this.unexpected(e)}parseSchemaExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`schema`);let t=this.parseConstDirectives(),n=this.optionalMany(W.BRACE_L,this.parseOperationTypeDefinition,W.BRACE_R);if(t===void 0&&n===void 0)throw this.unexpected();return this.node(e,{kind:TV,directives:t,operationTypes:n})}parseScalarTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`scalar`);let t=this.parseName(),n=this.parseConstDirectives();if(n===void 0)throw this.unexpected();return this.node(e,{kind:DV,name:t,directives:n})}parseObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`type`);let t=this.parseName(),n=this.parseImplementsInterfaces(),r=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(n===void 0&&r===void 0&&i===void 0)throw this.unexpected();return this.node(e,{kind:OV,name:t,interfaces:n,directives:r,fields:i})}parseInterfaceTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`interface`);let t=this.parseName(),n=this.parseImplementsInterfaces(),r=this.parseConstDirectives(),i=this.parseFieldsDefinition();if(n===void 0&&r===void 0&&i===void 0)throw this.unexpected();return this.node(e,{kind:kV,name:t,interfaces:n,directives:r,fields:i})}parseUnionTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`union`);let t=this.parseName(),n=this.parseConstDirectives(),r=this.parseUnionMemberTypes();if(n===void 0&&r===void 0)throw this.unexpected();return this.node(e,{kind:AV,name:t,directives:n,types:r})}parseEnumTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`enum`);let t=this.parseName(),n=this.parseConstDirectives(),r=this.parseEnumValuesDefinition();if(n===void 0&&r===void 0)throw this.unexpected();return this.node(e,{kind:jV,name:t,directives:n,values:r})}parseInputObjectTypeExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`input`);let t=this.parseName(),n=this.parseConstDirectives(),r=this.parseInputFieldsDefinition();if(n===void 0&&r===void 0)throw this.unexpected();return this.node(e,{kind:MV,name:t,directives:n,fields:r})}parseDirectiveExtension(){let e=this._lexer.token;this.expectKeyword(`extend`),this.expectKeyword(`directive`),this.expectToken(W.AT);let t=this.parseName(),n=this.parseConstDirectives();if(n===void 0)throw this.unexpected();return this.node(e,{kind:EV,name:t,directives:n})}parseDirectiveDefinition(){let e=this._lexer.token,t=this.parseDescription();this.expectKeyword(`directive`),this.expectToken(W.AT);let n=this.parseName(),r=this.parseArgumentDefs(),i=this.parseConstDirectives(),a=this.expectOptionalKeyword(`repeatable`);this.expectKeyword(`on`);let o=this.parseDirectiveLocations();return this.node(e,{kind:wV,description:t,name:n,arguments:r,directives:i,repeatable:a,locations:o})}parseDirectiveLocations(){return this.delimitedMany(W.PIPE,this.parseDirectiveLocation)}parseDirectiveLocation(){let e=this._lexer.token,t=this.parseName();if(Object.hasOwn(KV,t.value))return t;throw this.unexpected(e)}parseSchemaCoordinate(){let e=this._lexer.token,t=this.expectOptionalToken(W.AT),n=this.parseName(),r;!t&&this.expectOptionalToken(W.DOT)&&(r=this.parseName());let i;return(t||r)&&this.expectOptionalToken(W.PAREN_L)&&(i=this.parseName(),this.expectToken(W.COLON),this.expectToken(W.PAREN_R)),t?i?this.node(e,{kind:LV,name:n,argumentName:i}):this.node(e,{kind:IV,name:n}):r?i?this.node(e,{kind:FV,name:n,fieldName:r,argumentName:i}):this.node(e,{kind:PV,name:n,memberName:r}):this.node(e,{kind:NV,name:n})}node(e,t){return this._options.noLocation!==!0&&(t.loc=new zB(e,this._lexer.lastToken,this._lexer.source)),t}peek(e){return this._lexer.token.kind===e}expectToken(e){let t=this._lexer.token;if(t.kind===e)return this.advanceLexer(),t;throw qV(this._lexer.source,t.start,`Expected ${EH(e)}, found ${TH(t)}.`)}expectOptionalToken(e){return this._lexer.token.kind===e&&(this.advanceLexer(),!0)}expectKeyword(e){let t=this._lexer.token;if(t.kind===W.NAME&&t.value===e)this.advanceLexer();else throw qV(this._lexer.source,t.start,`Expected "${e}", found ${TH(t)}.`)}expectOptionalKeyword(e){let t=this._lexer.token;return t.kind===W.NAME&&t.value===e&&(this.advanceLexer(),!0)}unexpected(e){let t=e??this._lexer.token;return qV(this._lexer.source,t.start,`Unexpected ${TH(t)}.`)}any(e,t,n){this.expectToken(e);let r=[];for(;!this.expectOptionalToken(n);)r.push(t.call(this));return r}optionalMany(e,t,n){if(this.expectOptionalToken(e)){let e=[];do e.push(t.call(this));while(!this.expectOptionalToken(n));return e}}many(e,t,n){this.expectToken(e);let r=[];do r.push(t.call(this));while(!this.expectOptionalToken(n));return r}delimitedMany(e,t){this.expectOptionalToken(e);let n=[];do n.push(t.call(this));while(this.expectOptionalToken(e));return n}advanceLexer(){let{maxTokens:e}=this._options,t=this._lexer.advance();if(t.kind!==W.EOF&&(++this._tokenCounter,e!==void 0&&this._tokenCounter>e))throw qV(this._lexer.source,t.start,`Document contains more than ${e} tokens. Parsing aborted.`)}};function TH(e){let t=e.value;return EH(e.kind)+(t==null?``:` "${t}"`)}function EH(e){return eH(e)?`"${e}"`:e}var DH=EB(),OH=y(DB(),1);function kH(e,...t){try{return e?.(...t)}catch(e){console.error(e)}}var AH=queueMicrotask??(e=>{Promise.resolve().then(e)}),jH=e=>t=>typeof t===e,MH=jH(`object`),NH=jH(`function`),PH=e=>e===null,{isArray:FH}=Array,IH=e=>MH(e)&&!PH(e)&&!FH(e);function LH(){let e=new Set,t=t=>(e.has(t)||e.add(t),()=>{e.delete(t)});return{subscribe:t,next:t=>{e.forEach(e=>e(t))},asReadonly:()=>({subscribe:t})}}var RH=`...`,zH=`@@r-html-${Math.random().toString().substring(2,8)}`;`${RH}${zH}`,RegExp(`${zH}_(\\d+)_`,`g`),RegExp(`^${zH}_\\d+_$`);var BH=new WeakMap,VH=new WeakMap,HH=new WeakMap,UH=new WeakMap,WH=new WeakMap,GH={shallow:!1},KH=null;function qH(e){return KH=e,kH(e),KH=null,()=>JH(e)}function JH(e){sU(e);let t=WH.get(e);if(t)for(let[n]of t.entries())VH.get(n)?.delete(e);t&&WH.delete(e)}function YH(e){if(!KH)return;let t=VH.get(e);t?t.has(KH)||t.add(KH):VH.set(e,new Set([KH]))}function XH(e,t){if(!KH)return;let n=WH.get(KH);if(n){let r=n.get(e);r?r.has(t)||r.add(t):n.set(e,new Set([t]))}else WH.set(KH,new Map([[e,new Set([t])]]))}var ZH=e=>e instanceof Node||e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet||e instanceof RegExp||e instanceof Date||e instanceof Promise||(FH(e)||IH(e))&&Object.isFrozen(e);function QH(e,t={}){let{shallow:n}=Object.assign({},GH,t),r=new Proxy(e,{get(r,i,a){let o=Reflect.get(r,i,a);return ZH(o)?o:(YH(e),XH(e,i),!n&&(IH(o)||FH(o))&&!HH.has(o)?BH.has(o)?BH.get(o):QH(o,t):o)},set(e,t,n,r){let i=Reflect.get(e,t,r),a=Reflect.set(e,t,n,r);return(!FH(e)&&i!==n||t===`length`)&&(cU(e,t),dU(e,t)),a},deleteProperty(e,t){let n=Reflect.deleteProperty(e,t);return cU(e,t),dU(e,t),n}});return BH.set(e,r),HH.set(r,e),r}var $H=[],eU=new Map,tU=new Map,nU=!0;function rU(e,t,n){let r=WH.get(n);if(!r)return!1;let i=r.get(e);return i?i.has(t):!1}var iU=e=>t=>{let n=eU.get(t),r=()=>{},i=n?.promise?n.promise:new Promise(e=>{r=e});if(!n){let n={type:e,promise:i,fn:t,resolve:()=>{r()}};$H.push(n),eU.set(t,n)}return nU&&=(AH(uU),!1),i},aU=iU(`observer`),oU=iU(`nextTick`);function sU(e){let t=eU.get(e);if(!t)return;let n=$H.indexOf(t);n===-1||$H.splice(n,1),eU.delete(e),t.resolve()}var cU=(e,t)=>VH.get(e)?.forEach(n=>rU(e,t,n)&&aU(n));function lU(){let e=$H.shift();if(e){if(eU.delete(e.fn),e.type===`observer`)JH(e.fn),qH(e.fn),e.resolve();else if(e.type===`nextTick`){let t=kH(e.fn);t instanceof Promise?t.finally(e.resolve):e.resolve()}}}function uU(){for(;$H.length;)lU();nU=!0}function dU(e,t){let n=BH.get(e);if(!n)return;let r=UH.get(n);if(!r)return;let i=tU.get(n);i?i.has(t)||i.add(t):(tU.set(n,new Set([t])),oU(()=>{let e=tU.get(n);e&&(tU.delete(n),e.forEach(e=>r.next(e)))}))}function G(e){function t(t){return{type:e,payload:t}}return t.toString=()=>`${e}`,t.type=e,t}function*fU(e,t,n){for(let r of n)r?.[Symbol.iterator]?yield*fU(e,t,r):NH(r)?yield*fU(e,t,r(e,t)):yield r}var pU=(e,t,n)=>[...fU(e,t,n)],mU=(...e)=>t=>e.reduce((e,t)=>t(e),t);function*hU(e){yield e}var gU=function*(e){for(let t of e)t.length&&(yield t)};function _U({context:e,state:t,reducers:n,enableObservable:r=!0}){let i=r?QH(t):t,a=LH(),o=LH(),s=mU(gU),c=t=>{kH(Reflect.get(n,t.type,n),i,t,e)},l=(...t)=>{let n=pU(i,e,t);a.next(n)},u=(...e)=>{AH(()=>l(...e))},d=a.subscribe(e=>{let t=s(hU(e));for(let e of t)o.next(e)}),f=o.subscribe(e=>e.forEach(c));return{context:e,state:i,dispatch:u,dispatchSync:l,subscribe:o.subscribe,pipe:(...e)=>(s=mU(...e,gU),()=>{s=mU(gU)}),destroy:()=>{d(),f()}}}var vU=(e,t)=>e*(1-t)/2;function yU(e){return{originX:iI(e.scrollLeft+vU(e.width,e.zoomLevel),4),originY:iI(e.scrollTop+vU(e.height,e.zoomLevel),4)}}function K(e,t,n){return r=>{if(!n)return;let i=n[r];e(i)&&(t[r]=i)}}function bU(e){return t=>V(t)&&e.includes(t)}function xU(e){return t=>eI(t)&&e.includes(t)}function SU(e,t,n){return Reflect.get(e,t)??n}function CU(){let e=Date.now();return{updateAt:e,createAt:e}}function wU(e,t){let n=K(eI,e,t);n(`updateAt`),n(`createAt`)}var TU=()=>({tableIds:[],relationshipIds:[],indexIds:[],memoIds:[]});function EU(e){let t=TU();if(!AF(e)||JF(e))return t;let n=K(Array.isArray,t,e);return n(`tableIds`),n(`relationshipIds`),n(`indexIds`),n(`memoIds`),t}var DU=()=>({id:``,name:``,tableId:``,indexColumnIds:[],seqIndexColumnIds:[],unique:!1,meta:CU()});function OU(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=DU(),r=K(V,e,n),i=K(QF,e,n),a=K(Array.isArray,e,n);r(`id`),r(`name`),r(`tableId`),i(`unique`),a(`indexColumnIds`),a(`seqIndexColumnIds`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var kU={ASC:1,DESC:2},AU=Object.values(kU),jU=()=>({id:``,indexId:``,columnId:``,orderType:kU.ASC,meta:CU()});function MU(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=jU(),r=K(V,e,n);r(`id`),r(`indexId`),r(`columnId`),K(xU(AU),e,n)(`orderType`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var NU=()=>({id:``,value:``,ui:{x:200,y:100,zIndex:2,width:116,height:100,color:``},meta:CU()});function PU(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=NU(),r=K(V,e,n),i=K(eI,e.ui,n.ui),a=K(V,e.ui,n.ui);r(`id`),r(`value`),a(`color`),i(`x`),i(`y`),i(`zIndex`),i(`width`),i(`height`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var FU={ZeroOne:2,ZeroN:4,OneOnly:8,OneN:16},IU=Object.values(FU),LU={ring:1,dash:2},RU=Object.values(LU),zU={left:1,right:2,top:4,bottom:8},BU=Object.values(zU),VU=()=>({id:``,identification:!1,relationshipType:FU.ZeroN,startRelationshipType:LU.dash,start:{tableId:``,columnIds:[],x:0,y:0,direction:zU.bottom},end:{tableId:``,columnIds:[],x:0,y:0,direction:zU.bottom},meta:CU()});function HU(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=VU(),r=K(V,e,n),i=K(QF,e,n),a=K(eI,e.start,n.start),o=K(V,e.start,n.start),s=K(eI,e.end,n.end),c=K(V,e.end,n.end);r(`id`),i(`identification`),K(xU(IU),e,n)(`relationshipType`),K(xU(RU),e,n)(`startRelationshipType`),o(`tableId`),a(`x`),a(`y`),K(xU(BU),e.start,n.start)(`direction`),K(Array.isArray,e.start,n.start)(`columnIds`),c(`tableId`),s(`x`),s(`y`),K(xU(BU),e.end,n.end)(`direction`),K(Array.isArray,e.end,n.end)(`columnIds`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var UU={ERD:`ERD`,visualization:`@dineug/erd-editor/builtin-visualization`,schemaSQL:`@dineug/erd-editor/builtin-schema-sql`,generatorCode:`@dineug/erd-editor/builtin-generator-code`,settings:`settings`},WU=Object.values(UU),GU={tableComment:1,columnComment:2,columnDataType:4,columnDefault:8,columnAutoIncrement:16,columnPrimaryKey:32,columnUnique:64,columnNotNull:128,relationship:256},KU={columnName:1,columnDataType:2,columnNotNull:4,columnUnique:8,columnAutoIncrement:16,columnDefault:32,columnComment:64},qU=Object.values(KU),JU={MariaDB:1,MSSQL:2,MySQL:4,Oracle:8,PostgreSQL:16,SQLite:32,Databricks:64,Snowflake:128},YU=Object.values(JU),XU={GraphQL:1,csharp:2,Java:4,Kotlin:8,TypeScript:16,JPA:32,Scala:64,Go:128,SQLAlchemy:256,TypeORM:512,Sequelize:1024,Drizzle:2048,DBML:4096,AML:8192},ZU=Object.values(XU),QU={none:1,camelCase:2,pascalCase:4,snakeCase:8},$U=Object.values(QU),eW={none:1,doubleQuote:2,singleQuote:4,backtick:8},tW=Object.values(eW),nW={scroll:1,zoomLevel:2},rW=.1,iW=1.5,aW=2e3,oW=2e4,sW=GU.tableComment|GU.columnComment|GU.columnDataType|GU.columnDefault|GU.columnPrimaryKey|GU.columnNotNull|GU.relationship,cW=()=>({width:2e3,height:2e3,scrollTop:0,scrollLeft:0,originX:0,originY:0,zoomLevel:1,show:sW,database:JU.MySQL,databaseName:``,canvasType:UU.ERD,language:XU.GraphQL,tableNameCase:QU.pascalCase,columnNameCase:QU.camelCase,bracketType:eW.none,relationshipDataTypeSync:!0,relationshipOptimization:!1,columnOrder:[KU.columnName,KU.columnDataType,KU.columnNotNull,KU.columnUnique,KU.columnAutoIncrement,KU.columnDefault,KU.columnComment],maxWidthComment:-1,ignoreSaveSettings:0}),lW=e=>lI(e,aW,oW),uW=e=>lI(e,rW,iW),dW=e=>lI(e,60,200);function fW(e){let t=cW();if(!AF(e)||JF(e))return t;let n=K(eI,t,e),r=K(V,t,e),i=K(QF,t,e);if(eI(e.width)&&(t.width=lW(e.width)),eI(e.height)&&(t.height=lW(e.height)),eI(e.zoomLevel)&&(t.zoomLevel=uW(e.zoomLevel)),eI(e.maxWidthComment)&&e.maxWidthComment!==-1&&(t.maxWidthComment=dW(e.maxWidthComment)),n(`scrollTop`),n(`scrollLeft`),n(`show`),n(`ignoreSaveSettings`),r(`databaseName`),r(`canvasType`),i(`relationshipDataTypeSync`),i(`relationshipOptimization`),K(xU(YU),t,e)(`database`),K(xU(ZU),t,e)(`language`),K(xU($U),t,e)(`tableNameCase`),K(xU($U),t,e)(`columnNameCase`),K(xU(tW),t,e)(`bracketType`),Array.isArray(e.columnOrder)&&qU.length===e.columnOrder.length&&WF(qU,e.columnOrder).length===0&&(t.columnOrder=e.columnOrder),eI(e.originX)&&eI(e.originY))t.originX=e.originX,t.originY=e.originY;else{let{originX:e,originY:n}=yU(t);t.originX=e,t.originY=n}return t}var pW=()=>({id:``,name:``,comment:``,columnIds:[],seqColumnIds:[],ui:{x:200,y:100,zIndex:2,widthName:60,widthComment:60,color:``},meta:CU()});function mW(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=pW(),r=K(V,e,n),i=K(Array.isArray,e,n),a=K(eI,e.ui,n.ui),o=K(V,e.ui,n.ui);r(`id`),r(`name`),r(`comment`),i(`columnIds`),i(`seqColumnIds`),o(`color`),a(`x`),a(`y`),a(`zIndex`),a(`widthName`),a(`widthComment`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var hW=()=>({id:``,tableId:``,name:``,comment:``,dataType:``,default:``,options:0,ui:{keys:0,widthName:60,widthComment:60,widthDataType:60,widthDefault:60},meta:CU()});function gW(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=hW(),r=K(V,e,n),i=K(eI,e,n),a=K(eI,e.ui,n.ui);r(`id`),r(`tableId`),r(`name`),r(`comment`),r(`dataType`),r(`default`),i(`options`),a(`keys`),a(`widthName`),a(`widthComment`),a(`widthDataType`),a(`widthDefault`),wU(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}function _W(e){let t=e;return{$schema:`https://raw.githubusercontent.com/dineug/erd-editor/main/json-schema/schema.json`,version:`3.0.0`,settings:fW(t.settings),doc:EU(t.doc),collections:{tableEntities:mW(t.collections?.tableEntities),tableColumnEntities:gW(t.collections?.tableColumnEntities),relationshipEntities:HU(t.collections?.relationshipEntities),indexEntities:OU(t.collections?.indexEntities),indexColumnEntities:MU(t.collections?.indexColumnEntities),memoEntities:PU(t.collections?.memoEntities)}}}var q={CanvasType:UU,CanvasTypeList:WU,Show:GU,ColumnType:KU,ColumnTypeList:qU,Database:JU,DatabaseList:YU,Language:XU,LanguageList:ZU,NameCase:QU,NameCaseList:$U,BracketType:eW,BracketTypeList:tW,RelationshipType:FU,RelationshipTypeList:IU,StartRelationshipType:LU,StartRelationshipTypeList:RU,Direction:zU,DirectionList:BU,ColumnOption:{autoIncrement:1,primaryKey:2,unique:4,notNull:8},ColumnUIKey:{primaryKey:1,foreignKey:2},OrderType:kU,OrderTypeList:AU,SaveSettingType:nW,CANVAS_SIZE_MAX:oW,CANVAS_SIZE_MIN:aW,CANVAS_ZOOM_MAX:iW,CANVAS_ZOOM_MIN:rW};function vW(e){return[e,-1,-1,{}]}function yW(e,t,n){return e[t]||(e[t]=vW(n),e[t])}function bW(e,t,n,r,i){let a=yW(e,n,r),o=a[1],s=a[2];o<t&&(a[1]=t),s<t&&i()}function xW(e,t,n,r,i){let a=yW(e,n,r),o=a[2],s=a[1];o<t&&(a[2]=t),s<=t&&i()}function SW(e,t,n,r,i,a){let o=yW(e,n,r);(o[3][i]??-1)<=t&&(o[3][i]=t,a())}function CW(e){"@babel/helpers - typeof";return CW=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},CW(e)}function wW(e,t){if(CW(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(CW(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function TW(e){var t=wW(e,`string`);return CW(t)==`symbol`?t:t+``}function EW(e,t,n){return(t=TW(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var DW=class{constructor(e){EW(this,`collections`,void 0),this.collections=e}collection(e){return new OW(this.collections[e],e)}},OW=class{constructor(e,t){EW(this,`collection`,void 0),EW(this,`collectionKey`,void 0),this.collection=e,this.collectionKey=t}selectById(e){return this.collection[e]}selectByIds(e){return e.length,e.map(e=>this.selectById(e)).filter(Boolean)}selectEntities(){return this.collection}selectAll(){return Object.values(this.collection)}setOne(e){return this.collection[e.id]=e,this}setMany(e){return e.forEach(e=>this.setOne(e)),this}setAll(e){return this.removeAll(),this.setMany(e),this}addOne(e){return this.selectById(e.id)||this.setOne(e),this}addMany(e){return e.forEach(e=>this.addOne(e)),this}removeOne(e){return this.selectById(e)&&Reflect.deleteProperty(this.collection,e),this}removeMany(e){return e.forEach(e=>this.removeOne(e)),this}removeAll(){return this.collection={},this}updateOne(e,t){let n=this.selectById(e);return n&&(t(n),n.meta.updateAt=Date.now()),this}updateMany(e,t){return e.forEach(e=>this.updateOne(e,t)),this}getOrCreate(e,t){let n=this.selectById(e);if(n)return n;let r=t(e);return this.setOne(r),this.selectById(e)}addOperator(e,t,n,r){return bW(e,t,n,this.collectionKey,r),this}removeOperator(e,t,n,r){return xW(e,t,n,this.collectionKey,r),this}replaceOperator(e,t,n,r,i){return SW(e,t,n,this.collectionKey,r,i),this}},J=e=>new DW(e),kW=Object.values({columnUnique:`columnUnique`,columnAutoIncrement:`columnAutoIncrement`,columnName:`columnName`,columnDataType:`columnDataType`,columnNotNull:`columnNotNull`,columnDefault:`columnDefault`,columnComment:`columnComment`}),AW=Object.values({ERD:`ERD`,"@vuerd/builtin-sql-ddl":`@vuerd/builtin-sql-ddl`,"@vuerd/builtin-grid":`@vuerd/builtin-grid`,"@vuerd/builtin-generator-code":`@vuerd/builtin-generator-code`,"@vuerd/builtin-visualization":`@vuerd/builtin-visualization`}),jW=Object.values({MariaDB:`MariaDB`,MSSQL:`MSSQL`,MySQL:`MySQL`,Oracle:`Oracle`,PostgreSQL:`PostgreSQL`,SQLite:`SQLite`}),MW=Object.values({GraphQL:`GraphQL`,"C#":`C#`,Java:`Java`,Kotlin:`Kotlin`,TypeScript:`TypeScript`,JPA:`JPA`,Scala:`Scala`}),NW=Object.values({none:`none`,camelCase:`camelCase`,pascalCase:`pascalCase`,snakeCase:`snakeCase`}),PW=Object.values({AtomOneDark:`AtomOneDark`,AtomOneLight:`AtomOneLight`,MonokaiSublime:`MonokaiSublime`,GithubGist:`GithubGist`,VS2015:`VS2015`}),FW=Object.values({none:`none`,doubleQuote:`doubleQuote`,singleQuote:`singleQuote`,backtick:`backtick`}),IW=.1,LW=2e3,RW=2e4,zW=()=>({version:`2.2.11`,width:2e3,height:2e3,scrollTop:0,scrollLeft:0,zoomLevel:1,show:{tableComment:!0,columnComment:!0,columnDataType:!0,columnDefault:!0,columnAutoIncrement:!1,columnPrimaryKey:!0,columnUnique:!1,columnNotNull:!0,relationship:!0},database:`MySQL`,databaseName:``,canvasType:`ERD`,language:`GraphQL`,tableCase:`pascalCase`,columnCase:`camelCase`,highlightTheme:`VS2015`,bracketType:`none`,setting:{relationshipDataTypeSync:!0,relationshipOptimization:!1,columnOrder:[`columnName`,`columnDataType`,`columnNotNull`,`columnUnique`,`columnAutoIncrement`,`columnDefault`,`columnComment`]},pluginSerializationMap:{}}),BW=e=>lI(e,LW,RW),VW=e=>lI(e,IW,1);function HW(e){let t=zW();if(JF(e))return t;let n=K(eI,t,e),r=K(V,t,e),i=K(QF,t.show,e.show),a=K(QF,t.setting,e.setting);if(eI(e.width)&&(t.width=BW(e.width)),eI(e.height)&&(t.height=BW(e.height)),eI(e.zoomLevel)&&(t.zoomLevel=VW(e.zoomLevel)),r(`version`),r(`databaseName`),n(`scrollTop`),n(`scrollLeft`),K(bU(jW),t,e)(`database`),K(bU(AW),t,e)(`canvasType`),K(bU(MW),t,e)(`language`),K(bU(NW),t,e)(`tableCase`),K(bU(NW),t,e)(`columnCase`),K(bU(PW),t,e)(`highlightTheme`),K(bU(FW),t,e)(`bracketType`),i(`tableComment`),i(`columnComment`),i(`columnDataType`),i(`columnDefault`),i(`columnAutoIncrement`),i(`columnPrimaryKey`),i(`columnUnique`),i(`columnNotNull`),i(`relationship`),a(`relationshipDataTypeSync`),a(`relationshipOptimization`),e.setting?.columnOrder&&kW.length===e.setting.columnOrder.length&&WF(kW,e.setting.columnOrder).length===0&&(t.setting.columnOrder=e.setting.columnOrder),AF(e.pluginSerializationMap)){let n=e.pluginSerializationMap;for(let e of Object.keys(n)){let r=n[e];V(r)&&(t.pluginSerializationMap[e]=r)}}return t}var UW=()=>({memos:[]}),WW=()=>({id:``,value:``,ui:{active:!1,left:200,top:200,zIndex:2,width:127,height:127}});function GW(e){let t=UW();if(JF(e)||!Array.isArray(e.memos))return t;for(let n of e.memos){let e=WW(),r=K(V,e,n),i=K(eI,e.ui,n.ui),a=K(QF,e.ui,n.ui),o=K(V,e.ui,n.ui);r(`id`),r(`value`),a(`active`),o(`color`),i(`left`),i(`top`),i(`zIndex`),i(`width`),i(`height`),t.memos.push(e)}return t}var KW=[`ZeroOneN`,`One`,`N`],qW={ZeroOneN:`ZeroN`,One:`OneOnly`,N:`OneN`},JW=e=>KW.includes(e)?qW[e]:e,YW=Object.values({ZeroOneN:`ZeroOneN`,ZeroOne:`ZeroOne`,ZeroN:`ZeroN`,OneOnly:`OneOnly`,OneN:`OneN`,One:`One`,N:`N`}),XW=Object.values({Ring:`Ring`,Dash:`Dash`}),ZW=Object.values({left:`left`,right:`right`,top:`top`,bottom:`bottom`}),QW=()=>({relationships:[]}),$W=()=>({id:``,identification:!1,relationshipType:`ZeroN`,startRelationshipType:`Dash`,start:{tableId:``,columnIds:[],x:0,y:0,direction:`bottom`},end:{tableId:``,columnIds:[],x:0,y:0,direction:`bottom`},constraintName:``,visible:!0});function eG(e){let t=QW();if(JF(e)||!Array.isArray(e.relationships))return t;for(let n of e.relationships){let e=$W(),r=K(V,e,n),i=K(QF,e,n),a=K(eI,e.start,n.start),o=K(V,e.start,n.start),s=K(eI,e.end,n.end),c=K(V,e.end,n.end);r(`id`),r(`constraintName`),i(`identification`),i(`visible`),K(bU(YW),e,n)(`relationshipType`),e.relationshipType=JW(e.relationshipType),K(bU(XW),e,n)(`startRelationshipType`),o(`tableId`),a(`x`),a(`y`),K(bU(ZW),e.start,n.start)(`direction`),Array.isArray(n.start?.columnIds)&&(e.start.columnIds=n.start?.columnIds.filter(V)),c(`tableId`),s(`x`),s(`y`),K(bU(ZW),e.end,n.end)(`direction`),Array.isArray(n.end?.columnIds)&&(e.end.columnIds=n.end?.columnIds.filter(V)),t.relationships.push(e)}return t}var tG={ASC:`ASC`,DESC:`DESC`},nG=Object.values(tG),rG=()=>({tables:[],indexes:[]}),iG=()=>({id:``,name:``,comment:``,columns:[],ui:{active:!1,left:200,top:100,zIndex:2,widthName:60,widthComment:60},visible:!0}),aG=()=>({id:``,name:``,comment:``,dataType:``,default:``,option:{autoIncrement:!1,primaryKey:!1,unique:!1,notNull:!1},ui:{active:!1,pk:!1,fk:!1,pfk:!1,widthName:60,widthComment:60,widthDataType:60,widthDefault:60}}),oG=()=>({id:``,name:``,tableId:``,columns:[],unique:!1}),sG=()=>({id:``,orderType:tG.ASC});function cG(e){let t=rG();if(JF(e))return t;if(Array.isArray(e.tables))for(let n of e.tables){let e=iG(),r=K(V,e,n),i=K(QF,e,n),a=K(eI,e.ui,n.ui),o=K(QF,e.ui,n.ui),s=K(V,e.ui,n.ui);if(r(`id`),r(`name`),r(`comment`),i(`visible`),o(`active`),s(`color`),a(`left`),a(`top`),a(`zIndex`),a(`widthName`),a(`widthComment`),Array.isArray(n.columns))for(let t of n.columns){let n=aG(),r=K(V,n,t),i=K(eI,n.ui,t.ui),a=K(QF,n.ui,t.ui),o=K(QF,n.option,t.option);r(`id`),r(`name`),r(`comment`),r(`dataType`),r(`default`),o(`autoIncrement`),o(`primaryKey`),o(`unique`),o(`notNull`),a(`active`),a(`pk`),a(`fk`),a(`pfk`),i(`widthName`),i(`widthComment`),i(`widthDataType`),i(`widthDefault`),e.columns.push(n)}t.tables.push(e)}if(Array.isArray(e.indexes))for(let n of e.indexes){let e=oG(),r=K(V,e,n),i=K(QF,e,n);if(r(`id`),r(`name`),r(`tableId`),i(`unique`),Array.isArray(n.columns))for(let t of n.columns){let n=sG();K(V,n,t)(`id`),K(bU(nG),n,t)(`orderType`),e.columns.push(n)}t.indexes.push(e)}return t}function lG(e){let t=e;return{canvas:HW(t.canvas),table:cG(t.table),relationship:eG(t.relationship),memo:GW(t.memo)}}function uG(e){let t=_W({});return dG(t.settings,e.canvas),fG(t,e.table),pG(t,e.memo),mG(t,e.relationship),t}function dG(e,t){e.width=t.width,e.height=t.height,e.scrollTop=t.scrollTop,e.scrollLeft=t.scrollLeft,e.zoomLevel=t.zoomLevel;let{originX:n,originY:r}=yU(e);e.originX=n,e.originY=r,e.databaseName=t.databaseName,e.canvasType=q.CanvasType.ERD,e.show=Object.keys(t.show).reduce((e,n)=>SU(t.show,n,!1)?e|SU(q.Show,n,0):e,0),e.database=Reflect.get(q.Database,t.database)??q.Database.MySQL,e.language=t.language===`C#`?q.Language.csharp:SU(q.Language,t.language,q.Language.GraphQL),e.tableNameCase=SU(q.NameCase,t.tableCase,q.NameCase.pascalCase),e.columnNameCase=SU(q.NameCase,t.columnCase,q.NameCase.camelCase),e.bracketType=SU(q.BracketType,t.bracketType,q.BracketType.none),e.relationshipDataTypeSync=t.setting.relationshipDataTypeSync,e.relationshipOptimization=t.setting.relationshipOptimization;let i=t.setting.columnOrder.map(e=>q.ColumnType[e]);WF(q.ColumnTypeList,i).length===0&&(e.columnOrder=i)}function fG(e,t){let n=t.tables.filter(({id:e})=>!!e),r=t.indexes.filter(({id:e})=>!!e);e.doc.tableIds=n.map(({id:e})=>e),e.doc.indexIds=r.map(({id:e})=>e);for(let t of n){let n=pW();n.id=t.id,n.name=t.name,n.comment=t.comment,n.columnIds=t.columns.map(({id:e})=>e),n.seqColumnIds=[...n.columnIds],n.ui.y=t.ui.top,n.ui.x=t.ui.left,n.ui.zIndex=t.ui.zIndex,n.ui.widthName=t.ui.widthName,n.ui.widthComment=t.ui.widthComment,n.ui.color=t.ui.color??``;for(let n of t.columns){let r=hW();r.id=n.id,r.tableId=t.id,r.name=n.name,r.comment=n.comment,r.dataType=n.dataType,r.default=n.default,r.options=Object.keys(n.option).reduce((e,t)=>SU(n.option,t,!1)?e|SU(q.ColumnOption,t,0):e,0),r.ui.widthName=n.ui.widthName,r.ui.widthComment=n.ui.widthComment,r.ui.widthDataType=n.ui.widthDataType,r.ui.widthDefault=n.ui.widthDefault,n.ui.pfk?r.ui.keys=q.ColumnUIKey.primaryKey|q.ColumnUIKey.foreignKey:n.ui.pk?r.ui.keys=q.ColumnUIKey.primaryKey:n.ui.fk&&(r.ui.keys=q.ColumnUIKey.foreignKey),e.collections.tableColumnEntities[r.id]=r}e.collections.tableEntities[n.id]=n}for(let t of r){let n=DU();n.id=t.id,n.name=t.name,n.tableId=t.tableId,n.unique=t.unique;for(let r of t.columns){let i=xI(),a=jU();n.indexColumnIds.push(i),n.seqIndexColumnIds.push(i),a.id=i,a.indexId=t.id,a.columnId=r.id,a.orderType=SU(q.OrderType,r.orderType,q.OrderType.ASC),e.collections.indexColumnEntities[a.id]=a}e.collections.indexEntities[n.id]=n}}function pG(e,t){let n=t.memos.filter(({id:e})=>!!e);e.doc.memoIds=n.map(({id:e})=>e);for(let t of n){let n=NU();n.id=t.id,n.value=t.value,n.ui.y=t.ui.top,n.ui.x=t.ui.left,n.ui.width=t.ui.width,n.ui.height=t.ui.height,n.ui.zIndex=t.ui.zIndex,n.ui.color=t.ui.color??``,e.collections.memoEntities[n.id]=n}}function mG(e,t){let n=t.relationships.filter(({id:e})=>!!e);e.doc.relationshipIds=n.map(({id:e})=>e);for(let t of n){let n=VU();n.id=t.id,n.identification=t.identification,n.relationshipType=SU(q.RelationshipType,t.relationshipType,q.RelationshipType.ZeroN),n.startRelationshipType=SU(q.StartRelationshipType,t.startRelationshipType===`Ring`?`ring`:`dash`,q.StartRelationshipType.dash),n.start.tableId=t.start.tableId,n.start.columnIds=t.start.columnIds,n.start.x=t.start.x,n.start.y=t.start.y,n.start.direction=SU(q.Direction,t.start.direction,q.Direction.bottom),n.end.tableId=t.end.tableId,n.end.columnIds=t.end.columnIds,n.end.x=t.end.x,n.end.y=t.end.y,n.end.direction=SU(q.Direction,t.end.direction,q.Direction.bottom),e.collections.relationshipEntities[n.id]=n}}function hG(e,t){return(e&t)===t}function gG(e){let t=JSON.parse(e);return Reflect.get(t,`version`)===`3.0.0`?_W(t):uG(lG(t))}function _G(e){let t=dI(e,[`$schema`,`version`,`settings`,`doc`,`collections`]),n={...t.settings};return t.settings=n,hG(n.ignoreSaveSettings,q.SaveSettingType.scroll)&&(n.originX=0,n.originY=0),hG(n.ignoreSaveSettings,q.SaveSettingType.zoomLevel)&&(n.zoomLevel=1),JSON.stringify(t,null,2)}var Y={changeHasHistory:`editor.changeHasHistory`,selectAll:`editor.selectAll`,unselectAll:`editor.unselectAll`,select:`editor.select`,changeViewport:`editor.changeViewport`,clear:`editor.clear`,loadJson:`editor.loadJson`,initialClear:`editor.initialClear`,initialLoadJson:`editor.initialLoadJson`,focusTable:`editor.focusTable`,focusColumn:`editor.focusColumn`,focusTableEnd:`editor.focusTableEnd`,focusMoveTable:`editor.focusMoveTable`,editTable:`editor.editTable`,editTableEnd:`editor.editTableEnd`,editMemo:`editor.editMemo`,editMemoEnd:`editor.editMemoEnd`,scrollMemo:`editor.scrollMemo`,selectAllColumn:`editor.selectAllColumn`,drawStartRelationship:`editor.drawStartRelationship`,drawStartAddRelationship:`editor.drawStartAddRelationship`,drawEndRelationship:`editor.drawEndRelationship`,drawRelationship:`editor.drawRelationship`,hoverColumnMap:`editor.hoverColumnMap`,hoverRelationshipMap:`editor.hoverRelationshipMap`,changeOpenMap:`editor.changeOpenMap`,changeHandTool:`editor.changeHandTool`,changeZenMode:`editor.changeZenMode`,dragstartColumn:`editor.dragstartColumn`,dragendColumn:`editor.dragendColumn`,sharedMouseTracker:`editor.sharedMouseTracker`,sharedFocusTracker:`editor.sharedFocusTracker`,sharedSelectionTracker:`editor.sharedSelectionTracker`,sharedDragSelectTracker:`editor.sharedDragSelectTracker`,dragSelectRect:`editor.dragSelectRect`,validationIds:`editor.validationIds`,getLWW:`editor.getLWW`,mergeLWW:`editor.mergeLWW`,viewOpen:`editor.viewOpen`,viewClose:`editor.viewClose`,viewScrollTo:`editor.viewScrollTo`,viewStreamScrollTo:`editor.viewStreamScrollTo`,viewChangeZoomLevel:`editor.viewChangeZoomLevel`,viewStreamZoomLevel:`editor.viewStreamZoomLevel`,viewMoveTable:`editor.viewMoveTable`,viewSetLayout:`editor.viewSetLayout`,viewChangeShowMode:`editor.viewChangeShowMode`,viewSetCenters:`editor.viewSetCenters`,changeVisualizationMode:`editor.changeVisualizationMode`},vG=q.CanvasType,yG=q.CanvasTypeList,bG=q.Show,xG=q.ColumnType,SG=q.ColumnTypeList,X=q.Database,CG=q.DatabaseList,wG=q.Language,TG=q.LanguageList,EG=q.NameCase,DG=q.NameCaseList,OG=q.BracketType,kG=q.BracketTypeList,AG=q.RelationshipType;q.RelationshipTypeList;var jG=q.StartRelationshipType;q.StartRelationshipTypeList;var MG=q.Direction;q.DirectionList;var Z=q.ColumnOption,NG=q.ColumnUIKey,PG=q.OrderType;q.OrderTypeList;var FG=q.SaveSettingType,IG=q.CANVAS_SIZE_MAX,LG=q.CANVAS_SIZE_MIN,RG=q.CANVAS_ZOOM_MAX,zG=q.CANVAS_ZOOM_MIN,BG={[OG.none]:``,[OG.backtick]:"`",[OG.doubleQuote]:`"`,[OG.singleQuote]:`'`};xG.columnName,xG.columnDataType,xG.columnDefault,xG.columnComment,xG.columnAutoIncrement,xG.columnUnique,xG.columnNotNull;var VG=16,HG=9,UG=1200;UG/VG*HG;var WG=14/12,GG=1.04;function KG(e){let t=new Set(e);return e=>t.has(e)}var qG={left:`left`,right:`right`,top:`top`,bottom:`bottom`},JG=Object.values(qG);KG([qG.top,qG.bottom,qG.left,qG.right]);var YG=[0,0];function XG({tableId:e,x:t,y:n,direction:r}){return{tableId:e,x:t,y:n,direction:r}}var ZG=()=>({epoch:0,stubSlots:new WeakMap,routes:new WeakMap,anchors:new WeakMap}),QG={document:ZG(),flow:ZG()},$G={flow:new WeakMap};function eK(e,t){let n=$G[t],r=n.get(e);return r||(r=QH({version:0}),n.set(e,r)),r}function tK(e,t){eK(e,t).version+=1}function nK(e,t=`document`){let n=QG[t];for(let r of e){let e=n.stubSlots.delete(r),i=n.routes.delete(r),a=n.anchors.delete(r);t!==`document`&&(e||i||a)&&tK(r,t)}}var rK=(e,t)=>e[0]===t[0]&&e[1]===t[1],iK=(e,t)=>e.x===t.x&&e.y===t.y&&e.direction===t.direction,aK=(e,t)=>e.length===t.length&&e.every((e,n)=>e.x===t[n].x&&e.y===t[n].y);function oK(e,t,n=`document`){let r=QG[n];n!==`document`&&!rK(r.stubSlots.get(e)??YG,t)&&tK(e,n),r.stubSlots.set(e,t)}function sK(e,t,n=`document`){let r=QG[n];if(n!==`document`){let i=r.routes.get(e);(!i||!aK(i.points,t))&&tK(e,n)}r.routes.set(e,{points:t,epoch:r.epoch})}function cK(e=`document`){QG[e].epoch+=1}function lK(e,{start:t,end:n},r=`document`){if(r===`document`){e.start.direction=t.direction,e.start.x=t.x,e.start.y=t.y,e.end.direction=n.direction,e.end.x=n.x,e.end.y=n.y;return}let{anchors:i}=QG[r],a=i.get(e)??e;(!iK(a.start,t)||!iK(a.end,n))&&tK(e,r),i.set(e,{start:XG(t),end:XG(n)})}var uK={Databricks:`Databricks`,MariaDB:`MariaDB`,MSSQL:`MSSQL`,MySQL:`MySQL`,Oracle:`Oracle`,PostgreSQL:`PostgreSQL`,Snowflake:`Snowflake`,SQLite:`SQLite`},dK=Object.values(uK),fK={[uK.Databricks]:X.Databricks,[uK.MariaDB]:X.MariaDB,[uK.MSSQL]:X.MSSQL,[uK.MySQL]:X.MySQL,[uK.Oracle]:X.Oracle,[uK.PostgreSQL]:X.PostgreSQL,[uK.Snowflake]:X.Snowflake,[uK.SQLite]:X.SQLite},pK=/[^0-9]/g,mK=e=>e.replace(pK,``),hK=e=>lI(e,LG,IG),gK=e=>lI(e,zG,RG),_K=e=>lI(e,60,200);function vK(e){return hK(V(e)?Number(mK(e)):e)}function yK(e){return iI(gK(e),2)}var bK=KG(CG),xK=KG(DG),SK=KG(kG),CK=KG(TG),wK=KG(SG);KG(dK);var TK=KG(yG);function EK(e){return Math.max(e,60)}function DK(e){return V(e)?e.trim():``}var OK={table:`table`,memo:`memo`},kK={nameOnly:`nameOnly`,keysOnly:`keysOnly`,allFields:`allFields`},AK={flow:`flow`},jK={graph:`graph`,flow:`flow`},MK={tableName:`tableName`,tableComment:`tableComment`,columnName:`columnName`,columnDataType:`columnDataType`,columnNotNull:`columnNotNull`,columnUnique:`columnUnique`,columnAutoIncrement:`columnAutoIncrement`,columnDefault:`columnDefault`,columnComment:`columnComment`},NK={ArrowUp:`ArrowUp`,ArrowRight:`ArrowRight`,ArrowDown:`ArrowDown`,ArrowLeft:`ArrowLeft`,Tab:`Tab`};KG(Object.values(NK));var PK=()=>({id:xI(),selectedMap:{},hasUndo:!1,hasRedo:!1,viewport:{width:UG,height:675},scrollPullPending:!1,focusTable:null,editMemoId:null,memoScrollTopMap:{},drawRelationship:null,hoverColumnMap:{},hoverRelationshipMap:{},openMap:{},handTool:!1,zenMode:!1,draggableColumn:null,draggingColumnMap:{},sharedMouseTrackerMap:{},sharedFocusTrackerMap:{},sharedSelectionTrackerMap:{},sharedDragSelectTrackerMap:{},dragSelect:null,views:{flow:null},visualizationMode:jK.graph}),FK=e=>e.settings.canvasType===vG.visualization&&e.editor.visualizationMode===jK.flow,IK=e=>FK(e)?e.editor.views.flow:null,LK=(e,t)=>e.editor.views[t]!==null&&FK(e),RK=(e,t)=>t===`document`?null:e.editor.views[t];function zK(e,t=[]){let n=[...t];return{kind:e,showMode:n.length?kK.keysOnly:kK.nameOnly,positions:{},originX:0,originY:0,zoomLevel:1,centerIds:n}}function BK({collections:e},t){nK(J(e).collection(`relationshipEntities`).selectAll(),t)}var VK=(e,t)=>t?e.editor.views[t]:IK(e);function HK(e){e.views.flow=null}var UK=G(Y.viewOpen),WK=(e,{payload:{kind:t,centerIds:n}})=>{BK(e,t),e.editor.views[t]=zK(t,n)},GK=G(Y.viewClose),KK=(e,{payload:{kind:t}})=>{BK(e,t),e.editor.views[t]=null},qK=G(Y.viewScrollTo),JK=(e,{payload:{originX:t,originY:n,kind:r}})=>{let i=VK(e,r);i&&(i.originX=iI(t,4),i.originY=iI(n,4))},YK=G(Y.viewStreamScrollTo),XK=(e,{payload:{movementX:t,movementY:n,kind:r}})=>{let i=VK(e,r);i&&(i.originX=iI(i.originX+t,4),i.originY=iI(i.originY+n,4))},ZK=G(Y.viewChangeZoomLevel),QK=(e,{payload:{value:t,kind:n}})=>{let r=VK(e,n);r&&(r.zoomLevel=yK(t))},$K=G(Y.viewStreamZoomLevel),eq=(e,{payload:{value:t,kind:n}})=>{let r=VK(e,n);r&&(r.zoomLevel=yK(r.zoomLevel+t))},tq=G(Y.viewMoveTable),nq=(e,{payload:{ids:t,movementX:n,movementY:r,kind:i}})=>{let a=VK(e,i);if(a)for(let e of t){let t=a.positions[e];t&&(t.x=iI(t.x+n,4),t.y=iI(t.y+r,4))}},rq=G(Y.viewSetLayout),iq=({editor:e},{payload:{kind:t,positions:n}})=>{let r=e.views[t];r&&(r.positions=Object.fromEntries(Object.entries(n).map(([e,{x:t,y:n}])=>[e,{x:t,y:n}])))},aq=G(Y.viewChangeShowMode),oq=(e,{payload:{value:t,kind:n}})=>{let r=VK(e,n);r&&(r.showMode=t)},sq=G(Y.viewSetCenters),cq=(e,{payload:{tableIds:t,kind:n}})=>{let r=VK(e,n);r&&(r.centerIds=[...t])},lq=G(Y.changeVisualizationMode),uq=({editor:e},{payload:{value:t}})=>{e.visualizationMode=t},dq={[Y.viewOpen]:WK,[Y.viewClose]:KK,[Y.viewScrollTo]:JK,[Y.viewStreamScrollTo]:XK,[Y.viewChangeZoomLevel]:QK,[Y.viewStreamZoomLevel]:eq,[Y.viewMoveTable]:nq,[Y.viewSetLayout]:iq,[Y.viewChangeShowMode]:oq,[Y.viewSetCenters]:cq,[Y.changeVisualizationMode]:uq},fq={viewOpenAction:UK,viewCloseAction:GK,viewScrollToAction:qK,viewStreamScrollToAction:YK,viewChangeZoomLevelAction:ZK,viewStreamZoomLevelAction:$K,viewMoveTableAction:tq,viewSetLayoutAction:rq,viewChangeShowModeAction:aq,viewSetCentersAction:sq,changeVisualizationModeAction:lq},pq={shared:1,changeOnly:2,following:4,drag:8};function mq(e,t){return{...HF(t),tags:eI(t.tags)&&Number.isInteger(t.tags)?t.tags|e:e}}function hq(e,t){return t.map(t=>mq(e,t))}(e=>(...t)=>function*(n,r){yield hq(e,pU(n,r,t))})(pq.changeOnly);function Q(e,t){return(e&t)===t}var gq=Object.freeze({tableIds:[],memoIds:[],relationshipIds:[]});function _q(e,t,n=`document`){let{x:r,y:i}=RK(e,n)?.positions[t.id]??t.ui;return{x:r,y:i}}var vq=e=>Q(e,NG.primaryKey)||Q(e,NG.foreignKey);function yq(e,t){let n=J(e.collections).collection(`relationshipEntities`).selectByIds(e.doc.relationshipIds);for(let{start:e,end:r}of n)t(e.tableId,e.columnIds),t(r.tableId,r.columnIds)}function bq(e,t){let n=new Set;return yq(e,(e,r)=>{e===t.id&&r.forEach(e=>n.add(e))}),n}function xq(e,t,n=`document`){let r=RK(e,n);if(!r||r.showMode===kK.allFields)return t.columnIds;if(r.showMode===kK.nameOnly)return[];let i=bq(e,t);return J(e.collections).collection(`tableColumnEntities`).selectByIds(t.columnIds).filter(e=>vq(e.ui.keys)||i.has(e.id)).map(e=>e.id)}function Sq(e,t=`document`){let{doc:n,collections:r}=e;if(t===`document`)return{tableIds:n.tableIds,memoIds:n.memoIds,relationshipIds:n.relationshipIds};let i=RK(e,t);if(!i)return gq;let a=J(r).collection(`relationshipEntities`).selectByIds(n.relationshipIds),o=new Set(Object.keys(i.positions)),s=n.tableIds.filter(e=>o.has(e)),c=new Set(s);return{tableIds:s,memoIds:[],relationshipIds:a.filter(({start:e,end:t})=>c.has(e.tableId)&&c.has(t.tableId)).map(e=>e.id)}}QH({tableId:{}}),QH({tableId:{}});function Cq(e){return 9+e.ui.width+8+1}function wq(e){return 25+e.ui.height+8+1}var Tq=0;function Eq(){return Tq}function Dq(){Tq++}function Oq(e,{settings:{show:t,maxWidthComment:n},collections:r}){let i=20+e.ui.widthName+8;if(Q(t,bG.tableComment)){let t=n===-1?e.ui.widthComment:n<e.ui.widthComment?n:e.ui.widthComment;i+=t+8}i+=28;let a=Aq(t);i<a&&(i=a);let o=Mq(J(r).collection(`tableColumnEntities`).selectByIds(e.columnIds),t,n);return i<o.width&&(i=o.width),{...o,width:9+i+8+1}}var kq=[{key:bG.columnComment,width:60},{key:bG.columnDataType,width:60},{key:bG.columnDefault,width:60},{key:bG.columnNotNull,width:35},{key:bG.columnAutoIncrement,width:15},{key:bG.columnUnique,width:22}];function Aq(e){return kq.reduce((t,{key:n,width:r})=>Q(e,n)?t+r+8:t,100)}function jq(){return{width:0,name:0,comment:0,dataType:0,default:0,notNull:0,autoIncrement:0,unique:0}}function Mq(e,t,n){let r=jq();for(let i of e)r.name<i.ui.widthName&&(r.name=i.ui.widthName),Q(t,bG.columnComment)&&r.comment<i.ui.widthComment&&(r.comment=n===-1?i.ui.widthComment:n<i.ui.widthComment?n:i.ui.widthComment),Q(t,bG.columnDataType)&&r.dataType<i.ui.widthDataType&&(r.dataType=i.ui.widthDataType),Q(t,bG.columnDefault)&&r.default<i.ui.widthDefault&&(r.default=i.ui.widthDefault);return Q(t,bG.columnNotNull)&&(r.notNull=35),Q(t,bG.columnAutoIncrement)&&(r.autoIncrement=15),Q(t,bG.columnUnique)&&(r.unique=22),r.width=Object.entries(r).reduce((e,[t,n])=>t===`width`||n===0?e:e+n+8,32),r}function Nq(e,t,n){let r=jq(),i=J(t.collections).collection(`tableColumnEntities`).selectByIds(n);for(let e of i)r.name=Math.max(r.name,e.ui.widthName),r.dataType=Math.max(r.dataType,e.ui.widthDataType);let a=i.length?22+r.name+8+r.dataType:0,o=Math.max(Fq(e),a,154);return i.length&&(r.name+=o-a),r.width=18+o,r}function Pq(e){return Math.ceil(e*WG*GG)}function Fq(e){return 20+Pq(e.ui.widthName)+8+28}function Iq(e=`document`){return e===`document`?20:24}function Lq(e=`document`){return e===`document`?24:32}function Rq(e,t=e.columnIds.length,n=`document`){return 9+Iq(n)+t*Lq(n)+1}var zq=(e,t)=>({widthName:EK(t(e.name)),widthComment:EK(t(e.comment))}),Bq=(e,t)=>({widthName:EK(t(e.name)),widthDataType:EK(t(e.dataType)),widthDefault:EK(t(e.default)),widthComment:EK(t(e.comment))});function Vq({doc:{tableIds:e},collections:t},{toWidth:n}){Dq();let r=J(t).collection(`tableEntities`).selectByIds(e),i=J(t).collection(`tableColumnEntities`);for(let e of r){Object.assign(e.ui,zq(e,n));let t=i.selectByIds(e.columnIds);for(let e of t)Object.assign(e.ui,Bq(e,n))}}function Hq(e,t,n){let r=J(t.collections).collection(`tableColumnEntities`).selectByIds(e.columnIds).map(e=>({...e,ui:{...e.ui,...Bq(e,n)}})),i={...e,ui:{...e.ui,...zq(e,n)}};return{width:Oq(i,{...t,collections:{...t.collections,tableColumnEntities:Object.fromEntries(r.map(e=>[e.id,e]))}}).width,height:Rq(i)}}var Uq={document:new WeakMap,flow:new WeakMap};function Wq(e,t,n){let r=Uq[n],i=n===`document`?Gq(e,t):Kq(e,t,n),a=r.get(t);if(a?.key===i.key)return a;let o=i.measure();return r.set(t,o),o}function Gq(e,t){let{settings:n}=e,r=`${Eq()}|${n.show}|${n.maxWidthComment}|${t.ui.widthName}|${t.ui.widthComment}|${t.columnIds.length}`;return{key:r,measure:()=>({key:r,width:Oq(t,e).width,height:Rq(t)})}}function Kq(e,t,n){let r=RK(e,n)?.showMode??kK.allFields,i=xq(e,t,n),a=`${Eq()}|${t.ui.widthName}|${t.columnIds.length}|${r}|${i.length}`;return{key:a,measure:()=>({key:a,width:Nq(t,e,i).width,height:Rq(t,i.length,n)})}}function qq(e,t,n=`document`){let{width:r,height:i}=Wq(e,t,n),{x:a,y:o}=_q(e,t,n);return{width:r,height:i,top:{x:a+r/2,y:o},bottom:{x:a+r/2,y:o+i},left:{x:a,y:o+i/2},right:{x:a+r,y:o+i/2},lt:{x:a,y:o},rt:{x:a+r,y:o},lb:{x:a,y:o+i},rb:{x:a+r,y:o+i}}}function Jq(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}function Yq(e,t,n=`document`){let{width:r,height:i}=qq(e,t,n),{x:a,y:o}=_q(e,t,n);return{x:a,y:o,width:r,height:i}}function Xq(e){let{x:t,y:n}=e.ui;return{x:t,y:n,width:Cq(e),height:wq(e)}}function Zq(e,t){let n=Math.min(e.x,t.x),r=Math.min(e.y,t.y);return{x:n,y:r,width:Math.max(e.x+e.width,t.x+t.width)-n,height:Math.max(e.y+e.height,t.y+t.height)-r}}function Qq(e,t=`document`){return eJ(e,[],t)}function $q(e,t=[],n=`document`){let{collections:r,doc:i}=e,{tableIds:a,memoIds:o}=n===`document`?i:Sq(e,n),s=new Map(t.map(e=>[e.id,e])),c=J(r).collection(`tableEntities`).selectByIds(a),l=J(r).collection(`memoEntities`).selectByIds(o);return[...c.map(t=>{let r=Yq(e,t,n),i=s.get(t.id);return i?{...r,x:i.x,y:i.y}:r}),...l.map(Xq)]}function eJ(e,t,n=`document`){let r=$q(e,t,n);return r.length?r.reduce(Zq):null}function tJ(e){return IK(e)??e.settings}function nJ(e,t=`document`){return RK(e,t)??e.settings}function rJ(e,t){return t?nJ(e,t):tJ(e)}function iJ({originX:e,originY:t}){return{x:e,y:t}}var aJ=e=>e>0?e:1;function oJ(e,t){let n=iJ(e);return{x:n.x+t.x*e.zoomLevel,y:n.y+t.y*e.zoomLevel}}function sJ(e,t){let n=aJ(e.zoomLevel),r=iJ({...e,zoomLevel:n});return{x:(t.x-r.x)/n,y:(t.y-r.y)/n}}var cJ=QH({frozen:{}}),lJ=(e,t)=>`${e.editor.id}:${t}`,uJ=(e,t)=>cJ.frozen[lJ(e,t)]??null;function dJ(e,t=`document`){let n=uJ(e,t);return n?n.content:Qq(e,t)}var fJ={changeDatabaseName:`settings.changeDatabaseName`,changeZoomLevel:`settings.changeZoomLevel`,streamZoomLevel:`settings.streamZoomLevel`,scrollTo:`settings.scrollTo`,streamScrollTo:`settings.streamScrollTo`,changeShow:`settings.changeShow`,changeDatabase:`settings.changeDatabase`,changeCanvasType:`settings.changeCanvasType`,changeLanguage:`settings.changeLanguage`,changeTableNameCase:`settings.changeTableNameCase`,changeColumnNameCase:`settings.changeColumnNameCase`,changeBracketType:`settings.changeBracketType`,changeRelationshipDataTypeSync:`settings.changeRelationshipDataTypeSync`,changeRelationshipOptimization:`settings.changeRelationshipOptimization`,changeColumnOrder:`settings.changeColumnOrder`,changeMaxWidthComment:`settings.changeMaxWidthComment`,changeIgnoreSaveSettings:`settings.changeIgnoreSaveSettings`},pJ=e=>e+0;function mJ(e,t,n,r){let i=-t*r,a=n-e*r;return{min:pJ(Math.min(i,a)),max:pJ(Math.max(i,a))}}function hJ(e,t,n,r,i){let{min:a,max:o}=mJ(t,n,r,i);if(a<e&&e<o)return e;let s=Math.min(r,(n-t)*i);return pJ(Math.min(Math.max(e,a+s),o-s))}var gJ=G(fJ.changeDatabaseName),_J=({settings:e,lww:t},{payload:{value:n},version:r},{clock:i})=>{SW(t,r??i.getVersion(),`settings.databaseName`,`settings`,`databaseName`,()=>{e.databaseName=n})},vJ=G(fJ.changeZoomLevel),yJ=({settings:e},{payload:{value:t},tags:n})=>{!JF(n)&&Q(n,pq.following)||(e.zoomLevel=yK(t))},bJ=G(fJ.streamZoomLevel),xJ=({settings:e},{payload:{value:t},tags:n})=>{!JF(n)&&Q(n,pq.following)||(e.zoomLevel=yK(e.zoomLevel+t))},SJ=({width:e,height:t})=>e>0&&t>0;function CJ(e){let{settings:{originX:t,originY:n,zoomLevel:r},editor:{viewport:i}}=e,a=dJ(e);return!a||!SJ(i)?{x:t,y:n}:{x:hJ(t,a.x,a.x+a.width,i.width,r),y:hJ(n,a.y,a.y+a.height,i.height,r)}}var wJ=G(fJ.scrollTo),TJ=({settings:e},{payload:{originX:t,originY:n},tags:r})=>{!JF(r)&&Q(r,pq.following)||(e.originX=iI(t,4),e.originY=iI(n,4))},EJ=G(fJ.streamScrollTo),DJ=({settings:e},{payload:{movementX:t,movementY:n},tags:r})=>{!JF(r)&&Q(r,pq.following)||(e.originX=iI(e.originX+t,4),e.originY=iI(e.originY+n,4))},OJ=G(fJ.changeShow),kJ=({settings:e},{payload:{show:t,value:n}})=>{e.show=n?e.show|t:e.show&~t},AJ=G(fJ.changeDatabase),jJ=({settings:e},{payload:{value:t}})=>{bK(t)&&(e.database=t)},MJ=G(fJ.changeCanvasType),NJ=({settings:e},{payload:{value:t},tags:n})=>{!JF(n)&&Q(n,pq.following)||(e.canvasType=t)},PJ=G(fJ.changeLanguage),FJ=({settings:e},{payload:{value:t}})=>{CK(t)&&(e.language=t)},IJ=G(fJ.changeTableNameCase),LJ=({settings:e},{payload:{value:t}})=>{xK(t)&&(e.tableNameCase=t)},RJ=G(fJ.changeColumnNameCase),zJ=({settings:e},{payload:{value:t}})=>{xK(t)&&(e.columnNameCase=t)},BJ=G(fJ.changeBracketType),VJ=({settings:e},{payload:{value:t}})=>{SK(t)&&(e.bracketType=t)},HJ=G(fJ.changeRelationshipDataTypeSync),UJ=({settings:e},{payload:{value:t}})=>{e.relationshipDataTypeSync=t},WJ=G(fJ.changeRelationshipOptimization),GJ=({settings:e},{payload:{value:t}})=>{e.relationshipOptimization=t},KJ=G(fJ.changeColumnOrder),qJ=({settings:e},{payload:{value:t,target:n}})=>{if(t===n||!wK(t)||!wK(n))return;let r=e.columnOrder.indexOf(t),i=e.columnOrder.indexOf(n);r!==-1&&i!==-1&&(e.columnOrder.splice(r,1),e.columnOrder.splice(i,0,t))},JJ=G(fJ.changeMaxWidthComment),YJ=({settings:e},{payload:{value:t}})=>{e.maxWidthComment=t===-1?t:_K(t)},XJ=G(fJ.changeIgnoreSaveSettings),ZJ=({settings:e},{payload:{saveSettingType:t,value:n}})=>{e.ignoreSaveSettings=n?e.ignoreSaveSettings|t:e.ignoreSaveSettings&~t},QJ={[fJ.changeDatabaseName]:_J,[fJ.changeZoomLevel]:yJ,[fJ.streamZoomLevel]:xJ,[fJ.scrollTo]:TJ,[fJ.streamScrollTo]:DJ,[fJ.changeShow]:kJ,[fJ.changeDatabase]:jJ,[fJ.changeCanvasType]:NJ,[fJ.changeLanguage]:FJ,[fJ.changeTableNameCase]:LJ,[fJ.changeColumnNameCase]:zJ,[fJ.changeBracketType]:VJ,[fJ.changeRelationshipDataTypeSync]:UJ,[fJ.changeRelationshipOptimization]:GJ,[fJ.changeColumnOrder]:qJ,[fJ.changeMaxWidthComment]:YJ,[fJ.changeIgnoreSaveSettings]:ZJ},$J={changeDatabaseNameAction:gJ,changeZoomLevelAction:vJ,streamZoomLevelAction:bJ,scrollToAction:wJ,streamScrollToAction:EJ,changeShowAction:OJ,changeDatabaseAction:AJ,changeCanvasTypeAction:MJ,changeLanguageAction:PJ,changeTableNameCaseAction:IJ,changeColumnNameCaseAction:RJ,changeBracketTypeAction:BJ,changeRelationshipDataTypeSyncAction:HJ,changeRelationshipOptimizationAction:WJ,changeColumnOrderAction:KJ,changeMaxWidthCommentAction:JJ,changeIgnoreSaveSettingsAction:XJ},eY=e=>e.ui.zIndex,tY=(e,t)=>Math.max(1,...e.map(eY),...t.map(eY))+1,nY=e=>t=>e.y===t.y&&e.x===t.x;function rY(e,t,n){let r=sJ(e,{x:200,y:100}),i=[...t,...n].map(({ui:e})=>e);for(;i.some(nY(r));)r.x+=50,r.y+=50;return r}function iY(){let e=Date.now();return{updateAt:e,createAt:e}}function aY(e,t){return e<t?KF(e,t+1):KF(t,e+1)}function oY(e){return cI(mI(e??``))}function sY(e,t){return XF([...e,t])}function cY(e,t,n){if(!t||t===n)return[n];let r=e.indexOf(t),i=e.indexOf(n);return r===-1?[n]:aY(r,i).map(t=>e[t])}function lY(e,t,n,r){return XF([...t,...cY(e,n,r)])}var uY={[xG.columnName]:!0,[xG.columnDataType]:bG.columnDataType,[xG.columnNotNull]:bG.columnNotNull,[xG.columnUnique]:bG.columnUnique,[xG.columnAutoIncrement]:bG.columnAutoIncrement,[xG.columnDefault]:bG.columnDefault,[xG.columnComment]:bG.columnComment},dY={[xG.columnName]:MK.columnName,[xG.columnDataType]:MK.columnDataType,[xG.columnNotNull]:MK.columnNotNull,[xG.columnUnique]:MK.columnUnique,[xG.columnAutoIncrement]:MK.columnAutoIncrement,[xG.columnDefault]:MK.columnDefault,[xG.columnComment]:MK.columnComment},fY=[MK.tableName,MK.tableComment];function pY({settings:{show:e,columnOrder:t}}){return t.filter(t=>{let n=uY[t];return n===!0||Q(e,n)}).map(e=>dY[e])}function mY({collections:e,editor:{focusTable:t}}){return t?!!J(e).collection(`tableEntities`).selectById(t.tableId)?.columnIds.length:!1}function hY(e){let{editor:{focusTable:t}}=e;if(!t)return!0;let n=pY(e);return n.indexOf(t.focusType)===n.length-1}function gY(e){let{editor:{focusTable:t}}=e;return!t||pY(e).indexOf(t.focusType)===0}function _Y({collections:e,editor:{focusTable:t}}){if(!t?.columnId)return!0;let n=J(e).collection(`tableEntities`).selectById(t.tableId);return!n||n.columnIds.indexOf(t.columnId)===n.columnIds.length-1}function vY({collections:e,editor:{focusTable:t}}){if(!t?.columnId)return!0;let n=J(e).collection(`tableEntities`).selectById(t.tableId);return!n||n.columnIds.indexOf(t.columnId)===0}function yY(e){let t=pY(e);return t[t.length-1]}function bY(e){return pY(e)[0]}function xY(e){let{editor:{focusTable:t}}=e;if(!t)return MK.columnName;let n=pY(e),r=n.indexOf(t.focusType);return hY(e)?n[0]:n[r+1]}function SY(e){let{editor:{focusTable:t}}=e;if(!t)return MK.columnName;let n=pY(e),r=n.indexOf(t.focusType);return gY(e)?n[n.length-1]:n[r-1]}function CY(e,t){let{collections:n,editor:{focusTable:r}}=e;if(!r?.columnId)return null;let i=J(n).collection(`tableEntities`).selectById(r.tableId);if(!i)return null;let a=i.columnIds.indexOf(r.columnId);if(a<=0)return null;let o=null;for(let e=a;e>=0;e--){let n=i.columnIds[e];if(!t.includes(n)){o=n;break}}return o}function wY({settings:{show:e}}){return Q(e,bG.tableComment)?fY:[MK.tableName]}function TY(e){let{editor:{focusTable:t}}=e;if(!t)return!0;let n=wY(e);return n.indexOf(t.focusType)===n.length-1}function EY(e){let{editor:{focusTable:t}}=e;return!t||wY(e).indexOf(t.focusType)===0}var DY=KG(fY);function OY(e){let{editor:{focusTable:t}}=e;if(!t)return MK.tableName;let n=wY(e),r=n.indexOf(t.focusType);return TY(e)?n[0]:n[r+1]}function kY(e){let{editor:{focusTable:t}}=e;if(!t)return MK.tableName;let n=wY(e),r=n.indexOf(t.focusType);return EY(e)?n[n.length-1]:n[r-1]}function AY(e,t){let{collections:n,editor:{focusTable:r}}=e;if(!r)return;let i=J(n).collection(`tableEntities`).selectById(r.tableId);if(i){if(DY(r.focusType)){if(mY(e)){let t=i.columnIds[i.columnIds.length-1];r.focusType=yY(e),r.columnId=t,r.prevSelectColumnId=t,r.selectColumnIds=[t]}}else if(vY(e))r.focusType=MK.tableName,r.columnId=null,r.prevSelectColumnId=null,r.selectColumnIds=[];else if(r.columnId){let e=i.columnIds.indexOf(r.columnId),n=i.columnIds[e-1];r.columnId=n,r.prevSelectColumnId=n,r.selectColumnIds=t.shiftKey&&t.moveKey!==NK.Tab?sY(r.selectColumnIds,n):[n]}}}function jY(e,t){let{collections:n,editor:{focusTable:r}}=e;if(!r)return;let i=J(n).collection(`tableEntities`).selectById(r.tableId);if(i){if(DY(r.focusType)){if(mY(e)){let t=i.columnIds[0];r.focusType=bY(e),r.columnId=t,r.prevSelectColumnId=t,r.selectColumnIds=[t]}}else if(_Y(e))r.focusType=MK.tableName,r.columnId=null,r.prevSelectColumnId=null,r.selectColumnIds=[];else if(r.columnId){let e=i.columnIds.indexOf(r.columnId),n=i.columnIds[e+1];r.columnId=n,r.prevSelectColumnId=n,r.selectColumnIds=t.shiftKey&&t.moveKey!==NK.Tab?sY(r.selectColumnIds,n):[n]}}}function MY(e,t){let{collections:n,editor:{focusTable:r}}=e;if(!r)return;let i=J(n).collection(`tableEntities`).selectById(r.tableId);if(i){if(DY(r.focusType)){if(EY(e)){if(mY(e)){let t=i.columnIds[i.columnIds.length-1];r.focusType=yY(e),r.columnId=t,r.prevSelectColumnId=t,r.selectColumnIds=[t]}else r.focusType=kY(e)}else r.focusType=kY(e)}else if(gY(e)){if(vY(e))r.focusType=Q(e.settings.show,bG.tableComment)?MK.tableComment:MK.tableName,r.columnId=null,r.prevSelectColumnId=null,r.selectColumnIds=[];else if(r.columnId){let n=i.columnIds.indexOf(r.columnId),a=i.columnIds[n-1];r.focusType=yY(e),r.columnId=a,r.prevSelectColumnId=a,r.selectColumnIds=t.shiftKey&&t.moveKey!==NK.Tab?sY(r.selectColumnIds,a):[a]}}else r.focusType=SY(e),!t.shiftKey&&r.columnId&&(r.prevSelectColumnId=r.columnId,r.selectColumnIds=[r.columnId])}}function NY(e,t){let{collections:n,editor:{focusTable:r}}=e;if(!r)return;let i=J(n).collection(`tableEntities`).selectById(r.tableId);if(i){if(DY(r.focusType)){if(TY(e)){if(mY(e)){let t=i.columnIds[0];r.focusType=bY(e),r.columnId=t,r.prevSelectColumnId=t,r.selectColumnIds=[t]}else r.focusType=OY(e)}else r.focusType=OY(e)}else if(hY(e)){if(_Y(e))r.focusType=MK.tableName,r.columnId=null,r.prevSelectColumnId=null,r.selectColumnIds=[];else if(r.columnId){let n=i.columnIds.indexOf(r.columnId),a=i.columnIds[n+1];r.focusType=bY(e),r.columnId=a,r.prevSelectColumnId=a,r.selectColumnIds=t.shiftKey&&t.moveKey!==NK.Tab?sY(r.selectColumnIds,a):[a]}}else r.focusType=xY(e),!t.shiftKey&&r.columnId&&(r.prevSelectColumnId=r.columnId,r.selectColumnIds=[r.columnId])}}var PY=3e4,FY=9e4,IY=3e3,LY=G(Y.changeHasHistory),RY=({editor:e},{payload:{hasRedo:t,hasUndo:n}})=>{e.hasRedo=t,e.hasUndo=n},zY=G(Y.selectAll),BY=({editor:e,doc:t})=>{let n=t.tableIds.reduce((e,t)=>(e[t]=OK.table,e),{});e.selectedMap={...t.memoIds.reduce((e,t)=>(e[t]=OK.memo,e),{}),...n}},VY=G(Y.unselectAll),HY=({editor:e})=>{Object.keys(e.selectedMap).forEach(t=>{Reflect.deleteProperty(e.selectedMap,t)})},UY=G(Y.select),WY=({editor:e},{payload:t})=>{Object.assign(e.selectedMap,t)},GY=G(Y.changeViewport),KY=(e,{payload:{width:t,height:n}})=>{e.editor.viewport.width=t,e.editor.viewport.height=n,e.editor.scrollPullPending&&YY(e)},qY=G(Y.clear),JY=e=>{let{doc:t,collections:n}=_W({});e.doc=t,e.collections=n,e.editor.scrollPullPending=!1,HK(e.editor)};function YY(e){let{settings:t,editor:n}=e;if(!SJ(n.viewport)){n.scrollPullPending=!0;return}let r=CJ(e);t.originX=iI(r.x,4),t.originY=iI(r.y,4),n.scrollPullPending=!1}var XY=G(Y.loadJson),ZY=(e,{payload:{value:t}})=>{let{version:n,settings:r,doc:i,collections:a}=gG(t);TK(r.canvasType)||(r.canvasType=vG.ERD),Object.assign(e.settings,r),e.version=n,e.doc=i,e.collections=a,HK(e.editor),YY(e)},QY=G(Y.initialClear),$Y=e=>{let{doc:t,collections:n}=_W({});e.doc=t,e.collections=n,e.editor.scrollPullPending=!1,HK(e.editor)},eX=G(Y.initialLoadJson),tX=(e,{payload:{value:t}})=>{let{version:n,settings:r,doc:i,collections:a}=gG(t);TK(r.canvasType)||(r.canvasType=vG.ERD),Object.assign(e.settings,r),e.version=n,e.doc=i,e.collections=a,HK(e.editor),YY(e)},nX=G(Y.focusTable),rX=({editor:e,collections:t},{payload:n})=>{let r=J(t).collection(`tableEntities`);if(e.focusTable?.tableId===n.tableId&&n.focusType)e.focusTable.focusType=n.focusType,e.focusTable.columnId=null,e.focusTable.prevSelectColumnId=null,e.focusTable.selectColumnIds=[];else if(n.focusType){let t=r.selectById(n.tableId);if(!t)return;e.focusTable={tableId:t.id,focusType:n.focusType,columnId:null,prevSelectColumnId:null,selectColumnIds:[],edit:!1}}else if(e.focusTable?.tableId!==n.tableId){let t=r.selectById(n.tableId);if(!t)return;e.focusTable={tableId:t.id,focusType:MK.tableName,columnId:null,prevSelectColumnId:null,selectColumnIds:[],edit:!1}}},iX=G(Y.focusColumn),aX=({editor:e,collections:t},{payload:n})=>{let r=J(t).collection(`tableEntities`);if(e.focusTable?.tableId===n.tableId){let t=r.selectById(n.tableId);if(!t)return;let i=e.focusTable;i.columnId=n.columnId,i.focusType=n.focusType,i.selectColumnIds=n.$mod&&n.shiftKey?lY(t.columnIds,i.selectColumnIds,i.prevSelectColumnId,i.columnId):n.shiftKey?cY(t.columnIds,i.prevSelectColumnId,i.columnId):n.$mod?sY(i.selectColumnIds,n.columnId):[n.columnId],i.prevSelectColumnId=n.columnId}else{let t=r.selectById(n.tableId);if(!t)return;e.focusTable={tableId:t.id,focusType:n.focusType,columnId:n.columnId,prevSelectColumnId:n.columnId,selectColumnIds:[n.columnId],edit:!1}}},oX=G(Y.focusTableEnd),sX=({editor:e})=>{e.focusTable=null},cX=G(Y.focusMoveTable),lX=(e,{payload:t})=>{let{editor:{focusTable:n}}=e;if(n)switch(n.edit=!1,t.moveKey){case NK.ArrowUp:AY(e,t);break;case NK.ArrowDown:jY(e,t);break;case NK.ArrowLeft:MY(e,t);break;case NK.ArrowRight:NY(e,t);break;case NK.Tab:t.shiftKey?MY(e,t):NY(e,t)}},uX=G(Y.editTable),dX=({editor:{focusTable:e}})=>{e&&(e.edit=!0)},fX=G(Y.editTableEnd),pX=({editor:{focusTable:e}})=>{e&&(e.edit=!1)},mX=G(Y.editMemo),hX=({editor:e},{payload:{id:t}})=>{e.editMemoId=t},gX=G(Y.editMemoEnd),_X=({editor:e})=>{e.editMemoId=null},vX=G(Y.scrollMemo),yX=({editor:e},{payload:{id:t,scrollTop:n}})=>{e.memoScrollTopMap[t]=Number.isFinite(n)?Math.max(0,n):0},bX=G(Y.selectAllColumn),xX=({collections:e,editor:{focusTable:t}})=>{if(!t)return;let n=J(e).collection(`tableEntities`).selectById(t.tableId);n&&(t.selectColumnIds=[...n.columnIds])},SX=G(Y.drawStartRelationship),CX=({editor:e},{payload:{relationshipType:t}})=>{e.drawRelationship={relationshipType:t,start:null,end:{x:0,y:0}}},wX=G(Y.drawStartAddRelationship),TX=({editor:{drawRelationship:e},collections:t},{payload:{tableId:n}})=>{if(!e)return;let r=J(t).collection(`tableEntities`).selectById(n);r&&(e.start={tableId:n,x:r.ui.x,y:r.ui.y})},EX=G(Y.drawEndRelationship),DX=({editor:e})=>{e.drawRelationship=null},OX=G(Y.drawRelationship),kX=({editor:{drawRelationship:e},settings:t},{payload:{x:n,y:r}})=>{if(!e?.start)return;let i=sJ(t,{x:n,y:r});e.end.x=i.x,e.end.y=i.y},AX=G(Y.hoverColumnMap),jX=({editor:e},{payload:{columnIds:t}})=>{Object.keys(e.hoverColumnMap).forEach(t=>{Reflect.deleteProperty(e.hoverColumnMap,t)});for(let n of t)e.hoverColumnMap[n]=!0},MX=G(Y.hoverRelationshipMap),NX=({editor:e},{payload:{relationshipIds:t}})=>{Object.keys(e.hoverRelationshipMap).forEach(t=>{Reflect.deleteProperty(e.hoverRelationshipMap,t)});for(let n of t)e.hoverRelationshipMap[n]=!0},PX=G(Y.changeOpenMap),FX=({editor:e},{payload:t})=>{Object.assign(e.openMap,t)},IX=G(Y.changeHandTool),LX=({editor:e},{payload:{value:t}})=>{e.handTool=t,t&&(e.drawRelationship=null)},RX=G(Y.changeZenMode),zX=({editor:e},{payload:{value:t}})=>{e.zenMode=t},BX=G(Y.dragstartColumn),VX=({editor:e},{payload:t})=>{e.draggableColumn=t,t.columnIds.forEach(t=>{e.draggingColumnMap[t]=!0})},HX=G(Y.dragendColumn),UX=({editor:e})=>{e.draggableColumn=null,Object.keys(e.draggingColumnMap).forEach(t=>{Reflect.deleteProperty(e.draggingColumnMap,t)})},WX=G(Y.sharedMouseTracker),GX=({editor:e},{payload:t,tags:n,meta:r})=>{if(JF(n)||!Q(n,pq.shared)||!V(r?.editorId)||e.id===r.editorId)return;let i=e.sharedMouseTrackerMap[r.editorId],a=!V(r.nickname)||aI(r.nickname.trim())?`user`:r.nickname.trim();i?(i.x=t.x,i.y=t.y,i.nickname=a,clearTimeout(i.timeoutId),i.timeoutId=setTimeout(()=>{Reflect.deleteProperty(e.sharedMouseTrackerMap,r.editorId)},PY)):e.sharedMouseTrackerMap[r.editorId]={...t,id:r.editorId,nickname:a,timeoutId:setTimeout(()=>{Reflect.deleteProperty(e.sharedMouseTrackerMap,r.editorId)},PY)}},KX=G(Y.sharedFocusTracker),qX=({editor:e},{payload:{focus:t},tags:n,meta:r})=>{if(JF(n)||!Q(n,pq.shared)||!V(r?.editorId)||e.id===r.editorId)return;let i=e.sharedFocusTrackerMap[r.editorId];if(!t){i&&(clearTimeout(i.timeoutId),Reflect.deleteProperty(e.sharedFocusTrackerMap,r.editorId));return}i?(i.tableId=t.tableId,i.columnId=t.columnId,i.focusType=t.focusType,clearTimeout(i.timeoutId),i.timeoutId=setTimeout(()=>{Reflect.deleteProperty(e.sharedFocusTrackerMap,r.editorId)},FY)):e.sharedFocusTrackerMap[r.editorId]={...t,id:r.editorId,timeoutId:setTimeout(()=>{Reflect.deleteProperty(e.sharedFocusTrackerMap,r.editorId)},FY)}},JX=G(Y.sharedSelectionTracker),YX=({editor:e},{payload:{selectedIds:t},tags:n,meta:r})=>{if(JF(n)||!Q(n,pq.shared)||!V(r?.editorId)||e.id===r.editorId)return;let i=e.sharedSelectionTrackerMap[r.editorId];if(!t.length){i&&(clearTimeout(i.timeoutId),Reflect.deleteProperty(e.sharedSelectionTrackerMap,r.editorId));return}i?(i.selectedIds=t,clearTimeout(i.timeoutId),i.timeoutId=setTimeout(()=>{Reflect.deleteProperty(e.sharedSelectionTrackerMap,r.editorId)},FY)):e.sharedSelectionTrackerMap[r.editorId]={id:r.editorId,selectedIds:t,timeoutId:setTimeout(()=>{Reflect.deleteProperty(e.sharedSelectionTrackerMap,r.editorId)},FY)}},XX=G(Y.sharedDragSelectTracker),ZX=({editor:e},{payload:{rect:t},tags:n,meta:r})=>{if(JF(n)||!Q(n,pq.shared)||!V(r?.editorId)||e.id===r.editorId)return;let i=e.sharedDragSelectTrackerMap[r.editorId];if(!t){i&&(clearTimeout(i.timeoutId),Reflect.deleteProperty(e.sharedDragSelectTrackerMap,r.editorId));return}i?(i.x=t.x,i.y=t.y,i.w=t.w,i.h=t.h,clearTimeout(i.timeoutId),i.timeoutId=setTimeout(()=>{Reflect.deleteProperty(e.sharedDragSelectTrackerMap,r.editorId)},IY)):e.sharedDragSelectTrackerMap[r.editorId]={...t,id:r.editorId,timeoutId:setTimeout(()=>{Reflect.deleteProperty(e.sharedDragSelectTrackerMap,r.editorId)},IY)}},QX=G(Y.dragSelectRect),$X=({editor:e},{payload:{rect:t}})=>{e.dragSelect=t},eZ=G(Y.validationIds),tZ=({doc:e,collections:t})=>{let n=J(t).collection(`tableEntities`),r=J(t).collection(`tableColumnEntities`),i=J(t).collection(`indexEntities`),a=J(t).collection(`indexColumnEntities`),o=J(t).collection(`relationshipEntities`),s=J(t).collection(`memoEntities`),c=e.tableIds.filter(e=>!n.selectById(e)),l=e.relationshipIds.filter(e=>!o.selectById(e)),u=e.indexIds.filter(e=>!i.selectById(e)),d=e.memoIds.filter(e=>!s.selectById(e));e.tableIds=e.tableIds.filter(e=>!c.includes(e)),e.relationshipIds=e.relationshipIds.filter(e=>!l.includes(e)),e.indexIds=e.indexIds.filter(e=>!u.includes(e)),e.memoIds=e.memoIds.filter(e=>!d.includes(e)),n.selectAll().forEach(e=>{let t=e.columnIds.filter(e=>!r.selectById(e)),n=e.seqColumnIds.filter(e=>!r.selectById(e));e.columnIds=e.columnIds.filter(e=>!t.includes(e)),e.seqColumnIds=e.seqColumnIds.filter(e=>!n.includes(e))}),i.selectAll().forEach(e=>{let t=e.indexColumnIds.filter(e=>!a.selectById(e)),n=e.seqIndexColumnIds.filter(e=>!a.selectById(e));e.indexColumnIds=e.indexColumnIds.filter(e=>!t.includes(e)),e.seqIndexColumnIds=e.seqIndexColumnIds.filter(e=>!n.includes(e))})},nZ=G(Y.getLWW),rZ=$P,iZ=G(Y.mergeLWW),aZ=({lww:e},{payload:{lww:t}})=>{Object.entries(t).forEach(([t,[n,r,i,a]])=>{bW(e,r,t,n,$P),xW(e,i,t,n,$P),Object.entries(a).forEach(([r,i])=>{SW(e,i,t,n,r,$P)})})},oZ={[Y.changeHasHistory]:RY,[Y.selectAll]:BY,[Y.unselectAll]:HY,[Y.select]:WY,[Y.changeViewport]:KY,[Y.clear]:JY,[Y.loadJson]:ZY,[Y.initialClear]:$Y,[Y.initialLoadJson]:tX,[Y.focusTable]:rX,[Y.focusColumn]:aX,[Y.focusTableEnd]:sX,[Y.focusMoveTable]:lX,[Y.editTable]:dX,[Y.editTableEnd]:pX,[Y.editMemo]:hX,[Y.editMemoEnd]:_X,[Y.scrollMemo]:yX,[Y.selectAllColumn]:xX,[Y.drawStartRelationship]:CX,[Y.drawStartAddRelationship]:TX,[Y.drawEndRelationship]:DX,[Y.drawRelationship]:kX,[Y.hoverColumnMap]:jX,[Y.hoverRelationshipMap]:NX,[Y.changeOpenMap]:FX,[Y.changeHandTool]:LX,[Y.changeZenMode]:zX,[Y.dragstartColumn]:VX,[Y.dragendColumn]:UX,[Y.sharedMouseTracker]:GX,[Y.sharedFocusTracker]:qX,[Y.sharedSelectionTracker]:YX,[Y.sharedDragSelectTracker]:ZX,[Y.dragSelectRect]:$X,[Y.validationIds]:tZ,[Y.getLWW]:rZ,[Y.mergeLWW]:aZ,...dq},sZ={changeHasHistoryAction:LY,selectAllAction:zY,unselectAllAction:VY,selectAction:UY,changeViewportAction:GY,clearAction:qY,loadJsonAction:XY,initialClearAction:QY,initialLoadJsonAction:eX,focusTableAction:nX,focusColumnAction:iX,focusTableEndAction:oX,focusMoveTableAction:cX,editTableAction:uX,editTableEndAction:fX,editMemoAction:mX,editMemoEndAction:gX,scrollMemoAction:vX,selectAllColumnAction:bX,drawStartRelationshipAction:SX,drawStartAddRelationshipAction:wX,drawEndRelationshipAction:EX,drawRelationshipAction:OX,hoverColumnMapAction:AX,hoverRelationshipMapAction:MX,changeOpenMapAction:PX,changeHandToolAction:IX,changeZenModeAction:RX,dragstartColumnAction:BX,dragendColumnAction:HX,sharedMouseTrackerAction:WX,sharedFocusTrackerAction:KX,sharedSelectionTrackerAction:JX,sharedDragSelectTrackerAction:XX,dragSelectRectAction:QX,validationIdsAction:eZ,getLWWAction:nZ,mergeLWWAction:iZ,...fq},cZ=(e,t,n)=>{e.push(qY(),XY({value:_G(n)}))},lZ=(e,t,n)=>{e.push(XY({value:_G(n)}))},uZ={[Y.loadJson]:cZ,[Y.clear]:lZ},dZ={addIndex:`index.add`,removeIndex:`index.remove`,changeIndexName:`index.changeName`,changeIndexUnique:`index.changeUnique`},fZ=e=>(0,OH.default)({id:xI(),name:``,tableId:``,indexColumnIds:[],seqIndexColumnIds:[],unique:!1,meta:iY()},e??{}),pZ=G(dZ.addIndex),mZ=({doc:e,collections:t,lww:n},{payload:{id:r,tableId:i},version:a},{clock:o})=>{let s=a??o.getVersion();J(t).collection(`indexEntities`).addOne(fZ({id:r,tableId:i})).addOperator(n,s,r,()=>{KG(e.indexIds)(r)||e.indexIds.push(r)})},hZ=G(dZ.removeIndex),gZ=({doc:e,collections:t,lww:n},{payload:{id:r},version:i},{clock:a})=>{let o=i??a.getVersion();J(t).collection(`indexEntities`).removeOperator(n,o,r,()=>{let t=e.indexIds.indexOf(r);t!==-1&&e.indexIds.splice(t,1)})},_Z=G(dZ.changeIndexName),vZ=({collections:e,lww:t},{payload:{id:n,tableId:r,value:i},version:a},{clock:o})=>{let s=a??o.getVersion(),c=J(e).collection(`indexEntities`);c.getOrCreate(n,e=>fZ({id:e,tableId:r})),c.replaceOperator(t,s,n,`name`,()=>{c.updateOne(n,e=>{e.name=i})})},yZ=G(dZ.changeIndexUnique),bZ=({collections:e,lww:t},{payload:{id:n,tableId:r,value:i},version:a},{clock:o})=>{let s=a??o.getVersion(),c=J(e).collection(`indexEntities`);c.getOrCreate(n,e=>fZ({id:e,tableId:r})),c.replaceOperator(t,s,n,`unique`,()=>{c.updateOne(n,e=>{e.unique=i})})},xZ={[dZ.addIndex]:mZ,[dZ.removeIndex]:gZ,[dZ.changeIndexName]:vZ,[dZ.changeIndexUnique]:bZ},SZ={addIndexAction:pZ,removeIndexAction:hZ,changeIndexNameAction:_Z,changeIndexUniqueAction:yZ},CZ=(e,{payload:{id:t}})=>{e.push(hZ({id:t}))},wZ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`indexEntities`).selectById(t);r&&e.push(pZ({id:t,tableId:r.tableId}))},TZ=(e,{payload:{id:t,tableId:n}},{collections:r})=>{let i=J(r).collection(`indexEntities`).selectById(t);i&&e.push(_Z({id:t,tableId:n,value:i.name}))},EZ=(e,{payload:{id:t,tableId:n,value:r}},{collections:i})=>{J(i).collection(`indexEntities`).selectById(t)&&e.push(yZ({id:t,tableId:n,value:!r}))},DZ={[dZ.addIndex]:CZ,[dZ.removeIndex]:wZ,[dZ.changeIndexName]:TZ,[dZ.changeIndexUnique]:EZ},OZ={addIndexColumn:`indexColumn.add`,removeIndexColumn:`indexColumn.remove`,moveIndexColumn:`indexColumn.move`,changeIndexColumnOrderType:`indexColumn.changeOrderType`},kZ=e=>(0,OH.default)({id:xI(),indexId:``,columnId:``,orderType:PG.ASC,meta:iY()},e??{});function AZ(e,t,n){if(KG(t)(n)){let r=t.reduce((e,t,n)=>(e[t]=n,e),{});e.push(n),e.sort((e,t)=>{let n=r[e],i=r[t];return n===void 0?1:i===void 0?-1:n-i})}else e.push(n),t.push(n)}var jZ=G(OZ.addIndexColumn),MZ=({collections:e,lww:t},{payload:{id:n,indexId:r,tableId:i,columnId:a},version:o},{clock:s})=>{let c=o??s.getVersion(),l=J(e).collection(`indexEntities`),u=l.getOrCreate(r,e=>fZ({id:e,tableId:i}));J(e).collection(`indexColumnEntities`).addOne(kZ({id:n,indexId:r,columnId:a})).addOperator(t,c,n,()=>{KG(u.indexColumnIds)(n)||l.updateOne(r,e=>{AZ(e.indexColumnIds,e.seqIndexColumnIds,n)})})},NZ=G(OZ.removeIndexColumn),PZ=({collections:e,lww:t},{payload:{id:n,indexId:r,tableId:i},version:a},{clock:o})=>{let s=a??o.getVersion(),c=J(e).collection(`indexEntities`),l=c.getOrCreate(r,e=>fZ({id:e,tableId:i}));J(e).collection(`indexColumnEntities`).removeOperator(t,s,n,()=>{let e=l.indexColumnIds.indexOf(n);e!==-1&&c.updateOne(r,t=>{t.indexColumnIds.splice(e,1)})})},FZ=G(OZ.moveIndexColumn),IZ=({collections:e},{payload:{id:t,indexId:n,tableId:r,targetId:i}})=>{if(t===i)return;let a=J(e).collection(`indexEntities`),o=a.getOrCreate(n,e=>fZ({id:e,tableId:r})),s=o.indexColumnIds.indexOf(t);if(s===-1)return;let c=o.indexColumnIds.indexOf(i);c!==-1&&a.updateOne(n,e=>{e.indexColumnIds.splice(s,1),e.indexColumnIds.splice(c,0,t);let n=e.seqIndexColumnIds.indexOf(t),r=e.seqIndexColumnIds.indexOf(i);n!==-1&&r!==-1&&(e.seqIndexColumnIds.splice(n,1),e.seqIndexColumnIds.splice(r,0,t))})},LZ=G(OZ.changeIndexColumnOrderType),RZ=({collections:e,lww:t},{payload:{id:n,indexId:r,columnId:i,value:a},version:o},{clock:s})=>{let c=o??s.getVersion(),l=J(e).collection(`indexColumnEntities`);l.getOrCreate(n,e=>kZ({id:e,indexId:r,columnId:i})),l.replaceOperator(t,c,n,`orderType`,()=>{l.updateOne(n,e=>{e.orderType=a})})},zZ={[OZ.addIndexColumn]:MZ,[OZ.removeIndexColumn]:PZ,[OZ.moveIndexColumn]:IZ,[OZ.changeIndexColumnOrderType]:RZ},BZ={addIndexColumnAction:jZ,removeIndexColumnAction:NZ,moveIndexColumnAction:FZ,changeIndexColumnOrderTypeAction:LZ},VZ=(e,{payload:{id:t,indexId:n,tableId:r}})=>{e.push(NZ({id:t,indexId:n,tableId:r}))},HZ=(e,{payload:{id:t,indexId:n,tableId:r}},{collections:i})=>{let a=J(i).collection(`indexColumnEntities`).selectById(t);a&&e.push(jZ({id:t,indexId:n,tableId:r,columnId:a.columnId}))},UZ=(e,{payload:{id:t,indexId:n,tableId:r,targetId:i}},{collections:a})=>{let o=J(a).collection(`indexEntities`).selectById(n);if(!o)return;let s=o.indexColumnIds.indexOf(t);if(s===-1)return;let c=o.indexColumnIds.indexOf(i);if(c===-1)return;let l=s<c?s+1:s-1,u=o.indexColumnIds[l];e.push(FZ({indexId:n,tableId:r,id:t,targetId:u}))},WZ=(e,{payload:{id:t,indexId:n,columnId:r}},{collections:i})=>{let a=J(i).collection(`indexColumnEntities`).selectById(t);a&&e.push(LZ({id:t,indexId:n,columnId:r,value:a.orderType}))},GZ={[OZ.addIndexColumn]:VZ,[OZ.removeIndexColumn]:HZ,[OZ.moveIndexColumn]:UZ,[OZ.changeIndexColumnOrderType]:WZ},KZ={addMemo:`memo.add`,moveMemo:`memo.move`,moveToMemo:`memo.moveTo`,removeMemo:`memo.remove`,changeMemoValue:`memo.changeValue`,changeMemoColor:`memo.changeColor`,resizeMemo:`memo.resize`,changeZIndex:`memo.changeZIndex`},qZ=e=>(0,OH.default)({id:xI(),value:``,ui:{x:200,y:100,zIndex:2,width:116,height:100,color:``},meta:iY()},e??{}),JZ=G(KZ.addMemo),YZ=({doc:e,collections:t,lww:n},{payload:{id:r,ui:i},version:a},{clock:o})=>{let s=a??o.getVersion();J(t).collection(`memoEntities`).addOne(qZ({id:r,ui:i})).addOperator(n,s,r,()=>{KG(e.memoIds)(r)||e.memoIds.push(r)})},XZ=G(KZ.moveMemo),ZZ=({collections:e},{payload:{ids:t,movementX:n,movementY:r}})=>{let i=J(e).collection(`memoEntities`);for(let e of t)i.getOrCreate(e,e=>qZ({id:e}));i.updateMany(t,e=>{e.ui.x=iI(e.ui.x+n,4),e.ui.y=iI(e.ui.y+r,4)})},QZ=G(KZ.moveToMemo),$Z=({collections:e},{payload:{id:t,x:n,y:r}})=>{let i=J(e).collection(`memoEntities`);i.getOrCreate(t,e=>qZ({id:e})),i.updateOne(t,e=>{e.ui.x=n,e.ui.y=r})},eQ=G(KZ.removeMemo),tQ=({doc:e,collections:t,lww:n},{payload:{id:r},version:i},{clock:a})=>{let o=i??a.getVersion();J(t).collection(`memoEntities`).removeOperator(n,o,r,()=>{let t=e.memoIds.indexOf(r);t!==-1&&e.memoIds.splice(t,1)})},nQ=G(KZ.changeMemoValue),rQ=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`memoEntities`);s.getOrCreate(n,e=>qZ({id:e})),s.replaceOperator(t,o,n,`value`,()=>{s.updateOne(n,e=>{e.value=r})})},iQ=G(KZ.changeMemoColor),aQ=({collections:e,lww:t},{payload:{id:n,color:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`memoEntities`);s.getOrCreate(n,e=>qZ({id:e})),s.replaceOperator(t,o,n,`ui.color`,()=>{s.updateOne(n,e=>{e.ui.color=r})})},oQ=G(KZ.resizeMemo),sQ=({collections:e},{payload:{id:t,x:n,y:r,width:i,height:a}})=>{let o=J(e).collection(`memoEntities`);o.getOrCreate(t,e=>qZ({id:e})),o.updateOne(t,e=>{e.ui.x=n,e.ui.y=r,e.ui.width=i,e.ui.height=a})},cQ=G(KZ.changeZIndex),lQ=({collections:e},{payload:{id:t,zIndex:n}})=>{let r=J(e).collection(`memoEntities`);r.getOrCreate(t,e=>qZ({id:e})),r.updateOne(t,e=>{e.ui.zIndex=n})},uQ={[KZ.addMemo]:YZ,[KZ.moveMemo]:ZZ,[KZ.moveToMemo]:$Z,[KZ.removeMemo]:tQ,[KZ.changeMemoValue]:rQ,[KZ.changeMemoColor]:aQ,[KZ.resizeMemo]:sQ,[KZ.changeZIndex]:lQ},dQ={addMemoAction:JZ,moveMemoAction:XZ,moveToMemoAction:QZ,removeMemoAction:eQ,changeMemoValueAction:nQ,changeMemoColorAction:iQ,resizeMemoAction:oQ,changeZIndexAction:cQ},fQ=20,pQ=(e,{payload:{id:t}})=>{e.push(eQ({id:t}))},mQ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`memoEntities`).selectById(t);r&&e.push(JZ({id:r.id,ui:dI(r.ui,[`x`,`y`,`zIndex`])}))},hQ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`memoEntities`).selectById(t);r&&e.push(nQ({id:t,value:r.value}))},gQ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`memoEntities`).selectById(t);r&&e.push(QZ({id:t,x:r.ui.x,y:r.ui.y}))},_Q={[KZ.addMemo]:pQ,[KZ.removeMemo]:mQ,[KZ.changeMemoValue]:hQ,[KZ.moveToMemo]:gQ},vQ=(e,t,n)=>{let r=n.filter(e=>e.type===XZ.type);if(!r.length)return;let i=YF(r,e=>e.payload.ids.join(`,`));for(let[,n]of Object.entries(i)){let{payload:{ids:r}}=qF(n),{x:i,y:a}=n.reduce((e,{payload:{movementX:t,movementY:n}})=>(e.x+=t,e.y+=n,e),{x:0,y:0});Math.abs(i)+Math.abs(a)<fQ||(e.push(XZ({ids:r,movementX:-1*i,movementY:-1*a})),t.push(XZ({ids:r,movementX:i,movementY:a})))}},yQ=(e,t,n)=>{let r=n.filter(({type:e})=>e===iQ.type);if(!r.length)return;let i=YF(r,e=>e.payload.id);for(let[n,r]of Object.entries(i)){let i=qF(r),a=GF(r);e.push(iQ({id:n,color:i.payload.prevColor,prevColor:a.payload.color})),t.push(iQ({id:n,color:a.payload.color,prevColor:i.payload.prevColor}))}},bQ=(e,t,n)=>{let r=n.filter(e=>e.type===oQ.type);if(!r.length)return;let i=YF(r,e=>e.payload.id);for(let[,n]of Object.entries(i)){if(n.length<2)continue;let r=qF(n),i=GF(n);e.push(r),t.push(i)}},xQ={[KZ.moveMemo]:vQ,[KZ.changeMemoColor]:yQ,[KZ.resizeMemo]:bQ},SQ={addRelationship:`relationship.add`,removeRelationship:`relationship.remove`,changeRelationshipType:`relationship.changeType`},CQ=e=>(0,OH.default)({id:xI(),identification:!1,relationshipType:AG.ZeroN,startRelationshipType:jG.dash,start:{tableId:``,columnIds:[],x:0,y:0,direction:MG.bottom},end:{tableId:``,columnIds:[],x:0,y:0,direction:MG.bottom},meta:iY()},e??{}),wQ=G(SQ.addRelationship),TQ=({doc:e,collections:t,lww:n},{payload:{id:r,relationshipType:i,start:a,end:o},version:s},{clock:c})=>{let l=s??c.getVersion();J(t).collection(`relationshipEntities`).addOne(CQ({id:r,relationshipType:i,start:{tableId:a.tableId,columnIds:a.columnIds},end:{tableId:o.tableId,columnIds:o.columnIds}})).addOperator(n,l,r,()=>{KG(e.relationshipIds)(r)||e.relationshipIds.push(r)})},EQ=G(SQ.removeRelationship),DQ=({doc:e,collections:t,lww:n},{payload:{id:r},version:i},{clock:a})=>{let o=i??a.getVersion();J(t).collection(`relationshipEntities`).removeOperator(n,o,r,()=>{let t=e.relationshipIds.indexOf(r);t!==-1&&e.relationshipIds.splice(t,1)})},OQ=G(SQ.changeRelationshipType),kQ=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`relationshipEntities`);s.replaceOperator(t,o,n,`relationshipType`,()=>{s.updateOne(n,e=>{e.relationshipType=r})})},AQ={[SQ.addRelationship]:TQ,[SQ.removeRelationship]:DQ,[SQ.changeRelationshipType]:kQ},jQ={addRelationshipAction:wQ,removeRelationshipAction:EQ,changeRelationshipTypeAction:OQ},MQ=(e,{payload:{id:t}})=>{e.push(EQ({id:t}))},NQ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`relationshipEntities`).selectById(t);r&&e.push(wQ({id:r.id,relationshipType:r.relationshipType,start:dI(r.start,[`tableId`,`columnIds`]),end:dI(r.end,[`tableId`,`columnIds`])}))},PQ=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`relationshipEntities`).selectById(t);r&&e.push(OQ({id:t,value:r.relationshipType}))},FQ={[SQ.addRelationship]:MQ,[SQ.removeRelationship]:NQ,[SQ.changeRelationshipType]:PQ},IQ=20,LQ=(e,t,{settings:n})=>{e.push(wJ({originX:n.originX,originY:n.originY}))},RQ=(e,{payload:{show:t,value:n}})=>{e.push(OJ({show:t,value:!n}))},zQ=(e,t,{settings:n})=>{e.push(vJ({value:n.zoomLevel}))},BQ={[fJ.scrollTo]:LQ,[fJ.changeShow]:RQ,[fJ.changeZoomLevel]:zQ},VQ=(e,t,n)=>{let r=n.filter(e=>e.type===EJ.type);if(!r.length)return;let{x:i,y:a}=r.reduce((e,{payload:{movementX:t,movementY:n}})=>(e.x+=t,e.y+=n,e),{x:0,y:0});Math.abs(i)+Math.abs(a)<IQ||(e.push(EJ({movementX:-1*i,movementY:-1*a})),t.push(EJ({movementX:i,movementY:a})))},HQ=(e,t,n)=>{let r=n.filter(e=>e.type===bJ.type);if(!r.length)return;let i=r.reduce((e,{payload:{value:t}})=>e+t,0);e.push(bJ({value:-1*i})),t.push(bJ({value:i}))},UQ={[fJ.streamScrollTo]:VQ,[fJ.streamZoomLevel]:HQ},WQ={addTable:`table.add`,moveTable:`table.move`,moveToTable:`table.moveTo`,removeTable:`table.remove`,changeTableName:`table.changeName`,changeTableComment:`table.changeComment`,changeTableColor:`table.changeColor`,changeZIndex:`table.changeZIndex`,sortTable:`table.sort`},GQ=e=>(0,OH.default)({id:xI(),name:``,comment:``,columnIds:[],seqColumnIds:[],ui:{x:200,y:100,zIndex:2,widthName:60,widthComment:60,color:``},meta:iY()},e??{}),KQ=G(WQ.addTable),qQ=({doc:e,collections:t,lww:n},{payload:{id:r,ui:i},version:a},{clock:o})=>{let s=a??o.getVersion();J(t).collection(`tableEntities`).addOne(GQ({id:r,ui:i})).addOperator(n,s,r,()=>{KG(e.tableIds)(r)||e.tableIds.push(r)})},JQ=G(WQ.moveTable),YQ=({collections:e},{payload:{ids:t,movementX:n,movementY:r}})=>{let i=J(e).collection(`tableEntities`);for(let e of t)i.getOrCreate(e,e=>GQ({id:e}));i.updateMany(t,e=>{e.ui.x=iI(e.ui.x+n,4),e.ui.y=iI(e.ui.y+r,4)})},XQ=G(WQ.moveToTable),ZQ=({collections:e},{payload:{id:t,x:n,y:r}})=>{let i=J(e).collection(`tableEntities`);i.getOrCreate(t,e=>GQ({id:e})),i.updateOne(t,e=>{e.ui.x=n,e.ui.y=r})},QQ=G(WQ.removeTable),$Q=({doc:e,collections:t,lww:n},{payload:{id:r},version:i},{clock:a})=>{let o=i??a.getVersion();J(t).collection(`tableEntities`).removeOperator(n,o,r,()=>{let t=e.tableIds.indexOf(r);t!==-1&&e.tableIds.splice(t,1)})},e$=G(WQ.changeTableName),t$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableEntities`);c.getOrCreate(n,e=>GQ({id:e})),c.replaceOperator(t,s,n,`name`,()=>{c.updateOne(n,e=>{e.name=r,e.ui.widthName=EK(a(r))})})},n$=G(WQ.changeTableComment),r$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableEntities`);c.getOrCreate(n,e=>GQ({id:e})),c.replaceOperator(t,s,n,`comment`,()=>{c.updateOne(n,e=>{e.comment=r,e.ui.widthComment=EK(a(r))})})},i$=G(WQ.changeTableColor),a$=({collections:e,lww:t},{payload:{id:n,color:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableEntities`);s.getOrCreate(n,e=>GQ({id:e})),s.replaceOperator(t,o,n,`ui.color`,()=>{s.updateOne(n,e=>{e.ui.color=r})})},o$=G(WQ.changeZIndex),s$=({collections:e},{payload:{id:t,zIndex:n}})=>{let r=J(e).collection(`tableEntities`);r.getOrCreate(t,e=>GQ({id:e})),r.updateOne(t,e=>{e.ui.zIndex=n})},c$=G(WQ.sortTable),l$=e=>{let{doc:t,settings:n,collections:r}=e,i=n.width,a=J(r).collection(`tableEntities`).selectByIds(t.tableIds);a.sort((e,t)=>e.columnIds.length-t.columnIds.length);let o=50,s=50,c=50;a.forEach(t=>{let n=Oq(t,e).width+80,r=Rq(t)+80;o+n>i&&(s+=c,c=0,o=50),c<r&&(c=r),t.ui.y=s,t.ui.x=o,o+=n})},u$={[WQ.addTable]:qQ,[WQ.moveTable]:YQ,[WQ.moveToTable]:ZQ,[WQ.removeTable]:$Q,[WQ.changeTableName]:t$,[WQ.changeTableComment]:r$,[WQ.changeTableColor]:a$,[WQ.changeZIndex]:s$,[WQ.sortTable]:l$},d$={addTableAction:KQ,moveTableAction:JQ,moveToTableAction:XQ,removeTableAction:QQ,changeTableNameAction:e$,changeTableCommentAction:n$,changeTableColorAction:i$,changeZIndexAction:o$,sortTableAction:c$},f$=20,p$=(e,{payload:{id:t}})=>{e.push(QQ({id:t}))},m$=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`tableEntities`).selectById(t);r&&e.push(KQ({id:r.id,ui:dI(r.ui,[`x`,`y`,`zIndex`])}))},h$=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`tableEntities`).selectById(t);r&&e.push(e$({id:t,value:r.name}))},g$=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`tableEntities`).selectById(t);r&&e.push(n$({id:t,value:r.comment}))},_$=(e,{payload:{id:t}},{collections:n})=>{let r=J(n).collection(`tableEntities`).selectById(t);r&&e.push(XQ({id:t,x:r.ui.x,y:r.ui.y}))},v$=()=>{},y$={[WQ.addTable]:p$,[WQ.removeTable]:m$,[WQ.changeTableName]:h$,[WQ.changeTableComment]:g$,[WQ.moveToTable]:_$,[WQ.sortTable]:v$},b$=(e,t,n)=>{let r=n.filter(e=>e.type===JQ.type);if(!r.length)return;let i=YF(r,e=>e.payload.ids.join(`,`));for(let[,n]of Object.entries(i)){let{payload:{ids:r}}=qF(n),{x:i,y:a}=n.reduce((e,{payload:{movementX:t,movementY:n}})=>(e.x+=t,e.y+=n,e),{x:0,y:0});Math.abs(i)+Math.abs(a)<f$||(e.push(JQ({ids:r,movementX:-1*i,movementY:-1*a})),t.push(JQ({ids:r,movementX:i,movementY:a})))}},x$=(e,t,n)=>{let r=n.filter(({type:e})=>e===i$.type);if(!r.length)return;let i=YF(r,e=>e.payload.id);for(let[n,r]of Object.entries(i)){let i=qF(r),a=GF(r);e.push(i$({id:n,color:i.payload.prevColor,prevColor:a.payload.color})),t.push(i$({id:n,color:a.payload.color,prevColor:i.payload.prevColor}))}},S$={[WQ.moveTable]:b$,[WQ.changeTableColor]:x$},C$={addColumn:`column.add`,removeColumn:`column.remove`,changeColumnName:`column.changeName`,changeColumnComment:`column.changeComment`,changeColumnDataType:`column.changeDataType`,changeColumnDefault:`column.changeDefault`,changeColumnAutoIncrement:`column.changeAutoIncrement`,changeColumnPrimaryKey:`column.changePrimaryKey`,changeColumnUnique:`column.changeUnique`,changeColumnNotNull:`column.changeNotNull`,moveColumn:`column.move`},w$=e=>(0,OH.default)({id:xI(),tableId:``,name:``,comment:``,dataType:``,default:``,options:0,ui:{keys:0,widthName:60,widthComment:60,widthDataType:60,widthDefault:60},meta:iY()},e??{}),T$=G(C$.addColumn),E$=({collections:e,lww:t},{payload:{id:n,tableId:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableEntities`),c=s.getOrCreate(r,e=>GQ({id:e}));J(e).collection(`tableColumnEntities`).addOne(w$({id:n,tableId:r})).addOperator(t,o,n,()=>{KG(c.columnIds)(n)||s.updateOne(r,e=>{AZ(e.columnIds,e.seqColumnIds,n)})})},D$=G(C$.removeColumn),O$=({collections:e,lww:t},{payload:{id:n,tableId:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableEntities`),c=s.getOrCreate(r,e=>GQ({id:e}));J(e).collection(`tableColumnEntities`).removeOperator(t,o,n,()=>{let e=c.columnIds.indexOf(n);e!==-1&&s.updateOne(r,t=>{t.columnIds.splice(e,1)})})},k$=G(C$.changeColumnName),A$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableColumnEntities`);c.getOrCreate(n,e=>w$({id:e})),c.replaceOperator(t,s,n,`name`,()=>{c.updateOne(n,e=>{e.name=r,e.ui.widthName=EK(a(r))})})},j$=G(C$.changeColumnComment),M$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableColumnEntities`);c.getOrCreate(n,e=>w$({id:e})),c.replaceOperator(t,s,n,`comment`,()=>{c.updateOne(n,e=>{e.comment=r,e.ui.widthComment=EK(a(r))})})},N$=G(C$.changeColumnDataType),P$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableColumnEntities`);c.getOrCreate(n,e=>w$({id:e})),c.replaceOperator(t,s,n,`dataType`,()=>{c.updateOne(n,e=>{e.dataType=r,e.ui.widthDataType=EK(a(r))})})},F$=G(C$.changeColumnDefault),I$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{toWidth:a,clock:o})=>{let s=i??o.getVersion(),c=J(e).collection(`tableColumnEntities`);c.getOrCreate(n,e=>w$({id:e})),c.replaceOperator(t,s,n,`default`,()=>{c.updateOne(n,e=>{e.default=r,e.ui.widthDefault=EK(a(r))})})},L$=G(C$.changeColumnAutoIncrement),R$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableColumnEntities`);s.getOrCreate(n,e=>w$({id:e})),s.replaceOperator(t,o,n,`options(autoIncrement)`,()=>{s.updateOne(n,e=>{e.options=r?e.options|Z.autoIncrement:e.options&~Z.autoIncrement})})},z$=G(C$.changeColumnPrimaryKey),B$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableColumnEntities`);s.getOrCreate(n,e=>w$({id:e})),s.replaceOperator(t,o,n,`options(primaryKey)`,()=>{s.updateOne(n,e=>{e.options=r?e.options|Z.primaryKey:e.options&~Z.primaryKey,e.ui.keys=r?e.ui.keys|NG.primaryKey:e.ui.keys&~NG.primaryKey})})},V$=G(C$.changeColumnUnique),H$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableColumnEntities`);s.getOrCreate(n,e=>w$({id:e})),s.replaceOperator(t,o,n,`options(unique)`,()=>{s.updateOne(n,e=>{e.options=r?e.options|Z.unique:e.options&~Z.unique})})},U$=G(C$.changeColumnNotNull),W$=({collections:e,lww:t},{payload:{id:n,value:r},version:i},{clock:a})=>{let o=i??a.getVersion(),s=J(e).collection(`tableColumnEntities`);s.getOrCreate(n,e=>w$({id:e})),s.replaceOperator(t,o,n,`options(notNull)`,()=>{s.updateOne(n,e=>{e.options=r?e.options|Z.notNull:e.options&~Z.notNull})})},G$=G(C$.moveColumn),K$=({collections:e},{payload:{id:t,tableId:n,targetId:r}})=>{if(t===r)return;let i=J(e).collection(`tableEntities`),a=i.getOrCreate(n,e=>GQ({id:e})),o=a.columnIds.indexOf(t);if(o===-1)return;let s=a.columnIds.indexOf(r);s!==-1&&i.updateOne(n,e=>{e.columnIds.splice(o,1),e.columnIds.splice(s,0,t);let n=e.seqColumnIds.indexOf(t),i=e.seqColumnIds.indexOf(r);n!==-1&&i!==-1&&(e.seqColumnIds.splice(n,1),e.seqColumnIds.splice(i,0,t))})},q$={[C$.addColumn]:E$,[C$.removeColumn]:O$,[C$.changeColumnName]:A$,[C$.changeColumnComment]:M$,[C$.changeColumnDataType]:P$,[C$.changeColumnDefault]:I$,[C$.changeColumnAutoIncrement]:R$,[C$.changeColumnPrimaryKey]:B$,[C$.changeColumnUnique]:H$,[C$.changeColumnNotNull]:W$,[C$.moveColumn]:K$},J$={addColumnAction:T$,removeColumnAction:D$,changeColumnNameAction:k$,changeColumnCommentAction:j$,changeColumnDataTypeAction:N$,changeColumnDefaultAction:F$,changeColumnAutoIncrementAction:L$,changeColumnPrimaryKeyAction:z$,changeColumnUniqueAction:V$,changeColumnNotNullAction:U$,moveColumnAction:G$},Y$=(e,{payload:{id:t,tableId:n}})=>{e.push(D$({id:t,tableId:n}))},X$=(e,{payload:{id:t,tableId:n}})=>{e.push(T$({id:t,tableId:n}))},Z$=(e,{payload:{id:t,tableId:n}},{collections:r})=>{let i=J(r).collection(`tableColumnEntities`).selectById(t);i&&e.push(k$({id:t,tableId:n,value:i.name}))},Q$=(e,{payload:{id:t,tableId:n}},{collections:r})=>{let i=J(r).collection(`tableColumnEntities`).selectById(t);i&&e.push(N$({id:t,tableId:n,value:i.dataType}))},$$=(e,{payload:{id:t,tableId:n}},{collections:r})=>{let i=J(r).collection(`tableColumnEntities`).selectById(t);i&&e.push(F$({id:t,tableId:n,value:i.default}))},e1=(e,{payload:{id:t,tableId:n}},{collections:r})=>{let i=J(r).collection(`tableColumnEntities`).selectById(t);i&&e.push(j$({id:t,tableId:n,value:i.comment}))},t1=(e,{payload:{id:t,tableId:n,value:r}},{collections:i})=>{J(i).collection(`tableColumnEntities`).selectById(t)&&e.push(L$({id:t,tableId:n,value:!r}))},n1=(e,{payload:{id:t,tableId:n,value:r}},{collections:i})=>{J(i).collection(`tableColumnEntities`).selectById(t)&&e.push(U$({id:t,tableId:n,value:!r}))},r1=(e,{payload:{id:t,tableId:n,value:r}},{collections:i})=>{J(i).collection(`tableColumnEntities`).selectById(t)&&e.push(z$({id:t,tableId:n,value:!r}))},i1=(e,{payload:{id:t,tableId:n,value:r}},{collections:i})=>{J(i).collection(`tableColumnEntities`).selectById(t)&&e.push(V$({id:t,tableId:n,value:!r}))},a1=(e,{payload:{id:t,tableId:n,targetId:r}},{collections:i})=>{let a=J(i).collection(`tableEntities`).selectById(n);if(!a)return;let o=a.columnIds.indexOf(t);if(o===-1)return;let s=a.columnIds.indexOf(r);if(s===-1)return;let c=o<s?o+1:o-1,l=a.columnIds[c];e.push(G$({id:t,tableId:n,targetId:l}))},o1={[C$.addColumn]:Y$,[C$.removeColumn]:X$,[C$.changeColumnName]:Z$,[C$.changeColumnDataType]:Q$,[C$.changeColumnDefault]:$$,[C$.changeColumnComment]:e1,[C$.changeColumnAutoIncrement]:t1,[C$.changeColumnNotNull]:n1,[C$.changeColumnPrimaryKey]:r1,[C$.changeColumnUnique]:i1,[C$.moveColumn]:a1};function s1(e,...t){try{return e?.(...t)}catch(e){console.error(e)}}var c1={...y$,...o1,...FQ,..._Q,...BQ,...uZ,...DZ,...GZ},l1={...S$,...xQ,...UQ};function u1(e,t,n){let r=[],i=[];for(let t of n){let n=c1[t.type];n&&(n(r,t,e.state),i.push(HF(t)))}for(let e of Object.keys(l1))l1[e](r,i,n);!r.length||!i.length||t.push({undo:(e,t)=>{e(r.map(d1(t())))},redo:(e,t)=>{e(i.map(d1(t())))}})}function d1(e){return t=>({...HF(t),version:e})}var f1=(e,t)=>n=>{s1(u1,e,t,n)},p1=()=>function*({settings:e,doc:{tableIds:t,memoIds:n},collections:r}){let i=J(r).collection(`tableEntities`).selectByIds(t),a=J(r).collection(`memoEntities`).selectByIds(n),o=rY(e,i,a),s=xI();yield V3(),yield UY({[s]:OK.memo}),yield JZ({id:s,ui:{...o,zIndex:tY(i,a)}})},m1=e=>function*({editor:{selectedMap:t}}){if(e){yield eQ({id:e});return}let n=Object.entries(t).filter(([,e])=>e===OK.memo);for(let[e]of n)yield eQ({id:e})},h1={addMemoAction$:p1,removeMemoAction$:m1,selectMemoAction$:(e,t)=>function*({doc:{tableIds:n,memoIds:r},collections:i}){let a=J(i).collection(`tableEntities`).selectByIds(n),o=J(i).collection(`memoEntities`).selectByIds(r);t||(yield V3()),yield UY({[e]:OK.memo}),yield cQ({id:e,zIndex:tY(a,o)})}},g1=(e,t,n)=>e.flatMap((e,r)=>{let i={id:n[r],tableId:t};return[T$(i),U$({...i,value:!0}),k$({...i,value:e.name}),N$({...i,value:e.dataType}),F$({...i,value:e.default}),j$({...i,value:e.comment})]});KG(Object.values({tables:`tables`,columns:`columns`}));var _1=({x:e,y:t})=>`${e},${t}`,v1=(e,t)=>e<t?-1:+(e>t),y1=e=>e.ui.zIndex??0;function b1({entities:e,offset:t,escapeCollision:n,settings:r,tables:i,memos:a,findSource:o}){let s=new Map;if(e.length===0)return s;let c=new Set([...i,...a].map(({ui:e})=>_1(e))),l=new Map,u=[];for(let n of e){let e=o(n.sourceId);e?l.set(n.sourceId,{x:e.ui.x+t.x,y:e.ui.y+t.y}):u.push(n)}if(u.length!==0){let e=rY(r,i,a),t=u.reduce((e,t)=>t.ui.x<e.ui.x||t.ui.x===e.ui.x&&t.ui.y<e.ui.y?t:e);for(let n of u)l.set(n.sourceId,{x:e.x+(n.ui.x-t.ui.x),y:e.y+(n.ui.y-t.ui.y)})}if(n){let t=[...e].sort((e,t)=>v1(e.sourceId,t.sourceId));for(let{sourceId:e}of t){let t=l.get(e);if(t){for(;c.has(_1(t));)t.x+=50,t.y+=50;c.add(_1(t))}}}let d=tY(i,a);return[...e].sort((e,t)=>y1(e)-y1(t)||v1(e.sourceId,t.sourceId)).forEach(({sourceId:e},t)=>{let n=l.get(e);n&&s.set(e,{x:n.x,y:n.y,zIndex:d+t})}),s}KG(Object.values({columnName:`columnName`,columnDataType:`columnDataType`,columnNotNull:`columnNotNull`,columnUnique:`columnUnique`,columnAutoIncrement:`columnAutoIncrement`,columnDefault:`columnDefault`,columnComment:`columnComment`}));function x1(e,t){return t.filter(t=>{switch(t){case xG.columnName:return!0;case xG.columnDataType:return Q(e,bG.columnDataType);case xG.columnDefault:return Q(e,bG.columnDefault);case xG.columnComment:return Q(e,bG.columnComment);case xG.columnAutoIncrement:return Q(e,bG.columnAutoIncrement);case xG.columnUnique:return Q(e,bG.columnUnique);case xG.columnNotNull:return Q(e,bG.columnNotNull);default:return!1}})}var S1=()=>function*({settings:e,doc:{tableIds:t,memoIds:n},collections:r}){let i=J(r).collection(`tableEntities`).selectByIds(t),a=J(r).collection(`memoEntities`).selectByIds(n),o=rY(e,i,a),s=xI();yield VY(),yield UY({[s]:OK.table}),yield KQ({id:s,ui:{...o,zIndex:tY(i,a)}}),yield nX({tableId:s})},C1=e=>function*({doc:{relationshipIds:t,indexIds:n},editor:{selectedMap:r},collections:i}){let a=J(i).collection(`relationshipEntities`).selectByIds(t),o=J(i).collection(`indexEntities`).selectByIds(n);if(e){let t=a.filter(({start:t,end:n})=>t.tableId===e||n.tableId===e),n=o.filter(({tableId:t})=>t===e);for(let{id:e}of n)yield hZ({id:e});for(let{id:e}of t)yield EQ({id:e});yield QQ({id:e});return}let s=Object.entries(r).filter(([,e])=>e===OK.table).map(([e])=>e),c=KG(s),l=a.filter(({start:e,end:t})=>c(e.tableId)||c(t.tableId)),u=o.filter(({tableId:e})=>c(e));for(let{id:e}of u)yield hZ({id:e});for(let{id:e}of l)yield EQ({id:e});for(let e of s)yield QQ({id:e})},w1={addTableAction$:S1,removeTableAction$:C1,selectTableAction$:(e,t)=>function*({doc:{tableIds:n,memoIds:r},collections:i,editor:{drawRelationship:a}}){let o=J(i).collection(`tableEntities`),s=o.selectByIds(n),c=J(i).collection(`memoEntities`).selectByIds(r);if(t||(yield VY()),yield UY({[e]:OK.table}),yield o$({id:e,zIndex:tY(s,c)}),yield nX({tableId:e}),a){if(a.start){let t=o.selectById(a.start.tableId),n=o.selectById(e);if(!t||!n)return;let r=J(i).collection(`tableColumnEntities`).selectByIds(t.columnIds).filter(({options:e})=>Q(e,Z.primaryKey));if(!r.length)return;let s=r.map(()=>xI());yield g1(r,n.id,s),yield wQ({id:xI(),relationshipType:a.relationshipType,start:{tableId:t.id,columnIds:r.map(({id:e})=>e)},end:{tableId:n.id,columnIds:s}}),yield EX()}else yield H3(e)}},pasteTableAction$:e=>function*({editor:{selectedMap:t,focusTable:n},settings:{show:r,columnOrder:i},collections:a}){let o=n&&!DY(n.focusType),s=Object.entries(t).filter(([,e])=>e===OK.table).map(([e])=>e).filter(e=>!o||e!==n?.tableId);for(let t of s)for(let n of e){let e={id:xI(),tableId:t};yield[T$(e),k$({...e,value:n.name}),N$({...e,value:n.dataType}),F$({...e,value:n.default}),j$({...e,value:n.comment}),U$({...e,value:Q(n.options,Z.notNull)}),V$({...e,value:Q(n.options,Z.unique)}),L$({...e,value:Q(n.options,Z.autoIncrement)})]}if(!n||!o)return;let c=J(a).collection(`tableEntities`).selectById(n.tableId);if(!c)return;let l=c.columnIds.filter(KG(n.selectColumnIds));if(l.length===0)return;let u=c.columnIds.slice(c.columnIds.indexOf(l[l.length-1])+1),d=[...l,...u],f=x1(r,i);yield oX();for(let t=0;t<d.length;t++){let r=d[t],i=e[t];if(!i)break;let a={id:r,tableId:c.id};yield[...f.map(e=>{switch(e){case xG.columnName:return k$({...a,value:i.name});case xG.columnDataType:return N$({...a,value:i.dataType});case xG.columnDefault:return F$({...a,value:i.default});case xG.columnComment:return j$({...a,value:i.comment});case xG.columnAutoIncrement:return L$({...a,value:Q(i.options,Z.autoIncrement)});case xG.columnUnique:return V$({...a,value:Q(i.options,Z.unique)});case xG.columnNotNull:return U$({...a,value:Q(i.options,Z.notNull)});default:return null}}).filter(Boolean),iX({tableId:c.id,columnId:r,focusType:n.focusType,$mod:!0,shiftKey:!1})]}let p=e.slice(d.length);for(let e of p){let t=xI(),r={id:t,tableId:c.id};yield[T$(r),...f.map(t=>{switch(t){case xG.columnName:return k$({...r,value:e.name});case xG.columnDataType:return N$({...r,value:e.dataType});case xG.columnDefault:return F$({...r,value:e.default});case xG.columnComment:return j$({...r,value:e.comment});case xG.columnAutoIncrement:return L$({...r,value:Q(e.options,Z.autoIncrement)});case xG.columnUnique:return V$({...r,value:Q(e.options,Z.unique)});case xG.columnNotNull:return U$({...r,value:Q(e.options,Z.notNull)});default:return null}}).filter(Boolean),iX({tableId:c.id,columnId:t,focusType:n.focusType,$mod:!0,shiftKey:!1})]}},sortTablesToMoveAction$:()=>function*(e,t){let{doc:n,collections:r}=e,i=J(r).collection(`tableEntities`).selectByIds(n.tableIds).map(e=>({...e,ui:{...e.ui}}));u$[WQ.sortTable]({...e,collections:{...r,tableEntities:Object.fromEntries(i.map(e=>[e.id,e]))}},{type:WQ.sortTable,payload:void 0},t),yield i.map(({id:e,ui:{x:t,y:n}})=>XQ({id:e,x:t,y:n}))}};function T1(e,t,n,r=[]){let{doc:{relationshipIds:i},collections:a}=t,o=e.pop();return o&&(r.some(({id:e})=>e===o.id)||(r.push(o),J(a).collection(`relationshipEntities`).selectByIds(i).forEach(({start:t,end:r})=>{let i=t.columnIds.indexOf(o.id);if(i!==-1){let t=r.columnIds[i];e.push({id:t,tableId:r.tableId,value:n.value})}else{let i=r.columnIds.indexOf(o.id);if(i!==-1){let r=t.columnIds[i];e.push({id:r,tableId:t.tableId,value:n.value})}}})),T1(e,t,n,r)),r}var E1=KG([MK.columnNotNull,MK.columnUnique,MK.columnAutoIncrement]),D1=KG([MK.columnName,MK.columnDataType,MK.columnDefault,MK.columnComment]),O1=e=>function*({editor:{selectedMap:t}}){if(e){let t=xI();yield T$({id:t,tableId:e}),yield iX({tableId:e,columnId:t,focusType:MK.columnName,$mod:!1,shiftKey:!1});return}let n=Object.entries(t).filter(([,e])=>e===OK.table).map(([e])=>({tableId:e,id:xI()}));for(let e of n)yield T$(e);let r=GF(n);r&&(yield iX({tableId:r.tableId,columnId:r.id,focusType:MK.columnName,$mod:!1,shiftKey:!1}))},k1=(e,t)=>function*(n){let{doc:{relationshipIds:r,indexIds:i},editor:{focusTable:a},collections:o}=n;if(a?.columnId){let e=CY(n,t);e?yield iX({tableId:a.tableId,columnId:e,focusType:a.focusType,$mod:!1,shiftKey:!1}):yield nX({tableId:a.tableId,focusType:MK.tableName})}let s=KG(t),c=J(o).collection(`relationshipEntities`).selectByIds(r).filter(({start:t,end:n})=>t.tableId===e&&t.columnIds.some(s)||n.tableId===e&&n.columnIds.some(s)),l=J(o).collection(`indexEntities`).selectByIds(i).filter(t=>t.tableId===e&&J(o).collection(`indexColumnEntities`).selectByIds(t.indexColumnIds).map(({columnId:e})=>e).some(s));for(let{id:e}of l)yield hZ({id:e});for(let{id:e}of c)yield EQ({id:e});for(let n of t)yield D$({id:n,tableId:e})},A1=(e,t,n)=>function*({collections:r}){if(!E1(e))return;let i=J(r).collection(`tableColumnEntities`).selectById(n);if(i)switch(e){case MK.columnNotNull:yield U$({id:n,tableId:t,value:!Q(i.options,Z.notNull)});break;case MK.columnUnique:yield V$({id:n,tableId:t,value:!Q(i.options,Z.unique)});break;case MK.columnAutoIncrement:yield L$({id:n,tableId:t,value:!Q(i.options,Z.autoIncrement)})}},j1=e=>function*(t){let{settings:{relationshipDataTypeSync:n}}=t,r=[e];n&&(r=T1([e],t,e)),yield r.map(N$)},M1={addColumnAction$:O1,removeColumnAction$:k1,toggleColumnValueAction$:A1,changeColumnDataTypeAction$:j1,changeColumnValueAction$:(e,t,n,r)=>function*({collections:i}){if(!D1(e)||!J(i).collection(`tableColumnEntities`).selectById(n))return;let a={id:n,tableId:t,value:r};switch(e){case MK.columnName:yield k$(a);break;case MK.columnDataType:yield j1(a);break;case MK.columnDefault:yield F$(a);break;case MK.columnComment:yield j$(a)}},changeColumnPrimaryKeyAction$:(e,t)=>function*({collections:n}){let r=J(n).collection(`tableColumnEntities`).selectById(t);r&&(yield z$({tableId:e,id:t,value:!Q(r.options,Z.primaryKey)}))}};function N1(e,t){return!(e.x>t.x+t.w||e.x+e.w<t.x||e.y>t.y+t.h||e.y+e.h<t.y)}function P1(e,t,n){let r=[];return e.forEach((i,a)=>{t?n?r.push(`${t}${i.name}${n}`):r.push(`${t}${i.name}${t}`):r.push(i.name),e.length!==a+1&&r.push(`, `)}),r.join(``)}function F1(e){let t=0,n=0;return e.forEach(e=>{t<e.name.length&&(t=e.name.length),n<e.dataType.length&&(n=e.dataType.length)}),{name:t,dataType:n}}function I1(e){let t=[];for(let n=0;n<e;n++)t.push(` `);return t.join(``)}function L1(e){return e.some(({options:e})=>Q(e,Z.primaryKey))}function R1(e){return e.filter(({options:e})=>Q(e,Z.primaryKey))}function z1(e){return e.some(({options:e})=>Q(e,Z.unique))}function B1(e){return e.filter(({options:e})=>Q(e,Z.unique))}function V1(e){return BG[e]??``}function H1(e,t){let n=e.name.toLowerCase(),r=t.name.toLowerCase();return n<r?-1:+(n>r)}function U1(e,t,n,r=1){let i=!0;for(let r of e)if(n===r.name&&r.id!==t&&n!==``){i=!1;break}return i?n:U1(e,t,n.replace(/[0-9]/g,``)+r,r+1)}function W1(e){switch(e){case PG.ASC:return`ASC`;case PG.DESC:return`DESC`;default:return``}}function G1(e,t){for(let n of e)if(n.name.toUpperCase()===t.toUpperCase())return n;return null}var K1={[X.MariaDB]:`VARCHAR(255)`,[X.MSSQL]:`varchar(255)`,[X.MySQL]:`VARCHAR(255)`,[X.Oracle]:`VARCHAR2(255)`,[X.PostgreSQL]:`varchar(255)`,[X.SQLite]:`TEXT`,[X.Databricks]:`STRING`,[X.Snowflake]:`VARCHAR(255)`};function q1(e,t,n,r=[]){let i=X1(e,n,r);return i.members?Y1(i.members,t)??K1[t]??i.typeName:i.typeName}function J1(e,t,n,r=[]){let{members:i}=X1(e,t,r);return!i||Y1(i,n)!==void 0?``:` ${e}: ${i.join(` | `)}`}function Y1(e,t){if(t===X.MySQL||t===X.MariaDB)return`ENUM(${e.map(e=>`'${e.replace(/'/g,`''`)}'`).join(`,`)})`}function X1(e,t,n){if(n.length)return{typeName:e,members:n};let r=new Set,i=e;for(;!r.has(i);){r.add(i);let e=Z1(i,t);if(!e)break;if(e.values.length)return{typeName:i,members:e.values};if(!e.alias)break;i=e.alias}return{typeName:i,members:null}}function Z1(e,t){let n=t.types[e];if(n)return n;let r=Object.keys(t.types).find(t=>t.slice(t.lastIndexOf(`.`)+1)===e);return r===void 0?void 0:t.types[r]}var Q1={database:``,catalog:``,schema:``},$1=n0(Q1);function e0(e,t,n){let r=_W({}),i=t0(e.entities),a=e.entities.map(a=>a0(r,t,e,n,a,i(a)));return c0(r,t,a,e,i0(e.entities,a)),p0(r,a),r}function t0(e){let t=new Set(e.map(e=>n0(e.namespace)));return e=>{let n=n0(e.namespace);return t.size>1&&n!==$1?`${r0(e.namespace)}_${e.name}`:e.name}}function n0({database:e,catalog:t,schema:n}){return`${e}.${t}.${n}`}function r0({database:e,catalog:t,schema:n}){return[e,t,n].filter(e=>e!==``).join(`_`)}function i0(e,t){let n=new Map,r=(e,t)=>{let r=e.toLowerCase();n.has(r)||n.set(r,t)};return e.forEach((e,n)=>{let i=t[n],a=n0(e.namespace);r(`${a}.${e.name}`,i),r(e.name,i),e.alias&&(r(e.alias,i),r(`${a}.${e.alias}`,i))}),e=>{let t=n0(e.namespace);return n.get(`${t}.${e.entityName}`.toLowerCase())??(t===$1?n.get(e.entityName.toLowerCase())??null:null)}}function a0({doc:e,collections:t},n,r,i,a,o){let{toWidth:s}=n,c=DK(o),l=DK(a.comment),u=GQ({name:c,comment:l,ui:{widthName:EK(s(c)),widthComment:EK(s(l))}}),d={source:a,table:u,columns:[]};return a.attributes.forEach(e=>{let n=DK(e.path),a=q1(e.typeName,i,r,e.enumValues),o=`${DK(e.comment)}${J1(e.typeName,r,i,e.enumValues)}`.trim(),c=DK(e.default);s0(t,d,w$({tableId:u.id,name:n,comment:o,dataType:a,default:c,options:(e.autoIncrement?Z.autoIncrement:0)|(e.primaryKey?Z.primaryKey:0)|(o0(e)?Z.unique:0)|(e.notNull?Z.notNull:0),ui:{widthName:EK(s(n)),widthComment:EK(s(o)),widthDataType:EK(s(a)),widthDefault:EK(s(c)),keys:e.primaryKey?NG.primaryKey:0}}))}),e.tableIds.push(u.id),J(t).collection(`tableEntities`).setOne(u),d}function o0(e){return e.indexes.some(e=>e.unique&&e.name===``)}function s0(e,t,n){t.table.columnIds.push(n.id),t.table.seqColumnIds.push(n.id),t.columns.push(n),J(e).collection(`tableColumnEntities`).setOne(n)}function c0(e,t,n,r,i){let a=new Set;r.relations.forEach(r=>{let o=i(r.src),s=i(r.ref);if(!o||!s)return;let c=l0(o,r.src),l=l0(s,r.ref);if(c.length!==0&&l.length!==0&&c.length===l.length){if(r.srcCardinality===`n`&&r.refCardinality===`n`){d0(e,t,n,o,s);return}u0(e,t,a,{parent:s,parentColumns:l,child:o,childColumns:c,toMany:r.refCardinality===`n`})}})}function l0(e,t){if(t.attributePaths.length===0)return R1(e.columns);let n=[];for(let r of t.attributePaths){let t=G1(e.columns,r);if(!t)return[];n.push(t)}return n}function u0({doc:e,collections:t},{toWidth:n},r,{parent:i,parentColumns:a,child:o,childColumns:s,toMany:c}){let l=`${i.table.id}:${o.table.id}:${s.map(e=>e.id).join(`,`)}`;if(r.has(l))return;r.add(l);let u=s.every(e=>Q(e.options,Z.notNull));s.forEach((e,t)=>{if(e.dataType===``){let{dataType:r}=a[t];e.dataType=r,e.ui.widthDataType=EK(n(r))}e.ui.keys=Q(e.ui.keys,NG.primaryKey)?e.ui.keys|NG.foreignKey:NG.foreignKey});let d=CQ({identification:s.every(e=>Q(e.ui.keys,NG.primaryKey)&&Q(e.ui.keys,NG.foreignKey)),relationshipType:c?u?AG.OneN:AG.ZeroN:u?AG.OneOnly:AG.ZeroOne,start:{tableId:i.table.id,columnIds:a.map(e=>e.id)},end:{tableId:o.table.id,columnIds:s.map(e=>e.id)}});e.relationshipIds.push(d.id),J(t).collection(`relationshipEntities`).setOne(d)}function d0(e,t,n,r,i){let{doc:a,collections:o}=e,{toWidth:s}=t,c=R1(r.columns),l=R1(i.columns);if(!c.length||!l.length)return;let u=U1(n.map(e=>e.table),``,`${r.table.name}_${i.table.name}`),d=`Junction table inferred from ${r.table.name} <-> ${i.table.name}`,f=GQ({name:u,comment:d,ui:{widthName:EK(s(u)),widthComment:EK(s(d))}}),p={source:{namespace:Q1,name:u,alias:``,comment:d,attributes:[]},table:f,columns:[]};a.tableIds.push(f.id),J(o).collection(`tableEntities`).setOne(f),n.push(p),f0(e,t,p,r,c),f0(e,t,p,i,l)}function f0(e,{toWidth:t},n,r,i){let{doc:a,collections:o}=e,s=i.map(e=>{let i=U1(n.columns,``,`${r.table.name}_${e.name}`),{dataType:a}=e,s=w$({tableId:n.table.id,name:i,dataType:a,options:Z.primaryKey|Z.notNull,ui:{keys:NG.primaryKey|NG.foreignKey,widthName:EK(t(i)),widthDataType:EK(t(a))}});return s0(o,n,s),s}),c=CQ({identification:!0,relationshipType:AG.ZeroN,start:{tableId:r.table.id,columnIds:i.map(e=>e.id)},end:{tableId:n.table.id,columnIds:s.map(e=>e.id)}});a.relationshipIds.push(c.id),J(o).collection(`relationshipEntities`).setOne(c)}function p0({doc:e,collections:t},n){n.forEach(({source:n,table:r,columns:i})=>{let a=new Map;n.attributes.forEach((e,t)=>{let n=i[t];n&&e.indexes.forEach((e,i)=>{if(e.unique&&e.name===``)return;let o=e.name===``?`b:${t}:${i}`:`n:${e.name}`,s=a.get(o)??{index:fZ({name:DK(e.name),tableId:r.id}),indexColumns:[]};s.index.unique=s.index.unique||e.unique,s.indexColumns.push(kZ({indexId:s.index.id,columnId:n.id,orderType:PG.ASC})),a.set(o,s)})}),a.forEach(({index:n,indexColumns:r})=>{r.forEach(e=>{n.indexColumnIds.push(e.id),n.seqIndexColumnIds.push(e.id),J(t).collection(`indexColumnEntities`).setOne(e)}),e.indexIds.push(n.id),J(t).collection(`indexEntities`).setOne(n)})})}var m0={identifier:1,quoted:2,string:3,expression:4,number:5,punctuation:6,doc:7,comment:8,newline:9},h0=/[ \t\f\v]/,g0=/[0-9]/,_0=/[A-Za-z_\u0080-\uffff]/,v0=/[0-9A-Za-z_#\u0080-\uffff]/,y0=/^[ \t]*/,b0=/\\#/g,x0={n:`
32
+ `};function S0(e){let t=[],n=0,r=1,i=C0(e,0),a=(e,n)=>{t.push({kind:e,value:n,line:r,depth:i})};for(t.push({kind:m0.newline,value:``,line:0,depth:i});n<e.length;){let t=e[n];if(h0.test(t)){n+=1;continue}if(t===`\r`||t===`
33
+ `){t===`\r`&&e[n+1]===`
34
+ `&&(n+=1),n+=1,i=C0(e,n),a(m0.newline,`
35
+ `),r+=1;continue}if(t===`#`){let t=n+1;for(;t<e.length&&e[t]!==`
36
+ `&&e[t]!==`\r`;)t+=1;a(m0.comment,e.slice(n+1,t).trim()),n=t;continue}if(t===`|`){if(e.startsWith(`|||`,n)){let t=T0(e,n+3);a(m0.doc,O0(t.value)),n=t.index,r+=t.lines;continue}let t=w0(e,n+1);a(m0.doc,t.value),n=t.index;continue}if(t===`"`){let t=E0(e,n+1,`"`,!0,!1);a(m0.quoted,t.value),n=t.index;continue}if(t===`'`){let t=E0(e,n+1,`'`,!0,!1);a(m0.string,t.value),n=t.index;continue}if(t==="`"){let t=E0(e,n+1,"`",!1,!0);a(m0.expression,t.value),n=t.index,r+=t.lines;continue}if(g0.test(t)){let t=n;for(;t<e.length&&g0.test(e[t]);)t+=1;if(e[t]===`.`&&g0.test(e[t+1]??``))for(t+=1;t<e.length&&g0.test(e[t]);)t+=1;a(m0.number,e.slice(n,t)),n=t;continue}if(_0.test(t)){let t=n+1;for(;t<e.length&&v0.test(e[t]);)t+=1;for(;t>n&&e[t-1]===`#`;)--t;a(m0.identifier,e.slice(n,t)),n=t;continue}a(m0.punctuation,t),n+=1}return t}function C0(e,t){let n=0;for(let r=t;r<e.length;r++){let t=e[r];if(t===` `)n+=1;else if(t===` `)n+=.5;else break}return Math.round(n)-1}function w0(e,t){let n=t;for(;n<e.length&&h0.test(e[n]);)n+=1;if(n>t&&e[n]===`"`){let t=E0(e,n+1,`"`,!0,!1);if(t.terminated)return{value:t.value,index:t.index}}let r=[];for(n=t;n<e.length;){let t=e[n];if(t===`
37
+ `||t===`\r`)break;if(t!==` `&&e[n+1]===`#`){r.push(t,`#`),n+=2;continue}if(t===`#`)break;r.push(t),n+=1}return{value:D0(r.join(``).trim().replace(b0,`#`)),index:n}}function T0(e,t){let n=e.indexOf(`|||`,t),r=n===-1?e.length:n,i=e.slice(t,r);return{value:i,index:n===-1?e.length:n+3,lines:i.split(`
38
+ `).length-1}}function E0(e,t,n,r,i){let a=[],o=t,s=0;for(;o<e.length;){if(e.startsWith(n,o))return{value:a.join(``),index:o+n.length,lines:s,terminated:!0};let t=e[o];if(!i&&(t===`
39
+ `||t===`\r`))break;let c=e[o+1];if(r&&t===`\\`&&c!==void 0){a.push(x0[c]??c),o+=2;continue}t===`
40
+ `&&(s+=1),a.push(t),o+=1}return{value:a.join(``),index:o,lines:s,terminated:!1}}function D0(e){let t=e[0];return e.length>1&&(t===`"`||t===`'`)&&e.endsWith(t)?e.slice(1,-1):e}function O0(e){let t=e.replace(/\r\n|\r/g,`
41
+ `).split(`
42
+ `);t[0]?.trim()===``&&t.shift(),t.length&&t[t.length-1].trim()===``&&t.pop();let n=t.filter(e=>e.trim()!==``).map(e=>(y0.exec(e)?.[0]??``).length),r=n.length?Math.min(...n):0;return t.map(e=>e.slice(r)).join(`
43
+ `)}var k0=new Set([`as`,`check`,`false`,`fk`,`index`,`namespace`,`null`,`nullable`,`pk`,`rel`,`true`,`type`,`unique`]),A0=new Set([`false`,`null`,`true`]),j0=/^-?\d+$/;function M0(e){try{return{ok:!0,model:F0(N0(S0(e)))}}catch(e){return{ok:!1,message:e instanceof Error?e.message:`Invalid AML`}}}function N0(e){let t=[],n=null;return e.forEach(e=>{if(e.kind===m0.newline){n={depth:e.depth,tokens:[]},t.push(n);return}n?.tokens.push(e)}),t}function P0(e){let t=0;return{peek:(n=0)=>e[t+n]??null,next:()=>e[t++]??null,atEnd:()=>t>=e.length}}function F0(e){let t={entities:[],relations:[],types:{},skipped:[]},n=new Set,r=e=>{e!==``&&!n.has(e)&&(n.add(e),t.skipped.push(e))},i=Q1,a=null,o={path:[],depth:0};return e.forEach(e=>{let n=P0(e.tokens),s=n.peek();if(!s)return;if(e.depth>=0){a!==null&&L0(n,e.depth,a,o,t,r);return}let c=s.kind===m0.identifier?s.value.toLowerCase():``;if(c===`namespace`){n.next(),i=Q0(n);return}if(c===`rel`||c===`fk`){n.next();let e=U0(n,i,r);e&&t.relations.push(e);return}if(c===`type`){n.next(),Z0(n,i,t,r);return}if(!d2(s))return;let l=I0(n,i,r);l&&(t.entities.push(l),a=l,o={path:[],depth:0})}),t}function I0(e,t,n){let r=$0(e);if(r.name===``)return null;let i=e.peek();i&&m2(i,`*`)&&(e.next(),n(`view`));let a=t2(e),o=n2(e,n);return{namespace:c2(t,r.namespace),name:r.name,alias:a,comment:o.doc||o.comment,attributes:[]}}function L0(e,t,n,r,i,a){let o=s2(e);if(o===``)return;let s=z0(e),c={path:R0(r,t,o),comment:``,typeName:s.typeName,enumValues:s.enumValues,notNull:!0,primaryKey:!1,indexes:[],default:s.default,autoIncrement:!1},l=e.peek();l&&f2(l,`nullable`)&&(e.next(),c.notNull=!1),B0(e,c,n,i,a);let u=n2(e,a);c.comment=u.doc||u.comment,c.autoIncrement=u.autoIncrement,n.attributes.push(c)}function R0(e,t,n){if(t===0||e.path.length===0)e.depth=0,e.path=[n];else if(t>e.depth)e.depth+=1,e.path=[...e.path,n];else{let r=e.depth-t;e.depth=t,e.path=[...e.path.slice(0,-(r+1)),n]}return e.path.join(`.`)}function z0(e){let t=s2(e);if(t===``)return{typeName:``,enumValues:[],default:``};let n=t,r=[],i=e.peek();if(i&&m2(i,`(`)){e.next();let{values:i,numeric:a}=a2(e);i.length!==0&&i.length<=2&&a?n=`${t}(${i.join(`,`)})`:r=i}let a=e.peek();return a&&m2(a,`=`)?(e.next(),{typeName:n,enumValues:r,default:o2(e)}):{typeName:n,enumValues:r,default:``}}function B0(e,t,n,r,i){let a=()=>{let i=W0(e);return i?(r.relations.push({src:{namespace:n.namespace,entityName:n.name,attributePaths:[t.path]},...i}),!0):!1};for(;!e.atEnd();){let n=e.peek();if(!n)return;if(n.kind===m0.identifier){let r=n.value.toLowerCase();if(r===`pk`){e.next(),H0(e),t.primaryKey=!0;continue}if(r===`unique`||r===`index`){e.next(),t.indexes.push({name:H0(e),unique:r===`unique`});continue}if(r===`check`){e.next(),V0(e),i(`check`);continue}if(r===`fk`&&a())continue;return}if(!(p2(n)&&a()))return}}function V0(e){let t=e.peek();t&&m2(t,`(`)&&(e.next(),u2(e,`(`,`)`)),H0(e)}function H0(e){let t=e.peek();return!t||!m2(t,`=`)?``:(e.next(),s2(e))}function U0(e,t,n){let r=q0(e),i=W0(e);return n2(e,n),!i||r.entityName===``?null:{src:l2(r.namespace)?{...r,namespace:t}:r,...i}}function W0(e){let t=e.peek();if(t&&f2(t,`fk`)){e.next();let t=q0(e);return t.entityName===``?null:{ref:t,srcCardinality:`n`,refCardinality:`1`,polymorphic:!1}}let n=G0(e);if(n===null)return null;let r=K0(e);r&&(Y0(e),e.next(),o2(e));let i=G0(e)??`n`,a=q0(e);return a.entityName===``?null:{ref:a,srcCardinality:i,refCardinality:n,polymorphic:r}}function G0(e){let t=e.peek();return!t||!p2(t)?null:(e.next(),t.value===`-`?`1`:`n`)}function K0(e){let t=0;for(;;){let n=e.peek(t);if(!n||!d2(n))return!1;t+=1;let r=e.peek(t);if(!r||!m2(r,`.`))break;t+=1}let n=e.peek(t);return n!==null&&m2(n,`=`)}function q0(e){let t=$0(e),n=e.peek();if(n&&m2(n,`(`))return e.next(),{namespace:t.namespace,entityName:t.name,attributePaths:J0(e)};if(t.namespace.schema===``)return{namespace:Q1,entityName:t.name,attributePaths:[]};let r=[t.name,...X0(e)].join(`.`);return{namespace:{database:``,catalog:``,schema:t.namespace.catalog},entityName:t.namespace.schema,attributePaths:[r]}}function J0(e){let t=[];for(;!e.atEnd();){let n=e.peek();if(!n||m2(n,`)`)){e.next();break}if(d2(n)){t.push(Y0(e));continue}e.next()}return t}function Y0(e){let t=[s2(e)];for(;!e.atEnd();){let n=e.peek();if(!n||!m2(n,`.`))break;e.next();let r=s2(e);if(r===``)break;t.push(r)}return t.join(`.`)}function X0(e){let t=[];for(;!e.atEnd();){let n=e.peek();if(!n||!m2(n,`:`))break;e.next();let r=s2(e);if(r===``)break;t.push(r)}return t}function Z0(e,t,n,r){let i=$0(e);if(i.name===``)return;let a={values:[],alias:``},o=e.peek();o&&m2(o,`(`)?(e.next(),a.values=a2(e).values):o&&m2(o,`{`)?(e.next(),u2(e,`{`,`}`),r(`struct type`)):o&&o.kind===m0.expression?(e.next(),r(`custom type`)):o&&d2(o)&&(a.alias=s2(e)),n2(e,r);let s=c2(t,i.namespace),c=[s.database,s.catalog,s.schema,i.name].filter(e=>e!==``).join(`.`);n.types[c]=a,c!==i.name&&!(i.name in n.types)&&(n.types[i.name]=a)}function Q0(e){let t=s2(e);if(t===``)return Q1;let n=e2(e),r=e2(e);return n&&r?{database:t,catalog:n.name,schema:r.name}:n?{database:``,catalog:t,schema:n.name}:{database:``,catalog:``,schema:t}}function $0(e){let t=s2(e);if(t===``)return{namespace:Q1,name:``};let n=e2(e),r=e2(e),i=e2(e);return n&&r&&i&&i.name!==``?{namespace:{database:t,catalog:n.name,schema:r.name},name:i.name}:n&&r&&r.name!==``?{namespace:{database:``,catalog:t,schema:n.name},name:r.name}:n&&n.name!==``?{namespace:{database:``,catalog:``,schema:t},name:n.name}:{namespace:Q1,name:t}}function e2(e){let t=e.peek();return!t||!m2(t,`.`)?null:(e.next(),{name:s2(e)})}function t2(e){let t=e.peek();return!t||!f2(t,`as`)?``:(e.next(),s2(e))}function n2(e,t){let n={autoIncrement:!1,doc:``,comment:``};for(;!e.atEnd();){let r=e.next();if(!r)break;if(m2(r,`{`)){r2(e,n,t);continue}if(r.kind===m0.doc&&n.doc===``){n.doc=r.value;continue}r.kind===m0.comment&&n.comment===``&&(n.comment=r.value)}return n}function r2(e,t,n){for(;!e.atEnd();){let r=e.next();if(!r||m2(r,`}`))return;if(r.kind!==m0.identifier&&r.kind!==m0.quoted)continue;let i=e.peek();i&&(m2(i,`:`)||m2(i,`=`))&&(e.next(),i2(e)),r.value.toLowerCase()===`autoincrement`?t.autoIncrement=!0:n(r.value)}}function i2(e){let t=0;for(;!e.atEnd();){let n=e.peek();if(!n||t===0&&(m2(n,`,`)||m2(n,`}`)))return;e.next(),m2(n,`[`)?t+=1:m2(n,`]`)&&--t}}function a2(e){let t=[],n=!0;for(;!e.atEnd();){let r=e.peek();if(!r||m2(r,`)`)){e.next();break}if(m2(r,`,`)){e.next();continue}let i=o2(e);t.push(i),n=n&&r.kind!==m0.quoted&&j0.test(i)}return{values:t,numeric:n}}function o2(e){let t=e.peek();if(!t)return``;if(m2(t,`-`)&&e.peek(1)?.kind===m0.number)return e.next(),`-${e.next()?.value??``}`;switch(e.next(),t.kind){case m0.expression:return`\`${t.value}\``;case m0.string:return`'${t.value}'`;case m0.identifier:return A0.has(t.value.toLowerCase())?t.value.toLowerCase():t.value;default:return t.value}}function s2(e){let t=e.peek();return!t||!d2(t)?``:(e.next(),t.value)}function c2(e,t){return{database:t.database||e.database,catalog:t.catalog||e.catalog,schema:t.schema||e.schema}}function l2(e){return e.database===``&&e.catalog===``&&e.schema===``}function u2(e,t,n){let r=1;for(;!e.atEnd()&&r!==0;){let i=e.next();if(!i)break;m2(i,t)?r+=1:m2(i,n)&&--r}}function d2(e){return e.kind===m0.quoted||e.kind===m0.identifier&&!k0.has(e.value.toLowerCase())}function f2(e,t){return e.kind===m0.identifier&&e.value.toLowerCase()===t}function p2(e){return e.kind===m0.punctuation&&(e.value===`-`||e.value===`<`||e.value===`>`)}function m2(e,t){return e.kind===m0.punctuation&&e.value===t}var h2={entities:[],relations:[],types:{},skipped:[]};function g2(e,t,n){let r=M0(e),i=r.ok?r.model:h2,a=_W({}),o=vK(i.entities.length*100);a.settings.width=o,a.settings.height=o;let{settings:s}=n?n(a):a,c=e0(i,t,s.database);return c.settings=s,_G(c)}var ose={[X.MariaDB]:`VARCHAR(255)`,[X.MSSQL]:`varchar(255)`,[X.MySQL]:`VARCHAR(255)`,[X.Oracle]:`VARCHAR2(255)`,[X.PostgreSQL]:`varchar(255)`,[X.SQLite]:`TEXT`,[X.Databricks]:`STRING`,[X.Snowflake]:`VARCHAR(255)`};function _2(e,t,n,r){let i=b2(e,t,r);return i?y2(i,n)??ose[n]??e:e}function v2(e,t,n,r){let i=b2(e,t,n);return!i||y2(i,r)!==void 0?``:` ${e}: ${i.join(` | `)}`}function y2(e,t){if(t===X.MySQL||t===X.MariaDB)return`ENUM(${e.map(e=>`'${e.replace(/'/g,`''`)}'`).join(`,`)})`}function b2(e,t,n){let r=t?`${t}.${e}`:``;return n.enums[r]??n.enums[e]??null}var x2=`public`;function S2(e,t,n){let r=_W({}),i=C2(e.tables),a=e.tables.map(a=>E2(r,t,e,n,a,i(a)));return O2(r,t,a,e,T2(e.tables,a)),N2(r,a),r}function C2(e){let t=new Set(e.map(e=>w2(e.schemaName)));return e=>{let n=w2(e.schemaName);return t.size>1&&n!==x2?`${n}_${e.name}`:e.name}}function w2(e){return e===``?x2:e}function T2(e,t){let n=new Map,r=(e,t)=>{let r=e.toLowerCase();n.has(r)||n.set(r,t)};return e.forEach((e,n)=>{let i=t[n],a=w2(e.schemaName);r(`${a}.${e.name}`,i),r(e.name,i),e.alias&&(r(e.alias,i),r(`${a}.${e.alias}`,i))}),e=>{let t=w2(e.schemaName);return n.get(`${t}.${e.tableName}`.toLowerCase())??(e.schemaName===``?n.get(e.tableName.toLowerCase())??null:null)}}function E2({doc:e,collections:t},n,r,i,a,o){let{toWidth:s}=n,c=DK(o),l=DK(a.comment),u=GQ({name:c,comment:l,ui:{widthName:EK(s(c)),widthComment:EK(s(l))}}),d={source:a,table:u,columns:[]},f=new Set(a.indexes.filter(e=>e.primaryKey).flatMap(e=>e.columnNames).map(e=>e.toUpperCase()));return a.columns.forEach(e=>{let n=DK(e.name),a=e.primaryKey||f.has(n.toUpperCase()),o=_2(e.typeName,e.typeSchemaName,i,r),c=`${DK(e.comment)}${v2(e.typeName,e.typeSchemaName,r,i)}`.trim(),l=DK(e.default);D2(t,d,w$({tableId:u.id,name:n,comment:c,dataType:o,default:l,options:(e.autoIncrement?Z.autoIncrement:0)|(a?Z.primaryKey:0)|(e.unique?Z.unique:0)|(e.notNull?Z.notNull:0),ui:{widthName:EK(s(n)),widthComment:EK(s(c)),widthDataType:EK(s(o)),widthDefault:EK(s(l)),keys:a?NG.primaryKey:0}}))}),e.tableIds.push(u.id),J(t).collection(`tableEntities`).setOne(u),d}function D2(e,t,n){t.table.columnIds.push(n.id),t.table.seqColumnIds.push(n.id),t.columns.push(n),J(e).collection(`tableColumnEntities`).setOne(n)}function O2(e,t,n,r,i){let a=new Set,o=t=>A2(e,a,t);n.forEach(r=>{r.source.columns.forEach((a,s)=>{let c=r.columns[s];c&&a.inlineRefs.forEach(a=>{let s=i(a.target);if(!s)return;let l=k2(s,a.target);if(l.length!==1)return;if(a.operator===`<>`){j2(e,t,n,r,s);return}let u=a.operator!==`<`;o(u?{parent:s,parentColumns:l,child:r,childColumns:[c],toMany:a.operator===`>`}:{parent:r,parentColumns:[c],child:s,childColumns:l,toMany:!0})})})}),r.refs.forEach(r=>{let a=i(r.left),s=i(r.right);if(!a||!s)return;let c=k2(a,r.left),l=k2(s,r.right);if(c.length===0||c.length!==r.left.columnNames.length||l.length!==r.right.columnNames.length||c.length!==l.length)return;if(r.operator===`<>`){j2(e,t,n,a,s);return}let u=r.operator!==`>`;o({parent:u?a:s,parentColumns:u?c:l,child:u?s:a,childColumns:u?l:c,toMany:r.operator!==`-`})})}function k2(e,t){let n=[];for(let r of t.columnNames){let t=G1(e.columns,r);if(!t)return[];n.push(t)}return n}function A2({doc:e,collections:t},n,{parent:r,parentColumns:i,child:a,childColumns:o,toMany:s}){if(i.length===0||o.length===0)return;let c=`${r.table.id}:${a.table.id}:${o.map(e=>e.id).join(`,`)}`;if(n.has(c))return;n.add(c);let l=o.every(e=>Q(e.options,Z.notNull));o.forEach(e=>{e.ui.keys=Q(e.ui.keys,NG.primaryKey)?e.ui.keys|NG.foreignKey:NG.foreignKey});let u=CQ({identification:o.every(e=>Q(e.ui.keys,NG.primaryKey)&&Q(e.ui.keys,NG.foreignKey)),relationshipType:s?l?AG.OneN:AG.ZeroN:l?AG.OneOnly:AG.ZeroOne,start:{tableId:r.table.id,columnIds:i.map(e=>e.id)},end:{tableId:a.table.id,columnIds:o.map(e=>e.id)}});e.relationshipIds.push(u.id),J(t).collection(`relationshipEntities`).setOne(u)}function j2(e,t,n,r,i){let{doc:a,collections:o}=e,{toWidth:s}=t,c=R1(r.columns),l=R1(i.columns);if(!c.length||!l.length)return;let u=U1(n.map(e=>e.table),``,`${r.table.name}_${i.table.name}`),d=`Junction table inferred from ${r.table.name} <-> ${i.table.name}`,f=GQ({name:u,comment:d,ui:{widthName:EK(s(u)),widthComment:EK(s(d))}}),p={source:{schemaName:``,name:u,alias:``,comment:d,columns:[],indexes:[]},table:f,columns:[]};a.tableIds.push(f.id),J(o).collection(`tableEntities`).setOne(f),n.push(p),M2(e,t,p,r,c),M2(e,t,p,i,l)}function M2(e,{toWidth:t},n,r,i){let{doc:a,collections:o}=e,s=i.map(e=>{let i=U1(n.columns,``,`${r.table.name}_${e.name}`),{dataType:a}=e,s=w$({tableId:n.table.id,name:i,dataType:a,options:Z.primaryKey|Z.notNull,ui:{keys:NG.primaryKey|NG.foreignKey,widthName:EK(t(i)),widthDataType:EK(t(a))}});return D2(o,n,s),s}),c=CQ({identification:!0,relationshipType:AG.ZeroN,start:{tableId:r.table.id,columnIds:i.map(e=>e.id)},end:{tableId:n.table.id,columnIds:s.map(e=>e.id)}});a.relationshipIds.push(c.id),J(o).collection(`relationshipEntities`).setOne(c)}function N2({doc:e,collections:t},n){n.forEach(({source:n,table:r,columns:i})=>{n.indexes.forEach(n=>{if(n.primaryKey)return;let a=fZ({name:DK(n.name),tableId:r.id,unique:n.unique}),o=[];n.columnNames.forEach(e=>{let t=G1(i,e);t&&o.push(kZ({indexId:a.id,columnId:t.id,orderType:PG.ASC}))}),o.length&&(o.forEach(e=>{a.indexColumnIds.push(e.id),a.seqIndexColumnIds.push(e.id),J(t).collection(`indexColumnEntities`).setOne(e)}),e.indexIds.push(a.id),J(t).collection(`indexEntities`).setOne(a))})})}var P2={identifier:1,quoted:2,string:3,expression:4,number:5,punctuation:6,operator:7,newline:8},F2=/[ \t\f\v]/,I2=/[0-9]/,L2=/[A-Za-z_\u0080-\uffff]/,R2=/[0-9A-Za-z_\u0080-\uffff]/,z2=/^[ \t]*/,B2={n:`
44
+ `,r:`\r`,t:` `,b:`\b`,f:`\f`,v:`\v`,0:`\0`};function V2(e){let t=[],n=0,r=1,i=0,a=(e,n)=>{t.push({kind:e,value:n,line:r})},o=()=>{i===0&&a(P2.newline,`
45
+ `)};for(;n<e.length;){let t=e[n];if(F2.test(t)){n+=1;continue}if(t===`\r`||t===`
46
+ `){t===`\r`&&e[n+1]===`
47
+ `&&(n+=1),n+=1,o(),r+=1;continue}if(t===`/`&&e[n+1]===`/`){for(n+=2;n<e.length&&e[n]!==`
48
+ `;)n+=1;continue}if(t===`/`&&e[n+1]===`*`){n+=2;let t=!1;for(;n<e.length;){if(e[n]===`*`&&e[n+1]===`/`){n+=2;break}e[n]===`
49
+ `&&(t=!0,r+=1),n+=1}t&&o();continue}if(t===`"`){let t=U2(e,n+1,`"`,!0);n=t.index,r+=t.lines,a(P2.quoted,t.value);continue}if(t===`'`){if(e.startsWith(`'''`,n)){let t=U2(e,n+3,`'''`,!0);n=t.index,r+=t.lines,a(P2.string,W2(t.value));continue}let t=U2(e,n+1,`'`,!0);n=t.index,r+=t.lines,a(P2.string,t.value);continue}if(t==="`"){let t=U2(e,n+1,"`",!1);n=t.index,r+=t.lines,a(P2.expression,t.value);continue}if(I2.test(t)){let t=n;for(;t<e.length&&I2.test(e[t]);)t+=1;if(e[t]===`.`&&I2.test(e[t+1]??``))for(t+=1;t<e.length&&I2.test(e[t]);)t+=1;if((e[t]===`e`||e[t]===`E`)&&I2.test(e[t+1]??``))for(t+=2;t<e.length&&I2.test(e[t]);)t+=1;a(P2.number,e.slice(n,t)),n=t;continue}if(L2.test(t)){let t=n+1;for(;t<e.length&&R2.test(e[t]);)t+=1;a(P2.identifier,e.slice(n,t)),n=t;continue}let s=H2(e,n);if(s){a(P2.operator,s),n+=s.length;continue}t===`[`||t===`(`?i+=1:(t===`]`||t===`)`)&&(i=Math.max(0,i-1)),a(P2.punctuation,t),n+=1}return t}function H2(e,t){let n=e[t];if(n===`-`)return e[t+1]===`?`?`-?`:``;if(n!==`<`&&n!==`>`&&n!==`?`)return``;let r=/^\??(?:<>|<|>|-)\??/.exec(e.slice(t));return r&&/[<>-]/.test(r[0])?r[0]:``}function U2(e,t,n,r){let i=[],a=t,o=0;for(;a<e.length;){if(e.startsWith(n,a))return{value:i.join(``),index:a+n.length,lines:o};let t=e[a];if(r&&t===`\\`&&a+1<e.length){let t=e[a+1];i.push(B2[t]??t),a+=2;continue}t===`
50
+ `&&(o+=1),i.push(t),a+=1}return{value:i.join(``),index:a,lines:o}}function W2(e){let t=e.replace(/\r\n|\r/g,`
51
+ `).split(`
52
+ `);t[0]?.trim()===``&&t.shift(),t.length&&t[t.length-1].trim()===``&&t.pop();let n=t.filter(e=>e.trim()!==``).map(e=>(z2.exec(e)?.[0]??``).length),r=n.length?Math.min(...n):0;return t.map(e=>e.slice(r)).join(`
53
+ `)}var G2=/^[0-9a-z ]+$/,K2=/'/g,q2=/\?/g;function J2(e){try{return{ok:!0,model:sse(V2(e))}}catch(e){return{ok:!1,message:e instanceof Error?e.message:`Invalid DBML`}}}function Y2(e){let t=0;return{peek:(n=0)=>e[t+n]??null,next:()=>e[t++]??null,atEnd:()=>t>=e.length}}function sse(e){let t=Y2(e),n={tables:[],refs:[],enums:{},skipped:[]},r=new Map,i=new Set,a=e=>{i.has(e)||(i.add(e),n.skipped.push(e)),xse(t)};for(;!t.atEnd();){if(c4(t))continue;let e=t.peek();if(!e)break;if(!l4(e)){t.next();continue}let i=e.value.toLowerCase();if(i===`table`&&e.kind===P2.identifier){t.next();let e=X2(t,r);e&&n.tables.push(e);continue}if(i===`tablepartial`&&e.kind===P2.identifier){t.next();let e=X2(t,r);e&&r.set(e.name,e.columns);continue}if(i===`ref`&&e.kind===P2.identifier){t.next(),n.refs.push(...fse(t));continue}if(i===`enum`&&e.kind===P2.identifier){t.next(),pse(t,n.enums);continue}a(i)}return n}function X2(e,t){let{schemaName:n,name:r}=r4(e),i={schemaName:n,name:r,alias:``,comment:``,columns:[],indexes:[]},a=e.peek();if(a&&a.kind===P2.identifier&&a.value.toLowerCase()===`as`&&(e.next(),i.alias=i4(e)),gse(i,t4(e)),!a4(e))return r===``?null:i;for(;!e.atEnd();){if(c4(e))continue;let n=e.peek();if(!n)break;if(n.kind===P2.punctuation&&n.value===`}`){e.next();break}if(n.kind===P2.punctuation&&n.value===`~`){e.next();let n=t.get(i4(e));n&&i.columns.push(...n.map(e=>({...e})));continue}if(n.kind===P2.identifier){let t=n.value.toLowerCase(),r=e.peek(1);if(t===`note`&&r&&u4(r,`:`)){e.next(),e.next(),i.comment=yse(e);continue}if(t===`note`&&r&&u4(r,`{`)){e.next(),e.next(),i.comment=bse(e);continue}if(t===`indexes`&&r&&u4(r,`{`)){e.next(),e.next(),i.indexes.push(...dse(e));continue}if(r&&u4(r,`{`)){e.next(),e.next(),o4(e);continue}}let r=cse(e);r&&i.columns.push(r)}return i}function cse(e){let t=e.peek();if(!t||!l4(t))return s4(e),null;e.next();let n={name:t.value,comment:``,typeName:``,typeSchemaName:``,primaryKey:!1,unique:!1,notNull:!1,autoIncrement:!1,default:``,inlineRefs:[]},r=lse(e);return n.typeName=r.name,n.typeSchemaName=r.schemaName,mse(n,t4(e)),s4(e),n.typeName===``?null:n}function lse(e){let{schemaName:t,name:n}=r4(e);if(n===``)return{name:``,schemaName:``};let r=[n],i=e.peek();i&&u4(i,`(`)&&(e.next(),r.push(`(${use(e)})`));let a=e.peek(),o=e.peek(1);return a&&o&&u4(a,`[`)&&u4(o,`]`)&&(e.next(),e.next(),r.push(`[]`)),{name:r.join(``),schemaName:t}}function use(e){let t=[];for(;!e.atEnd();){let n=e.next();if(!n||u4(n,`)`))break;n.kind!==P2.newline&&t.push(n.kind===P2.string?`'${n.value}'`:n.value)}return t.join(``)}function dse(e){let t=[];for(;!e.atEnd();){if(c4(e))continue;let n=e.peek();if(!n)break;if(u4(n,`}`)){e.next();break}let r={name:``,unique:!1,primaryKey:!1,columnNames:[]};u4(n,`(`)?(e.next(),r.columnNames.push(...Z2(e))):l4(n)?(e.next(),r.columnNames.push(n.value)):e.next(),hse(r,t4(e)),s4(e),r.columnNames.length!==0&&t.push(r)}return t}function Z2(e){let t=[];for(;!e.atEnd();){let n=e.next();if(!n||u4(n,`)`))break;l4(n)&&t.push(n.value)}return t}function fse(e){let t=e.peek();if(t&&l4(t)){let t=e.peek(1);t&&(u4(t,`:`)||u4(t,`{`))&&e.next()}let n=e.peek();if(n&&u4(n,`:`)){e.next();let t=Q2(e);return s4(e),t?[t]:[]}if(!a4(e))return s4(e),[];let r=[];for(;!e.atEnd();){if(c4(e))continue;let t=e.peek();if(!t)break;if(u4(t,`}`)){e.next();break}let n=Q2(e);n?r.push(n):s4(e)}return r}function Q2(e){let t=e4(e),n=$2(e);if(n===``)return null;let r=e4(e);return t4(e),t.tableName===``||r.tableName===``?null:{operator:n,left:t,right:r}}function $2(e){let t=e.peek();return t?t.kind===P2.operator?(e.next(),t.value.replace(q2,``)):u4(t,`-`)?(e.next(),`-`):``:``}function e4(e){let t=[],n=[];for(;!e.atEnd();){let r=e.peek();if(!r||!l4(r))break;e.next(),t.push(r.value);let i=e.peek();if(!i||!u4(i,`.`))break;e.next();let a=e.peek();if(a&&u4(a,`(`)){e.next(),n.push(...Z2(e));break}}n.length===0&&t.length!==0&&n.push(t.pop());let r=t.pop()??``;return{schemaName:t.pop()??``,tableName:r,columnNames:n}}function pse(e,t){let{schemaName:n,name:r}=r4(e);if(t4(e),!a4(e)){s4(e);return}let i=[];for(;!e.atEnd();){if(c4(e))continue;let t=e.peek();if(!t)break;if(u4(t,`}`)){e.next();break}l4(t)?(e.next(),i.push(t.value),t4(e)):e.next(),s4(e)}r!==``&&(t[n?`${n}.${r}`:r]=i,n&&!(r in t)&&(t[r]=i))}function t4(e){let t=e.peek();if(!t||!u4(t,`[`))return[];e.next();let n=[],r=[],i=[],a=!1,o=()=>{let e=r.join(` `).toLowerCase();(e!==``||i.length!==0)&&n.push({key:e,tokens:i}),r=[],i=[],a=!1};for(;!e.atEnd();){let t=e.next();if(!t||u4(t,`]`))break;if(u4(t,`,`)){o();continue}if(!a&&u4(t,`:`)){a=!0;continue}if(a){i.push(t);continue}if(l4(t)&&G2.test(t.value.toLowerCase())){r.push(t.value);continue}a=!0,i.push(t)}return o(),n}function mse(e,t){t.forEach(({key:t,tokens:n})=>{switch(t){case`pk`:case`primary key`:e.primaryKey=!0;break;case`unique`:e.unique=!0;break;case`not null`:e.notNull=!0;break;case`increment`:e.autoIncrement=!0;break;case`note`:e.comment=n4(n);break;case`default`:e.default=vse(n);break;case`ref`:{let t=_se(n);t&&e.inlineRefs.push(t);break}}})}function hse(e,t){t.forEach(({key:t,tokens:n})=>{switch(t){case`name`:e.name=n4(n);break;case`unique`:e.unique=!0;break;case`pk`:case`primary key`:e.primaryKey=!0}})}function gse(e,t){t.forEach(({key:t,tokens:n})=>{t===`note`&&(e.comment=n4(n))})}function _se(e){let t=Y2(e),n=$2(t);if(n===``)return null;let r=e4(t);return r.tableName===``?null:{operator:n,target:r}}function n4(e){let t=e.find(e=>e.kind===P2.string||e.kind===P2.quoted||e.kind===P2.identifier);return t?t.value:``}function vse(e){let t=e.filter(e=>e.kind!==P2.newline),n=t[0];if(!n)return``;if(u4(n,`-`)&&t[1]?.kind===P2.number)return`-${t[1].value}`;switch(n.kind){case P2.string:return`'${n.value.replace(K2,`''`)}'`;case P2.expression:case P2.number:case P2.identifier:case P2.quoted:return n.value;default:return t.map(e=>e.value).join(``)}}function r4(e){let t=i4(e);if(t===``)return{schemaName:``,name:``};let n=e.peek();return!n||!u4(n,`.`)?{schemaName:``,name:t}:(e.next(),{schemaName:t,name:i4(e)})}function i4(e){let t=e.peek();return!t||!l4(t)?``:(e.next(),t.value)}function yse(e){let t=e.peek();return t&&(t.kind===P2.string||t.kind===P2.quoted)?(e.next(),t.value):``}function bse(e){let t=``;for(;!e.atEnd();){let n=e.next();if(!n||u4(n,`}`))break;t===``&&n.kind===P2.string&&(t=n.value)}return t}function a4(e){let t=0;for(;e.peek(t)?.kind===P2.newline;)t+=1;let n=e.peek(t);if(!n||!u4(n,`{`))return!1;for(let n=0;n<=t;n+=1)e.next();return!0}function o4(e){let t=1;for(;!e.atEnd()&&t!==0;){let n=e.next();if(!n)break;u4(n,`{`)?t+=1:u4(n,`}`)&&--t}}function xse(e){if(a4(e)){o4(e);return}for(;!e.atEnd();){let t=e.next();if(!t||t.kind===P2.newline)return;if(u4(t,`{`)){o4(e);return}}}function s4(e){for(;!e.atEnd();){let t=e.peek();if(!t)return;if(t.kind===P2.newline){e.next();return}if(u4(t,`}`))return;e.next()}}function c4(e){let t=e.peek();return t&&t.kind===P2.newline?(e.next(),!0):!1}function l4(e){return e.kind===P2.identifier||e.kind===P2.quoted}function u4(e,t){return e.kind===P2.punctuation&&e.value===t}var Sse={tables:[],refs:[],enums:{},skipped:[]};function Cse(e,t,n){let r=J2(e),i=r.ok?r.model:Sse,a=_W({}),o=vK(i.tables.length*100);a.settings.width=o,a.settings.height=o;let{settings:s}=n?n(a):a,c=S2(i,t,s.database);return c.settings=s,_G(c)}var d4={[X.MariaDB]:`VARCHAR(255)`,[X.MSSQL]:`varchar(255)`,[X.MySQL]:`VARCHAR(255)`,[X.Oracle]:`VARCHAR2(255)`,[X.PostgreSQL]:`varchar(255)`,[X.SQLite]:`TEXT`,[X.Databricks]:`STRING`,[X.Snowflake]:`VARCHAR(255)`},f4={[X.MariaDB]:`INT`,[X.MSSQL]:`int`,[X.MySQL]:`INT`,[X.Oracle]:`INTEGER`,[X.PostgreSQL]:`integer`,[X.SQLite]:`INTEGER`,[X.Databricks]:`INT`,[X.Snowflake]:`INT`},p4={[X.MariaDB]:`SMALLINT`,[X.MSSQL]:`smallint`,[X.MySQL]:`SMALLINT`,[X.Oracle]:`SMALLINT`,[X.PostgreSQL]:`smallint`,[X.SQLite]:`SMALLINT`,[X.Databricks]:`SMALLINT`,[X.Snowflake]:`SMALLINT`},m4={[X.MariaDB]:`BIGINT`,[X.MSSQL]:`bigint`,[X.MySQL]:`BIGINT`,[X.Oracle]:`NUMBER(19)`,[X.PostgreSQL]:`bigint`,[X.SQLite]:`BIGINT`,[X.Databricks]:`BIGINT`,[X.Snowflake]:`BIGINT`},h4={[X.MariaDB]:`DOUBLE`,[X.MSSQL]:`float`,[X.MySQL]:`DOUBLE`,[X.Oracle]:`BINARY_DOUBLE`,[X.PostgreSQL]:`double precision`,[X.SQLite]:`REAL`,[X.Databricks]:`DOUBLE`,[X.Snowflake]:`FLOAT`},g4={[X.MariaDB]:`DECIMAL`,[X.MSSQL]:`decimal`,[X.MySQL]:`DECIMAL`,[X.Oracle]:`DECIMAL`,[X.PostgreSQL]:`numeric`,[X.SQLite]:`DECIMAL`,[X.Databricks]:`DECIMAL`,[X.Snowflake]:`DECIMAL`},wse={[X.MariaDB]:`BOOLEAN`,[X.MSSQL]:`bit`,[X.MySQL]:`BOOLEAN`,[X.Oracle]:`BOOLEAN`,[X.PostgreSQL]:`boolean`,[X.SQLite]:`BOOLEAN`,[X.Databricks]:`BOOLEAN`,[X.Snowflake]:`BOOLEAN`},_4={[X.MariaDB]:`DATE`,[X.MSSQL]:`date`,[X.MySQL]:`DATE`,[X.Oracle]:`DATE`,[X.PostgreSQL]:`date`,[X.SQLite]:`DATE`,[X.Databricks]:`DATE`,[X.Snowflake]:`DATE`},v4={[X.MariaDB]:`TIME`,[X.MSSQL]:`time`,[X.MySQL]:`TIME`,[X.Oracle]:`VARCHAR2(255)`,[X.PostgreSQL]:`time`,[X.SQLite]:`TEXT`,[X.Databricks]:`STRING`,[X.Snowflake]:`TIME`},y4={[X.MariaDB]:`DATETIME`,[X.MSSQL]:`datetime2`,[X.MySQL]:`DATETIME`,[X.Oracle]:`TIMESTAMP`,[X.PostgreSQL]:`timestamp`,[X.SQLite]:`DATETIME`,[X.Databricks]:`TIMESTAMP`,[X.Snowflake]:`TIMESTAMP_NTZ`},Tse={[X.MariaDB]:`TIMESTAMP`,[X.MSSQL]:`datetimeoffset`,[X.MySQL]:`TIMESTAMP`,[X.Oracle]:`TIMESTAMP WITH TIME ZONE`,[X.PostgreSQL]:`timestamptz`,[X.SQLite]:`DATETIME`,[X.Databricks]:`TIMESTAMP`,[X.Snowflake]:`TIMESTAMP_TZ`},b4={[X.MariaDB]:`VARCHAR(255)`,[X.MSSQL]:`varchar(255)`,[X.MySQL]:`VARCHAR(255)`,[X.Oracle]:`INTERVAL DAY TO SECOND`,[X.PostgreSQL]:`interval`,[X.SQLite]:`TEXT`,[X.Databricks]:`INTERVAL DAY TO SECOND`,[X.Snowflake]:`VARCHAR(255)`},x4={[X.MariaDB]:`JSON`,[X.MSSQL]:`json`,[X.MySQL]:`JSON`,[X.Oracle]:`JSON`,[X.PostgreSQL]:`jsonb`,[X.SQLite]:`TEXT`,[X.Databricks]:`VARIANT`,[X.Snowflake]:`VARIANT`},S4={[X.MariaDB]:`UUID`,[X.MSSQL]:`uniqueidentifier`,[X.MySQL]:`CHAR(36)`,[X.Oracle]:`VARCHAR2(36)`,[X.PostgreSQL]:`uuid`,[X.SQLite]:`TEXT`,[X.Databricks]:`STRING`,[X.Snowflake]:`UUID`},C4={[X.MariaDB]:`BLOB`,[X.MSSQL]:`varbinary(max)`,[X.MySQL]:`BLOB`,[X.Oracle]:`BLOB`,[X.PostgreSQL]:`bytea`,[X.SQLite]:`BLOB`,[X.Databricks]:`BINARY`,[X.Snowflake]:`BINARY`},Ese={id:d4,string:d4,boolean:wse,int:f4,float:h4,positiveint:f4,nonnegativeint:f4,unsignedint:f4,short:p4,smallint:p4,positivefloat:h4,nonnegativefloat:h4,bigint:m4,biginteger:m4,long:m4,int8:m4,safeint:m4,decimal:g4,bigdecimal:g4,numeric:g4,money:g4,datetime:y4,datetimeiso:y4,localdatetime:y4,timestamp:y4,timestamptz:Tse,date:_4,localdate:_4,time:v4,localtime:v4,timetz:v4,duration:b4,iso8601duration:b4,interval:b4,json:x4,jsonb:x4,jsonobject:x4,uuid:S4,guid:S4,byte:C4,bytes:C4,bytea:C4,binary:C4,email:d4,emailaddress:d4,url:d4,uri:d4,void:d4};function Dse(e,t,n){let r=d4[t]??``,i=E4(n.enums,e);return i?w4(i,t)??r:E4(n.unions,e)?r:Ese[e.toLowerCase()]?.[t]??r}function Ose(e,t,n){let r=E4(t.enums,e);if(r)return n!==void 0&&w4(r,n)!==void 0?``:T4(e,r);let i=E4(t.unions,e);return i?T4(e,i):``}function w4(e,t){if(t===X.MySQL||t===X.MariaDB)return`ENUM(${e.map(e=>`'${e.replace(/'/g,`''`)}'`).join(`,`)})`}function T4(e,t){return` ${e}: ${t.join(` | `)}`}function E4(e,t){let n=e[t];return Array.isArray(n)&&n.length?n:void 0}function kse(e,t,n){let r=_W({}),i=D4(e.tables),a=new Set(e.skipped),o=e.tables.map(o=>Ase(r,t,e,n,o,i,a));return Pse(r,t,o),Hse(r,o),r}function D4(e){let t=new Map,n=new Map;for(let r of e){t.set(r.name,r);let e=r.name.toLowerCase();n.has(e)||n.set(e,r)}return e=>t.get(e)??n.get(e.toLowerCase())??null}function Ase({doc:e,collections:t},n,r,i,a,o,s){let{toWidth:c}=n,l=[],u=[];for(let e of a.fields){let{named:t}=e.typeRef;s.has(t)||(o(t)?u.push(e):l.push(e))}let d=new Set(jse(l)),f=DK(a.name),p=DK(a.comment),m=GQ({name:f,comment:p,ui:{widthName:EK(c(f)),widthComment:EK(c(p))}}),h={name:f,source:a,table:m,columns:[],referenceFields:u};return l.forEach(e=>{O4(t,h,Mse(n,r,i,m.id,e,d.has(e)))}),e.tableIds.push(m.id),J(t).collection(`tableEntities`).setOne(m),h}function jse(e){let t=e.filter(e=>e.primaryKey);if(t.length)return t;let n=e.find(e=>e.typeRef.named===`ID`&&!e.typeRef.isList);if(n)return[n];let r=e.find(e=>e.name.toLowerCase()===`id`);return r?[r]:[]}function Mse({toWidth:e},t,n,r,i,a){let{named:o,nonNull:s}=i.typeRef,c=DK(i.name),l=DK(i.dataType)||Dse(o,n,t),u=DK(i.default),d=Nse(i,t,n);return w$({tableId:r,name:c,comment:d,dataType:l,default:u,options:(i.autoIncrement?Z.autoIncrement:0)|(a?Z.primaryKey:0)|(i.unique?Z.unique:0)|(s?Z.notNull:0),ui:{widthName:EK(e(c)),widthComment:EK(e(d)),widthDataType:EK(e(l)),widthDefault:EK(e(u)),keys:a?NG.primaryKey:0}})}function Nse(e,t,n){let{named:r,isList:i}=e.typeRef,a=[],o=DK(e.comment);return o&&a.push(o),i&&a.push(`list of ${r}`),`${a.join(` `)}${Ose(r,t,n)}`.trim()}function O4(e,t,n){t.table.columnIds.push(n.id),t.table.seqColumnIds.push(n.id),t.columns.push(n),J(e).collection(`tableColumnEntities`).setOne(n)}function Pse(e,t,n){let r=D4(n),i=[];n.forEach(e=>{e.referenceFields.forEach(t=>{let n=r(t.typeRef.named);n&&i.push({source:e,target:n,field:t,consumed:!1})})});let a={claimedColumnIds:new Set,relationshipKeys:new Set},o=i.filter(e=>!e.field.typeRef.isList);[...o.filter(e=>e.field.relationFields.length),...o.filter(e=>!e.field.relationFields.length)].forEach(n=>{if(n.consumed)return;let r=Fse(i,n);n.consumed=!0,r&&(r.consumed=!0);let o=!!r?.field.typeRef.isList;k4(e,t,a,{parent:n.target,child:n.source,field:n.field,childSide:!0,relationshipType:n.field.typeRef.nonNull?o?AG.OneN:AG.OneOnly:o?AG.ZeroN:AG.ZeroOne})}),i.filter(e=>e.field.typeRef.isList).forEach(r=>{if(r.consumed)return;let o=Ise(i,r);if(r.consumed=!0,o){o.consumed=!0,Vse(e,t,n,r);return}k4(e,t,a,{parent:r.source,child:r.target,field:r.field,childSide:!1,relationshipType:r.field.typeRef.nonNull?AG.OneN:AG.ZeroN})})}function Fse(e,t){let n=e.filter(e=>e!==t&&!e.consumed&&e.source===t.target&&e.target===t.source);if(!n.length)return null;let{relationName:r}=t.field;if(r)return n.find(e=>e.field.relationName===r)??null;if(t.source===t.target)return n.length===1?n[0]:null;let i=e.filter(e=>!e.consumed&&e.source===t.source&&e.target===t.target);return n.length===1&&i.length===1?n[0]:null}function Ise(e,t){if(e.some(e=>!e.field.typeRef.isList&&(e.source===t.source&&e.target===t.target||e.source===t.target&&e.target===t.source)))return null;let n=e.filter(e=>e!==t&&!e.consumed&&e.field.typeRef.isList&&e.source===t.target&&e.target===t.source);if(!n.length)return null;let{relationName:r}=t.field;return r?n.find(e=>e.field.relationName===r)??null:n[0]}function k4(e,t,n,r){let{doc:i,collections:a}=e,{parent:o,child:s,relationshipType:c}=r,l=R1(o.columns);if(!l.length)return;let{startColumns:u,endColumns:d}=Lse(e,t,n,r,l);if(!d.length)return;let f=`${o.table.id}:${s.table.id}:${d.map(e=>e.id).join(`,`)}`;if(n.relationshipKeys.has(f))return;n.relationshipKeys.add(f),d.forEach(e=>{Q(e.ui.keys,NG.primaryKey)?e.ui.keys|=NG.foreignKey:e.ui.keys=NG.foreignKey,n.claimedColumnIds.add(e.id)});let p=CQ({identification:d.every(e=>Q(e.ui.keys,NG.primaryKey)&&Q(e.ui.keys,NG.foreignKey)),relationshipType:c,start:{tableId:o.table.id,columnIds:u.map(e=>e.id)},end:{tableId:s.table.id,columnIds:d.map(e=>e.id)}});i.relationshipIds.push(p.id),J(a).collection(`relationshipEntities`).setOne(p)}function Lse(e,t,n,{parent:r,child:i,field:a,childSide:o},s){if(o&&a.relationFields.length){let e=[],t=[];if(a.relationFields.forEach((n,o)=>{let c=G1(i.columns,n),l=a.relationReferences[o],u=l?G1(r.columns,l):s[o]??null;!c||!u||(e.push(u),t.push(c))}),t.length)return{startColumns:e,endColumns:t}}let c=o?DK(a.name):sI(r.name),l=new Set,u=[],d=[];return s.forEach(o=>{let s=Rse(c,r.name,o.name),f=zse(i.columns,s,e=>l.has(e)?!0:n.claimedColumnIds.has(e))??Bse(e,t,i,a,o,s[0]);l.add(f.id),u.push(o),d.push(f)}),{startColumns:u,endColumns:d}}function Rse(e,t,n){return[`${e}${oY(n)}`,`${hI(e)}_${hI(n)}`,`${t}${oY(n)}`,`${hI(t)}_${hI(n)}`,`${e}Id`,`${hI(e)}_id`]}function zse(e,t,n){for(let r of t){let t=G1(e,r);if(t&&!n(t.id))return t}return null}function Bse({collections:e},{toWidth:t},n,r,i,a){let o=U1(n.columns,``,a),{dataType:s}=i,c=w$({tableId:n.table.id,name:o,dataType:s,options:r.typeRef.nonNull?Z.notNull:0,ui:{keys:NG.foreignKey,widthName:EK(t(o)),widthDataType:EK(t(s))}});return O4(e,n,c),c}function Vse(e,t,n,r){let{doc:i,collections:a}=e,{toWidth:o}=t,s=r.source,c=r.target,l=R1(s.columns),u=R1(c.columns);if(!l.length||!u.length)return;let d=U1(n.map(e=>e.table),``,`${s.name}_${c.name}`),f=`Junction table inferred from ${s.name} <-> ${c.name}`,p=GQ({name:d,comment:f,ui:{widthName:EK(o(d)),widthComment:EK(o(f))}}),m={name:d,source:{name:d,comment:f,fields:[],indexes:[]},table:p,columns:[],referenceFields:[]};i.tableIds.push(p.id),J(a).collection(`tableEntities`).setOne(p),n.push(m),A4(e,t,m,s,l),A4(e,t,m,c,u)}function A4(e,{toWidth:t},n,r,i){let{doc:a,collections:o}=e,s=i.map(e=>{let i=U1(n.columns,``,`${sI(r.name)}${oY(e.name)}`),{dataType:a}=e,s=w$({tableId:n.table.id,name:i,dataType:a,options:Z.primaryKey|Z.notNull,ui:{keys:NG.primaryKey|NG.foreignKey,widthName:EK(t(i)),widthDataType:EK(t(a))}});return O4(o,n,s),s}),c=CQ({identification:!0,relationshipType:AG.ZeroN,start:{tableId:r.table.id,columnIds:i.map(e=>e.id)},end:{tableId:n.table.id,columnIds:s.map(e=>e.id)}});a.relationshipIds.push(c.id),J(o).collection(`relationshipEntities`).setOne(c)}function Hse({doc:e,collections:t},n){n.forEach(({source:n,table:r,columns:i})=>{n.indexes.forEach(n=>{let a=fZ({name:DK(n.name),tableId:r.id,unique:n.unique}),o=[];n.fieldNames.forEach(e=>{let t=G1(i,e);t&&o.push(kZ({indexId:a.id,columnId:t.id,orderType:PG.ASC}))}),o.length&&(o.forEach(e=>{a.indexColumnIds.push(e.id),a.seqIndexColumnIds.push(e.id),J(t).collection(`indexColumnEntities`).setOne(e)}),e.indexIds.push(a.id),J(t).collection(`indexEntities`).setOne(a))})})}var Use=[`Query`,`Mutation`,`Subscription`],j4=`__`,Wse=[`PageInfo`],Gse=[`Connection`,`Edge`],Kse=[`_aggregate`,`_aggregate_fields`,`_mutation_response`,`_max_fields`,`_min_fields`,`_sum_fields`,`_avg_fields`,`_stddev_fields`,`_variance_fields`,`_bool_exp`,`_order_by`,`_insert_input`,`_set_input`,`_on_conflict`,`_constraint`,`_update_column`,`_select_column`],qse=[`_Service`,`_Entity`,`_Any`,`_FieldSet`],Jse=`db_`,Yse=[`autoincrement`,`autoincrement()`],M4=/[_A-Za-z]/,Xse=/[_0-9A-Za-z]/;function Zse(e){try{return{ok:!0,model:ece(Qse(e))}}catch(e){return{ok:!1,message:$se(e)}}}function Qse(e){try{return SH(e)}catch(t){let n=dce(e);if(n===e)throw t;try{return SH(n)}catch{throw t}}}function $se(e){let t=e instanceof Error?e.message:String(e),n=e?.locations?.[0];if(!n)return t;let r=t.replace(/^Syntax Error:\s*/,``);return`Syntax Error at line ${n.line}, column ${n.column}: ${r}`}function ece(e){let t={},n={},r=[],i=new Map,a=new Map,o=new Set;for(let s of e.definitions)switch(s.kind){case gV:case OV:nce(a,s);break;case yV:case kV:{let e=s.name.value,t=i.get(e)??[];t.push(...s.fields??[]),i.set(e,t);break}case pV:case TV:for(let e of s.operationTypes??[])o.add(e.type.name.value);break;case xV:t[s.name.value]=(s.values??[]).map(e=>e.name.value);break;case bV:n[s.name.value]=(s.types??[]).map(e=>e.name.value);break;case hV:r.push(s.name.value)}let s=o.size?o:new Set(Use),c=[],l=[],u=new Map;for(let e of a.values()){if(uce(e.name,s)){l.push(e.name);continue}let t=rce(e,i);if(!t.fields.length){l.push(e.name);continue}t.name!==e.name&&u.set(e.name,t.name),c.push(t)}return tce(c,u),{tables:c,enums:t,customScalars:r,unions:n,skipped:l}}function tce(e,t){if(t.size)for(let n of e)for(let e of n.fields){let n=t.get(e.typeRef.named);n&&(e.typeRef.named=n)}}function nce(e,t){let n=t.name.value,r=(t.interfaces??[]).map(e=>e.name.value),i=e.get(n);if(i){i.fieldNodes.push(...t.fields??[]),i.interfaceNames.push(...r),i.directives.push(...t.directives??[]),i.comment||=z4(t);return}e.set(n,{name:n,comment:z4(t),interfaceNames:r,fieldNodes:[...t.fields??[]],directives:[...t.directives??[]]})}function rce(e,t){let n=ice(e.fieldNodes),r=new Set(n.map(e=>e.name.value)),i=[];for(let n of e.interfaceNames)for(let e of t.get(n)??[]){let t=e.name.value;r.has(t)||(r.add(t),i.push(e))}let a={name:e.name,comment:e.comment,fields:[...i,...n].map(ace).filter($F),indexes:[]};for(let t of e.directives)cce(a,t);return a}function ice(e){let t=new Set;return e.filter(e=>{let n=e.name.value;return!t.has(n)&&(t.add(n),!0)})}function ace(e){if(e.name.value.startsWith(j4))return null;let t={name:e.name.value,comment:z4(e),typeRef:oce(e.type),primaryKey:!1,unique:!1,autoIncrement:!1,default:``,dataType:``,relationName:``,relationFields:[],relationReferences:[],hasArguments:(e.arguments??[]).length>0};for(let n of e.directives??[])sce(t,n);return t}function oce(e){let t=e.kind===fV,n=t?e.type:e,r=n.kind===dV,i=r?n.type:n,a=r&&i.kind===`NonNullType`,o=i;for(;o.kind!==uV;)o=o.type;return{named:o.name.value,nonNull:t,isList:r,itemNonNull:a}}function sce(e,t){let n=t.name.value;if(n.startsWith(Jse)){e.dataType=lce(n,t);return}switch(n){case`id`:case`primaryKey`:e.primaryKey=!0;break;case`unique`:e.unique=!0;break;case`autoincrement`:case`autoIncrement`:e.autoIncrement=!0;break;case`default`:{let n=N4(t,`value`);if(!n)break;let r=I4(n);Yse.includes(r.toLowerCase())?e.autoIncrement=!0:e.default=r;break}case`map`:{let n=P4(t,`name`)||P4(t,`value`);n&&(e.name=n);break}case`relation`:{let n=P4(t,`name`)||P4(t,`value`);n&&(e.relationName=n);let r=N4(t,`fields`);r&&(e.relationFields=L4(r));let i=N4(t,`references`);i&&(e.relationReferences=L4(i));break}case`column`:{let n=P4(t,`name`);n&&(e.name=n);let r=P4(t,`dataType`);r&&(e.dataType=r);let i=N4(t,`default`);i&&(e.default=I4(i));let a=F4(t,`autoIncrement`);a!==null&&(e.autoIncrement=a);let o=F4(t,`unique`);o!==null&&(e.unique=o);let s=F4(t,`primaryKey`);s!==null&&(e.primaryKey=s);break}}}function cce(e,t){switch(t.name.value){case`map`:{let n=P4(t,`name`)||P4(t,`value`);n&&(e.name=n);break}case`table`:{let n=P4(t,`name`);n&&(e.name=n);let r=N4(t,`comment`);r&&(e.comment=I4(r));break}case`index`:{let n=N4(t,`fields`),r=n?L4(n):[];if(!r.length)break;let i={name:P4(t,`name`),unique:F4(t,`unique`)??!1,fieldNames:r};e.indexes.push(i);break}}}function lce(e,t){let n=e.slice(3),r=t.arguments??[];return r.length?`${n}(${r.map(e=>I4(e.value)).join(`, `)})`:n}function N4(e,t){let n=(e.arguments??[]).find(e=>e.name.value===t);return n?n.value:null}function P4(e,t){let n=N4(e,t);return n?I4(n):``}function F4(e,t){let n=N4(e,t);return n?I4(n)===`true`:null}function I4(e){switch(e.kind){case nV:case eV:case tV:case aV:return e.value;case rV:return e.value?`true`:`false`;case iV:return`null`;case oV:return e.values.map(I4).join(`, `);default:return``}}function L4(e){return(e.kind===`ListValue`?e.values:[e]).map(I4).filter(e=>e!==``)}function uce(e,t){return t.has(e)||e.startsWith(j4)||qse.includes(e)||Wse.includes(e)||Gse.some(t=>R4(e,t))||Kse.some(t=>R4(e,t))}function R4(e,t){return e.length>t.length&&e.endsWith(t)}function z4(e){if(e.description)return B4(e.description.value);if(!e.loc)return``;let t=[],n=e.loc.startToken.line-1,r=e.loc.startToken.prev;for(;r&&r.kind===W.COMMENT&&r.line===n&&(!r.prev||r.prev.line<r.line);)t.unshift(r.value??``),--n,r=r.prev;return B4(t.join(` `))}function B4(e){return e.replace(/\s+/g,` `).trim()}function dce(e){let t=``,n=0,r=!1;for(;n<e.length;){let i=e[n];if(i===`#`){let r=H4(e,n);t+=e.slice(n,r),n=r;continue}if(i===`"`){let r=U4(e,n);t+=e.slice(n,r),n=r;continue}if(i!==`@`||!M4.test(e[n+1]??``)){t+=i,n+=1;continue}let a=V4(e,n+1),o=e.slice(n+1,a);for(;e[a]===`.`&&M4.test(e[a+1]??``);){let t=V4(e,a+1);o+=`_${e.slice(a+1,t)}`,a=t,r=!0}t+=`@${o}`,n=a;let s=W4(e,n);if(e[s]===`(`){t+=e.slice(n,s+1),n=s+1;for(let i=0;n<e.length;i++){let a=W4(e,n);if(t+=e.slice(n,a),n=a,e[n]===`)`||n>=e.length)break;let o=fce(e,n);o===-1?(t+=i===0?`value: `:`value${i}: `,r=!0):(t+=e.slice(n,o+1),n=o+1);let s=Math.max(pce(e,W4(e,n)),n+1);t+=e.slice(n,s),n=s}}}return r?t:e}function fce(e,t){if(!M4.test(e[t]??``))return-1;let n=W4(e,V4(e,t));return e[n]===`:`?n:-1}function V4(e,t){let n=t;for(;n<e.length&&Xse.test(e[n]);)n+=1;return n}function H4(e,t){let n=e.indexOf(`
54
+ `,t);return n===-1?e.length:n}function U4(e,t){if(e.startsWith(`"""`,t)){let n=e.indexOf(`"""`,t+3);return n===-1?e.length:n+3}let n=t+1;for(;n<e.length;){let t=e[n];if(t===`\\`){n+=2;continue}if(t===`
55
+ `)return n;if(t===`"`)return n+1;n+=1}return n}function pce(e,t){let n=[],r=t;for(;r<e.length;){let t=e[r];if(t===`"`){r=U4(e,r);continue}if(t===`[`||t===`{`){n.push(t),r+=1;continue}if(t===`]`||t===`}`){if(!n.length)break;if(n.pop(),r+=1,!n.length)return r;continue}if(!n.length&&(t===`)`||t===`,`||t===`#`)||!n.length&&/\s/.test(t))break;r+=1}return r}function W4(e,t){let n=t;for(;n<e.length;){let t=e[n];if(t===`#`){n=H4(e,n);continue}if(!/[\s,]/.test(t))break;n+=1}return n}var mce={tables:[],enums:{},customScalars:[],unions:{},skipped:[]};function hce(e,t,n){let r=Zse(e),i=r.ok?r.model:mce,a=_W({}),o=vK(i.tables.length*100);a.settings.width=o,a.settings.height=o;let{settings:s}=n?n(a):a,c=kse(i,t,s.database);return c.settings=s,_G(c)}var G4={createTable:`create.table`,createIndex:`create.index`,alterTableAddUnique:`alter.table.add.unique`,alterTableAddPrimaryKey:`alter.table.add.primaryKey`,alterTableAddForeignKey:`alter.table.add.foreignKey`,commentOnTable:`comment.on.table`,commentOnColumn:`comment.on.column`},K4={asc:`ASC`,desc:`DESC`},q4={string:`string`,leftParent:`leftParent`,rightParent:`rightParent`,leftBracket:`leftBracket`,rightBracket:`rightBracket`,comma:`comma`,period:`period`,equal:`equal`,semicolon:`semicolon`},J4={doubleQuote:`"`,dash:`-`,slash:`/`,asterisk:`*`,newLine:`
56
+ `,singleQuote:`'`,backtick:"`",whiteSpace:/\s/,string:/\S/,breakString:/;|,|\(|\)|\[|\]|\.|=/,equal:`=`,period:`.`,comma:`,`,semicolon:`;`,leftParent:`(`,rightParent:`)`,leftBracket:`[`,rightBracket:`]`},Y4=e=>t=>e===t,X4=e=>t=>e.test(t),Z4={doubleQuote:Y4(J4.doubleQuote),dash:Y4(J4.dash),slash:Y4(J4.slash),asterisk:Y4(J4.asterisk),newLine:Y4(J4.newLine),singleQuote:Y4(J4.singleQuote),backtick:Y4(J4.backtick),whiteSpace:X4(J4.whiteSpace),string:X4(J4.string),breakString:X4(J4.breakString),equal:Y4(J4.equal),period:Y4(J4.period),comma:Y4(J4.comma),semicolon:Y4(J4.semicolon),leftParent:Y4(J4.leftParent),rightParent:Y4(J4.rightParent),leftBracket:Y4(J4.leftBracket),rightBracket:Y4(J4.rightBracket)};function gce(e){let t=[],n=0,r=()=>n<e.length;for(;r();){let i=e[n];if(Z4.whiteSpace(i)){let t=``;for(;r()&&Z4.whiteSpace(i);)t+=i,i=e[++n];continue}if(Z4.dash(i)&&Z4.dash(e[n+1])){for(;r()&&!Z4.newLine(i);)i=e[++n];continue}if(Z4.slash(i)&&Z4.asterisk(e[n+1])){for(n+=2,i=e[n];r()&&!(Z4.asterisk(i)&&Z4.slash(e[n+1]));)i=e[++n];n+=2;continue}if(Z4.leftParent(i)){t.push({type:q4.leftParent,value:i}),n++;continue}if(Z4.rightParent(i)){t.push({type:q4.rightParent,value:i}),n++;continue}if(Z4.comma(i)){t.push({type:q4.comma,value:i}),n++;continue}if(Z4.period(i)){t.push({type:q4.period,value:i}),n++;continue}if(Z4.equal(i)){t.push({type:q4.equal,value:i}),n++;continue}if(Z4.semicolon(i)){t.push({type:q4.semicolon,value:i}),n++;continue}if(Z4.rightBracket(i)){t.push({type:q4.rightBracket,value:i}),n++;continue}if(Z4.leftBracket(i)){let a=``;for(i=e[++n];r()&&!Z4.rightBracket(i);)a+=i,i=e[++n];t.push({type:q4.string,value:a,quoted:!0}),n++;continue}if(Z4.doubleQuote(i)){let a=``;for(i=e[++n];r()&&!Z4.doubleQuote(i);)a+=i,i=e[++n];t.push({type:q4.string,value:a,quoted:!0}),n++;continue}if(Z4.singleQuote(i)){let a=``;for(i=e[++n];r()&&!Z4.singleQuote(i);)a+=i,i=e[++n];t.push({type:q4.string,value:a,quoted:!0}),n++;continue}if(Z4.backtick(i)){let a=``;for(i=e[++n];r()&&!Z4.backtick(i);)a+=i,i=e[++n];t.push({type:q4.string,value:a,quoted:!0}),n++;continue}if(Z4.string(i)){let a=``;for(;r()&&Z4.string(i)&&!Z4.breakString(i)&&!(Z4.dash(i)&&Z4.dash(e[n+1]))&&!(Z4.slash(i)&&Z4.asterisk(e[n+1]));)a+=i,i=e[++n];t.push({type:q4.string,value:a});continue}n++}return t}var _ce=`ARRAY.BIGINT.BINARY.BOOLEAN.BYTE.CHAR.DATE.DEC.DECIMAL.DOUBLE.FLOAT.GEOGRAPHY.GEOMETRY.INT.INTEGER.INTERVAL DAY TO HOUR.INTERVAL DAY TO MINUTE.INTERVAL DAY TO SECOND.INTERVAL DAY.INTERVAL HOUR TO MINUTE.INTERVAL HOUR TO SECOND.INTERVAL HOUR.INTERVAL MINUTE TO SECOND.INTERVAL MINUTE.INTERVAL MONTH.INTERVAL SECOND.INTERVAL YEAR TO MONTH.INTERVAL YEAR.INTERVAL.LONG.MAP.NUMERIC.OBJECT.REAL.SHORT.SMALLINT.STRING.STRUCT.TIMESTAMP_LTZ.TIMESTAMP_NTZ.TIMESTAMP.TINYINT.VARCHAR.VARIANT.VOID`.split(`.`),vce=`BIGINT.BINARY.BIT.BLOB.BOOL.BOOLEAN.CHAR BYTE.CHAR VARYING.CHAR.CHARACTER VARYING.CHARACTER.CLOB.DATE.DATETIME.DEC.DECIMAL.DOUBLE PRECISION.DOUBLE.ENUM.FIXED.FLOAT.FLOAT4.FLOAT8.GEOMETRY.GEOMETRYCOLLECTION.INET4.INET6.INT.INT1.INT2.INT3.INT4.INT8.INTEGER.JSON.LINESTRING.LONG CHAR VARYING.LONG CHARACTER VARYING.LONG VARBINARY.LONG VARCHAR.LONG VARCHARACTER.LONG.LONGBLOB.LONGTEXT.MEDIUMBLOB.MEDIUMINT.MEDIUMTEXT.MIDDLEINT.MULTILINESTRING.MULTIPOINT.MULTIPOLYGON.NATIONAL CHAR VARYING.NATIONAL CHAR.NATIONAL CHARACTER VARYING.NATIONAL CHARACTER.NATIONAL VARCHAR.NATIONAL VARCHARACTER.NCHAR VARCHAR.NCHAR VARCHARACTER.NCHAR VARYING.NCHAR.NUMBER.NUMERIC.NVARCHAR.POINT.POLYGON.RAW.REAL.SERIAL.SET.SMALLINT.SQL_TSI_YEAR.TEXT.TIME.TIMESTAMP.TINYBLOB.TINYINT.TINYTEXT.UUID.VARBINARY.VARCHAR.VARCHAR2.VARCHARACTER.VECTOR.XMLTYPE.YEAR`.split(`.`),yce=`BIGINT.BINARY VARYING.BINARY.BIT.CHAR VARYING.CHAR.CHARACTER VARYING.CHARACTER.DATE.DATETIME.DATETIME2.DATETIMEOFFSET.DEC.DECIMAL.DOUBLE PRECISION.FLOAT.GEOGRAPHY.GEOMETRY.HIERARCHYID.IMAGE.INT.INTEGER.JSON.MONEY.NATIONAL CHAR VARYING.NATIONAL CHAR.NATIONAL CHARACTER VARYING.NATIONAL CHARACTER.NATIONAL TEXT.NCHAR.NTEXT.NUMERIC.NVARCHAR.REAL.ROWVERSION.SMALLDATETIME.SMALLINT.SMALLMONEY.SQL_VARIANT.TEXT.TIME.TIMESTAMP.TINYINT.UNIQUEIDENTIFIER.VARBINARY.VARCHAR.VECTOR.XML`.split(`.`),bce=`BIGINT.BINARY.BIT.BLOB.BOOL.BOOLEAN.CHAR BYTE.CHAR.CHARACTER VARYING.CHARACTER.DATE.DATETIME.DEC.DECIMAL.DOUBLE PRECISION.DOUBLE.ENUM.FIXED.FLOAT.FLOAT4.FLOAT8.GEOMCOLLECTION.GEOMETRY.GEOMETRYCOLLECTION.INT.INT1.INT2.INT3.INT4.INT8.INTEGER.JSON.LINESTRING.LONG VARBINARY.LONG VARCHAR.LONG.LONGBLOB.LONGTEXT.MEDIUMBLOB.MEDIUMINT.MEDIUMTEXT.MIDDLEINT.MULTILINESTRING.MULTIPOINT.MULTIPOLYGON.NATIONAL CHAR VARYING.NATIONAL CHAR.NATIONAL CHARACTER VARYING.NATIONAL CHARACTER.NATIONAL VARCHAR.NCHAR VARCHAR.NCHAR.NUMERIC.NVARCHAR.POINT.POLYGON.REAL.SERIAL.SET.SMALLINT.TEXT.TIME.TIMESTAMP.TINYBLOB.TINYINT.TINYTEXT.VARBINARY.VARCHAR.VARCHARACTER.YEAR`.split(`.`),xce=`ANYDATA.BFILE.BINARY_DOUBLE.BINARY_FLOAT.BLOB.BOOL.BOOLEAN.CHAR VARYING.CHAR.CHARACTER VARYING.CHARACTER.CLOB.DATE.DEC.DECIMAL.DOUBLE PRECISION.FLOAT.INT.INTEGER.INTERVAL DAY TO SECOND.INTERVAL YEAR TO MONTH.JSON.LONG RAW.LONG VARCHAR.LONG.NATIONAL CHAR VARYING.NATIONAL CHAR.NATIONAL CHARACTER VARYING.NATIONAL CHARACTER.NCHAR VARYING.NCHAR.NCLOB.NUMBER.NUMERIC.NVARCHAR2.RAW.REAL.ROWID.SDO_GEOMETRY.SDO_GEORASTER.SDO_TOPO_GEOMETRY.SMALLINT.TIMESTAMP WITH LOCAL TIME ZONE.TIMESTAMP WITH TIME ZONE.TIMESTAMP.URIType.UROWID.VARCHAR.VARCHAR2.VECTOR.XMLType`.split(`.`),Sce=`BIGINT.BIGSERIAL.BIT VARYING.BIT.BOOL.BOOLEAN.BOX.BPCHAR.BYTEA.CHAR.CHARACTER VARYING.CHARACTER.CID.CIDR.CIRCLE.DATE.DATEMULTIRANGE.DATERANGE.DECIMAL.DOUBLE PRECISION.FLOAT.FLOAT4.FLOAT8.INET.INT.INT2.INT4.INT4MULTIRANGE.INT4RANGE.INT8.INT8MULTIRANGE.INT8RANGE.INTEGER.INTERVAL DAY TO HOUR.INTERVAL DAY TO MINUTE.INTERVAL DAY TO SECOND.INTERVAL DAY.INTERVAL HOUR TO MINUTE.INTERVAL HOUR TO SECOND.INTERVAL HOUR.INTERVAL MINUTE TO SECOND.INTERVAL MINUTE.INTERVAL MONTH.INTERVAL SECOND.INTERVAL YEAR TO MONTH.INTERVAL YEAR.INTERVAL.JSON.JSONB.JSONPATH.LINE.LSEG.MACADDR.MACADDR8.MONEY.NAME.NUMERIC.NUMMULTIRANGE.NUMRANGE.OID.PATH.PG_LSN.PG_SNAPSHOT.POINT.POLYGON.REAL.REGCLASS.REGCOLLATION.REGCONFIG.REGDICTIONARY.REGNAMESPACE.REGOPER.REGOPERATOR.REGPROC.REGPROCEDURE.REGROLE.REGTYPE.SERIAL.SERIAL2.SERIAL4.SERIAL8.SMALLINT.SMALLSERIAL.TEXT.TID.TIME WITH TIME ZONE.TIME WITHOUT TIME ZONE.TIME.TIMESTAMP WITH TIME ZONE.TIMESTAMP WITHOUT TIME ZONE.TIMESTAMP.TIMESTAMPTZ.TIMETZ.TSMULTIRANGE.TSQUERY.TSRANGE.TSTZMULTIRANGE.TSTZRANGE.TSVECTOR.TXID_SNAPSHOT.UUID.VARBIT.VARCHAR.XID.XID8.XML`.split(`.`),Cce=`ARRAY.BIGINT.BINARY.BOOLEAN.BYTEINT.CHAR VARYING.CHAR.CHARACTER.DATE.DATETIME.DEC.DECFLOAT.DECIMAL.DOUBLE PRECISION.DOUBLE.FILE.FLOAT.FLOAT4.FLOAT8.GEOGRAPHY.GEOMETRY.INT.INTEGER.MAP.NCHAR VARYING.NCHAR.NUMBER.NUMERIC.NVARCHAR.NVARCHAR2.OBJECT.REAL.SMALLINT.STRING.TEXT.TIME.TIMESTAMP WITH LOCAL TIME ZONE.TIMESTAMP WITH TIME ZONE.TIMESTAMP WITHOUT TIME ZONE.TIMESTAMP_LTZ.TIMESTAMP_NTZ.TIMESTAMP_TZ.TIMESTAMP.TIMESTAMPLTZ.TIMESTAMPNTZ.TIMESTAMPTZ.TINYINT.UNKNOWN.UUID.VARBINARY.VARCHAR.VARCHAR2.VARIANT.VECTOR`.split(`.`),wce=`BIGINT.BLOB.BOOLEAN.CHARACTER.CLOB.DATE.DATETIME.DECIMAL.DOUBLE PRECISION.DOUBLE.FLOAT.INT.INT2.INT8.INTEGER.MEDIUMINT.NATIVE CHARACTER.NCHAR.NUMERIC.NVARCHAR.REAL.SMALLINT.TEXT.TINYINT.UNSIGNED BIG INT.VARCHAR.VARYING CHARACTER`.split(`.`),Q4=e=>t=>n=>t[n]?t[n].type===e:!1,$4=e=>{let t=e.toUpperCase();return e=>n=>{let r=e[n];return r?!r.quoted&&r.value.toUpperCase()===t:!1}},e3=Q4(q4.string),t3=Q4(q4.equal),n3=Q4(q4.period),r3=Q4(q4.comma),i3=Q4(q4.semicolon),a3=Q4(q4.leftParent),o3=Q4(q4.rightParent);q4.leftBracket,q4.rightBracket;var s3=$4(`CREATE`),c3=$4(`ALTER`),Tce=$4(`DROP`),Ece=$4(`USE`),Dce=$4(`RENAME`),Oce=$4(`DELETE`),kce=$4(`SELECT`),l3=$4(`TABLE`),u3=$4(`INDEX`),d3=$4(`UNIQUE`),Ace=$4(`ADD`),f3=$4(`PRIMARY`),p3=$4(`KEY`),m3=$4(`CONSTRAINT`),h3=$4(`FOREIGN`),g3=$4(`NOT`),_3=$4(`NULL`),jce=$4(`DEFAULT`),v3=$4(`COMMENT`),Mce=$4(`REFERENCES`),y3=$4(`ASC`),b3=$4(`DESC`),x3=$4(`ON`),Nce=$4(`AUTO_INCREMENT`),Pce=$4(`AUTOINCREMENT`),Fce=$4(`IF`),Ice=$4(`EXISTS`),Lce=$4(`ONLY`),S3=$4(`IS`),Rce=$4(`COLUMN`),zce=$4(`CHARACTER`),Bce=$4(`SET`),Vce=$4(`COLLATE`),Hce=$4(`ENFORCED`),Uce=$4(`RELY`),Wce=$4(`NORELY`),Gce=$4(`DEFERRABLE`),Kce=$4(`INITIALLY`),qce=$4(`DEFERRED`),Jce=$4(`IMMEDIATE`),Yce=$4(`IDENTITY`),Xce=$4(`FUNCTION`),Zce=$4(`CLUSTER`),Qce=$4(`BY`),$ce=$4(`FULLTEXT`),ele=$4(`SPATIAL`),tle=e=>{let t=Hce(e),n=Uce(e),r=Wce(e),i=Gce(e),a=Kce(e),o=qce(e),s=Jce(e);return e=>t(e)||n(e)||r(e)||i(e)||a(e)||o(e)||s(e)},nle=[[`SET`,`NULL`],[`SET`,`DEFAULT`],[`NO`,`ACTION`],[`CASCADE`],[`RESTRICT`]],rle=[`FULL`,`PARTIAL`,`SIMPLE`],ile=e=>{let t=t=>{let n=e[t];return n&&n.type===q4.string&&!n.quoted?n.value.toUpperCase():``};return e=>t(e)===`ON`&&[`DELETE`,`UPDATE`].includes(t(e+1))?2+(nle.find(n=>n.every((n,r)=>t(e+2+r)===n))?.length??0):t(e)===`MATCH`&&rle.includes(t(e+1))?2:0},ale=e=>{let t=$ce(e),n=ele(e),r=u3(e),i=p3(e);return e=>(t(e)||n(e))&&(r(e+1)||i(e+1))},ole=[`ARRAY`,`MAP`,`STRUCT`],sle=e=>{let t=e3(e),n=e=>{let t=0;for(let n of e)n===`<`?t++:n===`>`&&t--;return t};return r=>{let i=e[r];if(!i||i.quoted||!t(r))return 0;let a=i.value.indexOf(`<`);if(a===-1||!ole.includes(i.value.slice(0,a).toUpperCase()))return 0;let o=0;for(let t=r;t<e.length;t++)if(o+=n(e[t].value),o<=0)return t-r+1;return e.length-r}},cle=e=>{let t=Nce(e),n=Pce(e),r=Yce(e);return e=>t(e)||n(e)||r(e)},lle=e=>{let t=Zce(e),n=Qce(e);return e=>t(e)&&n(e+1)},C3=e=>{let t=v3(e),n=x3(e);return e=>t(e)&&n(e+1)},ule=e=>{let t=C3(e),n=l3(e);return e=>t(e)&&n(e+2)},dle=e=>{let t=C3(e),n=Rce(e);return e=>t(e)&&n(e+2)},w3=e=>{let t=s3(e),n=c3(e),r=Tce(e),i=Ece(e),a=Dce(e),o=Oce(e),s=kce(e),c=C3(e);return e=>t(e)||n(e)||r(e)||i(e)||a(e)||o(e)||s(e)||c(e)},fle=[`OR`,`REPLACE`,`TRANSIENT`,`TEMPORARY`,`TEMP`,`LOCAL`,`GLOBAL`,`VOLATILE`,`UNLOGGED`,`HYBRID`,`ICEBERG`,`DYNAMIC`,`EXTERNAL`],T3=e=>{let t=s3(e),n=l3(e),r=e3(e),i=Xce(e),a=Fce(e),o=g3(e),s=Ice(e);return c=>{if(!t(c))return 0;let l=c+1;for(;l<e.length&&!n(l);){let t=e[l];if(!r(l)||t.quoted||!fle.includes(t.value.toUpperCase()))return 0;l++}return!n(l)||i(l+1)?0:(l++,a(l)&&o(l+1)&&s(l+2)&&(l+=3),l-c)}},ple=e=>{let t=zce(e),n=Bce(e);return e=>t(e)&&n(e+1)},mle=e=>{let t=T3(e);return e=>t(e)>0},E3=e=>{let t=s3(e),n=u3(e),r=d3(e);return e=>t(e)&&r(e+1)&&n(e+2)},hle=e=>{let t=s3(e),n=u3(e),r=E3(e);return e=>t(e)&&n(e+1)||r(e)},gle=e=>{let t=c3(e),n=l3(e);return e=>t(e)&&n(e+1)},_le=e=>{let t=e3(e),n=n3(e);return e=>{if(!t(e))return 0;let r=e+1;for(;n(r)&&t(r+1);)r+=2;return r-e}},D3=e=>{let t=gle(e),n=Lce(e),r=Ace(e),i=m3(e),a=e3(e),o=_le(e),s=(e,t)=>{let n=t,s=o(n);return!s||(n+=s,!r(n))?0:(n++,i(n)&&a(n+1)&&(n+=2),n-e)};return e=>{if(!t(e))return{length:0,only:!1};let r=e+2;if(n(r)){let t=s(e,r+1);if(t)return{length:t,only:!0}}return{length:s(e,r),only:!1}}},O3=e=>{let t=D3(e);return e=>t(e).length},k3=e=>{let t=D3(e);return e=>t(e).only},vle=e=>{let t=O3(e),n=f3(e),r=p3(e);return e=>{let i=t(e);return i>0&&n(e+i)&&r(e+i+1)}},yle=e=>{let t=O3(e),n=h3(e),r=p3(e);return e=>{let i=t(e);return i>0&&n(e+i)&&r(e+i+1)}},ble=e=>{let t=O3(e),n=d3(e);return e=>{let r=t(e);return r>0&&n(e+r)}},A3=Array.from(new Set([..._ce,...vce,...yce,...bce,...xce,...Sce,...Cce,...wce].map(e=>e.toUpperCase()))),xle=(e=>{let t=new Map;for(let n of e){let e=n.split(` `),r=t.get(e[0])??[];r.push(e),t.set(e[0],r)}for(let e of t.values())e.sort((e,t)=>t.length-e.length);return t})(A3),Sle=e=>{let t=e3(e),n=a3(e),r=o3(e),i=t=>{let i=0;for(let a=t;a<e.length;a++)if(n(a))i++;else if(r(a)&&(i--,i===0))return a+1;return e.length},a=(r,a)=>{let o=r;for(let[r,s]of a.entries()){let a=e[o];if(!a||!t(o)||r>0&&a.quoted||a.value.toUpperCase()!==s)return 0;o++,n(o)&&(o=i(o))}return o-r};return n=>{let r=e[n];if(!r||!t(n))return 0;let i=r.value.toUpperCase();for(let e of xle.get(i)??[]){let t=a(n,e);if(t)return t}return+!!A3.includes(i)}};function Cle(e,t){let n=w3(e),r=e3(e),i=a3(e),a=o3(e),o=n3(e),s=i3(e),c=t3(e),l=v3(e),u=lle(e),d=T3(e),f=()=>t.value<e.length,p={type:G4.createTable,name:``,comment:``,columns:[],indexes:[],foreignKeys:[]},m=d(t.value);t.value+=m===0?2:m;let h=!1,g=!0;for(;f()&&!n(t.value);){let n=e[t.value];if(s(t.value)){t.value++;break}if(p.name&&u(t.value)){if(t.value+=2,r(t.value)&&i(t.value+1)&&t.value++,i(t.value)){let e=0;for(;f();){if(i(t.value))e++;else if(a(t.value)&&(e--,e===0)){t.value++;break}t.value++}}continue}if(i(t.value)){if(t.value++,h||!g){let e=1;for(;f()&&e>0;)i(t.value)?e++:a(t.value)&&e--,t.value++;continue}let{columns:n,indexes:r,foreignKeys:o}=wle(e,t);p.columns=n,p.indexes=r,p.foreignKeys=o,h=!0;continue}if(r(t.value)&&!p.name){for(p.name=n.value,g=!0,t.value++;o(t.value);){if(!r(t.value+1)){t.value++;break}p.name=e[t.value+1].value,t.value+=2}continue}if(l(t.value)){n=e[++t.value],c(t.value)&&(n=e[++t.value]),r(t.value)&&(p.comment=n.value,t.value++),g=!1;continue}g=!1,t.value++}return p}function wle(e,t){let n=e3(e),r=a3(e),i=o3(e),a=r3(e),o=m3(e),s=u3(e),c=f3(e),l=h3(e),u=cle(e),d=d3(e),f=_3(e),p=g3(e),m=jce(e),h=v3(e),g=b3(e),_=y3(e),v=p3(e),y=t3(e),b=ple(e),ee=Vce(e),te=tle(e),x=Sle(e),S=sle(e),ne=ile(e),re=ale(e),ie=()=>t.value<e.length,ae=e=>o(e)||c(e)||l(e)||d(e)||s(e)||v(e)||re(e),oe=()=>{let o=[],s={name:``,sort:K4.asc},c=!1;for(t.value++;ie()&&!i(t.value);){if(r(t.value)){c||=!s.name;let e=0;for(;ie();){if(r(t.value))e++;else if(i(t.value)&&--e===0)break;t.value++}}n(t.value)&&!g(t.value)&&!_(t.value)&&(s.name=e[t.value].value),g(t.value)&&(s.sort=K4.desc),a(t.value)&&(o.push(s),s={name:``,sort:K4.asc}),t.value++}return s.name!==``&&o.push(s),t.value++,c?[]:o},se=[],ce=[],le=[],ue=[],de=[],fe={name:``,dataType:``,default:``,comment:``,primaryKey:!1,autoIncrement:!1,unique:!1,nullable:!0},pe=!1;for(;ie();){let g=e[t.value],_=S(t.value);if(_){let n=t.value+_,r=[];for(;t.value<n;)r.push(a(t.value)?`,`:e[t.value].value),t.value++;fe.dataType=r.reduce((e,t)=>!e||t===`,`?e+t:`${e} ${t}`,``);continue}let me=ne(t.value);if(me){t.value+=me;continue}if(!fe.name&&ae(t.value)&&(pe=!0),pe&&re(t.value)){t.value++;continue}if(n(t.value)&&!pe&&!fe.name&&!p(t.value)&&!te(t.value)){fe.name=g.value,t.value++;continue}if(r(t.value)){let e=0;for(;ie();){if(r(t.value))e++;else if(i(t.value)&&(e--,e===0)){t.value++;break}t.value++}continue}if(o(t.value)){g=e[++t.value],n(t.value)&&t.value++;continue}if(c(t.value)){if(g=e[++t.value],v(t.value)){if(g=e[++t.value],pe&&n(t.value)&&(g=e[++t.value]),r(t.value)){for(g=e[++t.value];ie()&&!i(t.value);)n(t.value)&&ue.push(g.value.toUpperCase()),g=e[++t.value];t.value++}else fe.primaryKey=!0}continue}if(l(t.value)){let n=j3(e,t);n&&le.push(n);continue}if(s(t.value)||v(t.value)){if(g=e[++t.value],n(t.value)){let n=g.value;if(g=e[++t.value],r(t.value)){let e=oe();e.length&&ce.push({name:n,unique:!1,columns:e})}}continue}if(d(t.value)){g=e[++t.value];let a=s(t.value);(v(t.value)||a)&&(g=e[++t.value]);let o=``;if(!fe.name&&n(t.value)&&(o=g.value,g=e[++t.value]),a&&o&&r(t.value)){let e=oe();e.length>1?ce.push({name:o,unique:!0,columns:e}):de.push(...e.map(e=>e.name.toUpperCase()));continue}if(r(t.value)){for(g=e[++t.value];ie()&&!i(t.value);)n(t.value)&&de.push(g.value.toUpperCase()),g=e[++t.value];t.value++}else fe.unique=!0;continue}if(p(t.value)){g=e[++t.value],f(t.value)?(fe.nullable=!1,t.value++):te(t.value)&&t.value++;continue}if(te(t.value)){t.value++;continue}if(m(t.value)){g=e[++t.value],n(t.value)&&(fe.default=g.quoted?`'${g.value.replaceAll(`'`,`''`)}'`:g.value,t.value++);continue}if(h(t.value)){g=e[++t.value],y(t.value)&&(g=e[++t.value]),n(t.value)&&(fe.comment=g.value,t.value++);continue}if(u(t.value)){fe.autoIncrement=!0,t.value++;continue}if(b(t.value)){t.value+=2,n(t.value)&&t.value++;continue}if(ee(t.value)){t.value++,y(t.value)&&t.value++,n(t.value)&&t.value++;continue}let he=x(t.value);if(he&&(pe||fe.dataType)){t.value+=he;continue}if(he){let a=t.value+he,o=``,s=0;for(;t.value<a;)g=e[t.value],r(t.value)?(o+=`(`,s++):i(t.value)?(o+=`)`,s--):o+=s?n(t.value)&&(n(t.value-1)||i(t.value-1))?` ${g.value}`:g.value:o?` ${g.value}`:g.value,t.value++;for(;s>0;)o+=`)`,s--;fe.dataType=o;continue}if(a(t.value)){(fe.name||fe.dataType)&&se.push(fe),fe={name:``,dataType:``,default:``,comment:``,primaryKey:!1,autoIncrement:!1,unique:!1,nullable:!0},pe=!1,t.value++;continue}if(i(t.value)){t.value++;break}t.value++}return!se.includes(fe)&&(fe.name||fe.dataType)&&se.push(fe),se.forEach(e=>{ue.includes(e.name.toUpperCase())&&(e.primaryKey=!0),de.includes(e.name.toUpperCase())&&(e.unique=!0)}),{columns:se,indexes:ce,foreignKeys:le}}function j3(e,t){let n=e3(e),r=a3(e),i=o3(e),a=Mce(e),o=n3(e),s=p3(e),c=()=>t.value<e.length,l={columnNames:[],refTableName:``,refColumnNames:[]},u=e[++t.value];if(s(t.value)){if(u=e[++t.value],r(t.value)){for(u=e[++t.value];c()&&!i(t.value);)n(t.value)&&l.columnNames.push(u.value),u=e[++t.value];u=e[++t.value]}if(a(t.value)&&(u=e[++t.value],n(t.value))){for(l.refTableName=u.value,t.value++;o(t.value);){if(!n(t.value+1)){t.value++;break}l.refTableName=e[t.value+1].value,t.value+=2}if(u=e[t.value],r(t.value)){for(u=e[++t.value];c()&&!i(t.value);)n(t.value)&&l.refColumnNames.push(u.value),u=e[++t.value];u=e[++t.value]}}if(l.columnNames.length&&l.columnNames.length===l.refColumnNames.length)return l}return null}function Tle(e,t){let n=w3(e),r=i3(e),i=e3(e),a=m3(e),o=n3(e),s=l3(e),c=h3(e),l=k3(e)(t.value),u=()=>t.value<e.length,d={type:G4.alterTableAddForeignKey,name:``,columnNames:[],refTableName:``,refColumnNames:[]};for(t.value++;u()&&!n(t.value);){let n=e[t.value];if(r(t.value)){t.value++;break}if(s(t.value)){if(n=e[++t.value],l&&(n=e[++t.value]),i(t.value))for(d.name=n.value,t.value++;o(t.value);){if(!i(t.value+1)){t.value++;break}d.name=e[t.value+1].value,t.value+=2}continue}if(a(t.value)){n=e[++t.value],i(t.value)&&t.value++;continue}if(c(t.value)){let n=j3(e,t);n&&(d.columnNames=n.columnNames,d.refTableName=n.refTableName,d.refColumnNames=n.refColumnNames);continue}t.value++}return d}function Ele(e,t){let n=w3(e),r=i3(e),i=e3(e),a=a3(e),o=o3(e),s=m3(e),c=f3(e),l=n3(e),u=p3(e),d=l3(e),f=k3(e)(t.value),p=()=>t.value<e.length,m={type:G4.alterTableAddPrimaryKey,name:``,columnNames:[]};for(t.value++;p()&&!n(t.value);){let n=e[t.value];if(r(t.value)){t.value++;break}if(d(t.value)){if(n=e[++t.value],f&&(n=e[++t.value]),i(t.value))for(m.name=n.value,t.value++;l(t.value);){if(!i(t.value+1)){t.value++;break}m.name=e[t.value+1].value,t.value+=2}continue}if(s(t.value)){n=e[++t.value],i(t.value)&&t.value++;continue}if(c(t.value)){if(n=e[++t.value],u(t.value)&&(n=e[++t.value],a(t.value))){for(n=e[++t.value];p()&&!o(t.value);)i(t.value)&&m.columnNames.push(n.value),n=e[++t.value];n=e[++t.value]}continue}t.value++}return m}function Dle(e,t){let n=w3(e),r=i3(e),i=e3(e),a=m3(e),o=n3(e),s=l3(e),c=d3(e),l=a3(e),u=o3(e),d=k3(e)(t.value),f=()=>t.value<e.length,p={type:G4.alterTableAddUnique,name:``,columnNames:[]};for(t.value++;f()&&!n(t.value);){let n=e[t.value];if(r(t.value)){t.value++;break}if(s(t.value)){if(n=e[++t.value],d&&(n=e[++t.value]),i(t.value))for(p.name=n.value,t.value++;o(t.value);){if(!i(t.value+1)){t.value++;break}p.name=e[t.value+1].value,t.value+=2}continue}if(a(t.value)){n=e[++t.value],i(t.value)&&t.value++;continue}if(c(t.value)){if(n=e[++t.value],l(t.value)){for(n=e[++t.value];f()&&!u(t.value);)i(t.value)&&p.columnNames.push(n.value),n=e[++t.value];t.value++}continue}t.value++}return p}function Ole(e,t){let n=w3(e),r=e3(e),i=n3(e),a=i3(e),o=S3(e),s=_3(e),c=()=>t.value<e.length,l={type:G4.commentOnColumn,tableName:``,columnName:``,comment:``};t.value+=3;let u=[],d=!1;for(;c()&&!n(t.value);){let n=e[t.value];if(a(t.value)){t.value++;break}if(o(t.value)){if(d=!0,n=e[++t.value],s(t.value)){t.value++;continue}r(t.value)&&(l.comment=n.value,t.value++);continue}if(i(t.value)){t.value++;continue}if(r(t.value)&&!d){u.push(n.value),t.value++;continue}t.value++}return l.columnName=u.length?u[u.length-1]:``,l.tableName=u.length>1?u[u.length-2]:``,l}function kle(e,t){let n=w3(e),r=e3(e),i=n3(e),a=i3(e),o=S3(e),s=_3(e),c=()=>t.value<e.length,l={type:G4.commentOnTable,name:``,comment:``};t.value+=3;let u=!1;for(;c()&&!n(t.value);){let n=e[t.value];if(a(t.value)){t.value++;break}if(o(t.value)){if(u=!0,n=e[++t.value],s(t.value)){t.value++;continue}r(t.value)&&(l.comment=n.value,t.value++);continue}if(i(t.value)){t.value++;continue}if(r(t.value)&&!u){l.name=n.value,t.value++;continue}t.value++}return l}function Ale(e,t){let n=w3(e),r=i3(e),i=d3(e),a=e3(e),o=a3(e),s=o3(e),c=r3(e),l=u3(e),u=x3(e),d=b3(e),f=y3(e),p=E3(e),m=()=>t.value<e.length,h={type:G4.createIndex,name:``,unique:i(t.value+1),tableName:``,columns:[]};for(t.value+=p(t.value)?2:1;m()&&!n(t.value);){let n=e[t.value];if(r(t.value)){t.value++;break}if(l(t.value)){n=e[++t.value],a(t.value)&&(h.name=n.value);continue}if(u(t.value)){if(n=e[++t.value],a(t.value)&&(h.tableName=n.value,n=e[++t.value],o(t.value))){n=e[++t.value];let r={name:``,sort:K4.asc};for(;m()&&!s(t.value);)a(t.value)&&!d(t.value)&&!f(t.value)&&(r.name=n.value),d(t.value)&&(r.sort=K4.desc),c(t.value)&&(h.columns.push(r),r={name:``,sort:K4.asc}),n=e[++t.value];!h.columns.includes(r)&&r.name!==``&&h.columns.push(r),t.value++}continue}t.value++}return h}function jle(e){let t=[],n={value:0},r=()=>n.value<e.length,i=mle(e),a=hle(e),o=vle(e),s=yle(e),c=ble(e),l=ule(e),u=dle(e);for(;r();){if(i(n.value)){t.push(Cle(e,n));continue}if(a(n.value)){t.push(Ale(e,n));continue}if(o(n.value)){t.push(Ele(e,n));continue}if(s(n.value)){t.push(Tle(e,n));continue}if(c(n.value)){t.push(Dle(e,n));continue}if(l(n.value)){t.push(kle(e,n));continue}if(u(n.value)){t.push(Ole(e,n));continue}n.value++}return t}var Mle=e=>jle(gce(e));function Nle(e,t,n){let r=_W({}),i=Fle(Ple(Mle(e))),a=vK(i.length*100);return r.settings.width=a,r.settings.height=a,i.forEach(e=>Ile(r,e,t)),Lle(r,i),Rle(r,i),_G(n?n(r):r)}function Ple(e){let t={tables:[],indexes:[],primaryKeys:[],foreignKeys:[],uniques:[],tableComments:[],columnComments:[]};for(let n of e)switch(n.type){case G4.createTable:n.name&&t.tables.push(n);break;case G4.createIndex:n.tableName&&n.columns.length&&t.indexes.push(n);break;case G4.alterTableAddPrimaryKey:n.name&&n.columnNames.length&&t.primaryKeys.push(n);break;case G4.alterTableAddForeignKey:n.name&&n.columnNames.length&&n.refTableName&&n.refColumnNames.length&&n.columnNames.length===n.refColumnNames.length&&t.foreignKeys.push(n);break;case G4.alterTableAddUnique:n.name&&n.columnNames.length&&t.uniques.push(n);break;case G4.commentOnTable:n.name&&t.tableComments.push(n);break;case G4.commentOnColumn:n.tableName&&n.columnName&&t.columnComments.push(n)}return t}function Fle({tables:e,indexes:t,primaryKeys:n,foreignKeys:r,uniques:i,tableComments:a,columnComments:o}){return t.forEach(t=>{let n=G1(e,t.tableName);n&&n.indexes.push({name:t.name,unique:t.unique,columns:t.columns})}),n.forEach(t=>{let n=G1(e,t.name);n&&t.columnNames.forEach(e=>{let t=G1(n.columns,e);t&&(t.primaryKey=!0)})}),i.forEach(t=>{let n=G1(e,t.name);n&&t.columnNames.forEach(e=>{let t=G1(n.columns,e);t&&(t.unique=!0)})}),r.forEach(t=>{let n=G1(e,t.name);n&&n.foreignKeys.push({columnNames:t.columnNames,refTableName:t.refTableName,refColumnNames:t.refColumnNames})}),a.forEach(({name:t,comment:n})=>{let r=G1(e,t);r&&(r.comment=n)}),o.forEach(({tableName:t,columnName:n,comment:r})=>{let i=G1(e,t);if(!i)return;let a=G1(i.columns,n);a&&(a.comment=r)}),e}function Ile({doc:e,collections:t},n,{toWidth:r}){let i=GQ({name:n.name,comment:n.comment,ui:{widthName:EK(r(n.name)),widthComment:EK(r(n.comment))}});n.columns.forEach(e=>{let n=w$({tableId:i.id,name:e.name,comment:e.comment,dataType:e.dataType,default:e.default,options:(e.autoIncrement?Z.autoIncrement:0)|(e.primaryKey?Z.primaryKey:0)|(e.unique?Z.unique:0)|(e.nullable?0:Z.notNull),ui:{widthName:EK(r(e.name)),widthComment:EK(r(e.comment)),widthDataType:EK(r(e.dataType)),widthDefault:EK(r(e.default)),keys:e.primaryKey?NG.primaryKey:0}});i.columnIds.push(n.id),i.seqColumnIds.push(n.id),J(t).collection(`tableColumnEntities`).setOne(n)}),e.tableIds.push(i.id),J(t).collection(`tableEntities`).setOne(i)}function Lle({doc:e,collections:t},n){let r=J(t).collection(`tableEntities`).selectByIds(e.tableIds),i=J(t).collection(`tableColumnEntities`);n.forEach(n=>{if(!n.foreignKeys.length)return;let a=G1(r,n.name);if(!a)return;let o=i.selectByIds(a.columnIds);n.foreignKeys.forEach(n=>{let s=G1(r,n.refTableName);if(!s)return;let c=i.selectByIds(s.columnIds),l=[],u=[];n.refColumnNames.forEach(e=>{let t=G1(c,e);t&&l.push(t)}),n.columnNames.forEach(e=>{let t=G1(o,e);t&&(u.push(t),Q(t.ui.keys,NG.primaryKey)?t.ui.keys|=NG.foreignKey:t.ui.keys=NG.foreignKey)});let d=CQ({identification:!u.some(e=>!(Q(e.ui.keys,NG.primaryKey)&&Q(e.ui.keys,NG.foreignKey))),relationshipType:AG.ZeroN,start:{tableId:s.id,columnIds:l.map(e=>e.id)},end:{tableId:a.id,columnIds:u.map(e=>e.id)}});e.relationshipIds.push(d.id),J(t).collection(`relationshipEntities`).setOne(d)})})}function Rle({doc:e,collections:t},n){let r=J(t).collection(`tableEntities`).selectByIds(e.tableIds);n.forEach(n=>{n.indexes.forEach(i=>{let a=G1(r,n.name);if(!a)return;let o=J(t).collection(`tableColumnEntities`).selectByIds(a.columnIds),s=[],c=fZ({name:i.name,tableId:a.id,unique:i.unique});i.columns.forEach(e=>{let t=G1(o,e.name);if(!t)return;let n=kZ({indexId:c.id,columnId:t.id,orderType:e.sort===K4.asc?PG.ASC:PG.DESC});s.push(n)}),s.length!==0&&(s.forEach(e=>{c.indexColumnIds.push(e.id),c.seqIndexColumnIds.push(e.id),J(t).collection(`indexColumnEntities`).setOne(e)}),e.indexIds.push(c.id),J(t).collection(`indexEntities`).setOne(c))})})}function zle({doc:e,collections:t},n){let r=KG(n);return J(t).collection(`relationshipEntities`).selectByIds(e.relationshipIds).filter(({start:e,end:t})=>r(e.tableId)&&r(t.tableId)).map(({relationshipType:e,start:t,end:n})=>({relationshipType:e,start:{tableId:t.tableId,columnIds:[...t.columnIds]},end:{tableId:n.tableId,columnIds:[...n.columnIds]}}))}function Ble({doc:e,collections:t},n){let r=KG(n),i=J(t).collection(`indexColumnEntities`),a=[];for(let n of J(t).collection(`indexEntities`).selectByIds(e.indexIds)){if(!r(n.tableId))continue;let e=[],t=!0;for(let r of n.indexColumnIds){let n=i.selectById(r);if(!n){t=!1;break}e.push({columnId:n.columnId,orderType:n.orderType})}t&&a.push({tableId:n.tableId,name:n.name,unique:n.unique,indexColumns:e})}return a}new TextEncoder;function Vle({tables:e,columns:t,memos:n,relationships:r,indexes:i},a){let o=[],s=[],c=[],l=new Map(t.map(e=>[e.sourceId,e])),u=new Map,d=new Map;for(let t of e){let e=a.get(t.sourceId);if(!e)continue;let n=xI();s.push(n),u.set(t.sourceId,n),o.push(KQ({id:n,ui:{x:e.x,y:e.y,zIndex:e.zIndex,color:t.ui.color}}),e$({id:n,value:t.name}),n$({id:n,value:t.comment}));for(let e of t.columnIds){let t=l.get(e);if(!t)continue;let r={id:xI(),tableId:n};d.set(e,r.id),o.push(T$(r),k$({...r,value:t.name}),N$({...r,value:t.dataType}),F$({...r,value:t.default}),j$({...r,value:t.comment}),z$({...r,value:Q(t.options,Z.primaryKey)}),U$({...r,value:Q(t.options,Z.notNull)}),V$({...r,value:Q(t.options,Z.unique)}),L$({...r,value:Q(t.options,Z.autoIncrement)}))}}for(let e of r){let t=u.get(e.start.tableId),n=u.get(e.end.tableId);if(!t||!n)continue;let r=M3(e.start.columnIds,d),i=M3(e.end.columnIds,d);!r||!i||o.push(wQ({id:xI(),relationshipType:e.relationshipType,start:{tableId:t,columnIds:r},end:{tableId:n,columnIds:i}}))}for(let e of i){let t=u.get(e.tableId);if(!t)continue;let n=M3(e.indexColumns.map(({columnId:e})=>e),d);if(!n)continue;let r=xI();o.push(pZ({id:r,tableId:t}),_Z({id:r,tableId:t,value:e.name}),yZ({id:r,tableId:t,value:e.unique})),e.indexColumns.forEach(({orderType:e},i)=>{let a=xI(),s=n[i];o.push(jZ({id:a,indexId:r,tableId:t,columnId:s}),LZ({id:a,indexId:r,columnId:s,value:e}))})}for(let e of n){let t=a.get(e.sourceId);if(!t)continue;let n=xI();c.push(n),o.push(JZ({id:n,ui:{x:t.x,y:t.y,zIndex:t.zIndex,color:e.ui.color,width:e.ui.width,height:e.ui.height}}),nQ({id:n,value:e.value}))}return{actions:o,tableIds:s,memoIds:c}}function M3(e,t){let n=[];for(let r of e){let e=t.get(r);if(!e)return null;n.push(e)}return n}function N3(e,t,n=[]){let{doc:{relationshipIds:r},collections:i}=t,a=e.pop();return a&&(n.some(({columnId:e})=>e===a.columnId)||(n.push(a),J(i).collection(`relationshipEntities`).selectByIds(r).forEach(({id:t,start:n,end:r})=>{let i=n.columnIds.indexOf(a.columnId);if(i!==-1){let n=r.columnIds[i];e.push({columnId:n,relationshipIds:[t]})}else{let i=r.columnIds.indexOf(a.columnId);if(i!==-1){let r=n.columnIds[i];e.push({columnId:r,relationshipIds:[t]})}}})),N3(e,t,n)),n}var P3=AK.flow,Hle={focusFlowTableAction$:e=>function*({editor:t,settings:n}){e.length&&(n.canvasType!==vG.visualization&&(yield MJ({value:vG.visualization})),t.visualizationMode!==jK.flow&&(yield lq({value:jK.flow})),yield t.views.flow?sq({tableIds:e,kind:P3}):UK({kind:P3,centerIds:e}))}},F3=15;function I3(e){return Object.entries(e).reduce((e,[t,n])=>(n===OK.table?e.tableIds.push(t):n===OK.memo&&e.memoIds.push(t),e),{tableIds:[],memoIds:[]})}var L3=e=>function*(){yield qY(),yield XY({value:e})},R3=e=>function*(){yield QY(),yield eX({value:e})},Ule=(e,t,n=`document`)=>function*(r){let{tableIds:i,memoIds:a}=I3(r.editor.selectedMap),{zoomLevel:o}=nJ(r,n),s=e/o,c=t/o;if(n!==`document`){i.length&&(yield mq(pq.drag,tq({ids:i,movementX:s,movementY:c,kind:n})));return}i.length&&(yield mq(pq.drag,JQ({ids:i,movementX:s,movementY:c}))),a.length&&(yield mq(pq.drag,XZ({ids:a,movementX:s,movementY:c})))},Wle=()=>function*(){yield C1(),yield m1()},Gle=(e,t)=>function*(n){yield*z3(n,{input:{tables:e.tables,columns:e.columns,memos:e.memos,relationships:e.relationships??[],indexes:e.indexes??[]},offset:{x:50*t,y:50*t},escapeCollision:!0})},Kle=({tableIds:e,memoIds:t,offset:n,escapeCollision:r})=>function*(i){yield*z3(i,{input:Jle(i,{tableIds:e??[],memoIds:t??[]}),offset:{x:iI(n.x,4),y:iI(n.y,4)},escapeCollision:r})};function*z3(e,{input:t,offset:n,escapeCollision:r}){if(t.tables.length===0&&t.memos.length===0)return;let{settings:i,doc:{tableIds:a,memoIds:o},collections:s}=e,c=J(s).collection(`tableEntities`),l=J(s).collection(`memoEntities`),{actions:u,tableIds:d,memoIds:f}=Vle(t,qle(b1({entities:[...t.tables.map(B3),...t.memos.map(B3)],offset:n,escapeCollision:r,settings:i,tables:c.selectByIds(a),memos:l.selectByIds(o),findSource:e=>c.selectById(e)??l.selectById(e)})));yield V3(),yield u,yield UY({...d.reduce((e,t)=>(e[t]=OK.table,e),{}),...f.reduce((e,t)=>(e[t]=OK.memo,e),{})})}var B3=({sourceId:e,ui:{x:t,y:n,zIndex:r}})=>({sourceId:e,ui:{x:t,y:n,zIndex:r}});function qle(e){return new Map(Array.from(e,([e,{x:t,y:n,zIndex:r}])=>[e,{x:iI(t,4),y:iI(n,4),zIndex:r}]))}function Jle(e,{tableIds:t,memoIds:n}){let{collections:r}=e,i=J(r).collection(`tableEntities`).selectByIds(t),a=J(r).collection(`memoEntities`).selectByIds(n),o=i.flatMap(e=>J(r).collection(`tableColumnEntities`).selectByIds(e.columnIds)),s=i.map(({id:e})=>e);return{tables:i.map(e=>({sourceId:e.id,name:e.name,comment:e.comment,columnIds:[...e.columnIds],ui:{x:e.ui.x,y:e.ui.y,zIndex:e.ui.zIndex,widthName:e.ui.widthName,widthComment:e.ui.widthComment,color:e.ui.color}})),columns:o.map(e=>({sourceId:e.id,tableId:e.tableId,name:e.name,comment:e.comment,dataType:e.dataType,default:e.default,options:e.options,ui:{keys:e.ui.keys,widthName:e.ui.widthName,widthComment:e.ui.widthComment,widthDataType:e.ui.widthDataType,widthDefault:e.ui.widthDefault}})),memos:a.map(e=>({sourceId:e.id,value:e.value,ui:{x:e.ui.x,y:e.ui.y,width:e.ui.width,height:e.ui.height,zIndex:e.ui.zIndex,color:e.ui.color}})),relationships:zle(e,s),indexes:Ble(e,s)}}var Yle=(e,t=`document`)=>function*(n){let{collections:r}=n,{tableIds:i,memoIds:a}=Sq(n,t),o={...J(r).collection(`tableEntities`).selectByIds(i).reduce((r,i)=>{let a=Yq(n,i,t);return N1(e,{x:a.x+a.width/2-F3,y:a.y+a.height/2-F3,w:F3,h:F3})&&(r[i.id]=OK.table),r},{}),...J(r).collection(`memoEntities`).selectByIds(a).reduce((t,n)=>{let r=Cq(n),i=wq(n);return N1(e,{x:n.ui.x+r/2-F3,y:n.ui.y+i/2-F3,w:F3,h:F3})&&(t[n.id]=OK.memo),t},{})};yield V3(),aI(o)||(yield UY(o))},V3=()=>function*(){yield VY(),yield oX()},Xle=(e,t)=>function*(n){let{editor:{focusTable:r}}=n;r&&(e===NK.Tab&&!t&&(DY(r.focusType)&&TY(n)&&!mY(n)||!DY(r.focusType)&&hY(n)&&_Y(n))?yield O1(r.tableId):yield cX({moveKey:e,shiftKey:t}))},Zle=e=>function*({editor:t}){t.drawRelationship?.relationshipType===e?yield EX():yield SX({relationshipType:e})},H3=e=>function*({collections:t}){let n=J(t).collection(`tableEntities`).selectById(e);if(n){if(!J(t).collection(`tableColumnEntities`).selectByIds(n.columnIds).some(e=>Q(e.options,Z.primaryKey))){let t=xI();yield T$({tableId:e,id:t}),yield z$({tableId:e,id:t,value:!0}),yield iX({tableId:e,columnId:t,focusType:MK.columnName,$mod:!1,shiftKey:!1})}yield wX({tableId:e})}},Qle=e=>function*({editor:{selectedMap:t},collections:n}){let{tableIds:r,memoIds:i}=I3(t),a=J(n).collection(`tableEntities`).selectByIds(r),o=J(n).collection(`memoEntities`).selectByIds(i);yield a.map(t=>i$({id:t.id,color:e,prevColor:t.ui.color})),yield o.map(t=>iQ({id:t.id,color:e,prevColor:t.ui.color}))},$le=e=>function*({settings:t},n){yield L3(Nle(e,n,e=>(e.settings={...e.settings,...uI(HF(t),[`width`,`height`,`originX`,`originY`,`scrollTop`,`scrollLeft`,`zoomLevel`])},e))),yield c$()},eue=e=>function*({settings:t},n){yield L3(hce(e,n,e=>(e.settings={...e.settings,...uI(HF(t),[`width`,`height`,`originX`,`originY`,`scrollTop`,`scrollLeft`,`zoomLevel`])},e))),yield c$()},tue=e=>function*({settings:t},n){yield L3(Cse(e,n,e=>(e.settings={...e.settings,...uI(HF(t),[`width`,`height`,`originX`,`originY`,`scrollTop`,`scrollLeft`,`zoomLevel`])},e))),yield c$()},nue=e=>function*({settings:t},n){yield L3(g2(e,n,e=>(e.settings={...e.settings,...uI(HF(t),[`width`,`height`,`originX`,`originY`,`scrollTop`,`scrollLeft`,`zoomLevel`])},e))),yield c$()},rue=e=>function*({editor:{focusTable:t}}){!t||!t.columnId||(yield BX({tableId:t.tableId,columnIds:e?[...t.selectColumnIds]:[t.columnId]}))};function iue(e,t,n){let r=[...t],i=[];for(let t of n){let n=r.indexOf(t);if(n===-1)return[];let a=r[r.length-1];t!==a&&(r.splice(n,1),r.push(t),i.push(G$({tableId:e,id:t,targetId:a})))}return PF(r,t)?[]:i}var U3={loadJsonAction$:L3,initialLoadJsonAction$:R3,moveAllAction$:Ule,removeSelectedAction$:Wle,pasteEntitiesAction$:Gle,duplicateAction$:Kle,dragSelectAction$:Yle,unselectAllAction$:V3,focusMoveTableAction$:Xle,drawStartRelationshipAction$:Zle,drawStartAddRelationshipAction$:H3,changeColorAllAction$:Qle,loadSchemaSQLAction$:$le,loadSchemaGraphQLAction$:eue,loadSchemaDBMLAction$:tue,loadSchemaAMLAction$:nue,dragstartColumnAction$:rue,dragoverColumnAction$:(e,t)=>function*({editor:{draggableColumn:n},collections:r}){if(!n||n.columnIds.length===0)return;let{tableId:i,columnIds:a}=n,o=J(r).collection(`tableEntities`),s=o.selectById(i);if(!s)return;if(t===i){let t=s.columnIds.indexOf(a[0]);if(t===-1)return;if(e===null){yield iue(i,s.columnIds,a);return}let n=s.columnIds.indexOf(e);if(n===-1)return;let r=a.map(t=>G$({tableId:i,id:t,targetId:e}));t<n&&r.reverse(),yield r;return}if(!o.selectById(t))return;let c=J(r).collection(`tableColumnEntities`).selectByIds(a);if(c.length===0)return;yield k1(i,a);let l=c.map(()=>xI());for(let n=0;n<c.length;n++){let r=c[n],i=l[n],a={id:i,tableId:t};yield[T$(a),k$({...a,value:r.name}),N$({...a,value:r.dataType}),F$({...a,value:r.default}),j$({...a,value:r.comment}),z$({...a,value:Q(r.options,Z.primaryKey)}),U$({...a,value:Q(r.options,Z.notNull)}),V$({...a,value:Q(r.options,Z.unique)}),L$({...a,value:Q(r.options,Z.autoIncrement)}),...e===null?[]:[G$({...a,targetId:e})],iX({tableId:t,columnId:i,focusType:MK.columnName,$mod:!0,shiftKey:!1})]}yield BX({tableId:t,columnIds:l})},columnKeyHoverStartAction$:e=>function*(t){let{columnIds:n,relationshipIds:r}=N3([{columnId:e,relationshipIds:[]}],t).reduce((e,{columnId:t,relationshipIds:n})=>(e.columnIds.push(t),e.relationshipIds.push(...n),e),{columnIds:[],relationshipIds:[]});yield AX({columnIds:XF(n)}),yield MX({relationshipIds:XF(r)})},columnKeyHoverEndAction$:()=>function*(){yield AX({columnIds:[]}),yield MX({relationshipIds:[]})},...Hle},W3={addIndexAction$:e=>function*(){yield pZ({id:xI(),tableId:e})},changeIndexUniqueAction$:e=>function*({collections:t}){let n=J(t).collection(`indexEntities`).selectById(e);n&&(yield yZ({id:e,tableId:n.tableId,value:!n.unique}))}},G3={addIndexColumnAction$:(e,t)=>function*({collections:n}){let r=J(n).collection(`indexEntities`).selectById(e);if(!r)return;let i=J(n).collection(`indexColumnEntities`).selectByIds(r.seqIndexColumnIds).find(e=>e.columnId===t);i?yield jZ({id:i.id,indexId:e,tableId:r.tableId,columnId:t}):yield jZ({id:xI(),indexId:e,tableId:r.tableId,columnId:t})},removeIndexColumnAction$:(e,t)=>function*({collections:n}){let r=J(n).collection(`indexEntities`).selectById(e);if(!r)return;let i=J(n).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).filter(e=>e.columnId===t);for(let t of i)yield NZ({id:t.id,indexId:e,tableId:r.tableId})},changeIndexColumnOrderTypeAction$:e=>function*({collections:t}){let n=J(t).collection(`indexColumnEntities`).selectById(e);n&&(yield LZ({id:e,indexId:n.indexId,columnId:n.columnId,value:n.orderType===PG.ASC?PG.DESC:PG.ASC}))},moveIndexColumnAction$:(e,t)=>function*({collections:n}){if(e===t)return;let r=J(n).collection(`indexColumnEntities`).selectById(e);if(!r)return;let i=J(n).collection(`indexEntities`).selectById(r.indexId);i&&(yield FZ({id:e,indexId:r.indexId,tableId:i.tableId,targetId:t}))}},K3={addRelationshipAction$:(e,t,n)=>function*({doc:{tableIds:r},collections:i}){let a=J(i).collection(`tableEntities`).selectByIds(r),o=a.find(({id:t})=>t===e),s=a.find(({id:e})=>e===t);if(!o||!s)return;let c=J(i).collection(`tableColumnEntities`).selectByIds(o.columnIds).filter(({options:e})=>Q(e,Z.primaryKey)),l=c.length?null:w$({tableId:o.id}),u=l?[l]:c,d=u.map(()=>xI());yield[...l?[T$({id:l.id,tableId:o.id}),z$({id:l.id,tableId:o.id,value:!0})]:[],...g1(u,s.id,d),wQ({id:xI(),relationshipType:n,start:{tableId:o.id,columnIds:u.map(({id:e})=>e)},end:{tableId:s.id,columnIds:d}})]}};function aue(e,t,n,r){let i=oJ({...e,zoomLevel:t},n);return{movementX:iI(r.x-i.x,4),movementY:iI(r.y-i.y,4)}}function q3(e,t,n){let{viewport:r}=e.editor,i={x:r.width/2,y:r.height/2};return aue(t,n,sJ(t,i),i)}var oue={changeZoomLevelAction$:(e,t)=>function*(n){let r=rJ(n,t),{originX:i,originY:a}=r,{movementX:o,movementY:s}=q3(n,r,yK(e)),c={originX:i+o,originY:a+s};if(t&&t!==`document`){yield ZK({value:e,kind:t}),yield qK({...c,kind:t});return}yield vJ({value:e}),yield wJ(c)},streamZoomLevelAction$:(e,t)=>function*(n){let r=rJ(n,t),i=q3(n,r,yK(r.zoomLevel+e));if(t&&t!==`document`){yield $K({value:e,kind:t}),yield YK({...i,kind:t});return}yield bJ({value:e}),yield EJ(i)}};Object.freeze({...sZ,...U3,...SZ,...W3,...BZ,...G3,...dQ,...h1,...jQ,...K3,...$J,...oue,...d$,...w1,...J$,...M1});var J3=`table.add,table.move,table.moveTo,table.remove,table.changeName,table.changeComment,table.changeColor,table.sort,column.add,column.remove,column.changeName,column.changeComment,column.changeDataType,column.changeDefault,column.changeAutoIncrement,column.changePrimaryKey,column.changeUnique,column.changeNotNull,column.move,relationship.add,relationship.remove,relationship.changeType,index.add,index.remove,index.changeName,index.changeUnique,indexColumn.add,indexColumn.remove,indexColumn.move,indexColumn.changeOrderType,memo.add,memo.move,memo.moveTo,memo.remove,memo.changeValue,memo.changeColor,memo.resize,settings.changeDatabaseName,settings.changeZoomLevel,settings.streamZoomLevel,settings.scrollTo,settings.streamScrollTo,settings.changeShow,settings.changeDatabase,settings.changeCanvasType,settings.changeLanguage,settings.changeTableNameCase,settings.changeColumnNameCase,settings.changeBracketType,settings.changeRelationshipDataTypeSync,settings.changeRelationshipOptimization,settings.changeColumnOrder,settings.changeMaxWidthComment,settings.changeIgnoreSaveSettings,editor.loadJson,editor.clear`.split(`,`),sue=KG([`settings.changeZoomLevel`,`settings.streamZoomLevel`,`settings.scrollTo`,`settings.streamScrollTo`,`settings.changeDatabase`,`settings.changeCanvasType`,`settings.changeLanguage`,`settings.changeTableNameCase`,`settings.changeColumnNameCase`,`settings.changeBracketType`]),Y3=[...J3.filter(e=>!sue(e))],cue=KG([`editor.loadJson`,`editor.clear`]),lue=[...Y3.filter(e=>!cue(e))],X3=[`editor.sharedMouseTracker`,`editor.sharedFocusTracker`,`editor.sharedSelectionTracker`,`editor.sharedDragSelectTracker`],uue=[...J3,...X3,`editor.getLWW`,`editor.mergeLWW`],due=[`settings.changeZoomLevel`,`settings.streamZoomLevel`,`settings.scrollTo`,`settings.streamScrollTo`,`settings.changeCanvasType`],Z3=[`table.move`,`memo.move`],Q3=[`table.changeColor`,`memo.changeColor`],$3=[`settings.streamZoomLevel`,`settings.streamScrollTo`],e6=[...Object.keys(l1)],fue=[...Object.keys(c1),...e6];function pue(e,t){if(t.has(e))throw TypeError(`Cannot initialize the same private elements twice on an object`)}function mue(e,t,n){pue(e,t),t.set(e,n)}function t6(e){"@babel/helpers - typeof";return t6=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t6(e)}function hue(e,t){if(t6(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(t6(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function gue(e){var t=hue(e,`string`);return t6(t)==`symbol`?t:t+``}function n6(e,t,n){return(t=gue(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function r6(e,t,n){if(typeof e==`function`?e===t:e.has(t))return arguments.length<3?t:n;throw TypeError(`Private element is not present on this object`)}function _ue(e,t){return e.get(r6(e,t))}function vue(e,t,n){return e.set(r6(e,t),n),n}var i6=new WeakMap,yue=class{constructor(){mue(this,i6,0),n6(this,`getVersion`,()=>_ue(i6,this)),n6(this,`getNextVersion`,()=>this.getVersion()+1),n6(this,`merge`,e=>(!eI(e)||!Number.isInteger(e)||this.getVersion()<e&&vue(i6,this,e),this))}};function bue(e){return{...e,clock:new yue}}var a6=(0,DH.filter)(e=>!!e.length),o6=e=>{let t=KG(e);return e=>new DH.Observable(n=>e.subscribe({next:e=>n.next(e.filter(e=>t(e.type))),error:e=>n.error(e),complete:()=>n.complete()})).pipe(a6)},xue=(e,t)=>n=>new DH.Observable(r=>{let i=!1,a=[],o=()=>{let e=a.flat();a=[],e.length&&r.next(e)},s=n.subscribe({next:e=>{a.push(e),i&&o()},error:e=>r.error(e),complete:()=>{o(),r.complete()}});return s.add(e.subscribe(()=>{i||(i=!0,o())})),s.add(t.subscribe(()=>{i=!1})),s}),s6=`@@none-stream`,Sue=(e,t)=>n=>{let r=t.find(([,e])=>e(n));return r?r[0]:e(n)?n:s6},c6=(e,t=[],n=(0,DH.debounceTime)(200))=>{let r=Sue(KG(e),t.map(([e,t])=>[e,KG(t)]));return e=>new DH.Observable(t=>e.subscribe({next:e=>{let n=e.reduce((e,t)=>{let n=r(t.type);return e[n]||(e[n]=[]),e[n].push(t),e},{});Object.values(n).forEach(e=>t.next(e))},error:e=>t.error(e),complete:()=>t.complete()})).pipe(a6,(0,DH.groupBy)(e=>r(e[0].type)),(0,DH.mergeMap)(e=>e.key===s6?e:e.pipe((0,DH.buffer)(e.pipe(n)),(0,DH.map)(e=>e.flat()))))},l6=e=>{let t=t=>JF(t.tags)||!e.some(e=>Q(t.tags,e));return e=>new DH.Observable(n=>e.subscribe({next:e=>n.next(e.filter(t)),error:e=>n.error(e),complete:()=>n.complete()})).pipe(a6)},Cue=KG(e6),wue=KG(X3),u6=e=>t=>t.pipe(c6(X3,[],(0,DH.throttleTime)(100,void 0,{leading:!0,trailing:!0})),(0,DH.map)(e=>wue(e[0]?.type)?[GF(e)]:e),c6(e6,[[`@@move`,Z3],[`@@scroll`,$3],[`@@color`,Q3]],e),(0,DH.map)(e=>{if(!Cue(e[0]?.type))return e;let t=[];for(let n of Object.keys(l1))l1[n]([],t,e);return t.length?t:e})),Tue=u6();function Eue(e,t){return _U({context:e,state:{..._W({}),editor:PK(),lww:{}},reducers:{...oZ,...u$,...q$,...uQ,...AQ,...QJ,...xZ,...zZ},enableObservable:t??!0})}var d6=40,f6=64,p6=16,m6=64,h6=64,g6=new WeakMap,_6=()=>({boxes:new Map,entries:new Map});function Due(e,t=`document`){let n=g6.get(e);return n||(n={document:_6(),flow:_6()},g6.set(e,n)),n[t]}function Oue(e,t){return{left:e.left[t],top:e.top[t],right:e.right[t],bottom:e.bottom[t]}}function kue(e,t){return{left:Math.min(e.left,t.left),top:Math.min(e.top,t.top),right:Math.max(e.right,t.right),bottom:Math.max(e.bottom,t.bottom)}}function Aue(e,t){return e.left===t.left&&e.top===t.top&&e.right===t.right&&e.bottom===t.bottom}function jue(e){let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let{x:a,y:o}of e)a<t&&(t=a),a>r&&(r=a),o<n&&(n=o),o>i&&(i=o);return{left:t,top:n,right:r,bottom:i}}function Mue(e,t){return e.left<=t.right&&e.right>=t.left&&e.top<=t.bottom&&e.bottom>=t.top}function Nue(e,t){let n={left:e.left-d6,top:e.top-d6,right:e.right+d6,bottom:e.bottom+d6};for(let e of t)if(Mue(n,e))return!0;return!1}function Pue(){let e=new Map,t=new Map,n=(n,r,i,a,o)=>{let s=n?e:t,c=Math.floor(Math.min(r,i)/m6),l=Math.floor(Math.max(r,i)/m6);for(let e=c;e<=l;e++){let t=s.get(e);t?t.push(r,i,a,o):s.set(e,[r,i,a,o])}};return{markSpan:n,markBox(e){n(!0,e.left,e.right,e.top,e.bottom),n(!1,e.top,e.bottom,e.left,e.right)},hits(n,r,i,a,o){let s=n?e:t;if(!s.size)return!1;let c=Math.min(r,i)-f6,l=Math.max(r,i)+f6,u=Math.floor(c/m6),d=Math.floor(l/m6);for(let e=u;e<=d;e++){let t=s.get(e);if(t){for(let e=0;e<t.length;e+=4)if(!(t[e+1]<c||t[e]>l)&&!(t[e+3]<a-p6)&&!(t[e+2]>o+p6))return!0}}return!1}}}function v6(e,t){for(let n=1;n<t.length;n++){let r=t[n-1],i=t[n];Math.abs(r.x-i.x)<.5?e.markSpan(!0,r.x,i.x,Math.min(r.y,i.y),Math.max(r.y,i.y)):e.markSpan(!1,r.y,i.y,Math.min(r.x,i.x),Math.max(r.x,i.x))}}function Fue(e,t){let n=e.boxes,r=new Map,i=[],a=!1;for(let e=0;e<t.ids.length;e++){let o=t.ids[e],s=Oue(t,e);if(r.set(o,s),a)continue;let c=n.get(o);c?Aue(c,s)||i.push(kue(c,s)):i.push(s),i.length>h6&&(a=!0)}if(!a){for(let[e,t]of n)if(!r.has(e)&&(i.push(t),i.length>h6)){a=!0;break}}return e.boxes=r,a||n.size===0?null:i}function y6(e){return 50+e%4*12}function Iue(e,t){return e.tableId===t.tableId?null:e.direction===MG.right&&t.direction===MG.left?t.x-e.x:e.direction===MG.left&&t.direction===MG.right?e.x-t.x:e.direction===MG.bottom&&t.direction===MG.top?t.y-e.y:e.direction===MG.top&&t.direction===MG.bottom?e.y-t.y:null}function b6(e,t){return t===null||t<=0?e:Math.max(36,Math.min(e,t/2-1))}function x6(e){return e===MG.left||e===MG.right}function S6(e){return e===MG.right||e===MG.bottom?1:-1}function C6(e,t,n){let r=S6(t);return x6(t)?{x:e.x+r*n,y:e.y}:{x:e.x,y:e.y+r*n}}function w6({start:e,end:t},[n,r]){let i=Iue(e,t),a=b6(y6(n),i),o=b6(y6(r),i);return{m:C6(e,e.direction,a),l:C6(t,t.direction,o),startStub:a,endStub:o}}var T6=16,E6=2,Lue=36,Rue=1e5,zue=6,D6=4;function Bue(e,t=`document`){let{tableIds:n}=Sq(e,t),r=J(e.collections).collection(`tableEntities`).selectByIds(n),i=r.length,a={ids:Array(i),left:new Float64Array(i),top:new Float64Array(i),right:new Float64Array(i),bottom:new Float64Array(i)};return r.forEach((n,r)=>{let i=qq(e,n,t);a.ids[r]=n.id,a.left[r]=i.lt.x+E6,a.top[r]=i.lt.y+E6,a.right[r]=i.rb.x-E6,a.bottom[r]=i.rb.y-E6}),a}function O6(e,t,n,r,i,a,o,s){let c=0,l=1,u=n-e,d=r-t,f=(e,t)=>{if(e===0)return t>=0;let n=t/e;if(e<0){if(n>l)return!1;n>c&&(c=n)}else{if(n<c)return!1;n<l&&(l=n)}return!0};return f(-u,e-i)&&f(u,o-e)&&f(-d,t-a)&&f(d,s-t)&&c<=l}function k6(e,t,n,r){let i=0,a=1/0,o=-1/0,s=1/0,c=-1/0;for(let t=0;t<e.length;t++){let n=e[t];n.x<a&&(a=n.x),n.x>o&&(o=n.x),n.y<s&&(s=n.y),n.y>c&&(c=n.y)}for(let l=0;l<t.ids.length;l++){let u=t.left[l],d=t.right[l],f=t.top[l],p=t.bottom[l];if(o<u||a>d||c<f||s>p)continue;let m=t.ids[l];if(m!==n&&m!==r)for(let t=1;t<e.length;t++){let n=e[t-1],r=e[t];if(!(Math.max(n.x,r.x)<u||Math.min(n.x,r.x)>d)&&!(Math.max(n.y,r.y)<f||Math.min(n.y,r.y)>p)&&O6(n.x,n.y,r.x,r.y,u,f,d,p)){i++;break}}}return i}function Vue(e){let t=0;for(let n=1;n<e.length;n++)t+=Math.abs(e[n].x-e[n-1].x)+Math.abs(e[n].y-e[n-1].y);return t}function A6(e,t,n,r,i,a){let o=(e+t)/2,s=n[r?`left`:`top`],c=n[r?`right`:`bottom`],l=n[r?`top`:`left`],u=n[r?`bottom`:`right`],d=[];for(let e=0;e<n.ids.length;e++)u[e]<i||l[e]>a||d.push(s[e]-T6,c[e]+T6);return d.sort((e,t)=>Math.abs(e-o)-Math.abs(t-o)),[o,...d.slice(0,zue)]}function Hue(e,t,n,r,i){let a=x6(t),o=x6(r),s=S6(t),c=S6(r),l=Math.min(e.x,n.x,e.y,n.y),u=Math.max(e.x,n.x,e.y,n.y),d=[],f=e=>{let t=[e[0]];for(let n=1;n<e.length;n++){let r=t[t.length-1],i=e[n];Math.abs(i.x-r.x)<.5&&Math.abs(i.y-r.y)<.5||t.push(i)}t.length<2||d.push({points:t,bends:t.length-2})};if(a&&o){let t=A6(e.x,n.x,i,!0,l,u);for(let r of t)(r-e.x)*s<0||(r-n.x)*c<0||f([e,{x:r,y:e.y},{x:r,y:n.y},n]);let r=A6(e.y,n.y,i,!1,l,u);for(let t of r){let r=e.x+s*T6,i=n.x+c*T6;f([e,{x:r,y:e.y},{x:r,y:t},{x:i,y:t},{x:i,y:n.y},n])}}else if(!a&&!o){let t=A6(e.y,n.y,i,!1,l,u);for(let r of t)(r-e.y)*s<0||(r-n.y)*c<0||f([e,{x:e.x,y:r},{x:n.x,y:r},n]);let r=A6(e.x,n.x,i,!0,l,u);for(let t of r){let r=e.y+s*T6,i=n.y+c*T6;f([e,{x:e.x,y:r},{x:t,y:r},{x:t,y:i},{x:n.x,y:i},n])}}else if(a){(n.x-e.x)*s>=0&&(e.y-n.y)*c>=0&&f([e,{x:n.x,y:e.y},n]);let t=A6(e.x,n.x,i,!0,l,u).filter(t=>(t-e.x)*s>=0).slice(0,D6),r=A6(e.y,n.y,i,!1,l,u).filter(e=>(e-n.y)*c>=0).slice(0,D6);for(let i of t)for(let t of r)f([e,{x:i,y:e.y},{x:i,y:t},{x:n.x,y:t},n])}else{(n.y-e.y)*s>=0&&(e.x-n.x)*c>=0&&f([e,{x:e.x,y:n.y},n]);let t=A6(e.y,n.y,i,!1,l,u).filter(t=>(t-e.y)*s>=0).slice(0,D6),r=A6(e.x,n.x,i,!0,l,u).filter(e=>(e-n.x)*c>=0).slice(0,D6);for(let i of t)for(let t of r)f([e,{x:e.x,y:i},{x:t,y:i},{x:t,y:n.y},n])}return d}function Uue(e,t,n,r,i,a,o){let s=Hue(e,t,n,r,i),c=null,l=1/0;for(let e of s){let t=k6(e.points,i,a,o)*Rue+e.bends*Lue+Vue(e.points);t<l&&(l=t,c=e.points)}return c||(x6(t)?[e,{x:(e.x+n.x)/2,y:e.y},{x:(e.x+n.x)/2,y:n.y},n]:[e,{x:e.x,y:(e.y+n.y)/2},{x:n.x,y:(e.y+n.y)/2},n])}var j6=10,M6=[j6,7,4],N6=M6[M6.length-1]-.5,Wue=3;function Gue(e){let t=[];for(let[n,r]of e)for(let e=0;e<r.length-1;e++){let i=r[e],a=r[e+1],o=Math.abs(i.x-a.x)<.5;o!==Math.abs(i.y-a.y)<.5&&t.push({relationshipId:n,points:r,index:e,movable:e>0&&e<r.length-2,vertical:o,coordinate:o?i.x:i.y,low:o?Math.min(i.y,a.y):Math.min(i.x,a.x),high:o?Math.max(i.y,a.y):Math.max(i.x,a.x)})}return t}function P6(e,t){return e.relationshipId===t.relationshipId?e.index-t.index:e.relationshipId<t.relationshipId?-1:1}function F6(e){let t=e.points[e.index-1];return e.vertical?t.y:t.x}function Kue(e){for(let t of e){let e=t.points[t.index],n=t.points[t.index+1];t.low=t.vertical?Math.min(e.y,n.y):Math.min(e.x,n.x),t.high=t.vertical?Math.max(e.y,n.y):Math.max(e.x,n.x)}}function I6(e,t){let n=e.points[e.index],r=e.points[e.index+1];e.vertical?(n.x=t,r.x=t):(n.y=t,r.y=t)}function que(e,t,n,r){let i=[],a=[];for(let t of Gue(e))(t.vertical?i:a).push(t);for(let e of[i,a]){Kue(e);let i=e.filter(e=>e.movable);if(i.length<2)continue;i.sort((e,t)=>e.coordinate-t.coordinate||P6(e,t));let a=[],o=()=>{a.length>1&&Jue(a,e,t,n,r),a=[]};for(let e of i){let t=a[a.length-1];t&&e.coordinate-t.coordinate>10.5&&o(),a.push(e)}o()}}function Jue(e,t,n,r,i){e.sort((e,t)=>e.low-t.low||P6(e,t));let a=[],o=-1/0,s=()=>{a.length>1&&Zue(a,t,n,r,i),a=[],o=-1/0};for(let t of e)a.length&&t.low>=o&&s(),a.push(t),o=Math.max(o,t.high);s()}function L6(e,t){return e.high+j6>t.low&&t.high+j6>e.low}function R6(e,t){return Math.abs(e.coordinate-t.coordinate)>=N6?0:Math.max(0,Math.min(e.high,t.high)-Math.max(e.low,t.low))}function z6(e,t){let n=0;for(let r=0;r<e.length;r++){let i=e[r];for(let t=r+1;t<e.length;t++)n+=R6(i,e[t]);for(let e of t)n+=R6(i,e)}return n}function Yue(e,t){let n=new Set(e),r=1/0,i=-1/0;for(let t of e)t.coordinate<r&&(r=t.coordinate),t.coordinate>i&&(i=t.coordinate);let a=j6*(e.length-1)/2+N6,o=[];for(let e of t)e.coordinate<r-a||e.coordinate>i+a||n.has(e)||o.push(e);return o}function Xue(e){let t=[];for(let n of e){let e=t.find(e=>!L6(e[e.length-1],n));e?e.push(n):t.push([n])}return t}function Zue(e,t,n,r,i){if(!i){B6(e,t,n,r);return}if(Que(e,i))return;let a=e.map(e=>e.coordinate);B6(e,t,n,r),$ue(e,a,i)}function B6(e,t,n,r){let i=Yue(e,t),a=z6(e,i);if(!a)return;let o=new Map,s=e.map(e=>(o.set(e,rde(e,n,r)),e.coordinate)),c=s.reduce((e,t)=>e+t,0)/s.length,l=ede(e),u=null,d=1/0;for(let t of M6){let a=null,f=1/0;for(let p of l){nde(p,t,c,o,n,r);let l=z6(e,i);if(l)l<d&&(u=e.map(e=>e.coordinate),d=l);else{let t=tde(e,s);t<f&&(f=t,a=e.map(e=>e.coordinate))}U6(e,s)}if(a){U6(e,a);return}}u&&d<a&&U6(e,u)}function Que(e,t){let n=[];for(let r of e){if(t.dirty.has(r.relationshipId))return!1;let e=t.coordinate(r.relationshipId,r.index,r.vertical);if(e===void 0||t.lanes.hits(r.vertical,r.coordinate,e,r.low,r.high))return!1;n.push(e)}return U6(e,n),!0}function $ue(e,t,n){e.forEach((e,r)=>{let i=t[r],a=e.coordinate;if(Math.abs(a-i)<.5)return;n.lanes.markSpan(e.vertical,i,a,e.low,e.high);let o=e.points[e.index],s=e.points[e.index+1],c=Math.min(i,a),l=Math.max(i,a),u=e.vertical?o.y:o.x,d=e.vertical?s.y:s.x;n.lanes.markSpan(!e.vertical,u,u,c,l),n.lanes.markSpan(!e.vertical,d,d,c,l)})}function ede(e){let t=Xue(e),n=V6(t);return t.length===e.length?n:[...n,...V6(e.map(e=>[e]))]}function V6(e){let t=(e,t)=>e.reduce((e,n)=>e+t(n),0)/e.length,n=[...e].sort((e,n)=>t(e,F6)-t(n,F6)||t(e,H6)-t(n,H6)||P6(e[0],n[0])),r=[...e].sort((e,n)=>t(e,H6)-t(n,H6)||t(e,F6)-t(n,F6)||P6(e[0],n[0]));return n.every((e,t)=>e===r[t])?[n]:[n,r]}function H6(e){return e.coordinate}function tde(e,t){return e.reduce((e,n,r)=>e+Math.abs(n.coordinate-t[r]),0)}function U6(e,t){e.forEach((e,n)=>{I6(e,t[n]),e.coordinate=t[n]})}function nde(e,t,n,r,i,a){let o=n-t*(e.length-1)/2,s=e.map(()=>[]);e.forEach((n,c)=>{for(let l of n){let n=r.get(l);if(!n)continue;let u=r=>{if(r<0||r>=e.length||s[r].some(e=>L6(l,e)))return!1;let c=o+r*t;return I6(l,c),ide(l,i,a,n)?(l.coordinate=c,s[r].push(l),!0):!1},d=!1;for(let e=0;e<=Wue&&!d;e++)d=u(c-e)||e>0&&u(c+e);d||I6(l,l.coordinate)}})}function rde(e,t,n){let r=n.get(e.relationshipId),i=[];for(let e=0;e<t.ids.length;e++){let n=t.ids[e];(n===r?.[0]||n===r?.[1])&&i.push(e)}return{blocked:k6(e.points,t,r?.[0]??``,r?.[1]??``),crossed:q6(e.points),own:i,intruded:K6(e.points,t,i),beforeDelta:W6(e,-1),afterDelta:W6(e,1)}}function W6(e,t){let n=e.points[t<0?e.index:e.index+1],r=e.points[t<0?e.index-1:e.index+2];return e.vertical?r.x-n.x:r.y-n.y}function G6(e,t){return Math.abs(t)>=.5&&e*t<=0}function K6(e,t,n){let r=0;for(let i of n){let n=t.left[i],a=t.top[i],o=t.right[i],s=t.bottom[i];for(let t=1;t<e.length;t++){let i=e[t-1],c=e[t];if(O6(i.x,i.y,c.x,c.y,n,a,o,s)){r++;break}}}return r}function ide(e,t,n,r){let i=e.points[e.index-1],a=e.points[e.index],o=e.points[e.index+1],s=e.points[e.index+2];if((e.vertical?Math.abs(i.x-a.x)<.5||Math.abs(s.x-o.x)<.5:Math.abs(i.y-a.y)<.5||Math.abs(s.y-o.y)<.5)||e.index===1&&G6(W6(e,-1),r.beforeDelta)||e.index+2===e.points.length-1&&G6(W6(e,1),r.afterDelta)||K6(e.points,t,r.own)>r.intruded||!r.crossed&&q6(e.points))return!1;let c=n.get(e.relationshipId);return k6(e.points,t,c?.[0]??``,c?.[1]??``)<=r.blocked}function q6(e){for(let t=0;t+1<e.length;t++)for(let n=t+2;n+1<e.length;n++)if(ade(e[t],e[t+1],e[n],e[n+1]))return!0;return!1}function ade(e,t,n,r){let i=Math.abs(e.x-t.x)<.5;if(i===Math.abs(n.x-r.x)<.5)return!1;let a=i?e:n,o=i?t:r,s=i?n:e,c=i?r:t;return a.x>Math.min(s.x,c.x)&&a.x<Math.max(s.x,c.x)&&s.y>Math.min(a.y,o.y)&&s.y<Math.max(a.y,o.y)}var J6={[qG.top]:MG.top,[qG.bottom]:MG.bottom,[qG.left]:MG.left,[qG.right]:MG.right},Y6=Math.PI*2,X6=.15,Z6=20,Q6=60,$6=14,ode=8,sde={[qG.top]:-Math.PI,[qG.right]:-Math.PI/2,[qG.bottom]:0,[qG.left]:Math.PI/2},cde={[qG.top]:!1,[qG.right]:!1,[qG.bottom]:!0,[qG.left]:!0};function e8(e,t=`document`){cK(t);let{tableIds:n,relationshipIds:r}=Sq(e,t),{collections:i}=e,a=KG(n),o=J(i).collection(`tableEntities`),s=J(i).collection(`relationshipEntities`).selectByIds(r).filter(({start:e,end:t})=>a(e.tableId)&&a(t.tableId)),c=new Map,l=new Map,u=new Map,d=_de(s);for(let n of s){let r=gde(n),{start:i,end:a}=r,s=o.selectById(i.tableId),f=o.selectById(a.tableId);if(!(!s||!f)){if(l.set(n,r),u.set(r.id,[0,0]),i.tableId===a.tableId)pde(n8(e,c,s,t),r);else{let n=n8(e,c,s,t),o=n8(e,c,f,t),[l,u]=bde(n.objectPoint,o.objectPoint,r);n[l].push({id:r.id,isStart:!0,point:i,angle:i8(l,n,o),tie:d.tieAt(r.id,i.tableId,a.tableId)}),o[u].push({id:r.id,isStart:!1,point:a,angle:i8(u,o,n),tie:d.tieAt(r.id,a.tableId,i.tableId)})}}}for(let e of c.values())for(let t of JG)xde(t,e,u);for(let[e,n]of l.entries())oK(e,u.get(n.id)??[0,0],t),lK(e,n,t);t===`document`?ude(e,l,u):lde(l,u,t)}function lde(e,t,n){for(let[r,i]of e.entries()){let{id:e,start:a,end:o}=i;if(a.tableId===o.tableId)continue;let{m:s,l:c}=w6(i,t.get(e)??[0,0]);sK(r,[s,c],n)}}function ude(e,t,n){let r=Bue(e),i=Due(e),a=Fue(i,r),o=i.entries,s=new Map,c=new Set,l=Pue();if(a)for(let e of a)l.markBox(e);let u=new Map,d=new Map,f=new Map;for(let[e,i]of t.entries()){let{id:t,start:p,end:m}=i;if(p.tableId===m.tableId)continue;let{m:h,l:g}=w6(i,n.get(t)??[0,0]),_=o.get(t),v,y;a!==null&&_!==void 0&&fde(_,h,g,p,m)&&!Nue(_.bounds,a)?(v=_.pristine,y=t8(v)):(y=Uue(h,p.direction,g,m.direction,r,p.tableId,m.tableId),v=t8(y),c.add(t),_&&v6(l,_.nudged),v6(l,v)),u.set(t,y),d.set(t,[p.tableId,m.tableId]),f.set(t,e),s.set(t,{mx:h.x,my:h.y,mDirection:p.direction,lx:g.x,ly:g.y,lDirection:m.direction,startTableId:p.tableId,endTableId:m.tableId,pristine:v,nudged:y,bounds:jue(v)})}if(a)for(let[e,t]of o)s.has(e)||v6(l,t.nudged);que(u,r,d,a===null?void 0:dde(o,c,l));for(let[e,t]of u){let n=f.get(e);n&&sK(n,t)}i.entries=s}function t8(e){return e.map(({x:e,y:t})=>({x:e,y:t}))}function dde(e,t,n){return{dirty:t,lanes:n,coordinate(t,n,r){let i=e.get(t)?.nudged[n];if(i)return r?i.x:i.y}}}function fde(e,t,n,r,i){return e.mx===t.x&&e.my===t.y&&e.lx===n.x&&e.ly===n.y&&e.mDirection===r.direction&&e.lDirection===i.direction&&e.startTableId===r.tableId&&e.endTableId===i.tableId}function n8(e,t,n,r){let i=t.get(n.id);if(!i){let a=qq(e,n,r);i={tableId:n.id,centerX:a.top.x,centerY:a.left.y,objectPoint:a,selfCount:0,top:[],bottom:[],left:[],right:[]},t.set(n.id,i)}return i}function pde(e,t){let{rt:n,width:r,height:i}=e.objectPoint,a=e.selfCount++,o=r8(Math.min(r,i)*X6,Z6,Q6)+a*$6;t.start.direction=MG.top,t.start.x=n.x-o,t.start.y=n.y,t.end.direction=MG.right,t.end.x=n.x,t.end.y=n.y+o}function mde(e,t){let{width:n,height:r}=e.objectPoint;return r8(Math.min(n,r)*X6,Z6,Q6)+t*$6}function hde(e){return e.selfCount?mde(e,e.selfCount-1)+ode:0}function r8(e,t,n){return Math.min(Math.max(e,t),n)}function gde({id:e,start:t,end:n}){return{id:e,start:XG(t),end:XG(n)}}function _de(e){let t=new Map;for(let{id:n,start:r,end:i}of e){let e=vde(r.tableId,i.tableId),a=t.get(e);a?a.push(n):t.set(e,[n])}let n=new Map,r=new Map,i=!1;for(let e of t.values())e.length<2||(i=!0,e.sort(),e.forEach((t,i)=>{n.set(t,i),r.set(t,e.length)}));return{tieAt(e,t,a){if(!i)return 0;let o=n.get(e)??0;return t<=a?o:(r.get(e)??1)-1-o}}}function vde(e,t){return e<t?`${e}|${t}`:`${t}|${e}`}function yde(e){let t=e%Y6;return t<0?t+Y6:t}function i8(e,t,n){return yde(Math.atan2(n.centerY-t.centerY,n.centerX-t.centerX)-sde[e])}function bde(e,t,n){let r=[qG.bottom,qG.bottom],i=Jq(e.bottom,t.bottom);n.start.x=e.bottom.x,n.start.y=e.bottom.y,n.end.x=t.bottom.x,n.end.y=t.bottom.y,n.start.direction=MG.bottom,n.end.direction=MG.bottom;for(let a of JG)for(let o of JG){let s=a,c=o,l=Jq(e[s],t[c]);i<=l||(i=l,r[0]=s,r[1]=c,n.start.x=e[s].x,n.start.y=e[s].y,n.start.direction=J6[s],n.end.x=t[c].x,n.end.y=t[c].y,n.end.direction=J6[c])}return r}function xde(e,t,n){let r=t[e];if(!r.length)return;r.sort((e,t)=>e.angle-t.angle||e.tie-t.tie||(e.id<t.id?-1:1));let{objectPoint:i}=t,a=e===qG.top||e===qG.bottom,o=(a?i.lt.x:i.lt.y)+12,s=(a?i.rb.x:i.rb.y)-12,c=hde(t);if(c&&(e===qG.top?s-=c:e===qG.right&&(o+=c)),s<o){let e=(o+s)/2;o=e,s=e}let l=s-o,u=(o+s)/2,d=r.length,f=d>1?Math.min(l/(d-1),120):0,p=u-f*(d-1)/2;r.forEach((t,r)=>{let o=cde[e]?d-1-r:r,s=p+o*f;a?(t.point.x=s,t.point.y=e===qG.top?i.top.y:i.bottom.y):(t.point.y=s,t.point.x=e===qG.left?i.left.x:i.right.x);let c=n.get(t.id);c&&(c[+!t.isStart]=r)})}var Sde=(e,t)=>e.pipe((0,DH.throttleTime)(10,void 0,{leading:!1,trailing:!0})).subscribe(()=>{let{doc:e,collections:n}=t(),r=J(n).collection(`relationshipEntities`).selectByIds(e.relationshipIds);for(let e of r){let{end:t,identification:r}=e,i=J(n).collection(`tableEntities`).selectById(t.tableId);if(!i)continue;let a=KG(i.columnIds),o=J(n).collection(`tableColumnEntities`).selectByIds(t.columnIds).filter(e=>a(e.id));if(!o.length)continue;let s=o.every(e=>Q(e.options,Z.primaryKey));s!==r&&(e.identification=s)}}),Cde=(e,t)=>e.pipe((0,DH.throttleTime)(10,void 0,{leading:!1,trailing:!0})).subscribe(()=>{let{doc:e,collections:n}=t(),r=J(n).collection(`relationshipEntities`).selectByIds(e.relationshipIds);for(let e of r){let{end:t,startRelationshipType:r}=e,i=J(n).collection(`tableEntities`).selectById(t.tableId);if(!i)continue;let a=KG(i.columnIds),o=J(n).collection(`tableColumnEntities`).selectByIds(t.columnIds).filter(e=>a(e.id));if(!o.length)continue;let s=o.every(e=>Q(e.options,Z.notNull))?jG.dash:jG.ring;s!==r&&(e.startRelationshipType=s)}}),wde=KG([JQ.type,XQ.type,XZ.type]),a8=({tags:e})=>!JF(e)&&Q(e,pq.drag)?(0,DH.timer)(5):(0,DH.timer)(0,DH.asapScheduler),Tde=(e,t)=>e.pipe((0,DH.tap)(e=>{wde(e.type)||Dq()}),(0,DH.throttle)(a8,{leading:!1,trailing:!0})).subscribe(()=>{e8(t())}),Ede=KG([OJ.type,JJ.type,XZ.type]),Dde=KG([qK.type,YK.type,ZK.type,$K.type]),o8=({id:e})=>[e],s8=({ids:e})=>e,c8=({tableId:e})=>[e],l8=(e,{kind:t})=>t,Ode=()=>AK.flow,u8=(e,{kind:t})=>t??IK(e)?.kind??null,kde={[UK.type]:l8,[GK.type]:l8,[rq.type]:l8,[sq.type]:Ode,[aq.type]:u8,[tq.type]:u8},Ade={[KQ.type]:o8,[QQ.type]:o8,[XQ.type]:o8,[e$.type]:o8,[n$.type]:o8,[wQ.type]:o8,[EQ.type]:o8,[JQ.type]:s8,[tq.type]:s8,[T$.type]:c8,[D$.type]:c8,[k$.type]:c8,[j$.type]:c8,[N$.type]:c8,[F$.type]:c8,[z$.type]:c8};function d8(e,t){let{tableIds:n,relationshipIds:r}=Sq(e,t);return new Set([...n,...r])}function jde(e,t,n,r){if(Ede(t.type)||Dde(t.type))return!1;let i=kde[t.type];if(i&&i(e,t.payload)!==r)return!1;let a=Ade[t.type];if(!a)return!0;let o=d8(e,r);return a(t.payload).some(e=>o.has(e)||n.has(e))}var Mde=[AK.flow],Nde=(e,t)=>{let n={flow:new Set},r=new Set;return e.pipe((0,DH.filter)(e=>{let i=t(),a=!1;for(let t of Mde)LK(i,t)&&jde(i,e,n[t],t)&&(r.add(t),a=!0);return a}),(0,DH.throttle)(a8,{leading:!1,trailing:!0})).subscribe(()=>{let e=t(),i=[...r];r.clear();for(let t of i)LK(e,t)&&(e8(e,t),n[t]=d8(e,t))})},f8=[OJ,JJ,wQ,EQ,XZ,KQ,QQ,JQ,XQ,e$,n$,T$,D$,k$,j$,N$,F$,c$],Pde=[z$],Fde=[UK,GK,qK,YK,ZK,$K,tq,rq,aq,sq],Ide=[[[D$,z$,XY,eX],Sde],[[D$,U$,XY,eX],Cde],[f8,Tde],[[...f8,...Pde,...Fde],Nde]],Lde=[[[XY,eX],(e,t,n)=>e.pipe((0,DH.throttleTime)(5,void 0,{leading:!1,trailing:!0})).subscribe(()=>{let e=t();Vq(e,n),e8(e)})],[[QQ],(e,t)=>e.pipe((0,DH.observeOn)(DH.asapScheduler)).subscribe(()=>{let{doc:e,editor:n}=t(),r=n.drawRelationship?.start;!r||e.tableIds.includes(r.tableId)||(n.drawRelationship=null)})]],p8=e=>e.pipe((0,DH.observeOn)(DH.asapScheduler)),Rde=[[[z$],(e,t)=>p8(e).subscribe(({payload:{id:e}})=>{let{collections:n}=t(),r=J(n).collection(`tableColumnEntities`).selectById(e);r&&Q(r.options,Z.primaryKey)&&(Q(r.options,Z.notNull)||(r.options|=Z.notNull))})],[[wQ],(e,t)=>p8(e).subscribe(({payload:{id:e,end:n}})=>{let{doc:{relationshipIds:r},collections:i}=t();if(!r.includes(e))return;let a=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);for(let e of a)e.ui.keys=e.ui.keys|NG.foreignKey})],[[EQ],(e,t)=>p8(e).subscribe(({payload:{id:e}})=>{let{doc:{relationshipIds:n},collections:r}=t();if(n.includes(e))return;let i=J(r).collection(`relationshipEntities`).selectById(e);if(!i)return;let a=J(r).collection(`tableColumnEntities`).selectByIds(i.end.columnIds);for(let e of a)e.ui.keys=e.ui.keys&~NG.foreignKey})],[[XY,eX],(e,t)=>p8(e).subscribe(()=>{let{doc:e,collections:n}=t(),r=J(n).collection(`relationshipEntities`).selectByIds(e.relationshipIds),i=J(n).collection(`tableEntities`).selectByIds(e.tableIds),a=new Set,o=J(n).collection(`tableColumnEntities`);for(let{end:e}of r){let t=o.selectByIds(e.columnIds);for(let e of t)e.ui.keys=e.ui.keys|NG.foreignKey,a.add(e.id)}for(let e of i){let t=o.selectByIds(e.columnIds);for(let e of t)Q(e.ui.keys,NG.foreignKey)&&!a.has(e.id)&&(e.ui.keys=e.ui.keys&~NG.foreignKey)}})]],zde=[...Lde,...Rde,...Ide];function Bde(e){let t=()=>e.state,n=zde.map(([n,r])=>{let i=new DH.Subject;return{pattern:KG(n.map(String)),action$:i,subscription:r(i,t,e.context)}}),r=e.subscribe(e=>{for(let t of e)for(let e of n)e.pattern(t.type)&&e.action$.next(t)});return{destroy:()=>{n.forEach(({action$:e,subscription:t})=>{t.unsubscribe(),e.complete()}),n.splice(0,n.length),r()}}}function m8({notify:e,dispatch:t,getNextVersion:n},r){let i=r?.commands??[],a=r?.cursor??-1,o=r?.limit??0,s=!0,c=()=>a!==-1,l=()=>a<i.length-1,u=e=>o=e,d=()=>({hasRedo:l(),hasUndo:c()}),f=(e,r)=>{s=!1,e[r](t,n),s=!0};return Object.freeze({get cursor(){return a},get size(){return i.length},hasUndo:c,hasRedo:l,push:t=>{s&&(i.splice(a+1,i.length-a),i.push(t),o!==0&&i.length>o&&(i=i.slice(i.length-o,i.length)),a=i.length-1,e(d()))},undo:()=>{if(!c())return;let t=i[a];f(t,`undo`),a--,e(d())},redo:()=>{if(!l())return;let t=i[a+1];f(t,`redo`),a++,e(d())},clear:()=>{let t=i.length;i=[],a=-1,t>0&&e(d())},setLimit:u,clone:e=>m8(e,{commands:[...i],cursor:a,limit:o})})}var h8=e=>t=>t.pipe((0,DH.switchMap)(t=>e.pipe((0,DH.take)(1),(0,DH.map)(()=>t)))),g8=(e,t=[])=>{let n=KG(Y3),r=e=>!JF(e.tags)&&t.some(t=>Q(e.tags,t))||!n(e.type);return t=>new DH.Observable(n=>t.subscribe({next:t=>{n.next(e()?t.filter(r):t)},error:e=>n.error(e),complete:()=>n.complete()})).pipe(a6)},Vde={[fJ.scrollTo]:Y.viewScrollTo,[fJ.streamScrollTo]:Y.viewStreamScrollTo,[fJ.changeZoomLevel]:Y.viewChangeZoomLevel,[fJ.streamZoomLevel]:Y.viewStreamZoomLevel},Hde=({tags:e})=>!JF(e)&&(Q(e,pq.shared)||Q(e,pq.following)),Ude=e=>{let t=Vde[e.type];return t&&!Hde(e)?{...e,type:t}:e},Wde=e=>t=>new DH.Observable(n=>t.subscribe({next:t=>{n.next(e()?t.map(Ude):t)},error:e=>n.error(e),complete:()=>n.complete()})),_8=(e,t=[])=>{let n=KG(lue),r=e=>!JF(e.tags)&&t.some(t=>Q(e.tags,t))||!n(e.type);return t=>new DH.Observable(n=>t.subscribe({next:t=>{n.next(e()?t.filter(r):t)},error:e=>n.error(e),complete:()=>n.complete()})).pipe(a6)},Gde=2048;function Kde(e,{getReadonly:t=()=>!1,getHistory:n,manualStreamFlush:r=!1,observable:i=!0}={}){let a=new Set,o=Eue(e,i),s=Bde(o),c={notify:e=>o.dispatch(LY(e)),dispatch:o.dispatchSync,getNextVersion:()=>e.clock.getNextVersion()},l=n?.(c)??m8(c);l.setLimit(Gde);let u=()=>IK(o.state),d=new DH.Subject,f=d.pipe(Wde(u)),p=new DH.Subject,m=new DH.Subject,h=new DH.Subject,g=m.pipe((0,DH.startWith)(void 0),(0,DH.switchMap)(()=>p.pipe(c6(e6,[[`@@move`,Z3],[`@@scroll`,$3],[`@@color`,Q3]],r?h8(h):void 0)))),_=new DH.Observable(e=>o.subscribe(t=>e.next(t))).pipe(o6(J3),g8(t,[pq.shared]),(0,DH.debounceTime)(200)),v=(...t)=>{let n=e.clock.getNextVersion();return pU(o.state,o.context,t).map(e=>(JF(e.version)&&(e.version=n),e))},y=(...e)=>{let t=v(e);d.next(t)},b=(...e)=>{queueMicrotask(()=>y(e))},ee=()=>{Array.from(a).forEach(e=>ZF(e)?e():e.unsubscribe()),a.clear(),o.destroy(),s.destroy(),l.clear(),d.complete(),h.complete()},te=()=>{m.next(),l.clear()},x=()=>{t()||u()||l.undo()},S=()=>{t()||u()||l.redo()},ne=()=>{r&&h.next()};return a.add(g.subscribe(f1(o,l))).add(f.pipe(o6(fue),l6([pq.changeOnly,pq.shared]),g8(t),_8(u)).subscribe(p)).add(f.pipe(g8(t,[pq.shared]),_8(u,[pq.shared])).subscribe(o.dispatchSync)).add(o.subscribe(t=>{t.forEach(t=>e.clock.merge(t.version))})),Object.freeze({...o,dispatch:b,dispatchSync:y,destroy:ee,undo:x,redo:S,history:l,resetHistory:te,change$:_,flushStreamBuffers:ne})}var qde=e=>e?{tableId:e.tableId,columnId:e.columnId,focusType:e.focusType}:null,Jde=e=>e?JSON.stringify([e.tableId,e.columnId,e.focusType]):``,v8="`",y8=`NOT ENFORCED RELY`;function Yde(e){let{doc:{tableIds:t,relationshipIds:n,indexIds:r},collections:i}=e,a=[],o=[],s=[``],c=J(i).collection(`tableEntities`).selectByIds(t).sort(H1),l=J(i).collection(`relationshipEntities`).selectByIds(n),u=J(i).collection(`indexEntities`).selectByIds(r);return c.forEach(t=>{Xde(e,{table:t,buffer:s}),s.push(``);let n=J(i).collection(`tableColumnEntities`).selectByIds(t.columnIds);z1(n)&&B1(n).forEach(e=>{s.push(`-- Databricks does not support UNIQUE constraints: ${v8}${t.name}${v8}.${v8}${e.name}${v8}`),s.push(``)})}),l.forEach(t=>{Qde(e,{relationship:t,buffer:s,fkNames:a}),s.push(``)}),u.forEach(t=>{$de(e,{index:t,buffer:s,indexNames:o}),s.push(``)}),s.join(`
57
+ `)}function Xde(e,{buffer:t,table:n}){let{collections:r}=e,i=J(r).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${v8}${n.name}${v8}`),t.push(`(`);let a=L1(i),o=F1(i);if(i.forEach((n,r)=>{Zde(e,{column:n,isComma:a||i.length!==r+1,spaceSize:o,buffer:t})}),a){let e=R1(i);t.push(` CONSTRAINT ${v8}PK_${n.name}${v8} PRIMARY KEY (${P1(e,v8)}) ${y8}`)}t.push(`)`),n.comment.trim()===``?t.push(`USING DELTA;`):(t.push(`USING DELTA`),t.push(`COMMENT '${n.comment}';`))}function Zde(e,{buffer:t,column:n,isComma:r,spaceSize:i}){let a=[];a.push(` ${v8}${n.name}${v8}`+I1(i.name-n.name.length)),a.push(`${n.dataType}`+I1(i.dataType-n.dataType.length));let o=Q(n.options,Z.notNull)||Q(n.options,Z.primaryKey);a.push(o?`NOT NULL`:` `),Q(n.options,Z.autoIncrement)?a.push(`GENERATED ALWAYS AS IDENTITY`):n.default.trim()!==``&&a.push(`DEFAULT ${n.default}`),n.comment.trim()!==``&&a.push(`COMMENT '${n.comment}'`),t.push(a.join(` `).trimEnd()+`${r?`,`:``}`)}function Qde({collections:e},{buffer:t,relationship:n,fkNames:r}){let i=J(e).collection(`tableEntities`),a=J(e).collection(`tableColumnEntities`),o=i.selectById(n.start.tableId),s=i.selectById(n.end.tableId);if(o&&s){t.push(`ALTER TABLE ${v8}${s.name}${v8}`);let e=`FK_${o.name}_TO_${s.name}`;e=U1(r,``,e),r.push({id:xI(),name:e}),t.push(` ADD CONSTRAINT ${v8}${e}${v8}`);let i={start:[],end:[]};n.end.columnIds.forEach(e=>{let t=a.selectById(e);t&&i.end.push(t)}),n.start.columnIds.forEach(e=>{let t=a.selectById(e);t&&i.start.push(t)}),t.push(` FOREIGN KEY (${P1(i.end,v8)})`),t.push(` REFERENCES ${v8}${o.name}${v8} (${P1(i.start,v8)}) ${y8};`)}}function $de({collections:e},{buffer:t,index:n,indexNames:r}){let i=J(e).collection(`tableEntities`).selectById(n.tableId);if(!i)return;let a=J(e).collection(`indexColumnEntities`).selectByIds(n.indexColumnIds).map(t=>{let n=J(e).collection(`tableColumnEntities`).selectById(t.columnId);return n?{name:`${v8}${n.name}${v8} ${W1(t.orderType)}`}:null}).filter(e=>e!==null);if(a.length===0)return;let o=n.name;n.name.trim()===``&&(o=`IDX_${i.name}`,o=U1(r,``,o),r.push({id:xI(),name:o})),t.push(`-- Databricks has no secondary indexes. ${v8}${o}${v8} on ${v8}${i.name}${v8} (${P1(a)})`),t.push(`-- ALTER TABLE ${v8}${i.name}${v8} CLUSTER BY (${P1(J(e).collection(`indexColumnEntities`).selectByIds(n.indexColumnIds).map(t=>J(e).collection(`tableColumnEntities`).selectById(t.columnId)).filter(e=>e!==void 0),v8)});`)}function efe(e){let{settings:{bracketType:t},doc:{tableIds:n,relationshipIds:r,indexIds:i},collections:a}=e,o=[],s=[],c=[``],l=V1(t),u=J(a).collection(`tableEntities`).selectByIds(n).sort(H1),d=J(a).collection(`relationshipEntities`).selectByIds(r),f=J(a).collection(`indexEntities`).selectByIds(i);return u.forEach(t=>{tfe(e,{table:t,buffer:c}),c.push(``);let n=J(a).collection(`tableColumnEntities`).selectByIds(t.columnIds);z1(n)&&B1(n).forEach(e=>{c.push(`ALTER TABLE ${l}${t.name}${l}`),c.push(` ADD CONSTRAINT ${l}UQ_${t.name}_${e.name}${l} UNIQUE (${l}${e.name}${l});`),c.push(``)})}),d.forEach(t=>{nfe(e,{relationship:t,buffer:c,fkNames:o}),c.push(``)}),f.forEach(t=>{rfe(e,{index:t,buffer:c,indexNames:s}),c.push(``)}),c.join(`
58
+ `)}function tfe(e,{buffer:t,table:n}){let{settings:{bracketType:r},collections:i}=e,a=V1(r),o=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{s?b8(e,{column:n,isComma:!0,spaceSize:c,buffer:t}):b8(e,{column:n,isComma:o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` PRIMARY KEY (${P1(e,a)})`)}n.comment.trim()===``?t.push(`);`):t.push(`) COMMENT '${n.comment}';`)}function b8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),o.push(`${Q(n.options,Z.notNull)?`NOT NULL`:`NULL `}`),Q(n.options,Z.autoIncrement)?o.push(`AUTO_INCREMENT`):n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),n.comment.trim()!==``&&o.push(`COMMENT '${n.comment}'`),t.push(o.join(` `)+`${r?`,`:``}`)}function nfe({settings:{bracketType:e},collections:t},{buffer:n,relationship:r,fkNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`),s=J(t).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)});`)}}function rfe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)});`)}}function ife(e){let{settings:{bracketType:t},doc:{tableIds:n,relationshipIds:r,indexIds:i},collections:a}=e,o=[],s=[],c=[``],l=V1(t),u=J(a).collection(`tableEntities`).selectByIds(n).sort(H1),d=J(a).collection(`relationshipEntities`).selectByIds(r),f=J(a).collection(`indexEntities`).selectByIds(i);return u.forEach(t=>{afe(e,{table:t,buffer:c}),c.push(``);let n=J(a).collection(`tableColumnEntities`).selectByIds(t.columnIds);z1(n)&&B1(n).forEach(e=>{c.push(`ALTER TABLE ${l}${t.name}${l}`),c.push(` ADD CONSTRAINT ${l}UQ_${t.name}_${e.name}${l} UNIQUE (${l}${e.name}${l})\nGO`),c.push(``)}),ofe(e,{table:t,buffer:c})}),d.forEach(t=>{sfe(e,{relationship:t,buffer:c,fkNames:o}),c.push(``)}),f.forEach(t=>{cfe(e,{index:t,buffer:c,indexNames:s}),c.push(``)}),c.join(`
59
+ `)}function afe(e,{buffer:t,table:n}){let{settings:{bracketType:r},collections:i}=e,a=V1(r),o=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{s?x8(e,{column:n,isComma:!0,spaceSize:c,buffer:t}):x8(e,{column:n,isComma:o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` CONSTRAINT ${a}PK_${n.name}${a} PRIMARY KEY (${P1(e,a)})`)}t.push(`)
60
+ GO`)}function x8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),Q(n.options,Z.notNull)&&o.push(`NOT NULL`),Q(n.options,Z.autoIncrement)?o.push(`IDENTITY(1,1)`):n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),t.push(o.join(` `)+`${r?`,`:``}`)}function ofe({collections:e},{table:t,buffer:n}){t.comment.trim()!==``&&(n.push(`EXECUTE sys.sp_addextendedproperty 'MS_Description',`),n.push(` '${t.comment}', 'user', dbo, 'table', '${t.name}'\nGO`),n.push(``)),J(e).collection(`tableColumnEntities`).selectByIds(t.columnIds).forEach(e=>{e.comment.trim()!==``&&(n.push(`EXECUTE sys.sp_addextendedproperty 'MS_Description',`),n.push(` '${e.comment}', 'user', dbo, 'table', '${t.name}', 'column', '${e.name}'\nGO`),n.push(``))})}function sfe({settings:{bracketType:e},collections:t},{buffer:n,relationship:r,fkNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`),s=J(t).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)})\nGO`)}}function cfe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)})\nGO`)}}function lfe(e){let{settings:{bracketType:t},doc:{tableIds:n,relationshipIds:r,indexIds:i},collections:a}=e,o=[],s=[],c=[``],l=V1(t),u=J(a).collection(`tableEntities`).selectByIds(n).sort(H1),d=J(a).collection(`relationshipEntities`).selectByIds(r),f=J(a).collection(`indexEntities`).selectByIds(i);return u.forEach(t=>{ufe(e,{table:t,buffer:c}),c.push(``);let n=J(a).collection(`tableColumnEntities`).selectByIds(t.columnIds);z1(n)&&B1(n).forEach(e=>{c.push(`ALTER TABLE ${l}${t.name}${l}`),c.push(` ADD CONSTRAINT ${l}UQ_${t.name}_${e.name}${l} UNIQUE (${l}${e.name}${l});`),c.push(``)})}),d.forEach(t=>{dfe(e,{relationship:t,buffer:c,fkNames:o}),c.push(``)}),f.forEach(t=>{ffe(e,{index:t,buffer:c,indexNames:s}),c.push(``)}),c.join(`
61
+ `)}function ufe(e,{buffer:t,table:n}){let{settings:{bracketType:r},collections:i}=e,a=V1(r),o=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{s?S8(e,{column:n,isComma:!0,spaceSize:c,buffer:t}):S8(e,{column:n,isComma:o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` PRIMARY KEY (${P1(e,a)})`)}n.comment.trim()===``?t.push(`);`):t.push(`) COMMENT '${n.comment}';`)}function S8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),o.push(`${Q(n.options,Z.notNull)?`NOT NULL`:`NULL `}`),Q(n.options,Z.autoIncrement)?o.push(`AUTO_INCREMENT`):n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),n.comment.trim()!==``&&o.push(`COMMENT '${n.comment}'`),t.push(o.join(` `)+`${r?`,`:``}`)}function dfe({settings:{bracketType:e},collections:t},{buffer:n,relationship:r,fkNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`),s=J(t).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)});`)}}function ffe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)});`)}}function pfe(e){let{settings:{bracketType:t},doc:{tableIds:n,relationshipIds:r,indexIds:i},collections:a}=e,o=[],s=[],c=[],l=[],u=[``],d=V1(t),f=J(a).collection(`tableEntities`).selectByIds(n).sort(H1),p=J(a).collection(`relationshipEntities`).selectByIds(r),m=J(a).collection(`indexEntities`).selectByIds(i);return f.forEach(t=>{mfe(e,{table:t,buffer:u}),u.push(``);let n=J(a).collection(`tableColumnEntities`).selectByIds(t.columnIds);z1(n)&&B1(n).forEach(e=>{u.push(`ALTER TABLE ${d}${t.name}${d}`),u.push(` ADD CONSTRAINT ${d}UQ_${t.name}_${e.name}${d} UNIQUE (${d}${e.name}${d});`),u.push(``)}),n.forEach(e=>{if(Q(e.options,Z.autoIncrement)){let n=`SEQ_${t.name}`;n=U1(s,``,n),s.push({id:xI(),name:n}),u.push(`CREATE SEQUENCE ${n}`),u.push(`START WITH 1`),u.push(`INCREMENT BY 1;`),u.push(``);let r=`SEQ_TRG_${t.name}`;r=U1(s,``,r),c.push({id:xI(),name:r}),u.push(`CREATE OR REPLACE TRIGGER ${r}`),u.push(`BEFORE INSERT ON ${t.name}`),u.push(`REFERENCING NEW AS NEW FOR EACH ROW`),u.push(`BEGIN`),u.push(` SELECT ${n}.NEXTVAL`),u.push(` INTO: NEW.${e.name}`),u.push(` FROM DUAL;`),u.push(`END;`),u.push(``)}}),hfe(e,{table:t,buffer:u})}),p.forEach(t=>{gfe(e,{relationship:t,buffer:u,fkNames:o}),u.push(``)}),m.forEach(t=>{_fe(e,{index:t,buffer:u,indexNames:l}),u.push(``)}),u.join(`
62
+ `)}function mfe(e,{buffer:t,table:n}){let{settings:{bracketType:r},collections:i}=e,a=V1(r),o=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{s?C8(e,{column:n,isComma:!0,spaceSize:c,buffer:t}):C8(e,{column:n,isComma:o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` CONSTRAINT ${a}PK_${n.name}${a} PRIMARY KEY (${P1(e,a)})`)}t.push(`);`)}function C8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),Q(n.options,Z.notNull)&&o.push(`NOT NULL`),t.push(o.join(` `)+`${r?`,`:``}`)}function hfe({settings:{bracketType:e},collections:t},{table:n,buffer:r}){let i=V1(e);n.comment.trim()!==``&&(r.push(`COMMENT ON TABLE ${i}${n.name}${i} IS '${n.comment}';`),r.push(``)),J(t).collection(`tableColumnEntities`).selectByIds(n.columnIds).forEach(e=>{e.comment.trim()!==``&&(r.push(`COMMENT ON COLUMN ${i}${n.name}${i}.${i}${e.name}${i} IS '${e.comment}';`),r.push(``))})}function gfe({settings:{bracketType:e},collections:t},{buffer:n,relationship:r,fkNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`),s=J(t).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)});`)}}function _fe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)});`)}}function vfe(e){let{doc:{tableIds:t,relationshipIds:n,indexIds:r},collections:i}=e,a=[],o=[],s=[``],c=J(i).collection(`tableEntities`).selectByIds(t).sort(H1),l=J(i).collection(`relationshipEntities`).selectByIds(n),u=J(i).collection(`indexEntities`).selectByIds(r);return c.forEach(t=>{yfe(e,{table:t,buffer:s}),s.push(``),bfe(e,{table:t,buffer:s})}),l.forEach(t=>{xfe(e,{relationship:t,buffer:s,fkNames:a}),s.push(``)}),u.forEach(t=>{Sfe(e,{index:t,buffer:s,indexNames:o}),s.push(``)}),s.join(`
63
+ `)}function yfe(e,{buffer:t,table:n}){let{settings:{bracketType:r},collections:i}=e,a=V1(r),o=J(i).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{s?w8(e,{column:n,isComma:!0,spaceSize:c,buffer:t}):w8(e,{column:n,isComma:o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` PRIMARY KEY (${P1(e,a)})`)}t.push(`);`)}function w8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),Q(n.options,Z.notNull)&&o.push(`NOT NULL`),Q(n.options,Z.autoIncrement)?o.push(`GENERATED ALWAYS AS IDENTITY`):n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),Q(n.options,Z.unique)&&o.push(`UNIQUE`),t.push(o.join(` `)+`${r?`,`:``}`)}function bfe({settings:{bracketType:e},collections:t},{buffer:n,table:r}){let i=V1(e);r.comment.trim()!==``&&(n.push(`COMMENT ON TABLE ${i}${r.name}${i} IS '${r.comment}';`),n.push(``)),J(t).collection(`tableColumnEntities`).selectByIds(r.columnIds).forEach(e=>{e.comment.trim()!==``&&(n.push(`COMMENT ON COLUMN ${i}${r.name}${i}.${i}${e.name}${i} IS '${e.comment}';`),n.push(``))})}function xfe({settings:{bracketType:e},collections:t},{buffer:n,relationship:r,fkNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`),s=J(t).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)});`)}}function Sfe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)});`)}}var T8=e=>V1(e)===``?``:`"`;function Cfe(e){let{doc:{tableIds:t,relationshipIds:n,indexIds:r},collections:i}=e,a=[],o=[],s=[``],c=J(i).collection(`tableEntities`).selectByIds(t).sort(H1),l=J(i).collection(`relationshipEntities`).selectByIds(n),u=J(i).collection(`indexEntities`).selectByIds(r);return c.forEach(t=>{wfe(e,{table:t,buffer:s}),s.push(``)}),l.forEach(t=>{Efe(e,{relationship:t,buffer:s,fkNames:a}),s.push(``)}),u.forEach(t=>{Dfe(e,{index:t,buffer:s,indexNames:o}),s.push(``)}),s.join(`
64
+ `)}function wfe(e,{buffer:t,table:n}){let{collections:r,settings:{bracketType:i}}=e,a=T8(i),o=J(r).collection(`tableColumnEntities`).selectByIds(n.columnIds);t.push(`CREATE TABLE ${a}${n.name}${a}`),t.push(`(`);let s=L1(o),c=F1(o);if(o.forEach((n,r)=>{Tfe(e,{column:n,isComma:s||o.length!==r+1,spaceSize:c,buffer:t})}),s){let e=R1(o);t.push(` CONSTRAINT ${a}PK_${n.name}${a} PRIMARY KEY (${P1(e,a)})`)}n.comment.trim()===``?t.push(`);`):(t.push(`)`),t.push(`COMMENT = '${n.comment}';`))}function Tfe({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=T8(e),o=[];o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),Q(n.options,Z.unique)&&o.push(`UNIQUE`);let s=Q(n.options,Z.notNull)||Q(n.options,Z.primaryKey);o.push(s?`NOT NULL`:` `),Q(n.options,Z.autoIncrement)?o.push(`AUTOINCREMENT`):n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),n.comment.trim()!==``&&o.push(`COMMENT '${n.comment}'`),t.push(o.join(` `).trimEnd()+`${r?`,`:``}`)}function Efe({collections:e,settings:{bracketType:t}},{buffer:n,relationship:r,fkNames:i}){let a=T8(t),o=J(e).collection(`tableEntities`),s=J(e).collection(`tableColumnEntities`),c=o.selectById(r.start.tableId),l=o.selectById(r.end.tableId);if(c&&l){n.push(`ALTER TABLE ${a}${l.name}${a}`);let e=`FK_${c.name}_TO_${l.name}`;e=U1(i,``,e),i.push({id:xI(),name:e}),n.push(` ADD CONSTRAINT ${a}${e}${a}`);let t={start:[],end:[]};r.end.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.end.push(n)}),r.start.columnIds.forEach(e=>{let n=s.selectById(e);n&&t.start.push(n)}),n.push(` FOREIGN KEY (${P1(t.end,a)})`),n.push(` REFERENCES ${a}${c.name}${a} (${P1(t.start,a)});`)}}function Dfe({collections:e,settings:{bracketType:t}},{buffer:n,index:r,indexNames:i}){let a=T8(t),o=J(e).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(e).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds),c=s.map(t=>J(e).collection(`tableColumnEntities`).selectById(t.columnId)).filter(e=>e!==void 0);if(c.length===0)return;let l=r.name;if(r.name.trim()===``&&(l=`IDX_${o.name}`,l=U1(i,``,l),i.push({id:xI(),name:l})),r.unique){n.push(`ALTER TABLE ${a}${o.name}${a}`),n.push(` ADD CONSTRAINT ${a}${l}${a} UNIQUE (${P1(c,a)});`);return}let u=s.map(t=>{let n=J(e).collection(`tableColumnEntities`).selectById(t.columnId);return n?{name:`${a}${n.name}${a} ${W1(t.orderType)}`}:null}).filter(e=>e!==null);n.push(`-- Snowflake has no secondary indexes. ${a}${l}${a} on ${a}${o.name}${a} (${P1(u)})`),n.push(`-- ALTER TABLE ${a}${o.name}${a} CLUSTER BY (${P1(c,a)});`)}function Ofe(e){let{doc:{tableIds:t,indexIds:n},collections:r}=e,i=[],a=[``],o=J(r).collection(`tableEntities`).selectByIds(t).sort(H1),s=J(r).collection(`indexEntities`).selectByIds(n);return o.forEach(t=>{kfe(e,{table:t,buffer:a}),a.push(``)}),s.forEach(t=>{Afe(e,{index:t,buffer:a,indexNames:i}),a.push(``)}),a.join(`
65
+ `)}function kfe(e,{buffer:t,table:n}){let{settings:{bracketType:r},doc:{relationshipIds:i},collections:a}=e,o=V1(r),s=J(a).collection(`tableEntities`),c=J(a).collection(`tableColumnEntities`),l=c.selectByIds(n.columnIds),u=J(a).collection(`relationshipEntities`).selectByIds(i).filter(({end:e})=>e.tableId===n.id);n.comment.trim()!==``&&t.push(`-- ${n.comment}`),t.push(`CREATE TABLE ${o}${n.name}${o}`),t.push(`(`);let d=L1(l),f=F1(l);if(l.forEach((n,r)=>{d?E8(e,{column:n,isComma:!0,spaceSize:f,buffer:t}):E8(e,{column:n,isComma:l.length!==r+1,spaceSize:f,buffer:t})}),d){let e=R1(l);if(u.length!==0){if(e.length===1){let n=Q(e[0].options,Z.autoIncrement)?` AUTOINCREMENT`:``;t.push(` PRIMARY KEY (${P1(e,o)}${n}),`)}else t.push(` PRIMARY KEY (${P1(e,o)}),`)}else if(e.length===1){let n=Q(e[0].options,Z.autoIncrement)?` AUTOINCREMENT`:``;t.push(` PRIMARY KEY (${P1(e,o)}${n})`)}else t.push(` PRIMARY KEY (${P1(e,o)})`)}u.forEach((e,n)=>{let r=s.selectById(e.start.tableId),i=s.selectById(e.end.tableId);if(r&&i){let i={start:[],end:[]};e.end.columnIds.forEach(e=>{let t=c.selectById(e);t&&i.end.push(t)}),e.start.columnIds.forEach(e=>{let t=c.selectById(e);t&&i.start.push(t)}),u.length-1>n?t.push(` FOREIGN KEY (${P1(i.end,o)}) REFERENCES ${o}${r.name}${o} (${P1(i.start,o)}),`):t.push(` FOREIGN KEY (${P1(i.end,o)}) REFERENCES ${o}${r.name}${o} (${P1(i.start,o)})`)}}),t.push(`);`)}function E8({settings:{bracketType:e}},{buffer:t,column:n,isComma:r,spaceSize:i}){let a=V1(e),o=[];n.comment.trim()!==``&&t.push(` -- ${n.comment}`),o.push(` ${a}${n.name}${a}`+I1(i.name-n.name.length)),o.push(`${n.dataType}`+I1(i.dataType-n.dataType.length)),o.push(`${Q(n.options,Z.notNull)?`NOT NULL`:`NULL `}`),Q(n.options,Z.unique)&&o.push(`UNIQUE`),!Q(n.options,Z.autoIncrement)&&n.default.trim()!==``&&o.push(`DEFAULT ${n.default}`),t.push(o.join(` `)+`${r?`,`:``}`)}function Afe({settings:{bracketType:e},collections:t},{buffer:n,index:r,indexNames:i}){let a=V1(e),o=J(t).collection(`tableEntities`).selectById(r.tableId);if(!o)return;let s=J(t).collection(`indexColumnEntities`).selectByIds(r.indexColumnIds).map(e=>{let n=J(t).collection(`tableColumnEntities`).selectById(e.columnId);return n?{name:`${a}${n.name}${a} ${W1(e.orderType)}`}:null}).filter(e=>e!==null);if(s.length!==0){let e=r.name;r.name.trim()===``&&(e=`IDX_${o.name}`,e=U1(i,``,e),i.push({id:xI(),name:e})),r.unique?n.push(`CREATE UNIQUE INDEX ${a}${e}${a}`):n.push(`CREATE INDEX ${a}${e}${a}`),n.push(` ON ${a}${o.name}${a} (${P1(s)});`)}}function jfe(e,t){switch(t||e.settings.database){case X.Databricks:return Yde(e);case X.MariaDB:return efe(e);case X.MSSQL:return ife(e);case X.MySQL:return lfe(e);case X.Oracle:return pfe(e);case X.PostgreSQL:return vfe(e);case X.Snowflake:return Cfe(e);case X.SQLite:return Ofe(e)}return``}var Mfe=2,Nfe=KG(due);function Pfe(e,t,n){let r=n?.manualStreamFlush??!1,i={editorId:e.state.editor.id},a=new Set,o=new Set,s=new DH.Subject,c=new DH.Subject,l=new DH.Subject,u=new DH.Subject,d=new DH.Subject,f=r?u6(h8(d)):Tue,p=!0,m=!0;a.add((0,DH.merge)(new DH.Observable(t=>e.subscribe(e=>t.next(e))),c).pipe(o6(uue),l6([pq.shared]),f,xue(l,u),f,(0,DH.map)(e=>hq(pq.shared,e.map(e=>{let n={...e,meta:Object.assign({},e.meta??{},{...i,nickname:t?.getNickname?.()})};return Nfe(e.type)?mq(pq.following,n):n})))).subscribe(e=>s.next(e)));let h=()=>{let e=0<o.size;p&&e?l.next():u.next()},g=t=>{let n=(Array.isArray(t)?t:[t]).some(e=>e.type===nZ.type),r=e.state.lww;n&&!aI(r)&&c.next([{...iZ({lww:r}),version:e.context.clock.getVersion()}])};return Object.freeze({connection:()=>{p=!0,h()},disconnect:()=>{p=!1,h()},dispatch:t=>{e.dispatch(t),g(t)},dispatchSync:t=>{e.dispatchSync(t),g(t)},subscribe:t=>{let n=s.subscribe(e=>t(e));return o.add(n),h(),m&&=(c.next([{...nZ(),version:e.context.clock.getVersion()}]),!1),()=>{n.unsubscribe(),o.delete(n),h()}},flushStreamBuffers:()=>{if(r)for(let e=0;e<Mfe;e++)d.next()},destroy:()=>{Array.from(a).forEach(e=>e.unsubscribe()),Array.from(o).forEach(e=>e.unsubscribe()),a.clear(),o.clear(),s.complete(),l.complete(),u.complete(),d.complete()}})}var Ffe=FY/3,Ife=e=>{e?.unref?.()},Lfe=[`sharedMouseTrackerMap`,`sharedFocusTrackerMap`,`sharedSelectionTrackerMap`,`sharedDragSelectTrackerMap`];function Rfe(e){for(let t of Lfe){let n=e[t];for(let e of Object.keys(n))clearTimeout(n[e].timeoutId),Reflect.deleteProperty(n,e)}}function zfe(e){let t=``,n=n=>{let r=qde(e.state.editor.focusTable),i=Jde(r);i===t&&!n||(t=i,e.dispatch(KX({focus:r})))},r=e.subscribe(e=>{n(e.some(e=>e.type===nZ.type))}),i=setInterval(()=>{t&&n(!0)},Ffe);return Ife(i),Object.freeze({destroy:()=>{r(),clearInterval(i)}})}function Bfe(e,t){return Object.freeze({flush:()=>{e.flushStreamBuffers(),t.flushStreamBuffers()}})}var Vfe=2,Hfe=10,D8=e=>Math.round(e.length*Hfe)+Vfe,O8={readonly:`readonly`,destroyed:`destroyed`},Ufe={readonly:`the document is readonly, so no edit was made`,destroyed:`this document session was closed; open the document again`},k8=class extends Error{constructor(e,t){super(Ufe[e]),n6(this,`code`,void 0),n6(this,`operation`,void 0),this.name=`PeerStoreError`,this.code=e,this.operation=t}},A8=KG(J3),Wfe=KG(e6),Gfe=KG([`table.add`,`column.add`,`memo.add`,`index.add`,`indexColumn.add`,`relationship.add`]);function Kfe(e){let t=0,n=0;return{history:Object.freeze({get cursor(){return e.cursor},get size(){return e.size},hasUndo:e.hasUndo,hasRedo:e.hasRedo,undo:e.undo,redo:e.redo,push:n=>{t++,e.push(n)},clear:e.clear,setLimit:t=>{n=t,e.setLimit(t)},clone:e.clone}),getPushes:()=>t,getLimit:()=>n}}function qfe(e){if(!e)return[];let{tableId:t,columnId:n,focusType:r}=e;return n===void 0?[nX({tableId:t,focusType:r})]:[iX({tableId:t,columnId:n,focusType:r,$mod:!1,shiftKey:!1})]}function j8({nickname:e,toWidth:t=D8,presence:n=!0,readonly:r=!1}){let i=null,a=Kde(bue({toWidth:t}),{manualStreamFlush:!0,observable:!1,getHistory:e=>(i=Kfe(m8(e)),i.history)}),o=()=>i?.getPushes()??0,s=()=>i?.getLimit()??0,c=Pfe(a,{getNickname:()=>e},{manualStreamFlush:!0}),l=Bfe(a,c),u=new Set,d=a.state.editor.id,f=r,p=!1,m=null,h=!1,g=0,_=[],v=[],y=null;a.dispatchSync(GY({width:0,height:0}));let b=n?zfe(a):null,ee=()=>{m||=c.subscribe(e=>{e.some(e=>A8(e.type))&&g++;for(let t of Array.from(u))s1(t,e)})},te=e=>{if(p)throw new k8(O8.destroyed,e)},x=e=>{if(y)throw Error(`${e} cannot run inside a group`)},S=e=>{if(te(e),f)throw new k8(O8.readonly,e)},ne=()=>{let e=s();if(!e)return;let t=_.reduce((e,{historyEntries:t})=>e+t,0);for(;t>e;)t-=_.shift().historyEntries;for(;_.length>e;)_.splice(_.findIndex(({historyEntries:e})=>!e),1)},re=(e,t={})=>{S(`dispatch`),ee();let n=g,r=o(),i=pU(a.state,a.context,[...qfe(t.focus),...e]);a.dispatchSync(i),i.some(e=>Wfe(e.type))&&l.flush();let s={label:t.label??null,actions:i.filter(e=>A8(e.type)),createdIds:i.filter(e=>Gfe(e.type)).map(e=>e.payload.id),batches:g-n,historyEntries:o()-r};return y?(y.unit.historyEntries+=s.historyEntries,y.dispatched=!0):_.push({label:s.label,historyEntries:s.historyEntries}),s.historyEntries&&(v=[]),y||ne(),s},ie=(e,t)=>{if(S(`group`),y)return t();let n={unit:{label:e,historyEntries:0},dispatched:!1};y=n;try{return t()}finally{y=null,n.dispatched&&(_.push(n.unit),ne())}},ae=(e,t)=>{for(let n=0;n<e.historyEntries;n++)t();l.flush()};return Object.freeze({editorId:d,get value(){return _G(a.state)},get state(){return a.state},get isReadonly(){return f},get isDestroyed(){return p},setReadonly:e=>{f=e},setInitialValue:e=>{te(`setInitialValue`),x(`setInitialValue`);let t=DK(e);a.dispatchSync(oX(),R3(aI(t)?`{}`:t)),a.resetHistory(),_=[],v=[]},mergeClock:e=>{a.context.clock.merge(e)},dispatch:re,receive:e=>{p||c.dispatchSync(e)},group:ie,undo:()=>{S(`undo`),x(`undo`),ee();let e=[],t=_.pop();for(;t&&!t.historyEntries;)t.label!==null&&e.push(t.label),t=_.pop();return t?(ae(t,a.undo),v.push(t),{label:t.label,entries:t.historyEntries,skipped:e}):{label:null,entries:0,skipped:e}},redo:()=>{S(`redo`),x(`redo`),ee();let e=v.pop();return e?(ae(e,a.redo),_.push(e),{label:e.label,entries:e.historyEntries,skipped:[]}):{label:null,entries:0,skipped:[]}},subscribe:e=>(te(`subscribe`),u.add(e),h||(h=!0,m?a.dispatchSync(nZ()):ee()),()=>{u.delete(e)}),flushStreamBuffers:()=>{p||l.flush()},destroy:()=>{p||(p=!0,b?.destroy(),m?.(),m=null,u.clear(),c.destroy(),a.destroy(),Rfe(a.state.editor),_=[],v=[])}})}var Jfe=new Set([`node_modules`]),Yfe=new Set([`$schema`,`version`,`settings`,`doc`,`collections`,`canvas`,`table`,`memo`,`relationship`]);function M8(e){return e.startsWith(``)?e.slice(1):e}function N8(){let e=j8({nickname:``,presence:!1});try{return e.value}finally{e.destroy()}}function P8(e,t){return new lP(cP.invalidDocument,`${e} ${t}, so it would load as an empty diagram; it was left untouched. Resolve any merge conflict or restore the file, then call again.`)}var F8=Up(`assertDocumentText`)(function*(e,t){if(t.trim()===``)return;let n;try{n=JSON.parse(t)}catch(t){return yield*P8(e,`is not valid JSON (${dP(t)})`)}let r=typeof n==`object`&&n&&!Array.isArray(n)?Object.keys(n):null;if(!r||r.length&&!r.some(e=>Yfe.has(e)))return yield*P8(e,`holds JSON that is not an ERD document`)}),I8=e=>t=>Kf(t,t=>uP(t,`NotFound`)?new lP(`notFound`,`${e} does not exist; erd_open_document with create true makes a new document`):t),L8=Up(`readDocumentFile`)(function*(e){let t=M8(yield*(yield*dT).readFileString(e).pipe(I8(e)));return yield*F8(e,t),t}),Xfe=Up(`readFromDisk`)(function*(e,t){let n=yield*L8(e);return yield*Mf({try:()=>{let e=j8({nickname:``,presence:!1});try{return e.setInitialValue(n),t.render(e.state)}finally{e.destroy()}},catch:e=>e})}),Zfe=Up(`listDiskDocuments`)(function*(e){let t=yield*dT,n=yield*mT,r=[],i=e=>t.stat(e).pipe(A(n=>n.type===`Directory`?t.readLink(e).pipe(Bf(!1),$f(()=>!0)):T(!1)),$f(()=>!1)),a=(e,o)=>O(function*(){let s=yield*t.readDirectory(e).pipe($f(()=>[]));for(let t of[...s].sort((e,t)=>e.localeCompare(t))){if(r.length>=500)return;let s=o<8&&!t.startsWith(`.`)&&!Jfe.has(t);if(!s&&!JP(t))continue;let c=n.join(e,t);(yield*i(c))?s&&(yield*a(c,o+1)):JP(t)&&r.push({path:c,open:!1,active:!1,dirty:!1,readonly:!1})}});return yield*a(e,0),r}),R8={unknownTool:`unknownTool`,invalidArgs:`invalidArgs`,notFound:`notFound`,tooLarge:`tooLarge`},z8=class extends Error{code;tool;constructor(e,t,n){super(n),this.name=`ToolError`,this.code=e,this.tool=t}},B8=(e,t)=>e*(1-t)/2;function V8(e){return{originX:iI(e.scrollLeft+B8(e.width,e.zoomLevel),4),originY:iI(e.scrollTop+B8(e.height,e.zoomLevel),4)}}function $(e,t,n){return r=>{if(!n)return;let i=n[r];e(i)&&(t[r]=i)}}function H8(e){return t=>V(t)&&e.includes(t)}function U8(e){return t=>eI(t)&&e.includes(t)}function W8(e,t,n){return Reflect.get(e,t)??n}function G8(){let e=Date.now();return{updateAt:e,createAt:e}}function K8(e,t){let n=$(eI,e,t);n(`updateAt`),n(`createAt`)}var Qfe=()=>({tableIds:[],relationshipIds:[],indexIds:[],memoIds:[]});function $fe(e){let t=Qfe();if(!AF(e)||JF(e))return t;let n=$(Array.isArray,t,e);return n(`tableIds`),n(`relationshipIds`),n(`indexIds`),n(`memoIds`),t}var q8=()=>({id:``,name:``,tableId:``,indexColumnIds:[],seqIndexColumnIds:[],unique:!1,meta:G8()});function epe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=q8(),r=$(V,e,n),i=$(QF,e,n),a=$(Array.isArray,e,n);r(`id`),r(`name`),r(`tableId`),i(`unique`),a(`indexColumnIds`),a(`seqIndexColumnIds`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var J8={ASC:1,DESC:2},Y8=Object.values(J8),X8=()=>({id:``,indexId:``,columnId:``,orderType:J8.ASC,meta:G8()});function tpe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=X8(),r=$(V,e,n);r(`id`),r(`indexId`),r(`columnId`),$(U8(Y8),e,n)(`orderType`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var Z8=()=>({id:``,value:``,ui:{x:200,y:100,zIndex:2,width:116,height:100,color:``},meta:G8()});function npe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=Z8(),r=$(V,e,n),i=$(eI,e.ui,n.ui),a=$(V,e.ui,n.ui);r(`id`),r(`value`),a(`color`),i(`x`),i(`y`),i(`zIndex`),i(`width`),i(`height`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var Q8={ZeroOne:2,ZeroN:4,OneOnly:8,OneN:16},$8=Object.values(Q8),e5={ring:1,dash:2},t5=Object.values(e5),n5={left:1,right:2,top:4,bottom:8},r5=Object.values(n5),i5=()=>({id:``,identification:!1,relationshipType:Q8.ZeroN,startRelationshipType:e5.dash,start:{tableId:``,columnIds:[],x:0,y:0,direction:n5.bottom},end:{tableId:``,columnIds:[],x:0,y:0,direction:n5.bottom},meta:G8()});function rpe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=i5(),r=$(V,e,n),i=$(QF,e,n),a=$(eI,e.start,n.start),o=$(V,e.start,n.start),s=$(eI,e.end,n.end),c=$(V,e.end,n.end);r(`id`),i(`identification`),$(U8($8),e,n)(`relationshipType`),$(U8(t5),e,n)(`startRelationshipType`),o(`tableId`),a(`x`),a(`y`),$(U8(r5),e.start,n.start)(`direction`),$(Array.isArray,e.start,n.start)(`columnIds`),c(`tableId`),s(`x`),s(`y`),$(U8(r5),e.end,n.end)(`direction`),$(Array.isArray,e.end,n.end)(`columnIds`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var a5={ERD:`ERD`,visualization:`@dineug/erd-editor/builtin-visualization`,schemaSQL:`@dineug/erd-editor/builtin-schema-sql`,generatorCode:`@dineug/erd-editor/builtin-generator-code`,settings:`settings`},ipe=Object.values(a5),o5={tableComment:1,columnComment:2,columnDataType:4,columnDefault:8,columnAutoIncrement:16,columnPrimaryKey:32,columnUnique:64,columnNotNull:128,relationship:256},s5={columnName:1,columnDataType:2,columnNotNull:4,columnUnique:8,columnAutoIncrement:16,columnDefault:32,columnComment:64},c5=Object.values(s5),l5={MariaDB:1,MSSQL:2,MySQL:4,Oracle:8,PostgreSQL:16,SQLite:32,Databricks:64,Snowflake:128},u5=Object.values(l5),d5={GraphQL:1,csharp:2,Java:4,Kotlin:8,TypeScript:16,JPA:32,Scala:64,Go:128,SQLAlchemy:256,TypeORM:512,Sequelize:1024,Drizzle:2048,DBML:4096,AML:8192},f5=Object.values(d5),p5={none:1,camelCase:2,pascalCase:4,snakeCase:8},m5=Object.values(p5),h5={none:1,doubleQuote:2,singleQuote:4,backtick:8},g5=Object.values(h5),ape={scroll:1,zoomLevel:2},_5=.1,v5=1.5,y5=2e3,b5=2e4,ope=o5.tableComment|o5.columnComment|o5.columnDataType|o5.columnDefault|o5.columnPrimaryKey|o5.columnNotNull|o5.relationship,spe=()=>({width:2e3,height:2e3,scrollTop:0,scrollLeft:0,originX:0,originY:0,zoomLevel:1,show:ope,database:l5.MySQL,databaseName:``,canvasType:a5.ERD,language:d5.GraphQL,tableNameCase:p5.pascalCase,columnNameCase:p5.camelCase,bracketType:h5.none,relationshipDataTypeSync:!0,relationshipOptimization:!1,columnOrder:[s5.columnName,s5.columnDataType,s5.columnNotNull,s5.columnUnique,s5.columnAutoIncrement,s5.columnDefault,s5.columnComment],maxWidthComment:-1,ignoreSaveSettings:0}),x5=e=>lI(e,y5,b5),cpe=e=>lI(e,_5,v5),lpe=e=>lI(e,60,200);function upe(e){let t=spe();if(!AF(e)||JF(e))return t;let n=$(eI,t,e),r=$(V,t,e),i=$(QF,t,e);if(eI(e.width)&&(t.width=x5(e.width)),eI(e.height)&&(t.height=x5(e.height)),eI(e.zoomLevel)&&(t.zoomLevel=cpe(e.zoomLevel)),eI(e.maxWidthComment)&&e.maxWidthComment!==-1&&(t.maxWidthComment=lpe(e.maxWidthComment)),n(`scrollTop`),n(`scrollLeft`),n(`show`),n(`ignoreSaveSettings`),r(`databaseName`),r(`canvasType`),i(`relationshipDataTypeSync`),i(`relationshipOptimization`),$(U8(u5),t,e)(`database`),$(U8(f5),t,e)(`language`),$(U8(m5),t,e)(`tableNameCase`),$(U8(m5),t,e)(`columnNameCase`),$(U8(g5),t,e)(`bracketType`),Array.isArray(e.columnOrder)&&c5.length===e.columnOrder.length&&WF(c5,e.columnOrder).length===0&&(t.columnOrder=e.columnOrder),eI(e.originX)&&eI(e.originY))t.originX=e.originX,t.originY=e.originY;else{let{originX:e,originY:n}=V8(t);t.originX=e,t.originY=n}return t}var S5=()=>({id:``,name:``,comment:``,columnIds:[],seqColumnIds:[],ui:{x:200,y:100,zIndex:2,widthName:60,widthComment:60,color:``},meta:G8()});function dpe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=S5(),r=$(V,e,n),i=$(Array.isArray,e,n),a=$(eI,e.ui,n.ui),o=$(V,e.ui,n.ui);r(`id`),r(`name`),r(`comment`),i(`columnIds`),i(`seqColumnIds`),o(`color`),a(`x`),a(`y`),a(`zIndex`),a(`widthName`),a(`widthComment`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}var C5=()=>({id:``,tableId:``,name:``,comment:``,dataType:``,default:``,options:0,ui:{keys:0,widthName:60,widthComment:60,widthDataType:60,widthDefault:60},meta:G8()});function fpe(e){let t={};if(!AF(e)||JF(e))return t;for(let n of Object.values(e)){if(!n)continue;let e=C5(),r=$(V,e,n),i=$(eI,e,n),a=$(eI,e.ui,n.ui);r(`id`),r(`tableId`),r(`name`),r(`comment`),r(`dataType`),r(`default`),i(`options`),a(`keys`),a(`widthName`),a(`widthComment`),a(`widthDataType`),a(`widthDefault`),K8(e.meta,n.meta),e.id&&(t[e.id]=e)}return t}function w5(e){let t=e;return{$schema:`https://raw.githubusercontent.com/dineug/erd-editor/main/json-schema/schema.json`,version:`3.0.0`,settings:upe(t.settings),doc:$fe(t.doc),collections:{tableEntities:dpe(t.collections?.tableEntities),tableColumnEntities:fpe(t.collections?.tableColumnEntities),relationshipEntities:rpe(t.collections?.relationshipEntities),indexEntities:epe(t.collections?.indexEntities),indexColumnEntities:tpe(t.collections?.indexColumnEntities),memoEntities:npe(t.collections?.memoEntities)}}}var T5={CanvasType:a5,CanvasTypeList:ipe,Show:o5,ColumnType:s5,ColumnTypeList:c5,Database:l5,DatabaseList:u5,Language:d5,LanguageList:f5,NameCase:p5,NameCaseList:m5,BracketType:h5,BracketTypeList:g5,RelationshipType:Q8,RelationshipTypeList:$8,StartRelationshipType:e5,StartRelationshipTypeList:t5,Direction:n5,DirectionList:r5,ColumnOption:{autoIncrement:1,primaryKey:2,unique:4,notNull:8},ColumnUIKey:{primaryKey:1,foreignKey:2},OrderType:J8,OrderTypeList:Y8,SaveSettingType:ape,CANVAS_SIZE_MAX:b5,CANVAS_SIZE_MIN:y5,CANVAS_ZOOM_MAX:v5,CANVAS_ZOOM_MIN:_5};function ppe(e){return[e,-1,-1,{}]}function E5(e,t,n){return e[t]||(e[t]=ppe(n),e[t])}function mpe(e,t,n,r,i){let a=E5(e,n,r),o=a[1],s=a[2];o<t&&(a[1]=t),s<t&&i()}function hpe(e,t,n,r,i){let a=E5(e,n,r),o=a[2],s=a[1];o<t&&(a[2]=t),s<=t&&i()}function gpe(e,t,n,r,i,a){let o=E5(e,n,r);(o[3][i]??-1)<=t&&(o[3][i]=t,a())}function D5(e){"@babel/helpers - typeof";return D5=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},D5(e)}function _pe(e,t){if(D5(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(D5(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function vpe(e){var t=_pe(e,`string`);return D5(t)==`symbol`?t:t+``}function O5(e,t,n){return(t=vpe(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var ype=class{constructor(e){O5(this,`collections`,void 0),this.collections=e}collection(e){return new bpe(this.collections[e],e)}},bpe=class{constructor(e,t){O5(this,`collection`,void 0),O5(this,`collectionKey`,void 0),this.collection=e,this.collectionKey=t}selectById(e){return this.collection[e]}selectByIds(e){return e.length,e.map(e=>this.selectById(e)).filter(Boolean)}selectEntities(){return this.collection}selectAll(){return Object.values(this.collection)}setOne(e){return this.collection[e.id]=e,this}setMany(e){return e.forEach(e=>this.setOne(e)),this}setAll(e){return this.removeAll(),this.setMany(e),this}addOne(e){return this.selectById(e.id)||this.setOne(e),this}addMany(e){return e.forEach(e=>this.addOne(e)),this}removeOne(e){return this.selectById(e)&&Reflect.deleteProperty(this.collection,e),this}removeMany(e){return e.forEach(e=>this.removeOne(e)),this}removeAll(){return this.collection={},this}updateOne(e,t){let n=this.selectById(e);return n&&(t(n),n.meta.updateAt=Date.now()),this}updateMany(e,t){return e.forEach(e=>this.updateOne(e,t)),this}getOrCreate(e,t){let n=this.selectById(e);if(n)return n;let r=t(e);return this.setOne(r),this.selectById(e)}addOperator(e,t,n,r){return mpe(e,t,n,this.collectionKey,r),this}removeOperator(e,t,n,r){return hpe(e,t,n,this.collectionKey,r),this}replaceOperator(e,t,n,r,i){return gpe(e,t,n,this.collectionKey,r,i),this}},k5=e=>new ype(e),A5=Object.values({columnUnique:`columnUnique`,columnAutoIncrement:`columnAutoIncrement`,columnName:`columnName`,columnDataType:`columnDataType`,columnNotNull:`columnNotNull`,columnDefault:`columnDefault`,columnComment:`columnComment`}),xpe=Object.values({ERD:`ERD`,"@vuerd/builtin-sql-ddl":`@vuerd/builtin-sql-ddl`,"@vuerd/builtin-grid":`@vuerd/builtin-grid`,"@vuerd/builtin-generator-code":`@vuerd/builtin-generator-code`,"@vuerd/builtin-visualization":`@vuerd/builtin-visualization`}),Spe=Object.values({MariaDB:`MariaDB`,MSSQL:`MSSQL`,MySQL:`MySQL`,Oracle:`Oracle`,PostgreSQL:`PostgreSQL`,SQLite:`SQLite`}),Cpe=Object.values({GraphQL:`GraphQL`,"C#":`C#`,Java:`Java`,Kotlin:`Kotlin`,TypeScript:`TypeScript`,JPA:`JPA`,Scala:`Scala`}),j5=Object.values({none:`none`,camelCase:`camelCase`,pascalCase:`pascalCase`,snakeCase:`snakeCase`}),wpe=Object.values({AtomOneDark:`AtomOneDark`,AtomOneLight:`AtomOneLight`,MonokaiSublime:`MonokaiSublime`,GithubGist:`GithubGist`,VS2015:`VS2015`}),Tpe=Object.values({none:`none`,doubleQuote:`doubleQuote`,singleQuote:`singleQuote`,backtick:`backtick`}),Epe=.1,Dpe=2e3,Ope=2e4,kpe=()=>({version:`2.2.11`,width:2e3,height:2e3,scrollTop:0,scrollLeft:0,zoomLevel:1,show:{tableComment:!0,columnComment:!0,columnDataType:!0,columnDefault:!0,columnAutoIncrement:!1,columnPrimaryKey:!0,columnUnique:!1,columnNotNull:!0,relationship:!0},database:`MySQL`,databaseName:``,canvasType:`ERD`,language:`GraphQL`,tableCase:`pascalCase`,columnCase:`camelCase`,highlightTheme:`VS2015`,bracketType:`none`,setting:{relationshipDataTypeSync:!0,relationshipOptimization:!1,columnOrder:[`columnName`,`columnDataType`,`columnNotNull`,`columnUnique`,`columnAutoIncrement`,`columnDefault`,`columnComment`]},pluginSerializationMap:{}}),M5=e=>lI(e,Dpe,Ope),Ape=e=>lI(e,Epe,1);function jpe(e){let t=kpe();if(JF(e))return t;let n=$(eI,t,e),r=$(V,t,e),i=$(QF,t.show,e.show),a=$(QF,t.setting,e.setting);if(eI(e.width)&&(t.width=M5(e.width)),eI(e.height)&&(t.height=M5(e.height)),eI(e.zoomLevel)&&(t.zoomLevel=Ape(e.zoomLevel)),r(`version`),r(`databaseName`),n(`scrollTop`),n(`scrollLeft`),$(H8(Spe),t,e)(`database`),$(H8(xpe),t,e)(`canvasType`),$(H8(Cpe),t,e)(`language`),$(H8(j5),t,e)(`tableCase`),$(H8(j5),t,e)(`columnCase`),$(H8(wpe),t,e)(`highlightTheme`),$(H8(Tpe),t,e)(`bracketType`),i(`tableComment`),i(`columnComment`),i(`columnDataType`),i(`columnDefault`),i(`columnAutoIncrement`),i(`columnPrimaryKey`),i(`columnUnique`),i(`columnNotNull`),i(`relationship`),a(`relationshipDataTypeSync`),a(`relationshipOptimization`),e.setting?.columnOrder&&A5.length===e.setting.columnOrder.length&&WF(A5,e.setting.columnOrder).length===0&&(t.setting.columnOrder=e.setting.columnOrder),AF(e.pluginSerializationMap)){let n=e.pluginSerializationMap;for(let e of Object.keys(n)){let r=n[e];V(r)&&(t.pluginSerializationMap[e]=r)}}return t}var Mpe=()=>({memos:[]}),Npe=()=>({id:``,value:``,ui:{active:!1,left:200,top:200,zIndex:2,width:127,height:127}});function Ppe(e){let t=Mpe();if(JF(e)||!Array.isArray(e.memos))return t;for(let n of e.memos){let e=Npe(),r=$(V,e,n),i=$(eI,e.ui,n.ui),a=$(QF,e.ui,n.ui),o=$(V,e.ui,n.ui);r(`id`),r(`value`),a(`active`),o(`color`),i(`left`),i(`top`),i(`zIndex`),i(`width`),i(`height`),t.memos.push(e)}return t}var Fpe=[`ZeroOneN`,`One`,`N`],Ipe={ZeroOneN:`ZeroN`,One:`OneOnly`,N:`OneN`},Lpe=e=>Fpe.includes(e)?Ipe[e]:e,Rpe=Object.values({ZeroOneN:`ZeroOneN`,ZeroOne:`ZeroOne`,ZeroN:`ZeroN`,OneOnly:`OneOnly`,OneN:`OneN`,One:`One`,N:`N`}),zpe=Object.values({Ring:`Ring`,Dash:`Dash`}),N5=Object.values({left:`left`,right:`right`,top:`top`,bottom:`bottom`}),Bpe=()=>({relationships:[]}),Vpe=()=>({id:``,identification:!1,relationshipType:`ZeroN`,startRelationshipType:`Dash`,start:{tableId:``,columnIds:[],x:0,y:0,direction:`bottom`},end:{tableId:``,columnIds:[],x:0,y:0,direction:`bottom`},constraintName:``,visible:!0});function Hpe(e){let t=Bpe();if(JF(e)||!Array.isArray(e.relationships))return t;for(let n of e.relationships){let e=Vpe(),r=$(V,e,n),i=$(QF,e,n),a=$(eI,e.start,n.start),o=$(V,e.start,n.start),s=$(eI,e.end,n.end),c=$(V,e.end,n.end);r(`id`),r(`constraintName`),i(`identification`),i(`visible`),$(H8(Rpe),e,n)(`relationshipType`),e.relationshipType=Lpe(e.relationshipType),$(H8(zpe),e,n)(`startRelationshipType`),o(`tableId`),a(`x`),a(`y`),$(H8(N5),e.start,n.start)(`direction`),Array.isArray(n.start?.columnIds)&&(e.start.columnIds=n.start?.columnIds.filter(V)),c(`tableId`),s(`x`),s(`y`),$(H8(N5),e.end,n.end)(`direction`),Array.isArray(n.end?.columnIds)&&(e.end.columnIds=n.end?.columnIds.filter(V)),t.relationships.push(e)}return t}var P5={ASC:`ASC`,DESC:`DESC`},Upe=Object.values(P5),Wpe=()=>({tables:[],indexes:[]}),Gpe=()=>({id:``,name:``,comment:``,columns:[],ui:{active:!1,left:200,top:100,zIndex:2,widthName:60,widthComment:60},visible:!0}),Kpe=()=>({id:``,name:``,comment:``,dataType:``,default:``,option:{autoIncrement:!1,primaryKey:!1,unique:!1,notNull:!1},ui:{active:!1,pk:!1,fk:!1,pfk:!1,widthName:60,widthComment:60,widthDataType:60,widthDefault:60}}),qpe=()=>({id:``,name:``,tableId:``,columns:[],unique:!1}),Jpe=()=>({id:``,orderType:P5.ASC});function Ype(e){let t=Wpe();if(JF(e))return t;if(Array.isArray(e.tables))for(let n of e.tables){let e=Gpe(),r=$(V,e,n),i=$(QF,e,n),a=$(eI,e.ui,n.ui),o=$(QF,e.ui,n.ui),s=$(V,e.ui,n.ui);if(r(`id`),r(`name`),r(`comment`),i(`visible`),o(`active`),s(`color`),a(`left`),a(`top`),a(`zIndex`),a(`widthName`),a(`widthComment`),Array.isArray(n.columns))for(let t of n.columns){let n=Kpe(),r=$(V,n,t),i=$(eI,n.ui,t.ui),a=$(QF,n.ui,t.ui),o=$(QF,n.option,t.option);r(`id`),r(`name`),r(`comment`),r(`dataType`),r(`default`),o(`autoIncrement`),o(`primaryKey`),o(`unique`),o(`notNull`),a(`active`),a(`pk`),a(`fk`),a(`pfk`),i(`widthName`),i(`widthComment`),i(`widthDataType`),i(`widthDefault`),e.columns.push(n)}t.tables.push(e)}if(Array.isArray(e.indexes))for(let n of e.indexes){let e=qpe(),r=$(V,e,n),i=$(QF,e,n);if(r(`id`),r(`name`),r(`tableId`),i(`unique`),Array.isArray(n.columns))for(let t of n.columns){let n=Jpe();$(V,n,t)(`id`),$(H8(Upe),n,t)(`orderType`),e.columns.push(n)}t.indexes.push(e)}return t}function Xpe(e){let t=e;return{canvas:jpe(t.canvas),table:Ype(t.table),relationship:Hpe(t.relationship),memo:Ppe(t.memo)}}function Zpe(e){let t=w5({});return Qpe(t.settings,e.canvas),$pe(t,e.table),eme(t,e.memo),tme(t,e.relationship),t}function Qpe(e,t){e.width=t.width,e.height=t.height,e.scrollTop=t.scrollTop,e.scrollLeft=t.scrollLeft,e.zoomLevel=t.zoomLevel;let{originX:n,originY:r}=V8(e);e.originX=n,e.originY=r,e.databaseName=t.databaseName,e.canvasType=T5.CanvasType.ERD,e.show=Object.keys(t.show).reduce((e,n)=>W8(t.show,n,!1)?e|W8(T5.Show,n,0):e,0),e.database=Reflect.get(T5.Database,t.database)??T5.Database.MySQL,e.language=t.language===`C#`?T5.Language.csharp:W8(T5.Language,t.language,T5.Language.GraphQL),e.tableNameCase=W8(T5.NameCase,t.tableCase,T5.NameCase.pascalCase),e.columnNameCase=W8(T5.NameCase,t.columnCase,T5.NameCase.camelCase),e.bracketType=W8(T5.BracketType,t.bracketType,T5.BracketType.none),e.relationshipDataTypeSync=t.setting.relationshipDataTypeSync,e.relationshipOptimization=t.setting.relationshipOptimization;let i=t.setting.columnOrder.map(e=>T5.ColumnType[e]);WF(T5.ColumnTypeList,i).length===0&&(e.columnOrder=i)}function $pe(e,t){let n=t.tables.filter(({id:e})=>!!e),r=t.indexes.filter(({id:e})=>!!e);e.doc.tableIds=n.map(({id:e})=>e),e.doc.indexIds=r.map(({id:e})=>e);for(let t of n){let n=S5();n.id=t.id,n.name=t.name,n.comment=t.comment,n.columnIds=t.columns.map(({id:e})=>e),n.seqColumnIds=[...n.columnIds],n.ui.y=t.ui.top,n.ui.x=t.ui.left,n.ui.zIndex=t.ui.zIndex,n.ui.widthName=t.ui.widthName,n.ui.widthComment=t.ui.widthComment,n.ui.color=t.ui.color??``;for(let n of t.columns){let r=C5();r.id=n.id,r.tableId=t.id,r.name=n.name,r.comment=n.comment,r.dataType=n.dataType,r.default=n.default,r.options=Object.keys(n.option).reduce((e,t)=>W8(n.option,t,!1)?e|W8(T5.ColumnOption,t,0):e,0),r.ui.widthName=n.ui.widthName,r.ui.widthComment=n.ui.widthComment,r.ui.widthDataType=n.ui.widthDataType,r.ui.widthDefault=n.ui.widthDefault,n.ui.pfk?r.ui.keys=T5.ColumnUIKey.primaryKey|T5.ColumnUIKey.foreignKey:n.ui.pk?r.ui.keys=T5.ColumnUIKey.primaryKey:n.ui.fk&&(r.ui.keys=T5.ColumnUIKey.foreignKey),e.collections.tableColumnEntities[r.id]=r}e.collections.tableEntities[n.id]=n}for(let t of r){let n=q8();n.id=t.id,n.name=t.name,n.tableId=t.tableId,n.unique=t.unique;for(let r of t.columns){let i=xI(),a=X8();n.indexColumnIds.push(i),n.seqIndexColumnIds.push(i),a.id=i,a.indexId=t.id,a.columnId=r.id,a.orderType=W8(T5.OrderType,r.orderType,T5.OrderType.ASC),e.collections.indexColumnEntities[a.id]=a}e.collections.indexEntities[n.id]=n}}function eme(e,t){let n=t.memos.filter(({id:e})=>!!e);e.doc.memoIds=n.map(({id:e})=>e);for(let t of n){let n=Z8();n.id=t.id,n.value=t.value,n.ui.y=t.ui.top,n.ui.x=t.ui.left,n.ui.width=t.ui.width,n.ui.height=t.ui.height,n.ui.zIndex=t.ui.zIndex,n.ui.color=t.ui.color??``,e.collections.memoEntities[n.id]=n}}function tme(e,t){let n=t.relationships.filter(({id:e})=>!!e);e.doc.relationshipIds=n.map(({id:e})=>e);for(let t of n){let n=i5();n.id=t.id,n.identification=t.identification,n.relationshipType=W8(T5.RelationshipType,t.relationshipType,T5.RelationshipType.ZeroN),n.startRelationshipType=W8(T5.StartRelationshipType,t.startRelationshipType===`Ring`?`ring`:`dash`,T5.StartRelationshipType.dash),n.start.tableId=t.start.tableId,n.start.columnIds=t.start.columnIds,n.start.x=t.start.x,n.start.y=t.start.y,n.start.direction=W8(T5.Direction,t.start.direction,T5.Direction.bottom),n.end.tableId=t.end.tableId,n.end.columnIds=t.end.columnIds,n.end.x=t.end.x,n.end.y=t.end.y,n.end.direction=W8(T5.Direction,t.end.direction,T5.Direction.bottom),e.collections.relationshipEntities[n.id]=n}}function F5(e,t){return(e&t)===t}function nme(e){let t=JSON.parse(e);return Reflect.get(t,`version`)===`3.0.0`?w5(t):Zpe(Xpe(t))}function rme(e){let t=dI(e,[`$schema`,`version`,`settings`,`doc`,`collections`]),n={...t.settings};return t.settings=n,F5(n.ignoreSaveSettings,T5.SaveSettingType.scroll)&&(n.originX=0,n.originY=0),F5(n.ignoreSaveSettings,T5.SaveSettingType.zoomLevel)&&(n.zoomLevel=1),JSON.stringify(t,null,2)}var I5={name:`tableId`,kind:{type:`entityId`,entity:`table`},required:!0},L5={name:`columnId`,kind:{type:`entityId`,entity:`column`,parentArg:`tableId`},required:!0},R5={name:`value`,kind:{type:`string`},required:!0},ime={name:`value`,kind:{type:`boolean`},required:!0},z5=e=>({kind:`column`,tableArg:`tableId`,columnArg:`columnId`,focusType:e}),B5=e=>[`tables[tableId].columns[columnId].${e}`],ame=(e,t)=>(n,r,i)=>function*({collections:a}){let o=k5(a).collection(`tableColumnEntities`).selectById(r);!o||Q(o.options,t)===i||(yield e({tableId:n,id:r,value:i}))},V5=({name:e,atomReason:t,actionType:n,creator:r,option:i,focusType:a,field:o})=>{let s=ame(r,i);return{name:e,kind:`atom`,atomReason:t,actionTypes:[n],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},focus:z5(a),snapshotPaths:B5(o),args:[I5,L5,ime],toActions:({tableId:e,columnId:t,value:n})=>[s(e,t,n)]}},H5=(e,t,n,r)=>({name:e,kind:`generator`,actionTypes:[t],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:z5(n),snapshotPaths:B5(r),args:[I5,L5,R5],toActions:({tableId:e,columnId:t,value:r})=>[M1.changeColumnValueAction$(n,e,t,r)]}),U5=`toggleColumnValueAction$ flips the flag the state holds, so a repeated call undoes itself`,ome=[{name:`erd_add_column`,kind:`generator`,actionTypes:[`column.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`tables[tableId].columns`],args:[I5],toActions:({tableId:e})=>[M1.addColumnAction$(e)]},{name:`erd_remove_columns`,kind:`generator`,actionTypes:[`column.remove`,`relationship.remove`,`index.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`tables[tableId].columns`],args:[I5,{name:`columnIds`,kind:{type:`entityIdList`,entity:`column`,parentArg:`tableId`},required:!0}],toActions:({tableId:e,columnIds:t})=>[M1.removeColumnAction$(e,t)]},{name:`erd_change_column_data_type`,kind:`generator`,actionTypes:[`column.changeDataType`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:z5(MK.columnDataType),snapshotPaths:B5(`dataType`),args:[I5,L5,R5],toActions:({tableId:e,columnId:t,value:n})=>[M1.changeColumnDataTypeAction$({tableId:e,id:t,value:n})]},H5(`erd_change_column_name`,`column.changeName`,MK.columnName,`name`),H5(`erd_change_column_default`,`column.changeDefault`,MK.columnDefault,`default`),H5(`erd_change_column_comment`,`column.changeComment`,MK.columnComment,`comment`),V5({name:`erd_set_column_primary_key`,atomReason:`changeColumnPrimaryKeyAction$ toggles the key the state holds, so a repeated call flips it back; selectTableAction$ sets a key only while a relationship is drawn, and addRelationshipAction$ only on a new key column of a start table without one. The tool sets the value outright.`,actionType:`column.changePrimaryKey`,creator:J$.changeColumnPrimaryKeyAction,option:Z.primaryKey,focusType:MK.columnName,field:`primaryKey`}),V5({name:`erd_set_column_unique`,atomReason:`${U5}, and pasteTableAction$ writes it only while pasting columns. The tool sets the value outright.`,actionType:`column.changeUnique`,creator:J$.changeColumnUniqueAction,option:Z.unique,focusType:MK.columnUnique,field:`unique`}),V5({name:`erd_set_column_not_null`,atomReason:`${U5}; pasteTableAction$ and selectTableAction$ write it only while pasting columns or drawing a relationship, and addRelationshipAction$ only on the foreign key columns it adds. The tool sets the value outright.`,actionType:`column.changeNotNull`,creator:J$.changeColumnNotNullAction,option:Z.notNull,focusType:MK.columnNotNull,field:`notNull`}),V5({name:`erd_set_column_auto_increment`,atomReason:`${U5}, and pasteTableAction$ writes it only while pasting columns. The tool sets the value outright.`,actionType:`column.changeAutoIncrement`,creator:J$.changeColumnAutoIncrementAction,option:Z.autoIncrement,focusType:MK.columnAutoIncrement,field:`autoIncrement`}),{name:`erd_move_column`,kind:`atom`,atomReason:`The only generator that moves a column, dragoverColumnAction$, reads the drag state a pointer sets up; the tool names the target column directly.`,actionTypes:[`column.move`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:z5(MK.columnName),snapshotPaths:[`tables[tableId].columns`],args:[I5,L5,{name:`targetColumnId`,kind:{type:`entityId`,entity:`column`,parentArg:`tableId`},required:!0}],refine:({columnId:e,targetColumnId:t})=>e===t?`targetColumnId must name a different column than columnId`:void 0,toActions:({tableId:e,columnId:t,targetColumnId:n})=>[J$.moveColumnAction({id:t,tableId:e,targetId:n})]}],W5=[{name:`value`,kind:{type:`string`},required:!0}],G5=[`tables`,`relationships`,`indexes`,`memos`],K5=e=>V(e)?e.trim():``,q5=(e,t)=>({name:e,kind:`generator`,actionTypes:[`editor.clear`,`editor.loadJson`,`table.sort`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:G5,args:W5,refine:({value:e})=>aI(K5(e))?`value is empty, so nothing was imported`:void 0,toActions:({value:e})=>[t(K5(e))]});function sme(e){if(!aI(e))try{if(!AF(JSON.parse(e)))return`value must be a JSON object, an erd-editor document`;nme(e)}catch(e){return`value is not an erd-editor document: ${e.message}`}}var cme=[q5(`erd_import_sql`,U3.loadSchemaSQLAction$),q5(`erd_import_graphql`,U3.loadSchemaGraphQLAction$),q5(`erd_import_dbml`,U3.loadSchemaDBMLAction$),q5(`erd_import_aml`,U3.loadSchemaAMLAction$),{name:`erd_import_json`,kind:`generator`,actionTypes:[`editor.clear`,`editor.loadJson`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`settings`,...G5],args:W5,refine:({value:e})=>sme(e),toActions:({value:e})=>[U3.loadJsonAction$(aI(e)?`{}`:e)]}],J5={name:`indexId`,kind:{type:`entityId`,entity:`index`},required:!0},Y5=e=>({name:e,kind:{type:`entityId`,entity:`indexColumn`,parentArg:`indexId`},required:!0}),X5=Y5(`indexColumnId`),Z5=e=>[`indexes[indexId].${e}`],Q5=(e,t)=>k5(e).collection(`indexEntities`).selectById(t),$5=(e,t)=>k5(e).collection(`indexColumnEntities`).selectById(t),lme=(e,t)=>function*({collections:n}){let r=Q5(n,e);r&&(yield SZ.changeIndexNameAction({id:e,tableId:r.tableId,value:t}))},ume=(e,t)=>function*({collections:n}){let r=Q5(n,e);!r||r.unique===t||(yield SZ.changeIndexUniqueAction({id:e,tableId:r.tableId,value:t}))},dme=(e,t)=>function*({collections:n}){let r=Q5(n,e),i=k5(n).collection(`indexColumnEntities`).selectByIds(r?.indexColumnIds??[]).some(e=>e.columnId===t);!r||i||(yield G3.addIndexColumnAction$(e,t))},fme=(e,t)=>function*({collections:n}){let r=$5(n,t);r&&(yield G3.removeIndexColumnAction$(e,r.columnId))},pme=(e,t)=>function*({collections:n}){let r=$5(n,e);!r||r.orderType===t||(yield BZ.changeIndexColumnOrderTypeAction({id:e,indexId:r.indexId,columnId:r.columnId,value:t}))},mme=[{name:`erd_add_index`,kind:`generator`,actionTypes:[`index.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`indexes`],args:[{name:`tableId`,kind:{type:`entityId`,entity:`table`},required:!0}],toActions:({tableId:e})=>[W3.addIndexAction$(e)]},{name:`erd_remove_index`,kind:`atom`,atomReason:`No generator removes one named index: removeTableAction$ and removeColumnAction$ drop only the indexes of what they remove. The index panel dispatches this atom itself.`,actionTypes:[`index.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`indexes`],args:[J5],toActions:({indexId:e})=>[SZ.removeIndexAction({id:e})]},{name:`erd_change_index_name`,kind:`atom`,atomReason:`The index module has no generator that renames an index; the index panel dispatches this atom itself. The tool reads the index table from the state.`,actionTypes:[`index.changeName`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:Z5(`name`),args:[J5,{name:`value`,kind:{type:`string`},required:!0}],toActions:({indexId:e,value:t})=>[lme(e,t)]},{name:`erd_set_index_unique`,kind:`atom`,atomReason:`changeIndexUniqueAction$ flips the flag the state holds, so a repeated call undoes itself. The tool sets the value outright.`,actionTypes:[`index.changeUnique`],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},snapshotPaths:Z5(`unique`),args:[J5,{name:`value`,kind:{type:`boolean`},required:!0}],toActions:({indexId:e,value:t})=>[ume(e,t)]},{name:`erd_add_index_column`,kind:`generator`,actionTypes:[`indexColumn.add`],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},snapshotPaths:Z5(`columns`),args:[J5,{name:`columnId`,kind:{type:`entityId`,entity:`column`,parentArg:`indexId`},required:!0}],toActions:({indexId:e,columnId:t})=>[dme(e,t)]},{name:`erd_remove_index_column`,kind:`generator`,actionTypes:[`indexColumn.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:Z5(`columns`),args:[J5,X5],toActions:({indexId:e,indexColumnId:t})=>[fme(e,t)]},{name:`erd_move_index_column`,kind:`generator`,actionTypes:[`indexColumn.move`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:Z5(`columns`),args:[J5,X5,Y5(`targetIndexColumnId`)],refine:({indexColumnId:e,targetIndexColumnId:t})=>e===t?`targetIndexColumnId must name a different index column than indexColumnId`:void 0,toActions:({indexColumnId:e,targetIndexColumnId:t})=>[G3.moveIndexColumnAction$(e,t)]},{name:`erd_set_index_column_order`,kind:`atom`,atomReason:`changeIndexColumnOrderTypeAction$ flips the order the state holds, so a repeated call undoes itself. The tool sets the order outright.`,actionTypes:[`indexColumn.changeOrderType`],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},snapshotPaths:Z5(`columns[indexColumnId].orderType`),args:[J5,X5,{name:`orderType`,kind:{type:`enum`,values:PG},required:!0}],toActions:({indexColumnId:e,orderType:t})=>[pme(e,t)]}],e7={name:`memoId`,kind:{type:`entityId`,entity:`memo`},required:!0},t7=e=>({name:e,kind:{type:`number`},required:!0}),n7=(...e)=>e.map(e=>`memos[memoId].${e}`),r7=(e,t)=>k5(e).collection(`memoEntities`).selectById(t),hme=(e,t)=>function*({collections:n}){yield dQ.changeMemoColorAction({id:e,color:t,prevColor:r7(n,e)?.ui.color??``})},gme=(e,t,n)=>function*({collections:r}){let i=r7(r,e);i&&(yield dQ.resizeMemoAction({id:e,x:i.ui.x,y:i.ui.y,width:t,height:n}))},_me=[{name:`erd_add_memo`,kind:`generator`,actionTypes:[`memo.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`memos`],args:[],toActions:()=>[h1.addMemoAction$()]},{name:`erd_remove_memo`,kind:`generator`,actionTypes:[`memo.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`memos`],args:[e7],toActions:({memoId:e})=>[h1.removeMemoAction$(e)]},{name:`erd_change_memo_value`,kind:`atom`,atomReason:`The memo module has no generator that edits a memo text; the memo text area dispatches this atom itself.`,actionTypes:[`memo.changeValue`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:n7(`value`),args:[e7,{name:`value`,kind:{type:`string`},required:!0}],toActions:({memoId:e,value:t})=>[dQ.changeMemoValueAction({id:e,value:t})]},{name:`erd_change_memo_color`,kind:`atom`,atomReason:`No generator colors one named memo: changeColorAllAction$ colors the selection. The tool reads the previous color from the state as that generator does.`,actionTypes:[`memo.changeColor`],undoable:!0,stream:!0,expectedBatches:1,expectedHistory:1,snapshotPaths:n7(`color`),args:[e7,{name:`color`,kind:{type:`string`},required:!0}],toActions:({memoId:e,color:t})=>[hme(e,t)]},{name:`erd_move_memo`,kind:`atom`,atomReason:`No generator places one memo at a point: moveAllAction$ drags the selection by a relative step.`,actionTypes:[`memo.moveTo`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:n7(`x`,`y`),args:[e7,t7(`x`),t7(`y`)],toActions:({memoId:e,x:t,y:n})=>[dQ.moveToMemoAction({id:e,x:t,y:n})]},{name:`erd_resize_memo`,kind:`atom`,atomReason:`The memo module has no generator that resizes a memo; the resize handles stream this atom themselves.`,actionTypes:[`memo.resize`],undoable:!1,undoableReason:`memo/history.ts turns a resize into an undo entry only from two or more resize actions of one memo in one stream group, and a call sends one.`,stream:!0,expectedBatches:1,expectedHistory:0,snapshotPaths:n7(`width`,`height`),args:[e7,t7(`width`),t7(`height`)],refine:({width:e,height:t})=>e<116||t<100?`width must be at least 116 and height at least 100`:void 0,toActions:({memoId:e,width:t,height:n})=>[gme(e,t,n)]}],i7={name:`relationshipId`,kind:{type:`entityId`,entity:`relationship`},required:!0},a7={name:`relationshipType`,kind:{type:`enum`,values:AG},required:!0},o7=e=>({name:e,kind:{type:`entityId`,entity:`table`},required:!0}),s7=(e,t)=>({name:e,kind:{type:`entityIdList`,entity:`column`,parentArg:t},required:!0}),vme=({startTableId:e,startColumnIds:t,endTableId:n,endColumnIds:r,relationshipType:i})=>function*(){yield jQ.addRelationshipAction({id:xI(),relationshipType:i,start:{tableId:e,columnIds:t},end:{tableId:n,columnIds:r}})},yme=[{name:`erd_add_relationship`,kind:`generator`,actionTypes:[`column.add`,`column.changePrimaryKey`,`column.changeNotNull`,`column.changeName`,`column.changeDataType`,`column.changeDefault`,`column.changeComment`,`relationship.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`relationships`,`tables[startTableId].columns`,`tables[endTableId].columns`],args:[o7(`startTableId`),o7(`endTableId`),a7],toActions:({startTableId:e,endTableId:t,relationshipType:n})=>[K3.addRelationshipAction$(e,t,n)]},{name:`erd_link_columns`,kind:`atom`,atomReason:`addRelationshipAction$ always copies the start keys into new columns of the end table, and selectTableAction$ does the same while a relationship is drawn. This tool relates columns that already exist, so it adds the relationship with this atom.`,actionTypes:[`relationship.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`relationships`],args:[o7(`startTableId`),s7(`startColumnIds`,`startTableId`),o7(`endTableId`),s7(`endColumnIds`,`endTableId`),a7],refine:({startColumnIds:e,endColumnIds:t})=>e.length===t.length?void 0:`startColumnIds and endColumnIds must pair up, one end column for each start column`,toActions:e=>[vme(e)]},{name:`erd_remove_relationship`,kind:`atom`,atomReason:`No generator removes one named relationship: removeTableAction$ and removeColumnAction$ drop only the relationships of what they remove. The context menu dispatches this atom itself.`,actionTypes:[`relationship.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`relationships`],args:[i7],toActions:({relationshipId:e})=>[jQ.removeRelationshipAction({id:e})]},{name:`erd_change_relationship_type`,kind:`atom`,atomReason:`The relationship module has no generator that changes a type; the context menu dispatches this atom itself.`,actionTypes:[`relationship.changeType`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`relationships[relationshipId].relationshipType`],args:[i7,a7],toActions:({relationshipId:e,relationshipType:t})=>[jQ.changeRelationshipTypeAction({id:e,value:t})]}],c7=200,l7=`The settings module has no generator for this setting: changeZoomLevelAction$ and streamZoomLevelAction$ only zoom the canvas. The settings panel and menus dispatch this atom themselves.`,bme=`settings/history.ts makes undo entries only for changeShow and the viewport, so the engine keeps none for this setting.`,u7=e=>({type:`enum`,values:e}),d7=(e,t)=>({name:e,kind:t,required:!0}),f7=({name:e,actionType:t,field:n,args:r,refine:i,toAction:a})=>({name:e,kind:`atom`,atomReason:l7,actionTypes:[t],undoable:!1,undoableReason:bme,stream:!1,expectedBatches:1,expectedHistory:0,snapshotPaths:[`settings.${n}`],args:r,refine:i,toActions:e=>[a(e)]}),p7=(e,t,n,r,i)=>f7({name:e,actionType:t,field:n,args:[d7(`value`,r)],toAction:({value:e})=>i({value:e})}),xme=(e,t)=>function*({settings:n}){Q(n.show,e)!==t&&(yield $J.changeShowAction({show:e,value:t}))},Sme=[p7(`erd_set_database_name`,`settings.changeDatabaseName`,`databaseName`,{type:`string`},$J.changeDatabaseNameAction),p7(`erd_set_database`,`settings.changeDatabase`,`database`,u7(X),$J.changeDatabaseAction),p7(`erd_set_language`,`settings.changeLanguage`,`language`,u7(wG),$J.changeLanguageAction),p7(`erd_set_table_name_case`,`settings.changeTableNameCase`,`tableNameCase`,u7(EG),$J.changeTableNameCaseAction),p7(`erd_set_column_name_case`,`settings.changeColumnNameCase`,`columnNameCase`,u7(EG),$J.changeColumnNameCaseAction),p7(`erd_set_bracket_type`,`settings.changeBracketType`,`bracketType`,u7(OG),$J.changeBracketTypeAction),p7(`erd_set_relationship_data_type_sync`,`settings.changeRelationshipDataTypeSync`,`relationshipDataTypeSync`,{type:`boolean`},$J.changeRelationshipDataTypeSyncAction),p7(`erd_set_relationship_optimization`,`settings.changeRelationshipOptimization`,`relationshipOptimization`,{type:`boolean`},$J.changeRelationshipOptimizationAction),f7({name:`erd_set_column_order`,actionType:`settings.changeColumnOrder`,field:`columnOrder`,args:[d7(`columnType`,u7(xG)),d7(`targetColumnType`,u7(xG))],refine:({columnType:e,targetColumnType:t})=>e===t?`targetColumnType must name a different column part than columnType`:void 0,toAction:({columnType:e,targetColumnType:t})=>$J.changeColumnOrderAction({value:e,target:t})}),f7({name:`erd_set_max_width_comment`,actionType:`settings.changeMaxWidthComment`,field:`maxWidthComment`,args:[d7(`value`,{type:`integer`})],refine:({value:e})=>e===-1||60<=e&&e<=c7?void 0:`value must be -1 for no limit, or from 60 to ${c7}`,toAction:({value:e})=>$J.changeMaxWidthCommentAction({value:e})}),f7({name:`erd_set_ignore_save_settings`,actionType:`settings.changeIgnoreSaveSettings`,field:`ignoreSaveSettings`,args:[d7(`saveSettingType`,u7(FG)),d7(`value`,{type:`boolean`})],toAction:({saveSettingType:e,value:t})=>$J.changeIgnoreSaveSettingsAction({saveSettingType:e,value:t})}),{name:`erd_set_show`,kind:`atom`,atomReason:l7,actionTypes:[`settings.changeShow`],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},snapshotPaths:[`settings.show`],args:[d7(`show`,u7(bG)),d7(`value`,{type:`boolean`})],toActions:({show:e,value:t})=>[xme(e,t)]}],m7={name:`tableId`,kind:{type:`entityId`,entity:`table`},required:!0},h7={name:`value`,kind:{type:`string`},required:!0},g7={kind:`table`,tableArg:`tableId`,focusType:MK.tableName},Cme=(e,t)=>function*({collections:n}){let r=k5(n).collection(`tableEntities`).selectById(e);yield d$.changeTableColorAction({id:e,color:t,prevColor:r?.ui.color??``})},wme=[{name:`erd_add_table`,kind:`generator`,actionTypes:[`table.add`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`tables`],args:[],toActions:()=>[w1.addTableAction$()]},{name:`erd_remove_table`,kind:`generator`,actionTypes:[`table.remove`,`relationship.remove`,`index.remove`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`tables`],args:[m7],toActions:({tableId:e})=>[w1.removeTableAction$(e)]},{name:`erd_change_table_name`,kind:`atom`,atomReason:`The table module has no generator that renames a table; the name cell dispatches this atom itself.`,actionTypes:[`table.changeName`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:g7,snapshotPaths:[`tables[tableId].name`],args:[m7,h7],toActions:({tableId:e,value:t})=>[d$.changeTableNameAction({id:e,value:t})]},{name:`erd_change_table_comment`,kind:`atom`,atomReason:`The table module has no generator that edits a comment; the comment cell dispatches this atom itself.`,actionTypes:[`table.changeComment`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:{...g7,focusType:MK.tableComment},snapshotPaths:[`tables[tableId].comment`],args:[m7,h7],toActions:({tableId:e,value:t})=>[d$.changeTableCommentAction({id:e,value:t})]},{name:`erd_change_table_color`,kind:`atom`,atomReason:`No generator colors one named table: changeColorAllAction$ colors the selection. The tool reads the previous color from the state as that generator does.`,actionTypes:[`table.changeColor`],undoable:!0,stream:!0,expectedBatches:1,expectedHistory:1,focus:g7,snapshotPaths:[`tables[tableId].color`],args:[m7,{name:`color`,kind:{type:`string`},required:!0}],toActions:({tableId:e,color:t})=>[Cme(e,t)]},{name:`erd_move_table`,kind:`atom`,atomReason:`No generator places one named table at a point: moveAllAction$ drags the selection by a relative step, and sortTablesToMoveAction$ places every table where the sort puts it.`,actionTypes:[`table.moveTo`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,focus:g7,snapshotPaths:[`tables[tableId].x`,`tables[tableId].y`],args:[m7,{name:`x`,kind:{type:`number`},required:!0},{name:`y`,kind:{type:`number`},required:!0}],toActions:({tableId:e,x:t,y:n})=>[d$.moveToTableAction({id:e,x:t,y:n})]},{name:`erd_move_tables`,kind:`atom`,atomReason:`No generator places named tables at given points: moveAllAction$ drags the selection by one relative step, and sortTablesToMoveAction$ places every table where the sort puts it. One dispatch of the moves is one batch and one undo entry, as the sort is.`,actionTypes:[`table.moveTo`],undoable:!0,stream:!1,expectedBatches:1,expectedHistory:1,snapshotPaths:[`tables`],args:[{name:`positions`,kind:{type:`tablePositions`},required:!0}],toActions:({positions:e})=>e.map(({tableId:e,x:t,y:n})=>d$.moveToTableAction({id:e,x:t,y:n}))},{name:`erd_sort_tables`,kind:`generator`,actionTypes:[`table.moveTo`],undoable:!0,stream:!1,expectedBatches:{min:0,max:1},expectedHistory:{min:0,max:1},snapshotPaths:[`tables`],args:[],toActions:()=>[w1.sortTablesToMoveAction$()]}],_7=Object.freeze([...wme,...ome,...yme,...mme,..._me,...Sme,...cme]),v7=new Map(_7.map(e=>[e.name,e])),y7={table:`table`,column:`column`,relationship:`relationship`,index:`index`,indexColumn:`index column`,memo:`memo`},b7=e=>e===null?`null`:Array.isArray(e)?`an array`:typeof e,x7=({doc:e,collections:t},n)=>e.tableIds.includes(n)?t.tableEntities[n]:void 0,S7=({doc:e,collections:t},n)=>e.indexIds.includes(n)?t.indexEntities[n]:void 0;function C7(e,t,n,r){let{doc:i}=e;switch(t){case`table`:return i.tableIds.includes(n);case`relationship`:return i.relationshipIds.includes(n);case`index`:return i.indexIds.includes(n);case`memo`:return i.memoIds.includes(n);case`column`:{if(!r)return i.tableIds.some(t=>x7(e,t)?.columnIds.includes(n));let t=r.entity===`index`?S7(e,r.id)?.tableId:r.id;return!!(t&&x7(e,t)?.columnIds.includes(n))}case`indexColumn`:return r===void 0?i.indexIds.some(t=>S7(e,t)?.indexColumnIds.includes(n)):!!S7(e,r.id)?.indexColumnIds.includes(n)}}function w7(e,t){return new z8(R8.invalidArgs,e.name,t)}function Tme(e,t,n){let{kind:r,name:i}=t;switch(r.type){case`string`:if(typeof n!=`string`)throw w7(e,`${i} must be a string, got ${b7(n)}`);return n;case`number`:if(typeof n!=`number`||!Number.isFinite(n))throw w7(e,`${i} must be a finite number`);return n;case`integer`:if(!Number.isInteger(n))throw w7(e,`${i} must be an integer`);return n;case`boolean`:if(typeof n!=`boolean`)throw w7(e,`${i} must be true or false`);return n;case`enum`:{let t=Object.keys(r.values);if(typeof n!=`string`||!t.includes(n))throw w7(e,`${i} must be one of ${t.join(`, `)}`);return r.values[n]}case`entityId`:if(typeof n!=`string`||!n)throw w7(e,`${i} must be a ${y7[r.entity]} id`);return n;case`entityIdList`:if(!Array.isArray(n)||!n.length||n.some(e=>typeof e!=`string`||!e))throw w7(e,`${i} must be a non-empty list of ${y7[r.entity]} ids`);return[...new Set(n)];case`tablePositions`:return Eme(e,i,n)}}var T7=[`tableId`,`x`,`y`];function Eme(e,t,n){if(!Array.isArray(n)||!n.length)throw w7(e,`${t} must be a non-empty list of { tableId, x, y } entries`);let r=new Set;return n.map((n,i)=>{let a=`${t}[${i}]`;if(!AF(n))throw w7(e,`${a} must be an object, got ${b7(n)}`);let o=n,s=Object.keys(o).filter(e=>!T7.includes(e));if(s.length)throw w7(e,`${a} has unexpected key ${s.join(`, `)}; accepted: ${T7.join(`, `)}`);let{tableId:c,x:l,y:u}=o;if(typeof c!=`string`||!c)throw w7(e,`${a}.tableId must be a table id`);for(let[t,n]of[[`x`,l],[`y`,u]])if(typeof n!=`number`||!Number.isFinite(n))throw w7(e,`${a}.${t} must be a finite number`);if(r.has(c))throw w7(e,`${a}.tableId ${c} is listed twice`);return r.add(c),Object.freeze({tableId:c,x:l,y:u})})}function Dme(e,t,n,r,i){let{kind:a,name:o}=t;if(a.type===`tablePositions`){n.forEach(({tableId:t},n)=>{if(!C7(i,`table`,t))throw new z8(R8.notFound,e.name,`${o}[${n}].tableId ${t} names no live table; read the document for current ids`)});return}if(a.type!==`entityId`&&a.type!==`entityIdList`)return;let s=a.parentArg?e.args.find(({name:e})=>e===a.parentArg):void 0,c=s?.kind.type===`entityId`?{entity:s.kind.entity,id:r[s.name]}:void 0,l=a.type===`entityId`?[n]:n,u=y7[a.entity];for(let t of l){if(C7(i,a.entity,t,c))continue;let n=c?c.entity===`index`&&a.entity===`column`?` in the table of ${a.parentArg} ${c.id}`:` in ${a.parentArg} ${c.id}`:``;throw new z8(R8.notFound,e.name,`${o} ${t} names no live ${u}${n}; read the document for current ids`)}}function Ome(e,t,n){let r=t??{};if(!AF(r))throw w7(e,`arguments must be an object, got ${b7(t)}`);let i=r,a=e.args.map(({name:e})=>e),o=Object.keys(i).filter(e=>!a.includes(e));if(o.length){let t=a.length?a.join(`, `):`none`;throw w7(e,`unexpected argument ${o.join(`, `)}; accepted: ${t}`)}let s={};for(let t of e.args){let n=i[t.name];if(n===void 0){if(t.required)throw w7(e,`${t.name} is required`);continue}s[t.name]=Tme(e,t,n)}let c=[...e.args].sort((e,t)=>Number(E7(e))-Number(E7(t)));for(let t of c)t.name in s&&Dme(e,t,s[t.name],s,n);let l=e.refine?.(s);if(l)throw w7(e,l);return Object.freeze(s)}var E7=({kind:e})=>(e.type===`entityId`||e.type===`entityIdList`)&&!!e.parentArg,D7=(e,t)=>typeof t==`number`?e===t:t.min<=e&&e<=t.max,O7=e=>typeof e==`number`?String(e):`${e.min}..${e.max}`;function kme(e,t){let{focus:n}=e;if(!n)return;let r=t[n.tableArg],{focusType:i}=n;return n.kind===`column`&&n.columnArg?{tableId:r,columnId:t[n.columnArg],focusType:i}:{tableId:r,focusType:i}}function k7(e,t,n){if(e.isDestroyed)throw new k8(O8.destroyed,t);let r=v7.get(t);if(!r)throw new z8(R8.unknownTool,t,`no tool is named ${t}`);if(e.isReadonly)throw new k8(O8.readonly,t);let i=Ome(r,n,e.state),a=e.dispatch(r.toActions(i),{label:t,focus:kme(r,i)}),o={tool:t,actions:a.actions,createdIds:a.createdIds,batches:a.batches,historyEntries:a.historyEntries};return(!D7(o.batches,r.expectedBatches)||!D7(o.historyEntries,r.expectedHistory))&&(o.mismatch={expectedBatches:O7(r.expectedBatches),expectedHistory:O7(r.expectedHistory)}),o}var A7=`erd_batch`,j7=/^[A-Za-z_][A-Za-z0-9_]*$/,Ame=/^\$([A-Za-z_][A-Za-z0-9_]*)(?:\.(\d+|last))?$/,M7=class extends Error{constructor(e){super(`erd_batch stopped part way on the document after its rehearsal passed, so nothing of it was kept: ${e instanceof Error?e.message:String(e)}`,{cause:e}),this.name=`BatchInterrupted`}},N7=e=>new z8(R8.invalidArgs,A7,e);function jme(e){if(!Array.isArray(e)||!e.length)throw N7(`operations must be a non-empty list`);if(e.length>100)throw N7(`operations holds ${e.length} entries; one call takes at most 100`);let t=new Set;return e.map((e,n)=>{let r=`operations[${n}]`;if(!AF(e))throw N7(`${r} must be an object`);let{tool:i,as:a,args:o={}}=e,s=typeof i==`string`?v7.get(i):void 0;if(!s)throw N7(`${r}.tool ${String(i)} is no edit tool; a batch runs the erd_ edit tools only`);if(a!==void 0){if(typeof a!=`string`||!j7.test(a))throw N7(`${r}.as must be a name of letters, digits and underscores`);if(t.has(a))throw N7(`${r}.as ${a} is used twice`);t.add(a)}if(!AF(o))throw N7(`${r}.args must be an object`);return{tool:s,as:a,args:o}})}function Mme({tool:e,args:t},n,r){let i=(t,i)=>{let a=typeof t==`string`?Ame.exec(t):void 0;if(!a)return t;let[,o,s=`0`]=a,c=n.get(o),l=`operations[${r}] ${e.name}: ${i} ${t}`;if(!c)throw N7(`${l} names no earlier operation; name it with as`);let u=c[s===`last`?c.length-1:Number(s)];if(u===void 0)throw N7(`${l} asks for id ${s}, but ${o} created ${c.length}`);return u},a={...t};for(let{name:t,kind:n}of e.args){let e=a[t];n.type===`entityId`?a[t]=i(e,t):n.type===`entityIdList`&&Array.isArray(e)?a[t]=e.map(e=>i(e,t)):n.type===`tablePositions`&&Array.isArray(e)&&(a[t]=e.map(e=>AF(e)?{...e,tableId:i(e.tableId,`${t}.tableId`)}:e))}return a}function Nme(e,t,n){return!(e instanceof z8)||e.tool===`erd_batch`?e:new z8(e.code,A7,`operations[${t}] ${n}: ${e.message}`)}function P7(e,t){let n=new Map,r={tool:A7,actions:[],createdIds:[],steps:[],batches:0,historyEntries:0,withoutUndo:[]};return t.forEach((t,i)=>{let{tool:a,as:o}=t,s;try{s=k7(e,a.name,Mme(t,n,i))}catch(e){throw Nme(e,i,a.name)}o&&n.set(o,s.createdIds),r.actions.push(...s.actions),r.createdIds.push(...s.createdIds),r.batches+=s.batches,r.historyEntries+=s.historyEntries,a.undoable||r.withoutUndo.push(i),r.steps.push({tool:a.name,...o?{as:o}:{},createdIds:s.createdIds,...s.mismatch?{mismatch:s.mismatch}:{}})}),r}function F7(e,t){if(e.isDestroyed)throw new k8(O8.destroyed,A7);if(e.isReadonly)throw new k8(O8.readonly,A7);let n=jme(t),r=j8({nickname:A7,presence:!1});try{r.setInitialValue(e.value),P7(r,n)}finally{r.destroy()}try{return e.group(A7,()=>P7(e,n))}catch(e){throw new M7(e)}}var I7=`No editor holds this document, so every edit was already written to the file; there is nothing to save.`,Pme=`The file changed on disk since the last call, so it was loaded again; edits made before that can no longer be undone.`,L7=(e,t)=>e.size===t.size&&e.mtimeMs===t.mtimeMs,Fme=(e,t)=>e.writeFileString(t,N8(),{flag:`wx`}).pipe(Hf(e=>uP(e,`AlreadyExists`)?D:k(uP(e,`NotFound`)?new lP(`notFound`,`The folder of ${t} does not exist`):e))),Ime=Up(`openHeadlessSession`)(function*({path:e,nickname:t,create:n=!1}){let r=yield*dT,{stat:i}=yield*WP,a=yield*mT,{randomId:o}=yield*hP;n&&(yield*Fme(r,e));let s=j8({nickname:t,presence:!1}),c=e=>Mf({try:e,catch:e=>e}),l={size:-1,mtimeMs:-1,mode:0},u=0,d=O(function*(){let t=yield*i(e).pipe(I8(e)),n=yield*L8(e).pipe(pp(dT,r));yield*c(()=>s.setInitialValue(n)),l=t,u=0});yield*d.pipe(bp(()=>E(()=>s.destroy())));let f=O(function*(){let t=yield*i(e).pipe(Rf);if(t._tag===`Some`&&L7(t.value,l))return[];let n=u>0;return yield*d,n?[Pme]:[]}),p=Zf(d),m=O(function*(){let t=a.join(a.dirname(e),`.${a.basename(e)}.${yield*o}.tmp`),n=Zf(r.remove(t));yield*O(function*(){yield*r.writeFileString(t,s.value,{mode:l.mode|128});let a=yield*i(t);if(!L7(yield*i(e),l))return yield*n,yield*p,yield*new lP(cP.conflict,`${e} changed on disk during this call, so the edit was not written; it was loaded again, call the tool again`);yield*r.rename(t,e),l=a}).pipe(Hf(e=>(e instanceof lP?D:n.pipe(Ff(p))).pipe(Ff(k(e)))))}),h=e=>O(function*(){let t=yield*f,n=yield*c(e);return n.entries&&(yield*m),{result:n,notes:t}}),g=e=>O(function*(){let t=yield*f,n=yield*c(e).pipe(Jf(e=>e instanceof M7?p:D));return n.actions.length&&(yield*m,n.historyEntries&&u++),{run:n,notes:t}});return{path:e,mode:`headless`,state:`ready`,runTool:(e,t)=>g(()=>k7(s,e,t)),runBatch:e=>g(()=>F7(s,e)),read:e=>O(function*(){let t=yield*f;return s.isDestroyed?yield*k(new k8(O8.destroyed,e.tool)):{text:yield*c(()=>e.render(s.state)),notes:t}}),save:T({saved:!0,notes:[I7]}),undo:h(()=>s.undo()),redo:h(()=>s.redo()),close:E(()=>s.destroy())}});function R7(){let e=0,t=0,n=new Set,r=new Map;return{take:()=>e++,turn:e=>Df(n=>e<=t?n(D):(r.set(e,()=>n(D)),E(()=>void r.delete(e)))),settle:e=>{if(!(e<t||n.has(e))){for(n.add(e);n.delete(t);)t++;for(let[e,n]of r)e>t||(r.delete(e),n())}},idle:()=>t===e}}var Lme=`The document was joined again from the editor, so edits made before this call can no longer be undone with erd_undo.`,Rme=`The editor had dropped this agent from the document, so it was opened and joined again and the call ran once more.`,zme=`The editor on this document was closed after this agent's last edit, so those edits are in the file only if they were saved before it closed; erd_list shows what it holds now.`,z7=e=>Mf({try:e,catch:e=>e}),Bme=Up(`makeLiveSession`)(function*(e){let t=yield*mP,{platform:n}=yield*hP,{path:r,nickname:i}=e,a=yield*Ju(),o=j8({nickname:i,presence:!0}),s=yield*dh(),c=e.candidate,l=null,u=`reconnecting`,d=`none`,f=!1,p=0,m=!1,h=!1,g=!1,_=null,v=Lu();Wu(v,Au);let y=e=>{u=e,d=`none`},b=e=>{nP(e.params.path,r,n)&&(e.method===`actions`?o.receive(e.params.actions):(p>0&&(m=!0),y(`reconnecting`)))},ee=(e,t)=>t?E(()=>void t.push(e)):Kp(`a batch for ${r} did not reach the editor`,e),te=({client:e,actions:t,errors:n,sent:i})=>e.request(`applyActions`,{path:r,actions:t}).pipe(Hf(e=>ee(e,n)),yp(Bu(i,Au)));yield*Th(s).pipe(A(te),Op,Lp(a));let x=null,S=e=>{if(x){x.push(e);return}let t=l,n=_;if(d!==`registered`||!t)return;let r=Lu();v=r,ph(s,{client:t,actions:e,errors:n,sent:r})},ne=Ef(()=>zu(v)),re=Ef(()=>l?l.drained:D),ie=O(function*(){if(l&&!l.closed&&l.pid===c.pid)return l;let n=l;l=null,y(`reconnecting`),n&&(yield*n.close);let r=null;return r=yield*t.connect(c,{client:e.client,onNotification:b,onClose:()=>{l===r&&(l=null,y(`reconnecting`))}}).pipe(Xu(a)),l=r,r}),ae=(e,t,n)=>e.requestThen(`join`,{path:r},e=>O(function*(){yield*F8(r,M8(e.initialValue)),f&&p>0&&t.push(Lme),yield*z7(()=>{o.setInitialValue(e.initialValue),o.mergeClock(e.snapshotVersion),o.setReadonly(e.readonly)}),f=!0,p=0,m=!1,d=n?`registered`:`seeded`,u=`ready`,n&&!h&&(h=!0,yield*z7(()=>o.subscribe(S)))})),oe=(e,t)=>O(function*(){let n=yield*ie,i=yield*n.request(`openDocument`,t===void 0?{path:r}:{path:r,create:!0,initialValue:t});return(i.opened||d!==`registered`||u!==`ready`)&&(yield*ae(n,e,!0)),i}),se=e=>O(function*(){let t=yield*ie;(d!==`registered`||u!==`ready`)&&(yield*ae(t,e,!1))}),ce=e=>Ef(()=>{let t=[];return re.pipe(Ff(Ef(()=>(_=t,z7(e)))),If(()=>Nf.pipe(Ff(ne),Ff(re))),j(e=>({value:e,errors:t})),yp(E(()=>{_=null})))}),le=Ef(()=>g?k(new lP(`notOpen`,`The session on ${r} was closed; call the tool again`)):T(m?[zme]:[])),ue=e=>ce(e).pipe(j(({value:e,errors:t})=>({run:e,error:t[0]}))),de=e=>O(function*(){let t=yield*le;yield*oe(t);let{run:n,error:r}=yield*ue(e);return Foe(r,zN.notOpen)&&(y(`reconnecting`),t.push(Rme),yield*oe(t),{run:n,error:r}=yield*ue(e)),r?(y(`reconnecting`),yield*k(r)):(n.historyEntries&&p++,{run:n,notes:t})}),fe=e=>()=>{x=[];try{let t=e(),n=x;return x=null,n.length&&S(n.flat()),t}catch(e){throw(x?.length||e instanceof M7)&&y(`reconnecting`),e}finally{x=null}},pe=(e,t)=>de(()=>k7(o,e,t)),me=e=>O(function*(){let t=yield*le;yield*oe(t);let{value:n,errors:r}=yield*ce(e);return r.length?(y(`reconnecting`),yield*k(r[0])):{result:n,notes:t}});return{path:r,mode:`live`,get state(){return u},get pid(){return c.pid},get connected(){return l!==null&&!l.closed},setCandidate:e=>{c=e},open:e=>O(function*(){let t=yield*le,{opened:n}=yield*oe(t,e);return{opened:n,notes:t}}),runTool:pe,runBatch:e=>de(fe(()=>F7(o,e))),read:e=>O(function*(){let t=yield*le;return yield*se(t),{text:yield*z7(()=>e.render(o.state)),notes:t}}),save:O(function*(){let e=yield*le,t=yield*ie;yield*ne;let{saved:n}=yield*t.request(`save`,{path:r});return n?{saved:n,notes:e}:yield*new lP(`notSaved`,`The editor did not save ${r}: it could not confirm that every edit reached it, or VS Code kept the tab unsaved (for example because the file changed on disk). Check the editor, then call erd_save again.`)}),undo:me(()=>o.undo()),redo:me(()=>o.redo()),leave:O(function*(){l&&d!==`none`&&(yield*l.request(`leave`,{path:r})),y(`detached`)}),close:O(function*(){if(g)return;g=!0;let e=l;l=null,y(`detached`),e&&(yield*e.close),yield*td(a,Au),yield*Sf(yield*Sh(s),te,{discard:!0}),o.destroy()})}}),Vme=6e4,Hme=`The VS Code window that served this document has exited, so this call edited the file on disk instead; edits made through that window can no longer be undone.`,Ume=`A VS Code window now serves this document, so this call read it from the editor; edits made on disk earlier stay but can no longer be undone.`,Wme=`Read from the file on disk: the VS Code window holding this document cannot be reached, so edits not yet saved in its editor are missing.`,B7=class extends jr()(`@dineug/erd-editor-mcp/SessionManager`){},V7=si(`@dineug/erd-editor-mcp/Arrival`,{defaultValue:()=>void 0});function H7(e,t){return new lP(cP.blocked,`${e} belongs to a VS Code window (pid ${t.pid}) whose ERD Editor hub is turned off or failed to start, so edits are refused: the open editor would overwrite them. Trust the workspace and turn on the dineug.erd-editor.agentHub.enabled setting, or reload the window, then call again. Reading still works.`)}function Gme(e,t){return new lP(cP.hubAppeared,`A VS Code window (pid ${t}) now serves ${e}, so this edit was not written to the file under its editor. Call the tool again to edit through that window.`)}function Kme(e,t){return new lP(cP.hubGone,`The VS Code window (pid ${t}) that served ${e} still runs, but its lock file is gone and the connection closed, so nothing was written. Reload that window, or close it to edit the file directly.`)}var U7=e=>e?.mode===`live`,W7=e=>Gf(e,e=>k(e)),qme=Sd(B7,O(function*(){let e=yield*dT,t=yield*hP,n=yield*gP,r=yield*mP,i=yield*Nd(T),a=Jr(dT,e).pipe(Yr(WP,yield*WP),Yr(mT,yield*mT),Yr(hP,t),Yr(mP,r)),o=e=>up(e,a),s=()=>i.currentTimeMillisUnsafe(),c=new Map,l=R7(),u=new Map,d=new Set,f,p=()=>f||`agent`,m=e=>A(V7,t=>{if(t!==void 0)return e;let n=l.take();return e.pipe(pp(V7,n),yp(E(()=>l.settle(n))))}),h=j(V7,e=>{e!==void 0&&l.settle(e)}),g=(e,t)=>Ef(()=>{let n=u.get(e);n||(n=R7(),u.set(e,n));let r=n,i=r.take();return h.pipe(Ff(r.turn(i)),Ff(t),yp(E(()=>{r.settle(i),r.idle()&&u.delete(e)})))}),_=(e,t)=>(c.set(e,{session:t,lastUsed:s()}),t),v=t=>e.stat(t).pipe(Bf(!0),$f(()=>!1)),y=e=>Ef(()=>{let t=c.get(e);return c.delete(e),t?t.session.close:D}),b=(e,t,n)=>o(Bme({path:t,candidate:n,nickname:p(),client:p()})).pipe(j(t=>_(e,t))),ee=(e,t,n=!1)=>o(Ime({path:t,nickname:p(),create:n})).pipe(j(t=>_(e,t))),te=Up(`SessionManager.acquire`)(function*(e,n,r,i,a,o=!1){let s=c.get(e)?.session;if(i.kind===`blocked`)return r===`write`?yield*H7(n,i.candidate):null;if(i.kind===`live`){if(s&&!U7(s)){if(yield*y(e),r===`write`)return yield*Gme(n,i.candidate.pid);a.push(Ume)}else if(U7(s))return s.setCandidate(i.candidate),s;return yield*b(e,n,i.candidate)}if(U7(s)){if(s.connected)return s;if(t.isAlive(s.pid))return r===`write`?yield*Kme(n,s.pid):null;yield*y(e),a.push(Hme)}else if(s){if(!o||(yield*v(n)))return s;yield*y(e)}return yield*ee(e,n,o)}),x=Ef(()=>{let e=s(),t=Array.from(c).filter(([t,n])=>!d.has(t)&&e-n.lastUsed>=18e5);for(let[e]of t)c.delete(e);return Sf(t,([,{session:e}])=>e.close,{discard:!0}).pipe(Bf(t.map(([,{session:e}])=>e.path)))}),S=(e,n,r=!1)=>O(function*(){yield*x;let i=yield*o(ZP(e,r)),a=YP(i,t.platform);return yield*l.turn(yield*V7),yield*g(a,Ef(()=>(d.add(a),n(a,i))).pipe(yp(E(()=>{d.delete(a);let e=c.get(a);e&&(e.lastUsed=s())})),Tp))}).pipe(m,W7),ne=(e,t)=>S(e,(e,r)=>O(function*(){let i=[],a=yield*n.discover(r),o=yield*te(e,r,`write`,a,i),s=yield*t(o);return{...s,notes:[...i,...s.notes],mode:o.mode,path:r}})),re=Ef(()=>Sf(Array.from(c.keys()),y,{discard:!0}));return yield*vp(()=>re),yield*kp(x,mf(Vme)).pipe(Rp),B7.of({arrive:m,rememberClient:e=>E(()=>{f??=e}),listDocuments:O(function*(){yield*h,yield*x;let e=yield*o(XP(t.cwd)),i=yield*n.discover(e);if(i.kind===`live`){let{documents:e}=yield*r.connect(i.candidate,{client:p()}).pipe(A(e=>e.request(`listDocuments`,{})),hp);return{mode:`live`,documents:e,notes:[]}}let a=yield*o(Zfe(e));return i.kind===`blocked`?{mode:`blocked`,documents:a,notes:[H7(e,i.candidate).message]}:{mode:`headless`,documents:a,notes:[]}}).pipe(W7),openDocument:(e,t)=>S(e,(e,r)=>O(function*(){let i=[],a=yield*v(r),o=yield*n.discover(r),s=yield*te(e,r,`write`,o,i,t),c=!1;if(U7(s)){let e=yield*s.open(t?N8():void 0);c=e.opened,i.push(...e.notes)}let l=!a&&(yield*v(r));return{mode:s.mode,path:r,created:l,opened:c,notes:i}}),t),runTool:(e,t,n)=>ne(e,e=>e.runTool(t,n)),runBatch:(e,t)=>ne(e,e=>e.runBatch(t)),read:(e,t)=>S(e,(e,r)=>O(function*(){let i=[],a=yield*n.discover(r),s=yield*te(e,r,`read`,a,i);if(!s){let e=yield*o(Xfe(r,t));return i.push(Wme),{text:e,notes:i,mode:a.kind===`blocked`?`blocked`:`headless`,path:r}}let c=yield*s.read(t);return{text:c.text,notes:[...i,...c.notes],mode:s.mode,path:r}})),save:e=>ne(e,e=>e.save),undo:e=>ne(e,e=>e.undo),redo:e=>ne(e,e=>e.redo),sweep:x,closeAll:re,paths:E(()=>Array.from(c.values(),({session:e})=>e.path))})})),Jme=`@effect/rpc/`;function Yme(e){let{headers:t}=e;return t==null?!0:Array.isArray(t)?t.every(e=>Array.isArray(e)&&typeof e[0]==`string`):typeof t==`object`}function G7(e){if(typeof e!=`object`||!e||Array.isArray(e)||!Yme(e))return!1;if(!Object.hasOwn(e,`method`))return!0;let{method:t}=e;return typeof t==`string`&&!t.startsWith(Jme)}function Xme(e){let t;try{t=JSON.parse(e)}catch{return!1}return Array.isArray(t)?t.every(G7):G7(t)}function Zme(e,t){let n=t.split(`
66
+ `);return n[0]=e+n[0],[n.pop(),n]}var Qme=e=>Xme(e)?T(!0):Bf(e.trim()===``?D:Gp(`skipped a stdin line that is not a JSON-RPC message`,e.slice(0,80)),!1),$me=Sd(Q_,O(function*(){let e=yield*Q_;return $_({...e,stdin:e.stdin.pipe(U_(),B_(()=>``,Zme),R_(Qme),F_(e=>`${e}\n`),W_)})})),ehe=`Edits erd-editor ERD documents (.erd.json) one operation per tool. Find ids with erd_list, which also gives each table its position and size, and read columns and other details with erd_get; then pass the ids to the edit tools, several at once with erd_batch, such as a table with its columns. On a schema of hundreds or thousands of tables erd_list answers a page at a time: find the tables a task needs with its query or namesOnly, then read just those with erd_get or erd_read sql. Never write a document file yourself. When a VS Code window has the document, edits appear live in its ERD editor and stay unsaved until erd_save; otherwise they are written to the file at once.`,the=`Table id, from erd_list or the createdIds of erd_add_table.`,nhe=`Column id in that table, from erd_get or the createdIds of erd_add_column.`,rhe=`Index id, from erd_list or the createdIds of erd_add_index.`,ihe=`Index column id: an entry of the index columns list erd_get gives, not the table column id.`,ahe=`Left edge on the canvas, in pixels.`,ohe=`Top edge on the canvas, in pixels.`,she=`Cardinality at the child end: ZeroOne (0..1), ZeroN (0..N), OneOnly (exactly 1) or OneN (1..N).`,che=`CSS hex color such as #3b82f6.`,K7=`erd_undo cannot revert it: the editor keeps no undo entry for this setting.`,q7={tool:`An erd_ edit tool, such as erd_add_column.`,as:`A name for the ids this operation creates, which a later operation passes as $name, $name.1 or $name.last.`,args:`The tool arguments without path; where one takes an entity id, $name refers to an earlier operation.`},lhe={path:`Path of the ERD document (.erd.json, .erd, .vuerd), absolute or relative to the working directory.`,tableId:the,columnId:nhe,memoId:`Memo id, from erd_list or the createdIds of erd_add_memo.`,indexId:rhe,indexColumnId:ihe,relationshipId:`Relationship id, from erd_list or createdIds.`,relationshipType:she,color:che,x:ahe,y:ohe},J7=(e,t)=>({description:`Sets ${e}. ${K7}`,args:{value:t}}),Y7=e=>({description:`Sets whether the column is ${e}. Setting the value it already has changes nothing.`,args:{value:`True to make the column ${e}, false to clear it.`}}),X7=e=>({description:`Replaces the whole document with the schema parsed from ${e}. Everything in the document is discarded; erd_undo restores it.`,args:{value:`The ${e} source text.`}}),Z7={erd_list_documents:{description:`Lists ERD documents with path, open, active, dirty and readonly. With a VS Code window serving the working directory it lists that window; otherwise the ERD files under the working directory.`},erd_open_document:{description:`Opens a document for editing, in the VS Code ERD editor when a window serves it. With create it makes the file first if missing; a name with no extension gets .erd.json.`,args:{create:`True to create an empty document when the file does not exist.`}},erd_read:{description:`Reads a document as a snapshot, as DDL or as its raw JSON. The sql format with tableIds or tableNames gives the DDL of just those tables, the way to read a large schema; a read too large for one answer is refused with how to narrow it. For ids and details prefer erd_list and erd_get. Change a document only through the erd_ tools, never by writing its file.`,args:{format:`snapshot: compact JSON with every id and column, large on a big schema. sql: DDL of a vendor. json: the whole raw .erd.json document, larger still; never write this into the file.`,vendor:`Database for the sql format; defaults to the database the document is set to.`,tableIds:`For the sql format: the DDL of these tables only, with the foreign keys they hold, which name the tables they reference.`,tableNames:`For the sql format: tables by name, in any case, as tableIds takes them by id.`}},erd_list:{description:`Lists a document: its settings and counts, then a page of tables, each with its id, position and size on the ERD canvas (the width approximate, the height exact), with their indexes and relationships (each relationship once, with one of its tables), and after the tables the memos. A small schema fits in one page. On a larger one, nextOffset and note say how to go on: query finds tables by a word, namesOnly lists every table name in a call or a few. Columns, comments and memo text come from erd_get; the foreign keys a table holds, from erd_read sql with tableNames.`,args:{query:`Words to look for inside table names and comments and column names and comments, in any case; tables whose names hold more of the words come first.`,offset:`Where the page starts in the list, 0 by default; pass the nextOffset of the page before, with the same query.`,limit:`At most this many entries in the page, 100 by default and no limit with namesOnly; a page also stops where one answer is full.`,namesOnly:`True for the table names alone, as many as one answer holds; erd_get and erd_read take tableNames.`}},erd_get:{description:`Gives the entities named, in full: tables with their columns and size, relationships with their columns, indexes with their columns, memos with their text. Ids and names that name nothing live are listed in missing; ids one answer has no room for are listed in notReturned, to ask for again.`,args:{tableIds:`Table ids, from erd_list.`,tableNames:`Table names, in any case, from erd_list; a name gives every table so named.`,relationshipIds:`Relationship ids, from erd_list.`,indexIds:`Index ids, from erd_list.`,memoIds:`Memo ids, from erd_list.`}},erd_batch:{description:`Runs several edit tools in order as one edit, all or none: they are tried on a copy first, so a refusal names the operation and leaves the document as it was. One erd_undo reverts the whole batch. Name an operation with as, then pass $name for its first created id, $name.1 for its second or $name.last for its last, where a later operation takes an entity id.`,args:{operations:`The edit tool calls to run, at most 100, each { tool, as, args }.`}},erd_save:{description:`Saves a document the VS Code editor holds to disk. Edits stay unsaved in the editor until this is called. On disk, with no editor, edits are written at once and this does nothing.`},erd_undo:{description:`Reverts the last edit this agent made to the document, never the user’s edits. Calls that made no undo entry are skipped and named.`},erd_redo:{description:`Applies again the edit erd_undo last reverted.`},erd_add_table:{description:`Adds an empty table at a free spot and returns its id in createdIds. Name it with erd_change_table_name.`},erd_remove_table:{description:`Removes a table with its columns, indexes and every relationship that touches it.`},erd_change_table_name:{description:`Renames a table.`,args:{value:`The new table name.`}},erd_change_table_comment:{description:`Sets the comment of a table.`,args:{value:`The comment; an empty string clears it.`}},erd_change_table_color:{description:`Sets the color of a table.`},erd_move_table:{description:`Moves a table to an absolute canvas position.`},erd_move_tables:{description:`Moves several tables to absolute canvas positions in one edit, which one erd_undo reverts. Plan the layout from the positions and sizes erd_list gives.`,args:{positions:`One entry per table: its tableId from erd_list, with x and y, the left and top edges in pixels. Each table at most once.`}},erd_sort_tables:{description:`Arranges every table on the canvas automatically, as the editor sort command does.`},erd_add_column:{description:`Adds an empty column to a table and returns its id in createdIds. Set it with the erd_change_column_ and erd_set_column_ tools.`},erd_remove_columns:{description:`Removes columns from one table, with the relationships and index entries that use them.`,args:{columnIds:`Column ids in that table, from erd_get.`}},erd_change_column_data_type:{description:`Sets the data type of a column, such as INT or VARCHAR(255); foreign keys that copy it follow when relationship data type sync is on.`,args:{value:`The data type text.`}},erd_change_column_name:{description:`Renames a column.`,args:{value:`The new column name.`}},erd_change_column_default:{description:`Sets the default value of a column.`,args:{value:`The default as SQL text; an empty string clears it.`}},erd_change_column_comment:{description:`Sets the comment of a column.`,args:{value:`The comment; an empty string clears it.`}},erd_set_column_primary_key:Y7(`part of the primary key`),erd_set_column_unique:Y7(`unique`),erd_set_column_not_null:Y7(`NOT NULL`),erd_set_column_auto_increment:Y7(`auto increment`),erd_move_column:{description:`Moves a column within its table to the position of another column.`,args:{targetColumnId:`Column id in the same table whose position it takes.`}},erd_add_relationship:{description:`Relates two tables: copies the parent primary key into the child as foreign key columns, creating a primary key column first if the parent has none. createdIds holds, in order, that new parent key column if one was made, the foreign key columns, then the relationship id last.`,args:{startTableId:`Parent table id, the referenced side that holds the primary key.`,endTableId:`Child table id, which receives the foreign key columns.`}},erd_link_columns:{description:`Draws a relationship between columns that already exist, such as a foreign key imported from code. Pairs start and end columns by position.`,args:{startTableId:`Parent table id, the referenced side.`,startColumnIds:`Referenced column ids in the parent table.`,endTableId:`Child table id, the side holding the foreign key.`,endColumnIds:`Foreign key column ids in the child table, one per start column, in the same order.`}},erd_remove_relationship:{description:`Removes a relationship line; its foreign key columns stay in the table.`},erd_change_relationship_type:{description:`Changes the cardinality of a relationship.`},erd_add_index:{description:`Adds an empty index to a table and returns its id in createdIds; add columns with erd_add_index_column.`},erd_remove_index:{description:`Removes an index.`},erd_change_index_name:{description:`Renames an index.`,args:{value:`The new index name.`}},erd_set_index_unique:{description:`Sets whether an index is unique. Setting the value it already has changes nothing.`,args:{value:`True for a unique index.`}},erd_add_index_column:{description:`Adds a column of the index table to the index, returning the new index column id; a column already in the index is left alone.`,args:{columnId:`Column id in the table of the index.`}},erd_remove_index_column:{description:`Removes one column from an index.`},erd_move_index_column:{description:`Moves a column within an index to the position of another of its columns.`,args:{targetIndexColumnId:`Index column id in the same index whose position it takes.`}},erd_set_index_column_order:{description:`Sets the sort order of one column in an index. Setting the order it already has changes nothing.`,args:{orderType:`ASC or DESC.`}},erd_add_memo:{description:`Adds an empty memo note at a free spot and returns its id in createdIds.`},erd_remove_memo:{description:`Removes a memo.`},erd_change_memo_value:{description:`Replaces the text of a memo.`,args:{value:`The memo text.`}},erd_change_memo_color:{description:`Sets the color of a memo.`},erd_move_memo:{description:`Moves a memo to an absolute canvas position.`},erd_resize_memo:{description:`Resizes a memo. erd_undo cannot revert it: the editor keeps no undo entry for a single resize.`,args:{width:`Width in pixels, at least the editor minimum of about 116.`,height:`Height in pixels, at least 100.`}},erd_set_database_name:J7(`the database name of the document`,`The database name.`),erd_set_database:J7(`the database vendor, which picks the data types and the default DDL of erd_read sql`,`The database vendor.`),erd_set_language:J7(`the code generation language of the document`,`The language or framework.`),erd_set_table_name_case:J7(`the name case used when generating code for table names`,`The case style.`),erd_set_column_name_case:J7(`the name case used when generating code for column names`,`The case style.`),erd_set_bracket_type:J7(`how generated SQL quotes names`,`The quote style.`),erd_set_relationship_data_type_sync:J7(`whether foreign key columns follow the data type of the columns they reference`,`True to keep them in step.`),erd_set_relationship_optimization:J7(`the relationship optimization flag stored in the document`,`True to turn it on.`),erd_set_column_order:{description:`Sets the order of the column parts shown in a table row by moving one part to the place of another. ${K7}`,args:{columnType:`The column part to move.`,targetColumnType:`The column part whose place it takes.`}},erd_set_max_width_comment:J7(`the widest a comment is drawn in a table`,`Width in pixels, or -1 for no limit.`),erd_set_ignore_save_settings:{description:`Sets whether a viewport setting is left out of the saved file. ${K7}`,args:{saveSettingType:`scroll or zoomLevel.`,value:`True to leave it out of the file.`}},erd_set_show:{description:`Shows or hides one part of the diagram, such as column comments or relationship lines. Setting the value it already has changes nothing.`,args:{show:`The part of the diagram.`,value:`True to show it, false to hide it.`}},erd_import_sql:X7(`SQL DDL (CREATE TABLE statements)`),erd_import_graphql:X7(`a GraphQL SDL`),erd_import_dbml:X7(`DBML`),erd_import_aml:X7(`AML`),erd_import_json:{description:`Replaces the whole document with an erd-editor JSON document, such as another .erd.json file. erd_undo restores the previous one.`,args:{value:`The .erd.json document text; empty gives an empty document.`}}};function Q7(e){let t=Z7[e];if(!t)throw Error(`tools/copy.ts has no description for ${e}`);return t.description}function $7(e,t){let n=Z7[e]?.args?.[t]??lhe[t];if(!n)throw Error(`tools/copy.ts has no prose for ${t} of ${e}`);return n}var e9=`The call changed nothing, since the document already held that value, so erd_undo passes over it.`,t9=`The call made no undo entry, so erd_undo passes over it.`;function n9(e){let{notes:t,...n}=e;return Array.isArray(t)&&t.length?{...n,notes:t}:{...n}}function uhe(e,t){return new ND({content:[{type:`text`,text:e},...t.length?[{type:`text`,text:JSON.stringify({notes:t})}]:[]]})}function r9(e){return e instanceof z8||e instanceof k8||e instanceof lP}function dhe(e){return{error:{code:r9(e)?e.code:`internal`,message:dP(e)}}}function fhe(e){return new ND({isError:!0,content:[{type:`text`,text:JSON.stringify(e)}]})}function phe(e,t){let{run:n}=t;if(!n.historyEntries)return e.undoable?n.batches?t9:e9:`erd_undo cannot revert this call: the editor keeps no undo entry for it.`}function mhe(e,t){let{run:n,mode:r,notes:i}=t,a=phe(e,t);return n9({tool:n.tool,mode:r,createdIds:n.createdIds,batches:n.batches,historyEntries:n.historyEntries,...a?{undoable:!1,undoNote:a}:{},...n.mismatch?{mismatch:n.mismatch}:{},notes:i})}var i9=`historyEntries counts the editor history entries inside the batch, not erd_undo calls.`;function hhe({run:e}){return e.historyEntries?e.withoutUndo.length?`One erd_undo reverts this batch, except ${e.withoutUndo.map(t=>`operations[${t}] ${e.steps[t].tool}`).join(`, `)}: the editor keeps no undo entry for those. ${i9}`:`One erd_undo reverts this whole batch. ${i9}`:e.batches?t9:e9}function ghe(e){let{run:t,mode:n,notes:r}=e;return n9({tool:t.tool,mode:n,createdIds:t.createdIds,operations:t.steps,batches:t.batches,historyEntries:t.historyEntries,...t.historyEntries?{}:{undoable:!1},undoNote:hhe(e),notes:r})}function _he(e,t){let{result:n,mode:r,notes:i}=t,a=e===`erd_undo`?`undo`:`redo`;return n9({tool:e,mode:r,toolName:n.label,entries:n.entries,...n.skipped.length?{skipped:n.skipped}:{},notes:n.label?i:[...i,`Nothing to ${a}: this agent has no edit left to ${a} on this document.`]})}function vhe(e){switch(e.type){case`string`:return N;case`number`:return bw;case`integer`:return Dw;case`boolean`:return qC;case`enum`:return aw(Object.keys(e.values));case`entityId`:return N;case`entityIdList`:return F(N);case`tablePositions`:return F(P({tableId:N,x:bw,y:bw}));default:throw TypeError(`Unknown tool argument kind ${JSON.stringify(e)}`)}}function yhe(e,t){let n={};for(let r of e){let e=vhe(r.kind).annotate({description:t(r)});n[r.name]=r.required?e:PC(e)}return n}function a9(e,t,n){let{schema:r,definitions:i}=oT(t,{onExcessProperty:n?`error`:`ignore`});if(r.type!==`object`||Object.keys(i).length>0)throw TypeError(`${e} must take one inline object of arguments`);return EC(OD)(r)}Object.freeze([`erd_list_documents`,`erd_open_document`,`erd_read`,`erd_list`,`erd_get`,`erd_save`,`erd_undo`,`erd_redo`]);function o9(e){return e===`erd_batch`||e.startsWith(`erd_remove_`)||e.startsWith(`erd_import_`)}var s9=P({error:P({code:N,message:N})}),c9=aw([`live`,`headless`,`blocked`]),l9=PC(F(N)),bhe=P({mode:c9,documents:F(VN),notes:l9}),xhe=P({mode:c9,path:N,created:qC,opened:qC,notes:l9}),She=P({tool:RC(`erd_save`),mode:c9,saved:qC,notes:l9}),u9=P({tool:aw([`erd_undo`,`erd_redo`]),mode:c9,toolName:ow(N),entries:Dw,skipped:PC(F(N)),notes:l9}),d9=P({expectedBatches:N,expectedHistory:N}),Che=P({tool:N,mode:c9,createdIds:F(N),batches:Dw,historyEntries:Dw,undoable:PC(qC),undoNote:PC(N),mismatch:PC(d9),notes:l9}),whe=P({tool:RC(A7),mode:c9,createdIds:F(N),operations:F(P({tool:N,as:PC(N),createdIds:F(N),mismatch:PC(d9)})),batches:Dw,historyEntries:Dw,undoable:PC(qC),undoNote:N,notes:l9}),f9=e=>N.annotate({description:$7(e,`path`)}),p9=[pO],The=VT(`erd_list_documents`,{description:Q7(`erd_list_documents`),parameters:ZC(N,UC),success:bhe,failure:s9,dependencies:p9}).annotate(HT,!0),m9={erd_open_document:P({path:f9(`erd_open_document`),create:PC(qC.annotate({description:$7(`erd_open_document`,`create`)}))}),erd_save:P({path:f9(`erd_save`)}),erd_undo:P({path:f9(`erd_undo`)}),erd_redo:P({path:f9(`erd_redo`)})},h9=(e,t)=>bie(e,{description:Q7(e),parameters:a9(e,m9[e],!1),success:t,failure:s9}).addDependency(pO).annotate(UT,!1),g9=eE(The,h9(`erd_open_document`,xhe),h9(`erd_save`,She),h9(`erd_undo`,u9),h9(`erd_redo`,u9));function Ehe(e){if(e.args.some(({name:e})=>e===`path`))throw Error(`${e.name} has an argument named path, which every tool reserves`);return VT(e.name,{description:Q7(e.name),parameters:P({path:f9(e.name),...yhe(e.args,t=>$7(e.name,t.name))}),success:Che,failure:s9,dependencies:p9}).annotate(WT,!0).annotate(UT,o9(e.name))}var _9=eE(..._7.map(Ehe)),Dhe=P({tool:aw(_7.map(({name:e})=>e)).annotate({description:q7.tool}),as:PC(N.check(yw(j7)).annotate({description:q7.as})),args:PC(ZC(N,UC).annotate({description:q7.args}))}),v9=eE(VT(A7,{description:Q7(A7),parameters:P({path:f9(A7),operations:F(Dhe).check(Ow(1),kw(100)).annotate({description:$7(A7,`operations`)})}),success:whe,failure:s9,dependencies:p9}).annotate(WT,!0).annotate(UT,o9(A7))),y9=(e,t)=>O(function*(){let n=yield*pO;return yield*e.rememberClient(n.clientInfo?.name),yield*t}).pipe(Hf(e=>(r9(e)?D:Kp(`a tool call failed`,e)).pipe(Ff(k(dhe(e)))))),b9=e=>t=>wC(m9[e])(t).pipe(Kf(t=>new z8(R8.invalidArgs,e,`Invalid arguments for tool ${e}: ${t.message}`))),Ohe=b9(`erd_open_document`),x9={erd_save:b9(`erd_save`),erd_undo:b9(`erd_undo`),erd_redo:b9(`erd_redo`)},khe=Dd(g9.toLayer(O(function*(){let e=yield*B7,t=(t,n)=>y9(e,x9[t](n).pipe(A(({path:n})=>t===`erd_undo`?e.undo(n):e.redo(n)),j(e=>_he(t,e))));return{erd_list_documents:()=>y9(e,e.listDocuments.pipe(j(e=>n9({...e})))),erd_open_document:t=>y9(e,Ohe(t).pipe(A(({path:t,create:n})=>e.openDocument(t,n===!0)),j(e=>n9({...e})))),erd_save:t=>y9(e,x9.erd_save(t).pipe(A(({path:t})=>e.save(t)),j(({saved:e,mode:t,notes:n})=>n9({tool:`erd_save`,mode:t,saved:e,notes:n})))),erd_undo:e=>t(`erd_undo`,e),erd_redo:e=>t(`erd_redo`,e)}})),_9.toLayer(O(function*(){let e=yield*B7,t=t=>({path:n,...r})=>y9(e,e.runTool(String(n),t.name,r).pipe(j(e=>mhe(t,e))));return Object.fromEntries(_7.map(e=>[e.name,t(e)]))})),v9.toLayer(O(function*(){let e=yield*B7;return{erd_batch:({path:t,operations:n})=>y9(e,e.runBatch(t,n).pipe(j(e=>ghe(e))))}}))),S9=4e4,Ahe=e=>e.length<=S9,C9=(e,t)=>Object.keys(e).find(n=>e[n]===t)??String(t),w9=(e,t)=>Object.fromEntries(Object.entries(e).map(([e,n])=>[e,Q(t,Number(n))])),T9=e=>C9(AG,e);function E9(e){return{databaseName:e.databaseName,database:C9(X,e.database),canvasType:C9(vG,e.canvasType),language:C9(wG,e.language),tableNameCase:C9(EG,e.tableNameCase),columnNameCase:C9(EG,e.columnNameCase),bracketType:C9(OG,e.bracketType),relationshipDataTypeSync:e.relationshipDataTypeSync,relationshipOptimization:e.relationshipOptimization,columnOrder:e.columnOrder.map(e=>C9(xG,e)),show:w9(bG,e.show),maxWidthComment:e.maxWidthComment,ignoreSaveSettings:w9(FG,e.ignoreSaveSettings)}}function D9(e,{id:t,name:n,comment:r,columnIds:i,ui:a}){return{id:t,name:n,comment:r,color:a.color,x:a.x,y:a.y,zIndex:a.zIndex,columns:e.collection(`tableColumnEntities`).selectByIds(i).map(e=>({id:e.id,name:e.name,dataType:e.dataType,default:e.default,comment:e.comment,primaryKey:Q(e.options,Z.primaryKey),notNull:Q(e.options,Z.notNull),unique:Q(e.options,Z.unique),autoIncrement:Q(e.options,Z.autoIncrement)}))}}function O9({id:e,relationshipType:t,start:n,end:r}){return{id:e,relationshipType:T9(t),start:{tableId:n.tableId,columnIds:[...n.columnIds]},end:{tableId:r.tableId,columnIds:[...r.columnIds]}}}function k9(e,{id:t,tableId:n,name:r,unique:i,indexColumnIds:a}){return{id:t,tableId:n,name:r,unique:i,columns:e.collection(`indexColumnEntities`).selectByIds(a).map(({id:e,columnId:t,orderType:n})=>({id:e,columnId:t,orderType:C9(PG,n)}))}}function A9({id:e,value:t,ui:n}){return{id:e,value:t,color:n.color,x:n.x,y:n.y,width:n.width,height:n.height,zIndex:n.zIndex}}function jhe({settings:e,doc:t,collections:n}){let r=k5(n);return{settings:E9(e),tables:r.collection(`tableEntities`).selectByIds(t.tableIds).map(e=>D9(r,e)),relationships:r.collection(`relationshipEntities`).selectByIds(t.relationshipIds).map(O9),indexes:r.collection(`indexEntities`).selectByIds(t.indexIds).map(e=>k9(r,e)),memos:r.collection(`memoEntities`).selectByIds(t.memoIds).map(A9)}}var j9=(e,t)=>Hq(e,t,D8),Mhe=`erd_list`,Nhe=`erd_get`,M9=700,N9=e=>JSON.stringify(e).length+1;function Phe(e){let t=[...new Set(e.toLowerCase().split(/[\s,]+/).filter(Boolean))];if(!t.length)throw new z8(R8.invalidArgs,Mhe,`query holds no word to look for`);return t}function Fhe(e,t,n){let r=Phe(n),i=(e,t)=>e.toLowerCase().includes(t);return t.map((t,n)=>{let a=e.collection(`tableColumnEntities`).selectByIds(t.columnIds),o=0,s=0;for(let e of r)i(t.name,e)?(o++,s+=4):i(t.comment,e)?s+=2:a.some(({name:t,comment:n})=>i(t,e)||i(n,e))&&(s+=1);return{table:t,order:n,named:o,score:s}}).filter(({score:e})=>e>0).sort((e,t)=>t.named-e.named||t.score-e.score||e.order-t.order).map(({table:e})=>e)}function P9(e,t){let n=k5(e.collections),r=n.collection(`tableEntities`).selectByIds(e.doc.tableIds);return{select:n,tables:r,found:t===void 0?r:Fhe(n,r,t)}}var F9=`No table matches the query. Each word is looked for inside table and column names and comments, in any case; try other words`,Ihe=` query finds tables by a word in a table or column name or comment, and namesOnly lists table names alone.`,I9=(e,t)=>`${e} ${t}${e===1?``:t.endsWith(`x`)?`es`:`s`}`,L9=(e,t,n,r)=>`${e} ${t+1} to ${t+n} of ${r}`,R9=(e,t)=>`; for the next page pass offset ${e}${t?` with the same query`:``}.`,z9=({id:e,relationshipType:t,start:n,end:r})=>({id:e,relationshipType:T9(t),startTableId:n.tableId,endTableId:r.tableId}),B9=({id:e,tableId:t,name:n,unique:r})=>({id:e,tableId:t,name:n,unique:r}),Lhe=({id:e,ui:t})=>({id:e,x:t.x,y:t.y,width:t.width,height:t.height});function V9(e,t){let n=new Map;for(let r of e)for(let e of t(r)){let t=n.get(e);t?t.push(r):n.set(e,[r])}return n}function Rhe(e,t){let n=new Map(t.map(({id:e},t)=>[e,t])),r=new Map;for(let{start:t,end:n}of e)for(let e of new Set([t.tableId,n.tableId]))r.set(e,(r.get(e)??0)+1);let i=(e,t)=>{let i=r.get(e)-r.get(t);return i<0||!i&&n.get(e)>n.get(t)?e:t};return V9(e,({start:e,end:t})=>{let r=[e.tableId,t.tableId].filter(e=>n.has(e));return r.length?[r.reduce(i)]:[]})}function zhe(e,{relationship:t,index:n},r){if(!e||!(t||n))return``;let i=[...t?[[`relationship`,t]]:[],...n?[[`index`,n]]:[]],a=[...t?[r?`erd_list without query lists every relationship once`:`erd_read sql with tableIds gives the foreign keys a table holds`]:[],...n?[`erd_read sql with its tableIds gives its indexes`]:[]];return` Table ${e.id} has more ${i.map(([e])=>e===`index`?`indexes`:`${e}s`).join(` and `)} than one read holds, so ${i.map(([e,t])=>I9(t,e)).join(` and `)} of it ${t+n===1?`is`:`are`} left out; ${a.join(`, and `)}.`}function Bhe(e,{query:t,offset:n=0,limit:r=100}={}){let{settings:i,doc:a}=e,o=t!==void 0,{select:s,tables:c,found:l}=P9(e,t),u=s.collection(`relationshipEntities`).selectByIds(a.relationshipIds),d=s.collection(`indexEntities`).selectByIds(a.indexIds),f=o?[]:s.collection(`memoEntities`).selectByIds(a.memoIds),p=Rhe(u,l),m=V9(d,({tableId:e})=>[e]),h={settings:E9(i),tableCount:c.length,relationshipCount:u.length,indexCount:d.length,memoCount:a.memoIds.length},g=N9(h)+M9,_=[],v=[],y=new Set,b=new Set,ee=l.length+f.length,te={relationship:0,index:0},x=n;for(;x<ee&&_.length+v.length<r;x++){let t=!_.length&&!v.length;if(x>=l.length){let e=Lhe(f[x-l.length]);if(!t&&g+N9(e)>4e4)break;g+=N9(e),v.push(e);continue}let n=l[x],r={id:n.id,name:n.name,x:n.ui.x,y:n.ui.y,...j9(n,e),columnCount:s.collection(`tableColumnEntities`).selectByIds(n.columnIds).length},i=[...(p.get(n.id)??[]).map(e=>({id:e.id,kind:`relationship`,into:y,cost:N9(z9(e))})),...(m.get(n.id)??[]).map(e=>({id:e.id,kind:`index`,into:b,cost:N9(B9(e))}))],a=i.reduce((e,t)=>e+t.cost,N9(r));if(!t&&g+a>4e4)break;g+=N9(r),_.push(r);for(let e of i){if(g+e.cost>4e4){te[e.kind]++;continue}g+=e.cost,e.into.add(e.id)}}let S=x<ee?x:void 0,ne=Math.max(n-l.length,0),re;return!l.length&&o?re=`${F9}, or namesOnly for every table name.`:n>=ee&&n>0?re=`offset ${n} is past the end of the ${o?`${I9(l.length,`table`)} matching the query`:`${I9(l.length,`table`)} and ${I9(f.length,`memo`)}`}.`:(S!==void 0||te.relationship||te.index)&&(re=`This page lists ${[..._.length?[L9(`tables`,n,_.length,o?`${l.length} matching the query`:`${l.length}`)]:[],...v.length?[L9(`memos`,ne,v.length,`${f.length}`)]:[]].join(` and `)}${S===void 0?`.`:R9(S,o)}${zhe(_[0],te,o)}${S===void 0?``:Ihe}`),{...h,...o?{matchCount:l.length}:{},...S===void 0?{}:{nextOffset:S},...re?{note:re}:{},tables:_,relationships:u.filter(({id:e})=>y.has(e)).map(z9),indexes:d.filter(({id:e})=>b.has(e)).map(B9),memos:v}}function Vhe(e,{query:t,offset:n=0,limit:r=1/0}={}){let i=t!==void 0,{tables:a,found:o}=P9(e,t),s=N9({tableCount:a.length,matchCount:0})+M9,c=[];for(let e=n;e<o.length&&c.length<r;e++){let t=N9(o[e].name);if(c.length&&s+t>4e4)break;s+=t,c.push(o[e].name)}let l=n+c.length,u=l<o.length?l:void 0,d=i?`${o.length} matching the query`:`${o.length}`,f=!o.length&&i?`${F9}.`:n>=o.length&&n>0?`offset ${n} is past the end of the ${I9(o.length,`table name`)}${i?` matching the query`:``}.`:u===void 0?void 0:`This page lists ${L9(`names`,n,c.length,d)}${R9(u,i)}`;return{tableCount:a.length,...i?{matchCount:o.length}:{},...u===void 0?{}:{nextOffset:u},...f?{note:f}:{},tableNames:c}}function H9(e,{tableIds:t=[],tableNames:n=[]}){let r=k5(e.collections).collection(`tableEntities`).selectByIds(e.doc.tableIds),i=V9(r,({name:e})=>[e.toLowerCase()]),a=new Set(r.map(({id:e})=>e)),o=new Set,s=new Set;for(let e of t)a.has(e)?o.add(e):s.add(e);for(let e of n){let t=i.get(e.toLowerCase());t?t.forEach(({id:e})=>o.add(e)):s.add(e)}return{ids:[...o],missing:[...s]}}function Hhe(e,t){let n=[...new Set(e)],r=new Set(t);return{found:n.filter(e=>r.has(e)),missing:n.filter(e=>!r.has(e))}}function Uhe(e,t){let{doc:n,collections:r}=e,i=k5(r),a=new Set,o=(e,t)=>{let{found:n,missing:r}=Hhe(e??[],t);return r.forEach(e=>a.add(e)),n},s;if(t.tableIds||t.tableNames){let n=H9(e,t);n.missing.forEach(e=>a.add(e)),s=i.collection(`tableEntities`).selectByIds(n.ids)}let c=t.relationshipIds?i.collection(`relationshipEntities`).selectByIds(o(t.relationshipIds,n.relationshipIds)):void 0,l=t.indexIds?i.collection(`indexEntities`).selectByIds(o(t.indexIds,n.indexIds)):void 0,u=t.memoIds?i.collection(`memoEntities`).selectByIds(o(t.memoIds,n.memoIds)):void 0,d=[...s??[],...c??[],...l??[],...u??[]],f=Array(d.length+1).fill(0);for(let e=d.length-1;e>=0;e--)f[e]=f[e+1]+N9(d[e].id);let p=M9+N9([...a]);if(p+f[0]>4e4)throw new z8(R8.tooLarge,Nhe,`erd_get was asked for ${d.length+a.size} entities, more than one answer can even name; ask for fewer at a time`);let m=[],h=0,g=0,_=!1,v=(e,t)=>{let n=[];for(let r of e){let e=f[++h];if(!_){let i=t(r),a=N9(i);if(!g||p+a+e<=4e4){p+=a,g++,n.push(i);continue}_=!0}m.push(r.id)}return n},y={};return s&&(y.tables=v(s,t=>{let{columns:n,...r}=D9(i,t);return{...r,...j9(t,e),columns:n}})),c&&(y.relationships=v(c,O9)),l&&(y.indexes=v(l,e=>k9(i,e))),u&&(y.memos=v(u,A9)),a.size&&(y.missing=[...a]),m.length?(y.notReturned=m,y.note=`notReturned lists the ids this answer had no room for; ask for them in another call.`):p>4e4&&(y.note=`This answer is over one read because its one entity is; erd_read sql with tableIds gives a table as DDL, which is shorter.`),y}var U9=Object.freeze([`snapshot`,`sql`,`json`]),W9=dK,G9=`erd_read`,K9=`erd_list`,q9=`erd_get`,J9=e=>new z8(R8.invalidArgs,G9,e);function Whe(e){if(!W9.includes(e))throw J9(`vendor ${String(e)} is unknown; use one of ${W9.join(`, `)}`);return fK[e]}var Ghe={sql:`pass tableIds or tableNames for the tables the task needs, which erd_list with query or namesOnly finds`,snapshot:`find tables with erd_list (query, namesOnly) and read them with erd_get, or the sql format with tableNames`,json:`find tables with erd_list (query, namesOnly) and read them with erd_get, or the sql format with tableNames`};function Khe(e,t){let{ids:n,missing:r}=H9(e,t);if(r.length)throw new z8(R8.notFound,G9,`${r.join(`, `)} ${r.length===1?`names`:`name`} no live table; erd_list lists them`);if(!n.length)throw J9(`tableIds and tableNames name no table; pass one at least`);let i=new Set(n),{doc:a,collections:o}=e;return{...e,doc:{...a,tableIds:a.tableIds.filter(e=>i.has(e)),relationshipIds:a.relationshipIds.filter(e=>i.has(o.relationshipEntities[e]?.end.tableId)),indexIds:a.indexIds.filter(e=>i.has(o.indexEntities[e]?.tableId))}}}function qhe(e,t,n,r){if(!U9.includes(t))throw J9(`format must be one of ${U9.join(`, `)}, got ${String(t)}`);if(n!==void 0&&t!==`sql`)throw J9(`vendor applies to the sql format only, not ${t}`);let i=r?.tableIds!==void 0||r?.tableNames!==void 0?r:void 0;if(i&&t!==`sql`)throw J9(`tableIds and tableNames apply to the sql format only, not ${t}; erd_get takes them too`);let a=t===`snapshot`?JSON.stringify(jhe(e)):t===`json`?rme(e):jfe(i?Khe(e,i):e,n===void 0?void 0:Whe(n));if(!Ahe(a)){let e=`${a.length.toLocaleString(`en-US`)} characters, over the ${S9.toLocaleString(`en-US`)} one read returns`;throw new z8(R8.tooLarge,G9,i?`the DDL of the tables asked for is ${e}; ask for fewer tables at a time`:`this read is ${e}; ${Ghe[t]}`)}return a}var Jhe=(e,t,n)=>({tool:G9,render:r=>qhe(r,e,t,n)}),Yhe=(e={})=>({tool:K9,render:t=>JSON.stringify(e.namesOnly?Vhe(t,e):Bhe(t,e))}),Xhe=e=>({tool:q9,render:t=>JSON.stringify(Uhe(t,e))}),Y9=e=>N.annotate({description:$7(e,`path`)}),X9=(e,t)=>PC(F(N).annotate({description:$7(e,t)})),Zhe=P({path:Y9(G9),format:aw(U9).annotate({description:$7(G9,`format`)}),vendor:PC(aw(W9).annotate({description:$7(G9,`vendor`)})),tableIds:X9(G9,`tableIds`),tableNames:X9(G9,`tableNames`)}),Qhe=P({path:Y9(K9),query:PC(N.annotate({description:$7(K9,`query`)})),offset:PC(Dw.check(ww(0)).annotate({description:$7(K9,`offset`)})),limit:PC(Dw.check(ww(1)).annotate({description:$7(K9,`limit`)})),namesOnly:PC(qC.annotate({description:$7(K9,`namesOnly`)}))}),Z9=Object.freeze([`tableIds`,`tableNames`,`relationshipIds`,`indexIds`,`memoIds`]),$he=P({path:Y9(q9),tableIds:X9(q9,`tableIds`),tableNames:X9(q9,`tableNames`),relationshipIds:X9(q9,`relationshipIds`),indexIds:X9(q9,`indexIds`),memoIds:X9(q9,`memoIds`)});function ege(e){return Z9.some(t=>e[t]?.length)?T(Xhe(e)):k(new z8(R8.invalidArgs,q9,`name at least one entity in ${Z9.join(`, `)}; erd_list lists them`))}var tge=`Tool execution failed due to an internal server error.`,Q9=(e,t,n)=>O(function*(){let r=yield*CN,i=yield*B7,a=wC(t,{onExcessProperty:`error`});yield*r.addTool({tool:new AD({name:e,description:Q7(e),inputSchema:a9(e,t,!0),annotations:{readOnlyHint:!0}}),annotations:qr(),handle:t=>a(t).pipe(Kf(t=>new GE({message:`Invalid parameters for tool '${e}': ${t.message}`})),A(e=>y9(i,n(e).pipe(A(t=>i.read(e.path,t)),j(({text:e,notes:t})=>uhe(e,t)))).pipe(Hf(e=>T(fhe(e))))),Gf(e=>Kp(`a tool call failed`,nu(e)).pipe(Ff(k(new KE({message:tge}))))))})}),nge=O(function*(){yield*Q9(G9,Zhe,({format:e,vendor:t,tableIds:n,tableNames:r})=>T(Jhe(e,t,{tableIds:n,tableNames:r}))),yield*Q9(K9,Qhe,({path:e,...t})=>T(Yhe(t))),yield*Q9(q9,$he,ege)}),rge=`0.1.0`,ige=`erd-editor`,age=rge,oge=[_ae,vae,yae],sge=Td(O(function*(){let e=yield*B7;yield*vp(()=>e.closeAll);let t=yield*CN,n=pp(CN,CN.of({...t,addTool:n=>t.addTool({...n,handle:t=>e.arrive(n.handle(t))})}));yield*NN(g9).pipe(n),yield*nge.pipe(n),yield*NN(_9).pipe(n),yield*NN(v9).pipe(n)})).pipe(kd(khe)),cge=e=>sge.pipe(kd(Yae({name:ige,version:age,instructions:ehe,protocols:oge}).pipe(kd($me))),Ad(e),kd(wT)),lge=(e=>cge(qme.pipe(kd(Koe),kd(e))))(Dd(GP,Zre,Goe,Uoe)),$9=e=>O(function*(){let t=yield*mm(yield*Ip(jd(e)));if(Mu(t)&&!ou(t.cause))return yield*kf(t.cause)}).pipe(Yf(e=>Kp(`the server stopped on a failure`,e)),lp(wT));sm($9(lge.pipe(kd(sv))),{disableErrorReporting:!0});export{$9 as serve};