@opra/common 1.19.2 → 1.19.3
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.
package/browser/index.mjs
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
*****************************************/
|
|
5
5
|
|
|
6
6
|
var Es=Object.defineProperty;var a=(o,e)=>Es(o,"name",{value:e,configurable:!0});var hr=(o,e)=>{for(var t in e)Es(o,t,{get:e[t],enumerable:!0})};import"reflect-metadata";Array.prototype.findLast||(Array.prototype.findLast=function(o,e){let t=this.findLastIndex(o,e);return t>=0?this[t]:void 0},Array.prototype.findLastIndex=function(o,e){if(this==null)throw new TypeError("this is null or not defined");let t=Object(this),r=this.length;e=e||this;for(let i=r-1;i>=0;i--)if(o.call(e,t[i],i,t))return i;return-1});import{omitUndefined as hp}from"@jsopen/objects";import{isString as yp}from"valgen";import{omitUndefined as ka}from"@jsopen/objects";import Ma from"@browsery/i18next";import{splitString as Fa,tokenize as Os}from"fast-tokenizer";var Sa=/\\(.)/g,va=/(\\)/g;function _s(o){return o.replace(va,"\\\\")}a(_s,"escapeString");function xs(o){return o.replace(Sa,"$1")}a(xs,"unescapeString");var Ia=Object.getPrototypeOf(Ma.createInstance()).constructor,qt=class qt extends Ia{async init(e,t){let r=typeof e=="object"?e:{},i=typeof e=="function"?e:t;try{let n=await super.init(r,i),s=this.services.formatter;if(s.add("lowercase",(p,c)=>p.toLocaleLowerCase(c)),s.add("uppercase",(p,c)=>p.toLocaleUpperCase(c)),s.add("upperFirst",(p,c)=>p.charAt(0).toLocaleUpperCase(c)+p.substring(1)),r!=null&&r.resources)for(let p of Object.keys(r.resources)){let c=r.resources[p];for(let l of Object.keys(c))this.addResourceBundle(p,l,c[l],!1,!0)}return i&&i(null,n),n}catch(n){throw i&&i(n,this.t),n}}deep(e,t){if(e==null)return e;let r=new WeakMap;return this._deepTranslate(e,r,t)}createInstance(e,t){return new qt(e,t)}static createInstance(e,t){return new qt(e,t)}_deepTranslate(e,t,r){if(e==null||r!=null&&r.ignore&&r.ignore(e,this))return e;if(typeof e=="object"&&t.has(e))return t.get(e);if(typeof e=="string"){let i="";for(let n of Os(e,{brackets:{"$t(":")"},quotes:!0,keepQuotes:!0,keepBrackets:!0,keepDelimiters:!0})){if(n.startsWith("$t(")&&n.endsWith(")")){n=n.substring(3,n.length-1);let s=Fa(n,{delimiters:"?",quotes:!0,brackets:{"{":"}"}}),p=xs(n.substring((s[0]||"").length+1));n=s[0]||"";let c=[],l=null;for(let g of Os(n,{delimiters:",",quotes:!0,brackets:{"{":"}"}})){if(g.startsWith("{")){l=JSON.parse(g);continue}c.push(g)}let x=c.length>1?"$t("+c.join(",")+")":c[0];i+=p?this.t(x,p,{...r,...l}):this.t(x,{...r,...l});continue}i+=n}return i}if(Array.isArray(e)){let i=Array(e.length);t.set(e,i);for(let n=0,s=e.length;n<s;n++)i[n]=this._deepTranslate(e[n],t,r);return t.delete(e),i}if(typeof e=="object"){if(Buffer.isBuffer(e)||Buffer.isBuffer(e)||e instanceof Symbol||e instanceof RegExp||e instanceof Map||e instanceof Set||e instanceof WeakMap||e instanceof WeakSet)return e;let i={};t.set(e,i);let n=Object.keys(e);for(let s=0,p=n.length;s<p;s++){let c=n[s];i[c]=this._deepTranslate(e[c],t,r)}return t.delete(e),i}return e}static get defaultInstance(){return Pa}};a(qt,"I18n");var Kt=qt,Pa=Kt.createInstance();var La=/(\))/g;function $l(o,e,t){let r=e&&typeof e=="object"?e:void 0,i=typeof e=="string"?e:t;return"$t("+o+(r?","+JSON.stringify(r):"")+(i?"?"+_s(i).replace(La,"\\$1"):"")+")"}a($l,"translate");var Xr=Kt.createInstance();Xr.init().catch(()=>{});var Zr=class Zr extends Error{constructor(e,t){super("Unknown error"),this.severity="error",t=t||(e instanceof Error?e:void 0),e instanceof Error&&(t=e),t&&t instanceof Error&&(this.cause=t,t.stack&&(this.stack=t.stack)),typeof e=="string"?this.initString(e):e instanceof Error?this.initError(e):this.init(e),this.message=this.message||this.constructor.name}toString(){return Xr.deep(this.message)}toJSON(){var t;let e="production";return ka({message:this.message,severity:this.severity,system:this.system,code:this.code,details:this.details,stack:e==="dev"||e==="development"||e==="test"?(t=this.stack)==null?void 0:t.split(`
|
|
7
|
-
`):void 0},!0)}init(e){this.message=(e==null?void 0:e.message)||this.constructor.name,this.severity=(e==null?void 0:e.severity)||"error",e&&(this.system=e.system,this.code=e.code,this.details=e.details)}initString(e){this.init({message:String(e||"")||this.constructor.name,severity:"error",code:this.constructor.name})}initError(e){this.init({message:e.message,severity:e.severity||"error",code:e.code||e.constructor.name})}};a(Zr,"OpraException");var Ee=Zr;var Hr=class Hr extends Ee{constructor(e,t,r){super(e,t instanceof Error?t:void 0),this.status=(typeof t=="number"?t:Number(r))||500}setStatus(e){return this.status=e,this}initError(e){typeof e.status=="number"?this.status=e.status:typeof e.getStatus=="function"&&(this.status=e.getStatus()),super.initError(e)}};a(Hr,"OpraHttpError");var N=Hr;var ei=class ei extends N{constructor(){super(...arguments),this.status=400}init(e){super.init({message:"Bad request",code:"BAD_REQUEST",...e})}};a(ei,"BadRequestError");var gs=ei;var ti=class ti extends N{constructor(){super(...arguments),this.status=409}init(e){super.init({message:"Conflict",code:"CONFLICT",...e})}};a(ti,"ConflictError");var ws=ti;var ri=class ri extends N{constructor(){super(...arguments),this.status=424}init(e){super.init({message:"The request failed due to failure of a previous request",code:"FAILED_DEPENDENCY",...e})}};a(ri,"FailedDependencyError");var Rs=ri;var bs;(function(o){o.X_Opra_Version="X-Opra-Version",o.X_Total_Count="X-Total-Count",o.WWW_Authenticate="WWW-Authenticate",o.Authorization="Authorization",o.Proxy_Authenticate="Proxy-Authenticate",o.Proxy_Authorization="Proxy-Authorization",o.Age="Age",o.Cache_Control="Cache-Control",o.Clear_Site_Data="Clear-Site-Data",o.Expires="Expires",o.Pragma="Pragma",o.Last_Modified="Last-Modified",o.ETag="ETag",o.If_Match="If-Match",o.If_None_Match="If-None-Match",o.If_Modified_Since="If-Modified-Since",o.If_Unmodified_Since="If-Unmodified-Since",o.Vary="Vary",o.Connection="Connection",o.Keep_Alive="Keep-Alive",o.Accept="Accept",o.Accept_Encoding="Accept-Encoding",o.Accept_Language="Accept-Language",o.Expect="Expect",o.Cookie="Cookie",o.Set_Cookie="Set-Cookie",o.Access_Control_Allow_Origin="Access-Control-Allow-Origin",o.Access_Control_Allow_Credentials="Access-Control-Allow-Credentials",o.Access_Control_Allow_Headers="Access-Control-Allow-Headers",o.Access_Control_Allow_Methods="Access-Control-Allow-Methods",o.Access_Control_Expose_Headers="Access-Control-Expose-Headers",o.Access_Control_Max_Age="Access-Control-Max-Age",o.Access_Control_Request_Headers="Access-Control-Request-Headers",o.Access_Control_Request_Method="Access-Control-Request-Method",o.Origin="Origin",o.Timing_Allow_Origin="Timing-Allow-Origin",o.Content_Disposition="Content-Disposition",o.Content_ID="Content-ID",o.Content_Length="Content-Length",o.Content_Type="Content-Type",o.Content_Transfer_Encoding="Content-Transfer-Encoding",o.Content_Encoding="Content-Encoding",o.Content_Language="Content-Language",o.Content_Location="Content-Location",o.Forwarded="Forwarded",o.X_Forwarded_For="X-Forwarded-For",o.X_Forwarded_Host="X-Forwarded-Host",o.X_Forwarded_Proto="X-Forwarded-Proto",o.Via="Via",o.Location="Location",o.From="From",o.Host="Host",o.Referer="Referer",o.Referrer_Policy="Referrer-Policy",o.User_Agent="User-Agent",o.Allow="Allow",o.Server="Server",o.Accept_Ranges="Accept-Ranges",o.Range="Range",o.If_Range="If-Range",o.Content_Range="Content-Range",o.Cross_Origin_Embedder_Policy="Cross-Origin-Embedder-Policy",o.Cross_Origin_Opener_Policy="Cross-Origin-Opener-Policy",o.Cross_Origin_Resource_Policy="Cross-Origin-Resource-Policy",o.Content_Security_Policy="Content-Security-Policy",o.Content_Security_Policy_Report_Only="Content-Security-Policy-Report-Only",o.Expect_CT="Expect-CT",o.Feature_Policy="Feature-Policy",o.Strict_Transport_Security="Strict-Transport-Security",o.Upgrade="Upgrade",o.Upgrade_Insecure_Requests="Upgrade-Insecure-Requests",o.X_Content_Type_Options="X-Content-Type-Options",o.X_Download_Options="X-Download-Options",o.X_Frame_Options="X-Frame-Options",o.X_Permitted_Cross_Domain_Policies="X-Permitted-Cross-Domain-Policies",o.X_Powered_By="X-Powered-By",o.X_XSS_Protection="X-XSS-Protection",o.Transfer_Encoding="Transfer-Encoding",o.TE="TE",o.Trailer="Trailer",o.Sec_WebSocket_Key="Sec-WebSocket-Key",o.Sec_WebSocket_Extensions="Sec-WebSocket-Extensions",o.Sec_WebSocket_Accept="Sec-WebSocket-Accept",o.Sec_WebSocket_Protocol="Sec-WebSocket-Protocol",o.Sec_WebSocket_Version="Sec-WebSocket-Version",o.Date="Date",o.Retry_After="Retry-After",o.Server_Timing="Server-Timing",o.X_DNS_Prefetch_Control="X-DNS-Prefetch-Control",o.Max_Forwards="Max-Forwards"})(bs||(bs={}));var w;(function(o){o[o.CONTINUE=100]="CONTINUE",o[o.SWITCHING_PROTOCOLS=101]="SWITCHING_PROTOCOLS",o[o.PROCESSING=102]="PROCESSING",o[o.EARLYHINTS=103]="EARLYHINTS",o[o.OK=200]="OK",o[o.CREATED=201]="CREATED",o[o.ACCEPTED=202]="ACCEPTED",o[o.NON_AUTHORITATIVE_INFORMATION=203]="NON_AUTHORITATIVE_INFORMATION",o[o.NO_CONTENT=204]="NO_CONTENT",o[o.RESET_CONTENT=205]="RESET_CONTENT",o[o.PARTIAL_CONTENT=206]="PARTIAL_CONTENT",o[o.AMBIGUOUS=300]="AMBIGUOUS",o[o.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",o[o.FOUND=302]="FOUND",o[o.SEE_OTHER=303]="SEE_OTHER",o[o.NOT_MODIFIED=304]="NOT_MODIFIED",o[o.TEMPORARY_REDIRECT=307]="TEMPORARY_REDIRECT",o[o.PERMANENT_REDIRECT=308]="PERMANENT_REDIRECT",o[o.BAD_REQUEST=400]="BAD_REQUEST",o[o.UNAUTHORIZED=401]="UNAUTHORIZED",o[o.PAYMENT_REQUIRED=402]="PAYMENT_REQUIRED",o[o.FORBIDDEN=403]="FORBIDDEN",o[o.NOT_FOUND=404]="NOT_FOUND",o[o.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",o[o.NOT_ACCEPTABLE=406]="NOT_ACCEPTABLE",o[o.PROXY_AUTHENTICATION_REQUIRED=407]="PROXY_AUTHENTICATION_REQUIRED",o[o.REQUEST_TIMEOUT=408]="REQUEST_TIMEOUT",o[o.CONFLICT=409]="CONFLICT",o[o.GONE=410]="GONE",o[o.LENGTH_REQUIRED=411]="LENGTH_REQUIRED",o[o.PRECONDITION_FAILED=412]="PRECONDITION_FAILED",o[o.PAYLOAD_TOO_LARGE=413]="PAYLOAD_TOO_LARGE",o[o.URI_TOO_LONG=414]="URI_TOO_LONG",o[o.UNSUPPORTED_MEDIA_TYPE=415]="UNSUPPORTED_MEDIA_TYPE",o[o.REQUESTED_RANGE_NOT_SATISFIABLE=416]="REQUESTED_RANGE_NOT_SATISFIABLE",o[o.EXPECTATION_FAILED=417]="EXPECTATION_FAILED",o[o.I_AM_A_TEAPOT=418]="I_AM_A_TEAPOT",o[o.MISDIRECTED_REQUEST=421]="MISDIRECTED_REQUEST",o[o.UNPROCESSABLE_ENTITY=422]="UNPROCESSABLE_ENTITY",o[o.LOCKED=423]="LOCKED",o[o.FAILED_DEPENDENCY=424]="FAILED_DEPENDENCY",o[o.TOO_EARLY=425]="TOO_EARLY",o[o.UPGRADE_REQUIRED=426]="UPGRADE_REQUIRED",o[o.PRECONDITION_REQUIRED=428]="PRECONDITION_REQUIRED",o[o.TOO_MANY_REQUESTS=429]="TOO_MANY_REQUESTS",o[o.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",o[o.NOT_IMPLEMENTED=501]="NOT_IMPLEMENTED",o[o.BAD_GATEWAY=502]="BAD_GATEWAY",o[o.SERVICE_UNAVAILABLE=503]="SERVICE_UNAVAILABLE",o[o.GATEWAY_TIMEOUT=504]="GATEWAY_TIMEOUT",o[o.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP_VERSION_NOT_SUPPORTED",o[o.VARIANT_ALSO_NEGOTIATES=506]="VARIANT_ALSO_NEGOTIATES",o[o.INSUFFICIENT_STORAGE=507]="INSUFFICIENT_STORAGE",o[o.LOOP_DETECTED=508]="LOOP_DETECTED",o[o.NOT_EXTENDED=510]="NOT_EXTENDED",o[o.NETWORK_AUTHENTICATION_REQUIRED=511]="NETWORK_AUTHENTICATION_REQUIRED"})(w||(w={}));var mf={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"};var A;(function(o){o.json="application/json",o.opra_response_json="application/opra.response+json",o.xml="application/XML",o.text="text/plain",o.html="text/html",o.markdown="text/markdown",o.binary="binary/octet-stream"})(A||(A={}));var ii=class ii extends N{constructor(){super(...arguments),this.status=w.FORBIDDEN}init(e){super.init({message:"You are not authorized to perform this action",code:"FORBIDDEN",...e})}};a(ii,"ForbiddenError");var yr=ii;var oi=class oi extends N{constructor(){super(...arguments),this.status=500}init(e){super.init({message:"Internal server error",code:"INTERNAL_SERVER_ERROR",severity:"fatal",...e})}};a(oi,"InternalServerError");var As=oi;var ni=class ni extends N{constructor(){super(...arguments),this.status=405}init(e){super.init({message:"Method not allowed",code:"METHOD_NOT_ALLOWED",...e})}};a(ni,"MethodNotAllowedError");var Ds=ni;var si=class si extends N{constructor(){super(...arguments),this.status=406}init(e){super.init({message:"Not Acceptable",code:"NOT_ACCEPTABLE",...e})}};a(si,"NotAcceptableError");var Ns=si;var ai=class ai extends N{constructor(){super(...arguments),this.status=404}init(e){super.init({message:"Not found",code:"NOT_FOUND",...e})}};a(ai,"NotFoundError");var Ss=ai;var pi=class pi extends yr{init(e){super.init({message:"You dont have permission for this operation",code:"PERMISSION_ERROR",...e})}};a(pi,"PermissionError");var vs=pi;var ci=class ci extends N{constructor(e,t,r){super({message:`There is already an other "${e}" resource with same values for field(s) [${t}]`,severity:"error",code:"RESOURCE_CONFLICT",details:{resource:e,location:t}},r),this.status=409}};a(ci,"ResourceConflictError");var Ms=ci;var li=class li extends N{constructor(e,t,r){super({message:`Resource "${e}${t?"/"+t:""}" is not available`,severity:"error",code:"RESOURCE_NOT_AVAILABLE",details:{resource:e,key:t}},r,w.UNPROCESSABLE_ENTITY)}};a(li,"ResourceNotAvailableError");var Fs=li;var fi=class fi extends N{constructor(){super(...arguments),this.status=401}init(e){super.init({message:"You don't have permission to perform this action",code:"UNAUTHORIZED",...e})}};a(fi,"UnauthorizedError");var Is=fi;var mi=class mi extends N{constructor(){super(...arguments),this.status=422}init(e){super.init({message:"Unprocessable entity",severity:"error",code:"UNPROCESSABLE_ENTITY",...e})}};a(mi,"UnprocessableEntityError");var Ps=mi;var Ls;(function(o){let e;(function(t){t.fatal="fatal",t.error="error",t.warning="warning",t.info="info"})(e=o.Enum||(o.Enum={})),o.name="IssueSeverity",o.description="Severity of the issue",o.Keys=Object.keys(o),o.descriptions={fatal:"The issue caused the action to fail and no further checking could be performed",error:"The issue is sufficiently important to cause the action to fail",warning:"The issue is not important enough to cause the action to fail but may cause it to be performed suboptimally or in a way that is not as desired",info:"The issue has no relation to the degree of success of the action"}})(Ls||(Ls={}));BigInt.prototype.toJSON||(BigInt.prototype.toJSON=function(){return this.toString()});RegExp.prototype.toJSON||(RegExp.prototype.toJSON=function(){return this.toString()});import{isConstructor as ja}from"@jsopen/objects";import Ca from"putil-promisify";async function pe(o){return o=Ca.isPromise(o)?await o:o,typeof o=="function"?ja(o)?o:await o():o}a(pe,"resolveThunk");var ks=/^(?:file:\/\/)?(.+)$/;function Om(o=1){if(o>=Error.stackTraceLimit)throw new TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+o+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");let e=Error.prepareStackTrace;Error.prepareStackTrace=(r,i)=>i;let t=new Error().stack;if(Error.prepareStackTrace=e,t!==null&&typeof t=="object"){let r=t[o]?t[o].getFileName():void 0,i=r?ks.exec(r):void 0;return i?i[1]:""}return""}a(Om,"getStackFileName");function gm(o=1){if(o>=Error.stackTraceLimit)throw new TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+o+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");let e=Error.prepareStackTrace;Error.prepareStackTrace=(r,i)=>i;let t=new Error().stack;if(Error.prepareStackTrace=e,t!==null&&typeof t=="object"){let r=t[o]?t[o].getFileName():void 0,i=r?ks.exec(r):void 0;return i?i[1]:""}return""}a(gm,"getErrorStack");function Tr(o,e,t){for(let r of Object.getOwnPropertyNames(e))r==="constructor"||r==="__proto__"||r==="toJSON"||r==="toString"||t&&!t(r)||Object.defineProperty(o,r,Object.getOwnPropertyDescriptor(e,r)||Object.create(null))}a(Tr,"mergePrototype");function Er(o,e,t=r=>!0){try{let r=new e;Object.getOwnPropertyNames(r).filter(n=>typeof r[n]<"u"&&typeof o[n]>"u").filter(n=>t(n)).forEach(n=>{o[n]=r[n]})}catch{}}a(Er,"inheritPropertyInitializers");import{isPlainObject as Cs,merge as Ua}from"@jsopen/objects";var d=Symbol.for("opra.type.metadata"),se=Symbol("opra.http-controller.metadata"),ae=Symbol("opra.rpc-controller.metadata"),T=Symbol.for("opra.type.decoder"),O=Symbol("opra.type.encoder"),D=Symbol.for("DECORATOR"),Pe=Symbol.for("BUILTIN"),js=/([a-z$_]\w+):(.+)/i,j=/^[a-z][\w_]*$/i,C=Symbol.for("kDataTypeMap"),_r=Symbol.for("kCtorMap"),we=Symbol.for("kTypeNSMap");function I(o,e){return Ua({},o,{deep:a(t=>Cs(t)&&!t[d],"deep"),copyDescriptors:!0,ignoreUndefined:!0,filter(t,r){let i=r[t];return!e||typeof i!="function"&&(typeof i!="object"||Cs(i)||Array.isArray(i))}})}a(I,"cloneObject");import{splitString as Us}from"fast-tokenizer";var $a=/^([+-])?([a-z_$]\w*)$/i,Ba=/[^.]\(/g,ui=class ui{};a(ui,"FieldsProjection");var Le=ui;(function(o){let t=class t{};a(t,"Item");let e=t;o.Item=e})(Le||(Le={}));function $s(o,e){let t=Array.isArray(o)?o:[o];if(!(t&&t.length))return;let r=new Le;for(let i of t)e||(i=i.toLowerCase()),Bs(i,r);return r}a($s,"parseFieldsProjection");function Bs(o,e){o=o.replace(Ba,r=>r.charAt(0)+"."+r.substring(1));let t=Us(o,{delimiters:".",brackets:!0,keepBrackets:!1});for(let r=0;r<t.length;r++){let i=t[r];if(i.includes(",")){let c=Us(i,{delimiters:",",brackets:!0,keepBrackets:!0});for(let l of c)Bs(l,e);continue}let n=$a.exec(i);if(!n)throw new TypeError(`Invalid field path (${o})`);let s=n[2],p=e[s]=e[s]||new Le.Item;n[1]&&(p.sign=n[1]),r===t.length-1?delete p.projection:e=p.projection=p.projection||new Le}}a(Bs,"parse");function qa(o){return o&&typeof o.forEach=="function"}a(qa,"isMap");var J=Symbol.for("kEntries"),ce=Symbol.for("kKeyMap"),xr=Symbol.for("kWellKnownKeys"),di=Symbol.for("kOptions"),Xe=Symbol.for("kSize"),hi=class hi{constructor(e,t){Object.defineProperty(this,Xe,{value:0,enumerable:!1,writable:!0}),Object.defineProperty(this,J,{value:{},enumerable:!1,writable:!0}),Object.defineProperty(this,ce,{value:{},enumerable:!1,writable:!0}),Object.defineProperty(this,xr,{value:{},enumerable:!1,writable:!0});let r=!!(t!=null&&t.caseSensitive);Object.defineProperty(this,di,{value:{caseSensitive:r},enumerable:!1}),t!=null&&t.wellKnownKeys&&t.wellKnownKeys.forEach(i=>{r?this[xr][i]=i:this[xr][i.toLowerCase()]=i}),this.clear(),e&&this.setAll(e)}get size(){return this[Xe]}clear(){Object.keys(this[J]).forEach(e=>delete this[J][e]),Object.keys(this[ce]).forEach(e=>delete this[ce][e]),this[Xe]=0}forEach(e,t){for(let[r,i]of this.entries())e.call(t,i,r,this)}get(e){if(e)return this[J][this._getStoringKey(e)]}has(e){return e?Object.prototype.hasOwnProperty.call(this[J],this._getStoringKey(e)):!1}set(e,t){let r=this._getStoringKey(e);e=this._getOriginalKey(e);let i=Object.prototype.hasOwnProperty.call(this[J],r);return this[J][r]=t,i||this[Xe]++,this[ce][r]=e,this}setAll(e){return qa(e)?e.forEach((t,r)=>this.set(r,t)):Object.keys(e).forEach(t=>this.set(t,e[t])),this}keys(){return Object.values(this[ce])[Symbol.iterator]()}values(){return Object.values(this[J])[Symbol.iterator]()}entries(){return Object.entries(this[J])[Symbol.iterator]()}delete(e){let t=this._getStoringKey(e),r=Object.prototype.hasOwnProperty.call(this[J],t);return delete this[J][t],delete this[ce][t],r||this[Xe]--,r}sort(e){let t={...this[J]},r={...this[ce]},i=Array.from(this.keys());e?i.sort(e):i.sort(),this.clear();for(let n of i)this[J][n]=t[n],this[ce][n]=r[n];return this[Xe]=i.length,this}toObject(){let e={};for(let[t,r]of Object.entries(this[ce]))e[r]=this[J][t];return e}[Symbol.iterator](){return this.entries()}get[Symbol.toStringTag](){return"[Object ResponsiveMap]"}_getOriginalKey(e){if(!e||this[di].caseSensitive)return e;let t=this._getStoringKey(e);return this[ce][t]??this[xr][t]??e}_getStoringKey(e){return this[di].caseSensitive?e:e.toLowerCase()}};a(hi,"ResponsiveMap");var v=hi;function jm(o,e,t){let r=new WeakSet;return JSON.stringify(o,(i,n)=>{if(n!==null&&typeof n=="object"){if(r.has(n))return;r.add(n)}return e?e(i,n):n},t)}a(jm,"safeJsonStringify");function yi(o){return o!==null&&typeof o=="object"&&typeof o.pipe=="function"}a(yi,"isStream");function $m(o){return yi(o)&&typeof o._read=="function"&&typeof o._readableState=="object"}a($m,"isReadable");function Bm(o){return yi(o)&&typeof o._write=="function"}a(Bm,"isWritable");function qm(o){return yi(o)&&typeof o.getReader=="function"&&typeof o.pipeThrough=="function"&&typeof o.pipeTo=="function"}a(qm,"isReadableStream");function Km(o){return o!==null&&typeof o=="object"&&typeof o.size=="number"&&typeof o.arrayBuffer=="function"&&typeof o.stream=="function"}a(Km,"isBlob");function Vm(o){return o!==null&&typeof o.constructor=="function"&&o.constructor.name==="FormData"&&typeof o.append=="function"&&typeof o.getAll=="function"}a(Vm,"isFormData");function zm(o){return o!==null&&typeof o=="object"&&typeof o.host=="string"&&typeof o.href=="string"}a(zm,"isURL");var Ti=class Ti{constructor(){this.kind=Object.getPrototypeOf(this).constructor.name}};a(Ti,"Ast");var Vt=Ti;var Ei=class Ei extends Vt{};a(Ei,"Expression");var U=Ei;var _i=class _i extends U{};a(_i,"Term");var ke=_i;var xi=class xi extends ke{constructor(e){super(),this.value=e}toString(){return""+this.value}};a(xi,"Literal");var M=xi;var Oi=class Oi extends U{constructor(){super(),this.items=[]}append(e,t){return this.items.push(new Or({op:e,expression:t})),this}toString(){return this.items.map((e,t)=>(t>0?e.op:"")+e.expression).join("")}};a(Oi,"ArithmeticExpression");var je=Oi,gi=class gi{constructor(e){Object.assign(this,e)}};a(gi,"ArithmeticExpressionItem");var Or=gi;var wi=class wi extends ke{constructor(e){super(),this.items=e}toString(){return"["+this.items.map(e=>""+e).join(",")+"]"}};a(wi,"ArrayExpression");var _e=wi;var Ka=/\w/,Ri=class Ri extends U{constructor(e){super(),Object.assign(this,e)}toString(){return`${this.left}${Ka.test(this.op)?" "+this.op+" ":this.op}${this.right}`}};a(Ri,"ComparisonExpression");var le=Ri;var bi=class bi extends U{constructor(e){super(),Object.assign(this,e),this.op==="&&"&&(this.op="and"),this.op==="||"&&(this.op="or")}toString(){return this.items.map(e=>""+e).join(" "+this.op+" ")}};a(bi,"LogicalExpression");var fe=bi;var Ai=class Ai extends U{constructor(e){super(),this.expression=e}toString(){return`(${this.expression})`}};a(Ai,"NegativeExpression");var zt=Ai;var Di=class Di extends U{constructor(e){super(),this.expression=e}toString(){return`(${this.expression})`}};a(Di,"ParenthesizedExpression");var xe=Di;var Ni=class Ni extends M{constructor(e){super(e)}};a(Ni,"BooleanLiteral");var Ce=Ni;import{toDateDef as Ga}from"putil-varhelpers";var Si=class Si extends TypeError{};a(Si,"SyntaxError");var gr=Si,vi=class vi extends TypeError{constructor(e){super(typeof e=="string"?e:e==null?void 0:e.message),typeof e=="object"&&Object.assign(this,e)}};a(vi,"FilterValidationError");var me=vi,Mi=class Mi extends Error{constructor(e,t){super(e),Object.assign(this,t)}};a(Mi,"FilterParseError");var wr=Mi;var Va=/'/g,za=/(\\)/g,Ja=/\\(.)/g;function Wa(o){return o.replace(za,"\\\\")}a(Wa,"escapeString");function Ya(o){return o.replace(Ja,"$1")}a(Ya,"unescapeString");function Re(o){return"'"+Wa(o).replace(Va,"\\'")+"'"}a(Re,"quoteFilterString");function Jt(o){return o&&(o.startsWith("'")||o.startsWith('"'))&&o.endsWith(o.charAt(0))?Ya(o.substring(1,o.length-1)):o}a(Jt,"unquoteFilterString");var qs=new Date(0),Fi=class Fi extends M{constructor(e){if(super(""),e instanceof Date){this.value=e.toISOString();return}if(typeof e=="string"&&Ga(e,qs)!==qs){this.value=e;return}throw new me(`Invalid date value "${e}"`)}toString(){return Re(this.value)}};a(Fi,"DateLiteral");var be=Fi;import{toDateDef as Qa}from"putil-varhelpers";var Ks=new Date(0),Ii=class Ii extends M{constructor(e){if(super(""),e instanceof Date){this.value=e.toISOString();return}if(typeof e=="string"&&Qa(e,Ks)!==Ks){this.value=e;return}throw new me(`Invalid date-time value "${e}"`)}toString(){return Re(this.value)}};a(Ii,"DateTimeLiteral");var Wt=Ii;var Pi=class Pi extends M{constructor(){super(null),this.value=null}};a(Pi,"NullLiteral");var Ue=Pi;var Li=class Li extends M{constructor(e){if(super(0),typeof e=="number"||typeof e=="bigint"){this.value=e;return}try{if(typeof e=="string"){if(e.includes(".")){this.value=parseFloat(e);return}let t=Number(e);""+t===e?this.value=t:this.value=BigInt(e);return}}catch{}throw new me(`Invalid number literal ${e}`)}toString(){return typeof this.value=="bigint"?(""+this.value).replace(/n$/,""):""+this.value}};a(Li,"NumberLiteral");var Oe=Li;var ki=class ki extends M{constructor(e){super(""+e)}};a(ki,"QualifiedIdentifier");var X=ki;var ji=class ji extends M{constructor(e){super(""+e)}toString(){return Re(this.value)}};a(ji,"StringLiteral");var $e=ji;var Xa=/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?(\.(\d+))?$/,Ci=class Ci extends M{constructor(e){if(super(""),e instanceof Date){this.value=Rr(e.getHours())+":"+Rr(e.getMinutes())+(e.getSeconds()?":"+Rr(e.getSeconds()):"")+(e.getMilliseconds()?"."+Rr(e.getMilliseconds()):"");return}if(typeof e=="string"&&Xa.test(e)){this.value=e;return}throw new me(`Invalid time value "${e}"`)}toString(){return Re(this.value)}};a(Ci,"TimeLiteral");var Be=Ci;function Rr(o){return o<=9?"0"+o:""+o}a(Rr,"pad");import{CharStream as up,CommonTokenStream as dp}from"@browsery/antlr4";import{ATNDeserializer as Za,DFA as Ha,Lexer as ep,LexerATNSimulator as tp,PredictionContextCache as rp,Token as ip}from"@browsery/antlr4";var V=class V extends ep{constructor(e){super(e),this._interp=new tp(this,V._ATN,V.DecisionsToDFA,new rp)}get grammarFileName(){return"OpraFilter.g4"}get literalNames(){return V.literalNames}get symbolicNames(){return V.symbolicNames}get ruleNames(){return V.ruleNames}get serializedATN(){return V._serializedATN}get channelNames(){return V.channelNames}get modeNames(){return V.modeNames}static get _ATN(){return V.__ATN||(V.__ATN=new Za().deserialize(V._serializedATN)),V.__ATN}};a(V,"OpraFilterLexer");var h=V;h.T__0=1;h.T__1=2;h.T__2=3;h.T__3=4;h.T__4=5;h.T__5=6;h.T__6=7;h.T__7=8;h.T__8=9;h.T__9=10;h.T__10=11;h.T__11=12;h.T__12=13;h.T__13=14;h.T__14=15;h.T__15=16;h.T__16=17;h.T__17=18;h.T__18=19;h.T__19=20;h.T__20=21;h.T__21=22;h.T__22=23;h.T__23=24;h.T__24=25;h.T__25=26;h.T__26=27;h.T__27=28;h.T__28=29;h.T__29=30;h.T__30=31;h.T__31=32;h.T__32=33;h.T__33=34;h.IDENTIFIER=35;h.POLAR_OP=36;h.DATE=37;h.DATETIME=38;h.TIME=39;h.NUMBER=40;h.INTEGER=41;h.STRING=42;h.WHITESPACE=43;h.EOF=ip.EOF;h.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"];h.literalNames=[null,"'('","')'","'not'","'!'","'.'","'@'","'['","','","']'","'true'","'false'","'null'","'Infinity'","'infinity'","'+'","'-'","'*'","'/'","'<='","'<'","'>'","'>='","'='","'!='","'in'","'!in'","'like'","'!like'","'ilike'","'!ilike'","'and'","'or'","'&&'","'||'"];h.symbolicNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE"];h.modeNames=["DEFAULT_MODE"];h.ruleNames=["T__0","T__1","T__2","T__3","T__4","T__5","T__6","T__7","T__8","T__9","T__10","T__11","T__12","T__13","T__14","T__15","T__16","T__17","T__18","T__19","T__20","T__21","T__22","T__23","T__24","T__25","T__26","T__27","T__28","T__29","T__30","T__31","T__32","T__33","IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE","DIGIT","DATEFORMAT","TIMEFORMAT","TIMEZONEOFFSETFORMAT","ESC","UNICODE","HEX"];h._serializedATN=[4,0,43,461,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,1,0,1,0,1,1,1,1,1,2,1,2,1,2,1,2,1,3,1,3,1,4,1,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,1,8,1,9,1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,20,1,20,1,21,1,21,1,21,1,22,1,22,1,23,1,23,1,23,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,32,1,32,1,32,1,33,1,33,1,33,1,34,1,34,5,34,225,8,34,10,34,12,34,228,9,34,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,3,36,240,8,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,3,37,291,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,301,8,38,1,39,3,39,304,8,39,1,39,4,39,307,8,39,11,39,12,39,308,1,39,1,39,5,39,313,8,39,10,39,12,39,316,9,39,3,39,318,8,39,1,39,1,39,3,39,322,8,39,1,39,4,39,325,8,39,11,39,12,39,326,3,39,329,8,39,1,39,1,39,1,39,1,39,4,39,335,8,39,11,39,12,39,336,3,39,339,8,39,1,40,3,40,342,8,40,1,40,4,40,345,8,40,11,40,12,40,346,1,40,1,40,1,40,1,40,4,40,353,8,40,11,40,12,40,354,3,40,357,8,40,1,41,1,41,1,41,5,41,362,8,41,10,41,12,41,365,9,41,1,41,1,41,1,41,1,41,5,41,371,8,41,10,41,12,41,374,9,41,1,41,3,41,377,8,41,1,42,4,42,380,8,42,11,42,12,42,381,1,42,1,42,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,397,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,406,8,44,1,45,1,45,1,45,1,45,3,45,412,8,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,4,45,424,8,45,11,45,12,45,425,3,45,428,8,45,3,45,430,8,45,1,46,1,46,1,46,3,46,435,8,46,1,46,1,46,1,46,3,46,440,8,46,1,46,1,46,1,46,3,46,445,8,46,3,46,447,8,46,1,47,1,47,1,47,3,47,452,8,47,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,0,0,50,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,0,89,0,91,0,93,0,95,0,97,0,99,0,1,0,16,4,0,36,36,65,90,95,95,97,122,5,0,36,36,48,57,65,90,95,95,97,122,2,0,43,43,45,45,1,0,39,39,1,0,34,34,3,0,9,10,13,13,32,32,1,0,48,57,1,0,48,48,1,0,49,57,1,0,49,49,1,0,48,50,1,0,49,51,1,0,48,49,1,0,48,51,1,0,48,53,3,0,48,57,65,70,97,102,491,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,1,101,1,0,0,0,3,103,1,0,0,0,5,105,1,0,0,0,7,109,1,0,0,0,9,111,1,0,0,0,11,113,1,0,0,0,13,115,1,0,0,0,15,117,1,0,0,0,17,119,1,0,0,0,19,121,1,0,0,0,21,126,1,0,0,0,23,132,1,0,0,0,25,137,1,0,0,0,27,146,1,0,0,0,29,155,1,0,0,0,31,157,1,0,0,0,33,159,1,0,0,0,35,161,1,0,0,0,37,163,1,0,0,0,39,166,1,0,0,0,41,168,1,0,0,0,43,170,1,0,0,0,45,173,1,0,0,0,47,175,1,0,0,0,49,178,1,0,0,0,51,181,1,0,0,0,53,185,1,0,0,0,55,190,1,0,0,0,57,196,1,0,0,0,59,202,1,0,0,0,61,209,1,0,0,0,63,213,1,0,0,0,65,216,1,0,0,0,67,219,1,0,0,0,69,222,1,0,0,0,71,229,1,0,0,0,73,239,1,0,0,0,75,290,1,0,0,0,77,300,1,0,0,0,79,338,1,0,0,0,81,356,1,0,0,0,83,376,1,0,0,0,85,379,1,0,0,0,87,385,1,0,0,0,89,387,1,0,0,0,91,411,1,0,0,0,93,446,1,0,0,0,95,448,1,0,0,0,97,453,1,0,0,0,99,459,1,0,0,0,101,102,5,40,0,0,102,2,1,0,0,0,103,104,5,41,0,0,104,4,1,0,0,0,105,106,5,110,0,0,106,107,5,111,0,0,107,108,5,116,0,0,108,6,1,0,0,0,109,110,5,33,0,0,110,8,1,0,0,0,111,112,5,46,0,0,112,10,1,0,0,0,113,114,5,64,0,0,114,12,1,0,0,0,115,116,5,91,0,0,116,14,1,0,0,0,117,118,5,44,0,0,118,16,1,0,0,0,119,120,5,93,0,0,120,18,1,0,0,0,121,122,5,116,0,0,122,123,5,114,0,0,123,124,5,117,0,0,124,125,5,101,0,0,125,20,1,0,0,0,126,127,5,102,0,0,127,128,5,97,0,0,128,129,5,108,0,0,129,130,5,115,0,0,130,131,5,101,0,0,131,22,1,0,0,0,132,133,5,110,0,0,133,134,5,117,0,0,134,135,5,108,0,0,135,136,5,108,0,0,136,24,1,0,0,0,137,138,5,73,0,0,138,139,5,110,0,0,139,140,5,102,0,0,140,141,5,105,0,0,141,142,5,110,0,0,142,143,5,105,0,0,143,144,5,116,0,0,144,145,5,121,0,0,145,26,1,0,0,0,146,147,5,105,0,0,147,148,5,110,0,0,148,149,5,102,0,0,149,150,5,105,0,0,150,151,5,110,0,0,151,152,5,105,0,0,152,153,5,116,0,0,153,154,5,121,0,0,154,28,1,0,0,0,155,156,5,43,0,0,156,30,1,0,0,0,157,158,5,45,0,0,158,32,1,0,0,0,159,160,5,42,0,0,160,34,1,0,0,0,161,162,5,47,0,0,162,36,1,0,0,0,163,164,5,60,0,0,164,165,5,61,0,0,165,38,1,0,0,0,166,167,5,60,0,0,167,40,1,0,0,0,168,169,5,62,0,0,169,42,1,0,0,0,170,171,5,62,0,0,171,172,5,61,0,0,172,44,1,0,0,0,173,174,5,61,0,0,174,46,1,0,0,0,175,176,5,33,0,0,176,177,5,61,0,0,177,48,1,0,0,0,178,179,5,105,0,0,179,180,5,110,0,0,180,50,1,0,0,0,181,182,5,33,0,0,182,183,5,105,0,0,183,184,5,110,0,0,184,52,1,0,0,0,185,186,5,108,0,0,186,187,5,105,0,0,187,188,5,107,0,0,188,189,5,101,0,0,189,54,1,0,0,0,190,191,5,33,0,0,191,192,5,108,0,0,192,193,5,105,0,0,193,194,5,107,0,0,194,195,5,101,0,0,195,56,1,0,0,0,196,197,5,105,0,0,197,198,5,108,0,0,198,199,5,105,0,0,199,200,5,107,0,0,200,201,5,101,0,0,201,58,1,0,0,0,202,203,5,33,0,0,203,204,5,105,0,0,204,205,5,108,0,0,205,206,5,105,0,0,206,207,5,107,0,0,207,208,5,101,0,0,208,60,1,0,0,0,209,210,5,97,0,0,210,211,5,110,0,0,211,212,5,100,0,0,212,62,1,0,0,0,213,214,5,111,0,0,214,215,5,114,0,0,215,64,1,0,0,0,216,217,5,38,0,0,217,218,5,38,0,0,218,66,1,0,0,0,219,220,5,124,0,0,220,221,5,124,0,0,221,68,1,0,0,0,222,226,7,0,0,0,223,225,7,1,0,0,224,223,1,0,0,0,225,228,1,0,0,0,226,224,1,0,0,0,226,227,1,0,0,0,227,70,1,0,0,0,228,226,1,0,0,0,229,230,7,2,0,0,230,72,1,0,0,0,231,232,5,39,0,0,232,233,3,89,44,0,233,234,5,39,0,0,234,240,1,0,0,0,235,236,5,34,0,0,236,237,3,89,44,0,237,238,5,34,0,0,238,240,1,0,0,0,239,231,1,0,0,0,239,235,1,0,0,0,240,74,1,0,0,0,241,242,5,39,0,0,242,243,3,89,44,0,243,244,5,84,0,0,244,245,3,91,45,0,245,246,3,93,46,0,246,247,5,39,0,0,247,248,5,39,0,0,248,249,3,89,44,0,249,250,5,32,0,0,250,251,3,91,45,0,251,252,3,93,46,0,252,253,5,39,0,0,253,254,5,39,0,0,254,255,3,89,44,0,255,256,5,84,0,0,256,257,3,91,45,0,257,258,5,39,0,0,258,259,5,39,0,0,259,260,3,89,44,0,260,261,5,32,0,0,261,262,3,91,45,0,262,263,5,39,0,0,263,291,1,0,0,0,264,265,5,34,0,0,265,266,3,89,44,0,266,267,5,84,0,0,267,268,3,91,45,0,268,269,3,93,46,0,269,270,5,34,0,0,270,291,1,0,0,0,271,272,5,34,0,0,272,273,3,89,44,0,273,274,5,32,0,0,274,275,3,91,45,0,275,276,3,93,46,0,276,277,5,34,0,0,277,291,1,0,0,0,278,279,5,34,0,0,279,280,3,89,44,0,280,281,5,84,0,0,281,282,3,91,45,0,282,283,5,34,0,0,283,291,1,0,0,0,284,285,5,34,0,0,285,286,3,89,44,0,286,287,5,32,0,0,287,288,3,91,45,0,288,289,5,34,0,0,289,291,1,0,0,0,290,241,1,0,0,0,290,264,1,0,0,0,290,271,1,0,0,0,290,278,1,0,0,0,290,284,1,0,0,0,291,76,1,0,0,0,292,293,5,39,0,0,293,294,3,91,45,0,294,295,5,39,0,0,295,301,1,0,0,0,296,297,5,34,0,0,297,298,3,91,45,0,298,299,5,34,0,0,299,301,1,0,0,0,300,292,1,0,0,0,300,296,1,0,0,0,301,78,1,0,0,0,302,304,3,71,35,0,303,302,1,0,0,0,303,304,1,0,0,0,304,306,1,0,0,0,305,307,3,87,43,0,306,305,1,0,0,0,307,308,1,0,0,0,308,306,1,0,0,0,308,309,1,0,0,0,309,317,1,0,0,0,310,314,5,46,0,0,311,313,3,87,43,0,312,311,1,0,0,0,313,316,1,0,0,0,314,312,1,0,0,0,314,315,1,0,0,0,315,318,1,0,0,0,316,314,1,0,0,0,317,310,1,0,0,0,317,318,1,0,0,0,318,328,1,0,0,0,319,321,5,69,0,0,320,322,7,2,0,0,321,320,1,0,0,0,321,322,1,0,0,0,322,324,1,0,0,0,323,325,3,87,43,0,324,323,1,0,0,0,325,326,1,0,0,0,326,324,1,0,0,0,326,327,1,0,0,0,327,329,1,0,0,0,328,319,1,0,0,0,328,329,1,0,0,0,329,339,1,0,0,0,330,331,5,48,0,0,331,332,5,120,0,0,332,334,1,0,0,0,333,335,3,99,49,0,334,333,1,0,0,0,335,336,1,0,0,0,336,334,1,0,0,0,336,337,1,0,0,0,337,339,1,0,0,0,338,303,1,0,0,0,338,330,1,0,0,0,339,80,1,0,0,0,340,342,3,71,35,0,341,340,1,0,0,0,341,342,1,0,0,0,342,344,1,0,0,0,343,345,3,87,43,0,344,343,1,0,0,0,345,346,1,0,0,0,346,344,1,0,0,0,346,347,1,0,0,0,347,357,1,0,0,0,348,349,5,48,0,0,349,350,5,120,0,0,350,352,1,0,0,0,351,353,3,99,49,0,352,351,1,0,0,0,353,354,1,0,0,0,354,352,1,0,0,0,354,355,1,0,0,0,355,357,1,0,0,0,356,341,1,0,0,0,356,348,1,0,0,0,357,82,1,0,0,0,358,363,5,39,0,0,359,362,3,95,47,0,360,362,8,3,0,0,361,359,1,0,0,0,361,360,1,0,0,0,362,365,1,0,0,0,363,361,1,0,0,0,363,364,1,0,0,0,364,366,1,0,0,0,365,363,1,0,0,0,366,377,5,39,0,0,367,372,5,34,0,0,368,371,3,95,47,0,369,371,8,4,0,0,370,368,1,0,0,0,370,369,1,0,0,0,371,374,1,0,0,0,372,370,1,0,0,0,372,373,1,0,0,0,373,375,1,0,0,0,374,372,1,0,0,0,375,377,5,34,0,0,376,358,1,0,0,0,376,367,1,0,0,0,377,84,1,0,0,0,378,380,7,5,0,0,379,378,1,0,0,0,380,381,1,0,0,0,381,379,1,0,0,0,381,382,1,0,0,0,382,383,1,0,0,0,383,384,6,42,0,0,384,86,1,0,0,0,385,386,7,6,0,0,386,88,1,0,0,0,387,388,7,6,0,0,388,389,7,6,0,0,389,390,7,6,0,0,390,391,7,6,0,0,391,396,5,45,0,0,392,393,7,7,0,0,393,397,7,8,0,0,394,395,7,9,0,0,395,397,7,10,0,0,396,392,1,0,0,0,396,394,1,0,0,0,397,398,1,0,0,0,398,405,5,45,0,0,399,400,7,11,0,0,400,406,7,7,0,0,401,402,7,10,0,0,402,406,7,8,0,0,403,404,5,51,0,0,404,406,5,49,0,0,405,399,1,0,0,0,405,401,1,0,0,0,405,403,1,0,0,0,406,90,1,0,0,0,407,408,7,12,0,0,408,412,7,6,0,0,409,410,5,50,0,0,410,412,7,13,0,0,411,407,1,0,0,0,411,409,1,0,0,0,412,413,1,0,0,0,413,414,5,58,0,0,414,415,7,14,0,0,415,416,7,6,0,0,416,429,1,0,0,0,417,418,5,58,0,0,418,419,7,14,0,0,419,420,7,6,0,0,420,427,1,0,0,0,421,423,5,46,0,0,422,424,7,6,0,0,423,422,1,0,0,0,424,425,1,0,0,0,425,423,1,0,0,0,425,426,1,0,0,0,426,428,1,0,0,0,427,421,1,0,0,0,427,428,1,0,0,0,428,430,1,0,0,0,429,417,1,0,0,0,429,430,1,0,0,0,430,92,1,0,0,0,431,447,5,90,0,0,432,439,7,2,0,0,433,435,7,12,0,0,434,433,1,0,0,0,434,435,1,0,0,0,435,436,1,0,0,0,436,440,7,6,0,0,437,438,5,50,0,0,438,440,7,13,0,0,439,434,1,0,0,0,439,437,1,0,0,0,440,444,1,0,0,0,441,442,5,58,0,0,442,443,7,14,0,0,443,445,7,6,0,0,444,441,1,0,0,0,444,445,1,0,0,0,445,447,1,0,0,0,446,431,1,0,0,0,446,432,1,0,0,0,447,94,1,0,0,0,448,451,5,92,0,0,449,452,3,97,48,0,450,452,9,0,0,0,451,449,1,0,0,0,451,450,1,0,0,0,452,96,1,0,0,0,453,454,5,117,0,0,454,455,3,99,49,0,455,456,3,99,49,0,456,457,3,99,49,0,457,458,3,99,49,0,458,98,1,0,0,0,459,460,7,15,0,0,460,100,1,0,0,0,35,0,226,239,290,300,303,308,314,317,321,326,328,336,338,341,346,354,356,361,363,370,372,376,381,396,405,411,425,427,429,434,439,444,446,451,1,0,1,0];h.DecisionsToDFA=h._ATN.decisionToState.map((o,e)=>new Ha(o,e));var Vs=h;import{ATN as zs,ATNDeserializer as op,DFA as np,FailedPredicateException as sp,NoViableAltException as Ui,Parser as ap,ParserATNSimulator as pp,ParserRuleContext as B,PredictionContextCache as cp,RecognitionException as $,Token as lp}from"@browsery/antlr4";var E=class E extends ap{get grammarFileName(){return"OpraFilter.g4"}get literalNames(){return E.literalNames}get symbolicNames(){return E.symbolicNames}get ruleNames(){return E.ruleNames}get serializedATN(){return E._serializedATN}createFailedPredicateException(e,t){return new sp(this,e,t)}constructor(e){super(e),this._interp=new pp(this,E._ATN,E.DecisionsToDFA,new cp)}root(){let e=new $i(this,this._ctx,this.state);this.enterRule(e,0,E.RULE_root);try{this.enterOuterAlt(e,1),this.state=34,this.expression(0),this.state=35,this.match(E.EOF)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}expression(e){e===void 0&&(e=0);let t=this._ctx,r=this.state,i=new Q(this,this._ctx,r),n=i,s=2;this.enterRecursionRule(i,2,E.RULE_expression,e);let p;try{let c;this.enterOuterAlt(i,1);{switch(this.state=48,this._errHandler.sync(this),this._input.LA(1)){case 35:i=new Ki(this,i),this._ctx=i,n=i,this.state=38,i._left=this.comparisonLeft(),this.state=39,i._operator=this.comparisonOperator(),this.state=40,i._right=this.comparisonRight();break;case 1:i=new Bi(this,i),this._ctx=i,n=i,this.state=42,this.match(E.T__0),this.state=43,this.parenthesizedItem(),this.state=44,this.match(E.T__1);break;case 3:case 4:i=new qi(this,i),this._ctx=i,n=i,this.state=46,p=this._input.LA(1),p===3||p===4?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=47,this.expression(1);break;default:throw new Ui(this)}for(this._ctx.stop=this._input.LT(-1),this.state=56,this._errHandler.sync(this),c=this._interp.adaptivePredict(this._input,1,this._ctx);c!==2&&c!==zs.INVALID_ALT_NUMBER;){if(c===1){this._parseListeners!=null&&this.triggerExitRuleEvent(),n=i;{if(i=new Yt(this,new Q(this,t,r)),this.pushNewRecursionContext(i,s,E.RULE_expression),this.state=50,!this.precpred(this._ctx,3))throw this.createFailedPredicateException("this.precpred(this._ctx, 3)");this.state=51,i._op=this.logicalOperator(),this.state=52,this.expression(4)}}this.state=58,this._errHandler.sync(this),c=this._interp.adaptivePredict(this._input,1,this._ctx)}}}catch(c){if(c instanceof $)i.exception=c,this._errHandler.reportError(this,c),this._errHandler.recover(this,c);else throw c}finally{this.unrollRecursionContexts(t)}return i}comparisonLeft(){let e=new br(this,this._ctx,this.state);this.enterRule(e,4,E.RULE_comparisonLeft);try{this.enterOuterAlt(e,1),this.state=59,this.qualifiedIdentifier()}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}comparisonRight(){let e=new Ar(this,this._ctx,this.state);this.enterRule(e,6,E.RULE_comparisonRight);try{switch(this.state=65,this._errHandler.sync(this),this._input.LA(1)){case 10:case 11:case 12:case 13:case 14:case 37:case 38:case 39:case 40:case 42:this.enterOuterAlt(e,1),this.state=61,this.value();break;case 35:this.enterOuterAlt(e,2),this.state=62,this.qualifiedIdentifier();break;case 6:this.enterOuterAlt(e,3),this.state=63,this.externalConstant();break;case 7:this.enterOuterAlt(e,4),this.state=64,this.arrayValue();break;default:throw new Ui(this)}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}parenthesizedItem(){let e=new Dr(this,this._ctx,this.state);this.enterRule(e,8,E.RULE_parenthesizedItem);try{this.enterOuterAlt(e,1),this.state=67,this.expression(0)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}value(){let e=new W(this,this._ctx,this.state);this.enterRule(e,10,E.RULE_value);try{switch(this.state=77,this._errHandler.sync(this),this._input.LA(1)){case 40:e=new Xi(this,e),this.enterOuterAlt(e,1),this.state=69,this.match(E.NUMBER);break;case 13:case 14:e=new Gi(this,e),this.enterOuterAlt(e,2),this.state=70,this.infinity();break;case 10:case 11:e=new Qi(this,e),this.enterOuterAlt(e,3),this.state=71,this.boolean_();break;case 12:e=new zi(this,e),this.enterOuterAlt(e,4),this.state=72,this.null_();break;case 38:e=new Ji(this,e),this.enterOuterAlt(e,5),this.state=73,this.match(E.DATETIME);break;case 37:e=new Yi(this,e),this.enterOuterAlt(e,6),this.state=74,this.match(E.DATE);break;case 39:e=new Vi(this,e),this.enterOuterAlt(e,7),this.state=75,this.match(E.TIME);break;case 42:e=new Wi(this,e),this.enterOuterAlt(e,8),this.state=76,this.match(E.STRING);break;default:throw new Ui(this)}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}qualifiedIdentifier(){let e=new Gt(this,this._ctx,this.state);this.enterRule(e,12,E.RULE_qualifiedIdentifier);try{let t;this.enterOuterAlt(e,1);{for(this.state=84,this._errHandler.sync(this),t=this._interp.adaptivePredict(this._input,4,this._ctx);t!==2&&t!==zs.INVALID_ALT_NUMBER;)t===1&&(this.state=79,this.identifier(),this.state=80,this.match(E.T__4)),this.state=86,this._errHandler.sync(this),t=this._interp.adaptivePredict(this._input,4,this._ctx);this.state=87,this.identifier()}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}externalConstant(){let e=new Nr(this,this._ctx,this.state);this.enterRule(e,14,E.RULE_externalConstant);try{this.enterOuterAlt(e,1),this.state=89,this.match(E.T__5),this.state=90,this.identifier()}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}identifier(){let e=new Ze(this,this._ctx,this.state);this.enterRule(e,16,E.RULE_identifier);try{this.enterOuterAlt(e,1),this.state=92,this.match(E.IDENTIFIER)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}arrayValue(){let e=new Sr(this,this._ctx,this.state);this.enterRule(e,18,E.RULE_arrayValue);let t;try{this.enterOuterAlt(e,1);{for(this.state=94,this.match(E.T__6),this.state=95,this.value(),this.state=100,this._errHandler.sync(this),t=this._input.LA(1);t===8;)this.state=96,this.match(E.T__7),this.state=97,this.value(),this.state=102,this._errHandler.sync(this),t=this._input.LA(1);this.state=103,this.match(E.T__8)}}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}boolean_(){let e=new vr(this,this._ctx,this.state);this.enterRule(e,20,E.RULE_boolean);let t;try{this.enterOuterAlt(e,1),this.state=105,t=this._input.LA(1),t===10||t===11?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}null_(){let e=new Mr(this,this._ctx,this.state);this.enterRule(e,22,E.RULE_null);try{this.enterOuterAlt(e,1),this.state=107,this.match(E.T__11)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}infinity(){let e=new Fr(this,this._ctx,this.state);this.enterRule(e,24,E.RULE_infinity);let t;try{this.enterOuterAlt(e,1),this.state=109,t=this._input.LA(1),t===13||t===14?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}arithmeticOperator(){let e=new Zi(this,this._ctx,this.state);this.enterRule(e,26,E.RULE_arithmeticOperator);let t;try{this.enterOuterAlt(e,1),this.state=111,t=this._input.LA(1),(t&-32)===0&&(1<<t&491520)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}comparisonOperator(){let e=new Ir(this,this._ctx,this.state);this.enterRule(e,28,E.RULE_comparisonOperator);let t;try{this.enterOuterAlt(e,1),this.state=113,t=this._input.LA(1),(t&-32)===0&&(1<<t&2146959360)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}logicalOperator(){let e=new Pr(this,this._ctx,this.state);this.enterRule(e,30,E.RULE_logicalOperator);let t;try{this.enterOuterAlt(e,1),this.state=115,t=this._input.LA(1),(t-31&-32)===0&&(1<<t-31&15)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}polarityOperator(){let e=new Hi(this,this._ctx,this.state);this.enterRule(e,32,E.RULE_polarityOperator);try{this.enterOuterAlt(e,1),this.state=117,this.match(E.POLAR_OP)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}sempred(e,t,r){switch(t){case 1:return this.expression_sempred(e,r)}return!0}expression_sempred(e,t){switch(t){case 0:return this.precpred(this._ctx,3)}return!0}static get _ATN(){return E.__ATN||(E.__ATN=new op().deserialize(E._serializedATN)),E.__ATN}};a(E,"OpraFilterParser");var f=E;f.T__0=1;f.T__1=2;f.T__2=3;f.T__3=4;f.T__4=5;f.T__5=6;f.T__6=7;f.T__7=8;f.T__8=9;f.T__9=10;f.T__10=11;f.T__11=12;f.T__12=13;f.T__13=14;f.T__14=15;f.T__15=16;f.T__16=17;f.T__17=18;f.T__18=19;f.T__19=20;f.T__20=21;f.T__21=22;f.T__22=23;f.T__23=24;f.T__24=25;f.T__25=26;f.T__26=27;f.T__27=28;f.T__28=29;f.T__29=30;f.T__30=31;f.T__31=32;f.T__32=33;f.T__33=34;f.IDENTIFIER=35;f.POLAR_OP=36;f.DATE=37;f.DATETIME=38;f.TIME=39;f.NUMBER=40;f.INTEGER=41;f.STRING=42;f.WHITESPACE=43;f.EOF=lp.EOF;f.RULE_root=0;f.RULE_expression=1;f.RULE_comparisonLeft=2;f.RULE_comparisonRight=3;f.RULE_parenthesizedItem=4;f.RULE_value=5;f.RULE_qualifiedIdentifier=6;f.RULE_externalConstant=7;f.RULE_identifier=8;f.RULE_arrayValue=9;f.RULE_boolean=10;f.RULE_null=11;f.RULE_infinity=12;f.RULE_arithmeticOperator=13;f.RULE_comparisonOperator=14;f.RULE_logicalOperator=15;f.RULE_polarityOperator=16;f.literalNames=[null,"'('","')'","'not'","'!'","'.'","'@'","'['","','","']'","'true'","'false'","'null'","'Infinity'","'infinity'","'+'","'-'","'*'","'/'","'<='","'<'","'>'","'>='","'='","'!='","'in'","'!in'","'like'","'!like'","'ilike'","'!ilike'","'and'","'or'","'&&'","'||'"];f.symbolicNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE"];f.ruleNames=["root","expression","comparisonLeft","comparisonRight","parenthesizedItem","value","qualifiedIdentifier","externalConstant","identifier","arrayValue","boolean","null","infinity","arithmeticOperator","comparisonOperator","logicalOperator","polarityOperator"];f._serializedATN=[4,1,43,120,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,49,8,1,1,1,1,1,1,1,1,1,5,1,55,8,1,10,1,12,1,58,9,1,1,2,1,2,1,3,1,3,1,3,1,3,3,3,66,8,3,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,3,5,78,8,5,1,6,1,6,1,6,5,6,83,8,6,10,6,12,6,86,9,6,1,6,1,6,1,7,1,7,1,7,1,8,1,8,1,9,1,9,1,9,1,9,5,9,99,8,9,10,9,12,9,102,9,9,1,9,1,9,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,16,0,1,2,17,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,0,6,1,0,3,4,1,0,10,11,1,0,13,14,1,0,15,18,1,0,19,30,1,0,31,34,117,0,34,1,0,0,0,2,48,1,0,0,0,4,59,1,0,0,0,6,65,1,0,0,0,8,67,1,0,0,0,10,77,1,0,0,0,12,84,1,0,0,0,14,89,1,0,0,0,16,92,1,0,0,0,18,94,1,0,0,0,20,105,1,0,0,0,22,107,1,0,0,0,24,109,1,0,0,0,26,111,1,0,0,0,28,113,1,0,0,0,30,115,1,0,0,0,32,117,1,0,0,0,34,35,3,2,1,0,35,36,5,0,0,1,36,1,1,0,0,0,37,38,6,1,-1,0,38,39,3,4,2,0,39,40,3,28,14,0,40,41,3,6,3,0,41,49,1,0,0,0,42,43,5,1,0,0,43,44,3,8,4,0,44,45,5,2,0,0,45,49,1,0,0,0,46,47,7,0,0,0,47,49,3,2,1,1,48,37,1,0,0,0,48,42,1,0,0,0,48,46,1,0,0,0,49,56,1,0,0,0,50,51,10,3,0,0,51,52,3,30,15,0,52,53,3,2,1,4,53,55,1,0,0,0,54,50,1,0,0,0,55,58,1,0,0,0,56,54,1,0,0,0,56,57,1,0,0,0,57,3,1,0,0,0,58,56,1,0,0,0,59,60,3,12,6,0,60,5,1,0,0,0,61,66,3,10,5,0,62,66,3,12,6,0,63,66,3,14,7,0,64,66,3,18,9,0,65,61,1,0,0,0,65,62,1,0,0,0,65,63,1,0,0,0,65,64,1,0,0,0,66,7,1,0,0,0,67,68,3,2,1,0,68,9,1,0,0,0,69,78,5,40,0,0,70,78,3,24,12,0,71,78,3,20,10,0,72,78,3,22,11,0,73,78,5,38,0,0,74,78,5,37,0,0,75,78,5,39,0,0,76,78,5,42,0,0,77,69,1,0,0,0,77,70,1,0,0,0,77,71,1,0,0,0,77,72,1,0,0,0,77,73,1,0,0,0,77,74,1,0,0,0,77,75,1,0,0,0,77,76,1,0,0,0,78,11,1,0,0,0,79,80,3,16,8,0,80,81,5,5,0,0,81,83,1,0,0,0,82,79,1,0,0,0,83,86,1,0,0,0,84,82,1,0,0,0,84,85,1,0,0,0,85,87,1,0,0,0,86,84,1,0,0,0,87,88,3,16,8,0,88,13,1,0,0,0,89,90,5,6,0,0,90,91,3,16,8,0,91,15,1,0,0,0,92,93,5,35,0,0,93,17,1,0,0,0,94,95,5,7,0,0,95,100,3,10,5,0,96,97,5,8,0,0,97,99,3,10,5,0,98,96,1,0,0,0,99,102,1,0,0,0,100,98,1,0,0,0,100,101,1,0,0,0,101,103,1,0,0,0,102,100,1,0,0,0,103,104,5,9,0,0,104,19,1,0,0,0,105,106,7,1,0,0,106,21,1,0,0,0,107,108,5,12,0,0,108,23,1,0,0,0,109,110,7,2,0,0,110,25,1,0,0,0,111,112,7,3,0,0,112,27,1,0,0,0,113,114,7,4,0,0,114,29,1,0,0,0,115,116,7,5,0,0,116,31,1,0,0,0,117,118,5,36,0,0,118,33,1,0,0,0,6,48,56,65,77,84,100];f.DecisionsToDFA=f._ATN.decisionToState.map((o,e)=>new np(o,e));var Js=f,eo=class eo extends B{constructor(e,t,r){super(t,r),this.parser=e}expression(){return this.getTypedRuleContext(Q,0)}EOF(){return this.getToken(f.EOF,0)}get ruleIndex(){return f.RULE_root}enterRule(e){e.enterRoot&&e.enterRoot(this)}exitRule(e){e.exitRoot&&e.exitRoot(this)}accept(e){return e.visitRoot?e.visitRoot(this):e.visitChildren(this)}};a(eo,"RootContext");var $i=eo,to=class to extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_expression}copyFrom(e){super.copyFrom(e)}};a(to,"ExpressionContext");var Q=to,ro=class ro extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}parenthesizedItem(){return this.getTypedRuleContext(Dr,0)}enterRule(e){e.enterParenthesizedExpression&&e.enterParenthesizedExpression(this)}exitRule(e){e.exitParenthesizedExpression&&e.exitParenthesizedExpression(this)}accept(e){return e.visitParenthesizedExpression?e.visitParenthesizedExpression(this):e.visitChildren(this)}};a(ro,"ParenthesizedExpressionContext");var Bi=ro,io=class io extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}expression(){return this.getTypedRuleContext(Q,0)}enterRule(e){e.enterNegativeExpression&&e.enterNegativeExpression(this)}exitRule(e){e.exitNegativeExpression&&e.exitNegativeExpression(this)}accept(e){return e.visitNegativeExpression?e.visitNegativeExpression(this):e.visitChildren(this)}};a(io,"NegativeExpressionContext");var qi=io,oo=class oo extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}comparisonLeft(){return this.getTypedRuleContext(br,0)}comparisonOperator(){return this.getTypedRuleContext(Ir,0)}comparisonRight(){return this.getTypedRuleContext(Ar,0)}enterRule(e){e.enterComparisonExpression&&e.enterComparisonExpression(this)}exitRule(e){e.exitComparisonExpression&&e.exitComparisonExpression(this)}accept(e){return e.visitComparisonExpression?e.visitComparisonExpression(this):e.visitChildren(this)}};a(oo,"ComparisonExpressionContext");var Ki=oo,no=class no extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}expression_list(){return this.getTypedRuleContexts(Q)}expression(e){return this.getTypedRuleContext(Q,e)}logicalOperator(){return this.getTypedRuleContext(Pr,0)}enterRule(e){e.enterLogicalExpression&&e.enterLogicalExpression(this)}exitRule(e){e.exitLogicalExpression&&e.exitLogicalExpression(this)}accept(e){return e.visitLogicalExpression?e.visitLogicalExpression(this):e.visitChildren(this)}};a(no,"LogicalExpressionContext");var Yt=no,so=class so extends B{constructor(e,t,r){super(t,r),this.parser=e}qualifiedIdentifier(){return this.getTypedRuleContext(Gt,0)}get ruleIndex(){return f.RULE_comparisonLeft}enterRule(e){e.enterComparisonLeft&&e.enterComparisonLeft(this)}exitRule(e){e.exitComparisonLeft&&e.exitComparisonLeft(this)}accept(e){return e.visitComparisonLeft?e.visitComparisonLeft(this):e.visitChildren(this)}};a(so,"ComparisonLeftContext");var br=so,ao=class ao extends B{constructor(e,t,r){super(t,r),this.parser=e}value(){return this.getTypedRuleContext(W,0)}qualifiedIdentifier(){return this.getTypedRuleContext(Gt,0)}externalConstant(){return this.getTypedRuleContext(Nr,0)}arrayValue(){return this.getTypedRuleContext(Sr,0)}get ruleIndex(){return f.RULE_comparisonRight}enterRule(e){e.enterComparisonRight&&e.enterComparisonRight(this)}exitRule(e){e.exitComparisonRight&&e.exitComparisonRight(this)}accept(e){return e.visitComparisonRight?e.visitComparisonRight(this):e.visitChildren(this)}};a(ao,"ComparisonRightContext");var Ar=ao,po=class po extends B{constructor(e,t,r){super(t,r),this.parser=e}expression(){return this.getTypedRuleContext(Q,0)}get ruleIndex(){return f.RULE_parenthesizedItem}enterRule(e){e.enterParenthesizedItem&&e.enterParenthesizedItem(this)}exitRule(e){e.exitParenthesizedItem&&e.exitParenthesizedItem(this)}accept(e){return e.visitParenthesizedItem?e.visitParenthesizedItem(this):e.visitChildren(this)}};a(po,"ParenthesizedItemContext");var Dr=po,co=class co extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_value}copyFrom(e){super.copyFrom(e)}};a(co,"ValueContext");var W=co,lo=class lo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}TIME(){return this.getToken(f.TIME,0)}enterRule(e){e.enterTimeLiteral&&e.enterTimeLiteral(this)}exitRule(e){e.exitTimeLiteral&&e.exitTimeLiteral(this)}accept(e){return e.visitTimeLiteral?e.visitTimeLiteral(this):e.visitChildren(this)}};a(lo,"TimeLiteralContext");var Vi=lo,fo=class fo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}null_(){return this.getTypedRuleContext(Mr,0)}enterRule(e){e.enterNullLiteral&&e.enterNullLiteral(this)}exitRule(e){e.exitNullLiteral&&e.exitNullLiteral(this)}accept(e){return e.visitNullLiteral?e.visitNullLiteral(this):e.visitChildren(this)}};a(fo,"NullLiteralContext");var zi=fo,mo=class mo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}DATETIME(){return this.getToken(f.DATETIME,0)}enterRule(e){e.enterDateTimeLiteral&&e.enterDateTimeLiteral(this)}exitRule(e){e.exitDateTimeLiteral&&e.exitDateTimeLiteral(this)}accept(e){return e.visitDateTimeLiteral?e.visitDateTimeLiteral(this):e.visitChildren(this)}};a(mo,"DateTimeLiteralContext");var Ji=mo,uo=class uo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}STRING(){return this.getToken(f.STRING,0)}enterRule(e){e.enterStringLiteral&&e.enterStringLiteral(this)}exitRule(e){e.exitStringLiteral&&e.exitStringLiteral(this)}accept(e){return e.visitStringLiteral?e.visitStringLiteral(this):e.visitChildren(this)}};a(uo,"StringLiteralContext");var Wi=uo,ho=class ho extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(f.DATE,0)}enterRule(e){e.enterDateLiteral&&e.enterDateLiteral(this)}exitRule(e){e.exitDateLiteral&&e.exitDateLiteral(this)}accept(e){return e.visitDateLiteral?e.visitDateLiteral(this):e.visitChildren(this)}};a(ho,"DateLiteralContext");var Yi=ho,yo=class yo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}infinity(){return this.getTypedRuleContext(Fr,0)}enterRule(e){e.enterInfinityLiteral&&e.enterInfinityLiteral(this)}exitRule(e){e.exitInfinityLiteral&&e.exitInfinityLiteral(this)}accept(e){return e.visitInfinityLiteral?e.visitInfinityLiteral(this):e.visitChildren(this)}};a(yo,"InfinityLiteralContext");var Gi=yo,To=class To extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}boolean_(){return this.getTypedRuleContext(vr,0)}enterRule(e){e.enterBooleanLiteral&&e.enterBooleanLiteral(this)}exitRule(e){e.exitBooleanLiteral&&e.exitBooleanLiteral(this)}accept(e){return e.visitBooleanLiteral?e.visitBooleanLiteral(this):e.visitChildren(this)}};a(To,"BooleanLiteralContext");var Qi=To,Eo=class Eo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}NUMBER(){return this.getToken(f.NUMBER,0)}enterRule(e){e.enterNumberLiteral&&e.enterNumberLiteral(this)}exitRule(e){e.exitNumberLiteral&&e.exitNumberLiteral(this)}accept(e){return e.visitNumberLiteral?e.visitNumberLiteral(this):e.visitChildren(this)}};a(Eo,"NumberLiteralContext");var Xi=Eo,_o=class _o extends B{constructor(e,t,r){super(t,r),this.parser=e}identifier_list(){return this.getTypedRuleContexts(Ze)}identifier(e){return this.getTypedRuleContext(Ze,e)}get ruleIndex(){return f.RULE_qualifiedIdentifier}enterRule(e){e.enterQualifiedIdentifier&&e.enterQualifiedIdentifier(this)}exitRule(e){e.exitQualifiedIdentifier&&e.exitQualifiedIdentifier(this)}accept(e){return e.visitQualifiedIdentifier?e.visitQualifiedIdentifier(this):e.visitChildren(this)}};a(_o,"QualifiedIdentifierContext");var Gt=_o,xo=class xo extends B{constructor(e,t,r){super(t,r),this.parser=e}identifier(){return this.getTypedRuleContext(Ze,0)}get ruleIndex(){return f.RULE_externalConstant}enterRule(e){e.enterExternalConstant&&e.enterExternalConstant(this)}exitRule(e){e.exitExternalConstant&&e.exitExternalConstant(this)}accept(e){return e.visitExternalConstant?e.visitExternalConstant(this):e.visitChildren(this)}};a(xo,"ExternalConstantContext");var Nr=xo,Oo=class Oo extends B{constructor(e,t,r){super(t,r),this.parser=e}IDENTIFIER(){return this.getToken(f.IDENTIFIER,0)}get ruleIndex(){return f.RULE_identifier}enterRule(e){e.enterIdentifier&&e.enterIdentifier(this)}exitRule(e){e.exitIdentifier&&e.exitIdentifier(this)}accept(e){return e.visitIdentifier?e.visitIdentifier(this):e.visitChildren(this)}};a(Oo,"IdentifierContext");var Ze=Oo,go=class go extends B{constructor(e,t,r){super(t,r),this.parser=e}value_list(){return this.getTypedRuleContexts(W)}value(e){return this.getTypedRuleContext(W,e)}get ruleIndex(){return f.RULE_arrayValue}enterRule(e){e.enterArrayValue&&e.enterArrayValue(this)}exitRule(e){e.exitArrayValue&&e.exitArrayValue(this)}accept(e){return e.visitArrayValue?e.visitArrayValue(this):e.visitChildren(this)}};a(go,"ArrayValueContext");var Sr=go,wo=class wo extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_boolean}enterRule(e){e.enterBoolean&&e.enterBoolean(this)}exitRule(e){e.exitBoolean&&e.exitBoolean(this)}accept(e){return e.visitBoolean?e.visitBoolean(this):e.visitChildren(this)}};a(wo,"BooleanContext");var vr=wo,Ro=class Ro extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_null}enterRule(e){e.enterNull&&e.enterNull(this)}exitRule(e){e.exitNull&&e.exitNull(this)}accept(e){return e.visitNull?e.visitNull(this):e.visitChildren(this)}};a(Ro,"NullContext");var Mr=Ro,bo=class bo extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_infinity}enterRule(e){e.enterInfinity&&e.enterInfinity(this)}exitRule(e){e.exitInfinity&&e.exitInfinity(this)}accept(e){return e.visitInfinity?e.visitInfinity(this):e.visitChildren(this)}};a(bo,"InfinityContext");var Fr=bo,Ao=class Ao extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_arithmeticOperator}enterRule(e){e.enterArithmeticOperator&&e.enterArithmeticOperator(this)}exitRule(e){e.exitArithmeticOperator&&e.exitArithmeticOperator(this)}accept(e){return e.visitArithmeticOperator?e.visitArithmeticOperator(this):e.visitChildren(this)}};a(Ao,"ArithmeticOperatorContext");var Zi=Ao,Do=class Do extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_comparisonOperator}enterRule(e){e.enterComparisonOperator&&e.enterComparisonOperator(this)}exitRule(e){e.exitComparisonOperator&&e.exitComparisonOperator(this)}accept(e){return e.visitComparisonOperator?e.visitComparisonOperator(this):e.visitChildren(this)}};a(Do,"ComparisonOperatorContext");var Ir=Do,No=class No extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_logicalOperator}enterRule(e){e.enterLogicalOperator&&e.enterLogicalOperator(this)}exitRule(e){e.exitLogicalOperator&&e.exitLogicalOperator(this)}accept(e){return e.visitLogicalOperator?e.visitLogicalOperator(this):e.visitChildren(this)}};a(No,"LogicalOperatorContext");var Pr=No,So=class So extends B{constructor(e,t,r){super(t,r),this.parser=e}POLAR_OP(){return this.getToken(f.POLAR_OP,0)}get ruleIndex(){return f.RULE_polarityOperator}enterRule(e){e.enterPolarityOperator&&e.enterPolarityOperator(this)}exitRule(e){e.exitPolarityOperator&&e.exitPolarityOperator(this)}accept(e){return e.visitPolarityOperator?e.visitPolarityOperator(this):e.visitChildren(this)}};a(So,"PolarityOperatorContext");var Hi=So;import{ParseTreeVisitor as fp}from"@browsery/antlr4";var vo=class vo extends M{constructor(e){super(""+e)}toString(){return"@"+super.toString()}};a(vo,"ExternalConstant");var Lr=vo;var Mo=class Mo extends fp{constructor(e){super(),this._timeZone=e==null?void 0:e.timeZone}visitChildren(e){let t=super.visitChildren(e);return Array.isArray(t)&&t.length<2?t[0]:t??e.getText()}defaultResult(){}visitRoot(e){return this.visit(e.expression())}visitParenthesizedExpression(e){let t=this.visit(e.parenthesizedItem());return new xe(t)}visitParenthesizedItem(e){return this.visit(e.expression())}visitNegativeExpression(e){let t=this.visit(e.expression());return new zt(t)}visitComparisonExpression(e){return new le({op:e.comparisonOperator().getText(),left:this.visit(e.comparisonLeft()),right:this.visit(e.comparisonRight())})}visitLogicalExpression(e){let t=[],r=a((i,n)=>{for(let s of i){if(s instanceof Yt&&s.logicalOperator().getText()===n){r(s.expression_list(),s.logicalOperator().getText());continue}let p=this.visit(s);t.push(p)}},"wrapChildren");return r(e.expression_list(),e.logicalOperator().getText()),new fe({op:e.logicalOperator().getText(),items:t})}visitQualifiedIdentifier(e){return new X(e.getText())}visitExternalConstant(e){return new Lr(e.identifier().getText())}visitNullLiteral(){return new Ue}visitBooleanLiteral(e){return new Ce(e.getText()==="true")}visitNumberLiteral(e){return new Oe(e.getText())}visitStringLiteral(e){return new $e(Jt(e.getText()))}visitInfinityLiteral(){return new Oe(1/0)}visitDateLiteral(e){return new be(Jt(e.getText()))}visitDateTimeLiteral(e){return new Wt(Jt(e.getText()))}visitTimeLiteral(e){return new Be(Jt(e.getText()))}visitArrayValue(e){return new _e(e.value_list().map(t=>this.visit(t)))}};a(Mo,"FilterTreeVisitor");var Qt=Mo;import{ErrorListener as mp}from"@browsery/antlr4";var Fo=class Fo extends mp{constructor(e){super(),this.errors=e}syntaxError(e,t,r,i,n,s){this.errors.push(new wr(n,{recognizer:e,offendingSymbol:t,line:r,column:i,e:s}))}};a(Fo,"OpraErrorListener");var Xt=Fo;function Io(o,e){let t=new up(o),r=new Vs(t),i=new dp(r),n=new Js(i);n.buildParseTrees=!0;let s=[],p=new Xt(s);r.removeErrorListeners(),r.addErrorListener(p),n.removeErrorListeners(),n.addErrorListener(p);let c=n.root();if(s.length){let l=[];for(let g of s)l.push(g.message+(o.includes(`
|
|
7
|
+
`):void 0},!0)}init(e){this.message=(e==null?void 0:e.message)||this.constructor.name,this.severity=(e==null?void 0:e.severity)||"error",e&&(this.system=e.system,this.code=e.code,this.details=e.details)}initString(e){this.init({message:String(e||"")||this.constructor.name,severity:"error",code:this.constructor.name})}initError(e){this.init({message:e.message,severity:e.severity||"error",code:e.code||e.constructor.name})}};a(Zr,"OpraException");var Ee=Zr;var Hr=class Hr extends Ee{constructor(e,t,r){super(e,t instanceof Error?t:void 0),this.status=(typeof t=="number"?t:Number(r))||500}setStatus(e){return this.status=e,this}initError(e){typeof e.status=="number"?this.status=e.status:typeof e.getStatus=="function"&&(this.status=e.getStatus()),super.initError(e)}};a(Hr,"OpraHttpError");var N=Hr;var ei=class ei extends N{constructor(){super(...arguments),this.status=400}init(e){super.init({message:"Bad request",code:"BAD_REQUEST",...e})}};a(ei,"BadRequestError");var gs=ei;var ti=class ti extends N{constructor(){super(...arguments),this.status=409}init(e){super.init({message:"Conflict",code:"CONFLICT",...e})}};a(ti,"ConflictError");var ws=ti;var ri=class ri extends N{constructor(){super(...arguments),this.status=424}init(e){super.init({message:"The request failed due to failure of a previous request",code:"FAILED_DEPENDENCY",...e})}};a(ri,"FailedDependencyError");var Rs=ri;var bs;(function(o){o.X_Opra_Version="X-Opra-Version",o.X_Total_Count="X-Total-Count",o.WWW_Authenticate="WWW-Authenticate",o.Authorization="Authorization",o.Proxy_Authenticate="Proxy-Authenticate",o.Proxy_Authorization="Proxy-Authorization",o.Age="Age",o.Cache_Control="Cache-Control",o.Clear_Site_Data="Clear-Site-Data",o.Expires="Expires",o.Pragma="Pragma",o.Last_Modified="Last-Modified",o.ETag="ETag",o.If_Match="If-Match",o.If_None_Match="If-None-Match",o.If_Modified_Since="If-Modified-Since",o.If_Unmodified_Since="If-Unmodified-Since",o.Vary="Vary",o.Connection="Connection",o.Keep_Alive="Keep-Alive",o.Accept="Accept",o.Accept_Encoding="Accept-Encoding",o.Accept_Language="Accept-Language",o.Expect="Expect",o.Cookie="Cookie",o.Set_Cookie="Set-Cookie",o.Access_Control_Allow_Origin="Access-Control-Allow-Origin",o.Access_Control_Allow_Credentials="Access-Control-Allow-Credentials",o.Access_Control_Allow_Headers="Access-Control-Allow-Headers",o.Access_Control_Allow_Methods="Access-Control-Allow-Methods",o.Access_Control_Expose_Headers="Access-Control-Expose-Headers",o.Access_Control_Max_Age="Access-Control-Max-Age",o.Access_Control_Request_Headers="Access-Control-Request-Headers",o.Access_Control_Request_Method="Access-Control-Request-Method",o.Origin="Origin",o.Timing_Allow_Origin="Timing-Allow-Origin",o.Content_Disposition="Content-Disposition",o.Content_ID="Content-ID",o.Content_Length="Content-Length",o.Content_Type="Content-Type",o.Content_Transfer_Encoding="Content-Transfer-Encoding",o.Content_Encoding="Content-Encoding",o.Content_Language="Content-Language",o.Content_Location="Content-Location",o.Forwarded="Forwarded",o.X_Forwarded_For="X-Forwarded-For",o.X_Forwarded_Host="X-Forwarded-Host",o.X_Forwarded_Proto="X-Forwarded-Proto",o.Via="Via",o.Location="Location",o.From="From",o.Host="Host",o.Referer="Referer",o.Referrer_Policy="Referrer-Policy",o.User_Agent="User-Agent",o.Allow="Allow",o.Server="Server",o.Accept_Ranges="Accept-Ranges",o.Range="Range",o.If_Range="If-Range",o.Content_Range="Content-Range",o.Cross_Origin_Embedder_Policy="Cross-Origin-Embedder-Policy",o.Cross_Origin_Opener_Policy="Cross-Origin-Opener-Policy",o.Cross_Origin_Resource_Policy="Cross-Origin-Resource-Policy",o.Content_Security_Policy="Content-Security-Policy",o.Content_Security_Policy_Report_Only="Content-Security-Policy-Report-Only",o.Expect_CT="Expect-CT",o.Feature_Policy="Feature-Policy",o.Strict_Transport_Security="Strict-Transport-Security",o.Upgrade="Upgrade",o.Upgrade_Insecure_Requests="Upgrade-Insecure-Requests",o.X_Content_Type_Options="X-Content-Type-Options",o.X_Download_Options="X-Download-Options",o.X_Frame_Options="X-Frame-Options",o.X_Permitted_Cross_Domain_Policies="X-Permitted-Cross-Domain-Policies",o.X_Powered_By="X-Powered-By",o.X_XSS_Protection="X-XSS-Protection",o.Transfer_Encoding="Transfer-Encoding",o.TE="TE",o.Trailer="Trailer",o.Sec_WebSocket_Key="Sec-WebSocket-Key",o.Sec_WebSocket_Extensions="Sec-WebSocket-Extensions",o.Sec_WebSocket_Accept="Sec-WebSocket-Accept",o.Sec_WebSocket_Protocol="Sec-WebSocket-Protocol",o.Sec_WebSocket_Version="Sec-WebSocket-Version",o.Date="Date",o.Retry_After="Retry-After",o.Server_Timing="Server-Timing",o.X_DNS_Prefetch_Control="X-DNS-Prefetch-Control",o.Max_Forwards="Max-Forwards"})(bs||(bs={}));var w;(function(o){o[o.CONTINUE=100]="CONTINUE",o[o.SWITCHING_PROTOCOLS=101]="SWITCHING_PROTOCOLS",o[o.PROCESSING=102]="PROCESSING",o[o.EARLYHINTS=103]="EARLYHINTS",o[o.OK=200]="OK",o[o.CREATED=201]="CREATED",o[o.ACCEPTED=202]="ACCEPTED",o[o.NON_AUTHORITATIVE_INFORMATION=203]="NON_AUTHORITATIVE_INFORMATION",o[o.NO_CONTENT=204]="NO_CONTENT",o[o.RESET_CONTENT=205]="RESET_CONTENT",o[o.PARTIAL_CONTENT=206]="PARTIAL_CONTENT",o[o.AMBIGUOUS=300]="AMBIGUOUS",o[o.MOVED_PERMANENTLY=301]="MOVED_PERMANENTLY",o[o.FOUND=302]="FOUND",o[o.SEE_OTHER=303]="SEE_OTHER",o[o.NOT_MODIFIED=304]="NOT_MODIFIED",o[o.TEMPORARY_REDIRECT=307]="TEMPORARY_REDIRECT",o[o.PERMANENT_REDIRECT=308]="PERMANENT_REDIRECT",o[o.BAD_REQUEST=400]="BAD_REQUEST",o[o.UNAUTHORIZED=401]="UNAUTHORIZED",o[o.PAYMENT_REQUIRED=402]="PAYMENT_REQUIRED",o[o.FORBIDDEN=403]="FORBIDDEN",o[o.NOT_FOUND=404]="NOT_FOUND",o[o.METHOD_NOT_ALLOWED=405]="METHOD_NOT_ALLOWED",o[o.NOT_ACCEPTABLE=406]="NOT_ACCEPTABLE",o[o.PROXY_AUTHENTICATION_REQUIRED=407]="PROXY_AUTHENTICATION_REQUIRED",o[o.REQUEST_TIMEOUT=408]="REQUEST_TIMEOUT",o[o.CONFLICT=409]="CONFLICT",o[o.GONE=410]="GONE",o[o.LENGTH_REQUIRED=411]="LENGTH_REQUIRED",o[o.PRECONDITION_FAILED=412]="PRECONDITION_FAILED",o[o.PAYLOAD_TOO_LARGE=413]="PAYLOAD_TOO_LARGE",o[o.URI_TOO_LONG=414]="URI_TOO_LONG",o[o.UNSUPPORTED_MEDIA_TYPE=415]="UNSUPPORTED_MEDIA_TYPE",o[o.REQUESTED_RANGE_NOT_SATISFIABLE=416]="REQUESTED_RANGE_NOT_SATISFIABLE",o[o.EXPECTATION_FAILED=417]="EXPECTATION_FAILED",o[o.I_AM_A_TEAPOT=418]="I_AM_A_TEAPOT",o[o.MISDIRECTED_REQUEST=421]="MISDIRECTED_REQUEST",o[o.UNPROCESSABLE_ENTITY=422]="UNPROCESSABLE_ENTITY",o[o.LOCKED=423]="LOCKED",o[o.FAILED_DEPENDENCY=424]="FAILED_DEPENDENCY",o[o.TOO_EARLY=425]="TOO_EARLY",o[o.UPGRADE_REQUIRED=426]="UPGRADE_REQUIRED",o[o.PRECONDITION_REQUIRED=428]="PRECONDITION_REQUIRED",o[o.TOO_MANY_REQUESTS=429]="TOO_MANY_REQUESTS",o[o.INTERNAL_SERVER_ERROR=500]="INTERNAL_SERVER_ERROR",o[o.NOT_IMPLEMENTED=501]="NOT_IMPLEMENTED",o[o.BAD_GATEWAY=502]="BAD_GATEWAY",o[o.SERVICE_UNAVAILABLE=503]="SERVICE_UNAVAILABLE",o[o.GATEWAY_TIMEOUT=504]="GATEWAY_TIMEOUT",o[o.HTTP_VERSION_NOT_SUPPORTED=505]="HTTP_VERSION_NOT_SUPPORTED",o[o.VARIANT_ALSO_NEGOTIATES=506]="VARIANT_ALSO_NEGOTIATES",o[o.INSUFFICIENT_STORAGE=507]="INSUFFICIENT_STORAGE",o[o.LOOP_DETECTED=508]="LOOP_DETECTED",o[o.NOT_EXTENDED=510]="NOT_EXTENDED",o[o.NETWORK_AUTHENTICATION_REQUIRED=511]="NETWORK_AUTHENTICATION_REQUIRED"})(w||(w={}));var mf={100:"Continue",101:"Switching Protocols",102:"Processing",103:"Early Hints",200:"OK",201:"Created",202:"Accepted",203:"Non-Authoritative Information",204:"No Content",205:"Reset Content",206:"Partial Content",207:"Multi-Status",208:"Already Reported",226:"IM Used",300:"Multiple Choices",301:"Moved Permanently",302:"Found",303:"See Other",304:"Not Modified",305:"Use Proxy",307:"Temporary Redirect",308:"Permanent Redirect",400:"Bad Request",401:"Unauthorized",402:"Payment Required",403:"Forbidden",404:"Not Found",405:"Method Not Allowed",406:"Not Acceptable",407:"Proxy Authentication Required",408:"Request Timeout",409:"Conflict",410:"Gone",411:"Length Required",412:"Precondition Failed",413:"Payload Too Large",414:"URI Too Long",415:"Unsupported Media Type",416:"Range Not Satisfiable",417:"Expectation Failed",418:"I'm a Teapot",421:"Misdirected Request",422:"Unprocessable Entity",423:"Locked",424:"Failed Dependency",425:"Too Early",426:"Upgrade Required",428:"Precondition Required",429:"Too Many Requests",431:"Request Header Fields Too Large",451:"Unavailable For Legal Reasons",500:"Internal Server Error",501:"Not Implemented",502:"Bad Gateway",503:"Service Unavailable",504:"Gateway Timeout",505:"HTTP Version Not Supported",506:"Variant Also Negotiates",507:"Insufficient Storage",508:"Loop Detected",509:"Bandwidth Limit Exceeded",510:"Not Extended",511:"Network Authentication Required"};var A;(function(o){o.json="application/json",o.opra_response_json="application/opra.response+json",o.xml="application/XML",o.text="text/plain",o.html="text/html",o.markdown="text/markdown",o.binary="binary/octet-stream"})(A||(A={}));var ii=class ii extends N{constructor(){super(...arguments),this.status=w.FORBIDDEN}init(e){super.init({message:"You are not authorized to perform this action",code:"FORBIDDEN",...e})}};a(ii,"ForbiddenError");var yr=ii;var oi=class oi extends N{constructor(){super(...arguments),this.status=500}init(e){super.init({message:"Internal server error",code:"INTERNAL_SERVER_ERROR",severity:"fatal",...e})}};a(oi,"InternalServerError");var As=oi;var ni=class ni extends N{constructor(){super(...arguments),this.status=405}init(e){super.init({message:"Method not allowed",code:"METHOD_NOT_ALLOWED",...e})}};a(ni,"MethodNotAllowedError");var Ds=ni;var si=class si extends N{constructor(){super(...arguments),this.status=406}init(e){super.init({message:"Not Acceptable",code:"NOT_ACCEPTABLE",...e})}};a(si,"NotAcceptableError");var Ns=si;var ai=class ai extends N{constructor(){super(...arguments),this.status=404}init(e){super.init({message:"Not found",code:"NOT_FOUND",...e})}};a(ai,"NotFoundError");var Ss=ai;var pi=class pi extends yr{init(e){super.init({message:"You dont have permission for this operation",code:"PERMISSION_ERROR",...e})}};a(pi,"PermissionError");var vs=pi;var ci=class ci extends N{constructor(e,t,r){super({message:`There is already an other "${e}" resource with same values for field(s) [${t}]`,severity:"error",code:"RESOURCE_CONFLICT",details:{resource:e,location:t}},r),this.status=409}};a(ci,"ResourceConflictError");var Ms=ci;var li=class li extends N{constructor(e,t,r){super({message:`Resource "${e}${t?"/"+t:""}" is not available`,severity:"error",code:"RESOURCE_NOT_AVAILABLE",details:{resource:e,key:t}},r,w.UNPROCESSABLE_ENTITY)}};a(li,"ResourceNotAvailableError");var Fs=li;var fi=class fi extends N{constructor(){super(...arguments),this.status=401}init(e){super.init({message:"You don't have permission to perform this action",code:"UNAUTHORIZED",...e})}};a(fi,"UnauthorizedError");var Is=fi;var mi=class mi extends N{constructor(){super(...arguments),this.status=422}init(e){super.init({message:"Unprocessable entity",severity:"error",code:"UNPROCESSABLE_ENTITY",...e})}};a(mi,"UnprocessableEntityError");var Ps=mi;var Ls;(function(o){let e;(function(t){t.fatal="fatal",t.error="error",t.warning="warning",t.info="info"})(e=o.Enum||(o.Enum={})),o.name="IssueSeverity",o.description="Severity of the issue",o.Keys=Object.keys(o),o.descriptions={fatal:"The issue caused the action to fail and no further checking could be performed",error:"The issue is sufficiently important to cause the action to fail",warning:"The issue is not important enough to cause the action to fail but may cause it to be performed suboptimally or in a way that is not as desired",info:"The issue has no relation to the degree of success of the action"}})(Ls||(Ls={}));BigInt.prototype.toJSON||(BigInt.prototype.toJSON=function(){return this.toString()});RegExp.prototype.toJSON||(RegExp.prototype.toJSON=function(){return this.toString()});import{isConstructor as ja}from"@jsopen/objects";import Ca from"putil-promisify";async function pe(o){return o=Ca.isPromise(o)?await o:o,typeof o=="function"?ja(o)?o:await o():o}a(pe,"resolveThunk");var ks=/^(?:file:\/\/)?(.+)$/;function Om(o=1){if(o>=Error.stackTraceLimit)throw new TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+o+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");let e=Error.prepareStackTrace;Error.prepareStackTrace=(r,i)=>i;let t=new Error().stack;if(Error.prepareStackTrace=e,t!==null&&typeof t=="object"){let r=t[o]?t[o].getFileName():void 0,i=r?ks.exec(r):void 0;return i?i[1]:""}return""}a(Om,"getStackFileName");function gm(o=1){if(o>=Error.stackTraceLimit)throw new TypeError("getCallerFile(position) requires position be less then Error.stackTraceLimit but position was: `"+o+"` and Error.stackTraceLimit was: `"+Error.stackTraceLimit+"`");let e=Error.prepareStackTrace;Error.prepareStackTrace=(r,i)=>i;let t=new Error().stack;if(Error.prepareStackTrace=e,t!==null&&typeof t=="object"){let r=t[o]?t[o].getFileName():void 0,i=r?ks.exec(r):void 0;return i?i[1]:""}return""}a(gm,"getErrorStack");function Tr(o,e,t){for(let r of Object.getOwnPropertyNames(e))r==="constructor"||r==="__proto__"||r==="toJSON"||r==="toString"||t&&!t(r)||Object.defineProperty(o,r,Object.getOwnPropertyDescriptor(e,r)||Object.create(null))}a(Tr,"mergePrototype");function Er(o,e,t=r=>!0){try{let r=new e;Object.getOwnPropertyNames(r).filter(n=>typeof r[n]<"u"&&typeof o[n]>"u").filter(n=>t(n)).forEach(n=>{o[n]=r[n]})}catch{}}a(Er,"inheritPropertyInitializers");import{isPlainObject as Cs,merge as Ua}from"@jsopen/objects";var d=Symbol.for("opra.type.metadata"),se=Symbol("opra.http-controller.metadata"),ae=Symbol("opra.rpc-controller.metadata"),T=Symbol.for("opra.type.decoder"),O=Symbol("opra.type.encoder"),D=Symbol.for("DECORATOR"),Pe=Symbol.for("BUILTIN"),js=/([a-z$_]\w+):(.+)/i,j=/^[a-z][\w_]*$/i,C=Symbol.for("kDataTypeMap"),_r=Symbol.for("kCtorMap"),we=Symbol.for("kTypeNSMap");function I(o,e){return Ua({},o,{deep:a(t=>Cs(t)&&!t[d],"deep"),symbolKeys:!0,copyDescriptors:!0,ignoreUndefined:!0,filter(t,r){let i=r[t];return!e||typeof i!="function"&&(typeof i!="object"||Cs(i)||Array.isArray(i))}})}a(I,"cloneObject");import{splitString as Us}from"fast-tokenizer";var $a=/^([+-])?([a-z_$]\w*)$/i,Ba=/[^.]\(/g,ui=class ui{};a(ui,"FieldsProjection");var Le=ui;(function(o){let t=class t{};a(t,"Item");let e=t;o.Item=e})(Le||(Le={}));function $s(o,e){let t=Array.isArray(o)?o:[o];if(!(t&&t.length))return;let r=new Le;for(let i of t)e||(i=i.toLowerCase()),Bs(i,r);return r}a($s,"parseFieldsProjection");function Bs(o,e){o=o.replace(Ba,r=>r.charAt(0)+"."+r.substring(1));let t=Us(o,{delimiters:".",brackets:!0,keepBrackets:!1});for(let r=0;r<t.length;r++){let i=t[r];if(i.includes(",")){let c=Us(i,{delimiters:",",brackets:!0,keepBrackets:!0});for(let l of c)Bs(l,e);continue}let n=$a.exec(i);if(!n)throw new TypeError(`Invalid field path (${o})`);let s=n[2],p=e[s]=e[s]||new Le.Item;n[1]&&(p.sign=n[1]),r===t.length-1?delete p.projection:e=p.projection=p.projection||new Le}}a(Bs,"parse");function qa(o){return o&&typeof o.forEach=="function"}a(qa,"isMap");var J=Symbol.for("kEntries"),ce=Symbol.for("kKeyMap"),xr=Symbol.for("kWellKnownKeys"),di=Symbol.for("kOptions"),Xe=Symbol.for("kSize"),hi=class hi{constructor(e,t){Object.defineProperty(this,Xe,{value:0,enumerable:!1,writable:!0}),Object.defineProperty(this,J,{value:{},enumerable:!1,writable:!0}),Object.defineProperty(this,ce,{value:{},enumerable:!1,writable:!0}),Object.defineProperty(this,xr,{value:{},enumerable:!1,writable:!0});let r=!!(t!=null&&t.caseSensitive);Object.defineProperty(this,di,{value:{caseSensitive:r},enumerable:!1}),t!=null&&t.wellKnownKeys&&t.wellKnownKeys.forEach(i=>{r?this[xr][i]=i:this[xr][i.toLowerCase()]=i}),this.clear(),e&&this.setAll(e)}get size(){return this[Xe]}clear(){Object.keys(this[J]).forEach(e=>delete this[J][e]),Object.keys(this[ce]).forEach(e=>delete this[ce][e]),this[Xe]=0}forEach(e,t){for(let[r,i]of this.entries())e.call(t,i,r,this)}get(e){if(e)return this[J][this._getStoringKey(e)]}has(e){return e?Object.prototype.hasOwnProperty.call(this[J],this._getStoringKey(e)):!1}set(e,t){let r=this._getStoringKey(e);e=this._getOriginalKey(e);let i=Object.prototype.hasOwnProperty.call(this[J],r);return this[J][r]=t,i||this[Xe]++,this[ce][r]=e,this}setAll(e){return qa(e)?e.forEach((t,r)=>this.set(r,t)):Object.keys(e).forEach(t=>this.set(t,e[t])),this}keys(){return Object.values(this[ce])[Symbol.iterator]()}values(){return Object.values(this[J])[Symbol.iterator]()}entries(){return Object.entries(this[J])[Symbol.iterator]()}delete(e){let t=this._getStoringKey(e),r=Object.prototype.hasOwnProperty.call(this[J],t);return delete this[J][t],delete this[ce][t],r||this[Xe]--,r}sort(e){let t={...this[J]},r={...this[ce]},i=Array.from(this.keys());e?i.sort(e):i.sort(),this.clear();for(let n of i)this[J][n]=t[n],this[ce][n]=r[n];return this[Xe]=i.length,this}toObject(){let e={};for(let[t,r]of Object.entries(this[ce]))e[r]=this[J][t];return e}[Symbol.iterator](){return this.entries()}get[Symbol.toStringTag](){return"[Object ResponsiveMap]"}_getOriginalKey(e){if(!e||this[di].caseSensitive)return e;let t=this._getStoringKey(e);return this[ce][t]??this[xr][t]??e}_getStoringKey(e){return this[di].caseSensitive?e:e.toLowerCase()}};a(hi,"ResponsiveMap");var v=hi;function jm(o,e,t){let r=new WeakSet;return JSON.stringify(o,(i,n)=>{if(n!==null&&typeof n=="object"){if(r.has(n))return;r.add(n)}return e?e(i,n):n},t)}a(jm,"safeJsonStringify");function yi(o){return o!==null&&typeof o=="object"&&typeof o.pipe=="function"}a(yi,"isStream");function $m(o){return yi(o)&&typeof o._read=="function"&&typeof o._readableState=="object"}a($m,"isReadable");function Bm(o){return yi(o)&&typeof o._write=="function"}a(Bm,"isWritable");function qm(o){return yi(o)&&typeof o.getReader=="function"&&typeof o.pipeThrough=="function"&&typeof o.pipeTo=="function"}a(qm,"isReadableStream");function Km(o){return o!==null&&typeof o=="object"&&typeof o.size=="number"&&typeof o.arrayBuffer=="function"&&typeof o.stream=="function"}a(Km,"isBlob");function Vm(o){return o!==null&&typeof o.constructor=="function"&&o.constructor.name==="FormData"&&typeof o.append=="function"&&typeof o.getAll=="function"}a(Vm,"isFormData");function zm(o){return o!==null&&typeof o=="object"&&typeof o.host=="string"&&typeof o.href=="string"}a(zm,"isURL");var Ti=class Ti{constructor(){this.kind=Object.getPrototypeOf(this).constructor.name}};a(Ti,"Ast");var Vt=Ti;var Ei=class Ei extends Vt{};a(Ei,"Expression");var U=Ei;var _i=class _i extends U{};a(_i,"Term");var ke=_i;var xi=class xi extends ke{constructor(e){super(),this.value=e}toString(){return""+this.value}};a(xi,"Literal");var M=xi;var Oi=class Oi extends U{constructor(){super(),this.items=[]}append(e,t){return this.items.push(new Or({op:e,expression:t})),this}toString(){return this.items.map((e,t)=>(t>0?e.op:"")+e.expression).join("")}};a(Oi,"ArithmeticExpression");var je=Oi,gi=class gi{constructor(e){Object.assign(this,e)}};a(gi,"ArithmeticExpressionItem");var Or=gi;var wi=class wi extends ke{constructor(e){super(),this.items=e}toString(){return"["+this.items.map(e=>""+e).join(",")+"]"}};a(wi,"ArrayExpression");var _e=wi;var Ka=/\w/,Ri=class Ri extends U{constructor(e){super(),Object.assign(this,e)}toString(){return`${this.left}${Ka.test(this.op)?" "+this.op+" ":this.op}${this.right}`}};a(Ri,"ComparisonExpression");var le=Ri;var bi=class bi extends U{constructor(e){super(),Object.assign(this,e),this.op==="&&"&&(this.op="and"),this.op==="||"&&(this.op="or")}toString(){return this.items.map(e=>""+e).join(" "+this.op+" ")}};a(bi,"LogicalExpression");var fe=bi;var Ai=class Ai extends U{constructor(e){super(),this.expression=e}toString(){return`(${this.expression})`}};a(Ai,"NegativeExpression");var zt=Ai;var Di=class Di extends U{constructor(e){super(),this.expression=e}toString(){return`(${this.expression})`}};a(Di,"ParenthesizedExpression");var xe=Di;var Ni=class Ni extends M{constructor(e){super(e)}};a(Ni,"BooleanLiteral");var Ce=Ni;import{toDateDef as Ga}from"putil-varhelpers";var Si=class Si extends TypeError{};a(Si,"SyntaxError");var gr=Si,vi=class vi extends TypeError{constructor(e){super(typeof e=="string"?e:e==null?void 0:e.message),typeof e=="object"&&Object.assign(this,e)}};a(vi,"FilterValidationError");var me=vi,Mi=class Mi extends Error{constructor(e,t){super(e),Object.assign(this,t)}};a(Mi,"FilterParseError");var wr=Mi;var Va=/'/g,za=/(\\)/g,Ja=/\\(.)/g;function Wa(o){return o.replace(za,"\\\\")}a(Wa,"escapeString");function Ya(o){return o.replace(Ja,"$1")}a(Ya,"unescapeString");function Re(o){return"'"+Wa(o).replace(Va,"\\'")+"'"}a(Re,"quoteFilterString");function Jt(o){return o&&(o.startsWith("'")||o.startsWith('"'))&&o.endsWith(o.charAt(0))?Ya(o.substring(1,o.length-1)):o}a(Jt,"unquoteFilterString");var qs=new Date(0),Fi=class Fi extends M{constructor(e){if(super(""),e instanceof Date){this.value=e.toISOString();return}if(typeof e=="string"&&Ga(e,qs)!==qs){this.value=e;return}throw new me(`Invalid date value "${e}"`)}toString(){return Re(this.value)}};a(Fi,"DateLiteral");var be=Fi;import{toDateDef as Qa}from"putil-varhelpers";var Ks=new Date(0),Ii=class Ii extends M{constructor(e){if(super(""),e instanceof Date){this.value=e.toISOString();return}if(typeof e=="string"&&Qa(e,Ks)!==Ks){this.value=e;return}throw new me(`Invalid date-time value "${e}"`)}toString(){return Re(this.value)}};a(Ii,"DateTimeLiteral");var Wt=Ii;var Pi=class Pi extends M{constructor(){super(null),this.value=null}};a(Pi,"NullLiteral");var Ue=Pi;var Li=class Li extends M{constructor(e){if(super(0),typeof e=="number"||typeof e=="bigint"){this.value=e;return}try{if(typeof e=="string"){if(e.includes(".")){this.value=parseFloat(e);return}let t=Number(e);""+t===e?this.value=t:this.value=BigInt(e);return}}catch{}throw new me(`Invalid number literal ${e}`)}toString(){return typeof this.value=="bigint"?(""+this.value).replace(/n$/,""):""+this.value}};a(Li,"NumberLiteral");var Oe=Li;var ki=class ki extends M{constructor(e){super(""+e)}};a(ki,"QualifiedIdentifier");var X=ki;var ji=class ji extends M{constructor(e){super(""+e)}toString(){return Re(this.value)}};a(ji,"StringLiteral");var $e=ji;var Xa=/^([01]\d|2[0-3]):([0-5]\d)(:[0-5]\d)?(\.(\d+))?$/,Ci=class Ci extends M{constructor(e){if(super(""),e instanceof Date){this.value=Rr(e.getHours())+":"+Rr(e.getMinutes())+(e.getSeconds()?":"+Rr(e.getSeconds()):"")+(e.getMilliseconds()?"."+Rr(e.getMilliseconds()):"");return}if(typeof e=="string"&&Xa.test(e)){this.value=e;return}throw new me(`Invalid time value "${e}"`)}toString(){return Re(this.value)}};a(Ci,"TimeLiteral");var Be=Ci;function Rr(o){return o<=9?"0"+o:""+o}a(Rr,"pad");import{CharStream as up,CommonTokenStream as dp}from"@browsery/antlr4";import{ATNDeserializer as Za,DFA as Ha,Lexer as ep,LexerATNSimulator as tp,PredictionContextCache as rp,Token as ip}from"@browsery/antlr4";var V=class V extends ep{constructor(e){super(e),this._interp=new tp(this,V._ATN,V.DecisionsToDFA,new rp)}get grammarFileName(){return"OpraFilter.g4"}get literalNames(){return V.literalNames}get symbolicNames(){return V.symbolicNames}get ruleNames(){return V.ruleNames}get serializedATN(){return V._serializedATN}get channelNames(){return V.channelNames}get modeNames(){return V.modeNames}static get _ATN(){return V.__ATN||(V.__ATN=new Za().deserialize(V._serializedATN)),V.__ATN}};a(V,"OpraFilterLexer");var h=V;h.T__0=1;h.T__1=2;h.T__2=3;h.T__3=4;h.T__4=5;h.T__5=6;h.T__6=7;h.T__7=8;h.T__8=9;h.T__9=10;h.T__10=11;h.T__11=12;h.T__12=13;h.T__13=14;h.T__14=15;h.T__15=16;h.T__16=17;h.T__17=18;h.T__18=19;h.T__19=20;h.T__20=21;h.T__21=22;h.T__22=23;h.T__23=24;h.T__24=25;h.T__25=26;h.T__26=27;h.T__27=28;h.T__28=29;h.T__29=30;h.T__30=31;h.T__31=32;h.T__32=33;h.T__33=34;h.IDENTIFIER=35;h.POLAR_OP=36;h.DATE=37;h.DATETIME=38;h.TIME=39;h.NUMBER=40;h.INTEGER=41;h.STRING=42;h.WHITESPACE=43;h.EOF=ip.EOF;h.channelNames=["DEFAULT_TOKEN_CHANNEL","HIDDEN"];h.literalNames=[null,"'('","')'","'not'","'!'","'.'","'@'","'['","','","']'","'true'","'false'","'null'","'Infinity'","'infinity'","'+'","'-'","'*'","'/'","'<='","'<'","'>'","'>='","'='","'!='","'in'","'!in'","'like'","'!like'","'ilike'","'!ilike'","'and'","'or'","'&&'","'||'"];h.symbolicNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE"];h.modeNames=["DEFAULT_MODE"];h.ruleNames=["T__0","T__1","T__2","T__3","T__4","T__5","T__6","T__7","T__8","T__9","T__10","T__11","T__12","T__13","T__14","T__15","T__16","T__17","T__18","T__19","T__20","T__21","T__22","T__23","T__24","T__25","T__26","T__27","T__28","T__29","T__30","T__31","T__32","T__33","IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE","DIGIT","DATEFORMAT","TIMEFORMAT","TIMEZONEOFFSETFORMAT","ESC","UNICODE","HEX"];h._serializedATN=[4,0,43,461,6,-1,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,2,17,7,17,2,18,7,18,2,19,7,19,2,20,7,20,2,21,7,21,2,22,7,22,2,23,7,23,2,24,7,24,2,25,7,25,2,26,7,26,2,27,7,27,2,28,7,28,2,29,7,29,2,30,7,30,2,31,7,31,2,32,7,32,2,33,7,33,2,34,7,34,2,35,7,35,2,36,7,36,2,37,7,37,2,38,7,38,2,39,7,39,2,40,7,40,2,41,7,41,2,42,7,42,2,43,7,43,2,44,7,44,2,45,7,45,2,46,7,46,2,47,7,47,2,48,7,48,2,49,7,49,1,0,1,0,1,1,1,1,1,2,1,2,1,2,1,2,1,3,1,3,1,4,1,4,1,5,1,5,1,6,1,6,1,7,1,7,1,8,1,8,1,9,1,9,1,9,1,9,1,9,1,10,1,10,1,10,1,10,1,10,1,10,1,11,1,11,1,11,1,11,1,11,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,12,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,17,1,17,1,18,1,18,1,18,1,19,1,19,1,20,1,20,1,21,1,21,1,21,1,22,1,22,1,23,1,23,1,23,1,24,1,24,1,24,1,25,1,25,1,25,1,25,1,26,1,26,1,26,1,26,1,26,1,27,1,27,1,27,1,27,1,27,1,27,1,28,1,28,1,28,1,28,1,28,1,28,1,29,1,29,1,29,1,29,1,29,1,29,1,29,1,30,1,30,1,30,1,30,1,31,1,31,1,31,1,32,1,32,1,32,1,33,1,33,1,33,1,34,1,34,5,34,225,8,34,10,34,12,34,228,9,34,1,35,1,35,1,36,1,36,1,36,1,36,1,36,1,36,1,36,1,36,3,36,240,8,36,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,1,37,3,37,291,8,37,1,38,1,38,1,38,1,38,1,38,1,38,1,38,1,38,3,38,301,8,38,1,39,3,39,304,8,39,1,39,4,39,307,8,39,11,39,12,39,308,1,39,1,39,5,39,313,8,39,10,39,12,39,316,9,39,3,39,318,8,39,1,39,1,39,3,39,322,8,39,1,39,4,39,325,8,39,11,39,12,39,326,3,39,329,8,39,1,39,1,39,1,39,1,39,4,39,335,8,39,11,39,12,39,336,3,39,339,8,39,1,40,3,40,342,8,40,1,40,4,40,345,8,40,11,40,12,40,346,1,40,1,40,1,40,1,40,4,40,353,8,40,11,40,12,40,354,3,40,357,8,40,1,41,1,41,1,41,5,41,362,8,41,10,41,12,41,365,9,41,1,41,1,41,1,41,1,41,5,41,371,8,41,10,41,12,41,374,9,41,1,41,3,41,377,8,41,1,42,4,42,380,8,42,11,42,12,42,381,1,42,1,42,1,43,1,43,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,397,8,44,1,44,1,44,1,44,1,44,1,44,1,44,1,44,3,44,406,8,44,1,45,1,45,1,45,1,45,3,45,412,8,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,1,45,4,45,424,8,45,11,45,12,45,425,3,45,428,8,45,3,45,430,8,45,1,46,1,46,1,46,3,46,435,8,46,1,46,1,46,1,46,3,46,440,8,46,1,46,1,46,1,46,3,46,445,8,46,3,46,447,8,46,1,47,1,47,1,47,3,47,452,8,47,1,48,1,48,1,48,1,48,1,48,1,48,1,49,1,49,0,0,50,1,1,3,2,5,3,7,4,9,5,11,6,13,7,15,8,17,9,19,10,21,11,23,12,25,13,27,14,29,15,31,16,33,17,35,18,37,19,39,20,41,21,43,22,45,23,47,24,49,25,51,26,53,27,55,28,57,29,59,30,61,31,63,32,65,33,67,34,69,35,71,36,73,37,75,38,77,39,79,40,81,41,83,42,85,43,87,0,89,0,91,0,93,0,95,0,97,0,99,0,1,0,16,4,0,36,36,65,90,95,95,97,122,5,0,36,36,48,57,65,90,95,95,97,122,2,0,43,43,45,45,1,0,39,39,1,0,34,34,3,0,9,10,13,13,32,32,1,0,48,57,1,0,48,48,1,0,49,57,1,0,49,49,1,0,48,50,1,0,49,51,1,0,48,49,1,0,48,51,1,0,48,53,3,0,48,57,65,70,97,102,491,0,1,1,0,0,0,0,3,1,0,0,0,0,5,1,0,0,0,0,7,1,0,0,0,0,9,1,0,0,0,0,11,1,0,0,0,0,13,1,0,0,0,0,15,1,0,0,0,0,17,1,0,0,0,0,19,1,0,0,0,0,21,1,0,0,0,0,23,1,0,0,0,0,25,1,0,0,0,0,27,1,0,0,0,0,29,1,0,0,0,0,31,1,0,0,0,0,33,1,0,0,0,0,35,1,0,0,0,0,37,1,0,0,0,0,39,1,0,0,0,0,41,1,0,0,0,0,43,1,0,0,0,0,45,1,0,0,0,0,47,1,0,0,0,0,49,1,0,0,0,0,51,1,0,0,0,0,53,1,0,0,0,0,55,1,0,0,0,0,57,1,0,0,0,0,59,1,0,0,0,0,61,1,0,0,0,0,63,1,0,0,0,0,65,1,0,0,0,0,67,1,0,0,0,0,69,1,0,0,0,0,71,1,0,0,0,0,73,1,0,0,0,0,75,1,0,0,0,0,77,1,0,0,0,0,79,1,0,0,0,0,81,1,0,0,0,0,83,1,0,0,0,0,85,1,0,0,0,1,101,1,0,0,0,3,103,1,0,0,0,5,105,1,0,0,0,7,109,1,0,0,0,9,111,1,0,0,0,11,113,1,0,0,0,13,115,1,0,0,0,15,117,1,0,0,0,17,119,1,0,0,0,19,121,1,0,0,0,21,126,1,0,0,0,23,132,1,0,0,0,25,137,1,0,0,0,27,146,1,0,0,0,29,155,1,0,0,0,31,157,1,0,0,0,33,159,1,0,0,0,35,161,1,0,0,0,37,163,1,0,0,0,39,166,1,0,0,0,41,168,1,0,0,0,43,170,1,0,0,0,45,173,1,0,0,0,47,175,1,0,0,0,49,178,1,0,0,0,51,181,1,0,0,0,53,185,1,0,0,0,55,190,1,0,0,0,57,196,1,0,0,0,59,202,1,0,0,0,61,209,1,0,0,0,63,213,1,0,0,0,65,216,1,0,0,0,67,219,1,0,0,0,69,222,1,0,0,0,71,229,1,0,0,0,73,239,1,0,0,0,75,290,1,0,0,0,77,300,1,0,0,0,79,338,1,0,0,0,81,356,1,0,0,0,83,376,1,0,0,0,85,379,1,0,0,0,87,385,1,0,0,0,89,387,1,0,0,0,91,411,1,0,0,0,93,446,1,0,0,0,95,448,1,0,0,0,97,453,1,0,0,0,99,459,1,0,0,0,101,102,5,40,0,0,102,2,1,0,0,0,103,104,5,41,0,0,104,4,1,0,0,0,105,106,5,110,0,0,106,107,5,111,0,0,107,108,5,116,0,0,108,6,1,0,0,0,109,110,5,33,0,0,110,8,1,0,0,0,111,112,5,46,0,0,112,10,1,0,0,0,113,114,5,64,0,0,114,12,1,0,0,0,115,116,5,91,0,0,116,14,1,0,0,0,117,118,5,44,0,0,118,16,1,0,0,0,119,120,5,93,0,0,120,18,1,0,0,0,121,122,5,116,0,0,122,123,5,114,0,0,123,124,5,117,0,0,124,125,5,101,0,0,125,20,1,0,0,0,126,127,5,102,0,0,127,128,5,97,0,0,128,129,5,108,0,0,129,130,5,115,0,0,130,131,5,101,0,0,131,22,1,0,0,0,132,133,5,110,0,0,133,134,5,117,0,0,134,135,5,108,0,0,135,136,5,108,0,0,136,24,1,0,0,0,137,138,5,73,0,0,138,139,5,110,0,0,139,140,5,102,0,0,140,141,5,105,0,0,141,142,5,110,0,0,142,143,5,105,0,0,143,144,5,116,0,0,144,145,5,121,0,0,145,26,1,0,0,0,146,147,5,105,0,0,147,148,5,110,0,0,148,149,5,102,0,0,149,150,5,105,0,0,150,151,5,110,0,0,151,152,5,105,0,0,152,153,5,116,0,0,153,154,5,121,0,0,154,28,1,0,0,0,155,156,5,43,0,0,156,30,1,0,0,0,157,158,5,45,0,0,158,32,1,0,0,0,159,160,5,42,0,0,160,34,1,0,0,0,161,162,5,47,0,0,162,36,1,0,0,0,163,164,5,60,0,0,164,165,5,61,0,0,165,38,1,0,0,0,166,167,5,60,0,0,167,40,1,0,0,0,168,169,5,62,0,0,169,42,1,0,0,0,170,171,5,62,0,0,171,172,5,61,0,0,172,44,1,0,0,0,173,174,5,61,0,0,174,46,1,0,0,0,175,176,5,33,0,0,176,177,5,61,0,0,177,48,1,0,0,0,178,179,5,105,0,0,179,180,5,110,0,0,180,50,1,0,0,0,181,182,5,33,0,0,182,183,5,105,0,0,183,184,5,110,0,0,184,52,1,0,0,0,185,186,5,108,0,0,186,187,5,105,0,0,187,188,5,107,0,0,188,189,5,101,0,0,189,54,1,0,0,0,190,191,5,33,0,0,191,192,5,108,0,0,192,193,5,105,0,0,193,194,5,107,0,0,194,195,5,101,0,0,195,56,1,0,0,0,196,197,5,105,0,0,197,198,5,108,0,0,198,199,5,105,0,0,199,200,5,107,0,0,200,201,5,101,0,0,201,58,1,0,0,0,202,203,5,33,0,0,203,204,5,105,0,0,204,205,5,108,0,0,205,206,5,105,0,0,206,207,5,107,0,0,207,208,5,101,0,0,208,60,1,0,0,0,209,210,5,97,0,0,210,211,5,110,0,0,211,212,5,100,0,0,212,62,1,0,0,0,213,214,5,111,0,0,214,215,5,114,0,0,215,64,1,0,0,0,216,217,5,38,0,0,217,218,5,38,0,0,218,66,1,0,0,0,219,220,5,124,0,0,220,221,5,124,0,0,221,68,1,0,0,0,222,226,7,0,0,0,223,225,7,1,0,0,224,223,1,0,0,0,225,228,1,0,0,0,226,224,1,0,0,0,226,227,1,0,0,0,227,70,1,0,0,0,228,226,1,0,0,0,229,230,7,2,0,0,230,72,1,0,0,0,231,232,5,39,0,0,232,233,3,89,44,0,233,234,5,39,0,0,234,240,1,0,0,0,235,236,5,34,0,0,236,237,3,89,44,0,237,238,5,34,0,0,238,240,1,0,0,0,239,231,1,0,0,0,239,235,1,0,0,0,240,74,1,0,0,0,241,242,5,39,0,0,242,243,3,89,44,0,243,244,5,84,0,0,244,245,3,91,45,0,245,246,3,93,46,0,246,247,5,39,0,0,247,248,5,39,0,0,248,249,3,89,44,0,249,250,5,32,0,0,250,251,3,91,45,0,251,252,3,93,46,0,252,253,5,39,0,0,253,254,5,39,0,0,254,255,3,89,44,0,255,256,5,84,0,0,256,257,3,91,45,0,257,258,5,39,0,0,258,259,5,39,0,0,259,260,3,89,44,0,260,261,5,32,0,0,261,262,3,91,45,0,262,263,5,39,0,0,263,291,1,0,0,0,264,265,5,34,0,0,265,266,3,89,44,0,266,267,5,84,0,0,267,268,3,91,45,0,268,269,3,93,46,0,269,270,5,34,0,0,270,291,1,0,0,0,271,272,5,34,0,0,272,273,3,89,44,0,273,274,5,32,0,0,274,275,3,91,45,0,275,276,3,93,46,0,276,277,5,34,0,0,277,291,1,0,0,0,278,279,5,34,0,0,279,280,3,89,44,0,280,281,5,84,0,0,281,282,3,91,45,0,282,283,5,34,0,0,283,291,1,0,0,0,284,285,5,34,0,0,285,286,3,89,44,0,286,287,5,32,0,0,287,288,3,91,45,0,288,289,5,34,0,0,289,291,1,0,0,0,290,241,1,0,0,0,290,264,1,0,0,0,290,271,1,0,0,0,290,278,1,0,0,0,290,284,1,0,0,0,291,76,1,0,0,0,292,293,5,39,0,0,293,294,3,91,45,0,294,295,5,39,0,0,295,301,1,0,0,0,296,297,5,34,0,0,297,298,3,91,45,0,298,299,5,34,0,0,299,301,1,0,0,0,300,292,1,0,0,0,300,296,1,0,0,0,301,78,1,0,0,0,302,304,3,71,35,0,303,302,1,0,0,0,303,304,1,0,0,0,304,306,1,0,0,0,305,307,3,87,43,0,306,305,1,0,0,0,307,308,1,0,0,0,308,306,1,0,0,0,308,309,1,0,0,0,309,317,1,0,0,0,310,314,5,46,0,0,311,313,3,87,43,0,312,311,1,0,0,0,313,316,1,0,0,0,314,312,1,0,0,0,314,315,1,0,0,0,315,318,1,0,0,0,316,314,1,0,0,0,317,310,1,0,0,0,317,318,1,0,0,0,318,328,1,0,0,0,319,321,5,69,0,0,320,322,7,2,0,0,321,320,1,0,0,0,321,322,1,0,0,0,322,324,1,0,0,0,323,325,3,87,43,0,324,323,1,0,0,0,325,326,1,0,0,0,326,324,1,0,0,0,326,327,1,0,0,0,327,329,1,0,0,0,328,319,1,0,0,0,328,329,1,0,0,0,329,339,1,0,0,0,330,331,5,48,0,0,331,332,5,120,0,0,332,334,1,0,0,0,333,335,3,99,49,0,334,333,1,0,0,0,335,336,1,0,0,0,336,334,1,0,0,0,336,337,1,0,0,0,337,339,1,0,0,0,338,303,1,0,0,0,338,330,1,0,0,0,339,80,1,0,0,0,340,342,3,71,35,0,341,340,1,0,0,0,341,342,1,0,0,0,342,344,1,0,0,0,343,345,3,87,43,0,344,343,1,0,0,0,345,346,1,0,0,0,346,344,1,0,0,0,346,347,1,0,0,0,347,357,1,0,0,0,348,349,5,48,0,0,349,350,5,120,0,0,350,352,1,0,0,0,351,353,3,99,49,0,352,351,1,0,0,0,353,354,1,0,0,0,354,352,1,0,0,0,354,355,1,0,0,0,355,357,1,0,0,0,356,341,1,0,0,0,356,348,1,0,0,0,357,82,1,0,0,0,358,363,5,39,0,0,359,362,3,95,47,0,360,362,8,3,0,0,361,359,1,0,0,0,361,360,1,0,0,0,362,365,1,0,0,0,363,361,1,0,0,0,363,364,1,0,0,0,364,366,1,0,0,0,365,363,1,0,0,0,366,377,5,39,0,0,367,372,5,34,0,0,368,371,3,95,47,0,369,371,8,4,0,0,370,368,1,0,0,0,370,369,1,0,0,0,371,374,1,0,0,0,372,370,1,0,0,0,372,373,1,0,0,0,373,375,1,0,0,0,374,372,1,0,0,0,375,377,5,34,0,0,376,358,1,0,0,0,376,367,1,0,0,0,377,84,1,0,0,0,378,380,7,5,0,0,379,378,1,0,0,0,380,381,1,0,0,0,381,379,1,0,0,0,381,382,1,0,0,0,382,383,1,0,0,0,383,384,6,42,0,0,384,86,1,0,0,0,385,386,7,6,0,0,386,88,1,0,0,0,387,388,7,6,0,0,388,389,7,6,0,0,389,390,7,6,0,0,390,391,7,6,0,0,391,396,5,45,0,0,392,393,7,7,0,0,393,397,7,8,0,0,394,395,7,9,0,0,395,397,7,10,0,0,396,392,1,0,0,0,396,394,1,0,0,0,397,398,1,0,0,0,398,405,5,45,0,0,399,400,7,11,0,0,400,406,7,7,0,0,401,402,7,10,0,0,402,406,7,8,0,0,403,404,5,51,0,0,404,406,5,49,0,0,405,399,1,0,0,0,405,401,1,0,0,0,405,403,1,0,0,0,406,90,1,0,0,0,407,408,7,12,0,0,408,412,7,6,0,0,409,410,5,50,0,0,410,412,7,13,0,0,411,407,1,0,0,0,411,409,1,0,0,0,412,413,1,0,0,0,413,414,5,58,0,0,414,415,7,14,0,0,415,416,7,6,0,0,416,429,1,0,0,0,417,418,5,58,0,0,418,419,7,14,0,0,419,420,7,6,0,0,420,427,1,0,0,0,421,423,5,46,0,0,422,424,7,6,0,0,423,422,1,0,0,0,424,425,1,0,0,0,425,423,1,0,0,0,425,426,1,0,0,0,426,428,1,0,0,0,427,421,1,0,0,0,427,428,1,0,0,0,428,430,1,0,0,0,429,417,1,0,0,0,429,430,1,0,0,0,430,92,1,0,0,0,431,447,5,90,0,0,432,439,7,2,0,0,433,435,7,12,0,0,434,433,1,0,0,0,434,435,1,0,0,0,435,436,1,0,0,0,436,440,7,6,0,0,437,438,5,50,0,0,438,440,7,13,0,0,439,434,1,0,0,0,439,437,1,0,0,0,440,444,1,0,0,0,441,442,5,58,0,0,442,443,7,14,0,0,443,445,7,6,0,0,444,441,1,0,0,0,444,445,1,0,0,0,445,447,1,0,0,0,446,431,1,0,0,0,446,432,1,0,0,0,447,94,1,0,0,0,448,451,5,92,0,0,449,452,3,97,48,0,450,452,9,0,0,0,451,449,1,0,0,0,451,450,1,0,0,0,452,96,1,0,0,0,453,454,5,117,0,0,454,455,3,99,49,0,455,456,3,99,49,0,456,457,3,99,49,0,457,458,3,99,49,0,458,98,1,0,0,0,459,460,7,15,0,0,460,100,1,0,0,0,35,0,226,239,290,300,303,308,314,317,321,326,328,336,338,341,346,354,356,361,363,370,372,376,381,396,405,411,425,427,429,434,439,444,446,451,1,0,1,0];h.DecisionsToDFA=h._ATN.decisionToState.map((o,e)=>new Ha(o,e));var Vs=h;import{ATN as zs,ATNDeserializer as op,DFA as np,FailedPredicateException as sp,NoViableAltException as Ui,Parser as ap,ParserATNSimulator as pp,ParserRuleContext as B,PredictionContextCache as cp,RecognitionException as $,Token as lp}from"@browsery/antlr4";var E=class E extends ap{get grammarFileName(){return"OpraFilter.g4"}get literalNames(){return E.literalNames}get symbolicNames(){return E.symbolicNames}get ruleNames(){return E.ruleNames}get serializedATN(){return E._serializedATN}createFailedPredicateException(e,t){return new sp(this,e,t)}constructor(e){super(e),this._interp=new pp(this,E._ATN,E.DecisionsToDFA,new cp)}root(){let e=new $i(this,this._ctx,this.state);this.enterRule(e,0,E.RULE_root);try{this.enterOuterAlt(e,1),this.state=34,this.expression(0),this.state=35,this.match(E.EOF)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}expression(e){e===void 0&&(e=0);let t=this._ctx,r=this.state,i=new Q(this,this._ctx,r),n=i,s=2;this.enterRecursionRule(i,2,E.RULE_expression,e);let p;try{let c;this.enterOuterAlt(i,1);{switch(this.state=48,this._errHandler.sync(this),this._input.LA(1)){case 35:i=new Ki(this,i),this._ctx=i,n=i,this.state=38,i._left=this.comparisonLeft(),this.state=39,i._operator=this.comparisonOperator(),this.state=40,i._right=this.comparisonRight();break;case 1:i=new Bi(this,i),this._ctx=i,n=i,this.state=42,this.match(E.T__0),this.state=43,this.parenthesizedItem(),this.state=44,this.match(E.T__1);break;case 3:case 4:i=new qi(this,i),this._ctx=i,n=i,this.state=46,p=this._input.LA(1),p===3||p===4?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this),this.state=47,this.expression(1);break;default:throw new Ui(this)}for(this._ctx.stop=this._input.LT(-1),this.state=56,this._errHandler.sync(this),c=this._interp.adaptivePredict(this._input,1,this._ctx);c!==2&&c!==zs.INVALID_ALT_NUMBER;){if(c===1){this._parseListeners!=null&&this.triggerExitRuleEvent(),n=i;{if(i=new Yt(this,new Q(this,t,r)),this.pushNewRecursionContext(i,s,E.RULE_expression),this.state=50,!this.precpred(this._ctx,3))throw this.createFailedPredicateException("this.precpred(this._ctx, 3)");this.state=51,i._op=this.logicalOperator(),this.state=52,this.expression(4)}}this.state=58,this._errHandler.sync(this),c=this._interp.adaptivePredict(this._input,1,this._ctx)}}}catch(c){if(c instanceof $)i.exception=c,this._errHandler.reportError(this,c),this._errHandler.recover(this,c);else throw c}finally{this.unrollRecursionContexts(t)}return i}comparisonLeft(){let e=new br(this,this._ctx,this.state);this.enterRule(e,4,E.RULE_comparisonLeft);try{this.enterOuterAlt(e,1),this.state=59,this.qualifiedIdentifier()}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}comparisonRight(){let e=new Ar(this,this._ctx,this.state);this.enterRule(e,6,E.RULE_comparisonRight);try{switch(this.state=65,this._errHandler.sync(this),this._input.LA(1)){case 10:case 11:case 12:case 13:case 14:case 37:case 38:case 39:case 40:case 42:this.enterOuterAlt(e,1),this.state=61,this.value();break;case 35:this.enterOuterAlt(e,2),this.state=62,this.qualifiedIdentifier();break;case 6:this.enterOuterAlt(e,3),this.state=63,this.externalConstant();break;case 7:this.enterOuterAlt(e,4),this.state=64,this.arrayValue();break;default:throw new Ui(this)}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}parenthesizedItem(){let e=new Dr(this,this._ctx,this.state);this.enterRule(e,8,E.RULE_parenthesizedItem);try{this.enterOuterAlt(e,1),this.state=67,this.expression(0)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}value(){let e=new W(this,this._ctx,this.state);this.enterRule(e,10,E.RULE_value);try{switch(this.state=77,this._errHandler.sync(this),this._input.LA(1)){case 40:e=new Xi(this,e),this.enterOuterAlt(e,1),this.state=69,this.match(E.NUMBER);break;case 13:case 14:e=new Gi(this,e),this.enterOuterAlt(e,2),this.state=70,this.infinity();break;case 10:case 11:e=new Qi(this,e),this.enterOuterAlt(e,3),this.state=71,this.boolean_();break;case 12:e=new zi(this,e),this.enterOuterAlt(e,4),this.state=72,this.null_();break;case 38:e=new Ji(this,e),this.enterOuterAlt(e,5),this.state=73,this.match(E.DATETIME);break;case 37:e=new Yi(this,e),this.enterOuterAlt(e,6),this.state=74,this.match(E.DATE);break;case 39:e=new Vi(this,e),this.enterOuterAlt(e,7),this.state=75,this.match(E.TIME);break;case 42:e=new Wi(this,e),this.enterOuterAlt(e,8),this.state=76,this.match(E.STRING);break;default:throw new Ui(this)}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}qualifiedIdentifier(){let e=new Gt(this,this._ctx,this.state);this.enterRule(e,12,E.RULE_qualifiedIdentifier);try{let t;this.enterOuterAlt(e,1);{for(this.state=84,this._errHandler.sync(this),t=this._interp.adaptivePredict(this._input,4,this._ctx);t!==2&&t!==zs.INVALID_ALT_NUMBER;)t===1&&(this.state=79,this.identifier(),this.state=80,this.match(E.T__4)),this.state=86,this._errHandler.sync(this),t=this._interp.adaptivePredict(this._input,4,this._ctx);this.state=87,this.identifier()}}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}externalConstant(){let e=new Nr(this,this._ctx,this.state);this.enterRule(e,14,E.RULE_externalConstant);try{this.enterOuterAlt(e,1),this.state=89,this.match(E.T__5),this.state=90,this.identifier()}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}identifier(){let e=new Ze(this,this._ctx,this.state);this.enterRule(e,16,E.RULE_identifier);try{this.enterOuterAlt(e,1),this.state=92,this.match(E.IDENTIFIER)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}arrayValue(){let e=new Sr(this,this._ctx,this.state);this.enterRule(e,18,E.RULE_arrayValue);let t;try{this.enterOuterAlt(e,1);{for(this.state=94,this.match(E.T__6),this.state=95,this.value(),this.state=100,this._errHandler.sync(this),t=this._input.LA(1);t===8;)this.state=96,this.match(E.T__7),this.state=97,this.value(),this.state=102,this._errHandler.sync(this),t=this._input.LA(1);this.state=103,this.match(E.T__8)}}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}boolean_(){let e=new vr(this,this._ctx,this.state);this.enterRule(e,20,E.RULE_boolean);let t;try{this.enterOuterAlt(e,1),this.state=105,t=this._input.LA(1),t===10||t===11?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}null_(){let e=new Mr(this,this._ctx,this.state);this.enterRule(e,22,E.RULE_null);try{this.enterOuterAlt(e,1),this.state=107,this.match(E.T__11)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}infinity(){let e=new Fr(this,this._ctx,this.state);this.enterRule(e,24,E.RULE_infinity);let t;try{this.enterOuterAlt(e,1),this.state=109,t=this._input.LA(1),t===13||t===14?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}arithmeticOperator(){let e=new Zi(this,this._ctx,this.state);this.enterRule(e,26,E.RULE_arithmeticOperator);let t;try{this.enterOuterAlt(e,1),this.state=111,t=this._input.LA(1),(t&-32)===0&&(1<<t&491520)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}comparisonOperator(){let e=new Ir(this,this._ctx,this.state);this.enterRule(e,28,E.RULE_comparisonOperator);let t;try{this.enterOuterAlt(e,1),this.state=113,t=this._input.LA(1),(t&-32)===0&&(1<<t&2146959360)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}logicalOperator(){let e=new Pr(this,this._ctx,this.state);this.enterRule(e,30,E.RULE_logicalOperator);let t;try{this.enterOuterAlt(e,1),this.state=115,t=this._input.LA(1),(t-31&-32)===0&&(1<<t-31&15)!==0?(this._errHandler.reportMatch(this),this.consume()):this._errHandler.recoverInline(this)}catch(r){if(r instanceof $)e.exception=r,this._errHandler.reportError(this,r),this._errHandler.recover(this,r);else throw r}finally{this.exitRule()}return e}polarityOperator(){let e=new Hi(this,this._ctx,this.state);this.enterRule(e,32,E.RULE_polarityOperator);try{this.enterOuterAlt(e,1),this.state=117,this.match(E.POLAR_OP)}catch(t){if(t instanceof $)e.exception=t,this._errHandler.reportError(this,t),this._errHandler.recover(this,t);else throw t}finally{this.exitRule()}return e}sempred(e,t,r){switch(t){case 1:return this.expression_sempred(e,r)}return!0}expression_sempred(e,t){switch(t){case 0:return this.precpred(this._ctx,3)}return!0}static get _ATN(){return E.__ATN||(E.__ATN=new op().deserialize(E._serializedATN)),E.__ATN}};a(E,"OpraFilterParser");var f=E;f.T__0=1;f.T__1=2;f.T__2=3;f.T__3=4;f.T__4=5;f.T__5=6;f.T__6=7;f.T__7=8;f.T__8=9;f.T__9=10;f.T__10=11;f.T__11=12;f.T__12=13;f.T__13=14;f.T__14=15;f.T__15=16;f.T__16=17;f.T__17=18;f.T__18=19;f.T__19=20;f.T__20=21;f.T__21=22;f.T__22=23;f.T__23=24;f.T__24=25;f.T__25=26;f.T__26=27;f.T__27=28;f.T__28=29;f.T__29=30;f.T__30=31;f.T__31=32;f.T__32=33;f.T__33=34;f.IDENTIFIER=35;f.POLAR_OP=36;f.DATE=37;f.DATETIME=38;f.TIME=39;f.NUMBER=40;f.INTEGER=41;f.STRING=42;f.WHITESPACE=43;f.EOF=lp.EOF;f.RULE_root=0;f.RULE_expression=1;f.RULE_comparisonLeft=2;f.RULE_comparisonRight=3;f.RULE_parenthesizedItem=4;f.RULE_value=5;f.RULE_qualifiedIdentifier=6;f.RULE_externalConstant=7;f.RULE_identifier=8;f.RULE_arrayValue=9;f.RULE_boolean=10;f.RULE_null=11;f.RULE_infinity=12;f.RULE_arithmeticOperator=13;f.RULE_comparisonOperator=14;f.RULE_logicalOperator=15;f.RULE_polarityOperator=16;f.literalNames=[null,"'('","')'","'not'","'!'","'.'","'@'","'['","','","']'","'true'","'false'","'null'","'Infinity'","'infinity'","'+'","'-'","'*'","'/'","'<='","'<'","'>'","'>='","'='","'!='","'in'","'!in'","'like'","'!like'","'ilike'","'!ilike'","'and'","'or'","'&&'","'||'"];f.symbolicNames=[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,"IDENTIFIER","POLAR_OP","DATE","DATETIME","TIME","NUMBER","INTEGER","STRING","WHITESPACE"];f.ruleNames=["root","expression","comparisonLeft","comparisonRight","parenthesizedItem","value","qualifiedIdentifier","externalConstant","identifier","arrayValue","boolean","null","infinity","arithmeticOperator","comparisonOperator","logicalOperator","polarityOperator"];f._serializedATN=[4,1,43,120,2,0,7,0,2,1,7,1,2,2,7,2,2,3,7,3,2,4,7,4,2,5,7,5,2,6,7,6,2,7,7,7,2,8,7,8,2,9,7,9,2,10,7,10,2,11,7,11,2,12,7,12,2,13,7,13,2,14,7,14,2,15,7,15,2,16,7,16,1,0,1,0,1,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,3,1,49,8,1,1,1,1,1,1,1,1,1,5,1,55,8,1,10,1,12,1,58,9,1,1,2,1,2,1,3,1,3,1,3,1,3,3,3,66,8,3,1,4,1,4,1,5,1,5,1,5,1,5,1,5,1,5,1,5,1,5,3,5,78,8,5,1,6,1,6,1,6,5,6,83,8,6,10,6,12,6,86,9,6,1,6,1,6,1,7,1,7,1,7,1,8,1,8,1,9,1,9,1,9,1,9,5,9,99,8,9,10,9,12,9,102,9,9,1,9,1,9,1,10,1,10,1,11,1,11,1,12,1,12,1,13,1,13,1,14,1,14,1,15,1,15,1,16,1,16,1,16,0,1,2,17,0,2,4,6,8,10,12,14,16,18,20,22,24,26,28,30,32,0,6,1,0,3,4,1,0,10,11,1,0,13,14,1,0,15,18,1,0,19,30,1,0,31,34,117,0,34,1,0,0,0,2,48,1,0,0,0,4,59,1,0,0,0,6,65,1,0,0,0,8,67,1,0,0,0,10,77,1,0,0,0,12,84,1,0,0,0,14,89,1,0,0,0,16,92,1,0,0,0,18,94,1,0,0,0,20,105,1,0,0,0,22,107,1,0,0,0,24,109,1,0,0,0,26,111,1,0,0,0,28,113,1,0,0,0,30,115,1,0,0,0,32,117,1,0,0,0,34,35,3,2,1,0,35,36,5,0,0,1,36,1,1,0,0,0,37,38,6,1,-1,0,38,39,3,4,2,0,39,40,3,28,14,0,40,41,3,6,3,0,41,49,1,0,0,0,42,43,5,1,0,0,43,44,3,8,4,0,44,45,5,2,0,0,45,49,1,0,0,0,46,47,7,0,0,0,47,49,3,2,1,1,48,37,1,0,0,0,48,42,1,0,0,0,48,46,1,0,0,0,49,56,1,0,0,0,50,51,10,3,0,0,51,52,3,30,15,0,52,53,3,2,1,4,53,55,1,0,0,0,54,50,1,0,0,0,55,58,1,0,0,0,56,54,1,0,0,0,56,57,1,0,0,0,57,3,1,0,0,0,58,56,1,0,0,0,59,60,3,12,6,0,60,5,1,0,0,0,61,66,3,10,5,0,62,66,3,12,6,0,63,66,3,14,7,0,64,66,3,18,9,0,65,61,1,0,0,0,65,62,1,0,0,0,65,63,1,0,0,0,65,64,1,0,0,0,66,7,1,0,0,0,67,68,3,2,1,0,68,9,1,0,0,0,69,78,5,40,0,0,70,78,3,24,12,0,71,78,3,20,10,0,72,78,3,22,11,0,73,78,5,38,0,0,74,78,5,37,0,0,75,78,5,39,0,0,76,78,5,42,0,0,77,69,1,0,0,0,77,70,1,0,0,0,77,71,1,0,0,0,77,72,1,0,0,0,77,73,1,0,0,0,77,74,1,0,0,0,77,75,1,0,0,0,77,76,1,0,0,0,78,11,1,0,0,0,79,80,3,16,8,0,80,81,5,5,0,0,81,83,1,0,0,0,82,79,1,0,0,0,83,86,1,0,0,0,84,82,1,0,0,0,84,85,1,0,0,0,85,87,1,0,0,0,86,84,1,0,0,0,87,88,3,16,8,0,88,13,1,0,0,0,89,90,5,6,0,0,90,91,3,16,8,0,91,15,1,0,0,0,92,93,5,35,0,0,93,17,1,0,0,0,94,95,5,7,0,0,95,100,3,10,5,0,96,97,5,8,0,0,97,99,3,10,5,0,98,96,1,0,0,0,99,102,1,0,0,0,100,98,1,0,0,0,100,101,1,0,0,0,101,103,1,0,0,0,102,100,1,0,0,0,103,104,5,9,0,0,104,19,1,0,0,0,105,106,7,1,0,0,106,21,1,0,0,0,107,108,5,12,0,0,108,23,1,0,0,0,109,110,7,2,0,0,110,25,1,0,0,0,111,112,7,3,0,0,112,27,1,0,0,0,113,114,7,4,0,0,114,29,1,0,0,0,115,116,7,5,0,0,116,31,1,0,0,0,117,118,5,36,0,0,118,33,1,0,0,0,6,48,56,65,77,84,100];f.DecisionsToDFA=f._ATN.decisionToState.map((o,e)=>new np(o,e));var Js=f,eo=class eo extends B{constructor(e,t,r){super(t,r),this.parser=e}expression(){return this.getTypedRuleContext(Q,0)}EOF(){return this.getToken(f.EOF,0)}get ruleIndex(){return f.RULE_root}enterRule(e){e.enterRoot&&e.enterRoot(this)}exitRule(e){e.exitRoot&&e.exitRoot(this)}accept(e){return e.visitRoot?e.visitRoot(this):e.visitChildren(this)}};a(eo,"RootContext");var $i=eo,to=class to extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_expression}copyFrom(e){super.copyFrom(e)}};a(to,"ExpressionContext");var Q=to,ro=class ro extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}parenthesizedItem(){return this.getTypedRuleContext(Dr,0)}enterRule(e){e.enterParenthesizedExpression&&e.enterParenthesizedExpression(this)}exitRule(e){e.exitParenthesizedExpression&&e.exitParenthesizedExpression(this)}accept(e){return e.visitParenthesizedExpression?e.visitParenthesizedExpression(this):e.visitChildren(this)}};a(ro,"ParenthesizedExpressionContext");var Bi=ro,io=class io extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}expression(){return this.getTypedRuleContext(Q,0)}enterRule(e){e.enterNegativeExpression&&e.enterNegativeExpression(this)}exitRule(e){e.exitNegativeExpression&&e.exitNegativeExpression(this)}accept(e){return e.visitNegativeExpression?e.visitNegativeExpression(this):e.visitChildren(this)}};a(io,"NegativeExpressionContext");var qi=io,oo=class oo extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}comparisonLeft(){return this.getTypedRuleContext(br,0)}comparisonOperator(){return this.getTypedRuleContext(Ir,0)}comparisonRight(){return this.getTypedRuleContext(Ar,0)}enterRule(e){e.enterComparisonExpression&&e.enterComparisonExpression(this)}exitRule(e){e.exitComparisonExpression&&e.exitComparisonExpression(this)}accept(e){return e.visitComparisonExpression?e.visitComparisonExpression(this):e.visitChildren(this)}};a(oo,"ComparisonExpressionContext");var Ki=oo,no=class no extends Q{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}expression_list(){return this.getTypedRuleContexts(Q)}expression(e){return this.getTypedRuleContext(Q,e)}logicalOperator(){return this.getTypedRuleContext(Pr,0)}enterRule(e){e.enterLogicalExpression&&e.enterLogicalExpression(this)}exitRule(e){e.exitLogicalExpression&&e.exitLogicalExpression(this)}accept(e){return e.visitLogicalExpression?e.visitLogicalExpression(this):e.visitChildren(this)}};a(no,"LogicalExpressionContext");var Yt=no,so=class so extends B{constructor(e,t,r){super(t,r),this.parser=e}qualifiedIdentifier(){return this.getTypedRuleContext(Gt,0)}get ruleIndex(){return f.RULE_comparisonLeft}enterRule(e){e.enterComparisonLeft&&e.enterComparisonLeft(this)}exitRule(e){e.exitComparisonLeft&&e.exitComparisonLeft(this)}accept(e){return e.visitComparisonLeft?e.visitComparisonLeft(this):e.visitChildren(this)}};a(so,"ComparisonLeftContext");var br=so,ao=class ao extends B{constructor(e,t,r){super(t,r),this.parser=e}value(){return this.getTypedRuleContext(W,0)}qualifiedIdentifier(){return this.getTypedRuleContext(Gt,0)}externalConstant(){return this.getTypedRuleContext(Nr,0)}arrayValue(){return this.getTypedRuleContext(Sr,0)}get ruleIndex(){return f.RULE_comparisonRight}enterRule(e){e.enterComparisonRight&&e.enterComparisonRight(this)}exitRule(e){e.exitComparisonRight&&e.exitComparisonRight(this)}accept(e){return e.visitComparisonRight?e.visitComparisonRight(this):e.visitChildren(this)}};a(ao,"ComparisonRightContext");var Ar=ao,po=class po extends B{constructor(e,t,r){super(t,r),this.parser=e}expression(){return this.getTypedRuleContext(Q,0)}get ruleIndex(){return f.RULE_parenthesizedItem}enterRule(e){e.enterParenthesizedItem&&e.enterParenthesizedItem(this)}exitRule(e){e.exitParenthesizedItem&&e.exitParenthesizedItem(this)}accept(e){return e.visitParenthesizedItem?e.visitParenthesizedItem(this):e.visitChildren(this)}};a(po,"ParenthesizedItemContext");var Dr=po,co=class co extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_value}copyFrom(e){super.copyFrom(e)}};a(co,"ValueContext");var W=co,lo=class lo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}TIME(){return this.getToken(f.TIME,0)}enterRule(e){e.enterTimeLiteral&&e.enterTimeLiteral(this)}exitRule(e){e.exitTimeLiteral&&e.exitTimeLiteral(this)}accept(e){return e.visitTimeLiteral?e.visitTimeLiteral(this):e.visitChildren(this)}};a(lo,"TimeLiteralContext");var Vi=lo,fo=class fo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}null_(){return this.getTypedRuleContext(Mr,0)}enterRule(e){e.enterNullLiteral&&e.enterNullLiteral(this)}exitRule(e){e.exitNullLiteral&&e.exitNullLiteral(this)}accept(e){return e.visitNullLiteral?e.visitNullLiteral(this):e.visitChildren(this)}};a(fo,"NullLiteralContext");var zi=fo,mo=class mo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}DATETIME(){return this.getToken(f.DATETIME,0)}enterRule(e){e.enterDateTimeLiteral&&e.enterDateTimeLiteral(this)}exitRule(e){e.exitDateTimeLiteral&&e.exitDateTimeLiteral(this)}accept(e){return e.visitDateTimeLiteral?e.visitDateTimeLiteral(this):e.visitChildren(this)}};a(mo,"DateTimeLiteralContext");var Ji=mo,uo=class uo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}STRING(){return this.getToken(f.STRING,0)}enterRule(e){e.enterStringLiteral&&e.enterStringLiteral(this)}exitRule(e){e.exitStringLiteral&&e.exitStringLiteral(this)}accept(e){return e.visitStringLiteral?e.visitStringLiteral(this):e.visitChildren(this)}};a(uo,"StringLiteralContext");var Wi=uo,ho=class ho extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}DATE(){return this.getToken(f.DATE,0)}enterRule(e){e.enterDateLiteral&&e.enterDateLiteral(this)}exitRule(e){e.exitDateLiteral&&e.exitDateLiteral(this)}accept(e){return e.visitDateLiteral?e.visitDateLiteral(this):e.visitChildren(this)}};a(ho,"DateLiteralContext");var Yi=ho,yo=class yo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}infinity(){return this.getTypedRuleContext(Fr,0)}enterRule(e){e.enterInfinityLiteral&&e.enterInfinityLiteral(this)}exitRule(e){e.exitInfinityLiteral&&e.exitInfinityLiteral(this)}accept(e){return e.visitInfinityLiteral?e.visitInfinityLiteral(this):e.visitChildren(this)}};a(yo,"InfinityLiteralContext");var Gi=yo,To=class To extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}boolean_(){return this.getTypedRuleContext(vr,0)}enterRule(e){e.enterBooleanLiteral&&e.enterBooleanLiteral(this)}exitRule(e){e.exitBooleanLiteral&&e.exitBooleanLiteral(this)}accept(e){return e.visitBooleanLiteral?e.visitBooleanLiteral(this):e.visitChildren(this)}};a(To,"BooleanLiteralContext");var Qi=To,Eo=class Eo extends W{constructor(e,t){super(e,t.parentCtx,t.invokingState),super.copyFrom(t)}NUMBER(){return this.getToken(f.NUMBER,0)}enterRule(e){e.enterNumberLiteral&&e.enterNumberLiteral(this)}exitRule(e){e.exitNumberLiteral&&e.exitNumberLiteral(this)}accept(e){return e.visitNumberLiteral?e.visitNumberLiteral(this):e.visitChildren(this)}};a(Eo,"NumberLiteralContext");var Xi=Eo,_o=class _o extends B{constructor(e,t,r){super(t,r),this.parser=e}identifier_list(){return this.getTypedRuleContexts(Ze)}identifier(e){return this.getTypedRuleContext(Ze,e)}get ruleIndex(){return f.RULE_qualifiedIdentifier}enterRule(e){e.enterQualifiedIdentifier&&e.enterQualifiedIdentifier(this)}exitRule(e){e.exitQualifiedIdentifier&&e.exitQualifiedIdentifier(this)}accept(e){return e.visitQualifiedIdentifier?e.visitQualifiedIdentifier(this):e.visitChildren(this)}};a(_o,"QualifiedIdentifierContext");var Gt=_o,xo=class xo extends B{constructor(e,t,r){super(t,r),this.parser=e}identifier(){return this.getTypedRuleContext(Ze,0)}get ruleIndex(){return f.RULE_externalConstant}enterRule(e){e.enterExternalConstant&&e.enterExternalConstant(this)}exitRule(e){e.exitExternalConstant&&e.exitExternalConstant(this)}accept(e){return e.visitExternalConstant?e.visitExternalConstant(this):e.visitChildren(this)}};a(xo,"ExternalConstantContext");var Nr=xo,Oo=class Oo extends B{constructor(e,t,r){super(t,r),this.parser=e}IDENTIFIER(){return this.getToken(f.IDENTIFIER,0)}get ruleIndex(){return f.RULE_identifier}enterRule(e){e.enterIdentifier&&e.enterIdentifier(this)}exitRule(e){e.exitIdentifier&&e.exitIdentifier(this)}accept(e){return e.visitIdentifier?e.visitIdentifier(this):e.visitChildren(this)}};a(Oo,"IdentifierContext");var Ze=Oo,go=class go extends B{constructor(e,t,r){super(t,r),this.parser=e}value_list(){return this.getTypedRuleContexts(W)}value(e){return this.getTypedRuleContext(W,e)}get ruleIndex(){return f.RULE_arrayValue}enterRule(e){e.enterArrayValue&&e.enterArrayValue(this)}exitRule(e){e.exitArrayValue&&e.exitArrayValue(this)}accept(e){return e.visitArrayValue?e.visitArrayValue(this):e.visitChildren(this)}};a(go,"ArrayValueContext");var Sr=go,wo=class wo extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_boolean}enterRule(e){e.enterBoolean&&e.enterBoolean(this)}exitRule(e){e.exitBoolean&&e.exitBoolean(this)}accept(e){return e.visitBoolean?e.visitBoolean(this):e.visitChildren(this)}};a(wo,"BooleanContext");var vr=wo,Ro=class Ro extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_null}enterRule(e){e.enterNull&&e.enterNull(this)}exitRule(e){e.exitNull&&e.exitNull(this)}accept(e){return e.visitNull?e.visitNull(this):e.visitChildren(this)}};a(Ro,"NullContext");var Mr=Ro,bo=class bo extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_infinity}enterRule(e){e.enterInfinity&&e.enterInfinity(this)}exitRule(e){e.exitInfinity&&e.exitInfinity(this)}accept(e){return e.visitInfinity?e.visitInfinity(this):e.visitChildren(this)}};a(bo,"InfinityContext");var Fr=bo,Ao=class Ao extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_arithmeticOperator}enterRule(e){e.enterArithmeticOperator&&e.enterArithmeticOperator(this)}exitRule(e){e.exitArithmeticOperator&&e.exitArithmeticOperator(this)}accept(e){return e.visitArithmeticOperator?e.visitArithmeticOperator(this):e.visitChildren(this)}};a(Ao,"ArithmeticOperatorContext");var Zi=Ao,Do=class Do extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_comparisonOperator}enterRule(e){e.enterComparisonOperator&&e.enterComparisonOperator(this)}exitRule(e){e.exitComparisonOperator&&e.exitComparisonOperator(this)}accept(e){return e.visitComparisonOperator?e.visitComparisonOperator(this):e.visitChildren(this)}};a(Do,"ComparisonOperatorContext");var Ir=Do,No=class No extends B{constructor(e,t,r){super(t,r),this.parser=e}get ruleIndex(){return f.RULE_logicalOperator}enterRule(e){e.enterLogicalOperator&&e.enterLogicalOperator(this)}exitRule(e){e.exitLogicalOperator&&e.exitLogicalOperator(this)}accept(e){return e.visitLogicalOperator?e.visitLogicalOperator(this):e.visitChildren(this)}};a(No,"LogicalOperatorContext");var Pr=No,So=class So extends B{constructor(e,t,r){super(t,r),this.parser=e}POLAR_OP(){return this.getToken(f.POLAR_OP,0)}get ruleIndex(){return f.RULE_polarityOperator}enterRule(e){e.enterPolarityOperator&&e.enterPolarityOperator(this)}exitRule(e){e.exitPolarityOperator&&e.exitPolarityOperator(this)}accept(e){return e.visitPolarityOperator?e.visitPolarityOperator(this):e.visitChildren(this)}};a(So,"PolarityOperatorContext");var Hi=So;import{ParseTreeVisitor as fp}from"@browsery/antlr4";var vo=class vo extends M{constructor(e){super(""+e)}toString(){return"@"+super.toString()}};a(vo,"ExternalConstant");var Lr=vo;var Mo=class Mo extends fp{constructor(e){super(),this._timeZone=e==null?void 0:e.timeZone}visitChildren(e){let t=super.visitChildren(e);return Array.isArray(t)&&t.length<2?t[0]:t??e.getText()}defaultResult(){}visitRoot(e){return this.visit(e.expression())}visitParenthesizedExpression(e){let t=this.visit(e.parenthesizedItem());return new xe(t)}visitParenthesizedItem(e){return this.visit(e.expression())}visitNegativeExpression(e){let t=this.visit(e.expression());return new zt(t)}visitComparisonExpression(e){return new le({op:e.comparisonOperator().getText(),left:this.visit(e.comparisonLeft()),right:this.visit(e.comparisonRight())})}visitLogicalExpression(e){let t=[],r=a((i,n)=>{for(let s of i){if(s instanceof Yt&&s.logicalOperator().getText()===n){r(s.expression_list(),s.logicalOperator().getText());continue}let p=this.visit(s);t.push(p)}},"wrapChildren");return r(e.expression_list(),e.logicalOperator().getText()),new fe({op:e.logicalOperator().getText(),items:t})}visitQualifiedIdentifier(e){return new X(e.getText())}visitExternalConstant(e){return new Lr(e.identifier().getText())}visitNullLiteral(){return new Ue}visitBooleanLiteral(e){return new Ce(e.getText()==="true")}visitNumberLiteral(e){return new Oe(e.getText())}visitStringLiteral(e){return new $e(Jt(e.getText()))}visitInfinityLiteral(){return new Oe(1/0)}visitDateLiteral(e){return new be(Jt(e.getText()))}visitDateTimeLiteral(e){return new Wt(Jt(e.getText()))}visitTimeLiteral(e){return new Be(Jt(e.getText()))}visitArrayValue(e){return new _e(e.value_list().map(t=>this.visit(t)))}};a(Mo,"FilterTreeVisitor");var Qt=Mo;import{ErrorListener as mp}from"@browsery/antlr4";var Fo=class Fo extends mp{constructor(e){super(),this.errors=e}syntaxError(e,t,r,i,n,s){this.errors.push(new wr(n,{recognizer:e,offendingSymbol:t,line:r,column:i,e:s}))}};a(Fo,"OpraErrorListener");var Xt=Fo;function Io(o,e){let t=new up(o),r=new Vs(t),i=new dp(r),n=new Js(i);n.buildParseTrees=!0;let s=[],p=new Xt(s);r.removeErrorListeners(),r.addErrorListener(p),n.removeErrorListeners(),n.addErrorListener(p);let c=n.root();if(s.length){let l=[];for(let g of s)l.push(g.message+(o.includes(`
|
|
8
8
|
`)?" at line: "+g.line+" column: "+g.column:" at column: "+g.column));let x=new gr(l.join(`
|
|
9
|
-
`));throw x.errors=s,x}return e=e||new Qt,e.visit(c)}a(Io,"parse");var Po=class Po{constructor(e,t){if(this._rules=new v,this._decoderCache=new WeakMap,Object.defineProperty(this,"_rules",{value:new v(null,{caseSensitive:t==null?void 0:t.caseSensitive}),enumerable:!1}),e)for(let[r,i]of Object.entries(e))this.set(r,i)}set(e,t){let r=typeof(t==null?void 0:t.operators)=="string"?t.operators.split(/\s*[,| ]\s*/):t==null?void 0:t.operators;this._rules.set(e,hp({...t,operators:r}))}normalizeFilter(e,t,r){let i=typeof e=="string"?Io(e):e;return this.normalizeFilterAst(i,[],t,r)}normalizeFilterAst(e,t,r,i){if(e instanceof le){if(t.push(e),this.normalizeFilterAst(e.left,t,r),!(e.left instanceof X&&e.left.field))throw new TypeError("Invalid filter query. Left side should be a data field.");let n=this._rules.get(e.left.value);if(!n)throw new Ee({message:`Field '${e.left.value}' is not available for filter operation`,code:"UNACCEPTED_FILTER_FIELD",details:{field:e.left.value}});if(n.operators&&!n.operators.includes(e.op))throw new Ee({message:`'${e.left.value}' field do not accept '${e.op}' filter operator`,code:"UNACCEPTED_FILTER_OPERATION",details:{field:e.left.value,operator:e.op}});return n.mappedField&&(e.left.value=n.mappedField),n.prepare&&(e.prepare=n.prepare),this.normalizeFilterAst(e.right,t,r),t.pop(),e}if(e instanceof fe)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n,t,r)),t.pop(),e;if(e instanceof je)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n.expression,t,r)),t.pop(),e;if(e instanceof _e)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n,t,r)),t.pop(),e;if(e instanceof xe)return t.push(e),this.normalizeFilterAst(e.expression,t,r),t.pop(),e;if(e instanceof X&&r)return e.value=r.normalizeFieldPath(e.value,{scope:i}),e.field=r.getField(e.value,i),e.dataType=e.field.type,e;if(e instanceof M){let n=t.findLastIndex(s=>s instanceof le);if(n>=0){let s=t[n];if((e===s.right||t[n+1]===s.right)&&s&&s.left instanceof X&&s.left.field){if(e.value==null&&!s.left.field.required)return e.value;let p;s.op==="like"||s.op==="!like"||s.op==="ilike"||s.op==="!ilike"?p=yp:p=this._decoderCache.get(s.left.field),p||(p=s.left.field.type.generateCodec("decode",{scope:i,projection:"*",ignoreWriteonlyFields:!0,coerce:!0}),this._decoderCache.set(s.left.field,p)),e.value=p(e.value,{coerce:!0})}}}return e}toJSON(){return this._rules.toObject()}[Symbol.iterator](){return this._rules.entries()}};a(Po,"FilterRules");var He=Po;import Sp from"object-hash";import{asMutable as vp}from"ts-gems";import{validator as Mp,vg as Y}from"valgen";import{omitUndefined as Dp}from"@jsopen/objects";import{asMutable as Np}from"ts-gems";import{asMutable as bp}from"ts-gems";import{uid as Ap}from"uid";var m={};hr(m,{ComplexType:()=>et,EnumType:()=>tt,HttpController:()=>Zt,HttpOperation:()=>Lo,MappedType:()=>rt,MixinType:()=>it,RpcController:()=>ko,RpcOperation:()=>jo,SimpleType:()=>ot,SpecVersion:()=>_0,UnionType:()=>nt,isComplexType:()=>Ep,isDataType:()=>Tp,isEnumType:()=>gp,isHttpController:()=>Rp,isMappedType:()=>Op,isMixinType:()=>xp,isSimpleType:()=>_p,isUnionType:()=>wp});var _0="1.0";var et;(function(o){o.Kind="ComplexType"})(et||(et={}));var tt;(function(o){o.Kind="EnumType"})(tt||(tt={}));var rt;(function(o){o.Kind="MappedType"})(rt||(rt={}));var it;(function(o){o.Kind="MixinType"})(it||(it={}));var ot;(function(o){o.Kind="SimpleType"})(ot||(ot={}));var nt;(function(o){o.Kind="UnionType"})(nt||(nt={}));var Zt;(function(o){o.Kind="HttpController"})(Zt||(Zt={}));var Lo;(function(o){o.Kind="HttpOperation"})(Lo||(Lo={}));var ko;(function(o){o.Kind="RpcController"})(ko||(ko={}));var jo;(function(o){o.Kind="RpcOperation"})(jo||(jo={}));function Tp(o){return o&&typeof o=="object"&&(o.kind===et.Kind||o.kind===tt.Kind||o.kind===rt.Kind||o.kind===ot.Kind||o.kind===it.Kind||o.kind===nt.Kind)}a(Tp,"isDataType");function Ep(o){return o&&typeof o=="object"&&o.kind===et.Kind}a(Ep,"isComplexType");function _p(o){return o&&typeof o=="object"&&o.kind===ot.Kind}a(_p,"isSimpleType");function xp(o){return o&&typeof o=="object"&&o.kind===it.Kind}a(xp,"isMixinType");function Op(o){return o&&typeof o=="object"&&o.kind===rt.Kind}a(Op,"isMappedType");function gp(o){return o&&typeof o=="object"&&o.kind===tt.Kind}a(gp,"isEnumType");function wp(o){return o&&typeof o=="object"&&o.kind===nt.Kind}a(wp,"isUnionType");function Rp(o){return o&&typeof o=="object"&&o.kind===Zt.Kind}a(Rp,"isHttpController");var Co=class Co{constructor(e,t){this.element=e,this.parent=t}getDocument(){if(this._document)return this._document;if(this.element[we])return this.element;if(this.parent)return this._document=this.parent.getDocument();throw new Error("ApiDocument not found in document tree")}hasDataType(e,t){return!!this.findDataType(e,t)}findDataType(e,t){var i;let r=(i=this[C])==null?void 0:i.get(e);return r&&r.inScope(t)?r:this.parent?this.parent.findDataType(e,t):void 0}getDataType(e,t){let r=this.findDataType(e,t);if(r)return r;let i="";if(typeof e=="function")i=Reflect.getMetadata(d,e).name;else if(typeof e=="object"){let n=e[d];i=n==null?void 0:n.name}throw i||(e&&typeof e=="string"?i=e:typeof e=="function"&&(i=e.name)),r?new TypeError(`Data type${i?" ("+i+")":""} is not in requested scope (${t})`):new TypeError(`Unknown data type${i?" ("+i+")":""}`)}getDataTypeNameWithNs(e){if(!e.name)return;let t=this.getDocument().getDataTypeNs(e);return t?t+":"+e.name:e.name}getComplexType(e,t){let r=this.getDataType(e,t);if(r.kind===m.ComplexType.Kind)return r;throw new TypeError(`Data type "${r.name}" is not a ComplexType`)}getSimpleType(e,t){let r=this.getDataType(e,t);if(r.kind===m.SimpleType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a SimpleType`)}getEnumType(e,t){let r=this.getDataType(e,t);if(r.kind===m.EnumType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a EnumType`)}getMappedType(e,t){let r=this.getDataType(e,t);if(r.kind===m.MappedType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MappedType`)}getMixinType(e,t){let r=this.getDataType(e,t);if(r.kind===m.MixinType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MixinType`)}getUnionType(e,t){let r=this.getDataType(e,t);if(r.kind===m.UnionType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MixinType`)}};a(Co,"DocumentNode");var kr=Co;var R=a(function(o){if(!this)throw new TypeError('"this" should be passed to call class constructor');let e=bp(this);e.id=Ap(16),Object.defineProperty(e,"node",{value:new kr(this,o==null?void 0:o.node),enumerable:!1,writable:!0}),o&&Object.defineProperty(e,"owner",{value:o,enumerable:!1,writable:!0})},"DocumentElement"),$o=class $o{};a($o,"DocumentElementClass");var Uo=$o;R.prototype=Uo.prototype;var st=Symbol.for("nodejs.util.inspect.custom"),qe="\x1B[0m",at="\x1B[33m",pt="\x1B[35m";function Ht(o,e){return!e||o==="*"?!0:o?Array.isArray(e)?e.some(t=>typeof t=="string"?o===t:t.test(o)):typeof e=="string"?o===e:e.test(o):!1}a(Ht,"testScopeMatch");var _=a(function(o,e,t){if(!this)throw new TypeError('"this" should be passed to call class constructor');if(e!=null&&e.name&&!j.test(e.name))throw new TypeError(`"${e.name}" is not a valid DataType name`);R.call(this,o);let r=Np(this);r.kind=e.kind,r.scopePattern=e.scopePattern?Array.isArray(e.scopePattern)?e.scopePattern:[e.scopePattern]:void 0,r.name=e.name,r.description=e.description,r.abstract=e.abstract,r.examples=e.examples},"DataType"),qo=class qo extends R{get embedded(){return!this.name}inScope(e){return Ht(e,this.scopePattern)}toJSON(e){let t=this._locateBase(r=>!r.inScope(e==null?void 0:e.scope));if(t){let r=this.node.getDataTypeNameWithNs(t);throw new TypeError(`"${r}" model is not available for "${(e==null?void 0:e.scope)||"null"}" scope`)}return Dp({kind:this.kind,description:this.description,abstract:this.abstract,examples:this.examples})}toString(){return`[${Object.getPrototypeOf(this).constructor.name} ${this.name||"#Embedded"}]`}[st](){return`[${at+Object.getPrototypeOf(this).constructor.name+qe} ${pt+this.name+qe}]`}};a(qo,"DataTypeClass");var Bo=qo;_.prototype=Bo.prototype;var ct=/^([+-])?([a-z$_][\w.]*)$/i,L=a(function(...o){if(!this)throw new TypeError('"this" should be passed to call class constructor');let[e,t,r]=o;_.call(this,e,t,r);let i=vp(this);i._fields=new v},"ComplexTypeBase"),Vo=class Vo extends _{fieldCount(e){if(e==="*")return this._fields.size;let t=0;for(let r of this.fields(e))t++;return t}fieldEntries(e){let t=this._fields.entries();if(e==="*")return t;let r;return{next(){for(;t&&(r=t.next(),!(r.done||r.value&&r.value[1].inScope(e))););return r.done?{done:r.done,value:void 0}:{done:r.done,value:[r.value[0],r.value[1].forScope(e)]}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}fields(e){let t=this.fieldEntries(e),r;return{next(){var i;return t?(r=t.next(),{done:r.done,value:(i=r.value)==null?void 0:i[1]}):{done:!0,value:void 0}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}fieldNames(e){if(e==="*")return this._fields.keys();let t=this.fieldEntries(e),r;return{next(){var i;return t?(r=t.next(),{done:r.done,value:(i=r.value)==null?void 0:i[0]}):{done:!0,value:void 0}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}findField(e,t){if(e.includes(".")){let i=this.parseFieldPath(e,{scope:t});if(i.length===0)throw new Error(`Field "${e}" does not exist in scope "${t}"`);let n=i.pop();return n==null?void 0:n.field}let r=this._fields.get(e);if(r&&r.inScope(t))return r.forScope(t)}getField(e,t){let r=this.findField(e,"*");if(r&&!r.inScope(t))throw new Error(`Field "${e}" does not exist in scope "${t||"null"}"`);if(!r)throw new Error(`Field (${e}) does not exist`);return r.forScope(t)}parseFieldPath(e,t){var g,y,G;let r=this,i,n=e.split("."),s=n.length,p=[],c=this.owner.node.getDataType("object"),l=t==null?void 0:t.allowSigns,x=a(()=>p.map(P=>P.fieldName).join("."),"getStrPath");for(let P=0;P<s;P++){let q={fieldName:n[P],dataType:c};p.push(q);let Ie=ct.exec(n[P]);if(!Ie)throw new TypeError(`Invalid field name (${x()})`);if(Ie[1]&&((P===0&&l==="first"||l==="each")&&(q.sign=Ie[1]),q.fieldName=Ie[2]),r){if(r instanceof L){if(i=r.findField(q.fieldName,t==null?void 0:t.scope),i){q.fieldName=i.name,q.field=i,q.dataType=i.type,r=i.type;continue}if(((g=r.additionalFields)==null?void 0:g[0])===!0){q.additionalField=!0,q.dataType=c,r=void 0;continue}if(((y=r.additionalFields)==null?void 0:y[0])==="type"&&((G=r.additionalFields)==null?void 0:G[1])instanceof _){q.additionalField=!0,q.dataType=r.additionalFields[1],r=r.additionalFields[1];continue}throw new Error(`Unknown field (${p.map(Qr=>Qr.fieldName).join(".")})`)}throw new TypeError(`"${p.map(Qr=>Qr.fieldName).join(".")}" field is not a complex type and has no child fields`)}q.additionalField=!0,q.dataType=c}return p}normalizeFieldPath(e,t){return this.parseFieldPath(e,t).map(r=>(r.sign||"")+r.fieldName).join(".")}generateCodec(e,t){var p;let r=t!=null&&t.cache?t:{...t,projection:Array.isArray(t==null?void 0:t.projection)?$s(t.projection):t==null?void 0:t.projection,currentPath:""},i=this._generateSchema(e,r),n;if(this.additionalFields instanceof _)n=this.additionalFields.generateCodec(e,t);else if(typeof this.additionalFields=="boolean")n=this.additionalFields;else if(Array.isArray(this.additionalFields))if(this.additionalFields.length<2)n="error";else{let c=n[1];n=Mp((l,x,g)=>x.fail(g,c,l))}let s=Y.isObject(i,{ctor:this.name==="object"?Object:this.ctor,additionalFields:n,name:this.name,coerce:!0,caseInSensitive:t==null?void 0:t.caseInSensitive,onFail:t==null?void 0:t.onFail});if(r.level===0&&((p=r.forwardCallbacks)!=null&&p.size))for(let c of r.forwardCallbacks)c();return s}_generateSchema(e,t){var c;t.fieldCache=t.fieldCache||new Map,t.level=t.level||0,t.forwardCallbacks=t.forwardCallbacks||new Set;let r={},{currentPath:i,projection:n}=t,s=!!(n&&Object.values(n).find(l=>!l.sign)),p;for(let l of this.fields("*")){if(!l.inScope(t.scope)||!(t.keepKeyFields&&this.keyField)&&(t.ignoreReadonlyFields&&l.readonly||t.ignoreWriteonlyFields&&l.writeonly)){r[l.name]=Y.isUndefined({coerce:!0});continue}p=l.name;let x;if(n!=="*"&&(x=n==null?void 0:n[p.toLowerCase()],(x==null?void 0:x.sign)==="-"||s&&!x||!s&&l.exclusive&&!x)){r[l.name]=Y.isUndefined({coerce:!0});continue}let g=typeof n=="object"?((c=n[p])==null?void 0:c.projection)||"*":n,y=t.fieldCache.get(l),G=typeof g=="string"?g:Sp(g||{});y||(y={},t.fieldCache.set(l,y));let P=y[G];if(P===null)P=Y.isAny(),t.forwardCallbacks.add(()=>{P=y[G],r[p]=t.partial||!l.required?Y.optional(P):Y.required(P)});else if(!P){let q=a(()=>{y[G]=null;let Ie=this._generateFieldCodec(e,l,{...t,partial:t.partial==="deep"?t.partial:void 0,projection:g,currentPath:i+(i?".":"")+p});return y[G]=Ie,Ie},"defaultGenerator");t.fieldHook?P=t.fieldHook(l,t.currentPath,q):P=q()}r[p]=t.partial||!(l.required||P.id==="required")?Y.optional(P):P.id==="required"?P:Y.required(P)}return t.allowPatchOperators&&(r._$pull=Y.optional(Y.isAny()),r._$push=Y.optional(Y.isAny())),r}_generateFieldCodec(e,t,r){let i=t.type.generateCodec(e,{...r,level:r.level+1},{convertToNative:t.convertToNative});return t.fixed&&(i=Y.isEqual(t.fixed)),t.isArray&&(i=Y.isArray(i)),i}};a(Vo,"ComplexTypeBaseClass");var Ko=Vo;L.prototype=Ko.prototype;import"reflect-metadata";import{omitUndefined as zo}from"@jsopen/objects";import{asMutable as Fp}from"ts-gems";import{vg as Ip}from"valgen";var Z=a(function(...o){if(!this)return Z[D].apply(void 0,o);let[e,t,r]=o;_.call(this,e,t,r);let i=Fp(this);if(i.kind=m.EnumType.Kind,t.base){if(!(t.base instanceof Z))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${i.kind}"`);i.base=t.base}i.instance=t.instance,i.ownAttributes=I(t.attributes||{}),i.attributes=i.base?I(i.base.attributes):{};for(let[n,s]of Object.entries(i.ownAttributes))i.attributes[n]=s},"EnumType"),Jo=class Jo extends _{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof Z?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}generateCodec(){return Ip.isEnum(Object.keys(this.attributes))}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0;return zo({...t,kind:this.kind,base:r,attributes:I(this.ownAttributes)})}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Jo,"EnumTypeClass");var er=Jo;Z.prototype=er.prototype;Object.assign(Z,er);function Pp(o,...e){let t=e.length>=2?e[0]:void 0,r=e.length>=2?e[1]:e[0],i={},n=o;if(Array.isArray(o)){if(t){if(!Array.isArray(t))throw new TypeError('Both "target" and "base" arguments should be array');n=[...t,...o]}i={},o.forEach(p=>{var l;let c=(l=r==null?void 0:r.meanings)==null?void 0:l[p];i[p]=zo({description:c})})}else{if(t){if(Array.isArray(t))throw new TypeError('Both "target" and "base" arguments should be enum object');n={...t,...o}}Object.keys(o).forEach(p=>{var l;let c=(l=r==null?void 0:r.meanings)==null?void 0:l[p];i[o[p]]=zo({alias:p,description:c})})}let s={kind:m.EnumType.Kind,attributes:i,base:r==null?void 0:r.base,name:r==null?void 0:r.name,description:r==null?void 0:r.description};return Object.defineProperty(o,d,{value:s,enumerable:!1,configurable:!0,writable:!0}),n}a(Pp,"EnumTypeFactory");Z.prototype=er.prototype;Z[D]=Pp;var gn={};hr(gn,{Base64Type:()=>Qo,DateTimeType:()=>rr,DateTimeTypeTz:()=>ir,DateType:()=>tr,EmailType:()=>H,FieldPathType:()=>z,FilterType:()=>Ve,ObjectIdType:()=>pn,OperationResult:()=>re,PartialDateType:()=>nr,TimeType:()=>sr,UrlType:()=>On,UuidType:()=>$r});import{__decorate as kp,__metadata as jp}from"tslib";import{isBase64 as Cp,validator as Xs,vg as Qs}from"valgen";import"reflect-metadata";import{omitUndefined as Ys}from"@jsopen/objects";import{asMutable as Lp}from"ts-gems";import{isAny as Gs}from"valgen";function Wo(o){let e=[],t=a(function(r){let i;if(!(o!=null&&o.embedded))if(o!=null&&o.name){if(!j.test(o.name))throw new TypeError(`"${o.name}" is not a valid type name`);i=o.name}else i=r.name,i=i.toLowerCase();let n=Reflect.getOwnMetadata(d,r)||{};o&&Object.assign(n,o),n.kind=m.SimpleType.Kind,n.name=i,Reflect.defineMetadata(d,n,r);for(let s of e)s(n,r)},"decorator");return t.Example=(r,i)=>(e.push(n=>{n.examples=n.examples||[],n.examples.push({description:i,value:r})}),t),t}a(Wo,"SimpleTypeDecoratorFactory");function Ws(o){return(e,t)=>{if(typeof t!="string")throw new TypeError("Symbol properties can't be decorated with Attribute");let r=Reflect.getOwnMetadata(d,e.constructor)||{},i=Reflect.getMetadata("design:type",e,t),n="string";i===Boolean?n="boolean":i===Number&&(n="number"),r.kind=m.SimpleType.Kind,r.attributes=r.attributes||{},r.attributes[t]={format:(o==null?void 0:o.format)||n,description:o==null?void 0:o.description,deprecated:o==null?void 0:o.deprecated},Reflect.defineMetadata(d,r,e.constructor)}}a(Ws,"AttributeDecoratorFactory");var u=a(function(...o){var n,s;if(!this)return u[D](...o);let[e,t,r]=o;_.call(this,e,t,r);let i=Lp(this);if(i.kind=m.SimpleType.Kind,t.base){if(!(t.base instanceof u))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base}if(i.properties=t.properties,i.ownNameMappings={...t.nameMappings},i.nameMappings={...(n=i.base)==null?void 0:n.nameMappings,...t.nameMappings},i.ownAttributes=I(t.attributes||{}),i.attributes=i.base?I(i.base.attributes):{},i.ownAttributes)for(let[p,c]of Object.entries(i.ownAttributes)){if((s=i.attributes[p])!=null&&s.sealed)throw new TypeError(`Sealed attribute "${p}" can not be overwritten`);i.attributes[p]=c}i._generateDecoder=t.generateDecoder,i._generateEncoder=t.generateEncoder},"SimpleType"),Go=class Go extends _{extend(e){return Object.setPrototypeOf(e,this),e}extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof u?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}generateCodec(e,t,r){let i={...this.properties,...r};if(e==="decode"){let s=this;for(;s;){if(s._generateDecoder)return s._generateDecoder(i,(t==null?void 0:t.documentElement)||this.owner,t==null?void 0:t.scope);s=this.base}return Gs}let n=this;for(;n;){if(n._generateEncoder)return n._generateEncoder(i,(t==null?void 0:t.documentElement)||this.owner,t==null?void 0:t.scope);n=this.base}return Gs}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0,i=Ys(this.ownAttributes),n;this.properties&&typeof this.properties.toJSON=="function"?n=this.properties.toJSON(this.properties,this.owner,e):n=this.properties?I(this.properties):{};let s={...t,kind:this.kind,base:r,attributes:i&&Object.keys(i).length?i:void 0,properties:Object.keys(n).length?n:void 0};return Object.keys(this.ownNameMappings).length&&(s.nameMappings={...this.ownNameMappings}),Ys(s,!0)}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Go,"SimpleTypeClass");var Yo=Go;u.prototype=Yo.prototype;Object.assign(u,Wo);u[D]=Wo;u.Attribute=Ws;var lt,Qo=(lt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=Qs.isBase64({coerce:!0});return e.convertToNative?Qs.pipe([t,Up],{coerce:!0}):t}[O](){return $p}},a(lt,"Base64Type"),lt);Qo=kp([u({name:"base64",description:"A stream of bytes, base64 encoded",nameMappings:{js:"string",json:"string"}}),jp("design:paramtypes",[Object])],Qo);var Up=Xs(o=>Buffer.from(o,"base64")),$p=Xs(o=>Buffer.isBuffer(o)?o.toString("base64"):Cp(o));import{__decorate as Xo,__metadata as Zo}from"tslib";import{vg as Ae}from"valgen";var Zs=Ae.isDateString({precisionMin:"day",trim:"day",coerce:!0}),Bp=Ae.isDate({trim:"day",coerce:!0}),ft,tr=(ft=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t;e.convertToNative?t=Bp:t=Zs;let r=[t];return e.minValue!=null&&r.push(Ae.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ae.isLte(t(e.maxValue))),r.length>0?Ae.pipe(r,{returnIndex:0}):t}[O](e){let t=Zs,r=[t];return e.minValue!=null&&r.push(Ae.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ae.isLte(t(e.maxValue))),r.length>0?Ae.pipe(r,{returnIndex:0}):t}},a(ft,"DateType"),ft);Xo([u.Attribute({description:"Minimum value"}),Zo("design:type",String)],tr.prototype,"minValue",void 0);Xo([u.Attribute({description:"Maximum value"}),Zo("design:type",String)],tr.prototype,"maxValue",void 0);tr=Xo([u({name:"date",description:"A date without time",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18","Full date value"),Zo("design:paramtypes",[Object])],tr);import{__decorate as Ho,__metadata as en}from"tslib";import{vg as De}from"valgen";var Hs=De.isDateString({precisionMin:"day",trim:"tz",coerce:!0}),qp=De.isDate({coerce:!0}),mt,rr=(mt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t;e.convertToNative?t=qp:t=Hs;let r=[t];return e.minValue!=null&&r.push(De.isGte(t(e.minValue))),e.maxValue!=null&&r.push(De.isLte(t(e.maxValue))),r.length>0?De.pipe(r,{returnIndex:0}):t}[O](e){let t=Hs,r=[t];return e.minValue!=null&&r.push(De.isGte(t(e.minValue))),e.maxValue!=null&&r.push(De.isLte(t(e.maxValue))),r.length>0?De.pipe(r,{returnIndex:0}):t}},a(mt,"DateTimeType"),mt);Ho([u.Attribute({description:"Minimum value"}),en("design:type",String)],rr.prototype,"minValue",void 0);Ho([u.Attribute({description:"Maximum value"}),en("design:type",String)],rr.prototype,"maxValue",void 0);rr=Ho([u({name:"datetime",description:"A full datetime value",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15").Example("2021-04-18 22:30:15").Example("2021-04-18 22:30"),en("design:paramtypes",[Object])],rr);import{__decorate as tn,__metadata as rn}from"tslib";import{vg as Ke}from"valgen";var ea=Ke.isDateString({precisionMin:"tz",coerce:!0}),ut,ir=(ut=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=ea,r=[t];return e.minValue!=null&&r.push(Ke.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ke.isLte(t(e.maxValue))),r.length>0?Ke.pipe(r,{returnIndex:0}):t}[O](e){let t=ea,r=[t];return e.minValue!=null&&r.push(Ke.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ke.isLte(t(e.maxValue))),r.length>0?Ke.pipe(r,{returnIndex:0}):t}},a(ut,"DateTimeTypeTz"),ut);tn([u.Attribute({description:"Minimum value"}),rn("design:type",String)],ir.prototype,"minValue",void 0);tn([u.Attribute({description:"Maximum value"}),rn("design:type",String)],ir.prototype,"maxValue",void 0);ir=tn([u({name:"datetimetz",description:"A full datetime value with time zone information",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15+03:00"),rn("design:paramtypes",[Object])],ir);import{__decorate as ue,__metadata as de}from"tslib";import{vg as ta}from"valgen";var dt,H=(dt=class{constructor(e){e&&Object.assign(this,e)}[T](e){return ta.isEmail({...e,coerce:!0})}[O](e){return ta.isEmail({...e,coerce:!0})}},a(dt,"EmailType"),dt);ue([u.Attribute({description:"If set to `true`, the validator will also match `Display Name <email-address>",default:!1}),de("design:type",Boolean)],H.prototype,"allowDisplayName",void 0);ue([u.Attribute({description:"If set to `true`, the validator will reject strings without the format `Display Name <email-address>",default:!1}),de("design:type",Boolean)],H.prototype,"requireDisplayName",void 0);ue([u.Attribute({description:"If set to `false`, the validator will not allow any non-English UTF8 character in email address's local part",default:!0}),de("design:type",Boolean)],H.prototype,"utf8LocalPart",void 0);ue([u.Attribute({description:"If set to `true`, the validator will not check for the standard max length of an email",default:!1}),de("design:type",Boolean)],H.prototype,"ignoreMaxLength",void 0);ue([u.Attribute({description:"If set to `true`, the validator will allow IP addresses in the host part",default:!1}),de("design:type",Boolean)],H.prototype,"allowIpDomain",void 0);ue([u.Attribute({description:"If set to `true`, some additional validation will be enabled, e.g. disallowing certain syntactically valid email addresses that are rejected by GMail.",default:!1}),de("design:type",Boolean)],H.prototype,"domainSpecificValidation",void 0);ue([u.Attribute({description:"If set to an array of strings and the part of the email after the @ symbol one of the strings defined in it, the validation fails."}),de("design:type",Array)],H.prototype,"hostBlacklist",void 0);ue([u.Attribute({description:"If set to an array of strings and the part of the email after the @ symbol matches none of the strings defined in it, the validation fails."}),de("design:type",Array)],H.prototype,"hostWhitelist",void 0);ue([u.Attribute({description:"If set to a string, then the validator will reject emails that include any of the characters in the string, in the name part."}),de("design:type",String)],H.prototype,"blacklistedChars",void 0);H=ue([u({name:"email",description:"An email value",nameMappings:{js:"string",json:"string"}}).Example("some.body@example.com"),de("design:paramtypes",[Object])],H);import{__decorate as on,__metadata as nn}from"tslib";import{toString as Kp,validator as Vp,vg as zp}from"valgen";var ht,z=(ht=class{constructor(e){e&&Object.assign(this,e)}[T](e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object"),n=e.allowSigns,s=Vp("decodeFieldPath",p=>i.normalizeFieldPath(p,{allowSigns:n,scope:r}));return zp.pipe([Kp,s])}[O](e,t,r){return this[T](e,t,r)}toJSON(e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object");_.prototype.toJSON.call(i,r);let n=i?t.node.getDataTypeNameWithNs(i):void 0;return{dataType:n||i.toJSON(r),allowSigns:e.allowSigns}}},a(ht,"FieldPathType"),ht);on([u.Attribute({description:"Data type which field belong to"}),nn("design:type",Object)],z.prototype,"dataType",void 0);on([u.Attribute({description:'Determines if signs (+,-) are allowed. If set "first" signs are allowed only beginning of the field pathIf set "each" signs are allowed at each field in the path'}),nn("design:type",String)],z.prototype,"allowSigns",void 0);z=on([u({name:"fieldpath",description:"Field path",nameMappings:{js:"string",json:"string"}}),nn("design:paramtypes",[Object])],z);import{__decorate as sn,__metadata as an}from"tslib";import{validator as ia}from"valgen";var or={};hr(or,{$and:()=>Wp,$arithmetic:()=>fc,$array:()=>ra,$date:()=>Yp,$eq:()=>Zp,$field:()=>Xp,$gt:()=>ec,$gte:()=>tc,$ilike:()=>pc,$in:()=>oc,$like:()=>sc,$lt:()=>rc,$lte:()=>ic,$ne:()=>Hp,$notILike:()=>cc,$notIn:()=>nc,$notLike:()=>ac,$number:()=>Qp,$or:()=>Jp,$paren:()=>lc,$time:()=>Gp,ArithmeticExpression:()=>je,ArithmeticExpressionItem:()=>Or,ArrayExpression:()=>_e,Ast:()=>Vt,BooleanLiteral:()=>Ce,ComparisonExpression:()=>le,DateLiteral:()=>be,DateTimeLiteral:()=>Wt,Expression:()=>U,FilterTreeVisitor:()=>Qt,Literal:()=>M,LogicalExpression:()=>fe,NegativeExpression:()=>zt,NullLiteral:()=>Ue,NumberLiteral:()=>Oe,OpraErrorListener:()=>Xt,ParenthesizedExpression:()=>xe,QualifiedIdentifier:()=>X,StringLiteral:()=>$e,Term:()=>ke,TimeLiteral:()=>Be,parse:()=>Io});function Jp(...o){return new fe({op:"or",items:o})}a(Jp,"$or");function Wp(...o){return new fe({op:"and",items:o})}a(Wp,"$and");function Yp(o){return new be(o)}a(Yp,"$date");function Gp(o){return new Be(o)}a(Gp,"$time");function Qp(o){return new Oe(o)}a(Qp,"$number");function ra(...o){return new _e(o.map(jr))}a(ra,"$array");function Xp(o){return new X(o)}a(Xp,"$field");function Zp(o,e){return ee("=",o,e)}a(Zp,"$eq");function Hp(o,e){return ee("!=",o,e)}a(Hp,"$ne");function ec(o,e){return ee(">",o,e)}a(ec,"$gt");function tc(o,e){return ee(">=",o,e)}a(tc,"$gte");function rc(o,e){return ee("<",o,e)}a(rc,"$lt");function ic(o,e){return ee("<=",o,e)}a(ic,"$lte");function oc(o,e){return ee("in",o,e)}a(oc,"$in");function nc(o,e){return ee("!in",o,e)}a(nc,"$notIn");function sc(o,e){return ee("like",o,e)}a(sc,"$like");function ac(o,e){return ee("!like",o,e)}a(ac,"$notLike");function pc(o,e){return ee("ilike",o,e)}a(pc,"$ilike");function cc(o,e){return ee("!ilike",o,e)}a(cc,"$notILike");function lc(o){return new xe(o)}a(lc,"$paren");function fc(o){let e=new je;return e.add=t=>(e.append("+",yt(t)),e),e.sub=t=>(e.append("-",yt(t)),e),e.mul=t=>(e.append("*",yt(t)),e),e.div=t=>(e.append("/",yt(t)),e),e.append("+",jr(o)),e}a(fc,"$arithmetic");function ee(o,e,t){let r=typeof e=="string"?new X(e):jr(e),i=jr(t);return new le({op:o,left:r,right:i})}a(ee,"comparisonExpression");var jr=a(o=>Array.isArray(o)?ra(...o.map(yt)):yt(o),"wrapEntryValue"),yt=a(o=>o instanceof U?o:typeof o=="boolean"?new Ce(o):typeof o=="number"||typeof o=="bigint"?new Oe(o):o==null?new Ue:o instanceof Date?new be(o):new $e(""+o),"_wrapEntryValue");var Tt,Ve=(Tt=class{constructor(e){e&&Object.assign(this,e)}[T](e,t){let r=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object"),i=e.rules?new He(e.rules):void 0;return mc(r,i)}[O](){return uc}toJSON(e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object");_.prototype.toJSON.call(i,r);let n=i?t.node.getDataTypeNameWithNs(i):void 0;return{dataType:n||i.toJSON(r),rules:e.rules}}},a(Tt,"FilterType"),Tt);sn([u.Attribute({description:"Data type which filtering fields belong to"}),an("design:type",Object)],Ve.prototype,"dataType",void 0);sn([u.Attribute({description:"Stringified JSON object defines filtering rules",format:"string"}),an("design:type",Object)],Ve.prototype,"rules",void 0);Ve=sn([u({name:"filter",description:"A query filter",nameMappings:{js:"object",json:"string"}}),an("design:paramtypes",[Object])],Ve);var mc=a((o,e,t)=>ia("decodeFilter",(r,i,n)=>{if(typeof r=="string")try{let s=or.parse(r);return e?e.normalizeFilter(s,o,t):s}catch(s){i.fail(n,`Not a valid filter expression. ${s.message}`,r);return}i.fail(n,"Nt a valid filter expression string",r)}),"decodeFilter"),uc=ia("encodeFilter",(o,e,t)=>{if(o instanceof or.Ast)return o.toString();e.fail(t,"Not a valid filter expression",o)});import{__decorate as dc,__metadata as hc}from"tslib";import{vg as oa}from"valgen";var Et,pn=(Et=class{constructor(e){e&&Object.assign(this,e)}[T](){return oa.isObjectId({coerce:!0})}[O](){return oa.isObjectId({coerce:!0})}},a(Et,"ObjectIdType"),Et);pn=dc([u({name:"ObjectId",description:"A MongoDB ObjectID value",nameMappings:{js:"object",json:"string"}}),hc("design:paramtypes",[Object])],pn);import{__decorate as ye,__metadata as Te}from"tslib";import{omitUndefined as na}from"@jsopen/objects";import{asMutable as Tc}from"ts-gems";import{omitUndefined as yc}from"@jsopen/objects";function cn(o){let e=[],t=a(function(r,i){if(typeof i!="string")throw new TypeError("Symbol properties can't be used as a field");let n=Reflect.getOwnMetadata(d,r.constructor)||{};n.kind=m.ComplexType.Kind,n.fields=n.fields||{};let s=Reflect.getMetadata("design:type",r,i),p=n.fields[i]={...o,designType:s};s===Array?p.isArray=!0:p.type=p.type||s,Reflect.defineMetadata(d,n,r.constructor);for(let c of e)c(p)},"decorator");return t.Override=(r,i)=>(e.push(n=>{n.override=n.override||[],n.override.push(yc({...i,scopePattern:Array.isArray(r)?r:[r],type:void 0,isArray:void 0,isNestedEntity:void 0}))}),t),t}a(cn,"ApiFieldDecoratorFactory");var k=a(function(...o){if(!this){let[n]=o;return k[D](n)}let[e,t]=o;R.call(this,e);let r=Tc(this);r.name=t.name;let i=t.origin||e;if(!(i instanceof L))throw new Error("Field origin should be one of ComplexType, MappedType or MixinType");r.origin=i,r.type=t.type||e.node.getDataType("any"),r.description=t.description,r.isArray=t.isArray,r.isNestedEntity=t.isNestedEntity,r.default=t.default,r.fixed=t.fixed,r.required=t.required,r.exclusive=t.exclusive,r.localization=t.localization,r.keyField=t.keyField,r.deprecated=t.deprecated,r.readonly=t.readonly,r.writeonly=t.writeonly,r.examples=t.examples,r.override=t.override,r.scopePattern=t.scopePattern?Array.isArray(t.scopePattern)?t.scopePattern:[t.scopePattern]:void 0,r.convertToNative=t.convertToNative??(r.type.kind==="SimpleType"&&t.designType!==String&&typeof t.designType=="function"&&t.designType!==Object),r.override=t.override},"ApiField"),fn=class fn extends R{inScope(e){return Ht(e,this.scopePattern)}forScope(e){if(!(e&&this.override))return this;this._overrideCache=this._overrideCache||{};let t=this._overrideCache[e];if(t)return t;if(e!=="*"){for(let r of this.override)if(Ht(e,r.scopePattern)){t=na({...r,id:void 0,owner:void 0,node:void 0,origin:void 0,name:void 0,type:void 0,override:void 0,_overrideCache:void 0,scopePattern:r.scopePattern}),Object.setPrototypeOf(t,this);break}}return t=t||this,this._overrideCache[e]=t,t}toJSON(e){var r;let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0;return na({type:t||((r=this.type)==null?void 0:r.toJSON(e)),description:this.description,isArray:this.isArray||void 0,isNestedEntity:this.isNestedEntity||void 0,default:this.default,fixed:this.fixed,required:this.required||void 0,exclusive:this.exclusive||void 0,localization:this.localization||void 0,keyField:this.keyField||void 0,deprecated:this.deprecated||void 0,readonly:this.readonly||void 0,writeonly:this.writeonly||void 0,examples:this.examples})}};a(fn,"ApiFieldClass");var ln=fn;k.prototype=ln.prototype;Object.assign(k,cn);k[D]=cn;import"reflect-metadata";import{omitUndefined as _c}from"@jsopen/objects";import{asMutable as xc}from"ts-gems";var mn=class mn extends Ee{constructor(){super(""),this.details=[]}add(e){return this.details.push(e),this}};a(mn,"OpraDocumentError");var _t=mn;var un=class un{constructor(e){this.path="",this.error=new _t,this.showErrorDetails=!0,this.maxErrors=(e==null?void 0:e.maxErrors)||0,this.error.message=""}addError(e){if(!this.error.details.length)if(e instanceof Error)this.error.stack=e.stack;else{let t=new Error;Error.captureStackTrace(t,this.addError),this.error.stack=t.stack}if(this.error.add({message:typeof e=="string"?e:e.message,path:this.path,...typeof e=="object"?e:void 0}),this.error.details.length>=this.maxErrors)throw this.error}enter(e,t){let r=this.path;this.path=this.path+e;try{return t()}catch(i){i!==this.error&&this.addError(i)}finally{this.path=r}}async enterAsync(e,t){let r=this.path;this.path=this.path+e;try{return await t()}catch(i){i!==this.error&&this.addError(i)}finally{this.path=r}}extend(e){let t={...e};return Object.setPrototypeOf(t,this),t}};a(un,"DocumentInitContext");var he=un;import{omit as Ec}from"@jsopen/objects";function dn(o){return function(e){let t;if(!(o!=null&&o.embedded))if(o!=null&&o.name){if(!j.test(o.name))throw new TypeError(`"${o.name}" is not a valid type name`);t=o.name}else t=e.name;let r=Reflect.getOwnMetadata(d,e);r||(r={},Reflect.defineMetadata(d,r,e)),r.kind=m.ComplexType.Kind,r.name=t,o&&Object.assign(r,Ec(o,["name"]))}}a(dn,"ComplexTypeDecorator");var te=a(function(...o){var n;if(!this)return te[D].apply(void 0,o);let[e,t]=o,r=o[2]||new he({maxErrors:0});L.call(this,e,t,r);let i=xc(this);i.kind=m.ComplexType.Kind,i.discriminatorField=t.discriminatorField,i.discriminatorValue=t.discriminatorValue,t.base&&r.enter(".base",()=>{if(!(t.base instanceof L))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base,i.additionalFields=i.base.additionalFields,i.keyField=i.base.keyField;for(let s of i.base.fields("*"))i._fields.set(s.name,new k(this,s))}),t.additionalFields!==void 0&&(i.additionalFields=t.additionalFields),t.keyField!==void 0&&(i.keyField=t.keyField),i.ctor=t.ctor||((n=i.base)==null?void 0:n.ctor),t.fields&&r.enter(".fields",()=>{for(let[s,p]of Object.entries(t.fields)){let c=new k(this,{...p,name:s});this._fields.set(c.name,c)}})},"ComplexType"),yn=class yn extends L{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof L?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0,i={...t,kind:this.kind,base:this.base?r||this.base.toJSON(e):void 0,discriminatorField:this.discriminatorField,discriminatorValue:this.discriminatorValue};if(this.additionalFields)if(this.additionalFields instanceof _){let n=this.node.getDataTypeNameWithNs(this.additionalFields);i.additionalFields=n||this.additionalFields.toJSON(e)}else i.additionalFields=this.additionalFields;if(this._fields.size){let n={},s=0;for(let p of this._fields.values())p.origin===this&&p.inScope(e==null?void 0:e.scope)&&(n[p.name]=p.toJSON(e),s++);s&&(i.fields=n)}return _c(i)}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(yn,"ComplexTypeClass");var hn=yn;te.prototype=hn.prototype;Object.assign(te,dn);te[D]=dn;var xt,re=(xt=class{constructor(e){e&&Object.assign(this,e)}},a(xt,"OperationResult"),xt);ye([k(),Te("design:type",Number)],re.prototype,"affected",void 0);ye([k(),Te("design:type",Number)],re.prototype,"totalMatches",void 0);ye([k(),Te("design:type",String)],re.prototype,"context",void 0);ye([k(),Te("design:type",String)],re.prototype,"type",void 0);ye([k(),Te("design:type",String)],re.prototype,"message",void 0);ye([k({type:"any"}),Te("design:type",Object)],re.prototype,"payload",void 0);ye([k({type:"object"}),Te("design:type",Array)],re.prototype,"errors",void 0);re=ye([te({name:"OperationResult",description:"Operation result"}),Te("design:paramtypes",[Object])],re);(function(o){function e(t){var i;let r=(i=class extends o{constructor(...s){super(...s)}},a(i,"OperationResult_"),i);return ye([k({type:t,required:!0}),Te("design:type",Object)],r.prototype,"payload",void 0),r=ye([te({embedded:!0}),Te("design:paramtypes",[Object])],r),r}a(e,"forPayload"),o.forPayload=e})(re||(re={}));import{__decorate as Tn,__metadata as En}from"tslib";import{isDateString as Cr,toString as sa,validator as Oc,vg as ze}from"valgen";var Ot,nr=(Ot=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=pa,r=[];return e.minValue!=null&&(Cr(e.minValue),r.push(sa,ze.isGte(e.minValue))),e.maxValue!=null&&(Cr(e.maxValue),r.push(sa,ze.isLte(e.maxValue))),r.length>0?ze.pipe([t,...r],{returnIndex:0}):t}[O](e){let t=pa,r=[];return e.minValue!=null&&(Cr(e.minValue),r.push(ze.isGte(e.minValue))),e.maxValue!=null&&(Cr(e.maxValue),r.push(ze.isLte(e.maxValue))),r.length>0?ze.pipe([t,...r],{returnIndex:0}):t}},a(Ot,"PartialDateType"),Ot);Tn([u.Attribute({description:"Minimum value"}),En("design:type",String)],nr.prototype,"minValue",void 0);Tn([u.Attribute({description:"Maximum value"}),En("design:type",String)],nr.prototype,"maxValue",void 0);nr=Tn([u({name:"partialdate",description:"Specifies a point in time using a 24-hour clock notation.\rFormat: YYYY-[MM-[DD-[T?HH:[MM:[SS[.S[S[S[S]]]]]]]]][+/-ZZ:ZZ].",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15:22+03:00").Example("2021-04-18 22:30").Example("2021-04-18").Example("2021"),En("design:paramtypes",[Object])],nr);var aa=ze.isDateString({precisionMin:"year"}),pa=Oc(o=>{if(o instanceof Date){let e=aa(o,{coerce:!0});return e.endsWith("Z")&&(e=e.substring(0,e.length-1)),e.endsWith(".000")&&(e=e.substring(0,e.length-4)),e.endsWith(":00")&&(e=e.substring(0,e.length-3)),e.endsWith("00:00")&&(e=e.substring(0,e.length-6)),e}return aa(o,{coerce:!1})});import{__decorate as _n,__metadata as xn}from"tslib";import{vg as Ur}from"valgen";var gc=/^([0-1][0-9]|2[0-4]):([0-5][0-9])(?::([0-5][0-9]))?$/,gt,sr=(gt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=Ur.matches(gc,{formatName:"time",coerce:!0}),r=[];return e.minValue!=null&&r.push(Ur.isGte(e.minValue)),e.maxValue!=null&&r.push(Ur.isLte(e.maxValue)),r.length>0?Ur.pipe([t,...r],{returnIndex:0}):t}[O](e){return this[T](e)}},a(gt,"TimeType"),gt);_n([u.Attribute({description:"Minimum value"}),xn("design:type",String)],sr.prototype,"minValue",void 0);_n([u.Attribute({description:"Maximum value"}),xn("design:type",String)],sr.prototype,"maxValue",void 0);sr=_n([u({name:"time",description:"Time string in 24h format",nameMappings:{js:"string",json:"string"}}).Example("18:23:00","Full time value").Example("18:23:00","Time value without seconds"),xn("design:paramtypes",[Object])],sr);import{__decorate as wc,__metadata as Rc}from"tslib";import{vg as ca}from"valgen";var wt,On=(wt=class{constructor(e){e&&Object.assign(this,e)}[T](){return ca.isURL({coerce:!0})}[O](){return ca.isURL({coerce:!0})}},a(wt,"UrlType"),wt);On=wc([u({name:"url",description:"A Uniform Resource Identifier Reference (RFC 3986 icon) value",nameMappings:{js:"string",json:"string"}}).Example("http://tempuri.org"),Rc("design:paramtypes",[Object])],On);import{__decorate as fa,__metadata as ma}from"tslib";import{vg as la}from"valgen";var Rt,$r=(Rt=class{constructor(e){e&&Object.assign(this,e)}[T](e){return la.isUUID(e==null?void 0:e.version,{coerce:!0})}[O](e){return la.isUUID(e==null?void 0:e.version,{coerce:!0})}},a(Rt,"UuidType"),Rt);fa([u.Attribute({description:"Version of the UUID"}),ma("design:type",Number)],$r.prototype,"version",void 0);$r=fa([u({name:"uuid",description:"A Universal Unique Identifier (UUID) value",nameMappings:{js:"string",json:"string"}}),ma("design:paramtypes",[Object])],$r);import bc from"path-browserify";import{omitUndefined as Ac}from"@jsopen/objects";import{asMutable as Dc}from"ts-gems";var ua,da,ie=Symbol.for("kMap"),ar=Symbol.for("kCtorMap"),wn=class wn{constructor(){this[ua]=new v,this[da]=new WeakMap}get size(){return this[ie].size}forEach(e,t){this[ie].forEach(e,t)}get(e){let t=typeof e=="string"?e:this[ar].get(e);if(!t&&typeof e=="function"){let i=Reflect.getMetadata(d,e);t=i==null?void 0:i.name}if(!t&&typeof e=="object"){let i=e[d];t=i==null?void 0:i.name}if(!t)return;let r=this[ie].get(t);if(r)return typeof e=="function"&&r.kind==="ComplexType"?r.ctor===e?r:void 0:r}set(e,t){this[ie].set(e,t),t.ctor?this[ar].set(t.ctor,e):t.instance&&this[ar].set(t.instance,e)}has(e){if(e instanceof _)return!!e.name&&this[ie].has(e.name);let t=typeof e=="string"?e:this[ar].get(e);return t?this[ie].has(t):!1}keys(){return this[ie].keys()}values(){return this[ie].values()}entries(){return this[ie].entries()}sort(e){return this[ie].sort(e),this}[(ua=ie,da=ar,Symbol.iterator)](){return this[ie][Symbol.iterator]()}};a(wn,"DataTypeMap");var oe=wn;function S(o,e){let t=a((r,i)=>{if(typeof i!="string")throw new TypeError("Symbol properties can not be decorated");let n={...e,kind:m.HttpOperation.Kind},s=Reflect.getOwnMetadata(se,r.constructor)||{};s.operations=s.operations||{},s.operations[i]=n;for(let p of o)p(n);Reflect.defineMetadata(se,s,r.constructor)},"decorator");return t.Cookie=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"cookie",type:i}:{...i,name:r,location:"cookie"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="cookie"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.Header=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"header",type:i}:{...i,name:r,location:"header"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="header"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.QueryParam=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"query",type:i}:{...i,name:r,location:"query"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="query"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.PathParam=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i}:{...i,name:r,location:"path"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="path"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.Response=(r,i)=>{let n={...i,statusCode:r};return n.type&&(n.contentType=n.contentType||A.opra_response_json,n.contentEncoding=n.contentEncoding||"utf-8"),n.contentType===A.opra_response_json&&(n.contentEncoding=n.contentEncoding||"utf-8"),o.push(s=>{s.responses=s.responses||[],s.responses.push(n)}),t},t.RequestContent=function(r){let i=typeof r=="object"?r:{type:r};return i.type&&(i.contentType=i.contentType||A.json,i.contentEncoding=i.contentEncoding||"utf-8"),o.push(n=>{n.requestBody=n.requestBody||{required:!0,content:[]},n.requestBody.content=n.requestBody.content||[],n.requestBody.content.push(i)}),t},t.MultipartContent=function(r,i){let n={...r,contentType:(r==null?void 0:r.contentType)||"multipart/form-data"};if(o.push(s=>{s.requestBody=s.requestBody||{required:!0,content:[]},s.requestBody.content=s.requestBody.content||[],s.requestBody.content.push(n)}),i){let s={Field(p,c){return n.multipartFields=n.multipartFields||[],n.multipartFields.push({fieldName:p,fieldType:"field",...c}),s},File(p,c){return n.multipartFields=n.multipartFields||[],n.multipartFields.push({fieldName:p,fieldType:"file",...c}),s}};i(s)}return t},t.UseType=(...r)=>(o.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),t}a(S,"HttpOperationDecoratorFactory");var b=a(function(...o){if(!this){let[i]=o,n=[];return b[D].call(void 0,n,i)}let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid operation name (${t.name})`);let r=Dc(this);r.parameters=[],r.responses=[],r.types=r.node[C]=new oe,r.name=t.name,r.path=t.path,r.mergePath=t.mergePath,r.method=t.method||"GET",r.description=t.description,r.composition=t.composition,r.compositionOptions=t.compositionOptions?I(t.compositionOptions):void 0},"HttpOperation"),bn=class bn extends R{findParameter(e,t){let r=e.toLowerCase(),i;for(i of this.parameters)if(!(t&&t!==i.location)&&(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e)))return i}getFullUrl(){let e=this.owner.getFullUrl();return e?this.path?this.mergePath?e+this.path:bc.posix.join(e,this.path):e:this.path||"/"}toJSON(e){var r;let t=Ac({kind:m.HttpOperation.Kind,description:this.description,method:this.method,path:this.path,mergePath:this.mergePath,composition:this.composition,requestBody:(r=this.requestBody)==null?void 0:r.toJSON(e)});if(this.types.size){t.types={};for(let i of this.types.values())t.types[i.name]=i.toJSON(e)}if(this.parameters.length){t.parameters=[];for(let i of this.parameters)t.parameters.push(i.toJSON(e))}return this.responses.length&&(t.responses=this.responses.map(i=>i.toJSON(e))),t}};a(bn,"HttpOperationClass");var Rn=bn;b.prototype=Rn.prototype;b[D]=S;b.GET=function(o){return S([],{...o,method:"GET"})};b.DELETE=function(o){return S([],{...o,method:"DELETE"})};b.HEAD=function(o){return S([],{...o,method:"HEAD"})};b.OPTIONS=function(o){return S([],{...o,method:"OPTIONS"})};b.PATCH=function(o){return S([],{...o,method:"PATCH"})};b.POST=function(o){return S([],{...o,method:"POST"})};b.PUT=function(o){return S([],{...o,method:"PUT"})};b.SEARCH=function(o){return S([],{...o,method:"SEARCH"})};b.Entity={};function K(o){if(typeof o=="string")return o;let e=Reflect.getMetadata(d,o);if(!e)throw new TypeError(`Type (${o}) is not decorated with any datatype decorators`);if(e!=null&&e.name)return e.name;throw new TypeError("You should provide named data type but embedded one found")}a(K,"getDataTypeName");function Ne(o,e){return(t,r)=>{let i=typeof r=="string"||typeof r=="function"?{name:t,location:"path",type:r,keyParam:!0}:{...r,name:t,location:"path",keyParam:!0};return o.PathParam(t,i),e.push(n=>{var s;(s=n.path)!=null&&s.includes(":"+t)||(n.path=(n.path||"")+"@:"+t),n.mergePath=!0}),o}}a(Ne,"createKeyParamDecorator");function ha(o,e){return(...t)=>{let r=typeof t[0]=="object"?t[0]:t.reduce((s,p)=>{let c=p.split(":");return s[c[0]]=c[1]||c[0],s},{}),i=Object.keys(r).reduce((s,p)=>{let c=ct.exec(p),l=ct.exec(r[p]);return c&&l&&(s[c[2]]=l[2]),s},{}),n=Object.keys(r).reduce((s,p)=>{let c=ct.exec(p);return c&&(c[1]!="-"&&(s[c[2]]=c[2]),c[1]!="+"&&(s["-"+c[2]]="-"+c[2])),s},{});return e.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.sortFields=i}),o.QueryParam("sort",{description:"Determines sort fields",type:Z(n),isArray:!0,arraySeparator:",",parser:a(s=>s.map(p=>{let c=ct.exec(p);return c?(c[1]||"")+i[c[2]]:p}),"parser")}),o}}a(ha,"createSortFieldsDecorator");function Se(o,e,t){let r=Reflect.getMetadata("FilterRules",o);r||(r=new He,Reflect.defineMetadata("FilterRules",r,o));let i=Reflect.getMetadata("FilterType",o);return i||(i=new Ve({dataType:t}),i.rules={},Reflect.defineMetadata("FilterType",i,o)),(n,s)=>{let p=(Array.isArray(s)?{operators:s}:typeof s=="string"?{operators:s.split(/\s*,\s*/)}:s)||{};if(p.operators=p.operators||["=","!="],n.includes(":")){let c=n.split(":");n=c[0],p.mappedField=c[1]}return e.push(()=>{r.set(n,p),i.rules=r.toJSON()}),o.QueryParam("filter",{type:i,description:"Determines filter fields"}),o}}a(Se,"createFilterDecorator");b.Entity.Create=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"POST",...t,composition:"Entity.Create",requestBody:{immediateFetch:!0,...t.requestBody,required:!0}});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.CREATED,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the created resource.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i};b.Entity.Delete=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"DELETE",...t,composition:"Entity.Delete"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.DeleteMany=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"DELETE",...t,composition:"Entity.DeleteMany"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.Filter=Se(i,r,t.type),i};var kn={};hr(kn,{AnyType:()=>An,BigintType:()=>Mn,BooleanType:()=>Fn,IntegerType:()=>vt,NullType:()=>Pn,NumberType:()=>ge,ObjectType:()=>Ln,StringType:()=>Je});import{__decorate as Nc,__metadata as Sc}from"tslib";import{isAny as ya}from"valgen";var bt,An=(bt=class{constructor(e){e&&Object.assign(this,e)}[T](){return ya}[O](){return ya}},a(bt,"AnyType"),bt);An=Nc([u({name:"any",description:"Represents any value"}),Sc("design:paramtypes",[Object])],An);import{__decorate as vc,__metadata as Mc}from"tslib";import{toBigint as Ea,vg as vn}from"valgen";import{__decorate as Nn,__metadata as Sn}from"tslib";import{toNumber as Ta,vg as Dn}from"valgen";var At,ge=(At=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=[];return e.minValue!=null&&t.push(Dn.isGte(e.minValue)),e.maxValue!=null&&t.push(Dn.isLte(e.maxValue)),t.length>0?Dn.pipe([Ta,...t],{returnIndex:0}):Ta}[O](e){return this[T](e)}},a(At,"NumberType"),At);Nn([u.Attribute({description:"Determines the minimum value"}),Sn("design:type",Number)],ge.prototype,"minValue",void 0);Nn([u.Attribute({description:"Determines the maximum value"}),Sn("design:type",Number)],ge.prototype,"maxValue",void 0);ge=Nn([u({name:"number",description:"Both Integer as well as Floating-Point numbers",nameMappings:{js:"number",json:"number"}}),Sn("design:paramtypes",[Object])],ge);var Dt,Mn=(Dt=class extends ge{constructor(e){super(e)}[T](e){let t=[];return e.minValue!=null&&t.push(vn.isGte(e.minValue)),e.maxValue!=null&&t.push(vn.isLte(e.maxValue)),t.length>0?vn.pipe([Ea,...t],{returnIndex:0}):Ea}[O](e){return this[T](e)}},a(Dt,"BigintType"),Dt);Mn=vc([u({name:"bigint",description:"BigInt number",nameMappings:{js:"bigint",json:"string"}}),Mc("design:paramtypes",[Object])],Mn);import{__decorate as Fc,__metadata as Ic}from"tslib";import{toBoolean as _a}from"valgen";var Nt,Fn=(Nt=class{constructor(e){e&&Object.assign(this,e)}[T](){return _a}[O](){return _a}},a(Nt,"BooleanType"),Nt);Fn=Fc([u({name:"boolean",description:"Simple true/false value",nameMappings:{js:"boolean",json:"boolean"}}),Ic("design:paramtypes",[Object])],Fn);import{__decorate as Pc,__metadata as Lc}from"tslib";import{toInteger as xa,vg as In}from"valgen";var St,vt=(St=class extends ge{constructor(e){super(e)}[T](e){let t=[];return e.minValue!=null&&t.push(In.isGte(e.minValue)),e.maxValue!=null&&t.push(In.isLte(e.maxValue)),t.length>0?In.pipe([xa,...t],{returnIndex:0}):xa}[O](e){return this[T](e)}},a(St,"IntegerType"),St);vt=Pc([u({name:"integer",description:"An integer number",nameMappings:{js:"number",json:"number"}}),Lc("design:paramtypes",[Object])],vt);import{__decorate as kc,__metadata as jc}from"tslib";import{isNull as Oa}from"valgen";var Mt,Pn=(Mt=class{constructor(e){e&&Object.assign(this,e)}[T](){return Oa}[O](){return Oa}},a(Mt,"NullType"),Mt);Pn=kc([u({name:"null",description:"A Null value",nameMappings:{js:"null",json:"null"}}),jc("design:paramtypes",[Object])],Pn);import{__decorate as Cc,__metadata as Uc}from"tslib";var Ft,Ln=(Ft=class{constructor(e){e&&Object.assign(this,e)}},a(Ft,"ObjectType"),Ft);Ln=Cc([te({name:"object",description:"A non modelled object",additionalFields:!0}),Uc("design:paramtypes",[Object])],Ln);import{__decorate as pr,__metadata as cr}from"tslib";import{toString as ga,vg as Br}from"valgen";var It,Je=(It=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=[];if(e.pattern){let r=e.patternName;r||(r=Reflect.getMetadata(d,Object.getPrototypeOf(this).constructor).name),t.push(Br.matches(e.pattern,{formatName:r}))}return e.minLength&&t.push(Br.lengthMin(e.minLength)),e.maxLength&&t.push(Br.lengthMax(e.maxLength)),t.length>0?Br.pipe([ga,...t],{returnIndex:0}):ga}[O](e){return this[T](e)}},a(It,"StringType"),It);pr([u.Attribute({description:"Regex pattern to be used for validation"}),cr("design:type",Object)],Je.prototype,"pattern",void 0);pr([u.Attribute({description:"Name of the pattern"}),cr("design:type",String)],Je.prototype,"patternName",void 0);pr([u.Attribute({description:"Minimum number of characters"}),cr("design:type",Number)],Je.prototype,"minLength",void 0);pr([u.Attribute({description:"Minimum number of characters"}),cr("design:type",Number)],Je.prototype,"maxLength",void 0);Je=pr([u({name:"string",description:"A sequence of characters",nameMappings:{js:"string",json:"string"}}),cr("design:paramtypes",[Object])],Je);b.Entity.FindMany=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"GET",...t,composition:"Entity.FindMany"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains list of resources.',contentType:A.opra_response_json,type:t.type,partial:"deep",isArray:!0}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}).QueryParam("limit",{description:"Determines number of returning instances",type:new vt({minValue:1,maxValue:t.maxLimit})}).QueryParam("skip",{description:"Determines number of returning instances",type:new vt({minValue:1})}).QueryParam("count",{description:"Counts all matching instances if enabled",type:Boolean}).QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type),t.defaultLimit&&(s.defaultLimit=t.defaultLimit),t.defaultProjection&&(s.defaultProjection=t.defaultProjection),t.maxLimit&&(s.maxLimit=t.maxLimit)}),i.Filter=Se(i,r,t.type),i.DefaultSort=(...n)=>(r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.defaultSort=n}),i),i.SortFields=ha(i,r),i};b.Entity.Get=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"GET",...t,composition:"Entity.Get"});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the resource asked for.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.Replace=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"POST",...t,composition:"Entity.Replace"});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the resource asked for.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.Update=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"PATCH",...t,composition:"Entity.Update",requestBody:{partial:"deep",immediateFetch:!0,allowPatchOperators:!0,keepKeyFields:!0,...t.requestBody,required:!0}});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains updated resource.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i.KeyParam=Ne(i,r),i.Filter=Se(i,r,t.type),i};b.Entity.UpdateMany=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"PATCH",...t,composition:"Entity.UpdateMany",requestBody:{immediateFetch:!0,partial:"deep",allowPatchOperators:!0,keepKeyFields:!0,...t.requestBody,required:!0}});return i.RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i.Filter=Se(i,r,t.type),i};import{merge as jn}from"@jsopen/objects";var $c=/^(.*)(Controller)$/,wa=[];function Pt(o){let e=[],t=a(function(r){var c;let i=o==null?void 0:o.name;i||(i=((c=$c.exec(r.name))==null?void 0:c[1])||r.name);let n={},s=Reflect.getOwnMetadata(ae,Object.getPrototypeOf(r));s&&jn(n,s,{deep:!0});let p=Reflect.getOwnMetadata(ae,r);p&&jn(n,p,{deep:!0}),jn(n,{...o,kind:m.RpcController.Kind,name:i,path:i},{deep:!0}),Reflect.defineMetadata(ae,n,r);for(let l of e)l(n,r);Reflect.defineMetadata(ae,n,r)},"decorator");return t.Header=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,type:i}:{...i,name:r};n.headers=n.headers||[],n.headers.push(s)}),t),t.UseType=(...r)=>(e.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),wa.forEach(r=>r(t,e,o)),t}a(Pt,"RpcControllerDecoratorFactory");Pt.augment=function(o){wa.push(o)};import{omit as qc}from"@jsopen/objects";var Ra=[];function lr(o,e,t){let r=!1,i=a((n,s)=>{if(typeof s!="string")throw new TypeError("Symbol properties can not be decorated");let p={kind:m.RpcOperation.Kind,channel:s,payloadType:e,...qc(t,["kind","payloadType"])},c=Reflect.getOwnMetadata(ae,n.constructor)||{};c.operations=c.operations||{},c.operations[s]=p;for(let l of o)l(p,n,s);Reflect.defineMetadata(ae,c,n.constructor)},"decorator");return i.UseType=(...n)=>(o.push(s=>{s.types=s.types||[],s.types.push(...n)}),i),i.Header=(n,s)=>(o.push(p=>{let c=typeof s=="string"||typeof s=="function"?{name:n,type:s}:{...s,name:n},l=r?p.response:p;l.headers?l.headers=l.headers.filter(x=>String(x.name)!==String(n)):l.headers=[],l.headers.push(c)}),i),i.Response=(n,s)=>(o.push(p=>{r=!0,p.response={...s,payloadType:n}}),i),Ra.forEach(n=>n(i,o,e,t)),i}a(lr,"RpcOperationDecoratorFactory");lr.augment=function(o){Ra.push(o)};import"reflect-metadata";import{omitUndefined as Vc}from"@jsopen/objects";import{asMutable as zc}from"ts-gems";function qr(o,e){let t=o==null?void 0:o.map(i=>String(i).toLowerCase()),r=e==null?void 0:e.map(i=>String(i).toLowerCase());return i=>r&&r.includes(i.toLowerCase())?!1:t?t.includes(i.toLowerCase()):!0}a(qr,"getIsInheritedPredicateFn");var We=a(function(...o){var n;if(!this)throw new TypeError('"this" should be passed to call class constructor');let[e,t,r]=o;L.call(this,e,t,r);let i=zc(this);if(i.kind=m.MappedType.Kind,t.base){if(!(t.base instanceof L))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base,i.ctor=t.ctor||i.base.ctor,t.pick?i.pick=t.pick.map(l=>i.base.normalizeFieldPath(l)):t.omit?i.omit=t.omit.map(l=>i.base.normalizeFieldPath(l)):t.partial?i.partial=Array.isArray(t.partial)?t.partial.map(l=>i.base.normalizeFieldPath(l)):t.partial:t.required&&(i.required=Array.isArray(t.required)?t.required.map(l=>i.base.normalizeFieldPath(l)):t.required);let s=qr(i.pick,i.omit),p=Array.isArray(i.partial)?i.partial.map(l=>l.toLowerCase()):i.partial,c=Array.isArray(i.required)?i.required.map(l=>l.toLowerCase()):i.required;for(let[l,x]of i.base.fieldEntries("*")){if(!s(l))continue;let g={...x};p===!0||Array.isArray(p)&&p.includes(x.name.toLowerCase())?g.required=!1:(c===!0||Array.isArray(c)&&c.includes(x.name.toLowerCase()))&&(g.required=!0);let y=new k(this,g);i._fields.set(y.name,y)}(!i.pick||i.base.additionalFields===!1||Array.isArray(i.base.additionalFields)&&((n=i.base.additionalFields)==null?void 0:n[0])==="error")&&(i.additionalFields=i.base.additionalFields),t.base.keyField&&s(t.base.keyField)&&(i.keyField=t.base.keyField),i.discriminatorField=t.base.discriminatorField,i.discriminatorValue=t.base.discriminatorValue}},"MappedType"),Un=class Un extends L{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof L?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0;return Vc({...t,base:r||this.base.toJSON(e),kind:this.kind,pick:this.pick,omit:this.omit,partial:this.partial,required:this.required,discriminatorField:this.discriminatorField,discriminatorValue:this.discriminatorValue})}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Un,"MappedTypeClass");var Cn=Un;We.prototype=Cn.prototype;We._applyMixin=()=>{};import"reflect-metadata";import{omitUndefined as Jc}from"@jsopen/objects";import{asMutable as Wc}from"ts-gems";var Lt=a(function(...o){if(!this)return Lt[D].apply(void 0,o);let[e,t,r]=o;L.call(this,e,t,r);let i=Wc(this);i.kind=m.MixinType.Kind,i.types=[];for(let n of t.types){i.additionalFields!==!0&&(n.additionalFields===!0?i.additionalFields=!0:i.additionalFields||(i.additionalFields=n.additionalFields));for(let s of n.fields("*")){let p=new k(this,s);i._fields.set(p.name,p)}i.types.push(n),n.keyField&&(i.keyField=n.keyField)}},"MixinType"),Bn=class Bn extends L{extendsFrom(e){if(e instanceof _||(e=this.node.getDataType(e)),!(e instanceof L))return!1;if(e===this)return!0;for(let t of this.types)if(t.extendsFrom(e))return!0;return!1}toJSON(e){let t=super.toJSON(e);return Jc({...t,kind:this.kind,types:this.types.map(r=>{let i=this.node.getDataTypeNameWithNs(r);return i||r.toJSON(e)})})}_locateBase(e){for(let t of this.types){if(e(t))return t;if(t._locateBase){let r=t._locateBase(e);if(r)return r}}}};a(Bn,"MixinTypeClass");var $n=Bn;Lt.prototype=$n.prototype;Lt[D]=Yc;function Yc(o,e){if(o=o.filter(n=>typeof n=="function"),!o.length)throw new TypeError("No Class has been provided");if(o.length===1)return o[0];let t=o[0].name+"Mixin",r={[t]:class{constructor(){for(let n of o)Er(this,n)}}}[t],i={...e,kind:m.MixinType.Kind,types:[]};Reflect.defineMetadata(d,i,r);for(let n of o){let s=Reflect.getMetadata(d,n);if(!(s&&(s.kind===m.ComplexType.Kind||s.kind===m.MixinType.Kind||s.kind===m.MappedType.Kind)))throw new TypeError(`Class "${n.name}" is not a ${m.ComplexType.Kind}, ${m.MixinType.Kind} or ${m.MappedType.Kind}`);i.types.push(n),Tr(r.prototype,n.prototype)}return r}a(Yc,"MixinTypeFactory");import"reflect-metadata";import{omitUndefined as Gc}from"@jsopen/objects";import{asMutable as Qc}from"ts-gems";import{vg as ba}from"valgen";var kt=a(function(...o){if(!this)return kt[D].apply(void 0,o);let[e,t,r]=o;_.call(this,e,t,r);let i=Qc(this);i.kind=m.UnionType.Kind,i.discriminator=t.discriminator,i.types=[];for(let n of t.types)i.types.push(n)},"UnionType"),Kn=class Kn extends _{toJSON(e){let t=super.toJSON(e);return Gc({...t,kind:this.kind,discriminator:this.discriminator,types:this.types.map(r=>{let i=this.node.getDataTypeNameWithNs(r);return i||r.toJSON(e)})})}generateCodec(e,t){let r=this.types.map(i=>{let n=i.generateCodec(e,t);return(i.kind===m.ComplexType.Kind||i.kind===m.MappedType.Kind)&&i.discriminatorField?[n,{[i.discriminatorField]:ba.isEqual(i.discriminatorValue)}]:n});return ba.oneOf(r)}extendsFrom(){return!1}_locateBase(){}};a(Kn,"UnionTypeClass");var qn=Kn;kt.prototype=qn.prototype;kt[D]=Xc;function Xc(o,e){let i=class i{};a(i,"UnionClass");let t=i,r={...e,kind:m.UnionType.Kind,types:o};return Reflect.defineMetadata(d,r,t),t}a(Xc,"UnionTypeFactory");var Vn=Symbol("initializing"),Kr=class Kr{static async createDataType(e,t,r){e=e||new he({maxErrors:0});let i=await this._importDataTypeArgs(e,t,r);if(i)return typeof i=="string"?t.node.getDataType(i):this._createDataType(e,t,i)}static async resolveDataType(e,t,r){if(r){let i=t.node.findDataType(r);if(i)return i}if(typeof r=="object"||typeof r=="function"){let i=await Kr.createDataType(e,t,r);if(i)return i}if(r){let i=t.node.getDataType(r);if(i)return i}return t.node.getDataType("any")}static async addDataTypes(e,t,r){let i=t.node[C];if(!i)throw new TypeError("DocumentElement should has [kDataTypeMap] property");let n=await this.createAllDataTypes(e,t,r);if(n)for(let s of n)s!=null&&s.name&&i.set(s.name,s)}static async createAllDataTypes(e,t,r){e=e||new he({maxErrors:0});let i=await this._prepareAllInitArgs(e,t,r);if(!i)return;let n=new v;for(let c of i)n.set(c.name,c);let s=e.extend({initArgsMap:n}),p=[];for(let[c,l]of n.entries())e.enter(`[${c}]`,()=>{if(!n.has(c))return;let x=this._createDataType(s,t,l);x&&p.push(x)});return p}static async _prepareAllInitArgs(e,t,r){let i=new v,n=new v,s=e.extend({owner:t,importQueue:i,initArgsMap:n});if(!t.node[C])throw new TypeError("DocumentElement should has [kDataTypeMap] property");if(Array.isArray(r)){let p=0;for(let c of r)await s.enterAsync(`$[${p++}]`,async()=>{c=await pe(c);let l=Reflect.getMetadata(d,c)||c[d];if(!(l&&l.name))return typeof c=="function"?s.addError(`Class "${c.name}" doesn't have a valid data type metadata`):s.addError("Object doesn't have a valid data type metadata");i.set(l.name,c)})}else{let p,c;for([c,p]of Object.entries(r))p=await pe(p),i.set(c,typeof p=="object"?{...p,name:c}:p)}for(let p of Array.from(i.keys())){if(!i.has(p))continue;let c=await this._importDataTypeArgs(s,t,p);c&&typeof c!="string"&&s.addError("Embedded data type can't be loaded into document node directly")}return Array.from(n.values())}static async _importDataTypeArgs(e,t,r,i){var g;r=await pe(r);let{importQueue:n,initArgsMap:s}=e,p=t.node.findDataType(r);if(p instanceof _)return p.name;let c,l,x;if(typeof r!="string"){let G=t.node.getDocument().types[_r].get(r);G&&(r=G)}if(typeof r=="string"){let y=r;if(r=(n==null?void 0:n.get(y))||((g=e.initArgsMap)==null?void 0:g.get(y)),!r)return e.addError(`Unknown data type (${y})`)}if(typeof r=="function"){if(c=Reflect.getMetadata(d,r),!c)return e.addError(`Class "${r.name}" doesn't have a valid DataType metadata`);l=r}else if(typeof r=="object"){if(c=r[d],c)x=r,c.kind!==m.EnumType.Kind&&(c=void 0);else if(m.isDataType(r))c=r,l=c.ctor;else if(l=Object.getPrototypeOf(r).constructor,c=l&&Reflect.getMetadata(d,l),c&&c.kind===m.SimpleType.Kind){let y=await this._importDataTypeArgs(e,t,c.name);return y?typeof y=="object"&&y.kind!==m.SimpleType.Kind?e.addError("Kind of base data type is not same"):{kind:m.SimpleType.Kind,name:void 0,base:y,properties:r}:void 0}}return c?e.enterAsync(c.name?`[${c.name}]`:"",async()=>{if(c.name){let G=s==null?void 0:s.get(c.name);if(G)return i&&G[Vn]?e.addError("Circular reference detected"):c.name}let y={kind:c.kind,name:c.name};y[Vn]=!0;try{if(y.name)if(n!=null&&n.has(y.name))s==null||s.set(c.name,y),y._instance={name:c.name},y[C]=t.node[C];else return e.addError(`Data Type (${y.name}) must be explicitly added to type list in the document scope`);switch(y.kind){case m.ComplexType.Kind:y.ctor=l,await this._prepareComplexTypeArgs(e,t,y,c);break;case m.EnumType.Kind:y.instance=x,await this._prepareEnumTypeArgs(e,t,y,c);break;case m.MappedType.Kind:await this._prepareMappedTypeArgs(e,t,y,c);break;case m.MixinType.Kind:await this._prepareMixinTypeArgs(e,t,y,c);break;case m.SimpleType.Kind:y.ctor=l,await this._prepareSimpleTypeArgs(e,t,y,c);break;case m.UnionType.Kind:await this._prepareUnionTypeArgs(e,t,y,c);break;default:return e.addError(`Invalid data type kind ${c.kind}`)}}finally{y.name&&(n==null||n.delete(y.name)),delete y[Vn]}return n&&y.name?y.name:y}):e.addError("No DataType metadata found")}static async _prepareDataTypeArgs(e,t,r){t.description=r.description,t.abstract=r.abstract,t.examples=r.examples,t.scopePattern=r.scopePattern}static async _prepareComplexTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.keyField=i.keyField,r.discriminatorField=i.discriminatorField,r.discriminatorValue=i.discriminatorValue,await e.enterAsync(".base",async()=>{let n;if(i.base)n=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let s=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,s)&&(n=await this._importDataTypeArgs(e,t,s))}n&&(r.base=ve(n),r.ctor=r.ctor||n.ctor)}),i.additionalFields!=null&&(typeof i.additionalFields=="boolean"||Array.isArray(i.additionalFields)?r.additionalFields=i.additionalFields:await e.enterAsync(".additionalFields",async()=>{let n=await this._importDataTypeArgs(e,t,i.additionalFields);n&&(r.additionalFields=ve(n))})),i.fields&&(r.fields={},await e.enterAsync(".fields",async()=>{for(let[n,s]of Object.entries(i.fields))await e.enterAsync(`[${n}]`,async()=>{let p=typeof s=="string"?{type:s}:s;if(p.isArray&&!p.type)return e.addError('"type" must be defined explicitly for array fields');let c=await this._importDataTypeArgs(e,t,p.type||"any");c&&(r.fields[n]={...p,type:ve(c)})})}))}static async _prepareEnumTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),i.base&&await e.enterAsync(".base",async()=>{let n=await this._importDataTypeArgs(e,t,i.base);n&&(r.base=ve(n))}),r.attributes=I(i.attributes)}static async _prepareSimpleTypeArgs(e,t,r,i){var n,s,p,c;await this._prepareDataTypeArgs(e,r,i),await e.enterAsync(".base",async()=>{let l;if(i.base)l=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let x=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,x)&&(l=await this._importDataTypeArgs(e,t,x))}l&&(r.base=ve(l),r.ctor=r.ctor||l.ctor)}),r.properties=i.properties,r.nameMappings=i.nameMappings,!r.properties&&r.ctor&&(r.properties=new r.ctor),i.attributes&&(r.attributes=I(i.attributes)),typeof((n=r.properties)==null?void 0:n[T])=="function"&&(r.generateDecoder=(s=r.properties)==null?void 0:s[T].bind(r.properties)),typeof((p=r.properties)==null?void 0:p[O])=="function"&&(r.generateEncoder=(c=r.properties)==null?void 0:c[O].bind(r.properties))}static async _prepareMappedTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.discriminatorField=i.discriminatorField,r.discriminatorValue=i.discriminatorValue,await e.enterAsync(".base",async()=>{let n;if(i.base)n=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let s=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,s)&&(n=await this._importDataTypeArgs(e,t,s))}n&&(r.base=ve(n),r.ctor=r.ctor||n.ctor)}),i.pick?r.pick=[...i.pick]:i.omit?r.omit=[...i.omit]:i.partial?r.partial=Array.isArray(i.partial)?[...i.partial]:i.partial:i.required&&(r.required=Array.isArray(i.required)?[...i.required]:i.required)}static async _prepareMixinTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.types=[],await e.enterAsync(".types",async()=>{let n=i.types,s=0;for(let p of n)await e.enterAsync(`[${s++}]`,async()=>{let c=await this._importDataTypeArgs(e,t,p);c&&r.types.push(ve(c))})})}static async _prepareUnionTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.types=[],await e.enterAsync(".types",async()=>{let n=i.types,s=0;for(let p of n)await e.enterAsync(`[${s++}]`,async()=>{let c=await this._importDataTypeArgs(e,t,p);c&&r.types.push(ve(c))})})}static _createDataType(e,t,r){var s;let i=t.node.findDataType(typeof r=="string"?r:r.name||"");if(i instanceof _)return i;let n=typeof r=="string"?(s=e.initArgsMap)==null?void 0:s.get(r):r;if(n){let p=n[C];switch(p||delete n._instance,i=n._instance,i!=null&&i.name&&p&&p.set(i.name,i),n==null?void 0:n.kind){case m.ComplexType.Kind:return this._createComplexType(e,t,n);case m.EnumType.Kind:return this._createEnumType(e,t,n);case m.MappedType.Kind:return this._createMappedType(e,t,n);case m.MixinType.Kind:return this._createMixinType(e,t,n);case m.SimpleType.Kind:return this._createSimpleType(e,t,n);case m.UnionType.Kind:return this._createUnionType(e,t,n);default:break}}e.addError(`Unknown data type (${String(r)})`)}static _createComplexType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,te.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),r.additionalFields&&e.enter(".additionalFields",()=>{typeof r.additionalFields=="boolean"||Array.isArray(r.additionalFields)?n.additionalFields=r.additionalFields:n.additionalFields=this._createDataType(e,t,r.additionalFields)}),n.fields={},r.fields&&e.enter(".fields",()=>{for(let[s,p]of Object.entries(r.fields))e.enter(`[${s}]`,()=>{let c=this._createDataType(e,t,p.type);c&&(n.fields[s]={...p,name:s,type:c})})}),te.apply(i,[t,n]),i}static _createEnumType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,Z.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),n.attributes=r.attributes,Z.apply(i,[t,n]),i}static _createMappedType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,We.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),We.apply(i,[t,n]),i}static _createMixinType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,Lt.prototype);let n=I(r);return r.types&&e.enter(".types",()=>{n.types=[];let s=0;for(let p of r.types)e.enter(`[${s++}]`,()=>{let c=this._createDataType(e,t,p);if(!(c instanceof L))throw new TypeError(`"${c==null?void 0:c.kind}" can't be set as base for a "${n.kind}"`);n.types.push(c)})}),Lt.apply(i,[t,n]),i}static _createSimpleType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,u.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),u.apply(i,[t,n]),i}static _createUnionType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,kt.prototype);let n=I(r);return r.types&&e.enter(".types",()=>{n.types=[];let s=0;for(let p of r.types)e.enter(`[${s++}]`,()=>{let c=this._createDataType(e,t,p);n.types.push(c)})}),kt.apply(i,[t,n]),i}};a(Kr,"DataTypeFactory");var F=Kr;function ve(o){return typeof o=="object"&&o.name?o.name:o}a(ve,"preferName");import{isConstructor as El}from"@jsopen/objects";import{omitUndefined as Hc}from"@jsopen/objects";var zn=class zn extends R{constructor(e){super(e.owner),this.name="OpraApi",this.name=e.name,this.description=e.description}toJSON(e){return Hc({transport:this.transport,name:this.name,description:this.description})}async _initialize(e,t){if(!j.test(e.name))throw new TypeError(`Invalid api name (${e.name})`);this.name=e.name,this.description=e==null?void 0:e.description}};a(zn,"ApiBase");var jt=zn;import rl from"path-browserify";import{omitUndefined as il}from"@jsopen/objects";import{asMutable as ol}from"ts-gems";import{merge as Jn,omit as el}from"@jsopen/objects";var tl=/^(.*)(Controller)$/;function Wn(o){let e=[],t=a(function(r){var c;let i=o==null?void 0:o.name;i||(i=((c=tl.exec(r.name))==null?void 0:c[1])||r.name);let n={},s=Reflect.getOwnMetadata(se,Object.getPrototypeOf(r));s&&Jn(n,s,{deep:!0});let p=Reflect.getOwnMetadata(se,r);p&&Jn(n,p,{deep:!0}),Jn(n,{kind:m.HttpController.Kind,name:i,path:i,...el(o,["kind","name","instance","endpoints","key"])},{deep:!0}),Reflect.defineMetadata(se,n,r);for(let l of e)l(n,r);Reflect.defineMetadata(se,n,r)},"decorator");return t.Cookie=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"cookie",type:i}:{...i,name:r,location:"cookie"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.Header=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"header",type:i}:{...i,name:r,location:"header"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.QueryParam=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"query",type:i}:{...i,name:r,location:"query"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.PathParam=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i}:{...i,name:r,location:"path"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.KeyParam=(r,i)=>(e.push(n=>{var p;(p=n.path)!=null&&p.includes(":"+r)||(n.path=(n.path||"")+"@:"+r);let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i,keyParam:!0}:{...i,name:r,location:"path",keyParam:!0};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.UseType=(...r)=>(e.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),t}a(Wn,"HttpControllerDecoratorFactory");var ne=a(function(...o){var i;if(!this)return ne[D].apply(void 0,o);let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid resource name (${t.name})`);let r=ol(this);r.kind=m.HttpController.Kind,r.types=r.node[C]=new oe,r.operations=new v,r.controllers=new v,r.parameters=[],r.name=t.name,r.description=t.description,r.path=t.path??t.name,r.instance=t.instance,r.ctor=t.ctor,r._controllerReverseMap=new WeakMap,(i=r._initialize)==null||i.call(r,t)},"HttpController"),Gn=class Gn extends R{get isRoot(){return!(this.owner instanceof ne)}findController(e){if(typeof e=="function"){let t=this._controllerReverseMap.get(e);if(t!=null)return t;for(let r of this.controllers.values()){if(r.ctor===e)return this._controllerReverseMap.set(e,r),r;if(r.controllers.size&&(t=r.findController(e),t))return this._controllerReverseMap.set(e,t),t}this._controllerReverseMap.set(e,null);return}if(e.startsWith("/")&&(e=e.substring(1)),e.includes("/")){let t=e.split("/"),r=this;for(;r&&t.length>0;)r=r.controllers.get(t.shift());return r}return this.controllers.get(e)}findParameter(e,t){let r=e.toLowerCase(),i;for(i of this.parameters)if(!(t&&t!==i.location)&&(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e)))return i;if(this.node.parent&&this.node.parent.element instanceof ne)return this.node.parent.element.findParameter(e,t)}getFullUrl(){return rl.posix.join(this.owner instanceof ne?this.owner.getFullUrl():"/",this.path)}toString(){return`[HttpController ${this.name}]`}toJSON(e){let t=il({kind:this.kind,description:this.description,path:this.path});if(this.operations.size){t.operations={};for(let r of this.operations.values())t.operations[r.name]=r.toJSON(e)}if(this.controllers.size){t.controllers={};for(let r of this.controllers.values())t.controllers[r.name]=r.toJSON(e)}if(this.types.size){t.types={};for(let r of this.types.values())t.types[r.name]=r.toJSON(e)}if(this.parameters.length){t.parameters=[];for(let r of this.parameters)t.parameters.push(r.toJSON(e))}return t}[st](){return`[${at}HttpController${pt+this.name+qe}]`}};a(Gn,"HttpControllerClass");var Yn=Gn;ne.prototype=Yn.prototype;Object.assign(ne,Wn);ne[D]=Wn;var Qn=class Qn extends jt{constructor(e){super(e),this._controllerReverseMap=new WeakMap,this.transport="http",this.controllers=new v,this.url=e.url}findController(e){return ne.prototype.findController.call(this,e)}findOperation(e,t){let r=this.findController(e);return r==null?void 0:r.operations.get(t)}toJSON(e){let r={...super.toJSON(),transport:this.transport,url:this.url,controllers:{}};for(let i of this.controllers.values())r.controllers[i.name]=i.toJSON(e);return r}};a(Qn,"HttpApi");var Ct=Qn;import nl from"@browsery/type-is";import{omitUndefined as sl}from"@jsopen/objects";import{asMutable as al}from"ts-gems";import{isAny as pl,vg as cl}from"valgen";var Me=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');R.call(this,o);let t=al(this);if(e.contentType){let r=Array.isArray(e.contentType)?e.contentType:[e.contentType];r=r.map(i=>i.split(/\s*,\s*/)).flat(),t.contentType=r.length>1?r:r[0]}t.description=e.description,t.contentEncoding=e.contentEncoding,t.examples=e.examples,t.multipartFields=[],t.maxFieldsSize=e.maxFieldsSize,t.maxFields=e.maxFields,t.maxFiles=e.maxFiles,t.maxFileSize=e.maxFileSize,t.maxTotalFileSize=e.maxTotalFileSize,e!=null&&e.type&&(t.type=(e==null?void 0:e.type)instanceof _?e.type:t.owner.node.getDataType(e.type)),t.isArray=e.isArray},"HttpMediaType"),Zn=class Zn extends R{findMultipartField(e,t){if(this.multipartFields){for(let r of this.multipartFields)if((!t||t===r.fieldType)&&(r.fieldName instanceof RegExp&&r.fieldName.test(e)||r.fieldName===e))return r}}toJSON(e){var i,n;let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0,r=sl({description:this.description,contentType:this.contentType,contentEncoding:this.contentEncoding,type:t||((i=this.type)==null?void 0:i.toJSON(e)),isArray:this.isArray,example:this.example,examples:this.examples,maxFields:this.maxFields,maxFieldsSize:this.maxFieldsSize,maxFiles:this.maxFiles,maxFileSize:this.maxFileSize,maxTotalFileSize:this.maxTotalFileSize});return(n=this.multipartFields)!=null&&n.length&&(r.multipartFields=this.multipartFields.map(s=>s.toJSON(e))),r}generateCodec(e,t){let r;return this.type?r=this.type.generateCodec(e,t):this.contentType&&(Array.isArray(this.contentType)?this.contentType:[this.contentType]).find(n=>nl.is(n,["json"]))&&(r=this.node.findDataType("object").generateCodec(e)),r=r||pl,this.isArray?cl.isArray(r):r}};a(Zn,"HttpMediaTypeClass");var Xn=Zn;Me.prototype=Xn.prototype;import{omitUndefined as ll}from"@jsopen/objects";function Ut(o,e){let t=o.lastIndexOf("/");if(o.startsWith("/")&&t){let r=o.substring(1,t),i=o.substring(t+1);if(e!=null&&e.includeFlags)for(let n of e.includeFlags)i.includes(n)||(i+=n);if(e!=null&&e.excludeFlags)for(let n of e.excludeFlags)i.replace(n,"");return new RegExp(r,i)}throw new TypeError(`"${o}" is not a valid RegExp string`)}a(Ut,"parseRegExp");var Hn=class Hn extends Me{constructor(e,t){super(e,t),this.fieldName=t.fieldName instanceof RegExp?t.fieldName:t.fieldName.startsWith("/")?Ut(t.fieldName):t.fieldName,this.fieldType=t.fieldType,this.required=t.required}toJSON(e){return ll({fieldName:this.fieldName,fieldType:this.fieldType,required:this.required,...super.toJSON(e)})}};a(Hn,"HttpMultipartField");var Vr=Hn;import{omitUndefined as ml}from"@jsopen/objects";var fl=/^([1-6]\d{2})(?:-([1-6]\d{2}))?$/,es=class es{constructor(e,t){if(this.start=0,this.end=0,e&&typeof e=="object"&&(this.start=e.start||0,this.end=e.end||0),typeof e=="number"&&(this.start=e,this.end=t||this.start),typeof e=="string"){let r=fl.exec(e);if(!r)throw new TypeError(`"${e}" is not a valid Status Code range`);this.start=parseInt(r[1],10),this.end=r[2]?parseInt(r[2],10):this.start}}includes(e){return e>=this.start&&e<=this.end}intersects(e,t){return t>=this.start&&e<=this.end}toString(){return this.start===this.end?String(this.start):String(this.start)+"-"+String(this.end)}toJSON(){return!this.end||this.start===this.end?this.start:{start:this.start,end:this.end}}};a(es,"HttpStatusRange");var fr=es;var ts=class ts extends Me{constructor(e,t){super(e,t),this.parameters=[],this.statusCode=(Array.isArray(t.statusCode)?t.statusCode:[t.statusCode]).map(r=>typeof r=="object"?new fr(r.start,r.end):new fr(r)),this.partial=t.partial}findParameter(e,t){e=e.toLowerCase();for(let r of this.parameters)if((!t||t===r.location)&&(r.name instanceof RegExp&&r.name.test(e)||r.name===e))return r}toJSON(e){let t=this.statusCode.map(i=>i.toJSON()),r=ml({...super.toJSON(e),statusCode:t.length===1&&typeof t[0]=="number"?t[0]:t,partial:this.partial});if(this.parameters.length){r.parameters=[];for(let i of this.parameters)r.parameters.push(i.toJSON(e))}return r}};a(ts,"HttpOperationResponse");var zr=ts;import{omitUndefined as hl}from"@jsopen/objects";import{asMutable as yl}from"ts-gems";import{omitUndefined as ul}from"@jsopen/objects";import{asMutable as dl}from"ts-gems";var Ye=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');R.call(this,o);let t=dl(this);t.description=e.description,t.type=e.type,t.examples=e.examples,t.isArray=e.isArray},"Value"),is=class is extends R{toJSON(e){let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0;return ul({type:this.type?t||this.type.toJSON(e):"any",description:this.description,isArray:this.isArray,examples:this.examples})}};a(is,"ValueClass");var rs=is;Ye.prototype=rs.prototype;var mr=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');Ye.call(this,o,e);let t=yl(this);e.name&&(t.name=e.name instanceof RegExp?e.name:e.name.startsWith("/")?Ut(e.name,{includeFlags:"i",excludeFlags:"m"}):e.name),t.location=e.location,t.deprecated=e.deprecated,t.required=e.required,t.required==null&&e.location==="path"&&(t.required=!0),t.arraySeparator=e.arraySeparator,t.keyParam=e.keyParam,t.parser=e.parser},"HttpParameter"),ns=class ns extends Ye{toJSON(e){return hl({...super.toJSON(e),name:this.name,location:this.location,arraySeparator:this.arraySeparator,keyParam:this.keyParam,required:this.required,deprecated:this.deprecated})}};a(ns,"HttpParameterClass");var os=ns;mr.prototype=os.prototype;import{omitUndefined as Tl}from"@jsopen/objects";var ss=class ss extends R{constructor(e){super(e),this.content=[]}toJSON(e){return Tl({description:this.description,required:this.required,maxContentSize:this.maxContentSize,content:this.content.length?this.content.map(t=>t.toJSON(e)):[],partial:this.partial,allowPatchOperators:this.allowPatchOperators})}};a(ss,"HttpRequestBody");var Jr=ss;var as=class as{static async createApi(e,t){let r=new Ct(t);return t.controllers&&await e.enterAsync(".controllers",async()=>{await this._createControllers(e,r,t.controllers)}),r}static async _createControllers(e,t,r){if(Array.isArray(r)){let i=0;for(let n of r){let s;await e.enterAsync(`[${i++}]`,async()=>{s=await this._resolveControllerMetadata(e,t,n)}),s&&await e.enterAsync(`[${s.metadata.name}]`,async()=>{let p=await this._createController(e,t,s.metadata,s.instance,s.ctor);p&&(t.controllers.get(p.name)&&e.addError(`Duplicate controller name (${s.name})`),t.controllers.set(p.name,p))})}return}for(let[i,n]of Object.entries(r))await e.enterAsync(`[${i}]`,async()=>{let s=await this._resolveControllerMetadata(e,t,n);if(!s)return;let p=await this._createController(e,t,{...s.metadata,name:i},s.instance,s.ctor);p&&(t.controllers.get(p.name)&&e.addError(`Duplicate controller name (${i})`),t.controllers.set(p.name,p))})}static async _resolveControllerMetadata(e,t,r){typeof r=="function"&&!El(r)&&(r=t instanceof ne?r(t.instance):r()),r=await pe(r);let i,n,s;if(typeof r=="function"){if(n=Reflect.getMetadata(se,r),!n)return e.addError(`Class "${r.name}" doesn't have a valid HttpController metadata`);i=r}else i=Object.getPrototypeOf(r).constructor,n=Reflect.getMetadata(se,i),n?s=r:(n=r,r.instance==="object"&&(s=r.instance,i=Object.getPrototypeOf(s).constructor));return n?{metadata:n,instance:s,ctor:i}:e.addError(`Class "${i.name}" is not decorated with HttpController()`)}static async _createController(e,t,r,i,n){if(!r.name)throw new TypeError("Controller name required");let s=new ne(t,{...r,instance:i,ctor:n});return r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,s,r.types)}),r.parameters&&await e.enterAsync(".parameters",async()=>{let p=0;for(let c of r.parameters)await e.enterAsync(`[${p++}]`,async()=>{let l={...c};await e.enterAsync(".type",async()=>{l.type=await F.resolveDataType(e,s,c.type)});let x=new mr(s,l);s.parameters.push(x)})}),r.operations&&await e.enterAsync(".operations",async()=>{for(let[p,c]of Object.entries(r.operations))await e.enterAsync(`[${p}]`,async()=>{let l=new b(s,{name:p,method:"GET"});await this._initHttpOperation(e,l,c),s.operations.set(p,l)})}),r.controllers&&await e.enterAsync(".controllers",async()=>{await this._createControllers(e,s,r.controllers)}),s}static async _initHttpOperation(e,t,r){let i={...r,name:t.name,types:void 0};return b.apply(t,[t.owner,i]),r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,t,r.types)}),r.parameters&&await e.enterAsync(".parameters",async()=>{let n=0;for(let s of r.parameters)await e.enterAsync(`[${n++}]`,async()=>{let p={...s};await e.enterAsync(".type",async()=>{p.type=await F.resolveDataType(e,t,s.type)});let c=new mr(t,p);t.parameters.push(c)})}),r.responses&&await e.enterAsync(".responses",async()=>{let n=0;for(let s of r.responses)await e.enterAsync(`[${n++}]`,async()=>{let p=new zr(t,{statusCode:s.statusCode});await this._initHttpOperationResponse(e,p,s),t.responses.push(p)})}),r.requestBody&&await e.enterAsync(".requestBody",async()=>{let n=new Jr(t);await this._initHttpRequestBody(e,n,r.requestBody),t.requestBody=n}),t}static async _initHttpMediaType(e,t,r){Me.call(t,t.owner,{...r,type:void 0,multipartFields:void 0}),r.type&&await e.enterAsync(".type",async()=>{t.type=await F.resolveDataType(e,t,r.type)}),r.multipartFields&&await e.enterAsync(".multipartFields",async()=>{for(let i=0;i<r.multipartFields.length;i++)await e.enterAsync(`[${i}]`,async()=>{let n=r.multipartFields[i],s=new Vr(t,{fieldName:n.fieldName,fieldType:n.fieldType});await this._initHttpMediaType(e,s,n),t.multipartFields.push(s)})})}static async _initHttpOperationResponse(e,t,r){await this._initHttpMediaType(e,t,r),t.partial=r.partial,r.parameters&&await e.enterAsync(".parameters",async()=>{let i=0;for(let n of r.parameters)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new mr(t,s);t.parameters.push(p)})})}static async _initHttpRequestBody(e,t,r){t.description=r.description,t.required=r.required,t.maxContentSize=r.maxContentSize,t.immediateFetch=r.immediateFetch,t.partial=r.partial,t.allowPatchOperators=r.allowPatchOperators,t.keepKeyFields=r.keepKeyFields,r.content&&await e.enterAsync(".content",async()=>{for(let i=0;i<r.content.length;i++)await e.enterAsync(`[${i}]`,async()=>{let n=r.content[i],s=new Me(t,String(i));await this._initHttpMediaType(e,s,n),t.content.push(s)})})}};a(as,"HttpApiFactory");var $t=as;import{omitUndefined as xl}from"@jsopen/objects";import{md5 as Ol}from"super-fast-md5";var ps=class ps extends jt{constructor(e){super(e),this._controllerReverseMap=new WeakMap,this.transport="rpc",this.controllers=new v,this.platform=e.platform}findController(e){if(typeof e=="function"){let t=this._controllerReverseMap.get(e);if(t!=null)return t;for(let r of this.controllers.values())if(r.ctor===e)return this._controllerReverseMap.set(e,r),r;this._controllerReverseMap.set(e,null);return}return this.controllers.get(e)}findOperation(e,t){let r=this.findController(e);return r==null?void 0:r.operations.get(t)}toJSON(){let t={...super.toJSON(),transport:this.transport,platform:this.platform,controllers:{}};for(let r of this.controllers.values())t.controllers[r.name]=r.toJSON();return t}};a(ps,"RpcApi");var Bt=ps;var Aa,cs=class cs extends R{constructor(){super(null),this[Aa]=new WeakMap,this.id="",this.info={},this.references=new v,this.types=new oe,this.node[C]=this.types,this.node.findDataType=this._findDataType.bind(this)}getDataTypeNs(e){let t=e instanceof _?this._findDataType(e.name||""):this._findDataType(e);if(t)return this[we].get(t)}findDocument(e){if(this.id===e)return this;for(let t of this.references.values()){if(t.id===e)return t;let r=t.findDocument(e);if(r)return r}}get httpApi(){if(!(this.api&&this.api instanceof Ct))throw new TypeError("The document do not contains HttpApi instance");return this.api}get rpcApi(){if(!(this.api&&this.api instanceof Bt))throw new TypeError("The document do not contains RpcApi instance");return this.api}toJSON(){return this.export()}export(e){let t=xl({spec:m.SpecVersion,id:this.id,url:this.url,info:I(this.info,!0)});if(this.references.size){let r=0,i={};for(let[n,s]of this.references.entries())s[Pe]||(i[n]={id:s.id,url:s.url,info:I(s.info,!0)},r++);r&&(t.references=i)}if(this.types.size){t.types={};for(let r of this.types.values())r.inScope(e==null?void 0:e.scope)&&(t.types[r.name]=r.toJSON(e))}return this.api&&(t.api=this.api.toJSON(e)),t}invalidate(){let e=this.export({});delete e.id,this.id=Ol(JSON.stringify(e)),this[we]=new WeakMap}_findDataType(e,t,r){let i=this.types.get(e);if(i&&i.inScope(t))return i;if(!this.references.size)return;if(typeof e=="string"){let s=js.exec(e);if(s){let p=s[1];if(p){let c=this.references.get(p);return c?(r=r||new WeakMap,r.set(this,!0),r.set(c,!0),c._findDataType(s[2],t,r)):void 0}e=s[2]}}r=r||new WeakMap,r.set(this,!0);let n=Array.from(this.references.keys()).reverse();for(let s of n){let p=this.references.get(s);if(i=p==null?void 0:p.types.get(e),i)return this[we].set(i,p!=null&&p[Pe]?"":s),i}for(let s of n){let p=this.references.get(s);if(r.set(p,!0),i=p._findDataType(e,t,r),i)return this[we].set(i,p!=null&&p[Pe]?"":s),i}}};a(cs,"ApiDocument");var Ge=cs;Aa=we;function Fe(o,e,t){let r=qr(e.pick,e.omit),i=typeof o=="string"?o.charAt(0).toUpperCase()+o.substring(1):o.name,n=(t==null?void 0:t.name)||i+"Mapped",s={[n]:class{constructor(){typeof o=="function"&&Er(this,o,r)}}}[n];if(typeof o=="function"&&Tr(s.prototype,o.prototype),typeof o=="function"){let c=Reflect.getOwnMetadata(d,o);if(!c)throw new TypeError(`Class "${o}" doesn't have datatype metadata information`);if(!(c.kind===m.ComplexType.Kind||c.kind===m.MappedType.Kind||c.kind===m.MixinType.Kind))throw new TypeError(`Class "${o}" is not a ${m.ComplexType.Kind}`)}let p={...t,kind:"MappedType",base:o};return e.pick&&(p.pick=e.pick),e.omit&&(p.omit=e.omit),e.partial&&(p.partial=e.partial),e.required&&(p.required=e.required),Reflect.defineMetadata(d,p,s),typeof o=="function"&&We._applyMixin(s,o,{...e,isInheritedPredicate:r}),s}a(Fe,"createMappedClass");function nx(o,e,t){return Fe(o,{omit:e},t)}a(nx,"OmitType");function cx(o,...e){let t=Array.isArray(e[0])?e[0]:!0,r=Array.isArray(e[0])?e[1]:e[0];return Fe(o,{partial:t},r)}a(cx,"PartialType");function ux(o,e,t){return Fe(o,{pick:e},t)}a(ux,"PickType");function Tx(o,...e){let t=Array.isArray(e[0])?e[0]:!0,r=Array.isArray(e[0])?e[1]:e[0];return Fe(o,{required:t},r)}a(Tx,"RequiredType");import{isConstructor as Sl}from"@jsopen/objects";import{omitUndefined as gl}from"@jsopen/objects";import{asMutable as wl}from"ts-gems";var Qe=a(function(...o){var i;if(!this)return Qe[D].apply(void 0,o);let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid resource name (${t.name})`);let r=wl(this);r.kind=m.RpcController.Kind,r.types=r.node[C]=new oe,r.operations=new v,r.headers=[],r.name=t.name,r.description=t.description,r.instance=t.instance,r.ctor=t.ctor,r._controllerReverseMap=new WeakMap,(i=r._initialize)==null||i.call(r,t)},"RpcController"),fs=class fs extends R{findHeader(e,t){let r=e.toLowerCase(),i;for(i of this.headers)if(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e))return i;if(this.node.parent&&this.node.parent.element instanceof Qe)return this.node.parent.element.findHeader(e,t)}toString(){return`[RpcController ${this.name}]`}toJSON(){let e=gl({kind:this.kind,description:this.description});if(this.operations.size){e.operations={};for(let t of this.operations.values())e.operations[t.name]=t.toJSON()}if(this.types.size){e.types={};for(let t of this.types.values())e.types[t.name]=t.toJSON()}if(this.headers.length){e.headers=[];for(let t of this.headers)e.headers.push(t.toJSON())}return e}[st](){return`[${at}RpcController${pt+this.name+qe}]`}};a(fs,"RpcControllerClass");var ls=fs;Qe.prototype=ls.prototype;Object.assign(Qe,Pt);Qe[D]=Pt;import{omitUndefined as Rl}from"@jsopen/objects";import{asMutable as bl}from"ts-gems";var ur=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');Ye.call(this,o,e);let t=bl(this);e.name&&(t.name=e.name instanceof RegExp?e.name:e.name.startsWith("/")?Ut(e.name,{includeFlags:"i",excludeFlags:"m"}):e.name),t.deprecated=e.deprecated,t.required=e.required},"RpcHeader"),us=class us extends Ye{toJSON(){return Rl({...super.toJSON(),name:this.name,required:this.required,deprecated:this.deprecated})}};a(us,"RpcHeaderClass");var ms=us;ur.prototype=ms.prototype;import{omitUndefined as Al}from"@jsopen/objects";import{asMutable as Dl}from"ts-gems";var dr=a(function(...o){if(!this){let[i,n]=o,s=[];return dr[D].call(void 0,s,i,n)}let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid operation name (${t.name})`);let r=Dl(this);r.headers=[],r.types=r.node[C]=new oe,r.name=t.name,r.description=t.description,r.channel=t.channel,t!=null&&t.payloadType&&(r.payloadType=(t==null?void 0:t.payloadType)instanceof _?t.payloadType:r.owner.node.getDataType(t.payloadType)),t!=null&&t.keyType&&(r.keyType=(t==null?void 0:t.keyType)instanceof _?t.keyType:r.owner.node.getDataType(t.keyType))},"RpcOperation"),hs=class hs extends R{findHeader(e){let t=e.toLowerCase(),r;for(r of this.headers)if(typeof r.name=="string"&&(r._nameLower=r._nameLower||r.name.toLowerCase(),r._nameLower===t)||r.name instanceof RegExp&&r.name.test(e))return r}toJSON(){var t;let e=Al({kind:m.RpcOperation.Kind,description:this.description,channel:this.channel,payloadType:this.payloadType.name?this.payloadType.name:this.payloadType.toJSON(),keyType:this.keyType?this.keyType.name?this.keyType.name:this.keyType.toJSON():void 0,response:(t=this.response)==null?void 0:t.toJSON()});if(this.headers.length){e.headers=[];for(let r of this.headers)e.headers.push(r.toJSON())}return e}};a(hs,"RpcOperationClass");var ds=hs;dr.prototype=ds.prototype;dr[D]=lr;import{omitUndefined as Nl}from"@jsopen/objects";var ys=class ys extends R{constructor(e,t){super(e),this.headers=[],this.channel=t==null?void 0:t.channel,this.description=t==null?void 0:t.description,t!=null&&t.payloadType?this.payloadType=(t==null?void 0:t.payloadType)instanceof _?t.payloadType:this.owner.node.getDataType(t.payloadType):this.payloadType=this.owner.node.getDataType("any"),t!=null&&t.keyType&&(this.keyType=(t==null?void 0:t.keyType)instanceof _?t.keyType:this.owner.node.getDataType(t.keyType))}findHeader(e){let t=e.toLowerCase(),r;for(r of this.headers)if(typeof r.name=="string"&&(r._nameLower=r._nameLower||r.name.toLowerCase(),r._nameLower===t)||r.name instanceof RegExp&&r.name.test(e))return r}toJSON(){let e=Nl({description:this.description,channel:this.channel,payloadType:this.payloadType.name?this.payloadType.name:this.payloadType.toJSON(),keyType:this.keyType?this.keyType.name?this.keyType.name:this.keyType.toJSON():void 0});if(this.headers.length){e.headers=[];for(let t of this.headers)e.headers.push(t.toJSON())}return e}};a(ys,"RpcOperationResponse");var Wr=ys;var Ts=class Ts{static async createApi(e,t){let r=new Bt(t);return t.controllers&&await e.enterAsync(".controllers",async()=>{if(Array.isArray(t.controllers))for(let i of t.controllers){let n=await this._createController(e,r,i);n&&r.controllers.set(n.name,n)}else for(let[i,n]of Object.entries(t.controllers)){let s=await this._createController(e,r,n,i);s&&r.controllers.set(s.name,s)}}),r}static async _createController(e,t,r,i){typeof r=="function"&&!Sl(r)&&(r=r()),r=await pe(r);let n,s,p;if(typeof r=="function"){if(s=Reflect.getMetadata(ae,r),!s)return e.addError(`Class "${r.name}" doesn't have a valid RpcController metadata`);n=r}else n=Object.getPrototypeOf(r).constructor,s=Reflect.getMetadata(ae,n),s?p=r:(s=r,r.instance==="object"&&(p=r.instance,n=Object.getPrototypeOf(p).constructor));if(!s)return e.addError(`Class "${n.name}" is not decorated with RpcController()`);if(i=i||s.name,!i)throw new TypeError("Controller name required");let c=new Qe(t,{...s,name:i,instance:p,ctor:n});return s.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,c,s.types)}),s.headers&&await e.enterAsync(".headers",async()=>{let l=0;for(let x of s.headers)await e.enterAsync(`[${l++}]`,async()=>{let g={...x};await e.enterAsync(".type",async()=>{x.type&&(g.type=c.node.findDataType(x.type)),!g.type&&typeof x.type=="object"&&(g.type=await F.createDataType(e,c,x.type)),g.type||(g.type=c.node.getDataType("any"))});let y=new ur(c,g);c.headers.push(y)})}),s.operations&&await e.enterAsync(".operations",async()=>{for(let[l,x]of Object.entries(s.operations))await e.enterAsync(`[${l}]`,async()=>{let g=new dr(c,{...x,name:l,types:void 0,payloadType:void 0,keyType:void 0});await this._initRpcOperation(e,g,x),c.operations.set(g.name,g)})}),c}static async _initRpcOperation(e,t,r){r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,t,r.types)}),t.payloadType=await F.resolveDataType(e,t,r.payloadType),r.keyType&&(t.keyType=await F.resolveDataType(e,t,r.keyType)),r.headers&&await e.enterAsync(".headers",async()=>{let i=0;for(let n of r.headers)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new ur(t,s);t.headers.push(p)})}),r.response&&await e.enterAsync(".response",async()=>{let i=new Wr(t,{...r.response,payloadType:void 0,keyType:void 0});await this._initRpcOperationResponse(e,i,r.response),t.response=i})}static async _initRpcOperationResponse(e,t,r){t.payloadType=await F.resolveDataType(e,t,r.payloadType),r.keyType&&(t.keyType=await F.resolveDataType(e,t,r.keyType)),r.headers&&await e.enterAsync(".headers",async()=>{let i=0;for(let n of r.headers)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new ur(t,s);t.headers.push(p)})})}};a(Ts,"RpcApiFactory");var Yr=Ts;var vl="https://oprajs.com/spec/v"+m.SpecVersion,Gr=class Gr{constructor(){this._allDocuments={}}static async createDocument(e,t){let r=new Gr,i=t instanceof he?t:new he(t);try{let n=new Ge;if(await r.initDocument(n,i,e),i.error.details.length)throw i.error;return n}catch(n){try{n instanceof _t||i.addError(n)}catch{}if(!i.error.message){let s=i.error.details.length;i.error.message=`(${s}) error${s>1?"s":""} found in document schema.`,i.showErrorDetails&&(i.error.message+=i.error.details.map(p=>`
|
|
9
|
+
`));throw x.errors=s,x}return e=e||new Qt,e.visit(c)}a(Io,"parse");var Po=class Po{constructor(e,t){if(this._rules=new v,this._decoderCache=new WeakMap,Object.defineProperty(this,"_rules",{value:new v(null,{caseSensitive:t==null?void 0:t.caseSensitive}),enumerable:!1}),e)for(let[r,i]of Object.entries(e))this.set(r,i)}set(e,t){let r=typeof(t==null?void 0:t.operators)=="string"?t.operators.split(/\s*[,| ]\s*/):t==null?void 0:t.operators;this._rules.set(e,hp({...t,operators:r}))}normalizeFilter(e,t,r){let i=typeof e=="string"?Io(e):e;return this.normalizeFilterAst(i,[],t,r)}normalizeFilterAst(e,t,r,i){if(e instanceof le){if(t.push(e),this.normalizeFilterAst(e.left,t,r),!(e.left instanceof X&&e.left.field))throw new TypeError("Invalid filter query. Left side should be a data field.");let n=this._rules.get(e.left.value);if(!n)throw new Ee({message:`Field '${e.left.value}' is not available for filter operation`,code:"UNACCEPTED_FILTER_FIELD",details:{field:e.left.value}});if(n.operators&&!n.operators.includes(e.op))throw new Ee({message:`'${e.left.value}' field do not accept '${e.op}' filter operator`,code:"UNACCEPTED_FILTER_OPERATION",details:{field:e.left.value,operator:e.op}});return n.mappedField&&(e.left.value=n.mappedField),n.prepare&&(e.prepare=n.prepare),this.normalizeFilterAst(e.right,t,r),t.pop(),e}if(e instanceof fe)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n,t,r)),t.pop(),e;if(e instanceof je)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n.expression,t,r)),t.pop(),e;if(e instanceof _e)return t.push(e),e.items.forEach(n=>this.normalizeFilterAst(n,t,r)),t.pop(),e;if(e instanceof xe)return t.push(e),this.normalizeFilterAst(e.expression,t,r),t.pop(),e;if(e instanceof X&&r)return e.value=r.normalizeFieldPath(e.value,{scope:i}),e.field=r.getField(e.value,i),e.dataType=e.field.type,e;if(e instanceof M){let n=t.findLastIndex(s=>s instanceof le);if(n>=0){let s=t[n];if((e===s.right||t[n+1]===s.right)&&s&&s.left instanceof X&&s.left.field){if(e.value==null&&!s.left.field.required)return e.value;let p;s.op==="like"||s.op==="!like"||s.op==="ilike"||s.op==="!ilike"?p=yp:p=this._decoderCache.get(s.left.field),p||(p=s.left.field.type.generateCodec("decode",{scope:i,projection:"*",ignoreWriteonlyFields:!0,coerce:!0}),this._decoderCache.set(s.left.field,p)),e.value=p(e.value,{coerce:!0})}}}return e}toJSON(){return this._rules.toObject()}[Symbol.iterator](){return this._rules.entries()}};a(Po,"FilterRules");var He=Po;import Sp from"object-hash";import{asMutable as vp}from"ts-gems";import{validator as Mp,vg as Y}from"valgen";import{omitUndefined as Dp}from"@jsopen/objects";import{asMutable as Np}from"ts-gems";import{asMutable as bp}from"ts-gems";import{uid as Ap}from"uid";var m={};hr(m,{ComplexType:()=>et,EnumType:()=>tt,HttpController:()=>Zt,HttpOperation:()=>Lo,MappedType:()=>rt,MixinType:()=>it,RpcController:()=>ko,RpcOperation:()=>jo,SimpleType:()=>ot,SpecVersion:()=>_0,UnionType:()=>nt,isComplexType:()=>Ep,isDataType:()=>Tp,isEnumType:()=>gp,isHttpController:()=>Rp,isMappedType:()=>Op,isMixinType:()=>xp,isSimpleType:()=>_p,isUnionType:()=>wp});var _0="1.0";var et;(function(o){o.Kind="ComplexType"})(et||(et={}));var tt;(function(o){o.Kind="EnumType"})(tt||(tt={}));var rt;(function(o){o.Kind="MappedType"})(rt||(rt={}));var it;(function(o){o.Kind="MixinType"})(it||(it={}));var ot;(function(o){o.Kind="SimpleType"})(ot||(ot={}));var nt;(function(o){o.Kind="UnionType"})(nt||(nt={}));var Zt;(function(o){o.Kind="HttpController"})(Zt||(Zt={}));var Lo;(function(o){o.Kind="HttpOperation"})(Lo||(Lo={}));var ko;(function(o){o.Kind="RpcController"})(ko||(ko={}));var jo;(function(o){o.Kind="RpcOperation"})(jo||(jo={}));function Tp(o){return o&&typeof o=="object"&&(o.kind===et.Kind||o.kind===tt.Kind||o.kind===rt.Kind||o.kind===ot.Kind||o.kind===it.Kind||o.kind===nt.Kind)}a(Tp,"isDataType");function Ep(o){return o&&typeof o=="object"&&o.kind===et.Kind}a(Ep,"isComplexType");function _p(o){return o&&typeof o=="object"&&o.kind===ot.Kind}a(_p,"isSimpleType");function xp(o){return o&&typeof o=="object"&&o.kind===it.Kind}a(xp,"isMixinType");function Op(o){return o&&typeof o=="object"&&o.kind===rt.Kind}a(Op,"isMappedType");function gp(o){return o&&typeof o=="object"&&o.kind===tt.Kind}a(gp,"isEnumType");function wp(o){return o&&typeof o=="object"&&o.kind===nt.Kind}a(wp,"isUnionType");function Rp(o){return o&&typeof o=="object"&&o.kind===Zt.Kind}a(Rp,"isHttpController");var Co=class Co{constructor(e,t){this.element=e,this.parent=t}getDocument(){if(this._document)return this._document;if(this.element[we])return this.element;if(this.parent)return this._document=this.parent.getDocument();throw new Error("ApiDocument not found in document tree")}hasDataType(e,t){return!!this.findDataType(e,t)}findDataType(e,t){var i;let r=(i=this[C])==null?void 0:i.get(e);return r&&r.inScope(t)?r:this.parent?this.parent.findDataType(e,t):void 0}getDataType(e,t){let r=this.findDataType(e,t);if(r)return r;let i="";if(typeof e=="function")i=Reflect.getMetadata(d,e).name;else if(typeof e=="object"){let n=e[d];i=n==null?void 0:n.name}throw i||(e&&typeof e=="string"?i=e:typeof e=="function"&&(i=e.name)),r?new TypeError(`Data type${i?" ("+i+")":""} is not in requested scope (${t})`):new TypeError(`Unknown data type${i?" ("+i+")":""}`)}getDataTypeNameWithNs(e){if(!e.name)return;let t=this.getDocument().getDataTypeNs(e);return t?t+":"+e.name:e.name}getComplexType(e,t){let r=this.getDataType(e,t);if(r.kind===m.ComplexType.Kind)return r;throw new TypeError(`Data type "${r.name}" is not a ComplexType`)}getSimpleType(e,t){let r=this.getDataType(e,t);if(r.kind===m.SimpleType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a SimpleType`)}getEnumType(e,t){let r=this.getDataType(e,t);if(r.kind===m.EnumType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a EnumType`)}getMappedType(e,t){let r=this.getDataType(e,t);if(r.kind===m.MappedType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MappedType`)}getMixinType(e,t){let r=this.getDataType(e,t);if(r.kind===m.MixinType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MixinType`)}getUnionType(e,t){let r=this.getDataType(e,t);if(r.kind===m.UnionType.Kind)return r;throw new TypeError(`Data type "${r.name||r}" is not a MixinType`)}};a(Co,"DocumentNode");var kr=Co;var R=a(function(o){if(!this)throw new TypeError('"this" should be passed to call class constructor');let e=bp(this);e.id=Ap(16),Object.defineProperty(e,"node",{value:new kr(this,o==null?void 0:o.node),enumerable:!1,writable:!0}),o&&Object.defineProperty(e,"owner",{value:o,enumerable:!1,writable:!0})},"DocumentElement"),$o=class $o{};a($o,"DocumentElementClass");var Uo=$o;R.prototype=Uo.prototype;var st=Symbol.for("nodejs.util.inspect.custom"),qe="\x1B[0m",at="\x1B[33m",pt="\x1B[35m";function Ht(o,e){return!e||o==="*"?!0:o?Array.isArray(e)?e.some(t=>typeof t=="string"?o===t:t.test(o)):typeof e=="string"?o===e:e.test(o):!1}a(Ht,"testScopeMatch");var _=a(function(o,e,t){if(!this)throw new TypeError('"this" should be passed to call class constructor');if(e!=null&&e.name&&!j.test(e.name))throw new TypeError(`"${e.name}" is not a valid DataType name`);R.call(this,o);let r=Np(this);r.kind=e.kind,r.scopePattern=e.scopePattern?Array.isArray(e.scopePattern)?e.scopePattern:[e.scopePattern]:void 0,r.name=e.name,r.description=e.description,r.abstract=e.abstract,r.examples=e.examples},"DataType"),qo=class qo extends R{get embedded(){return!this.name}inScope(e){return Ht(e,this.scopePattern)}toJSON(e){let t=this._locateBase(r=>!r.inScope(e==null?void 0:e.scope));if(t){let r=this.node.getDataTypeNameWithNs(t);throw new TypeError(`"${r}" model is not available for "${(e==null?void 0:e.scope)||"null"}" scope`)}return Dp({kind:this.kind,description:this.description,abstract:this.abstract,examples:this.examples})}toString(){return`[${Object.getPrototypeOf(this).constructor.name} ${this.name||"#Embedded"}]`}[st](){return`[${at+Object.getPrototypeOf(this).constructor.name+qe} ${pt+this.name+qe}]`}};a(qo,"DataTypeClass");var Bo=qo;_.prototype=Bo.prototype;var ct=/^([+-])?([a-z$_][\w.]*)$/i,L=a(function(...o){if(!this)throw new TypeError('"this" should be passed to call class constructor');let[e,t,r]=o;_.call(this,e,t,r);let i=vp(this);i._fields=new v},"ComplexTypeBase"),Vo=class Vo extends _{fieldCount(e){if(e==="*")return this._fields.size;let t=0;for(let r of this.fields(e))t++;return t}fieldEntries(e){let t=this._fields.entries();if(e==="*")return t;let r;return{next(){for(;t&&(r=t.next(),!(r.done||r.value&&r.value[1].inScope(e))););return r.done?{done:r.done,value:void 0}:{done:r.done,value:[r.value[0],r.value[1].forScope(e)]}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}fields(e){let t=this.fieldEntries(e),r;return{next(){var i;return t?(r=t.next(),{done:r.done,value:(i=r.value)==null?void 0:i[1]}):{done:!0,value:void 0}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}fieldNames(e){if(e==="*")return this._fields.keys();let t=this.fieldEntries(e),r;return{next(){var i;return t?(r=t.next(),{done:r.done,value:(i=r.value)==null?void 0:i[0]}):{done:!0,value:void 0}},return(i){return t=void 0,{done:!0,value:i}},[Symbol.iterator](){return this}}}findField(e,t){if(e.includes(".")){let i=this.parseFieldPath(e,{scope:t});if(i.length===0)throw new Error(`Field "${e}" does not exist in scope "${t}"`);let n=i.pop();return n==null?void 0:n.field}let r=this._fields.get(e);if(r&&r.inScope(t))return r.forScope(t)}getField(e,t){let r=this.findField(e,"*");if(r&&!r.inScope(t))throw new Error(`Field "${e}" does not exist in scope "${t||"null"}"`);if(!r)throw new Error(`Field (${e}) does not exist`);return r.forScope(t)}parseFieldPath(e,t){var g,y,G;let r=this,i,n=e.split("."),s=n.length,p=[],c=this.owner.node.getDataType("object"),l=t==null?void 0:t.allowSigns,x=a(()=>p.map(P=>P.fieldName).join("."),"getStrPath");for(let P=0;P<s;P++){let q={fieldName:n[P],dataType:c};p.push(q);let Ie=ct.exec(n[P]);if(!Ie)throw new TypeError(`Invalid field name (${x()})`);if(Ie[1]&&((P===0&&l==="first"||l==="each")&&(q.sign=Ie[1]),q.fieldName=Ie[2]),r){if(r instanceof L){if(i=r.findField(q.fieldName,t==null?void 0:t.scope),i){q.fieldName=i.name,q.field=i,q.dataType=i.type,r=i.type;continue}if(((g=r.additionalFields)==null?void 0:g[0])===!0){q.additionalField=!0,q.dataType=c,r=void 0;continue}if(((y=r.additionalFields)==null?void 0:y[0])==="type"&&((G=r.additionalFields)==null?void 0:G[1])instanceof _){q.additionalField=!0,q.dataType=r.additionalFields[1],r=r.additionalFields[1];continue}throw new Error(`Unknown field (${p.map(Qr=>Qr.fieldName).join(".")})`)}throw new TypeError(`"${p.map(Qr=>Qr.fieldName).join(".")}" field is not a complex type and has no child fields`)}q.additionalField=!0,q.dataType=c}return p}normalizeFieldPath(e,t){return this.parseFieldPath(e,t).map(r=>(r.sign||"")+r.fieldName).join(".")}generateCodec(e,t){var p;let r=t!=null&&t.cache?t:{...t,projection:Array.isArray(t==null?void 0:t.projection)?$s(t.projection):t==null?void 0:t.projection,currentPath:""},i=this._generateSchema(e,r),n;if(this.additionalFields instanceof _)n=this.additionalFields.generateCodec(e,t);else if(typeof this.additionalFields=="boolean")n=this.additionalFields;else if(Array.isArray(this.additionalFields))if(this.additionalFields.length<2)n="error";else{let c=n[1];n=Mp((l,x,g)=>x.fail(g,c,l))}let s=Y.isObject(i,{ctor:this.name==="object"?Object:this.ctor,additionalFields:n,name:this.name,coerce:!0,caseInSensitive:t==null?void 0:t.caseInSensitive,onFail:t==null?void 0:t.onFail});if(r.level===0&&((p=r.forwardCallbacks)!=null&&p.size))for(let c of r.forwardCallbacks)c();return s}_generateSchema(e,t){var c;t.fieldCache=t.fieldCache||new Map,t.level=t.level||0,t.forwardCallbacks=t.forwardCallbacks||new Set;let r={},{currentPath:i,projection:n}=t,s=!!(n&&Object.values(n).find(l=>!l.sign)),p;for(let l of this.fields("*")){if(!l.inScope(t.scope)||!(t.keepKeyFields&&this.keyField)&&(t.ignoreReadonlyFields&&l.readonly||t.ignoreWriteonlyFields&&l.writeonly)){r[l.name]=Y.isUndefined({coerce:!0});continue}p=l.name;let x;if(n!=="*"&&(x=n==null?void 0:n[p.toLowerCase()],(x==null?void 0:x.sign)==="-"||s&&!x||!s&&l.exclusive&&!x)){r[l.name]=Y.isUndefined({coerce:!0});continue}let g=typeof n=="object"?((c=n[p])==null?void 0:c.projection)||"*":n,y=t.fieldCache.get(l),G=typeof g=="string"?g:Sp(g||{});y||(y={},t.fieldCache.set(l,y));let P=y[G];if(P===null)P=Y.isAny(),t.forwardCallbacks.add(()=>{P=y[G],r[p]=t.partial||!l.required?Y.optional(P):Y.required(P)});else if(!P){let q=a(()=>{y[G]=null;let Ie=this._generateFieldCodec(e,l,{...t,partial:t.partial==="deep"?t.partial:void 0,projection:g,currentPath:i+(i?".":"")+p});return y[G]=Ie,Ie},"defaultGenerator");t.fieldHook?P=t.fieldHook(l,t.currentPath,q):P=q()}r[p]=t.partial||!(l.required||P.id==="required")?Y.optional(P):P.id==="required"?P:Y.required(P)}return t.allowPatchOperators&&(r._$pull=Y.optional(Y.isAny()),r._$push=Y.optional(Y.isAny())),r}_generateFieldCodec(e,t,r){let i=t.type.generateCodec(e,{...r,level:r.level+1},{convertToNative:t.convertToNative});return t.fixed&&(i=Y.isEqual(t.fixed)),t.isArray&&(i=Y.isArray(i)),i}};a(Vo,"ComplexTypeBaseClass");var Ko=Vo;L.prototype=Ko.prototype;import"reflect-metadata";import{omitUndefined as zo}from"@jsopen/objects";import{asMutable as Fp}from"ts-gems";import{vg as Ip}from"valgen";var Z=a(function(...o){if(!this)return Z[D].apply(void 0,o);let[e,t,r]=o;_.call(this,e,t,r);let i=Fp(this);if(i.kind=m.EnumType.Kind,t.base){if(!(t.base instanceof Z))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${i.kind}"`);i.base=t.base}i.instance=t.instance,i.ownAttributes=I(t.attributes||{}),i.attributes=i.base?I(i.base.attributes):{};for(let[n,s]of Object.entries(i.ownAttributes))i.attributes[n]=s},"EnumType"),Jo=class Jo extends _{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof Z?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}generateCodec(){return Ip.isEnum(Object.keys(this.attributes))}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0;return zo({...t,kind:this.kind,base:r,attributes:I(this.ownAttributes)})}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Jo,"EnumTypeClass");var er=Jo;Z.prototype=er.prototype;Object.assign(Z,er);function Pp(o,...e){let t=e.length>=2?e[0]:void 0,r=e.length>=2?e[1]:e[0],i={},n=o;if(Array.isArray(o)){if(t){if(!Array.isArray(t))throw new TypeError('Both "target" and "base" arguments should be array');n=[...t,...o]}i={},o.forEach(p=>{var l;let c=(l=r==null?void 0:r.meanings)==null?void 0:l[p];i[p]=zo({description:c})})}else{if(t){if(Array.isArray(t))throw new TypeError('Both "target" and "base" arguments should be enum object');n={...t,...o}}Object.keys(o).forEach(p=>{var l;let c=(l=r==null?void 0:r.meanings)==null?void 0:l[p];i[o[p]]=zo({alias:p,description:c})})}let s={kind:m.EnumType.Kind,attributes:i,base:r==null?void 0:r.base,name:r==null?void 0:r.name,description:r==null?void 0:r.description};return Object.defineProperty(o,d,{value:s,enumerable:!1,configurable:!0,writable:!0}),n}a(Pp,"EnumTypeFactory");Z.prototype=er.prototype;Z[D]=Pp;var gn={};hr(gn,{Base64Type:()=>Qo,DateTimeType:()=>rr,DateTimeTypeTz:()=>ir,DateType:()=>tr,EmailType:()=>H,FieldPathType:()=>z,FilterType:()=>Ve,ObjectIdType:()=>pn,OperationResult:()=>re,PartialDateType:()=>nr,TimeType:()=>sr,UrlType:()=>On,UuidType:()=>$r});import{__decorate as kp,__metadata as jp}from"tslib";import{isBase64 as Cp,validator as Xs,vg as Qs}from"valgen";import"reflect-metadata";import{omitUndefined as Ys}from"@jsopen/objects";import{asMutable as Lp}from"ts-gems";import{isAny as Gs}from"valgen";function Wo(o){let e=[],t=a(function(r){let i;if(!(o!=null&&o.embedded))if(o!=null&&o.name){if(!j.test(o.name))throw new TypeError(`"${o.name}" is not a valid type name`);i=o.name}else i=r.name,i=i.toLowerCase();let n=Reflect.getOwnMetadata(d,r)||{};o&&Object.assign(n,o),n.kind=m.SimpleType.Kind,n.name=i,Reflect.defineMetadata(d,n,r);for(let s of e)s(n,r)},"decorator");return t.Example=(r,i)=>(e.push(n=>{n.examples=n.examples||[],n.examples.push({description:i,value:r})}),t),t}a(Wo,"SimpleTypeDecoratorFactory");function Ws(o){return(e,t)=>{if(typeof t!="string")throw new TypeError("Symbol properties can't be decorated with Attribute");let r=Reflect.getOwnMetadata(d,e.constructor)||{},i=Reflect.getMetadata("design:type",e,t),n="string";i===Boolean?n="boolean":i===Number&&(n="number"),r.kind=m.SimpleType.Kind,r.attributes=r.attributes||{},r.attributes[t]={format:(o==null?void 0:o.format)||n,description:o==null?void 0:o.description,deprecated:o==null?void 0:o.deprecated},Reflect.defineMetadata(d,r,e.constructor)}}a(Ws,"AttributeDecoratorFactory");var u=a(function(...o){var n,s;if(!this)return u[D](...o);let[e,t,r]=o;_.call(this,e,t,r);let i=Lp(this);if(i.kind=m.SimpleType.Kind,t.base){if(!(t.base instanceof u))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base}if(i.properties=t.properties,i.ownNameMappings={...t.nameMappings},i.nameMappings={...(n=i.base)==null?void 0:n.nameMappings,...t.nameMappings},i.ownAttributes=I(t.attributes||{}),i.attributes=i.base?I(i.base.attributes):{},i.ownAttributes)for(let[p,c]of Object.entries(i.ownAttributes)){if((s=i.attributes[p])!=null&&s.sealed)throw new TypeError(`Sealed attribute "${p}" can not be overwritten`);i.attributes[p]=c}i._generateDecoder=t.generateDecoder,i._generateEncoder=t.generateEncoder},"SimpleType"),Go=class Go extends _{extend(e){return Object.setPrototypeOf(e,this),e}extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof u?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}generateCodec(e,t,r){let i={...this.properties,...r};if(e==="decode"){let s=this;for(;s;){if(s._generateDecoder)return s._generateDecoder(i,(t==null?void 0:t.documentElement)||this.owner,t==null?void 0:t.scope);s=this.base}return Gs}let n=this;for(;n;){if(n._generateEncoder)return n._generateEncoder(i,(t==null?void 0:t.documentElement)||this.owner,t==null?void 0:t.scope);n=this.base}return Gs}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0,i=Ys(this.ownAttributes),n;this.properties&&typeof this.properties.toJSON=="function"?n=this.properties.toJSON(this.properties,this.owner,e):n=this.properties?I(this.properties):{};let s={...t,kind:this.kind,base:r,attributes:i&&Object.keys(i).length?i:void 0,properties:Object.keys(n).length?n:void 0};return Object.keys(this.ownNameMappings).length&&(s.nameMappings={...this.ownNameMappings}),Ys(s,!0)}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Go,"SimpleTypeClass");var Yo=Go;u.prototype=Yo.prototype;Object.assign(u,Wo);u[D]=Wo;u.Attribute=Ws;var lt,Qo=(lt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=Qs.isBase64({coerce:!0});return e.convertToNative?Qs.pipe([t,Up],{coerce:!0}):t}[O](){return $p}},a(lt,"Base64Type"),lt);Qo=kp([u({name:"base64",description:"A stream of bytes, base64 encoded",nameMappings:{js:"string",json:"string"}}),jp("design:paramtypes",[Object])],Qo);var Up=Xs(o=>Buffer.from(o,"base64")),$p=Xs(o=>Buffer.isBuffer(o)?o.toString("base64"):Cp(o));import{__decorate as Xo,__metadata as Zo}from"tslib";import{vg as Ae}from"valgen";var Zs=Ae.isDateString({precisionMin:"day",trim:"day",coerce:!0}),Bp=Ae.isDate({trim:"day",coerce:!0}),ft,tr=(ft=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t;e.convertToNative?t=Bp:t=Zs;let r=[t];return e.minValue!=null&&r.push(Ae.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ae.isLte(t(e.maxValue))),r.length>0?Ae.pipe(r,{returnIndex:0}):t}[O](e){let t=Zs,r=[t];return e.minValue!=null&&r.push(Ae.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ae.isLte(t(e.maxValue))),r.length>0?Ae.pipe(r,{returnIndex:0}):t}},a(ft,"DateType"),ft);Xo([u.Attribute({description:"Minimum value"}),Zo("design:type",String)],tr.prototype,"minValue",void 0);Xo([u.Attribute({description:"Maximum value"}),Zo("design:type",String)],tr.prototype,"maxValue",void 0);tr=Xo([u({name:"date",description:"A date without time",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18","Full date value"),Zo("design:paramtypes",[Object])],tr);import{__decorate as Ho,__metadata as en}from"tslib";import{vg as De}from"valgen";var Hs=De.isDateString({precisionMin:"day",trim:"tz",coerce:!0}),qp=De.isDate({coerce:!0}),mt,rr=(mt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t;e.convertToNative?t=qp:t=Hs;let r=[t];return e.minValue!=null&&r.push(De.isGte(t(e.minValue))),e.maxValue!=null&&r.push(De.isLte(t(e.maxValue))),r.length>0?De.pipe(r,{returnIndex:0}):t}[O](e){let t=Hs,r=[t];return e.minValue!=null&&r.push(De.isGte(t(e.minValue))),e.maxValue!=null&&r.push(De.isLte(t(e.maxValue))),r.length>0?De.pipe(r,{returnIndex:0}):t}},a(mt,"DateTimeType"),mt);Ho([u.Attribute({description:"Minimum value"}),en("design:type",String)],rr.prototype,"minValue",void 0);Ho([u.Attribute({description:"Maximum value"}),en("design:type",String)],rr.prototype,"maxValue",void 0);rr=Ho([u({name:"datetime",description:"A full datetime value",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15").Example("2021-04-18 22:30:15").Example("2021-04-18 22:30"),en("design:paramtypes",[Object])],rr);import{__decorate as tn,__metadata as rn}from"tslib";import{vg as Ke}from"valgen";var ea=Ke.isDateString({precisionMin:"tz",coerce:!0}),ut,ir=(ut=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=ea,r=[t];return e.minValue!=null&&r.push(Ke.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ke.isLte(t(e.maxValue))),r.length>0?Ke.pipe(r,{returnIndex:0}):t}[O](e){let t=ea,r=[t];return e.minValue!=null&&r.push(Ke.isGte(t(e.minValue))),e.maxValue!=null&&r.push(Ke.isLte(t(e.maxValue))),r.length>0?Ke.pipe(r,{returnIndex:0}):t}},a(ut,"DateTimeTypeTz"),ut);tn([u.Attribute({description:"Minimum value"}),rn("design:type",String)],ir.prototype,"minValue",void 0);tn([u.Attribute({description:"Maximum value"}),rn("design:type",String)],ir.prototype,"maxValue",void 0);ir=tn([u({name:"datetimetz",description:"A full datetime value with time zone information",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15+03:00"),rn("design:paramtypes",[Object])],ir);import{__decorate as ue,__metadata as de}from"tslib";import{vg as ta}from"valgen";var dt,H=(dt=class{constructor(e){e&&Object.assign(this,e)}[T](e){return ta.isEmail({...e,coerce:!0})}[O](e){return ta.isEmail({...e,coerce:!0})}},a(dt,"EmailType"),dt);ue([u.Attribute({description:"If set to `true`, the validator will also match `Display Name <email-address>",default:!1}),de("design:type",Boolean)],H.prototype,"allowDisplayName",void 0);ue([u.Attribute({description:"If set to `true`, the validator will reject strings without the format `Display Name <email-address>",default:!1}),de("design:type",Boolean)],H.prototype,"requireDisplayName",void 0);ue([u.Attribute({description:"If set to `false`, the validator will not allow any non-English UTF8 character in email address's local part",default:!0}),de("design:type",Boolean)],H.prototype,"utf8LocalPart",void 0);ue([u.Attribute({description:"If set to `true`, the validator will not check for the standard max length of an email",default:!1}),de("design:type",Boolean)],H.prototype,"ignoreMaxLength",void 0);ue([u.Attribute({description:"If set to `true`, the validator will allow IP addresses in the host part",default:!1}),de("design:type",Boolean)],H.prototype,"allowIpDomain",void 0);ue([u.Attribute({description:"If set to `true`, some additional validation will be enabled, e.g. disallowing certain syntactically valid email addresses that are rejected by GMail.",default:!1}),de("design:type",Boolean)],H.prototype,"domainSpecificValidation",void 0);ue([u.Attribute({description:"If set to an array of strings and the part of the email after the @ symbol one of the strings defined in it, the validation fails."}),de("design:type",Array)],H.prototype,"hostBlacklist",void 0);ue([u.Attribute({description:"If set to an array of strings and the part of the email after the @ symbol matches none of the strings defined in it, the validation fails."}),de("design:type",Array)],H.prototype,"hostWhitelist",void 0);ue([u.Attribute({description:"If set to a string, then the validator will reject emails that include any of the characters in the string, in the name part."}),de("design:type",String)],H.prototype,"blacklistedChars",void 0);H=ue([u({name:"email",description:"An email value",nameMappings:{js:"string",json:"string"}}).Example("some.body@example.com"),de("design:paramtypes",[Object])],H);import{__decorate as on,__metadata as nn}from"tslib";import{toString as Kp,validator as Vp,vg as zp}from"valgen";var ht,z=(ht=class{constructor(e){e&&Object.assign(this,e)}[T](e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object"),n=e.allowSigns,s=Vp("decodeFieldPath",p=>i.normalizeFieldPath(p,{allowSigns:n,scope:r}));return zp.pipe([Kp,s])}[O](e,t,r){return this[T](e,t,r)}toJSON(e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object");_.prototype.toJSON.call(i,r);let n=i?t.node.getDataTypeNameWithNs(i):void 0;return{dataType:n||i.toJSON(r),allowSigns:e.allowSigns}}},a(ht,"FieldPathType"),ht);on([u.Attribute({description:"Data type which field belong to"}),nn("design:type",Object)],z.prototype,"dataType",void 0);on([u.Attribute({description:'Determines if signs (+,-) are allowed. If set "first" signs are allowed only beginning of the field pathIf set "each" signs are allowed at each field in the path'}),nn("design:type",String)],z.prototype,"allowSigns",void 0);z=on([u({name:"fieldpath",description:"Field path",nameMappings:{js:"string",json:"string"}}),nn("design:paramtypes",[Object])],z);import{__decorate as sn,__metadata as an}from"tslib";import{validator as ia}from"valgen";var or={};hr(or,{$and:()=>Wp,$arithmetic:()=>fc,$array:()=>ra,$date:()=>Yp,$eq:()=>Zp,$field:()=>Xp,$gt:()=>ec,$gte:()=>tc,$ilike:()=>pc,$in:()=>oc,$like:()=>sc,$lt:()=>rc,$lte:()=>ic,$ne:()=>Hp,$notILike:()=>cc,$notIn:()=>nc,$notLike:()=>ac,$number:()=>Qp,$or:()=>Jp,$paren:()=>lc,$time:()=>Gp,ArithmeticExpression:()=>je,ArithmeticExpressionItem:()=>Or,ArrayExpression:()=>_e,Ast:()=>Vt,BooleanLiteral:()=>Ce,ComparisonExpression:()=>le,DateLiteral:()=>be,DateTimeLiteral:()=>Wt,Expression:()=>U,FilterTreeVisitor:()=>Qt,Literal:()=>M,LogicalExpression:()=>fe,NegativeExpression:()=>zt,NullLiteral:()=>Ue,NumberLiteral:()=>Oe,OpraErrorListener:()=>Xt,ParenthesizedExpression:()=>xe,QualifiedIdentifier:()=>X,StringLiteral:()=>$e,Term:()=>ke,TimeLiteral:()=>Be,parse:()=>Io});function Jp(...o){return new fe({op:"or",items:o})}a(Jp,"$or");function Wp(...o){return new fe({op:"and",items:o})}a(Wp,"$and");function Yp(o){return new be(o)}a(Yp,"$date");function Gp(o){return new Be(o)}a(Gp,"$time");function Qp(o){return new Oe(o)}a(Qp,"$number");function ra(...o){return new _e(o.map(jr))}a(ra,"$array");function Xp(o){return new X(o)}a(Xp,"$field");function Zp(o,e){return ee("=",o,e)}a(Zp,"$eq");function Hp(o,e){return ee("!=",o,e)}a(Hp,"$ne");function ec(o,e){return ee(">",o,e)}a(ec,"$gt");function tc(o,e){return ee(">=",o,e)}a(tc,"$gte");function rc(o,e){return ee("<",o,e)}a(rc,"$lt");function ic(o,e){return ee("<=",o,e)}a(ic,"$lte");function oc(o,e){return ee("in",o,e)}a(oc,"$in");function nc(o,e){return ee("!in",o,e)}a(nc,"$notIn");function sc(o,e){return ee("like",o,e)}a(sc,"$like");function ac(o,e){return ee("!like",o,e)}a(ac,"$notLike");function pc(o,e){return ee("ilike",o,e)}a(pc,"$ilike");function cc(o,e){return ee("!ilike",o,e)}a(cc,"$notILike");function lc(o){return new xe(o)}a(lc,"$paren");function fc(o){let e=new je;return e.add=t=>(e.append("+",yt(t)),e),e.sub=t=>(e.append("-",yt(t)),e),e.mul=t=>(e.append("*",yt(t)),e),e.div=t=>(e.append("/",yt(t)),e),e.append("+",jr(o)),e}a(fc,"$arithmetic");function ee(o,e,t){let r=typeof e=="string"?new X(e):jr(e),i=jr(t);return new le({op:o,left:r,right:i})}a(ee,"comparisonExpression");var jr=a(o=>Array.isArray(o)?ra(...o.map(yt)):yt(o),"wrapEntryValue"),yt=a(o=>o instanceof U?o:typeof o=="boolean"?new Ce(o):typeof o=="number"||typeof o=="bigint"?new Oe(o):o==null?new Ue:o instanceof Date?new be(o):new $e(""+o),"_wrapEntryValue");var Tt,Ve=(Tt=class{constructor(e){e&&Object.assign(this,e)}[T](e,t){let r=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object"),i=e.rules?new He(e.rules):void 0;return mc(r,i)}[O](){return uc}toJSON(e,t,r){let i=e.dataType?t.node.getComplexType(e.dataType):t.node.getComplexType("object");_.prototype.toJSON.call(i,r);let n=i?t.node.getDataTypeNameWithNs(i):void 0;return{dataType:n||i.toJSON(r),rules:e.rules}}},a(Tt,"FilterType"),Tt);sn([u.Attribute({description:"Data type which filtering fields belong to"}),an("design:type",Object)],Ve.prototype,"dataType",void 0);sn([u.Attribute({description:"Stringified JSON object defines filtering rules",format:"string"}),an("design:type",Object)],Ve.prototype,"rules",void 0);Ve=sn([u({name:"filter",description:"A query filter",nameMappings:{js:"object",json:"string"}}),an("design:paramtypes",[Object])],Ve);var mc=a((o,e,t)=>ia("decodeFilter",(r,i,n)=>{if(typeof r=="string")try{let s=or.parse(r);return e?e.normalizeFilter(s,o,t):s}catch(s){i.fail(n,`Not a valid filter expression. ${s.message}`,r);return}i.fail(n,"Nt a valid filter expression string",r)}),"decodeFilter"),uc=ia("encodeFilter",(o,e,t)=>{if(o instanceof or.Ast)return o.toString();e.fail(t,"Not a valid filter expression",o)});import{__decorate as dc,__metadata as hc}from"tslib";import{vg as oa}from"valgen";var Et,pn=(Et=class{constructor(e){e&&Object.assign(this,e)}[T](){return oa.isObjectId({coerce:!0})}[O](){return oa.isObjectId({coerce:!0})}},a(Et,"ObjectIdType"),Et);pn=dc([u({name:"ObjectId",description:"A MongoDB ObjectID value",nameMappings:{js:"object",json:"string"}}),hc("design:paramtypes",[Object])],pn);import{__decorate as ye,__metadata as Te}from"tslib";import{omitUndefined as na}from"@jsopen/objects";import{asMutable as Tc}from"ts-gems";import{omitUndefined as yc}from"@jsopen/objects";function cn(o){let e=[],t=a(function(r,i){if(typeof i!="string")throw new TypeError("Symbol properties can't be used as a field");let n=Reflect.getOwnMetadata(d,r.constructor)||{};n.kind=m.ComplexType.Kind,n.fields=n.fields||{};let s=Reflect.getMetadata("design:type",r,i),p=n.fields[i]={...o,designType:s};s===Array?p.isArray=!0:p.type=p.type||s,Reflect.defineMetadata(d,n,r.constructor);for(let c of e)c(p)},"decorator");return t.Override=(r,i)=>(e.push(n=>{n.override=n.override||[],n.override.push(yc({...i,scopePattern:Array.isArray(r)?r:[r],type:void 0,isArray:void 0,isNestedEntity:void 0}))}),t),t}a(cn,"ApiFieldDecoratorFactory");var k=a(function(...o){if(!this){let[n]=o;return k[D](n)}let[e,t]=o;R.call(this,e);let r=Tc(this);r.name=t.name;let i=t.origin||e;if(!(i instanceof L))throw new Error("Field origin should be one of ComplexType, MappedType or MixinType");r.origin=i,r.type=t.type||e.node.getDataType("any"),r.description=t.description,r.isArray=t.isArray,r.isNestedEntity=t.isNestedEntity,r.default=t.default,r.fixed=t.fixed,r.required=t.required,r.exclusive=t.exclusive,r.localization=t.localization,r.keyField=t.keyField,r.deprecated=t.deprecated,r.readonly=t.readonly,r.writeonly=t.writeonly,r.examples=t.examples,r.override=t.override,r.scopePattern=t.scopePattern?Array.isArray(t.scopePattern)?t.scopePattern:[t.scopePattern]:void 0,r.convertToNative=t.convertToNative??(r.type.kind==="SimpleType"&&t.designType!==String&&typeof t.designType=="function"&&t.designType!==Object),r.override=t.override},"ApiField"),fn=class fn extends R{inScope(e){return Ht(e,this.scopePattern)}forScope(e){if(!(e&&this.override))return this;this._overrideCache=this._overrideCache||{};let t=this._overrideCache[e];if(t)return t;if(e!=="*"){for(let r of this.override)if(Ht(e,r.scopePattern)){t=na({...r,id:void 0,owner:void 0,node:void 0,origin:void 0,name:void 0,type:void 0,override:void 0,_overrideCache:void 0,scopePattern:r.scopePattern}),Object.setPrototypeOf(t,this);break}}return t=t||this,this._overrideCache[e]=t,t}toJSON(e){var r;let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0;return na({type:t||((r=this.type)==null?void 0:r.toJSON(e)),description:this.description,isArray:this.isArray||void 0,isNestedEntity:this.isNestedEntity||void 0,default:this.default,fixed:this.fixed,required:this.required||void 0,exclusive:this.exclusive||void 0,localization:this.localization||void 0,keyField:this.keyField||void 0,deprecated:this.deprecated||void 0,readonly:this.readonly||void 0,writeonly:this.writeonly||void 0,examples:this.examples})}};a(fn,"ApiFieldClass");var ln=fn;k.prototype=ln.prototype;Object.assign(k,cn);k[D]=cn;import"reflect-metadata";import{omitUndefined as _c}from"@jsopen/objects";import{asMutable as xc}from"ts-gems";var mn=class mn extends Ee{constructor(){super(""),this.details=[]}add(e){return this.details.push(e),this}};a(mn,"OpraDocumentError");var _t=mn;var un=class un{constructor(e){this.path="",this.error=new _t,this.showErrorDetails=!0,this.maxErrors=(e==null?void 0:e.maxErrors)||0,this.error.message=""}addError(e){if(!this.error.details.length)if(e instanceof Error)this.error.stack=e.stack;else{let t=new Error;Error.captureStackTrace(t,this.addError),this.error.stack=t.stack}if(this.error.add({message:typeof e=="string"?e:e.message,path:this.path,...typeof e=="object"?e:void 0}),this.error.details.length>=this.maxErrors)throw this.error}enter(e,t){let r=this.path;this.path=this.path+e;try{return t()}catch(i){i!==this.error&&this.addError(i)}finally{this.path=r}}async enterAsync(e,t){let r=this.path;this.path=this.path+e;try{return await t()}catch(i){i!==this.error&&this.addError(i)}finally{this.path=r}}extend(e){let t={...e};return Object.setPrototypeOf(t,this),t}};a(un,"DocumentInitContext");var he=un;import{omit as Ec}from"@jsopen/objects";function dn(o){return function(e){let t;if(!(o!=null&&o.embedded))if(o!=null&&o.name){if(!j.test(o.name))throw new TypeError(`"${o.name}" is not a valid type name`);t=o.name}else t=e.name;let r=Reflect.getOwnMetadata(d,e);r||(r={},Reflect.defineMetadata(d,r,e)),r.kind=m.ComplexType.Kind,r.name=t,o&&Object.assign(r,Ec(o,["name"]))}}a(dn,"ComplexTypeDecorator");var te=a(function(...o){var n;if(!this)return te[D].apply(void 0,o);let[e,t]=o,r=o[2]||new he({maxErrors:0});L.call(this,e,t,r);let i=xc(this);i.kind=m.ComplexType.Kind,i.discriminatorField=t.discriminatorField,i.discriminatorValue=t.discriminatorValue,t.base&&r.enter(".base",()=>{if(!(t.base instanceof L))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base,i.additionalFields=i.base.additionalFields,i.keyField=i.base.keyField;for(let s of i.base.fields("*"))i._fields.set(s.name,new k(this,s))}),t.additionalFields!==void 0&&(i.additionalFields=t.additionalFields),t.keyField!==void 0&&(i.keyField=t.keyField),i.ctor=t.ctor||((n=i.base)==null?void 0:n.ctor),t.fields&&r.enter(".fields",()=>{for(let[s,p]of Object.entries(t.fields)){let c=new k(this,{...p,name:s});this._fields.set(c.name,c)}})},"ComplexType"),yn=class yn extends L{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof L?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0,i={...t,kind:this.kind,base:this.base?r||this.base.toJSON(e):void 0,discriminatorField:this.discriminatorField,discriminatorValue:this.discriminatorValue};if(this.additionalFields)if(this.additionalFields instanceof _){let n=this.node.getDataTypeNameWithNs(this.additionalFields);i.additionalFields=n||this.additionalFields.toJSON(e)}else i.additionalFields=this.additionalFields;if(this._fields.size){let n={},s=0;for(let p of this._fields.values())p.origin===this&&p.inScope(e==null?void 0:e.scope)&&(n[p.name]=p.toJSON(e),s++);s&&(i.fields=n)}return _c(i)}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(yn,"ComplexTypeClass");var hn=yn;te.prototype=hn.prototype;Object.assign(te,dn);te[D]=dn;var xt,re=(xt=class{constructor(e){e&&Object.assign(this,e)}},a(xt,"OperationResult"),xt);ye([k(),Te("design:type",Number)],re.prototype,"affected",void 0);ye([k(),Te("design:type",Number)],re.prototype,"totalMatches",void 0);ye([k(),Te("design:type",String)],re.prototype,"context",void 0);ye([k(),Te("design:type",String)],re.prototype,"type",void 0);ye([k(),Te("design:type",String)],re.prototype,"message",void 0);ye([k({type:"any"}),Te("design:type",Object)],re.prototype,"payload",void 0);ye([k({type:"object"}),Te("design:type",Array)],re.prototype,"errors",void 0);re=ye([te({name:"OperationResult",description:"Operation result"}),Te("design:paramtypes",[Object])],re);(function(o){function e(t){var i;let r=(i=class extends o{constructor(...s){super(...s)}},a(i,"OperationResult_"),i);return ye([k({type:t,required:!0}),Te("design:type",Object)],r.prototype,"payload",void 0),r=ye([te({embedded:!0}),Te("design:paramtypes",[Object])],r),r}a(e,"forPayload"),o.forPayload=e})(re||(re={}));import{__decorate as Tn,__metadata as En}from"tslib";import{isDateString as Cr,toString as sa,validator as Oc,vg as ze}from"valgen";var Ot,nr=(Ot=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=pa,r=[];return e.minValue!=null&&(Cr(e.minValue),r.push(sa,ze.isGte(e.minValue))),e.maxValue!=null&&(Cr(e.maxValue),r.push(sa,ze.isLte(e.maxValue))),r.length>0?ze.pipe([t,...r],{returnIndex:0}):t}[O](e){let t=pa,r=[];return e.minValue!=null&&(Cr(e.minValue),r.push(ze.isGte(e.minValue))),e.maxValue!=null&&(Cr(e.maxValue),r.push(ze.isLte(e.maxValue))),r.length>0?ze.pipe([t,...r],{returnIndex:0}):t}},a(Ot,"PartialDateType"),Ot);Tn([u.Attribute({description:"Minimum value"}),En("design:type",String)],nr.prototype,"minValue",void 0);Tn([u.Attribute({description:"Maximum value"}),En("design:type",String)],nr.prototype,"maxValue",void 0);nr=Tn([u({name:"partialdate",description:"Specifies a point in time using a 24-hour clock notation.\rFormat: YYYY-[MM-[DD-[T?HH:[MM:[SS[.S[S[S[S]]]]]]]]][+/-ZZ:ZZ].",nameMappings:{js:"string",json:"string"}}).Example("2021-04-18T22:30:15:22+03:00").Example("2021-04-18 22:30").Example("2021-04-18").Example("2021"),En("design:paramtypes",[Object])],nr);var aa=ze.isDateString({precisionMin:"year"}),pa=Oc(o=>{if(o instanceof Date){let e=aa(o,{coerce:!0});return e.endsWith("Z")&&(e=e.substring(0,e.length-1)),e.endsWith(".000")&&(e=e.substring(0,e.length-4)),e.endsWith(":00")&&(e=e.substring(0,e.length-3)),e.endsWith("00:00")&&(e=e.substring(0,e.length-6)),e}return aa(o,{coerce:!1})});import{__decorate as _n,__metadata as xn}from"tslib";import{vg as Ur}from"valgen";var gc=/^([0-1][0-9]|2[0-4]):([0-5][0-9])(?::([0-5][0-9]))?$/,gt,sr=(gt=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=Ur.matches(gc,{formatName:"time",coerce:!0}),r=[];return e.minValue!=null&&r.push(Ur.isGte(e.minValue)),e.maxValue!=null&&r.push(Ur.isLte(e.maxValue)),r.length>0?Ur.pipe([t,...r],{returnIndex:0}):t}[O](e){return this[T](e)}},a(gt,"TimeType"),gt);_n([u.Attribute({description:"Minimum value"}),xn("design:type",String)],sr.prototype,"minValue",void 0);_n([u.Attribute({description:"Maximum value"}),xn("design:type",String)],sr.prototype,"maxValue",void 0);sr=_n([u({name:"time",description:"Time string in 24h format",nameMappings:{js:"string",json:"string"}}).Example("18:23:00","Full time value").Example("18:23:00","Time value without seconds"),xn("design:paramtypes",[Object])],sr);import{__decorate as wc,__metadata as Rc}from"tslib";import{vg as ca}from"valgen";var wt,On=(wt=class{constructor(e){e&&Object.assign(this,e)}[T](){return ca.isURL({coerce:!0})}[O](){return ca.isURL({coerce:!0})}},a(wt,"UrlType"),wt);On=wc([u({name:"url",description:"A Uniform Resource Identifier Reference (RFC 3986 icon) value",nameMappings:{js:"string",json:"string"}}).Example("http://tempuri.org"),Rc("design:paramtypes",[Object])],On);import{__decorate as fa,__metadata as ma}from"tslib";import{vg as la}from"valgen";var Rt,$r=(Rt=class{constructor(e){e&&Object.assign(this,e)}[T](e){return la.isUUID(e==null?void 0:e.version,{coerce:!0})}[O](e){return la.isUUID(e==null?void 0:e.version,{coerce:!0})}},a(Rt,"UuidType"),Rt);fa([u.Attribute({description:"Version of the UUID"}),ma("design:type",Number)],$r.prototype,"version",void 0);$r=fa([u({name:"uuid",description:"A Universal Unique Identifier (UUID) value",nameMappings:{js:"string",json:"string"}}),ma("design:paramtypes",[Object])],$r);import bc from"path-browserify";import{omitUndefined as Ac}from"@jsopen/objects";import{asMutable as Dc}from"ts-gems";var ua,da,ie=Symbol.for("kMap"),ar=Symbol.for("kCtorMap"),wn=class wn{constructor(){this[ua]=new v,this[da]=new WeakMap}get size(){return this[ie].size}forEach(e,t){this[ie].forEach(e,t)}get(e){let t=typeof e=="string"?e:this[ar].get(e);if(!t&&typeof e=="function"){let i=Reflect.getMetadata(d,e);t=i==null?void 0:i.name}if(!t&&typeof e=="object"){let i=e[d];t=i==null?void 0:i.name}if(!t)return;let r=this[ie].get(t);if(r)return typeof e=="function"&&r.kind==="ComplexType"?r.ctor===e?r:void 0:r}set(e,t){this[ie].set(e,t),t.ctor?this[ar].set(t.ctor,e):t.instance&&this[ar].set(t.instance,e)}has(e){if(e instanceof _)return!!e.name&&this[ie].has(e.name);let t=typeof e=="string"?e:this[ar].get(e);return t?this[ie].has(t):!1}keys(){return this[ie].keys()}values(){return this[ie].values()}entries(){return this[ie].entries()}sort(e){return this[ie].sort(e),this}[(ua=ie,da=ar,Symbol.iterator)](){return this[ie][Symbol.iterator]()}};a(wn,"DataTypeMap");var oe=wn;function S(o,e){let t=a(((r,i)=>{if(typeof i!="string")throw new TypeError("Symbol properties can not be decorated");let n={...e,kind:m.HttpOperation.Kind},s=Reflect.getOwnMetadata(se,r.constructor)||{};s.operations=s.operations||{},s.operations[i]=n;for(let p of o)p(n);Reflect.defineMetadata(se,s,r.constructor)}),"decorator");return t.Cookie=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"cookie",type:i}:{...i,name:r,location:"cookie"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="cookie"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.Header=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"header",type:i}:{...i,name:r,location:"header"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="header"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.QueryParam=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"query",type:i}:{...i,name:r,location:"query"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="query"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.PathParam=(r,i)=>(o.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i}:{...i,name:r,location:"path"};n.parameters?n.parameters=n.parameters.filter(p=>!(p.location==="path"&&String(p.name)===String(r))):n.parameters=[],n.parameters.push(s)}),t),t.Response=(r,i)=>{let n={...i,statusCode:r};return n.type&&(n.contentType=n.contentType||A.opra_response_json,n.contentEncoding=n.contentEncoding||"utf-8"),n.contentType===A.opra_response_json&&(n.contentEncoding=n.contentEncoding||"utf-8"),o.push(s=>{s.responses=s.responses||[],s.responses.push(n)}),t},t.RequestContent=function(r){let i=typeof r=="object"?r:{type:r};return i.type&&(i.contentType=i.contentType||A.json,i.contentEncoding=i.contentEncoding||"utf-8"),o.push(n=>{n.requestBody=n.requestBody||{required:!0,content:[]},n.requestBody.content=n.requestBody.content||[],n.requestBody.content.push(i)}),t},t.MultipartContent=function(r,i){let n={...r,contentType:(r==null?void 0:r.contentType)||"multipart/form-data"};if(o.push(s=>{s.requestBody=s.requestBody||{required:!0,content:[]},s.requestBody.content=s.requestBody.content||[],s.requestBody.content.push(n)}),i){let s={Field(p,c){return n.multipartFields=n.multipartFields||[],n.multipartFields.push({fieldName:p,fieldType:"field",...c}),s},File(p,c){return n.multipartFields=n.multipartFields||[],n.multipartFields.push({fieldName:p,fieldType:"file",...c}),s}};i(s)}return t},t.UseType=(...r)=>(o.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),t}a(S,"HttpOperationDecoratorFactory");var b=a(function(...o){if(!this){let[i]=o,n=[];return b[D].call(void 0,n,i)}let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid operation name (${t.name})`);let r=Dc(this);r.parameters=[],r.responses=[],r.types=r.node[C]=new oe,r.name=t.name,r.path=t.path,r.mergePath=t.mergePath,r.method=t.method||"GET",r.description=t.description,r.composition=t.composition,r.compositionOptions=t.compositionOptions?I(t.compositionOptions):void 0},"HttpOperation"),bn=class bn extends R{findParameter(e,t){let r=e.toLowerCase(),i;for(i of this.parameters)if(!(t&&t!==i.location)&&(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e)))return i}getFullUrl(){let e=this.owner.getFullUrl();return e?this.path?this.mergePath?e+this.path:bc.posix.join(e,this.path):e:this.path||"/"}toJSON(e){var r;let t=Ac({kind:m.HttpOperation.Kind,description:this.description,method:this.method,path:this.path,mergePath:this.mergePath,composition:this.composition,requestBody:(r=this.requestBody)==null?void 0:r.toJSON(e)});if(this.types.size){t.types={};for(let i of this.types.values())t.types[i.name]=i.toJSON(e)}if(this.parameters.length){t.parameters=[];for(let i of this.parameters)t.parameters.push(i.toJSON(e))}return this.responses.length&&(t.responses=this.responses.map(i=>i.toJSON(e))),t}};a(bn,"HttpOperationClass");var Rn=bn;b.prototype=Rn.prototype;b[D]=S;b.GET=function(o){return S([],{...o,method:"GET"})};b.DELETE=function(o){return S([],{...o,method:"DELETE"})};b.HEAD=function(o){return S([],{...o,method:"HEAD"})};b.OPTIONS=function(o){return S([],{...o,method:"OPTIONS"})};b.PATCH=function(o){return S([],{...o,method:"PATCH"})};b.POST=function(o){return S([],{...o,method:"POST"})};b.PUT=function(o){return S([],{...o,method:"PUT"})};b.SEARCH=function(o){return S([],{...o,method:"SEARCH"})};b.Entity={};function K(o){if(typeof o=="string")return o;let e=Reflect.getMetadata(d,o);if(!e)throw new TypeError(`Type (${o}) is not decorated with any datatype decorators`);if(e!=null&&e.name)return e.name;throw new TypeError("You should provide named data type but embedded one found")}a(K,"getDataTypeName");function Ne(o,e){return(t,r)=>{let i=typeof r=="string"||typeof r=="function"?{name:t,location:"path",type:r,keyParam:!0}:{...r,name:t,location:"path",keyParam:!0};return o.PathParam(t,i),e.push(n=>{var s;(s=n.path)!=null&&s.includes(":"+t)||(n.path=(n.path||"")+"@:"+t),n.mergePath=!0}),o}}a(Ne,"createKeyParamDecorator");function ha(o,e){return(...t)=>{let r=typeof t[0]=="object"?t[0]:t.reduce((s,p)=>{let c=p.split(":");return s[c[0]]=c[1]||c[0],s},{}),i=Object.keys(r).reduce((s,p)=>{let c=ct.exec(p),l=ct.exec(r[p]);return c&&l&&(s[c[2]]=l[2]),s},{}),n=Object.keys(r).reduce((s,p)=>{let c=ct.exec(p);return c&&(c[1]!="-"&&(s[c[2]]=c[2]),c[1]!="+"&&(s["-"+c[2]]="-"+c[2])),s},{});return e.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.sortFields=i}),o.QueryParam("sort",{description:"Determines sort fields",type:Z(n),isArray:!0,arraySeparator:",",parser:a(s=>s.map(p=>{let c=ct.exec(p);return c?(c[1]||"")+i[c[2]]:p}),"parser")}),o}}a(ha,"createSortFieldsDecorator");function Se(o,e,t){let r=Reflect.getMetadata("FilterRules",o);r||(r=new He,Reflect.defineMetadata("FilterRules",r,o));let i=Reflect.getMetadata("FilterType",o);return i||(i=new Ve({dataType:t}),i.rules={},Reflect.defineMetadata("FilterType",i,o)),(n,s)=>{let p=(Array.isArray(s)?{operators:s}:typeof s=="string"?{operators:s.split(/\s*,\s*/)}:s)||{};if(p.operators=p.operators||["=","!="],n.includes(":")){let c=n.split(":");n=c[0],p.mappedField=c[1]}return e.push(()=>{r.set(n,p),i.rules=r.toJSON()}),o.QueryParam("filter",{type:i,description:"Determines filter fields"}),o}}a(Se,"createFilterDecorator");b.Entity.Create=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"POST",...t,composition:"Entity.Create",requestBody:{immediateFetch:!0,...t.requestBody,required:!0}});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.CREATED,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the created resource.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i};b.Entity.Delete=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"DELETE",...t,composition:"Entity.Delete"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.DeleteMany=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"DELETE",...t,composition:"Entity.DeleteMany"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.Filter=Se(i,r,t.type),i};var kn={};hr(kn,{AnyType:()=>An,BigintType:()=>Mn,BooleanType:()=>Fn,IntegerType:()=>vt,NullType:()=>Pn,NumberType:()=>ge,ObjectType:()=>Ln,StringType:()=>Je});import{__decorate as Nc,__metadata as Sc}from"tslib";import{isAny as ya}from"valgen";var bt,An=(bt=class{constructor(e){e&&Object.assign(this,e)}[T](){return ya}[O](){return ya}},a(bt,"AnyType"),bt);An=Nc([u({name:"any",description:"Represents any value"}),Sc("design:paramtypes",[Object])],An);import{__decorate as vc,__metadata as Mc}from"tslib";import{toBigint as Ea,vg as vn}from"valgen";import{__decorate as Nn,__metadata as Sn}from"tslib";import{toNumber as Ta,vg as Dn}from"valgen";var At,ge=(At=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=[];return e.minValue!=null&&t.push(Dn.isGte(e.minValue)),e.maxValue!=null&&t.push(Dn.isLte(e.maxValue)),t.length>0?Dn.pipe([Ta,...t],{returnIndex:0}):Ta}[O](e){return this[T](e)}},a(At,"NumberType"),At);Nn([u.Attribute({description:"Determines the minimum value"}),Sn("design:type",Number)],ge.prototype,"minValue",void 0);Nn([u.Attribute({description:"Determines the maximum value"}),Sn("design:type",Number)],ge.prototype,"maxValue",void 0);ge=Nn([u({name:"number",description:"Both Integer as well as Floating-Point numbers",nameMappings:{js:"number",json:"number"}}),Sn("design:paramtypes",[Object])],ge);var Dt,Mn=(Dt=class extends ge{constructor(e){super(e)}[T](e){let t=[];return e.minValue!=null&&t.push(vn.isGte(e.minValue)),e.maxValue!=null&&t.push(vn.isLte(e.maxValue)),t.length>0?vn.pipe([Ea,...t],{returnIndex:0}):Ea}[O](e){return this[T](e)}},a(Dt,"BigintType"),Dt);Mn=vc([u({name:"bigint",description:"BigInt number",nameMappings:{js:"bigint",json:"string"}}),Mc("design:paramtypes",[Object])],Mn);import{__decorate as Fc,__metadata as Ic}from"tslib";import{toBoolean as _a}from"valgen";var Nt,Fn=(Nt=class{constructor(e){e&&Object.assign(this,e)}[T](){return _a}[O](){return _a}},a(Nt,"BooleanType"),Nt);Fn=Fc([u({name:"boolean",description:"Simple true/false value",nameMappings:{js:"boolean",json:"boolean"}}),Ic("design:paramtypes",[Object])],Fn);import{__decorate as Pc,__metadata as Lc}from"tslib";import{toInteger as xa,vg as In}from"valgen";var St,vt=(St=class extends ge{constructor(e){super(e)}[T](e){let t=[];return e.minValue!=null&&t.push(In.isGte(e.minValue)),e.maxValue!=null&&t.push(In.isLte(e.maxValue)),t.length>0?In.pipe([xa,...t],{returnIndex:0}):xa}[O](e){return this[T](e)}},a(St,"IntegerType"),St);vt=Pc([u({name:"integer",description:"An integer number",nameMappings:{js:"number",json:"number"}}),Lc("design:paramtypes",[Object])],vt);import{__decorate as kc,__metadata as jc}from"tslib";import{isNull as Oa}from"valgen";var Mt,Pn=(Mt=class{constructor(e){e&&Object.assign(this,e)}[T](){return Oa}[O](){return Oa}},a(Mt,"NullType"),Mt);Pn=kc([u({name:"null",description:"A Null value",nameMappings:{js:"null",json:"null"}}),jc("design:paramtypes",[Object])],Pn);import{__decorate as Cc,__metadata as Uc}from"tslib";var Ft,Ln=(Ft=class{constructor(e){e&&Object.assign(this,e)}},a(Ft,"ObjectType"),Ft);Ln=Cc([te({name:"object",description:"A non modelled object",additionalFields:!0}),Uc("design:paramtypes",[Object])],Ln);import{__decorate as pr,__metadata as cr}from"tslib";import{toString as ga,vg as Br}from"valgen";var It,Je=(It=class{constructor(e){e&&Object.assign(this,e)}[T](e){let t=[];if(e.pattern){let r=e.patternName;r||(r=Reflect.getMetadata(d,Object.getPrototypeOf(this).constructor).name),t.push(Br.matches(e.pattern,{formatName:r}))}return e.minLength&&t.push(Br.lengthMin(e.minLength)),e.maxLength&&t.push(Br.lengthMax(e.maxLength)),t.length>0?Br.pipe([ga,...t],{returnIndex:0}):ga}[O](e){return this[T](e)}},a(It,"StringType"),It);pr([u.Attribute({description:"Regex pattern to be used for validation"}),cr("design:type",Object)],Je.prototype,"pattern",void 0);pr([u.Attribute({description:"Name of the pattern"}),cr("design:type",String)],Je.prototype,"patternName",void 0);pr([u.Attribute({description:"Minimum number of characters"}),cr("design:type",Number)],Je.prototype,"minLength",void 0);pr([u.Attribute({description:"Minimum number of characters"}),cr("design:type",Number)],Je.prototype,"maxLength",void 0);Je=pr([u({name:"string",description:"A sequence of characters",nameMappings:{js:"string",json:"string"}}),cr("design:paramtypes",[Object])],Je);b.Entity.FindMany=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"GET",...t,composition:"Entity.FindMany"});return i.Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains list of resources.',contentType:A.opra_response_json,type:t.type,partial:"deep",isArray:!0}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}).QueryParam("limit",{description:"Determines number of returning instances",type:new vt({minValue:1,maxValue:t.maxLimit})}).QueryParam("skip",{description:"Determines number of returning instances",type:new vt({minValue:1})}).QueryParam("count",{description:"Counts all matching instances if enabled",type:Boolean}).QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type),t.defaultLimit&&(s.defaultLimit=t.defaultLimit),t.defaultProjection&&(s.defaultProjection=t.defaultProjection),t.maxLimit&&(s.maxLimit=t.maxLimit)}),i.Filter=Se(i,r,t.type),i.DefaultSort=(...n)=>(r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.defaultSort=n}),i),i.SortFields=ha(i,r),i};b.Entity.Get=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"GET",...t,composition:"Entity.Get"});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the resource asked for.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.Replace=function(o,e){let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"POST",...t,composition:"Entity.Replace"});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains the resource asked for.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(n=>{let s=n.compositionOptions=n.compositionOptions||{};s.type=K(t.type)}),i.KeyParam=Ne(i,r),i};b.Entity.Update=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"PATCH",...t,composition:"Entity.Update",requestBody:{partial:"deep",immediateFetch:!0,allowPatchOperators:!0,keepKeyFields:!0,...t.requestBody,required:!0}});return i.QueryParam("projection",{description:"Determines fields projection",type:new z({dataType:t.type,allowSigns:"each"}),isArray:!0,arraySeparator:","}).RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "payload" field that contains updated resource.',contentType:A.opra_response_json,type:t.type,partial:"deep"}).Response(w.NO_CONTENT,{description:"Operation is successful but no resource found"}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i.KeyParam=Ne(i,r),i.Filter=Se(i,r,t.type),i};b.Entity.UpdateMany=function(o,e){var n;let t;typeof o=="object"&&!o[d]?t=o:t={...e,type:o};let r=[],i=S(r,{method:"PATCH",...t,composition:"Entity.UpdateMany",requestBody:{immediateFetch:!0,partial:"deep",allowPatchOperators:!0,keepKeyFields:!0,...t.requestBody,required:!0}});return i.RequestContent(((n=t.requestBody)==null?void 0:n.type)||t.type).Response(w.OK,{description:'Operation is successful. Returns OperationResult with "affected" field.',contentType:A.opra_response_json}).Response(w.UNPROCESSABLE_ENTITY,{description:"The request was well-formed but was unable to process operation due to one or many errors.",contentType:A.opra_response_json}),r.push(s=>{let p=s.compositionOptions=s.compositionOptions||{};p.type=K(t.type)}),i.Filter=Se(i,r,t.type),i};import{merge as jn}from"@jsopen/objects";var $c=/^(.*)(Controller)$/,wa=[];function Pt(o){let e=[],t=a(function(r){var c;let i=o==null?void 0:o.name;i||(i=((c=$c.exec(r.name))==null?void 0:c[1])||r.name);let n={},s=Reflect.getOwnMetadata(ae,Object.getPrototypeOf(r));s&&jn(n,s,{deep:!0});let p=Reflect.getOwnMetadata(ae,r);p&&jn(n,p,{deep:!0}),jn(n,{...o,kind:m.RpcController.Kind,name:i,path:i},{deep:!0}),Reflect.defineMetadata(ae,n,r);for(let l of e)l(n,r);Reflect.defineMetadata(ae,n,r)},"decorator");return t.Header=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,type:i}:{...i,name:r};n.headers=n.headers||[],n.headers.push(s)}),t),t.UseType=(...r)=>(e.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),wa.forEach(r=>r(t,e,o)),t}a(Pt,"RpcControllerDecoratorFactory");Pt.augment=function(o){wa.push(o)};import{omit as qc}from"@jsopen/objects";var Ra=[];function lr(o,e,t){let r=!1,i=a(((n,s)=>{if(typeof s!="string")throw new TypeError("Symbol properties can not be decorated");let p={kind:m.RpcOperation.Kind,channel:s,payloadType:e,...qc(t,["kind","payloadType"])},c=Reflect.getOwnMetadata(ae,n.constructor)||{};c.operations=c.operations||{},c.operations[s]=p;for(let l of o)l(p,n,s);Reflect.defineMetadata(ae,c,n.constructor)}),"decorator");return i.UseType=(...n)=>(o.push(s=>{s.types=s.types||[],s.types.push(...n)}),i),i.Header=(n,s)=>(o.push(p=>{let c=typeof s=="string"||typeof s=="function"?{name:n,type:s}:{...s,name:n},l=r?p.response:p;l.headers?l.headers=l.headers.filter(x=>String(x.name)!==String(n)):l.headers=[],l.headers.push(c)}),i),i.Response=(n,s)=>(o.push(p=>{r=!0,p.response={...s,payloadType:n}}),i),Ra.forEach(n=>n(i,o,e,t)),i}a(lr,"RpcOperationDecoratorFactory");lr.augment=function(o){Ra.push(o)};import"reflect-metadata";import{omitUndefined as Vc}from"@jsopen/objects";import{asMutable as zc}from"ts-gems";function qr(o,e){let t=o==null?void 0:o.map(i=>String(i).toLowerCase()),r=e==null?void 0:e.map(i=>String(i).toLowerCase());return i=>r&&r.includes(i.toLowerCase())?!1:t?t.includes(i.toLowerCase()):!0}a(qr,"getIsInheritedPredicateFn");var We=a(function(...o){var n;if(!this)throw new TypeError('"this" should be passed to call class constructor');let[e,t,r]=o;L.call(this,e,t,r);let i=zc(this);if(i.kind=m.MappedType.Kind,t.base){if(!(t.base instanceof L))throw new TypeError(`"${t.base.kind}" can't be set as base for a "${this.kind}"`);i.base=t.base,i.ctor=t.ctor||i.base.ctor,t.pick?i.pick=t.pick.map(l=>i.base.normalizeFieldPath(l)):t.omit?i.omit=t.omit.map(l=>i.base.normalizeFieldPath(l)):t.partial?i.partial=Array.isArray(t.partial)?t.partial.map(l=>i.base.normalizeFieldPath(l)):t.partial:t.required&&(i.required=Array.isArray(t.required)?t.required.map(l=>i.base.normalizeFieldPath(l)):t.required);let s=qr(i.pick,i.omit),p=Array.isArray(i.partial)?i.partial.map(l=>l.toLowerCase()):i.partial,c=Array.isArray(i.required)?i.required.map(l=>l.toLowerCase()):i.required;for(let[l,x]of i.base.fieldEntries("*")){if(!s(l))continue;let g={...x};p===!0||Array.isArray(p)&&p.includes(x.name.toLowerCase())?g.required=!1:(c===!0||Array.isArray(c)&&c.includes(x.name.toLowerCase()))&&(g.required=!0);let y=new k(this,g);i._fields.set(y.name,y)}(!i.pick||i.base.additionalFields===!1||Array.isArray(i.base.additionalFields)&&((n=i.base.additionalFields)==null?void 0:n[0])==="error")&&(i.additionalFields=i.base.additionalFields),t.base.keyField&&s(t.base.keyField)&&(i.keyField=t.base.keyField),i.discriminatorField=t.base.discriminatorField,i.discriminatorValue=t.base.discriminatorValue}},"MappedType"),Un=class Un extends L{extendsFrom(e){var t;return e instanceof _||(e=this.node.getDataType(e)),e instanceof L?e===this?!0:!!((t=this.base)!=null&&t.extendsFrom(e)):!1}toJSON(e){let t=super.toJSON(e),r=this.base?this.node.getDataTypeNameWithNs(this.base):void 0;return Vc({...t,base:r||this.base.toJSON(e),kind:this.kind,pick:this.pick,omit:this.omit,partial:this.partial,required:this.required,discriminatorField:this.discriminatorField,discriminatorValue:this.discriminatorValue})}_locateBase(e){if(this.base){if(e(this.base))return this.base;if(this.base._locateBase)return this.base._locateBase(e)}}};a(Un,"MappedTypeClass");var Cn=Un;We.prototype=Cn.prototype;We._applyMixin=()=>{};import"reflect-metadata";import{omitUndefined as Jc}from"@jsopen/objects";import{asMutable as Wc}from"ts-gems";var Lt=a(function(...o){if(!this)return Lt[D].apply(void 0,o);let[e,t,r]=o;L.call(this,e,t,r);let i=Wc(this);i.kind=m.MixinType.Kind,i.types=[];for(let n of t.types){i.additionalFields!==!0&&(n.additionalFields===!0?i.additionalFields=!0:i.additionalFields||(i.additionalFields=n.additionalFields));for(let s of n.fields("*")){let p=new k(this,s);i._fields.set(p.name,p)}i.types.push(n),n.keyField&&(i.keyField=n.keyField)}},"MixinType"),Bn=class Bn extends L{extendsFrom(e){if(e instanceof _||(e=this.node.getDataType(e)),!(e instanceof L))return!1;if(e===this)return!0;for(let t of this.types)if(t.extendsFrom(e))return!0;return!1}toJSON(e){let t=super.toJSON(e);return Jc({...t,kind:this.kind,types:this.types.map(r=>{let i=this.node.getDataTypeNameWithNs(r);return i||r.toJSON(e)})})}_locateBase(e){for(let t of this.types){if(e(t))return t;if(t._locateBase){let r=t._locateBase(e);if(r)return r}}}};a(Bn,"MixinTypeClass");var $n=Bn;Lt.prototype=$n.prototype;Lt[D]=Yc;function Yc(o,e){if(o=o.filter(n=>typeof n=="function"),!o.length)throw new TypeError("No Class has been provided");if(o.length===1)return o[0];let t=o[0].name+"Mixin",r={[t]:class{constructor(){for(let n of o)Er(this,n)}}}[t],i={...e,kind:m.MixinType.Kind,types:[]};Reflect.defineMetadata(d,i,r);for(let n of o){let s=Reflect.getMetadata(d,n);if(!(s&&(s.kind===m.ComplexType.Kind||s.kind===m.MixinType.Kind||s.kind===m.MappedType.Kind)))throw new TypeError(`Class "${n.name}" is not a ${m.ComplexType.Kind}, ${m.MixinType.Kind} or ${m.MappedType.Kind}`);i.types.push(n),Tr(r.prototype,n.prototype)}return r}a(Yc,"MixinTypeFactory");import"reflect-metadata";import{omitUndefined as Gc}from"@jsopen/objects";import{asMutable as Qc}from"ts-gems";import{vg as ba}from"valgen";var kt=a(function(...o){if(!this)return kt[D].apply(void 0,o);let[e,t,r]=o;_.call(this,e,t,r);let i=Qc(this);i.kind=m.UnionType.Kind,i.discriminator=t.discriminator,i.types=[];for(let n of t.types)i.types.push(n)},"UnionType"),Kn=class Kn extends _{toJSON(e){let t=super.toJSON(e);return Gc({...t,kind:this.kind,discriminator:this.discriminator,types:this.types.map(r=>{let i=this.node.getDataTypeNameWithNs(r);return i||r.toJSON(e)})})}generateCodec(e,t){let r=this.types.map(i=>{let n=i.generateCodec(e,t);return(i.kind===m.ComplexType.Kind||i.kind===m.MappedType.Kind)&&i.discriminatorField?[n,{[i.discriminatorField]:ba.isEqual(i.discriminatorValue)}]:n});return ba.oneOf(r)}extendsFrom(){return!1}_locateBase(){}};a(Kn,"UnionTypeClass");var qn=Kn;kt.prototype=qn.prototype;kt[D]=Xc;function Xc(o,e){let i=class i{};a(i,"UnionClass");let t=i,r={...e,kind:m.UnionType.Kind,types:o};return Reflect.defineMetadata(d,r,t),t}a(Xc,"UnionTypeFactory");var Vn=Symbol("initializing"),Kr=class Kr{static async createDataType(e,t,r){e=e||new he({maxErrors:0});let i=await this._importDataTypeArgs(e,t,r);if(i)return typeof i=="string"?t.node.getDataType(i):this._createDataType(e,t,i)}static async resolveDataType(e,t,r){if(r){let i=t.node.findDataType(r);if(i)return i}if(typeof r=="object"||typeof r=="function"){let i=await Kr.createDataType(e,t,r);if(i)return i}if(r){let i=t.node.getDataType(r);if(i)return i}return t.node.getDataType("any")}static async addDataTypes(e,t,r){let i=t.node[C];if(!i)throw new TypeError("DocumentElement should has [kDataTypeMap] property");let n=await this.createAllDataTypes(e,t,r);if(n)for(let s of n)s!=null&&s.name&&i.set(s.name,s)}static async createAllDataTypes(e,t,r){e=e||new he({maxErrors:0});let i=await this._prepareAllInitArgs(e,t,r);if(!i)return;let n=new v;for(let c of i)n.set(c.name,c);let s=e.extend({initArgsMap:n}),p=[];for(let[c,l]of n.entries())e.enter(`[${c}]`,()=>{if(!n.has(c))return;let x=this._createDataType(s,t,l);x&&p.push(x)});return p}static async _prepareAllInitArgs(e,t,r){let i=new v,n=new v,s=e.extend({owner:t,importQueue:i,initArgsMap:n});if(!t.node[C])throw new TypeError("DocumentElement should has [kDataTypeMap] property");if(Array.isArray(r)){let p=0;for(let c of r)await s.enterAsync(`$[${p++}]`,async()=>{c=await pe(c);let l=Reflect.getMetadata(d,c)||c[d];if(!(l&&l.name))return typeof c=="function"?s.addError(`Class "${c.name}" doesn't have a valid data type metadata`):s.addError("Object doesn't have a valid data type metadata");i.set(l.name,c)})}else{let p,c;for([c,p]of Object.entries(r))p=await pe(p),i.set(c,typeof p=="object"?{...p,name:c}:p)}for(let p of Array.from(i.keys())){if(!i.has(p))continue;let c=await this._importDataTypeArgs(s,t,p);c&&typeof c!="string"&&s.addError("Embedded data type can't be loaded into document node directly")}return Array.from(n.values())}static async _importDataTypeArgs(e,t,r,i){var g;r=await pe(r);let{importQueue:n,initArgsMap:s}=e,p=t.node.findDataType(r);if(p instanceof _)return p.name;let c,l,x;if(typeof r!="string"){let G=t.node.getDocument().types[_r].get(r);G&&(r=G)}if(typeof r=="string"){let y=r;if(r=(n==null?void 0:n.get(y))||((g=e.initArgsMap)==null?void 0:g.get(y)),!r)return e.addError(`Unknown data type (${y})`)}if(typeof r=="function"){if(c=Reflect.getMetadata(d,r),!c)return e.addError(`Class "${r.name}" doesn't have a valid DataType metadata`);l=r}else if(typeof r=="object"){if(c=r[d],c)x=r,c.kind!==m.EnumType.Kind&&(c=void 0);else if(m.isDataType(r))c=r,l=c.ctor;else if(l=Object.getPrototypeOf(r).constructor,c=l&&Reflect.getMetadata(d,l),c&&c.kind===m.SimpleType.Kind){let y=await this._importDataTypeArgs(e,t,c.name);return y?typeof y=="object"&&y.kind!==m.SimpleType.Kind?e.addError("Kind of base data type is not same"):{kind:m.SimpleType.Kind,name:void 0,base:y,properties:r}:void 0}}return c?e.enterAsync(c.name?`[${c.name}]`:"",async()=>{if(c.name){let G=s==null?void 0:s.get(c.name);if(G)return i&&G[Vn]?e.addError("Circular reference detected"):c.name}let y={kind:c.kind,name:c.name};y[Vn]=!0;try{if(y.name)if(n!=null&&n.has(y.name))s==null||s.set(c.name,y),y._instance={name:c.name},y[C]=t.node[C];else return e.addError(`Data Type (${y.name}) must be explicitly added to type list in the document scope`);switch(y.kind){case m.ComplexType.Kind:y.ctor=l,await this._prepareComplexTypeArgs(e,t,y,c);break;case m.EnumType.Kind:y.instance=x,await this._prepareEnumTypeArgs(e,t,y,c);break;case m.MappedType.Kind:await this._prepareMappedTypeArgs(e,t,y,c);break;case m.MixinType.Kind:await this._prepareMixinTypeArgs(e,t,y,c);break;case m.SimpleType.Kind:y.ctor=l,await this._prepareSimpleTypeArgs(e,t,y,c);break;case m.UnionType.Kind:await this._prepareUnionTypeArgs(e,t,y,c);break;default:return e.addError(`Invalid data type kind ${c.kind}`)}}finally{y.name&&(n==null||n.delete(y.name)),delete y[Vn]}return n&&y.name?y.name:y}):e.addError("No DataType metadata found")}static async _prepareDataTypeArgs(e,t,r){t.description=r.description,t.abstract=r.abstract,t.examples=r.examples,t.scopePattern=r.scopePattern}static async _prepareComplexTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.keyField=i.keyField,r.discriminatorField=i.discriminatorField,r.discriminatorValue=i.discriminatorValue,await e.enterAsync(".base",async()=>{let n;if(i.base)n=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let s=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,s)&&(n=await this._importDataTypeArgs(e,t,s))}n&&(r.base=ve(n),r.ctor=r.ctor||n.ctor)}),i.additionalFields!=null&&(typeof i.additionalFields=="boolean"||Array.isArray(i.additionalFields)?r.additionalFields=i.additionalFields:await e.enterAsync(".additionalFields",async()=>{let n=await this._importDataTypeArgs(e,t,i.additionalFields);n&&(r.additionalFields=ve(n))})),i.fields&&(r.fields={},await e.enterAsync(".fields",async()=>{for(let[n,s]of Object.entries(i.fields))await e.enterAsync(`[${n}]`,async()=>{let p=typeof s=="string"?{type:s}:s;if(p.isArray&&!p.type)return e.addError('"type" must be defined explicitly for array fields');let c=await this._importDataTypeArgs(e,t,p.type||"any");c&&(r.fields[n]={...p,type:ve(c)})})}))}static async _prepareEnumTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),i.base&&await e.enterAsync(".base",async()=>{let n=await this._importDataTypeArgs(e,t,i.base);n&&(r.base=ve(n))}),r.attributes=I(i.attributes)}static async _prepareSimpleTypeArgs(e,t,r,i){var n,s,p,c;await this._prepareDataTypeArgs(e,r,i),await e.enterAsync(".base",async()=>{let l;if(i.base)l=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let x=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,x)&&(l=await this._importDataTypeArgs(e,t,x))}l&&(r.base=ve(l),r.ctor=r.ctor||l.ctor)}),r.properties=i.properties,r.nameMappings=i.nameMappings,!r.properties&&r.ctor&&(r.properties=new r.ctor),i.attributes&&(r.attributes=I(i.attributes)),typeof((n=r.properties)==null?void 0:n[T])=="function"&&(r.generateDecoder=(s=r.properties)==null?void 0:s[T].bind(r.properties)),typeof((p=r.properties)==null?void 0:p[O])=="function"&&(r.generateEncoder=(c=r.properties)==null?void 0:c[O].bind(r.properties))}static async _prepareMappedTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.discriminatorField=i.discriminatorField,r.discriminatorValue=i.discriminatorValue,await e.enterAsync(".base",async()=>{let n;if(i.base)n=await this._importDataTypeArgs(e,t,i.base,!0);else if(r.ctor){let s=Object.getPrototypeOf(r.ctor.prototype).constructor;Reflect.hasMetadata(d,s)&&(n=await this._importDataTypeArgs(e,t,s))}n&&(r.base=ve(n),r.ctor=r.ctor||n.ctor)}),i.pick?r.pick=[...i.pick]:i.omit?r.omit=[...i.omit]:i.partial?r.partial=Array.isArray(i.partial)?[...i.partial]:i.partial:i.required&&(r.required=Array.isArray(i.required)?[...i.required]:i.required)}static async _prepareMixinTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.types=[],await e.enterAsync(".types",async()=>{let n=i.types,s=0;for(let p of n)await e.enterAsync(`[${s++}]`,async()=>{let c=await this._importDataTypeArgs(e,t,p);c&&r.types.push(ve(c))})})}static async _prepareUnionTypeArgs(e,t,r,i){await this._prepareDataTypeArgs(e,r,i),r.types=[],await e.enterAsync(".types",async()=>{let n=i.types,s=0;for(let p of n)await e.enterAsync(`[${s++}]`,async()=>{let c=await this._importDataTypeArgs(e,t,p);c&&r.types.push(ve(c))})})}static _createDataType(e,t,r){var s;let i=t.node.findDataType(typeof r=="string"?r:r.name||"");if(i instanceof _)return i;let n=typeof r=="string"?(s=e.initArgsMap)==null?void 0:s.get(r):r;if(n){let p=n[C];switch(p||delete n._instance,i=n._instance,i!=null&&i.name&&p&&p.set(i.name,i),n==null?void 0:n.kind){case m.ComplexType.Kind:return this._createComplexType(e,t,n);case m.EnumType.Kind:return this._createEnumType(e,t,n);case m.MappedType.Kind:return this._createMappedType(e,t,n);case m.MixinType.Kind:return this._createMixinType(e,t,n);case m.SimpleType.Kind:return this._createSimpleType(e,t,n);case m.UnionType.Kind:return this._createUnionType(e,t,n);default:break}}e.addError(`Unknown data type (${String(r)})`)}static _createComplexType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,te.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),r.additionalFields&&e.enter(".additionalFields",()=>{typeof r.additionalFields=="boolean"||Array.isArray(r.additionalFields)?n.additionalFields=r.additionalFields:n.additionalFields=this._createDataType(e,t,r.additionalFields)}),n.fields={},r.fields&&e.enter(".fields",()=>{for(let[s,p]of Object.entries(r.fields))e.enter(`[${s}]`,()=>{let c=this._createDataType(e,t,p.type);c&&(n.fields[s]={...p,name:s,type:c})})}),te.apply(i,[t,n]),i}static _createEnumType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,Z.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),n.attributes=r.attributes,Z.apply(i,[t,n]),i}static _createMappedType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,We.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),We.apply(i,[t,n]),i}static _createMixinType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,Lt.prototype);let n=I(r);return r.types&&e.enter(".types",()=>{n.types=[];let s=0;for(let p of r.types)e.enter(`[${s++}]`,()=>{let c=this._createDataType(e,t,p);if(!(c instanceof L))throw new TypeError(`"${c==null?void 0:c.kind}" can't be set as base for a "${n.kind}"`);n.types.push(c)})}),Lt.apply(i,[t,n]),i}static _createSimpleType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,u.prototype);let n=I(r);return r.base&&e.enter(".base",()=>{n.base=this._createDataType(e,t,r.base)}),u.apply(i,[t,n]),i}static _createUnionType(e,t,r){let i=r._instance||{};Object.setPrototypeOf(i,kt.prototype);let n=I(r);return r.types&&e.enter(".types",()=>{n.types=[];let s=0;for(let p of r.types)e.enter(`[${s++}]`,()=>{let c=this._createDataType(e,t,p);n.types.push(c)})}),kt.apply(i,[t,n]),i}};a(Kr,"DataTypeFactory");var F=Kr;function ve(o){return typeof o=="object"&&o.name?o.name:o}a(ve,"preferName");import{isConstructor as El}from"@jsopen/objects";import{omitUndefined as Hc}from"@jsopen/objects";var zn=class zn extends R{constructor(e){super(e.owner),this.name="OpraApi",this.name=e.name,this.description=e.description}toJSON(e){return Hc({transport:this.transport,name:this.name,description:this.description})}async _initialize(e,t){if(!j.test(e.name))throw new TypeError(`Invalid api name (${e.name})`);this.name=e.name,this.description=e==null?void 0:e.description}};a(zn,"ApiBase");var jt=zn;import rl from"path-browserify";import{omitUndefined as il}from"@jsopen/objects";import{asMutable as ol}from"ts-gems";import{merge as Jn,omit as el}from"@jsopen/objects";var tl=/^(.*)(Controller)$/;function Wn(o){let e=[],t=a(function(r){var c;let i=o==null?void 0:o.name;i||(i=((c=tl.exec(r.name))==null?void 0:c[1])||r.name);let n={},s=Reflect.getOwnMetadata(se,Object.getPrototypeOf(r));s&&Jn(n,s,{deep:!0});let p=Reflect.getOwnMetadata(se,r);p&&Jn(n,p,{deep:!0}),Jn(n,{kind:m.HttpController.Kind,name:i,path:i,...el(o,["kind","name","instance","endpoints","key"])},{deep:!0}),Reflect.defineMetadata(se,n,r);for(let l of e)l(n,r);Reflect.defineMetadata(se,n,r)},"decorator");return t.Cookie=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"cookie",type:i}:{...i,name:r,location:"cookie"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.Header=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"header",type:i}:{...i,name:r,location:"header"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.QueryParam=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"query",type:i}:{...i,name:r,location:"query"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.PathParam=(r,i)=>(e.push(n=>{let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i}:{...i,name:r,location:"path"};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.KeyParam=(r,i)=>(e.push(n=>{var p;(p=n.path)!=null&&p.includes(":"+r)||(n.path=(n.path||"")+"@:"+r);let s=typeof i=="string"||typeof i=="function"?{name:r,location:"path",type:i,keyParam:!0}:{...i,name:r,location:"path",keyParam:!0};n.parameters=n.parameters||[],n.parameters.push(s)}),t),t.UseType=(...r)=>(e.push(i=>{i.types=i.types||[],i.types.push(...r)}),t),t}a(Wn,"HttpControllerDecoratorFactory");var ne=a(function(...o){var i;if(!this)return ne[D].apply(void 0,o);let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid resource name (${t.name})`);let r=ol(this);r.kind=m.HttpController.Kind,r.types=r.node[C]=new oe,r.operations=new v,r.controllers=new v,r.parameters=[],r.name=t.name,r.description=t.description,r.path=t.path??t.name,r.instance=t.instance,r.ctor=t.ctor,r._controllerReverseMap=new WeakMap,(i=r._initialize)==null||i.call(r,t)},"HttpController"),Gn=class Gn extends R{get isRoot(){return!(this.owner instanceof ne)}findController(e){if(typeof e=="function"){let t=this._controllerReverseMap.get(e);if(t!=null)return t;for(let r of this.controllers.values()){if(r.ctor===e)return this._controllerReverseMap.set(e,r),r;if(r.controllers.size&&(t=r.findController(e),t))return this._controllerReverseMap.set(e,t),t}this._controllerReverseMap.set(e,null);return}if(e.startsWith("/")&&(e=e.substring(1)),e.includes("/")){let t=e.split("/"),r=this;for(;r&&t.length>0;)r=r.controllers.get(t.shift());return r}return this.controllers.get(e)}findParameter(e,t){let r=e.toLowerCase(),i;for(i of this.parameters)if(!(t&&t!==i.location)&&(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e)))return i;if(this.node.parent&&this.node.parent.element instanceof ne)return this.node.parent.element.findParameter(e,t)}getFullUrl(){return rl.posix.join(this.owner instanceof ne?this.owner.getFullUrl():"/",this.path)}toString(){return`[HttpController ${this.name}]`}toJSON(e){let t=il({kind:this.kind,description:this.description,path:this.path});if(this.operations.size){t.operations={};for(let r of this.operations.values())t.operations[r.name]=r.toJSON(e)}if(this.controllers.size){t.controllers={};for(let r of this.controllers.values())t.controllers[r.name]=r.toJSON(e)}if(this.types.size){t.types={};for(let r of this.types.values())t.types[r.name]=r.toJSON(e)}if(this.parameters.length){t.parameters=[];for(let r of this.parameters)t.parameters.push(r.toJSON(e))}return t}[st](){return`[${at}HttpController${pt+this.name+qe}]`}};a(Gn,"HttpControllerClass");var Yn=Gn;ne.prototype=Yn.prototype;Object.assign(ne,Wn);ne[D]=Wn;var Qn=class Qn extends jt{constructor(e){super(e),this._controllerReverseMap=new WeakMap,this.transport="http",this.controllers=new v,this.url=e.url}findController(e){return ne.prototype.findController.call(this,e)}findOperation(e,t){let r=this.findController(e);return r==null?void 0:r.operations.get(t)}toJSON(e){let r={...super.toJSON(),transport:this.transport,url:this.url,controllers:{}};for(let i of this.controllers.values())r.controllers[i.name]=i.toJSON(e);return r}};a(Qn,"HttpApi");var Ct=Qn;import nl from"@browsery/type-is";import{omitUndefined as sl}from"@jsopen/objects";import{asMutable as al}from"ts-gems";import{isAny as pl,vg as cl}from"valgen";var Me=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');R.call(this,o);let t=al(this);if(e.contentType){let r=Array.isArray(e.contentType)?e.contentType:[e.contentType];r=r.map(i=>i.split(/\s*,\s*/)).flat(),t.contentType=r.length>1?r:r[0]}t.description=e.description,t.contentEncoding=e.contentEncoding,t.examples=e.examples,t.multipartFields=[],t.maxFieldsSize=e.maxFieldsSize,t.maxFields=e.maxFields,t.maxFiles=e.maxFiles,t.maxFileSize=e.maxFileSize,t.maxTotalFileSize=e.maxTotalFileSize,e!=null&&e.type&&(t.type=(e==null?void 0:e.type)instanceof _?e.type:t.owner.node.getDataType(e.type)),t.isArray=e.isArray},"HttpMediaType"),Zn=class Zn extends R{findMultipartField(e,t){if(this.multipartFields){for(let r of this.multipartFields)if((!t||t===r.fieldType)&&(r.fieldName instanceof RegExp&&r.fieldName.test(e)||r.fieldName===e))return r}}toJSON(e){var i,n;let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0,r=sl({description:this.description,contentType:this.contentType,contentEncoding:this.contentEncoding,type:t||((i=this.type)==null?void 0:i.toJSON(e)),isArray:this.isArray,example:this.example,examples:this.examples,maxFields:this.maxFields,maxFieldsSize:this.maxFieldsSize,maxFiles:this.maxFiles,maxFileSize:this.maxFileSize,maxTotalFileSize:this.maxTotalFileSize});return(n=this.multipartFields)!=null&&n.length&&(r.multipartFields=this.multipartFields.map(s=>s.toJSON(e))),r}generateCodec(e,t){let r;return this.type?r=this.type.generateCodec(e,t):this.contentType&&(Array.isArray(this.contentType)?this.contentType:[this.contentType]).find(n=>nl.is(n,["json"]))&&(r=this.node.findDataType("object").generateCodec(e)),r=r||pl,this.isArray?cl.isArray(r):r}};a(Zn,"HttpMediaTypeClass");var Xn=Zn;Me.prototype=Xn.prototype;import{omitUndefined as ll}from"@jsopen/objects";function Ut(o,e){let t=o.lastIndexOf("/");if(o.startsWith("/")&&t){let r=o.substring(1,t),i=o.substring(t+1);if(e!=null&&e.includeFlags)for(let n of e.includeFlags)i.includes(n)||(i+=n);if(e!=null&&e.excludeFlags)for(let n of e.excludeFlags)i.replace(n,"");return new RegExp(r,i)}throw new TypeError(`"${o}" is not a valid RegExp string`)}a(Ut,"parseRegExp");var Hn=class Hn extends Me{constructor(e,t){super(e,t),this.fieldName=t.fieldName instanceof RegExp?t.fieldName:t.fieldName.startsWith("/")?Ut(t.fieldName):t.fieldName,this.fieldType=t.fieldType,this.required=t.required}toJSON(e){return ll({fieldName:this.fieldName,fieldType:this.fieldType,required:this.required,...super.toJSON(e)})}};a(Hn,"HttpMultipartField");var Vr=Hn;import{omitUndefined as ml}from"@jsopen/objects";var fl=/^([1-6]\d{2})(?:-([1-6]\d{2}))?$/,es=class es{constructor(e,t){if(this.start=0,this.end=0,e&&typeof e=="object"&&(this.start=e.start||0,this.end=e.end||0),typeof e=="number"&&(this.start=e,this.end=t||this.start),typeof e=="string"){let r=fl.exec(e);if(!r)throw new TypeError(`"${e}" is not a valid Status Code range`);this.start=parseInt(r[1],10),this.end=r[2]?parseInt(r[2],10):this.start}}includes(e){return e>=this.start&&e<=this.end}intersects(e,t){return t>=this.start&&e<=this.end}toString(){return this.start===this.end?String(this.start):String(this.start)+"-"+String(this.end)}toJSON(){return!this.end||this.start===this.end?this.start:{start:this.start,end:this.end}}};a(es,"HttpStatusRange");var fr=es;var ts=class ts extends Me{constructor(e,t){super(e,t),this.parameters=[],this.statusCode=(Array.isArray(t.statusCode)?t.statusCode:[t.statusCode]).map(r=>typeof r=="object"?new fr(r.start,r.end):new fr(r)),this.partial=t.partial}findParameter(e,t){e=e.toLowerCase();for(let r of this.parameters)if((!t||t===r.location)&&(r.name instanceof RegExp&&r.name.test(e)||r.name===e))return r}toJSON(e){let t=this.statusCode.map(i=>i.toJSON()),r=ml({...super.toJSON(e),statusCode:t.length===1&&typeof t[0]=="number"?t[0]:t,partial:this.partial});if(this.parameters.length){r.parameters=[];for(let i of this.parameters)r.parameters.push(i.toJSON(e))}return r}};a(ts,"HttpOperationResponse");var zr=ts;import{omitUndefined as hl}from"@jsopen/objects";import{asMutable as yl}from"ts-gems";import{omitUndefined as ul}from"@jsopen/objects";import{asMutable as dl}from"ts-gems";var Ye=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');R.call(this,o);let t=dl(this);t.description=e.description,t.type=e.type,t.examples=e.examples,t.isArray=e.isArray},"Value"),is=class is extends R{toJSON(e){let t=this.type?this.node.getDataTypeNameWithNs(this.type):void 0;return ul({type:this.type?t||this.type.toJSON(e):"any",description:this.description,isArray:this.isArray,examples:this.examples})}};a(is,"ValueClass");var rs=is;Ye.prototype=rs.prototype;var mr=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');Ye.call(this,o,e);let t=yl(this);e.name&&(t.name=e.name instanceof RegExp?e.name:e.name.startsWith("/")?Ut(e.name,{includeFlags:"i",excludeFlags:"m"}):e.name),t.location=e.location,t.deprecated=e.deprecated,t.required=e.required,t.required==null&&e.location==="path"&&(t.required=!0),t.arraySeparator=e.arraySeparator,t.keyParam=e.keyParam,t.parser=e.parser},"HttpParameter"),ns=class ns extends Ye{toJSON(e){return hl({...super.toJSON(e),name:this.name,location:this.location,arraySeparator:this.arraySeparator,keyParam:this.keyParam,required:this.required,deprecated:this.deprecated})}};a(ns,"HttpParameterClass");var os=ns;mr.prototype=os.prototype;import{omitUndefined as Tl}from"@jsopen/objects";var ss=class ss extends R{constructor(e){super(e),this.content=[]}toJSON(e){return Tl({description:this.description,required:this.required,maxContentSize:this.maxContentSize,content:this.content.length?this.content.map(t=>t.toJSON(e)):[],partial:this.partial,allowPatchOperators:this.allowPatchOperators})}};a(ss,"HttpRequestBody");var Jr=ss;var as=class as{static async createApi(e,t){let r=new Ct(t);return t.controllers&&await e.enterAsync(".controllers",async()=>{await this._createControllers(e,r,t.controllers)}),r}static async _createControllers(e,t,r){if(Array.isArray(r)){let i=0;for(let n of r){let s;await e.enterAsync(`[${i++}]`,async()=>{s=await this._resolveControllerMetadata(e,t,n)}),s&&await e.enterAsync(`[${s.metadata.name}]`,async()=>{let p=await this._createController(e,t,s.metadata,s.instance,s.ctor);p&&(t.controllers.get(p.name)&&e.addError(`Duplicate controller name (${s.name})`),t.controllers.set(p.name,p))})}return}for(let[i,n]of Object.entries(r))await e.enterAsync(`[${i}]`,async()=>{let s=await this._resolveControllerMetadata(e,t,n);if(!s)return;let p=await this._createController(e,t,{...s.metadata,name:i},s.instance,s.ctor);p&&(t.controllers.get(p.name)&&e.addError(`Duplicate controller name (${i})`),t.controllers.set(p.name,p))})}static async _resolveControllerMetadata(e,t,r){typeof r=="function"&&!El(r)&&(r=t instanceof ne?r(t.instance):r()),r=await pe(r);let i,n,s;if(typeof r=="function"){if(n=Reflect.getMetadata(se,r),!n)return e.addError(`Class "${r.name}" doesn't have a valid HttpController metadata`);i=r}else i=Object.getPrototypeOf(r).constructor,n=Reflect.getMetadata(se,i),n?s=r:(n=r,r.instance==="object"&&(s=r.instance,i=Object.getPrototypeOf(s).constructor));return n?{metadata:n,instance:s,ctor:i}:e.addError(`Class "${i.name}" is not decorated with HttpController()`)}static async _createController(e,t,r,i,n){if(!r.name)throw new TypeError("Controller name required");let s=new ne(t,{...r,instance:i,ctor:n});return r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,s,r.types)}),r.parameters&&await e.enterAsync(".parameters",async()=>{let p=0;for(let c of r.parameters)await e.enterAsync(`[${p++}]`,async()=>{let l={...c};await e.enterAsync(".type",async()=>{l.type=await F.resolveDataType(e,s,c.type)});let x=new mr(s,l);s.parameters.push(x)})}),r.operations&&await e.enterAsync(".operations",async()=>{for(let[p,c]of Object.entries(r.operations))await e.enterAsync(`[${p}]`,async()=>{let l=new b(s,{name:p,method:"GET"});await this._initHttpOperation(e,l,c),s.operations.set(p,l)})}),r.controllers&&await e.enterAsync(".controllers",async()=>{await this._createControllers(e,s,r.controllers)}),s}static async _initHttpOperation(e,t,r){let i={...r,name:t.name,types:void 0};return b.apply(t,[t.owner,i]),r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,t,r.types)}),r.parameters&&await e.enterAsync(".parameters",async()=>{let n=0;for(let s of r.parameters)await e.enterAsync(`[${n++}]`,async()=>{let p={...s};await e.enterAsync(".type",async()=>{p.type=await F.resolveDataType(e,t,s.type)});let c=new mr(t,p);t.parameters.push(c)})}),r.responses&&await e.enterAsync(".responses",async()=>{let n=0;for(let s of r.responses)await e.enterAsync(`[${n++}]`,async()=>{let p=new zr(t,{statusCode:s.statusCode});await this._initHttpOperationResponse(e,p,s),t.responses.push(p)})}),r.requestBody&&await e.enterAsync(".requestBody",async()=>{let n=new Jr(t);await this._initHttpRequestBody(e,n,r.requestBody),t.requestBody=n}),t}static async _initHttpMediaType(e,t,r){Me.call(t,t.owner,{...r,type:void 0,multipartFields:void 0}),r.type&&await e.enterAsync(".type",async()=>{t.type=await F.resolveDataType(e,t,r.type)}),r.multipartFields&&await e.enterAsync(".multipartFields",async()=>{for(let i=0;i<r.multipartFields.length;i++)await e.enterAsync(`[${i}]`,async()=>{let n=r.multipartFields[i],s=new Vr(t,{fieldName:n.fieldName,fieldType:n.fieldType});await this._initHttpMediaType(e,s,n),t.multipartFields.push(s)})})}static async _initHttpOperationResponse(e,t,r){await this._initHttpMediaType(e,t,r),t.partial=r.partial,r.parameters&&await e.enterAsync(".parameters",async()=>{let i=0;for(let n of r.parameters)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new mr(t,s);t.parameters.push(p)})})}static async _initHttpRequestBody(e,t,r){t.description=r.description,t.required=r.required,t.maxContentSize=r.maxContentSize,t.immediateFetch=r.immediateFetch,t.partial=r.partial,t.allowPatchOperators=r.allowPatchOperators,t.keepKeyFields=r.keepKeyFields,r.content&&await e.enterAsync(".content",async()=>{for(let i=0;i<r.content.length;i++)await e.enterAsync(`[${i}]`,async()=>{let n=r.content[i],s=new Me(t,String(i));await this._initHttpMediaType(e,s,n),t.content.push(s)})})}};a(as,"HttpApiFactory");var $t=as;import{omitUndefined as xl}from"@jsopen/objects";import{md5 as Ol}from"super-fast-md5";var ps=class ps extends jt{constructor(e){super(e),this._controllerReverseMap=new WeakMap,this.transport="rpc",this.controllers=new v,this.platform=e.platform}findController(e){if(typeof e=="function"){let t=this._controllerReverseMap.get(e);if(t!=null)return t;for(let r of this.controllers.values())if(r.ctor===e)return this._controllerReverseMap.set(e,r),r;this._controllerReverseMap.set(e,null);return}return this.controllers.get(e)}findOperation(e,t){let r=this.findController(e);return r==null?void 0:r.operations.get(t)}toJSON(){let t={...super.toJSON(),transport:this.transport,platform:this.platform,controllers:{}};for(let r of this.controllers.values())t.controllers[r.name]=r.toJSON();return t}};a(ps,"RpcApi");var Bt=ps;var Aa,cs=class cs extends R{constructor(){super(null),this[Aa]=new WeakMap,this.id="",this.info={},this.references=new v,this.types=new oe,this.node[C]=this.types,this.node.findDataType=this._findDataType.bind(this)}getDataTypeNs(e){let t=e instanceof _?this._findDataType(e.name||""):this._findDataType(e);if(t)return this[we].get(t)}findDocument(e){if(this.id===e)return this;for(let t of this.references.values()){if(t.id===e)return t;let r=t.findDocument(e);if(r)return r}}get httpApi(){if(!(this.api&&this.api instanceof Ct))throw new TypeError("The document do not contains HttpApi instance");return this.api}get rpcApi(){if(!(this.api&&this.api instanceof Bt))throw new TypeError("The document do not contains RpcApi instance");return this.api}toJSON(){return this.export()}export(e){let t=xl({spec:m.SpecVersion,id:this.id,url:this.url,info:I(this.info,!0)});if(this.references.size){let r=0,i={};for(let[n,s]of this.references.entries())s[Pe]||(i[n]={id:s.id,url:s.url,info:I(s.info,!0)},r++);r&&(t.references=i)}if(this.types.size){t.types={};for(let r of this.types.values())r.inScope(e==null?void 0:e.scope)&&(t.types[r.name]=r.toJSON(e))}return this.api&&(t.api=this.api.toJSON(e)),t}invalidate(){let e=this.export({});delete e.id,this.id=Ol(JSON.stringify(e)),this[we]=new WeakMap}_findDataType(e,t,r){let i=this.types.get(e);if(i&&i.inScope(t))return i;if(!this.references.size)return;if(typeof e=="string"){let s=js.exec(e);if(s){let p=s[1];if(p){let c=this.references.get(p);return c?(r=r||new WeakMap,r.set(this,!0),r.set(c,!0),c._findDataType(s[2],t,r)):void 0}e=s[2]}}r=r||new WeakMap,r.set(this,!0);let n=Array.from(this.references.keys()).reverse();for(let s of n){let p=this.references.get(s);if(i=p==null?void 0:p.types.get(e),i)return this[we].set(i,p!=null&&p[Pe]?"":s),i}for(let s of n){let p=this.references.get(s);if(r.set(p,!0),i=p._findDataType(e,t,r),i)return this[we].set(i,p!=null&&p[Pe]?"":s),i}}};a(cs,"ApiDocument");var Ge=cs;Aa=we;function Fe(o,e,t){let r=qr(e.pick,e.omit),i=typeof o=="string"?o.charAt(0).toUpperCase()+o.substring(1):o.name,n=(t==null?void 0:t.name)||i+"Mapped",s={[n]:class{constructor(){typeof o=="function"&&Er(this,o,r)}}}[n];if(typeof o=="function"&&Tr(s.prototype,o.prototype),typeof o=="function"){let c=Reflect.getOwnMetadata(d,o);if(!c)throw new TypeError(`Class "${o}" doesn't have datatype metadata information`);if(!(c.kind===m.ComplexType.Kind||c.kind===m.MappedType.Kind||c.kind===m.MixinType.Kind))throw new TypeError(`Class "${o}" is not a ${m.ComplexType.Kind}`)}let p={...t,kind:"MappedType",base:o};return e.pick&&(p.pick=e.pick),e.omit&&(p.omit=e.omit),e.partial&&(p.partial=e.partial),e.required&&(p.required=e.required),Reflect.defineMetadata(d,p,s),typeof o=="function"&&We._applyMixin(s,o,{...e,isInheritedPredicate:r}),s}a(Fe,"createMappedClass");function nx(o,e,t){return Fe(o,{omit:e},t)}a(nx,"OmitType");function cx(o,...e){let t=Array.isArray(e[0])?e[0]:!0,r=Array.isArray(e[0])?e[1]:e[0];return Fe(o,{partial:t},r)}a(cx,"PartialType");function ux(o,e,t){return Fe(o,{pick:e},t)}a(ux,"PickType");function Tx(o,...e){let t=Array.isArray(e[0])?e[0]:!0,r=Array.isArray(e[0])?e[1]:e[0];return Fe(o,{required:t},r)}a(Tx,"RequiredType");import{isConstructor as Sl}from"@jsopen/objects";import{omitUndefined as gl}from"@jsopen/objects";import{asMutable as wl}from"ts-gems";var Qe=a(function(...o){var i;if(!this)return Qe[D].apply(void 0,o);let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid resource name (${t.name})`);let r=wl(this);r.kind=m.RpcController.Kind,r.types=r.node[C]=new oe,r.operations=new v,r.headers=[],r.name=t.name,r.description=t.description,r.instance=t.instance,r.ctor=t.ctor,r._controllerReverseMap=new WeakMap,(i=r._initialize)==null||i.call(r,t)},"RpcController"),fs=class fs extends R{findHeader(e,t){let r=e.toLowerCase(),i;for(i of this.headers)if(typeof i.name=="string"&&(i._nameLower=i._nameLower||i.name.toLowerCase(),i._nameLower===r)||i.name instanceof RegExp&&i.name.test(e))return i;if(this.node.parent&&this.node.parent.element instanceof Qe)return this.node.parent.element.findHeader(e,t)}toString(){return`[RpcController ${this.name}]`}toJSON(){let e=gl({kind:this.kind,description:this.description});if(this.operations.size){e.operations={};for(let t of this.operations.values())e.operations[t.name]=t.toJSON()}if(this.types.size){e.types={};for(let t of this.types.values())e.types[t.name]=t.toJSON()}if(this.headers.length){e.headers=[];for(let t of this.headers)e.headers.push(t.toJSON())}return e}[st](){return`[${at}RpcController${pt+this.name+qe}]`}};a(fs,"RpcControllerClass");var ls=fs;Qe.prototype=ls.prototype;Object.assign(Qe,Pt);Qe[D]=Pt;import{omitUndefined as Rl}from"@jsopen/objects";import{asMutable as bl}from"ts-gems";var ur=a(function(o,e){if(!this)throw new TypeError('"this" should be passed to call class constructor');Ye.call(this,o,e);let t=bl(this);e.name&&(t.name=e.name instanceof RegExp?e.name:e.name.startsWith("/")?Ut(e.name,{includeFlags:"i",excludeFlags:"m"}):e.name),t.deprecated=e.deprecated,t.required=e.required},"RpcHeader"),us=class us extends Ye{toJSON(){return Rl({...super.toJSON(),name:this.name,required:this.required,deprecated:this.deprecated})}};a(us,"RpcHeaderClass");var ms=us;ur.prototype=ms.prototype;import{omitUndefined as Al}from"@jsopen/objects";import{asMutable as Dl}from"ts-gems";var dr=a(function(...o){if(!this){let[i,n]=o,s=[];return dr[D].call(void 0,s,i,n)}let[e,t]=o;if(R.call(this,e),!j.test(t.name))throw new TypeError(`Invalid operation name (${t.name})`);let r=Dl(this);r.headers=[],r.types=r.node[C]=new oe,r.name=t.name,r.description=t.description,r.channel=t.channel,t!=null&&t.payloadType&&(r.payloadType=(t==null?void 0:t.payloadType)instanceof _?t.payloadType:r.owner.node.getDataType(t.payloadType)),t!=null&&t.keyType&&(r.keyType=(t==null?void 0:t.keyType)instanceof _?t.keyType:r.owner.node.getDataType(t.keyType))},"RpcOperation"),hs=class hs extends R{findHeader(e){let t=e.toLowerCase(),r;for(r of this.headers)if(typeof r.name=="string"&&(r._nameLower=r._nameLower||r.name.toLowerCase(),r._nameLower===t)||r.name instanceof RegExp&&r.name.test(e))return r}toJSON(){var t;let e=Al({kind:m.RpcOperation.Kind,description:this.description,channel:this.channel,payloadType:this.payloadType.name?this.payloadType.name:this.payloadType.toJSON(),keyType:this.keyType?this.keyType.name?this.keyType.name:this.keyType.toJSON():void 0,response:(t=this.response)==null?void 0:t.toJSON()});if(this.headers.length){e.headers=[];for(let r of this.headers)e.headers.push(r.toJSON())}return e}};a(hs,"RpcOperationClass");var ds=hs;dr.prototype=ds.prototype;dr[D]=lr;import{omitUndefined as Nl}from"@jsopen/objects";var ys=class ys extends R{constructor(e,t){super(e),this.headers=[],this.channel=t==null?void 0:t.channel,this.description=t==null?void 0:t.description,t!=null&&t.payloadType?this.payloadType=(t==null?void 0:t.payloadType)instanceof _?t.payloadType:this.owner.node.getDataType(t.payloadType):this.payloadType=this.owner.node.getDataType("any"),t!=null&&t.keyType&&(this.keyType=(t==null?void 0:t.keyType)instanceof _?t.keyType:this.owner.node.getDataType(t.keyType))}findHeader(e){let t=e.toLowerCase(),r;for(r of this.headers)if(typeof r.name=="string"&&(r._nameLower=r._nameLower||r.name.toLowerCase(),r._nameLower===t)||r.name instanceof RegExp&&r.name.test(e))return r}toJSON(){let e=Nl({description:this.description,channel:this.channel,payloadType:this.payloadType.name?this.payloadType.name:this.payloadType.toJSON(),keyType:this.keyType?this.keyType.name?this.keyType.name:this.keyType.toJSON():void 0});if(this.headers.length){e.headers=[];for(let t of this.headers)e.headers.push(t.toJSON())}return e}};a(ys,"RpcOperationResponse");var Wr=ys;var Ts=class Ts{static async createApi(e,t){let r=new Bt(t);return t.controllers&&await e.enterAsync(".controllers",async()=>{if(Array.isArray(t.controllers))for(let i of t.controllers){let n=await this._createController(e,r,i);n&&r.controllers.set(n.name,n)}else for(let[i,n]of Object.entries(t.controllers)){let s=await this._createController(e,r,n,i);s&&r.controllers.set(s.name,s)}}),r}static async _createController(e,t,r,i){typeof r=="function"&&!Sl(r)&&(r=r()),r=await pe(r);let n,s,p;if(typeof r=="function"){if(s=Reflect.getMetadata(ae,r),!s)return e.addError(`Class "${r.name}" doesn't have a valid RpcController metadata`);n=r}else n=Object.getPrototypeOf(r).constructor,s=Reflect.getMetadata(ae,n),s?p=r:(s=r,r.instance==="object"&&(p=r.instance,n=Object.getPrototypeOf(p).constructor));if(!s)return e.addError(`Class "${n.name}" is not decorated with RpcController()`);if(i=i||s.name,!i)throw new TypeError("Controller name required");let c=new Qe(t,{...s,name:i,instance:p,ctor:n});return s.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,c,s.types)}),s.headers&&await e.enterAsync(".headers",async()=>{let l=0;for(let x of s.headers)await e.enterAsync(`[${l++}]`,async()=>{let g={...x};await e.enterAsync(".type",async()=>{x.type&&(g.type=c.node.findDataType(x.type)),!g.type&&typeof x.type=="object"&&(g.type=await F.createDataType(e,c,x.type)),g.type||(g.type=c.node.getDataType("any"))});let y=new ur(c,g);c.headers.push(y)})}),s.operations&&await e.enterAsync(".operations",async()=>{for(let[l,x]of Object.entries(s.operations))await e.enterAsync(`[${l}]`,async()=>{let g=new dr(c,{...x,name:l,types:void 0,payloadType:void 0,keyType:void 0});await this._initRpcOperation(e,g,x),c.operations.set(g.name,g)})}),c}static async _initRpcOperation(e,t,r){r.types&&await e.enterAsync(".types",async()=>{await F.addDataTypes(e,t,r.types)}),t.payloadType=await F.resolveDataType(e,t,r.payloadType),r.keyType&&(t.keyType=await F.resolveDataType(e,t,r.keyType)),r.headers&&await e.enterAsync(".headers",async()=>{let i=0;for(let n of r.headers)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new ur(t,s);t.headers.push(p)})}),r.response&&await e.enterAsync(".response",async()=>{let i=new Wr(t,{...r.response,payloadType:void 0,keyType:void 0});await this._initRpcOperationResponse(e,i,r.response),t.response=i})}static async _initRpcOperationResponse(e,t,r){t.payloadType=await F.resolveDataType(e,t,r.payloadType),r.keyType&&(t.keyType=await F.resolveDataType(e,t,r.keyType)),r.headers&&await e.enterAsync(".headers",async()=>{let i=0;for(let n of r.headers)await e.enterAsync(`[${i++}]`,async()=>{let s={...n};await e.enterAsync(".type",async()=>{s.type=await F.resolveDataType(e,t,n.type)});let p=new ur(t,s);t.headers.push(p)})})}};a(Ts,"RpcApiFactory");var Yr=Ts;var vl="https://oprajs.com/spec/v"+m.SpecVersion,Gr=class Gr{constructor(){this._allDocuments={}}static async createDocument(e,t){let r=new Gr,i=t instanceof he?t:new he(t);try{let n=new Ge;if(await r.initDocument(n,i,e),i.error.details.length)throw i.error;return n}catch(n){try{n instanceof _t||i.addError(n)}catch{}if(!i.error.message){let s=i.error.details.length;i.error.message=`(${s}) error${s>1?"s":""} found in document schema.`,i.showErrorDetails&&(i.error.message+=i.error.details.map(p=>`
|
|
10
10
|
|
|
11
11
|
- ${p.message}`+(p.path?`
|
|
12
12
|
@${p.path}`:"")).join(""))}throw i.error}}async initDocument(e,t,r){let i;if(typeof r=="string"){if(i=await(await fetch(r,{method:"GET"})).json(),!i)return t.addError(`Invalid response returned from url: ${r}`);i.url=r}else i=r;let n;if(!e[Pe]){let s=e.node.findDataType("string");n=s==null?void 0:s.node.getDocument(),n||(n=await this.createBuiltinDocument(t),e.references.set("opra",n))}i.spec=i.spec||m.SpecVersion,e.url=i.url,i.info&&(e.info={...i.info}),i.references&&await t.enterAsync(".references",async()=>{let s,p;for([s,p]of Object.entries(i.references))p=await pe(p),await t.enterAsync(`[${s}]`,async()=>{if(!j.test(s))throw new TypeError(`Invalid namespace (${s})`);if(p instanceof Ge){e.references.set(s,p);return}let c=new Ge;n&&c.references.set("opra",n),await this.initDocument(c,t,p),e.references.set(s,this._allDocuments[c.id])})}),i.types&&await t.enterAsync(".types",async()=>{await F.addDataTypes(t,e,i.types)}),i.api&&await t.enterAsync(".api",async()=>{if(i.api&&i.api.transport==="http"){let s=await $t.createApi(t,{...i.api,owner:e});s&&(e.api=s)}else if(i.api&&i.api.transport==="rpc"){let s=await Yr.createApi(t,{...i.api,owner:e});s&&(e.api=s)}else t.addError(`Unknown service transport (${i.api.transport})`)}),e.invalidate(),this._allDocuments[e.id]||(this._allDocuments[e.id]=e)}async createBuiltinDocument(e){let t={spec:m.SpecVersion,url:vl,info:{version:m.SpecVersion,title:"Opra built-in types",license:{url:"https://github.com/oprajs/opra/blob/main/LICENSE",name:"MIT"}},types:[...Object.values(kn),...Object.values(gn)]},r=new Ge;r[Pe]=!0;let i=Object.getPrototypeOf(BigInt(0)).constructor,n=Object.getPrototypeOf(Buffer.from([])),s=r.types[_r];return s.set(Object,"object"),s.set(String,"string"),s.set(Number,"number"),s.set(Boolean,"boolean"),s.set(Object,"any"),s.set(Date,"datetime"),s.set(i,"bigint"),s.set(ArrayBuffer,"base64"),s.set(n,"base64"),await this.initDocument(r,e,t),r}};a(Gr,"ApiDocumentFactory");var Da=Gr;var Na;(function(o){o.HttpApiFactory=$t,o.DataTypeFactory=F,o.RpcOperationDecoratorFactory=lr,o.RpcControllerDecoratorFactory=Pt})(Na||(Na={}));import{uid as wg}from"uid";export{An as AnyType,jt as ApiBase,Ge as ApiDocument,Da as ApiDocumentFactory,k as ApiField,Pe as BUILTIN,gs as BadRequestError,Qo as Base64Type,Ia as BaseI18n,Mn as BigintType,Fn as BooleanType,j as CLASS_NAME_PATTERN,te as ComplexType,ws as ConflictError,d as DATATYPE_METADATA,T as DECODER,D as DECORATOR,_ as DataType,oe as DataTypeMap,rr as DateTimeType,ir as DateTimeTypeTz,tr as DateType,R as DocumentElement,he as DocumentInitContext,kr as DocumentNode,O as ENCODER,H as EmailType,Z as EnumType,Rs as FailedDependencyError,z as FieldPathType,Le as FieldsProjection,Ve as FilterType,yr as ForbiddenError,se as HTTP_CONTROLLER_METADATA,Ct as HttpApi,ne as HttpController,bs as HttpHeaderCodes,Me as HttpMediaType,Vr as HttpMultipartField,b as HttpOperation,zr as HttpOperationResponse,mr as HttpParameter,Jr as HttpRequestBody,w as HttpStatusCode,mf as HttpStatusMessages,fr as HttpStatusRange,Kt as I18n,vt as IntegerType,As as InternalServerError,Ls as IssueSeverity,We as MappedType,Ds as MethodNotAllowedError,A as MimeTypes,Lt as MixinType,js as NAMESPACE_PATTERN,Ns as NotAcceptableError,Ss as NotFoundError,Pn as NullType,ge as NumberType,pn as ObjectIdType,Ln as ObjectType,nx as OmitType,re as OperationResult,_t as OpraDocumentError,Ee as OpraException,or as OpraFilter,N as OpraHttpError,m as OpraSchema,nr as PartialDateType,cx as PartialType,vs as PermissionError,ux as PickType,ae as RPC_CONTROLLER_METADATA,Tx as RequiredType,Ms as ResourceConflictError,Fs as ResourceNotAvailableError,v as ResponsiveMap,Bt as RpcApi,Qe as RpcController,ur as RpcHeader,dr as RpcOperation,u as SimpleType,Je as StringType,sr as TimeType,Is as UnauthorizedError,kt as UnionType,Ps as UnprocessableEntityError,On as UrlType,$r as UuidType,Na as classes,I as cloneObject,gm as getErrorStack,Om as getStackFileName,Xr as i18n,Er as inheritPropertyInitializers,Km as isBlob,Vm as isFormData,$m as isReadable,qm as isReadableStream,yi as isStream,zm as isURL,Bm as isWritable,_r as kCtorMap,C as kDataTypeMap,we as kTypeNSMap,Tr as mergePrototype,Bs as parse,$s as parseFieldsProjection,pe as resolveThunk,jm as safeJsonStringify,$l as translate,wg as uid};
|