@decaf-ts/for-http 0.4.5 → 0.4.6

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/dist/for-http.cjs CHANGED
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,r,s,i,a,n,o,c,d){"use strict";var l,h,u,p,g,f,y;class m extends t.Repository{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}url(e,t,r){return this.adapter.url(e,t,r)}async paginateBy(e,r,s={offset:1,limit:10},...a){const{offset:n,bookmark:o,limit:c}=s,{log:d,ctxArgs:l}=(await this.logCtx(a,t.PreparedStatementKeys.PAGE_BY,!0)).for(this.paginateBy);d.verbose(`paginating ${i.Model.tableName(this.class)} with page size ${c}`);const h={direction:r,limit:c};return o&&(h.bookmark=o),this.statement(this.paginateBy.name,e,n,h,...l)}async listBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.LIST_BY,!0)).for(this.listBy);return a.verbose(`listing ${i.Model.tableName(this.class)} by ${e} ${r}`),await this.statement(this.listBy.name,e,{direction:r},...n)}async findBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_BY,!0)).for(this.findBy);return a.verbose(`finding ${i.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findBy.name,e,r,{},...n)}async findOneBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_ONE_BY,!0)).for(this.findOneBy);return a.verbose(`finding ${i.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findOneBy.name,e,r,{},...n)}async find(e,r=t.OrderDirection.ASC,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND,!0)).for(this.find);return a.verbose(`finding ${i.Model.tableName(this.class)} by default query attributes`),await this.statement(this.find.name,e,r,...n)}async page(e,r=t.OrderDirection.ASC,s={offset:1,limit:10},...a){const{log:n,ctxArgs:o}=(await this.logCtx(a,t.PreparedStatementKeys.PAGE,!0)).for(this.page);return n.verbose(`paging ${i.Model.tableName(this.class)} by default query attributes`),await this.statement(this.page.name,e,r,s,...o)}async statement(e,...r){const{log:s,ctx:i,ctxArgs:a}=(await this.logCtx(r,t.PersistenceKeys.STATEMENT,!0)).for(this.statement),n=a.slice(0,-1),o=n[n.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:n.pop(),d={class:this.class,args:n,method:e,params:c},l=this.adapter.toRequest(d,i);s.verbose("Executing prepared statement "+e);const h=await this.request(l,...a),u=this.adapter.parseResponse(this.class,e,h);return this.convertStatementResult(e,u,i)}convertStatementResult(e,r,s){return r?e===t.PreparedStatementKeys.FIND||e===t.PreparedStatementKeys.LIST_BY||e===t.PreparedStatementKeys.FIND_BY?Array.isArray(r)?r.map(e=>this.revertRecord(e,s)):r:e===t.PreparedStatementKeys.FIND_ONE_BY?this.revertRecord(r,s):e===t.PreparedStatementKeys.PAGE||e===t.PreparedStatementKeys.PAGE_BY?this.convertPageResult(r,s):r:r}convertPageResult(e,r){if(!e)return e;let s=e;if("string"==typeof s)try{s=t.Paginator.deserialize(s)}catch{return e}return t.Paginator.isSerializedPage(s)?{...s,data:s.data.map(e=>this.revertRecord(e,r))}:e}revertRecord(e,t){if(!e)return e;if(e instanceof this.class)return e;const r=i.Model.pk(this.class),s=i.Model.columnName(this.class,r),a=r??s,n=e[s]??e[a];if(void 0!==n)try{return this.adapter.revert(e,this.class,n,void 0,t)}catch{}return Object.assign(new this.class,e)}async request(e,...r){let i;i=r.length&&r[r.length-1]instanceof t.Context?this.logCtx(r,this.request):(await this.logCtx(r,s.OperationKeys.READ,!0)).for(this.request);const{ctxArgs:a}=i;return this.adapter.request(e,...a)}async countOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.COUNT_OF,!0)).for(this.countOf);s.verbose(`counting ${i.Model.tableName(this.class)}${e?" by "+e:""}`);const n=e?[e,{}]:[{}];return await this.statement(this.countOf.name,...n,...a)}async maxOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.MAX_OF,!0)).for(this.maxOf);return s.verbose(`finding max of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.maxOf.name,e,{},...a)}async minOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.MIN_OF,!0)).for(this.minOf);return s.verbose(`finding min of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.minOf.name,e,{},...a)}async avgOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.AVG_OF,!0)).for(this.avgOf);return s.verbose(`calculating avg of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.avgOf.name,e,{},...a)}async sumOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.SUM_OF,!0)).for(this.sumOf);return s.verbose(`calculating sum of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.sumOf.name,e,{},...a)}async distinctOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.DISTINCT_OF,!0)).for(this.distinctOf);return s.verbose(`finding distinct values of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.distinctOf.name,e,{},...a)}async groupOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.GROUP_OF,!0)).for(this.groupOf);return s.verbose(`grouping ${i.Model.tableName(this.class)} by ${e}`),await this.statement(this.groupOf.name,e,{},...a)}}a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,String,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"find",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,String,Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"page",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"countOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(l="undefined"!=typeof K&&K)?l:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"maxOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(h="undefined"!=typeof K&&K)?h:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"minOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(u="undefined"!=typeof K&&K)?u:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"avgOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(p="undefined"!=typeof K&&K)?p:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"sumOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(g="undefined"!=typeof K&&K)?g:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"distinctOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(f="undefined"!=typeof K&&K)?f:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"groupOf",null);class v extends m{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return i.Model.tableName(this.class)+" REST service"}}class E extends t.Statement{constructor(e,t){super(e,t)}build(){throw new t.UnsupportedError("This method is only called is prepared statements are not used. If so, a dedicated implementation for the native queries used is required")}parseCondition(e,...r){throw new t.UnsupportedError("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class w extends t.Paginator{constructor(e,t,r,s){super(e,t,r,s)}async pagePrepared(e,...r){const s=t.Repository.forModel(this.clazz,this.adapter.alias),i=this.query,{method:a,args:n,params:o}=i,c=RegExp(`^${t.PreparedStatementKeys.FIND_BY}|${t.PreparedStatementKeys.LIST_BY}`,"gi");if(!a.match(c))throw new t.UnsupportedError(`Method ${a} is not supported for pagination`);c.lastIndex=0;const d=[a.replace(c,t.PreparedStatementKeys.PAGE_BY),...n],l={direction:o.direction,limit:this.size,offset:e,bookmark:this._bookmark};d.push(l);const h=await s.statement(...d,...r);return this.apply(h)}prepare(e){throw new t.UnsupportedError("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(e=1,...t){return super.page(e,...t)}}class O extends t.ContextualLoggedClass{static{this.cache=new Map}static get(e){if(this.cache.has(e))return this.cache.get(e);throw Error(`Server event connector not found for URL '${e}'. Did you forget to call open()?`)}static open(e,t){if(this.cache.has(e))return this.cache.get(e);const r=new O(e,t);return this.cache.set(e,r),this.cache.get(e)}static close(e){this.cache.has(e)&&this.cache.get(e).close()}static parseReceivedEvent(e){const t=e=>{if("string"!=typeof e)return e;try{return i.Serialization.deserialize(e)}catch{try{return JSON.parse(e)}catch{return e}}};try{const r="string"==typeof e?JSON.parse(e):e;if(!Array.isArray(r)||3>r.length)return null;const[s,i,a,n]=r;if("string"!=typeof s)return null;let o;return o=Array.isArray(n)?n.map(e=>t(e)):t(n),[s,i+"",a,o]}catch{return null}}constructor(e,t){super(),this.url=e,this.headers=t,this.stateLock=new c.Lock,this.ready=!1,this.listeners=new Set}isOpen(){return void 0!==this.es}async withStateLock(e){await this.stateLock.acquire();try{return await Promise.resolve(e())}finally{this.stateLock.release()}}async getOpening(){return this.withStateLock(()=>this.opening)}async setOpening(e){await this.withStateLock(()=>{this.opening=e})}async isReady(){return this.withStateLock(()=>this.ready)}async setReady(e){await this.withStateLock(()=>{this.ready=e})}async getHeaders(){let e=this.headers;return"function"==typeof this.headers&&(e=await Promise.resolve(this.headers())),e||{}}close(e=!1){const t=this.log.for(this.close);if(this.es)if(0>=this.listeners.size||e)try{t.info("Closing EventSource connection for listening URL "+this.url),this.controller?.abort()}finally{this.controller=void 0,this.es=void 0,this.setReady(!1),this.setOpening(void 0),this.listeners.clear(),O.cache.delete(this.url),t.info(`EventSource connection ${this.url} closed and removed from pool`)}else t.warn(`Skipping EventSource connection close ${this.url} \u2014 ${this.listeners.size} active listener(s) remaining.`);else t.debug("Skipping EventSource close \u2014 no open connection to "+this.url)}async startListening(){const e=this.log.for(this.startListening);if(this.es&&await this.isReady())return void e.info(`Listening address ${this.url} is already in the pool and listening. Skipping opening a new connection.`,{url:this.url,listeners:this.listeners.size});const t=await this.getOpening();if(t)return e.debug("Connection open already in progress for "+this.url,{url:this.url,listeners:this.listeners.size}),void await t;const r=(async()=>{e.info("Opening EventSource connection to "+this.url);const t=await this.getHeaders();let r,s;this.es=new o.EventSourcePlus(this.url,{...t&&{headers:t},credentials:"include"}),await this.setReady(!1);const i=new Promise((e,t)=>{r=e,s=t}),a=this;this.controller=this.es.listen({onResponse:async()=>{await a.setReady(!0),e.info(`Connected to ${this.url}. Ready to receive events`),r()},onRequestError:({error:t})=>{e.error("Failed to establish EventSource connection",{url:this.url,error:t}),a.setReady(!1),s(t),a.listeners.forEach(e=>e.onError((t?.message??t)+""))},onResponseError:({response:t})=>{const r=t?.status,i=t?.statusText;e.error("Listening failed with HTTP error response",{url:this.url,status:r,statusText:i});const n=Error(`HTTP ${r??"unknown"} ${i??"error"}`);a.setReady(!1),s(n),a.listeners.forEach(e=>e.onError(n))},onMessage:t=>{if("heartbeat"===t.event)return void e.debug("Refresh connection. Heartbeat received.");const r=t&&"object"==typeof t&&"data"in t?t.data:t,s=O.parseReceivedEvent(r);if(s)for(const t of a.listeners)try{t.onEvent(s)}catch(t){e.error("Listener handler failed on event",{err:t})}else e.warn("Failed to parse SSE message",{url:this.url,raw:r})}}),await i})().finally(()=>{this.setOpening(void 0)});await this.setOpening(r);try{await r}catch(e){throw this.controller=void 0,this.es=void 0,await this.setReady(!1),e}}async ensureListening(){await this.startListening()}addListener(e){const t=this.log.for(this.addListener);return t.info(`Registering listener for connection ${this.url} \u2014 ${this.listeners.size} active listener(s)`),this.listeners.add(e),this.ensureListening().then(()=>{t.info(`Listener registered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)}),()=>this.removeListener(e)}removeListener(e){const t=this.log.for(this.removeListener),r=this.listeners.has(e);t.info(`Unregistering listener for connection ${this.url}. Current active listeners: ${this.listeners.size}`,{listenerFound:r}),r&&(this.listeners.delete(e),t.debug(`Listener unregistered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)),0===this.listeners.size&&(t.info(`No listeners remaining. Closing EventSource connection ${this.url}.`,{url:this.url,listeners:this.listeners.size}),this.close())}}class b extends t.Dispatch{constructor(){super(...arguments),this.initialized=!1,this.listening=!1}async initialize(...e){const{log:r,ctxArgs:s}=(await this.logCtx(e,t.PersistenceKeys.INITIALIZATION,!0)).for(this.initialize);this.adapter?(r.info(`Initializing ${this.adapter}'s event Dispatch, but not listening yet.`),this.initialized=!0,await this.startListening(...s),r.info(`HttpDispatcher initialized for adapter ${this.adapter}.`)):r.verbose("No adapter observed for dispatch; skipping initialization")}async startListening(...e){const{log:t}=this.logCtx(e,this.startListening);if(!this.initialized||!this.adapter)throw t.error("Cannot start listening: dispatcher is not initialized or adapter is missing",{initialized:this.initialized,hasAdapter:!!this.adapter}),Error("Cannot start listening before call initialize()");if(!this.adapter.config.events)return void t.warn("SSe events disabled");this.listening&&t.warn("startListening called but dispatcher is already listening",{adapter:this.adapter+""});const{protocol:r,host:i,eventsListenerPath:a}=this.adapter.config;if(!a)throw t.error("Cannot start listening: no eventsListenerPath specified",{protocol:r,host:i}),Error("No eventsListenerPath specified");const n=new URL(a,`${r}://${i}`).toString();t.info("Opening ServerEventConnector for url: "+n),this.connector=O.open(n,async()=>{if(!this.adapter)throw new s.InternalError("Adapter not initialized");try{return this.adapter.getEventHeaders()}catch(e){throw new s.InternalError("Failed to get event headers: "+e)}}),t.debug("ServerEventConnector opened successfully for url: "+n),this.removeConnectorListener?.(),this.removeConnectorListener=this.connector.addListener({onEvent:async e=>{const[t,r,s,...i]=e,{log:a,ctxArgs:n}=(await this.logCtx(i,r,!0)).for("onEvent");super.updateObservers(t,r,s,...n).catch(e=>a.error("ServerEventConnector failed to updateObservers",e))},onError:e=>{t.error("ServerEventConnector failed to dispatch event",{error:e,listeningUrl:n,adapter:this.adapter+""})}}),await this.connector.ensureListening(),this.listening=!0,t.info(`HttpDispatcher is now listening at ${n}.`)}async close(...e){this.removeConnectorListener?.(),this.removeConnectorListener=void 0,this.connector?.close(),this.listening=!1}}function S(e,t,r,s){const i=s||t.name;e[i]=new Proxy(e[i],{apply:async(e,t,s)=>{let i=e.call(t,...s);return i instanceof Promise&&(i=await i),i=r.call(t,i),i instanceof Promise&&(i=await i),i}})}e.DecafHeaders=void 0,(y=e.DecafHeaders||(e.DecafHeaders={})).PENDING_TASK="x-pending-task",y.CORRELATION_ID="x-correlation-id";class A extends t.Adapter{constructor(e,t,r){super(Object.assign({},e,{headers:void 0===e.headers||e.headers,events:void 0===e.events||e.events}),t,r);const i=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(e=>{S(this,e,t=>i.parseResponse.call(i,void 0,e.name,t),e.name)}),s.wrapMethodWithContext(this,(...e)=>e,this.request,(e,t)=>{const r=i.config.parsers;return r?(r.forEach(r=>r(e,t)),e):e},this.request.name)}async flags(e,t,r){return super.flags(e,t,Object.assign({headers:r.headers??{}},r))}Dispatch(){return new b}async getEventHeaders(){return this.config.eventHeaderResolver&&await Promise.resolve(this.config.eventHeaderResolver)||{}}repository(){return v}prepare(e,...r){const{log:s}=this.logCtx(r,this.prepare),a=Object.assign({},e);return e[t.PersistenceKeys.METADATA]&&(s.silly("Passing along persistence metadata for "+e[t.PersistenceKeys.METADATA]),Object.defineProperty(a,t.PersistenceKeys.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:e[t.PersistenceKeys.METADATA]})),{record:e,id:e[i.Model.pk(e.constructor)]}}revert(e,r,a,...n){const{log:o}=this.logCtx(n,this.revert),c={},d="string"==typeof r?i.Model.build(c,r):new r(c);o.silly(`Rebuilding model ${d.constructor.name} id ${a}`);const l="string"==typeof r?i.Model.get(r):r;if(!l)throw new s.InternalError("Failed to retrieve model constructor for "+r);const h=new l(e),u=e[t.PersistenceKeys.METADATA];return u&&(o.silly(`Passing along ${this.flavour} persistence metadata for ${d.constructor.name} id ${a}: ${u}`),Object.defineProperty(h,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:u})),h}toTableName(e){return"string"==typeof e?e:n.toKebabCase(i.Model.tableName(e))}toHeaders(t){const r={};if(this.config.headers){const s=t.getOrUndefined("correlationId");s&&(r[e.DecafHeaders.CORRELATION_ID]=s)}return{...r,...t.getOrUndefined("headers")||{}}}url(e,t,r){r||t&&!Array.isArray(t)&&(r=t,t=[]),e=this.toTableName(e);const s=new URL(`${this.config.protocol}://${this.config.host}/${e}${t&&t.length?"/"+t.join("/"):""}`);return r&&Object.entries(r).forEach(([e,t])=>{Array.isArray(t)?t.forEach(t=>s.searchParams.append(e,t.toString())):"object"==typeof t?s.searchParams.append(e,JSON.stringify(t)):void 0!==t&&s.searchParams.append(e,t.toString())}),s.toString()}extractIdArgs(e,t){const r=t.toString();if("string"==typeof e)return[r];const s=i.Model.composed(e,i.Model.pk(e));return s?r.split(s.separator):[r]}parseResponse(e,r,s){return e&&t.Paginator.isSerializedPage(s)?Object.assign({},s,{data:s.data.map(t=>new e(t))}):s}raw(e,...t){const{ctxArgs:r,ctx:s}=this.logCtx(t,this.raw),i=this.toRequest(e,s);return this.request(i,...r)}Sequence(e){return Promise.reject(new t.UnsupportedError("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(e){return new E(this,e)}Paginator(e,t,r){return new w(this,e,t,r)}parseCondition(e){throw new t.UnsupportedError("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(e,...r){const i="string"==typeof e?e:e.message;return i.includes(s.NotFoundError.name)||i.includes("404")?new s.NotFoundError(e):i.includes(s.ConflictError.name)||i.includes("409")?new s.ConflictError(e):i.includes(s.BadRequestError.name)||i.includes("400")?new s.BadRequestError(e):i.includes(s.ValidationError.name)||i.includes("422")?new s.ValidationError(e):i.includes(t.QueryError.name)?new t.QueryError(e):i.includes(t.PagingError.name)?new t.PagingError(e):i.includes(t.UnsupportedError.name)?new t.UnsupportedError(e):i.includes(t.MigrationError.name)?new t.MigrationError(e):i.includes(t.ObserverError.name)?new t.ObserverError(e):i.includes(t.AuthorizationError.name)?new t.AuthorizationError(e):i.includes(t.ForbiddenError.name)?new t.ForbiddenError(e):i.includes(t.ConnectionError.name)?new t.ConnectionError(e):i.includes(s.SerializationError.name)?new s.SerializationError(e):new s.InternalError(e)}static decoration(){super.decoration(),r.Decoration.for(t.PersistenceKeys.QUERY).define({decorator:e=>(i,a,n)=>r.apply(r.methodMetadata(r.Metadata.key(t.PersistenceKeys.QUERY,a),e),t.prepared(),(e,t,r)=>{r.value=new Proxy(r.value,{async apply(e,t,r){const i=t,{log:n,ctxArgs:o}=(await i.logCtx(r,s.OperationKeys.READ,!0)).for(a);return n.verbose("Running prepared statement "+e.name),n.debug("With args: "+JSON.stringify(r,null,2)),t.statement(e.name,...o)}})})(i,a,n)}).apply()}}A.decoration();const P="axios",_=(t,r)=>{if(t.headers&&t.headers[e.DecafHeaders.PENDING_TASK]){let s;try{s=JSON.parse(t.headers[e.DecafHeaders.PENDING_TASK]),Object.entries(s).forEach(([e,t])=>{t.forEach(t=>r.pushPending(e,t))})}catch(s){r.logger.for(_).error(`Failed to parse pending tasks header ${t.headers[e.DecafHeaders.PENDING_TASK]}: ${s}`)}}};class x extends A{constructor(e,t){super(e,P,t)}getClient(){return new d.Axios({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,r){let s,i;e instanceof t.Context?(i=e,s=void 0):(s=e,i=r);const a={};return i&&(a.headers={...a.headers||{},...this.toHeaders(i)}),s&&(a.method="GET",a.url=this.url(s.class,[t.PersistenceKeys.STATEMENT,s.method,...s.args||[]],s.params)),a}async request(e,...t){let r={};try{const{ctx:e}=this.logCtx(t,this.request);r=this.toRequest(e)}catch(e){}return await this.client.request(Object.assign({},e,r))}parseResponse(e,r,i){if(!i.status&&r!==t.PersistenceKeys.STATEMENT)throw new s.InternalError("this should be impossible");if(i.status>=400)throw this.parseError(i.error||i.status);const a=this.normalizeResponseBody(i);switch(r){case s.BulkCrudOperationKeys.CREATE_ALL:case s.BulkCrudOperationKeys.READ_ALL:case s.BulkCrudOperationKeys.UPDATE_ALL:case s.BulkCrudOperationKeys.DELETE_ALL:case s.OperationKeys.CREATE:case s.OperationKeys.READ:case s.OperationKeys.UPDATE:case s.OperationKeys.DELETE:return a;case t.PreparedStatementKeys.FIND:case t.PreparedStatementKeys.PAGE:case t.PreparedStatementKeys.FIND_BY:case t.PreparedStatementKeys.LIST_BY:case t.PreparedStatementKeys.PAGE_BY:case t.PreparedStatementKeys.FIND_ONE_BY:case t.PersistenceKeys.STATEMENT:return super.parseResponse(e,r,a);case t.PreparedStatementKeys.COUNT_OF:case t.PreparedStatementKeys.MAX_OF:case t.PreparedStatementKeys.MIN_OF:case t.PreparedStatementKeys.AVG_OF:case t.PreparedStatementKeys.SUM_OF:case t.PreparedStatementKeys.DISTINCT_OF:return a;case t.PreparedStatementKeys.GROUP_OF:if(e&&"object"==typeof a&&null!==a){const t={};for(const[r,s]of Object.entries(a))t[r]=Array.isArray(s)?s.map(t=>new e(t)):s;return t}return a;default:return a}}normalizeResponseBody(e){if(!e)return e;const t=void 0!==e.body?e.body:void 0!==e.data?e.data:e;if("string"==typeof t)try{return JSON.parse(t)}catch{return t}return t}async create(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.create);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return a.debug(`POSTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.request({url:s,method:"POST",data:JSON.stringify(Object.assign({},r,{[i.ModelKeys.ANCHOR]:e.name})),...o},n)}catch(e){throw this.parseError(e)}}async createAll(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.createAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return a.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.request({url:t,method:"POST",data:JSON.stringify(r.map(t=>Object.assign({},t,{[i.ModelKeys.ANCHOR]:e.name}))),...s},n)}catch(e){throw this.parseError(e)}}async read(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.read);try{const r=this.url(e,this.extractIdArgs(e,t)),a=this.toRequest(i);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"GET",...a},i)}catch(e){throw this.parseError(e)}}async readAll(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.readAll);try{const r=this.url(e,["bulk"],{ids:t}),a=this.toRequest(i);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"GET",...a},i)}catch(e){throw this.parseError(e)}}async update(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return a.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.request({url:s,method:"PUT",data:JSON.stringify(Object.assign({},r,{[i.ModelKeys.ANCHOR]:e.name})),...o},n)}catch(e){throw this.parseError(e)}}async updateAll(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.updateAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return a.debug(`PUTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.request({url:t,method:"PUT",data:JSON.stringify(r.map(t=>Object.assign({},t,{[i.ModelKeys.ANCHOR]:e.name}))),...s},n)}catch(e){throw this.parseError(e)}}async delete(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.delete);try{const r=this.url(e,this.extractIdArgs(e,t)),a=this.toRequest(i);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"DELETE",...a},i)}catch(e){throw this.parseError(e)}}async deleteAll(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.delete);try{const r=this.url(e,["bulk"],{ids:t}),a=this.toRequest(i);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"DELETE",...a},i)}catch(e){throw this.parseError(e)}}parseError(e,...t){return A.parseError(e,...t)}}x.decoration();const N="##VERSION##",R="##PACKAGE##";r.Metadata.registerLibrary(R,N),e.AxiosFlavour=P,e.AxiosHttpAdapter=x,e.HttpAdapter=A,e.HttpPaginator=w,e.HttpStatement=E,e.KeepAliveOperation="keepalive",e.PACKAGE_NAME=R,e.RestRepository=m,e.RestService=v,e.ServerEventConnector=O,e.TaskResponseParser=_,e.VERSION=N,e.suffixMethod=S},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/core"),require("@decaf-ts/decoration"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decorator-validation"),require("tslib"),require("@decaf-ts/logging"),require("event-source-plus"),require("@decaf-ts/transactional-decorators"),require("axios")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/core","@decaf-ts/decoration","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","tslib","@decaf-ts/logging","event-source-plus","@decaf-ts/transactional-decorators","axios"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-http"]={},e.decafTsCore,e.decafTsDecoration,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.tslib,e.decafTsLogging,e.eventSourcePlus,e.decafTsTransactionalDecorators,e.axios);
1
+ var e,t;e=this,t=function(e,t,r,s,i,a,n,o,c,d){"use strict";var l,h,u,p,g,f,y;class m extends t.Repository{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}url(e,t,r){return this.adapter.url(e,t,r)}async paginateBy(e,r,s={offset:1,limit:10},...a){const{offset:n,bookmark:o,limit:c}=s,{log:d,ctxArgs:l}=(await this.logCtx(a,t.PreparedStatementKeys.PAGE_BY,!0)).for(this.paginateBy);d.verbose(`paginating ${i.Model.tableName(this.class)} with page size ${c}`);const h={direction:r,limit:c};return o&&(h.bookmark=o),this.statement(this.paginateBy.name,e,n,h,...l)}async listBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.LIST_BY,!0)).for(this.listBy);return a.verbose(`listing ${i.Model.tableName(this.class)} by ${e} ${r}`),await this.statement(this.listBy.name,e,{direction:r},...n)}async findBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_BY,!0)).for(this.findBy);return a.verbose(`finding ${i.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findBy.name,e,r,{},...n)}async findOneBy(e,r,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_ONE_BY,!0)).for(this.findOneBy);return a.verbose(`finding ${i.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findOneBy.name,e,r,{},...n)}async find(e,r=t.OrderDirection.ASC,...s){const{log:a,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND,!0)).for(this.find);return a.verbose(`finding ${i.Model.tableName(this.class)} by default query attributes`),await this.statement(this.find.name,e,r,...n)}async page(e,r=t.OrderDirection.ASC,s={offset:1,limit:10},...a){const{log:n,ctxArgs:o}=(await this.logCtx(a,t.PreparedStatementKeys.PAGE,!0)).for(this.page);return n.verbose(`paging ${i.Model.tableName(this.class)} by default query attributes`),await this.statement(this.page.name,e,r,s,...o)}async statement(e,...r){const{log:s,ctx:i,ctxArgs:a}=(await this.logCtx(r,t.PersistenceKeys.STATEMENT,!0)).for(this.statement),n=a.slice(0,-1),o=n[n.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:n.pop(),d={class:this.class,args:n,method:e,params:c},l=this.adapter.toRequest(d,i);s.verbose("Executing prepared statement "+e);const h=await this.request(l,...a),u=this.adapter.parseResponse(this.class,e,h);return this.convertStatementResult(e,u,i)}convertStatementResult(e,r,s){return r?e===t.PreparedStatementKeys.FIND||e===t.PreparedStatementKeys.LIST_BY||e===t.PreparedStatementKeys.FIND_BY?Array.isArray(r)?r.map(e=>this.revertRecord(e,s)):r:e===t.PreparedStatementKeys.FIND_ONE_BY?this.revertRecord(r,s):e===t.PreparedStatementKeys.PAGE||e===t.PreparedStatementKeys.PAGE_BY?this.convertPageResult(r,s):r:r}convertPageResult(e,r){if(!e)return e;let s=e;if("string"==typeof s)try{s=t.Paginator.deserialize(s)}catch{return e}return t.Paginator.isSerializedPage(s)?{...s,data:s.data.map(e=>this.revertRecord(e,r))}:e}revertRecord(e,t){if(!e)return e;if(e instanceof this.class)return e;const r=i.Model.pk(this.class),s=i.Model.columnName(this.class,r),a=r??s,n=e[s]??e[a];if(void 0!==n)try{return this.adapter.revert(e,this.class,n,void 0,t)}catch{}return Object.assign(new this.class,e)}async request(e,...r){let i;i=r.length&&r[r.length-1]instanceof t.Context?this.logCtx(r,this.request):(await this.logCtx(r,s.OperationKeys.READ,!0)).for(this.request);const{ctxArgs:a}=i;return this.adapter.request(e,...a)}async countOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.COUNT_OF,!0)).for(this.countOf);s.verbose(`counting ${i.Model.tableName(this.class)}${e?" by "+e:""}`);const n=e?[e,{}]:[{}];return await this.statement(this.countOf.name,...n,...a)}async maxOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.MAX_OF,!0)).for(this.maxOf);return s.verbose(`finding max of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.maxOf.name,e,{},...a)}async minOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.MIN_OF,!0)).for(this.minOf);return s.verbose(`finding min of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.minOf.name,e,{},...a)}async avgOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.AVG_OF,!0)).for(this.avgOf);return s.verbose(`calculating avg of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.avgOf.name,e,{},...a)}async sumOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.SUM_OF,!0)).for(this.sumOf);return s.verbose(`calculating sum of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.sumOf.name,e,{},...a)}async distinctOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.DISTINCT_OF,!0)).for(this.distinctOf);return s.verbose(`finding distinct values of ${e} in ${i.Model.tableName(this.class)}`),await this.statement(this.distinctOf.name,e,{},...a)}async groupOf(e,...r){const{log:s,ctxArgs:a}=(await this.logCtx(r,t.PreparedStatementKeys.GROUP_OF,!0)).for(this.groupOf);return s.verbose(`grouping ${i.Model.tableName(this.class)} by ${e}`),await this.statement(this.groupOf.name,e,{},...a)}}a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,String,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"find",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,String,Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"page",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"countOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(l="undefined"!=typeof K&&K)?l:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"maxOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(h="undefined"!=typeof K&&K)?h:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"minOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(u="undefined"!=typeof K&&K)?u:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"avgOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(p="undefined"!=typeof K&&K)?p:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"sumOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(g="undefined"!=typeof K&&K)?g:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"distinctOf",null),a.__decorate([t.prepared(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",["function"==typeof(f="undefined"!=typeof K&&K)?f:Object,void 0]),a.__metadata("design:returntype",Promise)],m.prototype,"groupOf",null);class v extends m{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return i.Model.tableName(this.class)+" REST service"}}class E extends t.Statement{constructor(e,t){super(e,t)}build(){throw new t.UnsupportedError("This method is only called is prepared statements are not used. If so, a dedicated implementation for the native queries used is required")}parseCondition(e,...r){throw new t.UnsupportedError("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class w extends t.Paginator{constructor(e,t,r,s){super(e,t,r,s)}async pagePrepared(e,...r){const s=t.Repository.forModel(this.clazz,this.adapter.alias),i=this.query,{method:a,args:n,params:o}=i,c=RegExp(`^${t.PreparedStatementKeys.FIND_BY}|${t.PreparedStatementKeys.LIST_BY}`,"gi");if(!a.match(c))throw new t.UnsupportedError(`Method ${a} is not supported for pagination`);c.lastIndex=0;const d=[a.replace(c,t.PreparedStatementKeys.PAGE_BY),...n],l={direction:o.direction,limit:this.size,offset:e,bookmark:this._bookmark};d.push(l);const h=await s.statement(...d,...r);return this.apply(h)}prepare(e){throw new t.UnsupportedError("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(e=1,...t){return super.page(e,...t)}}class O extends t.ContextualLoggedClass{static{this.cache=new Map}static get(e){if(this.cache.has(e))return this.cache.get(e);throw Error(`Server event connector not found for URL '${e}'. Did you forget to call open()?`)}static open(e,t){if(this.cache.has(e))return this.cache.get(e);const r=new O(e,t);return this.cache.set(e,r),this.cache.get(e)}static close(e){this.cache.has(e)&&this.cache.get(e).close()}static parseReceivedEvent(e){const t=e=>{if("string"!=typeof e)return e;try{return i.Serialization.deserialize(e)}catch{try{return JSON.parse(e)}catch{return e}}};try{const r="string"==typeof e?JSON.parse(e):e;if(!Array.isArray(r)||3>r.length)return null;const[s,i,a,n]=r;if("string"!=typeof s)return null;let o;return o=Array.isArray(n)?n.map(e=>t(e)):t(n),[s,i+"",a,o]}catch{return null}}constructor(e,t){super(),this.url=e,this.headers=t,this.stateLock=new c.Lock,this.ready=!1,this.listeners=new Set}isOpen(){return void 0!==this.es}async withStateLock(e){await this.stateLock.acquire();try{return await Promise.resolve(e())}finally{this.stateLock.release()}}async setOpening(e){await this.withStateLock(()=>{this.opening=e})}async isReady(){return this.withStateLock(()=>this.ready)}async setReady(e){await this.withStateLock(()=>{this.ready=e})}async getHeaders(){let e=this.headers;return"function"==typeof this.headers&&(e=await Promise.resolve(this.headers())),e||{}}close(e=!1){const t=this.log.for(this.close);if(this.es)if(0>=this.listeners.size||e)try{t.info("Closing EventSource connection for listening URL "+this.url),this.controller?.abort()}finally{this.controller=void 0,this.es=void 0,this.setReady(!1),this.setOpening(void 0),this.listeners.clear(),O.cache.delete(this.url),t.info(`EventSource connection ${this.url} closed and removed from pool`)}else t.warn(`Skipping EventSource connection close ${this.url} \u2014 ${this.listeners.size} active listener(s) remaining.`);else t.debug("Skipping EventSource close \u2014 no open connection to "+this.url)}async startListening(){const e=this.log.for(this.startListening);let t,r,s,i=!1;const a=new Promise((e,t)=>{r=e,s=t});if(await this.withStateLock(()=>{this.es&&this.ready?t=Promise.resolve():this.opening?t=this.opening:(this.ready=!1,this.opening=a,t=a,i=!0)}),!i)return e.debug("Connection open already in progress for "+this.url,{url:this.url,listeners:this.listeners.size}),void await t;(async()=>{e.info("Opening EventSource connection to "+this.url);const t=await this.getHeaders();this.es=new o.EventSourcePlus(this.url,{...t&&{headers:t},credentials:"include"}),await this.setReady(!1);let i=!1;const a=this;this.controller=this.es.listen({onResponse:async()=>{i||(i=!0,await a.setReady(!0),e.info(`Connected to ${this.url}. Ready to receive events`),r())},onRequestError:({error:t})=>{i||(i=!0,e.error("Failed to establish EventSource connection",{url:this.url,error:t}),a.setReady(!1),s(t),a.listeners.forEach(e=>e.onError((t?.message??t)+"")))},onResponseError:({response:t})=>{if(i)return;i=!0;const r=t?.status,n=t?.statusText;e.error("Listening failed with HTTP error response",{url:this.url,status:r,statusText:n});const o=Error(`HTTP ${r??"unknown"} ${n??"error"}`);a.setReady(!1),s(o),a.listeners.forEach(e=>e.onError(o))},onMessage:t=>{if("heartbeat"===t.event)return void e.debug("Refresh connection. Heartbeat received.");const r=t&&"object"==typeof t&&"data"in t?t.data:t,s=O.parseReceivedEvent(r);if(s)for(const t of a.listeners)try{t.onEvent(s)}catch(t){e.error("Listener handler failed on event",{err:t})}else e.warn("Failed to parse SSE message",{url:this.url,raw:r})}})})().catch(async e=>{this.controller=void 0,this.es=void 0,await this.setReady(!1),s(e)});try{await t}finally{await this.setOpening(void 0)}}async ensureListening(){await this.startListening()}addListener(e){const t=this.log.for(this.addListener);return t.info(`Registering listener for connection ${this.url} \u2014 ${this.listeners.size} active listener(s)`),this.listeners.add(e),this.ensureListening().then(()=>{t.info(`Listener registered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)}),()=>this.removeListener(e)}removeListener(e){const t=this.log.for(this.removeListener),r=this.listeners.has(e);t.info(`Unregistering listener for connection ${this.url}. Current active listeners: ${this.listeners.size}`,{listenerFound:r}),r&&(this.listeners.delete(e),t.debug(`Listener unregistered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)),0===this.listeners.size&&(t.info(`No listeners remaining. Closing EventSource connection ${this.url}.`,{url:this.url,listeners:this.listeners.size}),this.close())}}class b extends t.Dispatch{constructor(){super(...arguments),this.initialized=!1,this.listening=!1}async initialize(...e){const{log:r,ctxArgs:s}=(await this.logCtx(e,t.PersistenceKeys.INITIALIZATION,!0)).for(this.initialize);this.adapter?(r.info(`Initializing ${this.adapter}'s event Dispatch, but not listening yet.`),this.initialized=!0,await this.startListening(...s),r.info(`HttpDispatcher initialized for adapter ${this.adapter}.`)):r.verbose("No adapter observed for dispatch; skipping initialization")}async startListening(...e){const{log:t}=this.logCtx(e,this.startListening);if(!this.initialized||!this.adapter)throw t.error("Cannot start listening: dispatcher is not initialized or adapter is missing",{initialized:this.initialized,hasAdapter:!!this.adapter}),Error("Cannot start listening before call initialize()");if(!this.adapter.config.events)return void t.warn("SSe events disabled");this.listening&&t.warn("startListening called but dispatcher is already listening",{adapter:this.adapter+""});const{protocol:r,host:i,eventsListenerPath:a}=this.adapter.config;if(!a)throw t.error("Cannot start listening: no eventsListenerPath specified",{protocol:r,host:i}),Error("No eventsListenerPath specified");const n=new URL(a,`${r}://${i}`).toString();t.info("Opening ServerEventConnector for url: "+n),this.connector=O.open(n,async()=>{if(!this.adapter)throw new s.InternalError("Adapter not initialized");try{return this.adapter.getEventHeaders()}catch(e){throw new s.InternalError("Failed to get event headers: "+e)}}),t.debug("ServerEventConnector opened successfully for url: "+n),this.removeConnectorListener?.(),this.removeConnectorListener=this.connector.addListener({onEvent:async e=>{const[t,r,s,...i]=e,{log:a,ctxArgs:n}=(await this.logCtx(i,r,!0)).for("onEvent");super.updateObservers(t,r,s,...n).catch(e=>a.error("ServerEventConnector failed to updateObservers",e))},onError:e=>{t.error("ServerEventConnector failed to dispatch event",{error:e,listeningUrl:n,adapter:this.adapter+""})}}),await this.connector.ensureListening(),this.listening=!0,t.info(`HttpDispatcher is now listening at ${n}.`)}async close(...e){this.removeConnectorListener?.(),this.removeConnectorListener=void 0,this.connector?.close(),this.listening=!1}}function S(e,t,r,s){const i=s||t.name;e[i]=new Proxy(e[i],{apply:async(e,t,s)=>{let i=e.call(t,...s);return i instanceof Promise&&(i=await i),i=r.call(t,i),i instanceof Promise&&(i=await i),i}})}e.DecafHeaders=void 0,(y=e.DecafHeaders||(e.DecafHeaders={})).PENDING_TASK="x-pending-task",y.CORRELATION_ID="x-correlation-id";class A extends t.Adapter{constructor(e,t,r){super(Object.assign({},e,{headers:void 0===e.headers||e.headers,events:void 0===e.events||e.events}),t,r);const i=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(e=>{S(this,e,t=>i.parseResponse.call(i,void 0,e.name,t),e.name)}),s.wrapMethodWithContext(this,(...e)=>e,this.request,(e,t)=>{const r=i.config.parsers;return r?(r.forEach(r=>r(e,t)),e):e},this.request.name)}async flags(e,t,r){return super.flags(e,t,Object.assign({headers:r.headers??{}},r))}Dispatch(){return new b}async getEventHeaders(){return this.config.eventHeaderResolver&&await Promise.resolve(this.config.eventHeaderResolver)||{}}repository(){return v}prepare(e,...r){const{log:s}=this.logCtx(r,this.prepare),a=Object.assign({},e);return e[t.PersistenceKeys.METADATA]&&(s.silly("Passing along persistence metadata for "+e[t.PersistenceKeys.METADATA]),Object.defineProperty(a,t.PersistenceKeys.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:e[t.PersistenceKeys.METADATA]})),{record:e,id:e[i.Model.pk(e.constructor)]}}revert(e,r,a,...n){const{log:o}=this.logCtx(n,this.revert),c={},d="string"==typeof r?i.Model.build(c,r):new r(c);o.silly(`Rebuilding model ${d.constructor.name} id ${a}`);const l="string"==typeof r?i.Model.get(r):r;if(!l)throw new s.InternalError("Failed to retrieve model constructor for "+r);const h=new l(e),u=e[t.PersistenceKeys.METADATA];return u&&(o.silly(`Passing along ${this.flavour} persistence metadata for ${d.constructor.name} id ${a}: ${u}`),Object.defineProperty(h,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:u})),h}toTableName(e){return"string"==typeof e?e:n.toKebabCase(i.Model.tableName(e))}toHeaders(t){const r={};if(this.config.headers){const s=t.getOrUndefined("correlationId");s&&(r[e.DecafHeaders.CORRELATION_ID]=s)}return{...r,...t.getOrUndefined("headers")||{}}}url(e,t,r){r||t&&!Array.isArray(t)&&(r=t,t=[]),e=this.toTableName(e);const s=new URL(`${this.config.protocol}://${this.config.host}/${e}${t&&t.length?"/"+t.join("/"):""}`);return r&&Object.entries(r).forEach(([e,t])=>{Array.isArray(t)?t.forEach(t=>s.searchParams.append(e,t.toString())):"object"==typeof t?s.searchParams.append(e,JSON.stringify(t)):void 0!==t&&s.searchParams.append(e,t.toString())}),s.toString()}extractIdArgs(e,t){const r=t.toString();if("string"==typeof e)return[r];const s=i.Model.composed(e,i.Model.pk(e));return s?r.split(s.separator):[r]}parseResponse(e,r,s){return e&&t.Paginator.isSerializedPage(s)?Object.assign({},s,{data:s.data.map(t=>new e(t))}):s}raw(e,...t){const{ctxArgs:r,ctx:s}=this.logCtx(t,this.raw),i=this.toRequest(e,s);return this.request(i,...r)}Sequence(e){return Promise.reject(new t.UnsupportedError("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(e){return new E(this,e)}Paginator(e,t,r){return new w(this,e,t,r)}parseCondition(e){throw new t.UnsupportedError("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(e,...r){const i="string"==typeof e?e:e.message;return i.includes(s.NotFoundError.name)||i.includes("404")?new s.NotFoundError(e):i.includes(s.ConflictError.name)||i.includes("409")?new s.ConflictError(e):i.includes(s.BadRequestError.name)||i.includes("400")?new s.BadRequestError(e):i.includes(s.ValidationError.name)||i.includes("422")?new s.ValidationError(e):i.includes(t.QueryError.name)?new t.QueryError(e):i.includes(t.PagingError.name)?new t.PagingError(e):i.includes(t.UnsupportedError.name)?new t.UnsupportedError(e):i.includes(t.MigrationError.name)?new t.MigrationError(e):i.includes(t.ObserverError.name)?new t.ObserverError(e):i.includes(t.AuthorizationError.name)?new t.AuthorizationError(e):i.includes(t.ForbiddenError.name)?new t.ForbiddenError(e):i.includes(t.ConnectionError.name)?new t.ConnectionError(e):i.includes(s.SerializationError.name)?new s.SerializationError(e):new s.InternalError(e)}static decoration(){super.decoration(),r.Decoration.for(t.PersistenceKeys.QUERY).define({decorator:e=>(i,a,n)=>r.apply(r.methodMetadata(r.Metadata.key(t.PersistenceKeys.QUERY,a),e),t.prepared(),(e,t,r)=>{r.value=new Proxy(r.value,{async apply(e,t,r){const i=t,{log:n,ctxArgs:o}=(await i.logCtx(r,s.OperationKeys.READ,!0)).for(a);return n.verbose("Running prepared statement "+e.name),n.debug("With args: "+JSON.stringify(r,null,2)),t.statement(e.name,...o)}})})(i,a,n)}).apply()}}A.decoration();const P="axios",_=(t,r)=>{if(t.headers&&t.headers[e.DecafHeaders.PENDING_TASK]){let s;try{s=JSON.parse(t.headers[e.DecafHeaders.PENDING_TASK]),Object.entries(s).forEach(([e,t])=>{t.forEach(t=>r.pushPending(e,t))})}catch(s){r.logger.for(_).error(`Failed to parse pending tasks header ${t.headers[e.DecafHeaders.PENDING_TASK]}: ${s}`)}}};class x extends A{constructor(e,t){super(e,P,t)}getClient(){return new d.Axios({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,r){let s,i;e instanceof t.Context?(i=e,s=void 0):(s=e,i=r);const a={};return i&&(a.headers={...a.headers||{},...this.toHeaders(i)}),s&&(a.method="GET",a.url=this.url(s.class,[t.PersistenceKeys.STATEMENT,s.method,...s.args||[]],s.params)),a}async request(e,...t){let r={};try{const{ctx:e}=this.logCtx(t,this.request);r=this.toRequest(e)}catch(e){}return await this.client.request(Object.assign({},e,r))}parseResponse(e,r,i){if(!i.status&&r!==t.PersistenceKeys.STATEMENT)throw new s.InternalError("this should be impossible");if(i.status>=400)throw this.parseError(i.error||i.status);const a=this.normalizeResponseBody(i);switch(r){case s.BulkCrudOperationKeys.CREATE_ALL:case s.BulkCrudOperationKeys.READ_ALL:case s.BulkCrudOperationKeys.UPDATE_ALL:case s.BulkCrudOperationKeys.DELETE_ALL:case s.OperationKeys.CREATE:case s.OperationKeys.READ:case s.OperationKeys.UPDATE:case s.OperationKeys.DELETE:return a;case t.PreparedStatementKeys.FIND:case t.PreparedStatementKeys.PAGE:case t.PreparedStatementKeys.FIND_BY:case t.PreparedStatementKeys.LIST_BY:case t.PreparedStatementKeys.PAGE_BY:case t.PreparedStatementKeys.FIND_ONE_BY:case t.PersistenceKeys.STATEMENT:return super.parseResponse(e,r,a);case t.PreparedStatementKeys.COUNT_OF:case t.PreparedStatementKeys.MAX_OF:case t.PreparedStatementKeys.MIN_OF:case t.PreparedStatementKeys.AVG_OF:case t.PreparedStatementKeys.SUM_OF:case t.PreparedStatementKeys.DISTINCT_OF:return a;case t.PreparedStatementKeys.GROUP_OF:if(e&&"object"==typeof a&&null!==a){const t={};for(const[r,s]of Object.entries(a))t[r]=Array.isArray(s)?s.map(t=>new e(t)):s;return t}return a;default:return a}}normalizeResponseBody(e){if(!e)return e;const t=void 0!==e.body?e.body:void 0!==e.data?e.data:e;if("string"==typeof t)try{return JSON.parse(t)}catch{return t}return t}async create(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.create);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return a.debug(`POSTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.request({url:s,method:"POST",data:JSON.stringify(Object.assign({},r,{[i.ModelKeys.ANCHOR]:e.name})),...o},n)}catch(e){throw this.parseError(e)}}async createAll(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.createAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return a.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.request({url:t,method:"POST",data:JSON.stringify(r.map(t=>Object.assign({},t,{[i.ModelKeys.ANCHOR]:e.name}))),...s},n)}catch(e){throw this.parseError(e)}}async read(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.read);try{const r=this.url(e,this.extractIdArgs(e,t)),a=this.toRequest(i);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"GET",...a},i)}catch(e){throw this.parseError(e)}}async readAll(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.readAll);try{const r=this.url(e,["bulk"],{ids:t}),a=this.toRequest(i);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"GET",...a},i)}catch(e){throw this.parseError(e)}}async update(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return a.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.request({url:s,method:"PUT",data:JSON.stringify(Object.assign({},r,{[i.ModelKeys.ANCHOR]:e.name})),...o},n)}catch(e){throw this.parseError(e)}}async updateAll(e,t,r,...s){const{log:a,ctx:n}=this.logCtx(s,this.updateAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return a.debug(`PUTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.request({url:t,method:"PUT",data:JSON.stringify(r.map(t=>Object.assign({},t,{[i.ModelKeys.ANCHOR]:e.name}))),...s},n)}catch(e){throw this.parseError(e)}}async delete(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.delete);try{const r=this.url(e,this.extractIdArgs(e,t)),a=this.toRequest(i);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"DELETE",...a},i)}catch(e){throw this.parseError(e)}}async deleteAll(e,t,...r){const{log:s,ctx:i}=this.logCtx(r,this.delete);try{const r=this.url(e,["bulk"],{ids:t}),a=this.toRequest(i);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"DELETE",...a},i)}catch(e){throw this.parseError(e)}}parseError(e,...t){return A.parseError(e,...t)}}x.decoration();const N="##VERSION##",T="##PACKAGE##";r.Metadata.registerLibrary(T,N),e.AxiosFlavour=P,e.AxiosHttpAdapter=x,e.HttpAdapter=A,e.HttpPaginator=w,e.HttpStatement=E,e.KeepAliveOperation="keepalive",e.PACKAGE_NAME=T,e.RestRepository=m,e.RestService=v,e.ServerEventConnector=O,e.TaskResponseParser=_,e.VERSION=N,e.suffixMethod=S},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/core"),require("@decaf-ts/decoration"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decorator-validation"),require("tslib"),require("@decaf-ts/logging"),require("event-source-plus"),require("@decaf-ts/transactional-decorators"),require("axios")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/core","@decaf-ts/decoration","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","tslib","@decaf-ts/logging","event-source-plus","@decaf-ts/transactional-decorators","axios"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-http"]={},e.decafTsCore,e.decafTsDecoration,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.tslib,e.decafTsLogging,e.eventSourcePlus,e.decafTsTransactionalDecorators,e.axios);
2
2
  //# sourceMappingURL=for-http.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"for-http.cjs","sources":["../src/constants.ts","../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.ts","../src/event/ServerEventConnector.ts","../src/HttpDispatcher.ts","../src/adapter.ts","../src/axios/constants.ts","../src/axios/axios.ts","../src/axios/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["DecafHeaders","RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","paginateBy","key","order","ref","offset","limit","args","bookmark","log","ctxArgs","logCtx","PreparedStatementKeys","PAGE_BY","for","verbose","Model","class","params","direction","statement","name","listBy","LIST_BY","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","find","OrderDirection","ASC","FIND","page","PAGE","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","response","request","parsed","parseResponse","convertStatementResult","result","map","record","revertRecord","convertPageResult","serialization","Paginator","deserialize","isSerializedPage","data","pkAttr","pk","pkKey","columnName","fallback","id","revert","details","contextualizeArgs","Context","OperationKeys","READ","countOf","COUNT_OF","stmtArgs","maxOf","MAX_OF","minOf","MIN_OF","avgOf","AVG_OF","sumOf","SUM_OF","distinctOf","DISTINCT_OF","groupOf","GROUP_OF","__decorate","prepared","prototype","__metadata","_a","K","_b","_c","_d","_e","_f","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","size","pagePrepared","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","apply","prepare","rawStatement","ServerEventConnector","ContextualLoggedClass","cache","Map","get","has","Error","open","headers","connector","set","close","parseReceivedEvent","raw","deserializePayload","Serialization","JSON","parse","eventName","operationKey","objectId","rawPayload","payload","item","String","stateLock","Lock","ready","listeners","Set","isOpen","es","withStateLock","fn","acquire","Promise","resolve","release","getOpening","opening","setOpening","isReady","setReady","getHeaders","force","info","controller","abort","clear","delete","warn","debug","startListening","pendingOpen","openPromise","completeOpen","failOpen","EventSourcePlus","credentials","connected","reject","self","listen","onResponse","async","onRequestError","error","forEach","handler","onError","message","onResponseError","status","statusText","err","onMessage","event","onEvent","finally","ensureListening","addListener","handlers","add","then","removeListener","existed","listenerFound","HttpDispatcher","Dispatch","initialized","listening","initialize","INITIALIZATION","hasAdapter","config","events","protocol","host","eventsListenerPath","listeningUrl","URL","InternalError","getEventHeaders","e","removeConnectorListener","operation","updateObservers","catch","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","flavour","create","read","update","createAll","readAll","updateAll","deleteAll","res","wrapMethodWithContext","parsers","p","flags","model","eventHeaderResolver","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","ob","m","constr","metadata","toTableName","t","toKebabCase","toHeaders","fromCtx","correlationId","getOrUndefined","CORRELATION_ID","join","entries","v","searchParams","append","stringify","extractIdArgs","idStr","composed","split","separator","d","rawInput","Sequence","options","parseError","msg","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","propertyKey","AxiosFlavour","TaskResponseParser","PENDING_TASK","pending","pushPending","logger","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","client","body","normalizeResponseBody","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","CREATE","UPDATE","DELETE","candidate","cfg","ModelKeys","ANCHOR","ids","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
1
+ {"version":3,"file":"for-http.cjs","sources":["../src/constants.ts","../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.ts","../src/event/ServerEventConnector.ts","../src/HttpDispatcher.ts","../src/adapter.ts","../src/axios/constants.ts","../src/axios/axios.ts","../src/axios/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["DecafHeaders","RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","paginateBy","key","order","ref","offset","limit","args","bookmark","log","ctxArgs","logCtx","PreparedStatementKeys","PAGE_BY","for","verbose","Model","class","params","direction","statement","name","listBy","LIST_BY","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","find","OrderDirection","ASC","FIND","page","PAGE","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","response","request","parsed","parseResponse","convertStatementResult","result","map","record","revertRecord","convertPageResult","serialization","Paginator","deserialize","isSerializedPage","data","pkAttr","pk","pkKey","columnName","fallback","id","revert","details","contextualizeArgs","Context","OperationKeys","READ","countOf","COUNT_OF","stmtArgs","maxOf","MAX_OF","minOf","MIN_OF","avgOf","AVG_OF","sumOf","SUM_OF","distinctOf","DISTINCT_OF","groupOf","GROUP_OF","__decorate","prepared","prototype","__metadata","_a","K","_b","_c","_d","_e","_f","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","size","pagePrepared","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","apply","prepare","rawStatement","ServerEventConnector","ContextualLoggedClass","cache","Map","get","has","Error","open","headers","connector","set","close","parseReceivedEvent","raw","deserializePayload","Serialization","JSON","parse","eventName","operationKey","objectId","rawPayload","payload","item","String","stateLock","Lock","ready","listeners","Set","isOpen","es","withStateLock","fn","acquire","Promise","resolve","release","setOpening","opening","isReady","setReady","getHeaders","force","info","controller","abort","clear","delete","warn","debug","startListening","openPromise","resolveOpen","rejectOpen","owner","deferredOpen","reject","EventSourcePlus","credentials","settled","self","listen","onResponse","async","onRequestError","error","forEach","handler","onError","message","onResponseError","status","statusText","err","onMessage","event","onEvent","catch","ensureListening","addListener","handlers","add","then","removeListener","existed","listenerFound","HttpDispatcher","Dispatch","initialized","listening","initialize","INITIALIZATION","hasAdapter","config","events","protocol","host","eventsListenerPath","listeningUrl","URL","InternalError","getEventHeaders","e","removeConnectorListener","operation","updateObservers","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","flavour","create","read","update","createAll","readAll","updateAll","deleteAll","res","wrapMethodWithContext","parsers","p","flags","model","eventHeaderResolver","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","ob","m","constr","metadata","toTableName","t","toKebabCase","toHeaders","fromCtx","correlationId","getOrUndefined","CORRELATION_ID","join","entries","v","searchParams","append","stringify","extractIdArgs","idStr","composed","split","separator","d","rawInput","Sequence","options","parseError","msg","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","propertyKey","AxiosFlavour","TaskResponseParser","PENDING_TASK","pending","pushPending","logger","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","client","body","normalizeResponseBody","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","CREATE","UPDATE","DELETE","candidate","cfg","ModelKeys","ANCHOR","ids","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
package/dist/for-http.js CHANGED
@@ -1,2 +1,2 @@
1
- import{prepared as t,Repository as e,PreparedStatementKeys as s,OrderDirection as i,PersistenceKeys as r,Paginator as n,Context as a,Statement as o,UnsupportedError as c,ContextualLoggedClass as l,Dispatch as h,Adapter as d,QueryError as u,PagingError as g,MigrationError as p,ObserverError as f,AuthorizationError as y,ForbiddenError as m,ConnectionError as w}from"@decaf-ts/core";import{Decoration as v,apply as O,methodMetadata as b,Metadata as E}from"@decaf-ts/decoration";import{OperationKeys as A,InternalError as x,wrapMethodWithContext as S,NotFoundError as $,ConflictError as N,BadRequestError as R,ValidationError as T,SerializationError as C,BulkCrudOperationKeys as P}from"@decaf-ts/db-decorators";import{Model as L,Serialization as _,ModelKeys as I}from"@decaf-ts/decorator-validation";import{__decorate as q,__metadata as D}from"tslib";import{toKebabCase as F}from"@decaf-ts/logging";import{EventSourcePlus as z}from"event-source-plus";import{Lock as k}from"@decaf-ts/transactional-decorators";import{Axios as j}from"axios";var B,U,J,G,H,M,Y;class Q extends e{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}url(t,e,s){return this.adapter.url(t,e,s)}async paginateBy(t,e,i={offset:1,limit:10},...r){const{offset:n,bookmark:a,limit:o}=i,{log:c,ctxArgs:l}=(await this.logCtx(r,s.PAGE_BY,!0)).for(this.paginateBy);c.verbose(`paginating ${L.tableName(this.class)} with page size ${o}`);const h={direction:e,limit:o};return a&&(h.bookmark=a),this.statement(this.paginateBy.name,t,n,h,...l)}async listBy(t,e,...i){const{log:r,ctxArgs:n}=(await this.logCtx(i,s.LIST_BY,!0)).for(this.listBy);return r.verbose(`listing ${L.tableName(this.class)} by ${t} ${e}`),await this.statement(this.listBy.name,t,{direction:e},...n)}async findBy(t,e,...i){const{log:r,ctxArgs:n}=(await this.logCtx(i,s.FIND_BY,!0)).for(this.findBy);return r.verbose(`finding ${L.tableName(this.class)} with ${t} ${e}`),await this.statement(this.findBy.name,t,e,{},...n)}async findOneBy(t,e,...i){const{log:r,ctxArgs:n}=(await this.logCtx(i,s.FIND_ONE_BY,!0)).for(this.findOneBy);return r.verbose(`finding ${L.tableName(this.class)} with ${t} ${e}`),await this.statement(this.findOneBy.name,t,e,{},...n)}async find(t,e=i.ASC,...r){const{log:n,ctxArgs:a}=(await this.logCtx(r,s.FIND,!0)).for(this.find);return n.verbose(`finding ${L.tableName(this.class)} by default query attributes`),await this.statement(this.find.name,t,e,...a)}async page(t,e=i.ASC,r={offset:1,limit:10},...n){const{log:a,ctxArgs:o}=(await this.logCtx(n,s.PAGE,!0)).for(this.page);return a.verbose(`paging ${L.tableName(this.class)} by default query attributes`),await this.statement(this.page.name,t,e,r,...o)}async statement(t,...e){const{log:s,ctx:i,ctxArgs:n}=(await this.logCtx(e,r.STATEMENT,!0)).for(this.statement),a=n.slice(0,-1),o=a[a.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:a.pop(),l={class:this.class,args:a,method:t,params:c},h=this.adapter.toRequest(l,i);s.verbose("Executing prepared statement "+t);const d=await this.request(h,...n),u=this.adapter.parseResponse(this.class,t,d);return this.convertStatementResult(t,u,i)}convertStatementResult(t,e,i){return e?t===s.FIND||t===s.LIST_BY||t===s.FIND_BY?Array.isArray(e)?e.map(t=>this.revertRecord(t,i)):e:t===s.FIND_ONE_BY?this.revertRecord(e,i):t===s.PAGE||t===s.PAGE_BY?this.convertPageResult(e,i):e:e}convertPageResult(t,e){if(!t)return t;let s=t;if("string"==typeof s)try{s=n.deserialize(s)}catch{return t}return n.isSerializedPage(s)?{...s,data:s.data.map(t=>this.revertRecord(t,e))}:t}revertRecord(t,e){if(!t)return t;if(t instanceof this.class)return t;const s=L.pk(this.class),i=L.columnName(this.class,s),r=s??i,n=t[i]??t[r];if(void 0!==n)try{return this.adapter.revert(t,this.class,n,void 0,e)}catch{}return Object.assign(new this.class,t)}async request(t,...e){let s;s=e.length&&e[e.length-1]instanceof a?this.logCtx(e,this.request):(await this.logCtx(e,A.READ,!0)).for(this.request);const{ctxArgs:i}=s;return this.adapter.request(t,...i)}async countOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.COUNT_OF,!0)).for(this.countOf);i.verbose(`counting ${L.tableName(this.class)}${t?" by "+t:""}`);const n=t?[t,{}]:[{}];return await this.statement(this.countOf.name,...n,...r)}async maxOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.MAX_OF,!0)).for(this.maxOf);return i.verbose(`finding max of ${t} in ${L.tableName(this.class)}`),await this.statement(this.maxOf.name,t,{},...r)}async minOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.MIN_OF,!0)).for(this.minOf);return i.verbose(`finding min of ${t} in ${L.tableName(this.class)}`),await this.statement(this.minOf.name,t,{},...r)}async avgOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.AVG_OF,!0)).for(this.avgOf);return i.verbose(`calculating avg of ${t} in ${L.tableName(this.class)}`),await this.statement(this.avgOf.name,t,{},...r)}async sumOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.SUM_OF,!0)).for(this.sumOf);return i.verbose(`calculating sum of ${t} in ${L.tableName(this.class)}`),await this.statement(this.sumOf.name,t,{},...r)}async distinctOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.DISTINCT_OF,!0)).for(this.distinctOf);return i.verbose(`finding distinct values of ${t} in ${L.tableName(this.class)}`),await this.statement(this.distinctOf.name,t,{},...r)}async groupOf(t,...e){const{log:i,ctxArgs:r}=(await this.logCtx(e,s.GROUP_OF,!0)).for(this.groupOf);return i.verbose(`grouping ${L.tableName(this.class)} by ${t}`),await this.statement(this.groupOf.name,t,{},...r)}}q([t(),D("design:type",Function),D("design:paramtypes",[String,String,void 0]),D("design:returntype",Promise)],Q.prototype,"find",null),q([t(),D("design:type",Function),D("design:paramtypes",[String,String,Object,void 0]),D("design:returntype",Promise)],Q.prototype,"page",null),q([t(),D("design:type",Function),D("design:paramtypes",[Object,void 0]),D("design:returntype",Promise)],Q.prototype,"countOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(B="undefined"!=typeof K&&K)?B:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"maxOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(U="undefined"!=typeof K&&K)?U:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"minOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(J="undefined"!=typeof K&&K)?J:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"avgOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(G="undefined"!=typeof K&&K)?G:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"sumOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(H="undefined"!=typeof K&&K)?H:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"distinctOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(M="undefined"!=typeof K&&K)?M:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"groupOf",null);class V extends Q{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return L.tableName(this.class)+" REST service"}}class X extends o{constructor(t,e){super(t,e)}build(){throw new c("This method is only called is prepared statements are not used. If so, a dedicated implementation for the native queries used is required")}parseCondition(t,...e){throw new c("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class W extends n{constructor(t,e,s,i){super(t,e,s,i)}async pagePrepared(t,...i){const r=e.forModel(this.clazz,this.adapter.alias),n=this.query,{method:a,args:o,params:l}=n,h=RegExp(`^${s.FIND_BY}|${s.LIST_BY}`,"gi");if(!a.match(h))throw new c(`Method ${a} is not supported for pagination`);h.lastIndex=0;const d=[a.replace(h,s.PAGE_BY),...o],u={direction:l.direction,limit:this.size,offset:t,bookmark:this._bookmark};d.push(u);const g=await r.statement(...d,...i);return this.apply(g)}prepare(t){throw new c("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(t=1,...e){return super.page(t,...e)}}class Z extends l{static{this.cache=new Map}static get(t){if(this.cache.has(t))return this.cache.get(t);throw Error(`Server event connector not found for URL '${t}'. Did you forget to call open()?`)}static open(t,e){if(this.cache.has(t))return this.cache.get(t);const s=new Z(t,e);return this.cache.set(t,s),this.cache.get(t)}static close(t){this.cache.has(t)&&this.cache.get(t).close()}static parseReceivedEvent(t){const e=t=>{if("string"!=typeof t)return t;try{return _.deserialize(t)}catch{try{return JSON.parse(t)}catch{return t}}};try{const s="string"==typeof t?JSON.parse(t):t;if(!Array.isArray(s)||3>s.length)return null;const[i,r,n,a]=s;if("string"!=typeof i)return null;let o;return o=Array.isArray(a)?a.map(t=>e(t)):e(a),[i,r+"",n,o]}catch{return null}}constructor(t,e){super(),this.url=t,this.headers=e,this.stateLock=new k,this.ready=!1,this.listeners=new Set}isOpen(){return void 0!==this.es}async withStateLock(t){await this.stateLock.acquire();try{return await Promise.resolve(t())}finally{this.stateLock.release()}}async getOpening(){return this.withStateLock(()=>this.opening)}async setOpening(t){await this.withStateLock(()=>{this.opening=t})}async isReady(){return this.withStateLock(()=>this.ready)}async setReady(t){await this.withStateLock(()=>{this.ready=t})}async getHeaders(){let t=this.headers;return"function"==typeof this.headers&&(t=await Promise.resolve(this.headers())),t||{}}close(t=!1){const e=this.log.for(this.close);if(this.es)if(0>=this.listeners.size||t)try{e.info("Closing EventSource connection for listening URL "+this.url),this.controller?.abort()}finally{this.controller=void 0,this.es=void 0,this.setReady(!1),this.setOpening(void 0),this.listeners.clear(),Z.cache.delete(this.url),e.info(`EventSource connection ${this.url} closed and removed from pool`)}else e.warn(`Skipping EventSource connection close ${this.url} \u2014 ${this.listeners.size} active listener(s) remaining.`);else e.debug("Skipping EventSource close \u2014 no open connection to "+this.url)}async startListening(){const t=this.log.for(this.startListening);if(this.es&&await this.isReady())return void t.info(`Listening address ${this.url} is already in the pool and listening. Skipping opening a new connection.`,{url:this.url,listeners:this.listeners.size});const e=await this.getOpening();if(e)return t.debug("Connection open already in progress for "+this.url,{url:this.url,listeners:this.listeners.size}),void await e;const s=(async()=>{t.info("Opening EventSource connection to "+this.url);const e=await this.getHeaders();let s,i;this.es=new z(this.url,{...e&&{headers:e},credentials:"include"}),await this.setReady(!1);const r=new Promise((t,e)=>{s=t,i=e}),n=this;this.controller=this.es.listen({onResponse:async()=>{await n.setReady(!0),t.info(`Connected to ${this.url}. Ready to receive events`),s()},onRequestError:({error:e})=>{t.error("Failed to establish EventSource connection",{url:this.url,error:e}),n.setReady(!1),i(e),n.listeners.forEach(t=>t.onError((e?.message??e)+""))},onResponseError:({response:e})=>{const s=e?.status,r=e?.statusText;t.error("Listening failed with HTTP error response",{url:this.url,status:s,statusText:r});const a=Error(`HTTP ${s??"unknown"} ${r??"error"}`);n.setReady(!1),i(a),n.listeners.forEach(t=>t.onError(a))},onMessage:e=>{if("heartbeat"===e.event)return void t.debug("Refresh connection. Heartbeat received.");const s=e&&"object"==typeof e&&"data"in e?e.data:e,i=Z.parseReceivedEvent(s);if(i)for(const e of n.listeners)try{e.onEvent(i)}catch(e){t.error("Listener handler failed on event",{err:e})}else t.warn("Failed to parse SSE message",{url:this.url,raw:s})}}),await r})().finally(()=>{this.setOpening(void 0)});await this.setOpening(s);try{await s}catch(t){throw this.controller=void 0,this.es=void 0,await this.setReady(!1),t}}async ensureListening(){await this.startListening()}addListener(t){const e=this.log.for(this.addListener);return e.info(`Registering listener for connection ${this.url} \u2014 ${this.listeners.size} active listener(s)`),this.listeners.add(t),this.ensureListening().then(()=>{e.info(`Listener registered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)}),()=>this.removeListener(t)}removeListener(t){const e=this.log.for(this.removeListener),s=this.listeners.has(t);e.info(`Unregistering listener for connection ${this.url}. Current active listeners: ${this.listeners.size}`,{listenerFound:s}),s&&(this.listeners.delete(t),e.debug(`Listener unregistered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)),0===this.listeners.size&&(e.info(`No listeners remaining. Closing EventSource connection ${this.url}.`,{url:this.url,listeners:this.listeners.size}),this.close())}}class tt extends h{constructor(){super(...arguments),this.initialized=!1,this.listening=!1}async initialize(...t){const{log:e,ctxArgs:s}=(await this.logCtx(t,r.INITIALIZATION,!0)).for(this.initialize);this.adapter?(e.info(`Initializing ${this.adapter}'s event Dispatch, but not listening yet.`),this.initialized=!0,await this.startListening(...s),e.info(`HttpDispatcher initialized for adapter ${this.adapter}.`)):e.verbose("No adapter observed for dispatch; skipping initialization")}async startListening(...t){const{log:e}=this.logCtx(t,this.startListening);if(!this.initialized||!this.adapter)throw e.error("Cannot start listening: dispatcher is not initialized or adapter is missing",{initialized:this.initialized,hasAdapter:!!this.adapter}),Error("Cannot start listening before call initialize()");if(!this.adapter.config.events)return void e.warn("SSe events disabled");this.listening&&e.warn("startListening called but dispatcher is already listening",{adapter:this.adapter+""});const{protocol:s,host:i,eventsListenerPath:r}=this.adapter.config;if(!r)throw e.error("Cannot start listening: no eventsListenerPath specified",{protocol:s,host:i}),Error("No eventsListenerPath specified");const n=new URL(r,`${s}://${i}`).toString();e.info("Opening ServerEventConnector for url: "+n),this.connector=Z.open(n,async()=>{if(!this.adapter)throw new x("Adapter not initialized");try{return this.adapter.getEventHeaders()}catch(t){throw new x("Failed to get event headers: "+t)}}),e.debug("ServerEventConnector opened successfully for url: "+n),this.removeConnectorListener?.(),this.removeConnectorListener=this.connector.addListener({onEvent:async t=>{const[e,s,i,...r]=t,{log:n,ctxArgs:a}=(await this.logCtx(r,s,!0)).for("onEvent");super.updateObservers(e,s,i,...a).catch(t=>n.error("ServerEventConnector failed to updateObservers",t))},onError:t=>{e.error("ServerEventConnector failed to dispatch event",{error:t,listeningUrl:n,adapter:this.adapter+""})}}),await this.connector.ensureListening(),this.listening=!0,e.info(`HttpDispatcher is now listening at ${n}.`)}async close(...t){this.removeConnectorListener?.(),this.removeConnectorListener=void 0,this.connector?.close(),this.listening=!1}}(t=>{t.PENDING_TASK="x-pending-task",t.CORRELATION_ID="x-correlation-id"})(Y||(Y={}));const et="keepalive";function st(t,e,s,i){const r=i||e.name;t[r]=new Proxy(t[r],{apply:async(t,e,i)=>{let r=t.call(e,...i);return r instanceof Promise&&(r=await r),r=s.call(e,r),r instanceof Promise&&(r=await r),r}})}class it extends d{constructor(t,e,s){super(Object.assign({},t,{headers:void 0===t.headers||t.headers,events:void 0===t.events||t.events}),e,s);const i=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(t=>{st(this,t,e=>i.parseResponse.call(i,void 0,t.name,e),t.name)}),S(this,(...t)=>t,this.request,(t,e)=>{const s=i.config.parsers;return s?(s.forEach(s=>s(t,e)),t):t},this.request.name)}async flags(t,e,s){return super.flags(t,e,Object.assign({headers:s.headers??{}},s))}Dispatch(){return new tt}async getEventHeaders(){return this.config.eventHeaderResolver&&await Promise.resolve(this.config.eventHeaderResolver)||{}}repository(){return V}prepare(t,...e){const{log:s}=this.logCtx(e,this.prepare),i=Object.assign({},t);return t[r.METADATA]&&(s.silly("Passing along persistence metadata for "+t[r.METADATA]),Object.defineProperty(i,r.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:t[r.METADATA]})),{record:t,id:t[L.pk(t.constructor)]}}revert(t,e,s,...i){const{log:n}=this.logCtx(i,this.revert),a={},o="string"==typeof e?L.build(a,e):new e(a);n.silly(`Rebuilding model ${o.constructor.name} id ${s}`);const c="string"==typeof e?L.get(e):e;if(!c)throw new x("Failed to retrieve model constructor for "+e);const l=new c(t),h=t[r.METADATA];return h&&(n.silly(`Passing along ${this.flavour} persistence metadata for ${o.constructor.name} id ${s}: ${h}`),Object.defineProperty(l,r.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:h})),l}toTableName(t){return"string"==typeof t?t:F(L.tableName(t))}toHeaders(t){const e={};if(this.config.headers){const s=t.getOrUndefined("correlationId");s&&(e[Y.CORRELATION_ID]=s)}return{...e,...t.getOrUndefined("headers")||{}}}url(t,e,s){s||e&&!Array.isArray(e)&&(s=e,e=[]),t=this.toTableName(t);const i=new URL(`${this.config.protocol}://${this.config.host}/${t}${e&&e.length?"/"+e.join("/"):""}`);return s&&Object.entries(s).forEach(([t,e])=>{Array.isArray(e)?e.forEach(e=>i.searchParams.append(t,e.toString())):"object"==typeof e?i.searchParams.append(t,JSON.stringify(e)):void 0!==e&&i.searchParams.append(t,e.toString())}),i.toString()}extractIdArgs(t,e){const s=e.toString();if("string"==typeof t)return[s];const i=L.composed(t,L.pk(t));return i?s.split(i.separator):[s]}parseResponse(t,e,s){return t&&n.isSerializedPage(s)?Object.assign({},s,{data:s.data.map(e=>new t(e))}):s}raw(t,...e){const{ctxArgs:s,ctx:i}=this.logCtx(e,this.raw),r=this.toRequest(t,i);return this.request(r,...s)}Sequence(t){return Promise.reject(new c("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(t){return new X(this,t)}Paginator(t,e,s){return new W(this,t,e,s)}parseCondition(t){throw new c("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(t,...e){const s="string"==typeof t?t:t.message;return s.includes($.name)||s.includes("404")?new $(t):s.includes(N.name)||s.includes("409")?new N(t):s.includes(R.name)||s.includes("400")?new R(t):s.includes(T.name)||s.includes("422")?new T(t):s.includes(u.name)?new u(t):s.includes(g.name)?new g(t):s.includes(c.name)?new c(t):s.includes(p.name)?new p(t):s.includes(f.name)?new f(t):s.includes(y.name)?new y(t):s.includes(m.name)?new m(t):s.includes(w.name)?new w(t):s.includes(C.name)?new C(t):new x(t)}static decoration(){super.decoration(),v.for(r.QUERY).define({decorator:e=>(s,i,n)=>O(b(E.key(r.QUERY,i),e),t(),(t,e,s)=>{s.value=new Proxy(s.value,{async apply(t,e,s){const r=e,{log:n,ctxArgs:a}=(await r.logCtx(s,A.READ,!0)).for(i);return n.verbose("Running prepared statement "+t.name),n.debug("With args: "+JSON.stringify(s,null,2)),e.statement(t.name,...a)}})})(s,i,n)}).apply()}}it.decoration();const rt="axios",nt=(t,e)=>{if(t.headers&&t.headers[Y.PENDING_TASK]){let s;try{s=JSON.parse(t.headers[Y.PENDING_TASK]),Object.entries(s).forEach(([t,s])=>{s.forEach(s=>e.pushPending(t,s))})}catch(s){e.logger.for(nt).error(`Failed to parse pending tasks header ${t.headers[Y.PENDING_TASK]}: ${s}`)}}};class at extends it{constructor(t,e){super(t,rt,e)}getClient(){return new j({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(t,e){let s,i;t instanceof a?(i=t,s=void 0):(s=t,i=e);const n={};return i&&(n.headers={...n.headers||{},...this.toHeaders(i)}),s&&(n.method="GET",n.url=this.url(s.class,[r.STATEMENT,s.method,...s.args||[]],s.params)),n}async request(t,...e){let s={};try{const{ctx:t}=this.logCtx(e,this.request);s=this.toRequest(t)}catch(t){}return await this.client.request(Object.assign({},t,s))}parseResponse(t,e,i){if(!i.status&&e!==r.STATEMENT)throw new x("this should be impossible");if(i.status>=400)throw this.parseError(i.error||i.status);const n=this.normalizeResponseBody(i);switch(e){case P.CREATE_ALL:case P.READ_ALL:case P.UPDATE_ALL:case P.DELETE_ALL:case A.CREATE:case A.READ:case A.UPDATE:case A.DELETE:return n;case s.FIND:case s.PAGE:case s.FIND_BY:case s.LIST_BY:case s.PAGE_BY:case s.FIND_ONE_BY:case r.STATEMENT:return super.parseResponse(t,e,n);case s.COUNT_OF:case s.MAX_OF:case s.MIN_OF:case s.AVG_OF:case s.SUM_OF:case s.DISTINCT_OF:return n;case s.GROUP_OF:if(t&&"object"==typeof n&&null!==n){const e={};for(const[s,i]of Object.entries(n))e[s]=Array.isArray(i)?i.map(e=>new t(e)):i;return e}return n;default:return n}}normalizeResponseBody(t){if(!t)return t;const e=void 0!==t.body?t.body:void 0!==t.data?t.data:t;if("string"==typeof e)try{return JSON.parse(e)}catch{return e}return e}async create(t,e,s,...i){const{log:r,ctx:n}=this.logCtx(i,this.create);try{const i=this.url(t,this.extractIdArgs(t,e)),a=this.toRequest(n);return r.debug(`POSTing to ${i} with ${JSON.stringify(s)} and cfg ${JSON.stringify(a)}`),await this.request({url:i,method:"POST",data:JSON.stringify(Object.assign({},s,{[I.ANCHOR]:t.name})),...a},n)}catch(t){throw this.parseError(t)}}async createAll(t,e,s,...i){const{log:r,ctx:n}=this.logCtx(i,this.createAll);try{const e=this.url(t,["bulk"]),i=this.toRequest(n);return r.debug(`POSTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(i)}`),this.request({url:e,method:"POST",data:JSON.stringify(s.map(e=>Object.assign({},e,{[I.ANCHOR]:t.name}))),...i},n)}catch(t){throw this.parseError(t)}}async read(t,e,...s){const{log:i,ctx:r}=this.logCtx(s,this.read);try{const s=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(r);return i.debug(`GETing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"GET",...n},r)}catch(t){throw this.parseError(t)}}async readAll(t,e,...s){const{log:i,ctx:r}=this.logCtx(s,this.readAll);try{const s=this.url(t,["bulk"],{ids:e}),n=this.toRequest(r);return i.debug(`GETing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"GET",...n},r)}catch(t){throw this.parseError(t)}}async update(t,e,s,...i){const{log:r,ctx:n}=this.logCtx(i,this.update);try{const i=this.url(t,this.extractIdArgs(t,e)),a=this.toRequest(n);return r.debug(`PUTing to ${i} with ${JSON.stringify(s)} and cfg ${JSON.stringify(a)}`),await this.request({url:i,method:"PUT",data:JSON.stringify(Object.assign({},s,{[I.ANCHOR]:t.name})),...a},n)}catch(t){throw this.parseError(t)}}async updateAll(t,e,s,...i){const{log:r,ctx:n}=this.logCtx(i,this.updateAll);try{const e=this.url(t,["bulk"]),i=this.toRequest(n);return r.debug(`PUTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(i)}`),this.request({url:e,method:"PUT",data:JSON.stringify(s.map(e=>Object.assign({},e,{[I.ANCHOR]:t.name}))),...i},n)}catch(t){throw this.parseError(t)}}async delete(t,e,...s){const{log:i,ctx:r}=this.logCtx(s,this.delete);try{const s=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(r);return i.debug(`DELETEing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"DELETE",...n},r)}catch(t){throw this.parseError(t)}}async deleteAll(t,e,...s){const{log:i,ctx:r}=this.logCtx(s,this.delete);try{const s=this.url(t,["bulk"],{ids:e}),n=this.toRequest(r);return i.debug(`DELETEing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"DELETE",...n},r)}catch(t){throw this.parseError(t)}}parseError(t,...e){return it.parseError(t,...e)}}at.decoration();const ot="##VERSION##",ct="##PACKAGE##";E.registerLibrary(ct,ot);export{rt as AxiosFlavour,at as AxiosHttpAdapter,Y as DecafHeaders,it as HttpAdapter,W as HttpPaginator,X as HttpStatement,et as KeepAliveOperation,ct as PACKAGE_NAME,Q as RestRepository,V as RestService,Z as ServerEventConnector,nt as TaskResponseParser,ot as VERSION,st as suffixMethod};
1
+ import{prepared as t,Repository as e,PreparedStatementKeys as s,OrderDirection as r,PersistenceKeys as i,Paginator as n,Context as a,Statement as o,UnsupportedError as c,ContextualLoggedClass as l,Dispatch as h,Adapter as d,QueryError as u,PagingError as g,MigrationError as p,ObserverError as f,AuthorizationError as y,ForbiddenError as m,ConnectionError as w}from"@decaf-ts/core";import{Decoration as v,apply as b,methodMetadata as O,Metadata as E}from"@decaf-ts/decoration";import{OperationKeys as A,InternalError as x,wrapMethodWithContext as S,NotFoundError as $,ConflictError as N,BadRequestError as R,ValidationError as T,SerializationError as C,BulkCrudOperationKeys as P}from"@decaf-ts/db-decorators";import{Model as L,Serialization as _,ModelKeys as I}from"@decaf-ts/decorator-validation";import{__decorate as q,__metadata as D}from"tslib";import{toKebabCase as F}from"@decaf-ts/logging";import{EventSourcePlus as z}from"event-source-plus";import{Lock as j}from"@decaf-ts/transactional-decorators";import{Axios as k}from"axios";var B,U,J,G,H,M,Y;class Q extends e{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}url(t,e,s){return this.adapter.url(t,e,s)}async paginateBy(t,e,r={offset:1,limit:10},...i){const{offset:n,bookmark:a,limit:o}=r,{log:c,ctxArgs:l}=(await this.logCtx(i,s.PAGE_BY,!0)).for(this.paginateBy);c.verbose(`paginating ${L.tableName(this.class)} with page size ${o}`);const h={direction:e,limit:o};return a&&(h.bookmark=a),this.statement(this.paginateBy.name,t,n,h,...l)}async listBy(t,e,...r){const{log:i,ctxArgs:n}=(await this.logCtx(r,s.LIST_BY,!0)).for(this.listBy);return i.verbose(`listing ${L.tableName(this.class)} by ${t} ${e}`),await this.statement(this.listBy.name,t,{direction:e},...n)}async findBy(t,e,...r){const{log:i,ctxArgs:n}=(await this.logCtx(r,s.FIND_BY,!0)).for(this.findBy);return i.verbose(`finding ${L.tableName(this.class)} with ${t} ${e}`),await this.statement(this.findBy.name,t,e,{},...n)}async findOneBy(t,e,...r){const{log:i,ctxArgs:n}=(await this.logCtx(r,s.FIND_ONE_BY,!0)).for(this.findOneBy);return i.verbose(`finding ${L.tableName(this.class)} with ${t} ${e}`),await this.statement(this.findOneBy.name,t,e,{},...n)}async find(t,e=r.ASC,...i){const{log:n,ctxArgs:a}=(await this.logCtx(i,s.FIND,!0)).for(this.find);return n.verbose(`finding ${L.tableName(this.class)} by default query attributes`),await this.statement(this.find.name,t,e,...a)}async page(t,e=r.ASC,i={offset:1,limit:10},...n){const{log:a,ctxArgs:o}=(await this.logCtx(n,s.PAGE,!0)).for(this.page);return a.verbose(`paging ${L.tableName(this.class)} by default query attributes`),await this.statement(this.page.name,t,e,i,...o)}async statement(t,...e){const{log:s,ctx:r,ctxArgs:n}=(await this.logCtx(e,i.STATEMENT,!0)).for(this.statement),a=n.slice(0,-1),o=a[a.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:a.pop(),l={class:this.class,args:a,method:t,params:c},h=this.adapter.toRequest(l,r);s.verbose("Executing prepared statement "+t);const d=await this.request(h,...n),u=this.adapter.parseResponse(this.class,t,d);return this.convertStatementResult(t,u,r)}convertStatementResult(t,e,r){return e?t===s.FIND||t===s.LIST_BY||t===s.FIND_BY?Array.isArray(e)?e.map(t=>this.revertRecord(t,r)):e:t===s.FIND_ONE_BY?this.revertRecord(e,r):t===s.PAGE||t===s.PAGE_BY?this.convertPageResult(e,r):e:e}convertPageResult(t,e){if(!t)return t;let s=t;if("string"==typeof s)try{s=n.deserialize(s)}catch{return t}return n.isSerializedPage(s)?{...s,data:s.data.map(t=>this.revertRecord(t,e))}:t}revertRecord(t,e){if(!t)return t;if(t instanceof this.class)return t;const s=L.pk(this.class),r=L.columnName(this.class,s),i=s??r,n=t[r]??t[i];if(void 0!==n)try{return this.adapter.revert(t,this.class,n,void 0,e)}catch{}return Object.assign(new this.class,t)}async request(t,...e){let s;s=e.length&&e[e.length-1]instanceof a?this.logCtx(e,this.request):(await this.logCtx(e,A.READ,!0)).for(this.request);const{ctxArgs:r}=s;return this.adapter.request(t,...r)}async countOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.COUNT_OF,!0)).for(this.countOf);r.verbose(`counting ${L.tableName(this.class)}${t?" by "+t:""}`);const n=t?[t,{}]:[{}];return await this.statement(this.countOf.name,...n,...i)}async maxOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.MAX_OF,!0)).for(this.maxOf);return r.verbose(`finding max of ${t} in ${L.tableName(this.class)}`),await this.statement(this.maxOf.name,t,{},...i)}async minOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.MIN_OF,!0)).for(this.minOf);return r.verbose(`finding min of ${t} in ${L.tableName(this.class)}`),await this.statement(this.minOf.name,t,{},...i)}async avgOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.AVG_OF,!0)).for(this.avgOf);return r.verbose(`calculating avg of ${t} in ${L.tableName(this.class)}`),await this.statement(this.avgOf.name,t,{},...i)}async sumOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.SUM_OF,!0)).for(this.sumOf);return r.verbose(`calculating sum of ${t} in ${L.tableName(this.class)}`),await this.statement(this.sumOf.name,t,{},...i)}async distinctOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.DISTINCT_OF,!0)).for(this.distinctOf);return r.verbose(`finding distinct values of ${t} in ${L.tableName(this.class)}`),await this.statement(this.distinctOf.name,t,{},...i)}async groupOf(t,...e){const{log:r,ctxArgs:i}=(await this.logCtx(e,s.GROUP_OF,!0)).for(this.groupOf);return r.verbose(`grouping ${L.tableName(this.class)} by ${t}`),await this.statement(this.groupOf.name,t,{},...i)}}q([t(),D("design:type",Function),D("design:paramtypes",[String,String,void 0]),D("design:returntype",Promise)],Q.prototype,"find",null),q([t(),D("design:type",Function),D("design:paramtypes",[String,String,Object,void 0]),D("design:returntype",Promise)],Q.prototype,"page",null),q([t(),D("design:type",Function),D("design:paramtypes",[Object,void 0]),D("design:returntype",Promise)],Q.prototype,"countOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(B="undefined"!=typeof K&&K)?B:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"maxOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(U="undefined"!=typeof K&&K)?U:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"minOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(J="undefined"!=typeof K&&K)?J:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"avgOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(G="undefined"!=typeof K&&K)?G:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"sumOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(H="undefined"!=typeof K&&K)?H:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"distinctOf",null),q([t(),D("design:type",Function),D("design:paramtypes",["function"==typeof(M="undefined"!=typeof K&&K)?M:Object,void 0]),D("design:returntype",Promise)],Q.prototype,"groupOf",null);class V extends Q{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return L.tableName(this.class)+" REST service"}}class X extends o{constructor(t,e){super(t,e)}build(){throw new c("This method is only called is prepared statements are not used. If so, a dedicated implementation for the native queries used is required")}parseCondition(t,...e){throw new c("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class W extends n{constructor(t,e,s,r){super(t,e,s,r)}async pagePrepared(t,...r){const i=e.forModel(this.clazz,this.adapter.alias),n=this.query,{method:a,args:o,params:l}=n,h=RegExp(`^${s.FIND_BY}|${s.LIST_BY}`,"gi");if(!a.match(h))throw new c(`Method ${a} is not supported for pagination`);h.lastIndex=0;const d=[a.replace(h,s.PAGE_BY),...o],u={direction:l.direction,limit:this.size,offset:t,bookmark:this._bookmark};d.push(u);const g=await i.statement(...d,...r);return this.apply(g)}prepare(t){throw new c("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(t=1,...e){return super.page(t,...e)}}class Z extends l{static{this.cache=new Map}static get(t){if(this.cache.has(t))return this.cache.get(t);throw Error(`Server event connector not found for URL '${t}'. Did you forget to call open()?`)}static open(t,e){if(this.cache.has(t))return this.cache.get(t);const s=new Z(t,e);return this.cache.set(t,s),this.cache.get(t)}static close(t){this.cache.has(t)&&this.cache.get(t).close()}static parseReceivedEvent(t){const e=t=>{if("string"!=typeof t)return t;try{return _.deserialize(t)}catch{try{return JSON.parse(t)}catch{return t}}};try{const s="string"==typeof t?JSON.parse(t):t;if(!Array.isArray(s)||3>s.length)return null;const[r,i,n,a]=s;if("string"!=typeof r)return null;let o;return o=Array.isArray(a)?a.map(t=>e(t)):e(a),[r,i+"",n,o]}catch{return null}}constructor(t,e){super(),this.url=t,this.headers=e,this.stateLock=new j,this.ready=!1,this.listeners=new Set}isOpen(){return void 0!==this.es}async withStateLock(t){await this.stateLock.acquire();try{return await Promise.resolve(t())}finally{this.stateLock.release()}}async setOpening(t){await this.withStateLock(()=>{this.opening=t})}async isReady(){return this.withStateLock(()=>this.ready)}async setReady(t){await this.withStateLock(()=>{this.ready=t})}async getHeaders(){let t=this.headers;return"function"==typeof this.headers&&(t=await Promise.resolve(this.headers())),t||{}}close(t=!1){const e=this.log.for(this.close);if(this.es)if(0>=this.listeners.size||t)try{e.info("Closing EventSource connection for listening URL "+this.url),this.controller?.abort()}finally{this.controller=void 0,this.es=void 0,this.setReady(!1),this.setOpening(void 0),this.listeners.clear(),Z.cache.delete(this.url),e.info(`EventSource connection ${this.url} closed and removed from pool`)}else e.warn(`Skipping EventSource connection close ${this.url} \u2014 ${this.listeners.size} active listener(s) remaining.`);else e.debug("Skipping EventSource close \u2014 no open connection to "+this.url)}async startListening(){const t=this.log.for(this.startListening);let e,s,r,i=!1;const n=new Promise((t,e)=>{s=t,r=e});if(await this.withStateLock(()=>{this.es&&this.ready?e=Promise.resolve():this.opening?e=this.opening:(this.ready=!1,this.opening=n,e=n,i=!0)}),!i)return t.debug("Connection open already in progress for "+this.url,{url:this.url,listeners:this.listeners.size}),void await e;(async()=>{t.info("Opening EventSource connection to "+this.url);const e=await this.getHeaders();this.es=new z(this.url,{...e&&{headers:e},credentials:"include"}),await this.setReady(!1);let i=!1;const n=this;this.controller=this.es.listen({onResponse:async()=>{i||(i=!0,await n.setReady(!0),t.info(`Connected to ${this.url}. Ready to receive events`),s())},onRequestError:({error:e})=>{i||(i=!0,t.error("Failed to establish EventSource connection",{url:this.url,error:e}),n.setReady(!1),r(e),n.listeners.forEach(t=>t.onError((e?.message??e)+"")))},onResponseError:({response:e})=>{if(i)return;i=!0;const s=e?.status,a=e?.statusText;t.error("Listening failed with HTTP error response",{url:this.url,status:s,statusText:a});const o=Error(`HTTP ${s??"unknown"} ${a??"error"}`);n.setReady(!1),r(o),n.listeners.forEach(t=>t.onError(o))},onMessage:e=>{if("heartbeat"===e.event)return void t.debug("Refresh connection. Heartbeat received.");const s=e&&"object"==typeof e&&"data"in e?e.data:e,r=Z.parseReceivedEvent(s);if(r)for(const e of n.listeners)try{e.onEvent(r)}catch(e){t.error("Listener handler failed on event",{err:e})}else t.warn("Failed to parse SSE message",{url:this.url,raw:s})}})})().catch(async t=>{this.controller=void 0,this.es=void 0,await this.setReady(!1),r(t)});try{await e}finally{await this.setOpening(void 0)}}async ensureListening(){await this.startListening()}addListener(t){const e=this.log.for(this.addListener);return e.info(`Registering listener for connection ${this.url} \u2014 ${this.listeners.size} active listener(s)`),this.listeners.add(t),this.ensureListening().then(()=>{e.info(`Listener registered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)}),()=>this.removeListener(t)}removeListener(t){const e=this.log.for(this.removeListener),s=this.listeners.has(t);e.info(`Unregistering listener for connection ${this.url}. Current active listeners: ${this.listeners.size}`,{listenerFound:s}),s&&(this.listeners.delete(t),e.debug(`Listener unregistered for connection ${this.url} \u2014 total listener(s): ${this.listeners.size}`)),0===this.listeners.size&&(e.info(`No listeners remaining. Closing EventSource connection ${this.url}.`,{url:this.url,listeners:this.listeners.size}),this.close())}}class tt extends h{constructor(){super(...arguments),this.initialized=!1,this.listening=!1}async initialize(...t){const{log:e,ctxArgs:s}=(await this.logCtx(t,i.INITIALIZATION,!0)).for(this.initialize);this.adapter?(e.info(`Initializing ${this.adapter}'s event Dispatch, but not listening yet.`),this.initialized=!0,await this.startListening(...s),e.info(`HttpDispatcher initialized for adapter ${this.adapter}.`)):e.verbose("No adapter observed for dispatch; skipping initialization")}async startListening(...t){const{log:e}=this.logCtx(t,this.startListening);if(!this.initialized||!this.adapter)throw e.error("Cannot start listening: dispatcher is not initialized or adapter is missing",{initialized:this.initialized,hasAdapter:!!this.adapter}),Error("Cannot start listening before call initialize()");if(!this.adapter.config.events)return void e.warn("SSe events disabled");this.listening&&e.warn("startListening called but dispatcher is already listening",{adapter:this.adapter+""});const{protocol:s,host:r,eventsListenerPath:i}=this.adapter.config;if(!i)throw e.error("Cannot start listening: no eventsListenerPath specified",{protocol:s,host:r}),Error("No eventsListenerPath specified");const n=new URL(i,`${s}://${r}`).toString();e.info("Opening ServerEventConnector for url: "+n),this.connector=Z.open(n,async()=>{if(!this.adapter)throw new x("Adapter not initialized");try{return this.adapter.getEventHeaders()}catch(t){throw new x("Failed to get event headers: "+t)}}),e.debug("ServerEventConnector opened successfully for url: "+n),this.removeConnectorListener?.(),this.removeConnectorListener=this.connector.addListener({onEvent:async t=>{const[e,s,r,...i]=t,{log:n,ctxArgs:a}=(await this.logCtx(i,s,!0)).for("onEvent");super.updateObservers(e,s,r,...a).catch(t=>n.error("ServerEventConnector failed to updateObservers",t))},onError:t=>{e.error("ServerEventConnector failed to dispatch event",{error:t,listeningUrl:n,adapter:this.adapter+""})}}),await this.connector.ensureListening(),this.listening=!0,e.info(`HttpDispatcher is now listening at ${n}.`)}async close(...t){this.removeConnectorListener?.(),this.removeConnectorListener=void 0,this.connector?.close(),this.listening=!1}}(t=>{t.PENDING_TASK="x-pending-task",t.CORRELATION_ID="x-correlation-id"})(Y||(Y={}));const et="keepalive";function st(t,e,s,r){const i=r||e.name;t[i]=new Proxy(t[i],{apply:async(t,e,r)=>{let i=t.call(e,...r);return i instanceof Promise&&(i=await i),i=s.call(e,i),i instanceof Promise&&(i=await i),i}})}class rt extends d{constructor(t,e,s){super(Object.assign({},t,{headers:void 0===t.headers||t.headers,events:void 0===t.events||t.events}),e,s);const r=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(t=>{st(this,t,e=>r.parseResponse.call(r,void 0,t.name,e),t.name)}),S(this,(...t)=>t,this.request,(t,e)=>{const s=r.config.parsers;return s?(s.forEach(s=>s(t,e)),t):t},this.request.name)}async flags(t,e,s){return super.flags(t,e,Object.assign({headers:s.headers??{}},s))}Dispatch(){return new tt}async getEventHeaders(){return this.config.eventHeaderResolver&&await Promise.resolve(this.config.eventHeaderResolver)||{}}repository(){return V}prepare(t,...e){const{log:s}=this.logCtx(e,this.prepare),r=Object.assign({},t);return t[i.METADATA]&&(s.silly("Passing along persistence metadata for "+t[i.METADATA]),Object.defineProperty(r,i.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:t[i.METADATA]})),{record:t,id:t[L.pk(t.constructor)]}}revert(t,e,s,...r){const{log:n}=this.logCtx(r,this.revert),a={},o="string"==typeof e?L.build(a,e):new e(a);n.silly(`Rebuilding model ${o.constructor.name} id ${s}`);const c="string"==typeof e?L.get(e):e;if(!c)throw new x("Failed to retrieve model constructor for "+e);const l=new c(t),h=t[i.METADATA];return h&&(n.silly(`Passing along ${this.flavour} persistence metadata for ${o.constructor.name} id ${s}: ${h}`),Object.defineProperty(l,i.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:h})),l}toTableName(t){return"string"==typeof t?t:F(L.tableName(t))}toHeaders(t){const e={};if(this.config.headers){const s=t.getOrUndefined("correlationId");s&&(e[Y.CORRELATION_ID]=s)}return{...e,...t.getOrUndefined("headers")||{}}}url(t,e,s){s||e&&!Array.isArray(e)&&(s=e,e=[]),t=this.toTableName(t);const r=new URL(`${this.config.protocol}://${this.config.host}/${t}${e&&e.length?"/"+e.join("/"):""}`);return s&&Object.entries(s).forEach(([t,e])=>{Array.isArray(e)?e.forEach(e=>r.searchParams.append(t,e.toString())):"object"==typeof e?r.searchParams.append(t,JSON.stringify(e)):void 0!==e&&r.searchParams.append(t,e.toString())}),r.toString()}extractIdArgs(t,e){const s=e.toString();if("string"==typeof t)return[s];const r=L.composed(t,L.pk(t));return r?s.split(r.separator):[s]}parseResponse(t,e,s){return t&&n.isSerializedPage(s)?Object.assign({},s,{data:s.data.map(e=>new t(e))}):s}raw(t,...e){const{ctxArgs:s,ctx:r}=this.logCtx(e,this.raw),i=this.toRequest(t,r);return this.request(i,...s)}Sequence(t){return Promise.reject(new c("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(t){return new X(this,t)}Paginator(t,e,s){return new W(this,t,e,s)}parseCondition(t){throw new c("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(t,...e){const s="string"==typeof t?t:t.message;return s.includes($.name)||s.includes("404")?new $(t):s.includes(N.name)||s.includes("409")?new N(t):s.includes(R.name)||s.includes("400")?new R(t):s.includes(T.name)||s.includes("422")?new T(t):s.includes(u.name)?new u(t):s.includes(g.name)?new g(t):s.includes(c.name)?new c(t):s.includes(p.name)?new p(t):s.includes(f.name)?new f(t):s.includes(y.name)?new y(t):s.includes(m.name)?new m(t):s.includes(w.name)?new w(t):s.includes(C.name)?new C(t):new x(t)}static decoration(){super.decoration(),v.for(i.QUERY).define({decorator:e=>(s,r,n)=>b(O(E.key(i.QUERY,r),e),t(),(t,e,s)=>{s.value=new Proxy(s.value,{async apply(t,e,s){const i=e,{log:n,ctxArgs:a}=(await i.logCtx(s,A.READ,!0)).for(r);return n.verbose("Running prepared statement "+t.name),n.debug("With args: "+JSON.stringify(s,null,2)),e.statement(t.name,...a)}})})(s,r,n)}).apply()}}rt.decoration();const it="axios",nt=(t,e)=>{if(t.headers&&t.headers[Y.PENDING_TASK]){let s;try{s=JSON.parse(t.headers[Y.PENDING_TASK]),Object.entries(s).forEach(([t,s])=>{s.forEach(s=>e.pushPending(t,s))})}catch(s){e.logger.for(nt).error(`Failed to parse pending tasks header ${t.headers[Y.PENDING_TASK]}: ${s}`)}}};class at extends rt{constructor(t,e){super(t,it,e)}getClient(){return new k({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(t,e){let s,r;t instanceof a?(r=t,s=void 0):(s=t,r=e);const n={};return r&&(n.headers={...n.headers||{},...this.toHeaders(r)}),s&&(n.method="GET",n.url=this.url(s.class,[i.STATEMENT,s.method,...s.args||[]],s.params)),n}async request(t,...e){let s={};try{const{ctx:t}=this.logCtx(e,this.request);s=this.toRequest(t)}catch(t){}return await this.client.request(Object.assign({},t,s))}parseResponse(t,e,r){if(!r.status&&e!==i.STATEMENT)throw new x("this should be impossible");if(r.status>=400)throw this.parseError(r.error||r.status);const n=this.normalizeResponseBody(r);switch(e){case P.CREATE_ALL:case P.READ_ALL:case P.UPDATE_ALL:case P.DELETE_ALL:case A.CREATE:case A.READ:case A.UPDATE:case A.DELETE:return n;case s.FIND:case s.PAGE:case s.FIND_BY:case s.LIST_BY:case s.PAGE_BY:case s.FIND_ONE_BY:case i.STATEMENT:return super.parseResponse(t,e,n);case s.COUNT_OF:case s.MAX_OF:case s.MIN_OF:case s.AVG_OF:case s.SUM_OF:case s.DISTINCT_OF:return n;case s.GROUP_OF:if(t&&"object"==typeof n&&null!==n){const e={};for(const[s,r]of Object.entries(n))e[s]=Array.isArray(r)?r.map(e=>new t(e)):r;return e}return n;default:return n}}normalizeResponseBody(t){if(!t)return t;const e=void 0!==t.body?t.body:void 0!==t.data?t.data:t;if("string"==typeof e)try{return JSON.parse(e)}catch{return e}return e}async create(t,e,s,...r){const{log:i,ctx:n}=this.logCtx(r,this.create);try{const r=this.url(t,this.extractIdArgs(t,e)),a=this.toRequest(n);return i.debug(`POSTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"POST",data:JSON.stringify(Object.assign({},s,{[I.ANCHOR]:t.name})),...a},n)}catch(t){throw this.parseError(t)}}async createAll(t,e,s,...r){const{log:i,ctx:n}=this.logCtx(r,this.createAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(n);return i.debug(`POSTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.request({url:e,method:"POST",data:JSON.stringify(s.map(e=>Object.assign({},e,{[I.ANCHOR]:t.name}))),...r},n)}catch(t){throw this.parseError(t)}}async read(t,e,...s){const{log:r,ctx:i}=this.logCtx(s,this.read);try{const s=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"GET",...n},i)}catch(t){throw this.parseError(t)}}async readAll(t,e,...s){const{log:r,ctx:i}=this.logCtx(s,this.readAll);try{const s=this.url(t,["bulk"],{ids:e}),n=this.toRequest(i);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"GET",...n},i)}catch(t){throw this.parseError(t)}}async update(t,e,s,...r){const{log:i,ctx:n}=this.logCtx(r,this.update);try{const r=this.url(t,this.extractIdArgs(t,e)),a=this.toRequest(n);return i.debug(`PUTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(a)}`),await this.request({url:r,method:"PUT",data:JSON.stringify(Object.assign({},s,{[I.ANCHOR]:t.name})),...a},n)}catch(t){throw this.parseError(t)}}async updateAll(t,e,s,...r){const{log:i,ctx:n}=this.logCtx(r,this.updateAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(n);return i.debug(`PUTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.request({url:e,method:"PUT",data:JSON.stringify(s.map(e=>Object.assign({},e,{[I.ANCHOR]:t.name}))),...r},n)}catch(t){throw this.parseError(t)}}async delete(t,e,...s){const{log:r,ctx:i}=this.logCtx(s,this.delete);try{const s=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"DELETE",...n},i)}catch(t){throw this.parseError(t)}}async deleteAll(t,e,...s){const{log:r,ctx:i}=this.logCtx(s,this.delete);try{const s=this.url(t,["bulk"],{ids:e}),n=this.toRequest(i);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(n)}`),await this.request({url:s,method:"DELETE",...n},i)}catch(t){throw this.parseError(t)}}parseError(t,...e){return rt.parseError(t,...e)}}at.decoration();const ot="##VERSION##",ct="##PACKAGE##";E.registerLibrary(ct,ot);export{it as AxiosFlavour,at as AxiosHttpAdapter,Y as DecafHeaders,rt as HttpAdapter,W as HttpPaginator,X as HttpStatement,et as KeepAliveOperation,ct as PACKAGE_NAME,Q as RestRepository,V as RestService,Z as ServerEventConnector,nt as TaskResponseParser,ot as VERSION,st as suffixMethod};
2
2
  //# sourceMappingURL=for-http.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"for-http.js","sources":["../src/constants.ts","../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.ts","../src/event/ServerEventConnector.ts","../src/HttpDispatcher.ts","../src/adapter.ts","../src/axios/constants.ts","../src/axios/axios.ts","../src/axios/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["DecafHeaders","RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","paginateBy","key","order","ref","offset","limit","args","bookmark","log","ctxArgs","logCtx","PreparedStatementKeys","PAGE_BY","for","verbose","Model","class","params","direction","statement","name","listBy","LIST_BY","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","find","OrderDirection","ASC","FIND","page","PAGE","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","response","request","parsed","parseResponse","convertStatementResult","result","map","record","revertRecord","convertPageResult","serialization","Paginator","deserialize","isSerializedPage","data","pkAttr","pk","pkKey","columnName","fallback","id","revert","details","contextualizeArgs","Context","OperationKeys","READ","countOf","COUNT_OF","stmtArgs","maxOf","MAX_OF","minOf","MIN_OF","avgOf","AVG_OF","sumOf","SUM_OF","distinctOf","DISTINCT_OF","groupOf","GROUP_OF","__decorate","prepared","prototype","__metadata","_a","K","_b","_c","_d","_e","_f","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","size","pagePrepared","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","apply","prepare","rawStatement","ServerEventConnector","ContextualLoggedClass","cache","Map","get","has","Error","open","headers","connector","set","close","parseReceivedEvent","raw","deserializePayload","Serialization","JSON","parse","eventName","operationKey","objectId","rawPayload","payload","item","String","stateLock","Lock","ready","listeners","Set","isOpen","es","withStateLock","fn","acquire","Promise","resolve","release","getOpening","opening","setOpening","isReady","setReady","getHeaders","force","info","controller","abort","clear","delete","warn","debug","startListening","pendingOpen","openPromise","completeOpen","failOpen","EventSourcePlus","credentials","connected","reject","self","listen","onResponse","async","onRequestError","error","forEach","handler","onError","message","onResponseError","status","statusText","err","onMessage","event","onEvent","finally","ensureListening","addListener","handlers","add","then","removeListener","existed","listenerFound","HttpDispatcher","Dispatch","initialized","listening","initialize","INITIALIZATION","hasAdapter","config","events","protocol","host","eventsListenerPath","listeningUrl","URL","InternalError","getEventHeaders","e","removeConnectorListener","operation","updateObservers","catch","KeepAliveOperation","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","flavour","create","read","update","createAll","readAll","updateAll","deleteAll","res","wrapMethodWithContext","parsers","p","flags","model","eventHeaderResolver","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","ob","m","constr","metadata","toTableName","t","toKebabCase","toHeaders","fromCtx","correlationId","getOrUndefined","CORRELATION_ID","join","entries","v","searchParams","append","stringify","extractIdArgs","idStr","composed","split","separator","d","rawInput","Sequence","options","parseError","msg","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","propertyKey","AxiosFlavour","TaskResponseParser","PENDING_TASK","pending","pushPending","logger","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","client","body","normalizeResponseBody","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","CREATE","UPDATE","DELETE","candidate","cfg","ModelKeys","ANCHOR","ids","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"8hCAAYA,ECkDN,MAAOC,UAIHC,EAOR,WAAAC,CAAYC,EAAYC,GACtBC,MAAMF,EAASC,GAPEE,KAAAC,WAAaC,OAAOC,OAAO,CAAA,EAAIJ,MAAkB,WAAG,CACrEK,oBAAoB,EACpBC,2BAA2B,EAC3BC,4BAA4B,GAK9B,CAWA,GAAAC,CACEC,EACAC,EACAC,GAEA,OAAOV,KAAKH,QAAQU,IAAIC,EAAWC,EAAmBC,EACxD,CAES,gBAAMC,CACbC,EACAC,EACAC,EAA+C,CAC7CC,OAAQ,EACRC,MAAO,OAENC,GAEH,MAAMF,OAAEA,EAAMG,SAAEA,EAAQF,MAAEA,GAAUF,GAC9BK,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBC,SAAS,IACvDC,IAAIxB,KAAKW,YACXQ,EAAIM,QACF,cAAcC,EAAMlB,UAAUR,KAAK2B,yBAAyBX,KAG9D,MAAMY,EAA+B,CACnCC,UAAWhB,EACXG,MAAOA,GAKT,OAHIE,IACFU,EAAOV,SAAWA,GAEblB,KAAK8B,UACV9B,KAAKW,WAAWoB,KAChBnB,EACAG,EACAa,KACGR,EAEP,CAES,YAAMY,CACbpB,EACAC,KACGI,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBW,SAAS,IACvDT,IAAIxB,KAAKgC,QAIX,OAHAb,EAAIM,QACF,WAAWC,EAAMlB,UAAUR,KAAK2B,aAAaf,KAAiBC,WAElDb,KAAK8B,UACjB9B,KAAKgC,OAAOD,KACZnB,EACA,CAAEiB,UAAWhB,MACVO,EAEP,CAES,YAAMc,CACbtB,EACAuB,KACGlB,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBc,SAAS,IACvDZ,IAAIxB,KAAKkC,QAIX,OAHAf,EAAIM,QACF,WAAWC,EAAMlB,UAAUR,KAAK2B,eAAef,KAAiBuB,WAEpDnC,KAAK8B,UACjB9B,KAAKkC,OAAOH,KACZnB,EACAuB,EACA,MACGf,EAEP,CAES,eAAMiB,CACbzB,EACAuB,KACGlB,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBgB,aAAa,IAC3Dd,IAAIxB,KAAKqC,WAIX,OAHAlB,EAAIM,QACF,WAAWC,EAAMlB,UAAUR,KAAK2B,eAAef,KAAiBuB,WAEpDnC,KAAK8B,UACjB9B,KAAKqC,UAAUN,KACfnB,EACAuB,EACA,MACGf,EAEP,CAGS,UAAMmB,CACbJ,EACAtB,EAAwB2B,EAAeC,OACpCxB,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBoB,MAAM,IACpDlB,IAAIxB,KAAKuC,MAIX,OAHApB,EAAIM,QACF,WAAWC,EAAMlB,UAAUR,KAAK2B,4CAEpB3B,KAAK8B,UACjB9B,KAAKuC,KAAKR,KACVI,EACAtB,KACGO,EAEP,CAGe,UAAAuB,CACbR,EACAN,EAA4BW,EAAeC,IAC3C3B,EAA+C,CAC7CC,OAAQ,EACRC,MAAO,OAENC,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBsB,MAAM,IACpDpB,IAAIxB,KAAK2C,MAIX,OAHAxB,EAAIM,QACF,UAAUC,EAAMlB,UAAUR,KAAK2B,4CAEnB3B,KAAK8B,UACjB9B,KAAK2C,KAAKZ,KACVI,EACAN,EACAf,KACGM,EAEP,CAES,eAAMU,CACbC,KACGd,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,EAAGzB,QAAEA,UACVpB,KAAKqB,OAAOJ,EAAM6B,EAAgBC,WAAW,IACnDvB,IAAIxB,KAAK8B,WACLkB,EAAU5B,EAAQ6B,MAAM,GAAG,GAC3BC,EAAUF,EAAQA,EAAQG,OAAS,GAKnCvB,EAHe,iBAAZsB,GACK,OAAZA,GACCE,MAAMC,QAAQH,QAGbI,EADCN,EAAQO,MAEPC,EAAgC,CACpC7B,MAAO3B,KAAK2B,MACZV,KAAM+B,EACNS,OAAQ1B,EACRH,OAAQA,GAEJ8B,EAAM1D,KAAKH,QAAQ8D,UAAUH,EAAOX,GAC1C1B,EAAIM,QAAQ,gCAAgCM,GAC5C,MAAM6B,QAAiB5D,KAAK6D,QAAQH,KAAQtC,GACtC0C,EAAS9D,KAAKH,QAAQkE,cAC1B/D,KAAK2B,MACLI,EACA6B,GAEF,OAAO5D,KAAKgE,uBAAuBjC,EAAM+B,EAAQjB,EACnD,CAEQ,sBAAAmB,CACNjC,EACAkC,EACApB,GAEA,OAAKoB,EAGHlC,IAAST,EAAsBoB,MAC/BX,IAAST,EAAsBW,SAC/BF,IAAST,EAAsBc,QAExBgB,MAAMC,QAAQY,GACjBA,EAAOC,IAAKC,GAAWnE,KAAKoE,aAAaD,EAAQtB,IACjDoB,EAGFlC,IAAST,EAAsBgB,YAC1BtC,KAAKoE,aAAaH,EAAQpB,GAIjCd,IAAST,EAAsBsB,MAC/Bb,IAAST,EAAsBC,QAExBvB,KAAKqE,kBAAkBJ,EAAQpB,GAGjCoB,EAvBaA,CAwBtB,CAEQ,iBAAAI,CACN1B,EACAE,GAEA,IAAKF,EAAM,OAAOA,EAElB,IAAI2B,EAA4C3B,EAChD,GAA6B,iBAAlB2B,EACT,IACEA,EAAgBC,EAAUC,YAAeF,EAC3C,CAAE,MACA,OAAO3B,CACT,CAGF,OAAI4B,EAAUE,iBAAiBH,GACtB,IACFA,EACHI,KAAMJ,EAAcI,KAAKR,IAAKC,GAC5BnE,KAAKoE,aAAaD,EAAQtB,KAKzBF,CACT,CAEQ,YAAAyB,CAAaD,EAAatB,GAChC,IAAKsB,EAAQ,OAAOA,EACpB,GAAIA,aAAkBnE,KAAK2B,MAAO,OAAOwC,EAEzC,MAAMQ,EAASjD,EAAMkD,GAAG5E,KAAK2B,OACvBkD,EAAQnD,EAAMoD,WAAW9E,KAAK2B,MAAOgD,GACrCI,EAAYJ,GAAqBE,EACjCG,EAAKb,EAAOU,IAAUV,EAAOY,GAEnC,QAAkB,IAAPC,EACT,IACE,OAAOhF,KAAKH,QAAQoF,OAAOd,EAAQnE,KAAK2B,MAAOqD,OAAI1B,EAAWT,EAChE,CAAE,MAEF,CAGF,OAAO3C,OAAOC,OAAO,IAAIH,KAAK2B,MAASwC,EACzC,CAEA,aAAMN,CACJqB,KACGjE,GAEH,IAAIkE,EAGFA,EADElE,EAAKkC,QAAUlC,EAAKA,EAAKkC,OAAS,aAAciC,EAC9BpF,KAAKqB,OAAOJ,EAAMjB,KAAK6D,gBAGnC7D,KAAKqB,OAAOJ,EAAMoE,EAAcC,MAAM,IAC5C9D,IAAIxB,KAAK6D,SAEb,MAAMzC,QAAEA,GAAY+D,EAEpB,OAAOnF,KAAKH,QAAQgE,QAAWqB,KAAY9D,EAC7C,CAGS,aAAMmE,CACb3E,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBkE,UAAU,IACxDhE,IAAIxB,KAAKuF,SACXpE,EAAIM,QACF,YAAYC,EAAMlB,UAAUR,KAAK2B,SAASf,EAAM,OAAOA,EAAkB,MAE3E,MAAM6E,EAAkB7E,EAAM,CAACA,EAAK,CAAA,GAAM,CAAC,IAC3C,aAAcZ,KAAK8B,UACjB9B,KAAKuF,QAAQxD,QACV0D,KACArE,EAEP,CAGS,WAAMsE,CACb9E,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBqE,QAAQ,IACtDnE,IAAIxB,KAAK0F,OAEX,OADAvE,EAAIM,QAAQ,kBAAkBb,QAAoBc,EAAMlB,UAAUR,KAAK2B,gBACzD3B,KAAK8B,UAAU9B,KAAK0F,MAAM3D,KAAMnB,EAAK,MAAOQ,EAC5D,CAGS,WAAMwE,CACbhF,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsBuE,QAAQ,IACtDrE,IAAIxB,KAAK4F,OAEX,OADAzE,EAAIM,QAAQ,kBAAkBb,QAAoBc,EAAMlB,UAAUR,KAAK2B,gBACzD3B,KAAK8B,UAAU9B,KAAK4F,MAAM7D,KAAMnB,EAAK,MAAOQ,EAC5D,CAGS,WAAM0E,CACblF,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsByE,QAAQ,IACtDvE,IAAIxB,KAAK8F,OAEX,OADA3E,EAAIM,QAAQ,sBAAsBb,QAAoBc,EAAMlB,UAAUR,KAAK2B,gBAC7D3B,KAAK8B,UAAU9B,KAAK8F,MAAM/D,KAAMnB,EAAK,MAAOQ,EAC5D,CAGS,WAAM4E,CACbpF,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsB2E,QAAQ,IACtDzE,IAAIxB,KAAKgG,OAEX,OADA7E,EAAIM,QAAQ,sBAAsBb,QAAoBc,EAAMlB,UAAUR,KAAK2B,gBAC7D3B,KAAK8B,UAAU9B,KAAKgG,MAAMjE,KAAMnB,EAAK,MAAOQ,EAC5D,CAGS,gBAAM8E,CACbtF,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsB6E,aAAa,IAC3D3E,IAAIxB,KAAKkG,YAIX,OAHA/E,EAAIM,QACF,8BAA8Bb,QAAoBc,EAAMlB,UAAUR,KAAK2B,gBAE3D3B,KAAK8B,UACjB9B,KAAKkG,WAAWnE,KAChBnB,EACA,MACGQ,EAEP,CAGS,aAAMgF,CACbxF,KACGK,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAMK,EAAsB+E,UAAU,IACxD7E,IAAIxB,KAAKoG,SAEX,OADAjF,EAAIM,QAAQ,YAAYC,EAAMlB,UAAUR,KAAK2B,aAAaf,WAC5CZ,KAAK8B,UACjB9B,KAAKoG,QAAQrE,KACbnB,EACA,MACGQ,EAEP,EAlRekF,EAAA,CADdC,4GAkBA7G,EAAA8G,UAAA,OAAA,MAGcF,EAAA,CADdC,mHAuBA7G,EAAA8G,UAAA,OAAA,MAoIcF,EAAA,CADdC,qGAiBA7G,EAAA8G,UAAA,UAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADC,sBAAAC,GAAAA,GAACD,EAAAxG,YAAA,oCAQPR,EAAA8G,UAAA,QAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADG,sBAAAD,GAAAA,GAACC,EAAA1G,YAAA,oCAQPR,EAAA8G,UAAA,QAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADI,sBAAAF,GAAAA,GAACE,EAAA3G,YAAA,oCAQPR,EAAA8G,UAAA,QAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADK,sBAAAH,GAAAA,GAACG,EAAA5G,YAAA,oCAQPR,EAAA8G,UAAA,QAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADM,sBAAAJ,GAAAA,GAACI,EAAA7G,YAAA,oCAePR,EAAA8G,UAAA,aAAA,MAGcF,EAAA,CADdC,8BAEME,EAAA,oBAAA,CAAC,mBAADO,sBAAAL,GAAAA,GAACK,EAAA9G,YAAA,oCAaPR,EAAA8G,UAAA,UAAA,MC5YG,MAAOS,UAIHvH,EAgBR,WAAAE,CAAYC,EAAYC,GACtBC,MAAMF,EAASC,GAhBEE,KAAAC,WAAaC,OAAOC,OAAO,CAAA,EAAIJ,MAAkB,WAAG,CACrEmH,kBAAkB,EAClBC,gBAAgB,EAChB/G,oBAAoB,EACpBC,2BAA2B,EAC3BC,4BAA4B,GAY9B,CAES,QAAA8G,GACP,OAAU1F,EAAMlB,UAAUR,KAAK2B,OAAxB,eACT,ECvEI,MAAO0F,UAIHC,EACR,WAAA1H,CAAYC,EAAY0H,GACtBxH,MAAMF,EAAS0H,EACjB,CAEmB,KAAAC,GACjB,MAAM,IAAIC,EACR,4IAEJ,CAEmB,cAAAC,CAEjBC,KAEG1G,GAEH,MAAM,IAAIwG,EACR,4IAEJ,EClBI,MAAOG,UAIHrD,EACR,WAAA3E,CAAYC,EAAY2D,EAAUqE,EAAc/H,GAC9CC,MAAMF,EAAS2D,EAAOqE,EAAM/H,EAC9B,CAEmB,kBAAMgI,CACvBnF,KACGoF,GAEH,MAAMC,EAAOrI,EAAWsI,SAASjI,KAAKF,MAAOE,KAAKH,QAAQqI,OACpDpG,EAAY9B,KAAKwD,OACjBC,OAAEA,EAAMxC,KAAEA,EAAIW,OAAEA,GAAWE,EAC3BqG,EAAaC,OACjB,IAAI9G,EAAsBc,WAAWd,EAAsBW,UAC3D,MAEF,IAAKwB,EAAO4E,MAAMF,GAChB,MAAM,IAAIV,EACR,UAAUhE,qCAEd0E,EAAOG,UAAY,EACnB,MAEMC,EAAe,CAFD9E,EAAO+E,QAAQL,EAAQ7G,EAAsBC,YAE3BN,GAChCwH,EAAuC,CAC3C5G,UAAWD,EAAOC,UAClBb,MAAOhB,KAAK6H,KACZ9G,OAAQ4B,EACRzB,SAAUlB,KAAK0I,WAGjBH,EAAaI,KAAKF,GAElB,MAAMxE,QAAe+D,EAAKlG,aACpByG,KACDR,GAEL,OAAO/H,KAAK4I,MAAM3E,EACpB,CAEU,OAAA4E,CAAQC,GAChB,MAAM,IAAIrB,EACR,sGAEJ,CAES,IAAA9E,CACPA,EAAe,KACZ1B,GAEH,OAAOlB,MAAM4C,KAAKA,KAAS1B,EAC7B,EC3DI,MAAO8H,UAA6BC,SAChBhJ,KAAAiJ,MAAQ,IAAIC,GAAoC,CAExE,UAAOC,CAAI5I,GACT,GAAIP,KAAKiJ,MAAMG,IAAI7I,GAAM,OAAOP,KAAKiJ,MAAME,IAAI5I,GAE/C,MAAU8I,MACR,6CAA6C9I,qCAEjD,CAEA,WAAO+I,CACL/I,EACAgJ,GAEA,GAAIvJ,KAAKiJ,MAAMG,IAAI7I,GAAM,OAAOP,KAAKiJ,MAAME,IAAI5I,GAE/C,MAAMiJ,EAAY,IAAIT,EAAqBxI,EAAKgJ,GAEhD,OADAvJ,KAAKiJ,MAAMQ,IAAIlJ,EAAKiJ,GACbxJ,KAAKiJ,MAAME,IAAI5I,EACxB,CAEA,YAAOmJ,CAAMnJ,GACPP,KAAKiJ,MAAMG,IAAI7I,IACCP,KAAKiJ,MAAME,IAAI5I,GACvBmJ,OAEd,CAEQ,yBAAOC,CAAmBC,GAChC,MAAMC,EAAsB1H,IAC1B,GAAqB,iBAAVA,EAAoB,OAAOA,EACtC,IACE,OAAO2H,EAActF,YAAYrC,EACnC,CAAE,MACA,IACE,OAAO4H,KAAKC,MAAM7H,EACpB,CAAE,MACA,OAAOA,CACT,CACF,GAEF,IACE,MAAMuC,EAAsB,iBAARkF,EAAmBG,KAAKC,MAAMJ,GAAOA,EACzD,IAAKxG,MAAMC,QAAQqB,IAAuB,EAAdA,EAAKvB,OAAY,OAAO,KAEpD,MAAO8G,EAAWC,EAAcC,EAAUC,GAAc1F,EACxD,GAAyB,iBAAduF,EAAwB,OAAO,KAE1C,IAAII,EAMJ,OAJEA,EADEjH,MAAMC,QAAQ+G,GACNA,EAAWlG,IAAKoG,GAAST,EAAmBS,IAE5CT,EAAmBO,GAExB,CAACH,EAAkBC,EAAPK,GAAsBJ,EAAUE,EACrD,CAAE,MACA,OAAO,IACT,CACF,CAUA,WAAAzK,CACmBW,EACAgJ,GAEjBxJ,QAHiBC,KAAAO,IAAAA,EACAP,KAAAuJ,QAAAA,EAPFvJ,KAAAwK,UAAY,IAAIC,EAEzBzK,KAAA0K,OAAQ,EACR1K,KAAA2K,UAAgC,IAAIC,GAO5C,CAEA,MAAAC,GACE,YAAmBvH,IAAZtD,KAAK8K,EACd,CAEQ,mBAAMC,CAAiBC,SACvBhL,KAAKwK,UAAUS,UACrB,IACE,aAAaC,QAAQC,QAAQH,IAC/B,SACEhL,KAAKwK,UAAUY,SACjB,CACF,CAEQ,gBAAMC,GACZ,OAAOrL,KAAK+K,cAAc,IAAM/K,KAAKsL,QACvC,CAEQ,gBAAMC,CAAWD,SACjBtL,KAAK+K,cAAc,KACvB/K,KAAKsL,QAAUA,GAEnB,CAEQ,aAAME,GACZ,OAAOxL,KAAK+K,cAAc,IAAM/K,KAAK0K,MACvC,CAEQ,cAAMe,CAASf,SACf1K,KAAK+K,cAAc,KACvB/K,KAAK0K,MAAQA,GAEjB,CAEU,gBAAMgB,GACd,IAAInC,EAAUvJ,KAAKuJ,QAMnB,MAJ2B,mBAAhBvJ,KAAKuJ,UACdA,QAAgB2B,QAAQC,QAAQnL,KAAKuJ,YAGhCA,GAAW,CAAA,CACpB,CAEA,KAAAG,CAAMiC,GAAiB,GACrB,MAAMxK,EAAMnB,KAAKmB,IAAIK,IAAIxB,KAAK0J,OAE9B,GAAK1J,KAAK8K,GAOV,GAA0B,GAAtB9K,KAAK2K,UAAU9C,MAAa8D,EAQhC,IACExK,EAAIyK,KAAK,oDAAoD5L,KAAKO,KAClEP,KAAK6L,YAAYC,OACnB,SACE9L,KAAK6L,gBAAavI,EAClBtD,KAAK8K,QAAKxH,EACLtD,KAAKyL,UAAS,GACdzL,KAAKuL,gBAAWjI,GACrBtD,KAAK2K,UAAUoB,QACfhD,EAAqBE,MAAM+C,OAAOhM,KAAKO,KACvCY,EAAIyK,KACF,0BAA0B5L,KAAKO,mCAEnC,MApBEY,EAAI8K,KACF,yCAAyCjM,KAAKO,cAASP,KAAK2K,UAAU9C,2CARxE1G,EAAI+K,MACF,2DAAsDlM,KAAKO,IA2BjE,CAMQ,oBAAM4L,GACZ,MAAMhL,EAAMnB,KAAKmB,IAAIK,IAAIxB,KAAKmM,gBAC9B,GAAInM,KAAK8K,UAAa9K,KAAKwL,UAKzB,YAJArK,EAAIyK,KACF,qBAAqB5L,KAAKO,+EAC1B,CAAEA,IAAKP,KAAKO,IAAKoK,UAAW3K,KAAK2K,UAAU9C,OAK/C,MAAMuE,QAAoBpM,KAAKqL,aAC/B,GAAIe,EAMF,OALAjL,EAAI+K,MAAM,2CAA2ClM,KAAKO,IAAO,CAC/DA,IAAKP,KAAKO,IACVoK,UAAW3K,KAAK2K,UAAU9C,kBAEtBuE,EAIR,MAAMC,EAAc,WAClBlL,EAAIyK,KAAK,qCAAqC5L,KAAKO,KACnD,MAAMgJ,QAAgBvJ,KAAK0L,aAO3B,IAAIY,EACAC,EAPJvM,KAAK8K,GAAK,IAAI0B,EAAgBxM,KAAKO,IAAK,IAClCgJ,GAAW,CAAEA,QAASA,GAC1BkD,YAAa,kBAETzM,KAAKyL,UAAS,GAIpB,MAAMiB,EAAY,IAAIxB,QAAc,CAACC,EAASwB,KAC5CL,EAAenB,EACfoB,EAAWI,IAIPC,EAA6B5M,KACnCA,KAAK6L,WAAa7L,KAAK8K,GAAG+B,OAAO,CAC/BC,WAAYC,gBACJH,EAAKnB,UAAS,GACpBtK,EAAIyK,KAAK,gBAAgB5L,KAAKO,gCAC9B+L,KAEFU,eAAgB,EAAGC,YACjB9L,EAAI8L,MAAM,6CAA8C,CACtD1M,IAAKP,KAAKO,IACV0M,UAGGL,EAAKnB,UAAS,GACnBc,EAASU,GACTL,EAAKjC,UAAUuC,QAASC,GACtBA,EAAQC,SAAgBH,GAAeI,SAAWJ,GAAlC1C,MAGpB+C,gBAAiB,EAAG1J,eAClB,MAAM2J,EAAS3J,GAAU2J,OACnBC,EAAa5J,GAAU4J,WAC7BrM,EAAI8L,MAAM,4CAA6C,CACrD1M,IAAKP,KAAKO,IACVgN,SACAC,eAEF,MAAMC,EAAUpE,MACd,QAAQkE,GAAU,aAAaC,GAAc,WAE1CZ,EAAKnB,UAAS,GACnBc,EAASkB,GACTb,EAAKjC,UAAUuC,QAASC,GAAYA,EAAQC,QAAQK,KAEtDC,UAAYL,IACV,GAAsB,cAAlBA,EAAQM,MAEV,YADAxM,EAAI+K,MAAM,2CAIZ,MAAMtC,EACJyD,GAA8B,iBAAZA,GAAwB,SAAUA,EAChDA,EAAQ3I,KACR2I,EAEAM,EAAQ5E,EAAqBY,mBAAmBC,GACtD,GAAK+D,EAQL,IAAK,MAAMR,KAAWP,EAAKjC,UACzB,IACEwC,EAAQS,QAAQD,EAClB,CAAE,MAAOF,GACPtM,EAAI8L,MAAM,mCAAoC,CAAEQ,OAClD,MAZAtM,EAAI8K,KAAK,8BAA+B,CACtC1L,IAAKP,KAAKO,IACVqJ,iBAeF8C,CACP,EAlFmB,GAkFfmB,QAAQ,KACN7N,KAAKuL,gBAAWjI,WAGjBtD,KAAKuL,WAAWc,GACtB,UACQA,CACR,CAAE,MAAOY,GAIP,MAHAjN,KAAK6L,gBAAavI,EAClBtD,KAAK8K,QAAKxH,QACJtD,KAAKyL,UAAS,GACdwB,CACR,CACF,CAMA,qBAAMa,SACE9N,KAAKmM,gBACb,CAEA,WAAA4B,CAAYC,GACV,MAAM7M,EAAMnB,KAAKmB,IAAIK,IAAIxB,KAAK+N,aAW9B,OAVA5M,EAAIyK,KACF,uCAAuC5L,KAAKO,cAASP,KAAK2K,UAAU9C,2BAGtE7H,KAAK2K,UAAUsD,IAAID,GACnBhO,KAAK8N,kBAAkBI,KAAK,KAC1B/M,EAAIyK,KACF,sCAAsC5L,KAAKO,iCAA4BP,KAAK2K,UAAU9C,UAGnF,IAAM7H,KAAKmO,eAAeH,EACnC,CAEA,cAAAG,CAAeH,GACb,MAAM7M,EAAMnB,KAAKmB,IAAIK,IAAIxB,KAAKmO,gBACxBC,EAAUpO,KAAK2K,UAAUvB,IAAI4E,GAEnC7M,EAAIyK,KACF,yCAAyC5L,KAAKO,kCAAkCP,KAAK2K,UAAU9C,OAC/F,CACEwG,cAAeD,IAIfA,IACFpO,KAAK2K,UAAUqB,OAAOgC,GACtB7M,EAAI+K,MACF,wCAAwClM,KAAKO,iCAA4BP,KAAK2K,UAAU9C,SAIhE,IAAxB7H,KAAK2K,UAAU9C,OACjB1G,EAAIyK,KACF,0DAA0D5L,KAAKO,OAC/D,CACEA,IAAKP,KAAKO,IACVoK,UAAW3K,KAAK2K,UAAU9C,OAG9B7H,KAAK0J,QAET,EClUI,MAAO4E,WAAuBC,EAApC,WAAA3O,uBAMqBI,KAAAwO,aAAc,EACzBxO,KAAAyO,WAAY,CA4ItB,CAtIqB,gBAAMC,IACpBzN,GAEH,MAAME,IAAEA,EAAGC,QAAEA,UACLpB,KAAKqB,OAAOJ,EAAM6B,EAAgB6L,gBAAgB,IACxDnN,IAAIxB,KAAK0O,YAEN1O,KAAKH,SAQVsB,EAAIyK,KACF,gBAAgB5L,KAAKH,oDAEvBG,KAAKwO,aAAc,QACbxO,KAAKmM,kBAAkB/K,GAE7BD,EAAIyK,KAAK,0CAA0C5L,KAAKH,aAVtDsB,EAAIM,QAAQ,4DAWhB,CAKA,oBAAM0K,IAAkBlL,GACtB,MAAME,IAAEA,GAAQnB,KAAKqB,OAAOJ,EAAMjB,KAAKmM,gBACvC,IAAKnM,KAAKwO,cAAgBxO,KAAKH,QAQ7B,MAPAsB,EAAI8L,MACF,8EACA,CACEuB,YAAaxO,KAAKwO,YAClBI,aAAc5O,KAAKH,UAGbwJ,MAAM,mDAKlB,IAFarJ,KAAKH,QAAQgP,OAEhBC,OAER,YADA3N,EAAI8K,KAAK,uBAGPjM,KAAKyO,WACPtN,EAAI8K,KAAK,4DAA6D,CACpEpM,QAAgBG,KAAKH,QAAZ0K,KAIb,MAAMwE,SAAEA,EAAQC,KAAEA,EAAIC,mBAAEA,GAAuBjP,KAAKH,QACjDgP,OAEH,IAAKI,EAKH,MAJA9N,EAAI8L,MAAM,0DAA2D,CACnE8B,WACAC,SAEQ3F,MAAM,mCAGlB,MAAM6F,EAAe,IAAIC,IACvBF,EACA,GAAGF,OAAcC,KACjB5H,WAEFjG,EAAIyK,KAAK,yCAAyCsD,GAClDlP,KAAKwJ,UAAYT,EAAqBO,KAAK4F,EAAcnC,UACvD,IAAK/M,KAAKH,QAAS,MAAM,IAAIuP,EAAc,2BAC3C,IACE,OAAQpP,KAAKH,QAAgBwP,iBAC/B,CAAE,MAAOC,GACP,MAAM,IAAIF,EAAc,gCAAgCE,EAC1D,IAGFnO,EAAI+K,MACF,qDAAqDgD,GAEvDlP,KAAKuP,4BACLvP,KAAKuP,wBAA0BvP,KAAKwJ,UAAUuE,YAAY,CACxDH,QAASb,MAAOY,IACd,MAAOnN,EAAWgP,EAAWxK,KAAO/D,GAAQ0M,GACtCxM,IAAEA,EAAGC,QAAEA,UAAmBpB,KAAKqB,OAAOJ,EAAMuO,GAAW,IAAOhO,IAClE,WAGFzB,MACG0P,gBACCjP,EACAgP,EACAxK,KACI5D,GAELsO,MAAOJ,GACNnO,EAAI8L,MAAM,iDAAkDqC,KAGlElC,QAAUkC,IACRnO,EAAI8L,MAAM,gDAAiD,CACzDA,MAAOqC,EACPJ,eACArP,QAAgBG,KAAKH,QAAZ0K,cAMTvK,KAAKwJ,UAAUsE,kBAErB9N,KAAKyO,WAAY,EACjBtN,EAAIyK,KAAK,sCAAsCsD,KACjD,CAES,WAAMxF,IAEVzI,GAWHjB,KAAKuP,4BACLvP,KAAKuP,6BAA0BjM,EAC/BtD,KAAKwJ,WAAWE,QAChB1J,KAAKyO,WAAY,CACnB,EN/JF,CAAYhP,IACVA,EAAA,aAAA,iBACAA,EAAA,eAAA,kBACD,EAHD,CAAYA,IAAAA,EAAY,CAAA,IAKjB,MAAMkQ,GAAqB,YOkD5B,SAAUC,GACdC,EACAC,EACAC,EACAC,GAEA,MAAMjO,EAAOiO,GAA0BF,EAAO/N,KAC9C8N,EAAI9N,GAAQ,IAAIkO,MAAMJ,EAAI9N,GAAO,CAC/B6G,MAAOmE,MAAOmD,EAAQC,EAASC,KAC7B,IAAIC,EAAUH,EAAOI,KAAKH,KAAYC,GAOtC,OANIC,aAAmBnF,UAASmF,QAAgBA,GAEhDA,EAAUN,EAAOO,KAAKH,EAASE,GAE3BA,aAAmBnF,UAASmF,QAAgBA,GAEzCA,IAGb,CAiCM,MAAgBE,WAMZC,EACR,WAAA5Q,CAAsBiP,EAAc4B,EAAiBvI,GACnDnI,MACEG,OAAOC,OAAO,CAAA,EAAI0O,EAAQ,CACxBtF,aAAmC,IAAnBsF,EAAOtF,SAAiCsF,EAAOtF,QAC/DuF,YAAiC,IAAlBD,EAAOC,QAAgCD,EAAOC,SAE/D2B,EACAvI,GAIF,MAAM0E,EAAO5M,KACb,CACEA,KAAK0Q,OACL1Q,KAAK2Q,KACL3Q,KAAK4Q,OACL5Q,KAAKgM,OACLhM,KAAK6Q,UACL7Q,KAAK8Q,QACL9Q,KAAK+Q,UACL/Q,KAAKgR,WACL9D,QAASzJ,IACTmM,GACE5P,KACAyD,EACCwN,GACCrE,EAAK7I,cAAcuM,KAAK1D,OAAMtJ,EAAWG,EAAO1B,KAAMkP,GACxDxN,EAAO1B,QAGXmP,EACElR,KACA,IAAIiB,IAAgBA,EACpBjB,KAAK6D,QACL,CAACoN,EAAUpO,KACT,MAAMsO,EAAUvE,EAAKiC,OAAOsC,QAC5B,OAAKA,GACLA,EAAQjE,QAASkE,GAAMA,EAAEH,EAAKpO,IACvBoO,GAFcA,GAIvBjR,KAAK6D,QAAQ9B,KAEjB,CAYmB,WAAMsP,CACvB7B,EACA8B,EACA/J,GAEA,OAAOxH,MAAMsR,MACX7B,EACA8B,EACApR,OAAOC,OACL,CACEoJ,QAAShC,EAAUgC,SAAW,CAAA,GAEhChC,GAGN,CAEmB,QAAAgH,GACjB,OAAO,IAAID,EACb,CAEU,qBAAMe,GACd,OAAKrP,KAAK6O,OAAO0C,2BAEKrG,QAAQC,QAAQnL,KAAK6O,OAAO0C,sBAFL,CAAA,CAI/C,CASS,UAAAC,GAGP,OAAOvK,CACT,CAYS,OAAA4B,CACPyI,KACGrQ,GAEH,MAAME,IAAEA,GAAQnB,KAAKqB,OAAOJ,EAAMjB,KAAK6I,SACjC5E,EAAS/D,OAAOC,OAAO,CAAA,EAAImR,GAajC,OAZKA,EAAcxO,EAAgB2O,YACjCtQ,EAAIuQ,MACF,0CAA2CJ,EAAcxO,EAAgB2O,WAE3EvR,OAAOyR,eAAe1N,EAAQnB,EAAgB2O,SAAU,CACtDG,YAAY,EACZC,UAAU,EACVC,cAAc,EACd3P,MAAQmP,EAAcxO,EAAgB2O,aAInC,CACLtN,OAAQmN,EACRtM,GAAIsM,EAAM5P,EAAMkD,GAAG0M,EAAM1R,cAE7B,CAaS,MAAAqF,CACP4K,EACA/P,EACAkF,KACG/D,GAEH,MAAME,IAAEA,GAAQnB,KAAKqB,OAAOJ,EAAMjB,KAAKiF,QACjC8M,EAA0B,CAAA,EAC1BC,EACa,iBAAVlS,EAAqB4B,EAAM8F,MAAMuK,EAAIjS,GAAS,IAAIA,EAAMiS,GAEjE5Q,EAAIuQ,MAAM,oBAAoBM,EAAEpS,YAAYmC,WAAWiD,KACvD,MAAMiN,EAA0B,iBAAVnS,EAAqB4B,EAAMyH,IAAIrJ,GAASA,EAC9D,IAAKmS,EACH,MAAM,IAAI7C,EACR,4CAA4CtP,GAEhD,MAAMmE,EAAS,IAAKgO,EAA0BpC,GACxCqC,EAAWrC,EAAI/M,EAAgB2O,UAarC,OAZIS,IACF/Q,EAAIuQ,MACF,iBAAiB1R,KAAKyQ,oCAAoCuB,EAAEpS,YAAYmC,WAAWiD,MAAOkN,KAE5FhS,OAAOyR,eAAe1N,EAAQnB,EAAgB2O,SAAU,CACtDG,YAAY,EACZE,cAAc,EACdD,UAAU,EACV1P,MAAO+P,KAIJjO,CACT,CAEU,WAAAkO,CAA6BC,GACrC,MAAoB,iBAANA,EAAiBA,EAAIC,EAAY3Q,EAAMlB,UAAU4R,GACjE,CAEU,SAAAE,CAAUzP,GAClB,MAAM0P,EAA+B,CAAA,EACrC,GAAIvS,KAAK6O,OAAOtF,QAAS,CACvB,MAAMiJ,EAAgB3P,EAAI4P,eAAe,iBACrCD,IAAeD,EAAQ9S,EAAaiT,gBAAkBF,EAC5D,CACA,MAAO,IAAKD,KAAa1P,EAAI4P,eAAe,YAAc,CAAA,EAC5D,CAgDA,GAAAlS,CACEC,EACAC,EACAC,GAEKA,GACCD,IAAe2C,MAAMC,QAAQ5C,KAC/BC,EAAcD,EACdA,EAAa,IAIjBD,EAAYR,KAAKmS,YAAY3R,GAC7B,MAAMD,EAAM,IAAI4O,IACd,GAAGnP,KAAK6O,OAAOE,cAAc/O,KAAK6O,OAAOG,QAAQxO,IAAYC,GAAcA,EAAW0C,OAAS,IAAK1C,EAAwBkS,KAAK,KAAS,MAa5I,OAXIjS,GACFR,OAAO0S,QAAQlS,GAAawM,QAAQ,EAAEtM,EAAKuB,MACrCiB,MAAMC,QAAQlB,GAChBA,EAAM+K,QAAS2F,GAAMtS,EAAIuS,aAAaC,OAAOnS,EAAKiS,EAAEzL,aAC1B,iBAAVjF,EAChB5B,EAAIuS,aAAaC,OAAOnS,EAAKmJ,KAAKiJ,UAAU7Q,SAClB,IAAVA,GAChB5B,EAAIuS,aAAaC,OAAOnS,EAAKuB,EAAMiF,cAIlC7G,EAAI6G,UACb,CAiBU,aAAA6L,CACR3B,EACAtM,GAEA,MAAMkO,EAAQlO,EAAGoC,WACjB,GAAqB,iBAAVkK,EAAoB,MAAO,CAAC4B,GACvC,MAAMC,EAAWzR,EAAMyR,SAAS7B,EAAO5P,EAAMkD,GAAG0M,IAChD,OAAK6B,EACED,EAAME,MAAMD,EAASE,WADN,CAACH,EAEzB,CAEA,aAAAnP,CACEjE,EACA2D,EACAwN,GAEA,OAAInR,GAASyE,EAAUE,iBAAiBwM,GAC/B/Q,OAAOC,OAAO,CAAA,EAAI8Q,EAAK,CAC5BvM,KAAMuM,EAAIvM,KAAKR,IAAKoP,GAAW,IAAIxT,EAAMwT,MAGtCrC,CACT,CA8EA,GAAArH,CAAO2J,KAAgBtS,GACrB,MAAMG,QAAEA,EAAOyB,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK4J,KAC1ClG,EAAM1D,KAAK2D,UAAU4P,EAAU1Q,GACrC,OAAO7C,KAAK6D,QAAQH,KAAQtC,EAC9B,CAYS,QAAAoS,CAASC,GAChB,OAAOvI,QAAQyB,OACb,IAAIlF,EACF,0FAGN,CAYS,SAAAH,CACPC,GAEA,OAAO,IAAIF,EAAcrH,KAAMuH,EACjC,CAES,SAAAhD,CACPf,EACAqE,EACA/H,GAEA,OAAO,IAAI8H,EACT5H,KACAwD,EACAqE,EACA/H,EAEJ,CAYA,cAAA4H,CAAeC,GACb,MAAM,IAAIF,EACR,yFAEJ,CAEA,iBAAOiM,CACLjG,KAEGxM,GAEH,MAAM0S,EAAqB,iBAARlG,EAAmBA,EAAMA,EAAIJ,QAChD,OAAIsG,EAAIC,SAASC,EAAc9R,OAAS4R,EAAIC,SAAS,OAC5C,IAAIC,EAAcpG,GACvBkG,EAAIC,SAASE,EAAc/R,OAAS4R,EAAIC,SAAS,OAC5C,IAAIE,EAAcrG,GACvBkG,EAAIC,SAASG,EAAgBhS,OAAS4R,EAAIC,SAAS,OAC9C,IAAIG,EAAgBtG,GACzBkG,EAAIC,SAASI,EAAgBjS,OAAS4R,EAAIC,SAAS,OAC9C,IAAII,EAAgBvG,GACzBkG,EAAIC,SAASK,EAAWlS,MAAc,IAAIkS,EAAWxG,GACrDkG,EAAIC,SAASM,EAAYnS,MAAc,IAAImS,EAAYzG,GACvDkG,EAAIC,SAASnM,EAAiB1F,MACzB,IAAI0F,EAAiBgG,GAC1BkG,EAAIC,SAASO,EAAepS,MAAc,IAAIoS,EAAe1G,GAC7DkG,EAAIC,SAASQ,EAAcrS,MAAc,IAAIqS,EAAc3G,GAC3DkG,EAAIC,SAASS,EAAmBtS,MAC3B,IAAIsS,EAAmB5G,GAC5BkG,EAAIC,SAASU,EAAevS,MAAc,IAAIuS,EAAe7G,GAC7DkG,EAAIC,SAASW,EAAgBxS,MACxB,IAAIwS,EAAgB9G,GACzBkG,EAAIC,SAASY,EAAmBzS,MAC3B,IAAIyS,EAAmB/G,GACzB,IAAI2B,EAAc3B,EAC3B,CAEA,iBAAgBgH,GACd1U,MAAM0U,aA0CNC,EAAWlT,IAAIsB,EAAgB6R,OAC5BC,OAAO,CACNC,UA3CWpB,GACN,CAAe5D,EAAaiF,EAAYC,IAgCtCnM,EACLoM,EAAeC,EAASrU,IAAIkC,EAAgB6R,MAAOG,GAAOrB,GAC1DlN,IA/BO,CACLsJ,EACAqF,EACAH,KAECA,EAA4C5S,MAAQ,IAAI8N,MACtD8E,EAA4C5S,MAC7C,CACE,WAAMyG,CACJsH,EACAC,EACAlP,GAEA,MAAM+G,EAAOmI,GACPhP,IAAEA,EAAGC,QAAEA,UACL4G,EAAa,OAAE/G,EAAMoE,EAAcC,MAAM,IAC/C9D,IAAIsT,GAGN,OAFA3T,EAAIM,QAAQ,8BAA8ByO,EAAOnO,MACjDZ,EAAI+K,MAAM,cAAcnC,KAAKiJ,UAAU/R,EAAM,KAAM,IAC3CkP,EAAiCrO,UACvCoO,EAAOnO,QACJX,EAEP,GAGN,EAGKwH,CAILiH,EAAKiF,EAAMC,KAQdnM,OACL,EAGF2H,GAAYkE,aCvnBL,MAAMU,GAAe,QAEfC,GAAqC,CAChDnE,EACApO,KAEA,GAAIoO,EAAI1H,SAAW0H,EAAI1H,QAAQ9J,EAAa4V,cAAe,CACzD,IAAIC,EACJ,IACEA,EAAUvL,KAAKC,MAAMiH,EAAI1H,QAAQ9J,EAAa4V,eAC9CnV,OAAO0S,QAAQ0C,GAASpI,QAAQ,EAAEtM,EAAKuB,MACrCA,EAAM+K,QAAS2F,GAAMhQ,EAAI0S,YAAY3U,EAAKiS,KAE9C,CAAE,MAAOvD,GACPzM,EAAI2S,OACDhU,IAAI4T,IACJnI,MACC,wCAAwCgE,EAAI1H,QAAQ9J,EAAa4V,kBAAkB/F,IAEzF,CACF,GCsCI,MAAOmG,WAAyBlF,GAOpC,WAAA3Q,CAAYiP,EAAoB3G,GAC9BnI,MAAM8O,EAAQsG,GAAcjN,EAC9B,CAEmB,SAAAwN,GACjB,OAAO,IAAIC,EAAM,CACfC,QAAS,GAAG5V,KAAK6O,OAAOE,cAAc/O,KAAK6O,OAAOG,QAEtD,CAQS,SAAArL,CACPkS,EACAhT,GAEA,IAAIW,EACAsS,EAEAD,aAAsBzQ,GACxB0Q,EAAUD,EACVrS,OAAQF,IAERE,EAAQqS,EACRC,EAAUjT,GAGZ,MAAMa,EAA0B,CAAA,EAYhC,OAXIoS,IACFpS,EAAI6F,QAAU,IAAM7F,EAAI6F,SAAW,MAAQvJ,KAAKsS,UAAUwD,KAExDtS,IACFE,EAAID,OAAS,MACbC,EAAInD,IAAMP,KAAKO,IACbiD,EAAM7B,MACN,CAACmB,EAAgBC,UAAWS,EAAMC,UAAYD,EAAMvC,MAAQ,IAC5DuC,EAAM5B,SAGH8B,CACT,CASS,aAAMG,CACbqB,KACGjE,GAEH,IAAIsG,EAAY,CAAA,EAChB,IACE,MAAM1E,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK6D,SACvC0D,EAAYvH,KAAK2D,UAAUd,EAE7B,CAAE,MAAOyM,GAET,CAKA,aAHuBtP,KAAK+V,OAAOlS,QACjC3D,OAAOC,OAAO,CAAA,EAAI+E,EAASqC,GAG/B,CAES,aAAAxD,CACPjE,EACA2D,EACAwN,GAEA,IAAKA,EAAI1D,QAAU9J,IAAWX,EAAgBC,UAC5C,MAAM,IAAIqM,EAAc,6BAC1B,GAAI6B,EAAI1D,QAAU,IAChB,MAAMvN,KAAK0T,WAAYzC,EAAIhE,OAAoBgE,EAAI1D,QACrD,MAAMyI,EAAOhW,KAAKiW,sBAAsBhF,GACxC,OAAQxN,GACN,KAAKyS,EAAsBC,WAC3B,KAAKD,EAAsBE,SAC3B,KAAKF,EAAsBG,WAC3B,KAAKH,EAAsBI,WAC3B,KAAKjR,EAAckR,OACnB,KAAKlR,EAAcC,KACnB,KAAKD,EAAcmR,OACnB,KAAKnR,EAAcoR,OACjB,OAAOT,EACT,KAAK1U,EAAsBoB,KAC3B,KAAKpB,EAAsBsB,KAC3B,KAAKtB,EAAsBc,QAC3B,KAAKd,EAAsBW,QAC3B,KAAKX,EAAsBC,QAC3B,KAAKD,EAAsBgB,YAC3B,KAAKQ,EAAgBC,UACnB,OAAOhD,MAAMgE,cAAcjE,EAAO2D,EAAQuS,GAC5C,KAAK1U,EAAsBkE,SAC3B,KAAKlE,EAAsBqE,OAC3B,KAAKrE,EAAsBuE,OAC3B,KAAKvE,EAAsByE,OAC3B,KAAKzE,EAAsB2E,OAG3B,KAAK3E,EAAsB6E,YAEzB,OAAO6P,EACT,KAAK1U,EAAsB+E,SAEzB,GAAIvG,GAAyB,iBAATkW,GAA8B,OAATA,EAAe,CACtD,MAAM/R,EAA8B,CAAA,EACpC,IAAK,MAAOrD,EAAKuB,KAAUjC,OAAO0S,QAAQoD,GAEtC/R,EAAOrD,GADLwC,MAAMC,QAAQlB,GACFA,EAAM+B,IAAKoP,GAAW,IAAIxT,EAAMwT,IAEhCnR,EAGlB,OAAO8B,CACT,CACA,OAAO+R,EACT,QACE,OAAOA,EAEb,CAEQ,qBAAAC,CAAsBhF,GAC5B,IAAKA,EAAK,OAAOA,EACjB,MAAMyF,OACgB,IAAbzF,EAAI+E,KACP/E,EAAI+E,UACgB,IAAb/E,EAAIvM,KACTuM,EAAIvM,KACJuM,EACR,GAAyB,iBAAdyF,EACT,IACE,OAAO3M,KAAKC,MAAM0M,EACpB,CAAE,MACA,OAAOA,CACT,CAEF,OAAOA,CACT,CAWS,YAAMhG,CACblQ,EACAwE,EACAsM,KACGrQ,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK0Q,QAC5C,IACE,MAAMnQ,EAAMP,KAAKO,IACfC,EACAR,KAAKiT,cAAczS,EAAWwE,IAE1B2R,EAAM3W,KAAK2D,UAAUd,GAiB3B,OAhBA1B,EAAI+K,MACF,cAAc3L,UAAYwJ,KAAKiJ,UAAU1B,cAAkBvH,KAAKiJ,UAAU2D,YAEvD3W,KAAK6D,QACxB,CACEtD,MACAkD,OAAQ,OACRiB,KAAMqF,KAAKiJ,UACT9S,OAAOC,OAAO,CAAA,EAAImR,EAAO,CACvB,CAACsF,EAAUC,QAASrW,EAAUuB,WAG/B4U,GAEL9T,EAGJ,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAES,eAAMuB,CACb/Q,EACAkF,EACAsM,KACGrQ,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK6Q,WAC5C,IACE,MAAMtQ,EAAMP,KAAKO,IAAIT,EAAO,CAAC,SACvB6W,EAAM3W,KAAK2D,UAAUd,GAI3B,OAHA1B,EAAI+K,MACF,cAAc3L,UAAYwJ,KAAKiJ,UAAU1B,cAAkBvH,KAAKiJ,UAAU2D,MAErE3W,KAAK6D,QACV,CACEtD,MACAkD,OAAQ,OACRiB,KAAMqF,KAAKiJ,UACT1B,EAAMpN,IAAK8N,GACT9R,OAAOC,OAAO,CAAA,EAAI6R,EAAG,CACnB,CAAC4E,EAAUC,QAAS/W,EAAMiC,YAI7B4U,GAEL9T,EAEJ,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAUS,UAAMqB,CACbnQ,EACAwE,KACG/D,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK2Q,MAC5C,IACE,MAAMpQ,EAAMP,KAAKO,IACfC,EACAR,KAAKiT,cAAczS,EAAWwE,IAE1B2R,EAAM3W,KAAK2D,UAAUd,GAE3B,OADA1B,EAAI+K,MAAM,eAAe3L,aAAewJ,KAAKiJ,UAAU2D,YAC1C3W,KAAK6D,QAAQ,CAAEtD,MAAKkD,OAAQ,SAAUkT,GAAO9T,EAC5D,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CACS,aAAMwB,CACbtQ,EACAsW,KACG7V,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK8Q,SAC5C,IACE,MAAMvQ,EAAMP,KAAKO,IAAIC,EAAW,CAAC,QAAS,CAAEsW,IAAKA,IAC3CH,EAAM3W,KAAK2D,UAAUd,GAE3B,OADA1B,EAAI+K,MAAM,eAAe3L,aAAewJ,KAAKiJ,UAAU2D,YAC1C3W,KAAK6D,QAAQ,CAAEtD,MAAKkD,OAAQ,SAAUkT,GAAO9T,EAC5D,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAWS,YAAMsB,CACbpQ,EACAwE,EACAsM,KACGrQ,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK4Q,QAC5C,IACE,MAAMrQ,EAAMP,KAAKO,IACfC,EACAR,KAAKiT,cAAczS,EAAWwE,IAE1B2R,EAAM3W,KAAK2D,UAAUd,GAI3B,OAHA1B,EAAI+K,MACF,aAAa3L,UAAYwJ,KAAKiJ,UAAU1B,cAAkBvH,KAAKiJ,UAAU2D,YAE9D3W,KAAK6D,QAChB,CACEtD,MACAkD,OAAQ,MACRiB,KAAMqF,KAAKiJ,UACT9S,OAAOC,OAAO,CAAA,EAAImR,EAAO,CACvB,CAACsF,EAAUC,QAA+BrW,EAAUuB,WAGrD4U,GAEL9T,EAEJ,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAES,eAAMyB,CACbvQ,EACAsW,EACAxF,KACGrQ,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAK+Q,WAC5C,IACE,MAAMxQ,EAAMP,KAAKO,IAAIC,EAAW,CAAC,SAC3BmW,EAAM3W,KAAK2D,UAAUd,GAI3B,OAHA1B,EAAI+K,MACF,aAAa3L,UAAYwJ,KAAKiJ,UAAU1B,cAAkBvH,KAAKiJ,UAAU2D,MAEpE3W,KAAK6D,QACV,CACEtD,MACAkD,OAAQ,MACRiB,KAAMqF,KAAKiJ,UACT1B,EAAMpN,IAAK8N,GACT9R,OAAOC,OAAO,CAAA,EAAI6R,EAAG,CACnB,CAAC4E,EAAUC,QAASrW,EAAUuB,YAIjC4U,GAEL9T,EAEJ,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAUS,YAAM,CACb9O,EACAwE,KACG/D,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAKgM,QAC5C,IACE,MAAMzL,EAAMP,KAAKO,IACfC,EACAR,KAAKiT,cAAczS,EAAWwE,IAE1B2R,EAAM3W,KAAK2D,UAAUd,GAE3B,OADA1B,EAAI+K,MAAM,kBAAkB3L,aAAewJ,KAAKiJ,UAAU2D,YAC7C3W,KAAK6D,QAAQ,CAAEtD,MAAKkD,OAAQ,YAAakT,GAAO9T,EAC/D,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAES,eAAM0B,CACbxQ,EACAsW,KACG7V,GAEH,MAAME,IAAEA,EAAG0B,IAAEA,GAAQ7C,KAAKqB,OAAOJ,EAAMjB,KAAKgM,QAC5C,IACE,MAAMzL,EAAMP,KAAKO,IAAIC,EAAW,CAAC,QAAS,CAAEsW,IAAKA,IAC3CH,EAAM3W,KAAK2D,UAAUd,GAE3B,OADA1B,EAAI+K,MAAM,kBAAkB3L,aAAewJ,KAAKiJ,UAAU2D,YAC7C3W,KAAK6D,QAAQ,CAAEtD,MAAKkD,OAAQ,YAAakT,GAAO9T,EAC/D,CAAE,MAAOyM,GACP,MAAMtP,KAAK0T,WAAWpE,EACxB,CACF,CAES,UAAAoE,CAAgCjG,KAAexM,GACtD,OAAOsP,GAAYmD,WAAWjG,KAAQxM,EACxC,ECncFwU,GAAiBhB,aCcV,MAAMsC,GAAU,cAEVC,GAAe,cAE5B/B,EAASgC,gBAAgBD,GAAcD"}
1
+ {"version":3,"file":"for-http.js","sources":["../src/constants.ts","../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.ts","../src/event/ServerEventConnector.ts","../src/HttpDispatcher.ts","../src/adapter.ts","../src/axios/constants.ts","../src/axios/axios.ts","../src/axios/index.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null],"names":["DecafHeaders","RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","paginateBy","key","order","ref","offset","limit","args","bookmark","log","ctxArgs","logCtx","PreparedStatementKeys","PAGE_BY","for","verbose","Model","class","params","direction","statement","name","listBy","LIST_BY","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","find","OrderDirection","ASC","FIND","page","PAGE","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","response","request","parsed","parseResponse","convertStatementResult","result","map","record","revertRecord","convertPageResult","serialization","Paginator","deserialize","isSerializedPage","data","pkAttr","pk","pkKey","columnName","fallback","id","revert","details","contextualizeArgs","Context","OperationKeys","READ","countOf","COUNT_OF","stmtArgs","maxOf","MAX_OF","minOf","MIN_OF","avgOf","AVG_OF","sumOf","SUM_OF","distinctOf","DISTINCT_OF","groupOf","GROUP_OF","__decorate","prepared","prototype","__metadata","_a","K","_b","_c","_d","_e","_f","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","size","pagePrepared","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","apply","prepare","rawStatement","ServerEventConnector","ContextualLoggedClass","cache","Map","get","has","Error","open","headers","connector","set","close","parseReceivedEvent","raw","deserializePayload","Serialization","JSON","parse","eventName","operationKey","objectId","rawPayload","payload","item","String","stateLock","Lock","ready","listeners","Set","isOpen","es","withStateLock","fn","acquire","Promise","resolve","release","setOpening","opening","isReady","setReady","getHeaders","force","info","controller","abort","clear","delete","warn","debug","startListening","openPromise","resolveOpen","rejectOpen","owner","deferredOpen","reject","EventSourcePlus","credentials","settled","self","listen","onResponse","async","onRequestError","error","forEach","handler","onError","message","onResponseError","status","statusText","err","onMessage","event","onEvent","catch","ensureListening","addListener","handlers","add","then","removeListener","existed","listenerFound","HttpDispatcher","Dispatch","initialized","listening","initialize","INITIALIZATION","hasAdapter","config","events","protocol","host","eventsListenerPath","listeningUrl","URL","InternalError","getEventHeaders","e","removeConnectorListener","operation","updateObservers","KeepAliveOperation","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","flavour","create","read","update","createAll","readAll","updateAll","deleteAll","res","wrapMethodWithContext","parsers","p","flags","model","eventHeaderResolver","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","ob","m","constr","metadata","toTableName","t","toKebabCase","toHeaders","fromCtx","correlationId","getOrUndefined","CORRELATION_ID","join","entries","v","searchParams","append","stringify","extractIdArgs","idStr","composed","split","separator","d","rawInput","Sequence","options","parseError","msg","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","propertyKey","AxiosFlavour","TaskResponseParser","PENDING_TASK","pending","pushPending","logger","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","client","body","normalizeResponseBody","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","CREATE","UPDATE","DELETE","candidate","cfg","ModelKeys","ANCHOR","ids","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
@@ -19,7 +19,6 @@ export declare class ServerEventConnector extends ContextualLoggedClass<Context<
19
19
  constructor(url: string, headers?: ServerEventConnectorHeaders | undefined);
20
20
  isOpen(): boolean;
21
21
  private withStateLock;
22
- private getOpening;
23
22
  private setOpening;
24
23
  private isReady;
25
24
  private setReady;
@@ -78,9 +78,6 @@ export class ServerEventConnector extends ContextualLoggedClass {
78
78
  this.stateLock.release();
79
79
  }
80
80
  }
81
- async getOpening() {
82
- return this.withStateLock(() => this.opening);
83
- }
84
81
  async setOpening(opening) {
85
82
  await this.withStateLock(() => {
86
83
  this.opening = opening;
@@ -132,20 +129,37 @@ export class ServerEventConnector extends ContextualLoggedClass {
132
129
  */
133
130
  async startListening() {
134
131
  const log = this.log.for(this.startListening);
135
- if (this.es && (await this.isReady())) {
136
- log.info(`Listening address ${this.url} is already in the pool and listening. Skipping opening a new connection.`, { url: this.url, listeners: this.listeners.size });
137
- return;
138
- }
139
- const pendingOpen = await this.getOpening();
140
- if (pendingOpen) {
132
+ let owner = false;
133
+ let openPromise;
134
+ let resolveOpen;
135
+ let rejectOpen;
136
+ const deferredOpen = new Promise((resolve, reject) => {
137
+ resolveOpen = resolve;
138
+ rejectOpen = reject;
139
+ });
140
+ await this.withStateLock(() => {
141
+ if (this.es && this.ready) {
142
+ openPromise = Promise.resolve();
143
+ return;
144
+ }
145
+ if (this.opening) {
146
+ openPromise = this.opening;
147
+ return;
148
+ }
149
+ this.ready = false;
150
+ this.opening = deferredOpen;
151
+ openPromise = deferredOpen;
152
+ owner = true;
153
+ });
154
+ if (!owner) {
141
155
  log.debug(`Connection open already in progress for ${this.url}`, {
142
156
  url: this.url,
143
157
  listeners: this.listeners.size,
144
158
  });
145
- await pendingOpen;
159
+ await openPromise;
146
160
  return;
147
161
  }
148
- const openPromise = (async () => {
162
+ (async () => {
149
163
  log.info(`Opening EventSource connection to ${this.url}`);
150
164
  const headers = await this.getHeaders();
151
165
  this.es = new EventSourcePlus(this.url, {
@@ -153,30 +167,34 @@ export class ServerEventConnector extends ContextualLoggedClass {
153
167
  credentials: "include",
154
168
  });
155
169
  await this.setReady(false);
156
- let completeOpen;
157
- let failOpen;
158
- const connected = new Promise((resolve, reject) => {
159
- completeOpen = resolve;
160
- failOpen = reject;
161
- });
170
+ let settled = false;
162
171
  // eslint-disable-next-line @typescript-eslint/no-this-alias
163
172
  const self = this;
164
173
  this.controller = this.es.listen({
165
174
  onResponse: async () => {
175
+ if (settled)
176
+ return;
177
+ settled = true;
166
178
  await self.setReady(true);
167
179
  log.info(`Connected to ${this.url}. Ready to receive events`);
168
- completeOpen();
180
+ resolveOpen();
169
181
  },
170
182
  onRequestError: ({ error }) => {
183
+ if (settled)
184
+ return;
185
+ settled = true;
171
186
  log.error("Failed to establish EventSource connection", {
172
187
  url: this.url,
173
188
  error,
174
189
  });
175
190
  void self.setReady(false);
176
- failOpen(error);
191
+ rejectOpen(error);
177
192
  self.listeners.forEach((handler) => handler.onError(String(error?.message ?? error)));
178
193
  },
179
194
  onResponseError: ({ response }) => {
195
+ if (settled)
196
+ return;
197
+ settled = true;
180
198
  const status = response?.status;
181
199
  const statusText = response?.statusText;
182
200
  log.error("Listening failed with HTTP error response", {
@@ -186,7 +204,7 @@ export class ServerEventConnector extends ContextualLoggedClass {
186
204
  });
187
205
  const err = new Error(`HTTP ${status ?? "unknown"} ${statusText ?? "error"}`);
188
206
  void self.setReady(false);
189
- failOpen(err);
207
+ rejectOpen(err);
190
208
  self.listeners.forEach((handler) => handler.onError(err));
191
209
  },
192
210
  onMessage: (message) => {
@@ -215,19 +233,17 @@ export class ServerEventConnector extends ContextualLoggedClass {
215
233
  }
216
234
  },
217
235
  });
218
- await connected;
219
- })().finally(() => {
220
- void this.setOpening(undefined);
236
+ })().catch(async (error) => {
237
+ this.controller = undefined;
238
+ this.es = undefined;
239
+ await this.setReady(false);
240
+ rejectOpen(error);
221
241
  });
222
- await this.setOpening(openPromise);
223
242
  try {
224
243
  await openPromise;
225
244
  }
226
- catch (error) {
227
- this.controller = undefined;
228
- this.es = undefined;
229
- await this.setReady(false);
230
- throw error;
245
+ finally {
246
+ await this.setOpening(undefined);
231
247
  }
232
248
  }
233
249
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"ServerEventConnector.js","sourceRoot":"","sources":["../../../src/event/ServerEventConnector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ServerEventConnector.js","sourceRoot":"","sources":["../../../src/event/ServerEventConnector.ts"],"names":[],"mappings":"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"}
@@ -21,5 +21,5 @@ export * from "./event";
21
21
  * @summary Version identifier for the module
22
22
  * @const VERSION
23
23
  */
24
- export declare const VERSION = "0.4.4";
24
+ export declare const VERSION = "0.4.5";
25
25
  export declare const PACKAGE_NAME = "@decaf-ts/for-http";
package/lib/esm/index.js CHANGED
@@ -22,7 +22,7 @@ export * from "./event/index.js";
22
22
  * @summary Version identifier for the module
23
23
  * @const VERSION
24
24
  */
25
- export const VERSION = "0.4.4";
25
+ export const VERSION = "0.4.5";
26
26
  export const PACKAGE_NAME = "@decaf-ts/for-http";
27
27
  Metadata.registerLibrary(PACKAGE_NAME, VERSION);
28
28
  //# sourceMappingURL=index.js.map
@@ -81,9 +81,6 @@ class ServerEventConnector extends core_1.ContextualLoggedClass {
81
81
  this.stateLock.release();
82
82
  }
83
83
  }
84
- async getOpening() {
85
- return this.withStateLock(() => this.opening);
86
- }
87
84
  async setOpening(opening) {
88
85
  await this.withStateLock(() => {
89
86
  this.opening = opening;
@@ -135,20 +132,37 @@ class ServerEventConnector extends core_1.ContextualLoggedClass {
135
132
  */
136
133
  async startListening() {
137
134
  const log = this.log.for(this.startListening);
138
- if (this.es && (await this.isReady())) {
139
- log.info(`Listening address ${this.url} is already in the pool and listening. Skipping opening a new connection.`, { url: this.url, listeners: this.listeners.size });
140
- return;
141
- }
142
- const pendingOpen = await this.getOpening();
143
- if (pendingOpen) {
135
+ let owner = false;
136
+ let openPromise;
137
+ let resolveOpen;
138
+ let rejectOpen;
139
+ const deferredOpen = new Promise((resolve, reject) => {
140
+ resolveOpen = resolve;
141
+ rejectOpen = reject;
142
+ });
143
+ await this.withStateLock(() => {
144
+ if (this.es && this.ready) {
145
+ openPromise = Promise.resolve();
146
+ return;
147
+ }
148
+ if (this.opening) {
149
+ openPromise = this.opening;
150
+ return;
151
+ }
152
+ this.ready = false;
153
+ this.opening = deferredOpen;
154
+ openPromise = deferredOpen;
155
+ owner = true;
156
+ });
157
+ if (!owner) {
144
158
  log.debug(`Connection open already in progress for ${this.url}`, {
145
159
  url: this.url,
146
160
  listeners: this.listeners.size,
147
161
  });
148
- await pendingOpen;
162
+ await openPromise;
149
163
  return;
150
164
  }
151
- const openPromise = (async () => {
165
+ (async () => {
152
166
  log.info(`Opening EventSource connection to ${this.url}`);
153
167
  const headers = await this.getHeaders();
154
168
  this.es = new event_source_plus_1.EventSourcePlus(this.url, {
@@ -156,30 +170,34 @@ class ServerEventConnector extends core_1.ContextualLoggedClass {
156
170
  credentials: "include",
157
171
  });
158
172
  await this.setReady(false);
159
- let completeOpen;
160
- let failOpen;
161
- const connected = new Promise((resolve, reject) => {
162
- completeOpen = resolve;
163
- failOpen = reject;
164
- });
173
+ let settled = false;
165
174
  // eslint-disable-next-line @typescript-eslint/no-this-alias
166
175
  const self = this;
167
176
  this.controller = this.es.listen({
168
177
  onResponse: async () => {
178
+ if (settled)
179
+ return;
180
+ settled = true;
169
181
  await self.setReady(true);
170
182
  log.info(`Connected to ${this.url}. Ready to receive events`);
171
- completeOpen();
183
+ resolveOpen();
172
184
  },
173
185
  onRequestError: ({ error }) => {
186
+ if (settled)
187
+ return;
188
+ settled = true;
174
189
  log.error("Failed to establish EventSource connection", {
175
190
  url: this.url,
176
191
  error,
177
192
  });
178
193
  void self.setReady(false);
179
- failOpen(error);
194
+ rejectOpen(error);
180
195
  self.listeners.forEach((handler) => handler.onError(String(error?.message ?? error)));
181
196
  },
182
197
  onResponseError: ({ response }) => {
198
+ if (settled)
199
+ return;
200
+ settled = true;
183
201
  const status = response?.status;
184
202
  const statusText = response?.statusText;
185
203
  log.error("Listening failed with HTTP error response", {
@@ -189,7 +207,7 @@ class ServerEventConnector extends core_1.ContextualLoggedClass {
189
207
  });
190
208
  const err = new Error(`HTTP ${status ?? "unknown"} ${statusText ?? "error"}`);
191
209
  void self.setReady(false);
192
- failOpen(err);
210
+ rejectOpen(err);
193
211
  self.listeners.forEach((handler) => handler.onError(err));
194
212
  },
195
213
  onMessage: (message) => {
@@ -218,19 +236,17 @@ class ServerEventConnector extends core_1.ContextualLoggedClass {
218
236
  }
219
237
  },
220
238
  });
221
- await connected;
222
- })().finally(() => {
223
- void this.setOpening(undefined);
239
+ })().catch(async (error) => {
240
+ this.controller = undefined;
241
+ this.es = undefined;
242
+ await this.setReady(false);
243
+ rejectOpen(error);
224
244
  });
225
- await this.setOpening(openPromise);
226
245
  try {
227
246
  await openPromise;
228
247
  }
229
- catch (error) {
230
- this.controller = undefined;
231
- this.es = undefined;
232
- await this.setReady(false);
233
- throw error;
248
+ finally {
249
+ await this.setOpening(undefined);
234
250
  }
235
251
  }
236
252
  /**
@@ -19,7 +19,6 @@ export declare class ServerEventConnector extends ContextualLoggedClass<Context<
19
19
  constructor(url: string, headers?: ServerEventConnectorHeaders | undefined);
20
20
  isOpen(): boolean;
21
21
  private withStateLock;
22
- private getOpening;
23
22
  private setOpening;
24
23
  private isReady;
25
24
  private setReady;
@@ -1 +1 @@
1
- {"version":3,"file":"ServerEventConnector.js","sourceRoot":"","sources":["../../src/event/ServerEventConnector.ts"],"names":[],"mappings":";;;AACA,yDAAoD;AACpD,yEAA+D;AAC/D,yCAAgE;AAChE,iFAA0D;AAM1D,MAAa,oBAAqB,SAAQ,4BAAmC;aACnD,UAAK,GAAG,IAAI,GAAG,EAAgC,AAA1C,CAA2C;IAExE,MAAM,CAAC,GAAG,CAAC,GAAW;QACpB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAyB,CAAC;QAE5E,MAAM,IAAI,KAAK,CACb,6CAA6C,GAAG,mCAAmC,CACpF,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,IAAI,CACT,GAAW,EACX,OAAqC;QAErC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;YAAE,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAyB,CAAC;QAE5E,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QACzD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAC/B,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAyB,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,GAAW;QACtB,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAyB,CAAC;YAC9D,SAAS,CAAC,KAAK,EAAE,CAAC;QACpB,CAAC;IACH,CAAC;IAEO,MAAM,CAAC,kBAAkB,CAAC,GAAY;QAC5C,MAAM,kBAAkB,GAAG,CAAC,KAAc,EAAO,EAAE;YACjD,IAAI,OAAO,KAAK,KAAK,QAAQ;gBAAE,OAAO,KAAK,CAAC;YAC5C,IAAI,CAAC;gBACH,OAAO,oCAAa,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC1C,CAAC;YAAC,MAAM,CAAC;gBACP,IAAI,CAAC;oBACH,OAAO,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3B,CAAC;gBAAC,MAAM,CAAC;oBACP,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC;QACH,CAAC,CAAC;QACF,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;YAC7D,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,IAAI,CAAC;YAEzD,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,GAAG,IAAI,CAAC;YAC7D,IAAI,OAAO,SAAS,KAAK,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAE/C,IAAI,OAAyD,CAAC;YAC9D,IAAI,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC9B,OAAO,GAAG,UAAU,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;YAC3C,CAAC;YACD,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAUD,YACmB,GAAW,EACX,OAAqC;QAEtD,KAAK,EAAE,CAAC;QAHS,QAAG,GAAH,GAAG,CAAQ;QACX,YAAO,GAAP,OAAO,CAA8B;QAPvC,cAAS,GAAG,IAAI,+BAAI,EAAE,CAAC;QAEhC,UAAK,GAAG,KAAK,CAAC;QACd,cAAS,GAAuB,IAAI,GAAG,EAAE,CAAC;IAOlD,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,EAAE,KAAK,SAAS,CAAC;IAC/B,CAAC;IAEO,KAAK,CAAC,aAAa,CAAI,EAAwB;QACrD,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,OAAO,MAAM,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;QACrC,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,UAAU;QACtB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,OAAkC;QACzD,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACzB,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,OAAO;QACnB,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,CAAC;IAEO,KAAK,CAAC,QAAQ,CAAC,KAAc;QACnC,MAAM,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE;YAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC;IAES,KAAK,CAAC,UAAU;QACxB,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAE3B,IAAI,OAAO,IAAI,CAAC,OAAO,IAAI,UAAU,EAAE,CAAC;YACtC,OAAO,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,OAAO,IAAI,EAAE,CAAC;IACvB,CAAC;IAED,KAAK,CAAC,QAAiB,KAAK;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAErC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,GAAG,CAAC,KAAK,CACP,sDAAsD,IAAI,CAAC,GAAG,EAAE,CACjE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YACtC,GAAG,CAAC,IAAI,CACN,yCAAyC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,gCAAgC,CAC3G,CAAC;YACF,OAAO;QACT,CAAC;QAED,6BAA6B;QAC7B,IAAI,CAAC;YACH,GAAG,CAAC,IAAI,CAAC,oDAAoD,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YACzE,IAAI,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;QAC3B,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;YACpB,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC1B,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAChC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;YACvB,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,GAAG,CAAC,IAAI,CACN,0BAA0B,IAAI,CAAC,GAAG,+BAA+B,CAClE,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc;QAC1B,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9C,IAAI,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;YACtC,GAAG,CAAC,IAAI,CACN,qBAAqB,IAAI,CAAC,GAAG,2EAA2E,EACxG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAClD,CAAC;YACF,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;QAC5C,IAAI,WAAW,EAAE,CAAC;YAChB,GAAG,CAAC,KAAK,CAAC,2CAA2C,IAAI,CAAC,GAAG,EAAE,EAAE;gBAC/D,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI;aAC/B,CAAC,CAAC;YACH,MAAM,WAAW,CAAC;YAClB,OAAO;QACT,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;YAC9B,GAAG,CAAC,IAAI,CAAC,qCAAqC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;YAC1D,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,EAAE,GAAG,IAAI,mCAAe,CAAC,IAAI,CAAC,GAAG,EAAE;gBACtC,GAAG,CAAC,OAAO,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;gBACpC,WAAW,EAAE,SAAS;aACvB,CAAC,CAAC;YACH,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAE3B,IAAI,YAAyB,CAAC;YAC9B,IAAI,QAAqC,CAAC;YAC1C,MAAM,SAAS,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACtD,YAAY,GAAG,OAAO,CAAC;gBACvB,QAAQ,GAAG,MAAM,CAAC;YACpB,CAAC,CAAC,CAAC;YAEH,4DAA4D;YAC5D,MAAM,IAAI,GAAyB,IAAI,CAAC;YACxC,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC;gBAC/B,UAAU,EAAE,KAAK,IAAI,EAAE;oBACrB,MAAM,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBAC1B,GAAG,CAAC,IAAI,CAAC,gBAAgB,IAAI,CAAC,GAAG,2BAA2B,CAAC,CAAC;oBAC9D,YAAY,EAAE,CAAC;gBACjB,CAAC;gBACD,cAAc,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE;oBAC5B,GAAG,CAAC,KAAK,CAAC,4CAA4C,EAAE;wBACtD,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,KAAK;qBACN,CAAC,CAAC;oBAEH,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAC1B,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAChB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CACjC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAE,KAAa,EAAE,OAAO,IAAI,KAAK,CAAC,CAAC,CAC1D,CAAC;gBACJ,CAAC;gBACD,eAAe,EAAE,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE;oBAChC,MAAM,MAAM,GAAG,QAAQ,EAAE,MAAM,CAAC;oBAChC,MAAM,UAAU,GAAG,QAAQ,EAAE,UAAU,CAAC;oBACxC,GAAG,CAAC,KAAK,CAAC,2CAA2C,EAAE;wBACrD,GAAG,EAAE,IAAI,CAAC,GAAG;wBACb,MAAM;wBACN,UAAU;qBACX,CAAC,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,KAAK,CACnB,QAAQ,MAAM,IAAI,SAAS,IAAI,UAAU,IAAI,OAAO,EAAE,CACvD,CAAC;oBACF,KAAK,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAC1B,QAAQ,CAAC,GAAG,CAAC,CAAC;oBACd,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC5D,CAAC;gBACD,SAAS,EAAE,CAAC,OAAyB,EAAE,EAAE;oBACvC,IAAI,OAAO,CAAC,KAAK,KAAK,WAAW,EAAE,CAAC;wBAClC,GAAG,CAAC,KAAK,CAAC,yCAAyC,CAAC,CAAC;wBACrD,OAAO;oBACT,CAAC;oBAED,MAAM,GAAG,GACP,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,MAAM,IAAI,OAAO;wBACzD,CAAC,CAAC,OAAO,CAAC,IAAI;wBACd,CAAC,CAAC,OAAO,CAAC;oBAEd,MAAM,KAAK,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;oBAC3D,IAAI,CAAC,KAAK,EAAE,CAAC;wBACX,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE;4BACtC,GAAG,EAAE,IAAI,CAAC,GAAG;4BACb,GAAG;yBACJ,CAAC,CAAC;wBACH,OAAO;oBACT,CAAC;oBAED,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;wBACrC,IAAI,CAAC;4BACH,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;wBACzB,CAAC;wBAAC,OAAO,GAAG,EAAE,CAAC;4BACb,GAAG,CAAC,KAAK,CAAC,kCAAkC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;wBACzD,CAAC;oBACH,CAAC;gBACH,CAAC;aACF,CAAC,CAAC;YAEH,MAAM,SAAS,CAAC;QAClB,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;YAChB,KAAK,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,WAAW,CAAC;QACpB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAC5B,IAAI,CAAC,EAAE,GAAG,SAAS,CAAC;YACpB,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC3B,MAAM,KAAK,CAAC;QACd,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,eAAe;QACnB,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAC9B,CAAC;IAED,WAAW,CAAC,QAAuB;QACjC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QAC3C,GAAG,CAAC,IAAI,CACN,uCAAuC,IAAI,CAAC,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,qBAAqB,CAC9F,CAAC;QAEF,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC7B,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE;YAC/B,GAAG,CAAC,IAAI,CACN,sCAAsC,IAAI,CAAC,GAAG,yBAAyB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAC7F,CAAC;QACJ,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC7C,CAAC;IAED,cAAc,CAAC,QAAuB;QACpC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAC9C,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAE7C,GAAG,CAAC,IAAI,CACN,yCAAyC,IAAI,CAAC,GAAG,+BAA+B,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,EACrG;YACE,aAAa,EAAE,OAAO;SACvB,CACF,CAAC;QAEF,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;YAChC,GAAG,CAAC,KAAK,CACP,wCAAwC,IAAI,CAAC,GAAG,yBAAyB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,CAC/F,CAAC;QACJ,CAAC;QAED,IAAI,IAAI,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YAC9B,GAAG,CAAC,IAAI,CACN,0DAA0D,IAAI,CAAC,GAAG,GAAG,EACrE;gBACE,GAAG,EAAE,IAAI,CAAC,GAAG;gBACb,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI;aAC/B,CACF,CAAC;YACF,IAAI,CAAC,KAAK,EAAE,CAAC;QACf,CAAC;IACH,CAAC;;AArUH,oDAsUC"}
1
+ {"version":3,"file":"ServerEventConnector.js","sourceRoot":"","sources":["../../src/event/ServerEventConnector.ts"],"names":[],"mappings":"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"}
package/lib/index.cjs CHANGED
@@ -39,7 +39,7 @@ __exportStar(require("./event/index.cjs"), exports);
39
39
  * @summary Version identifier for the module
40
40
  * @const VERSION
41
41
  */
42
- exports.VERSION = "0.4.4";
42
+ exports.VERSION = "0.4.5";
43
43
  exports.PACKAGE_NAME = "@decaf-ts/for-http";
44
44
  decoration_1.Metadata.registerLibrary(exports.PACKAGE_NAME, exports.VERSION);
45
45
  //# sourceMappingURL=index.js.map
package/lib/index.d.ts CHANGED
@@ -21,5 +21,5 @@ export * from "./event";
21
21
  * @summary Version identifier for the module
22
22
  * @const VERSION
23
23
  */
24
- export declare const VERSION = "0.4.4";
24
+ export declare const VERSION = "0.4.5";
25
25
  export declare const PACKAGE_NAME = "@decaf-ts/for-http";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/for-http",
3
- "version": "0.4.5",
3
+ "version": "0.4.6",
4
4
  "description": "http wrappers for decaf-ts",
5
5
  "type": "module",
6
6
  "exports": {