@decaf-ts/for-http 0.3.29 → 0.3.30
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/README.md +1 -1
- package/dist/for-http.cjs +1 -1
- package/dist/for-http.cjs.map +1 -1
- package/dist/for-http.js +1 -1
- package/dist/for-http.js.map +1 -1
- package/lib/RestRepository.cjs +18 -41
- package/lib/RestRepository.d.ts +1 -2
- package/lib/RestRepository.js.map +1 -1
- package/lib/RestService.d.ts +1 -1
- package/lib/esm/RestRepository.d.ts +1 -2
- package/lib/esm/RestRepository.js +18 -41
- package/lib/esm/RestRepository.js.map +1 -1
- package/lib/esm/RestService.d.ts +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/package.json +3 -2
- package/workdocs/assets/slogans.json +202 -0
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ A lightweight HTTP adapter layer for decaf-ts that enables CRUD-style repositori
|
|
|
29
29
|
|
|
30
30
|
Documentation available [here](https://decaf-ts.github.io/for-http/)
|
|
31
31
|
|
|
32
|
-
Minimal size: 3.
|
|
32
|
+
Minimal size: 3.4 KB kb gzipped
|
|
33
33
|
|
|
34
34
|
|
|
35
35
|
# decaf-ts/for-http — Detailed Description
|
package/dist/for-http.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e,t,r,s,a,i,n){"use strict";class o 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 createAllPrefix(e,...r){const a=await t.Context.args(s.OperationKeys.CREATE,this.class,r,this.adapter,this._overrides||{}),i=a.context.get("ignoreHandlers"),n=a.context.get("ignoreValidation");if(!e.length)return[e,...a.args];if(e=await Promise.all(e.map(async e=>(e=new this.class(e),i||await s.enforceDBDecorators(this,a.context,e,s.OperationKeys.CREATE,s.OperationKeys.ON),e))),!n){const t=a.context.get("ignoredValidationProperties")||[],r=await Promise.all(e.map(e=>Promise.resolve(e.hasErrors(...t)))),i=s.reduceErrorsToPrint(r);if(i)throw new s.ValidationError(i)}return[e,...a.args]}async paginateBy(e,r,s={offset:1,limit:10},...i){const n=await t.Context.args(t.PreparedStatementKeys.PAGE_BY,this.class,i,this.adapter,this._overrides||{}),{log:o,ctxArgs:c}=this.logCtx(n.args,this.paginateBy);o.verbose(`paginating ${a.Model.tableName(this.class)} with page size ${s.limit}`);const l={direction:r,limit:s.limit};return s.bookmark&&(l.bookmark=s.bookmark),this.statement(this.paginateBy.name,e,s.offset,l,...c)}async listBy(e,r,...s){const i=await t.Context.args("list",this.class,s,this.adapter,this._overrides||{}),{log:n,ctxArgs:o}=this.logCtx(i.args,this.listBy);return n.verbose(`listing ${a.Model.tableName(this.class)} by ${e} ${r}`),await this.statement(this.listBy.name,e,{direction:r},...o)}async findBy(e,r,...s){const i=await t.Context.args(t.PreparedStatementKeys.FIND_BY,this.class,s,this.adapter,this._overrides||{}),{log:n,ctxArgs:o}=this.logCtx(i.args,this.findBy);return n.verbose(`finding all ${a.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findBy.name,e,r,{},...o)}async findOneBy(e,r,...s){const i=await t.Context.args(t.PreparedStatementKeys.FIND_ONE_BY,this.class,s,this.adapter,this._overrides||{}),{log:n,ctxArgs:o}=this.logCtx(i.args,this.findOneBy);return n.verbose(`finding One ${a.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findOneBy.name,e,r,{},...o)}async statement(e,...r){const s=await t.Context.args(t.PersistenceKeys.STATEMENT,this.class,r,this.adapter,this._overrides||{}),{log:a,ctxArgs:i,ctx:n}=this.logCtx(s.args,this.statement),o=r.pop(),c={class:this.class,args:r,method:e,params:o},l=this.adapter.toRequest(c,n);return a.verbose("Executing prepared statement "+e),this.adapter.parseResponse(this.class,e,await this.request(l,...i))}async request(e,...r){const s=await t.Context.args("request",this.class,r,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(s.args,this.request);return this.adapter.request(e,...a)}}class c extends o{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return a.Model.tableName(this.class)+" REST service"}}class l 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 d 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),a=this.query,{method:i,args:n,params:o}=a,c=RegExp(`^${t.PreparedStatementKeys.FIND_BY}|${t.PreparedStatementKeys.LIST_BY}`,"gi");if(!i.match(c))throw new t.UnsupportedError(`Method ${i} is not supported for pagination`);c.lastIndex=0;const l=[i.replace(c,t.PreparedStatementKeys.PAGE_BY),...n],d={direction:o.direction,limit:this.size,offset:e,bookmark:this._bookmark};l.push(d);const h=await s.statement(...l,...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)}}function h(e,t,r,s){const a=s||t.name;e[a]=new Proxy(e[a],{apply:async(e,t,s)=>{let a=e.call(t,...s);return a instanceof Promise&&(a=await a),a=r.call(t,a),a instanceof Promise&&(a=await a),a}})}class u extends t.Adapter{constructor(e,t,r){super(e,t,r);const s=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(e=>{h(this,e,t=>s.parseResponse.call(s,void 0,e.name,t),e.name)})}async flags(e,t,r,...s){const a=await super.flags(e,t,r,...s);return Object.assign({},a,{headers:a.headers??{}})}repository(){return c}prepare(e,...r){const{log:s}=this.logCtx(r,this.prepare),i=Object.assign({},e);return e[t.PersistenceKeys.METADATA]&&(s.silly("Passing along persistence metadata for "+e[t.PersistenceKeys.METADATA]),Object.defineProperty(i,t.PersistenceKeys.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:e[t.PersistenceKeys.METADATA]})),{record:e,id:e[a.Model.pk(e.constructor)]}}revert(e,r,i,...n){const{log:o}=this.logCtx(n,this.revert),c={},l="string"==typeof r?a.Model.build(c,r):new r(c);o.silly(`Rebuilding model ${l.constructor.name} id ${i}`);const d="string"==typeof r?a.Model.get(r):r;if(!d)throw new s.InternalError("Failed to retrieve model constructor for "+r);const h=new d(e),u=e[t.PersistenceKeys.METADATA];return u&&(o.silly(`Passing along ${this.flavour} persistence metadata for ${l.constructor.name} id ${i}: ${u}`),Object.defineProperty(h,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:u})),h}toTableName(e){return"string"==typeof e?e:i.toKebabCase(a.Model.tableName(e))}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=a.Model.composed(e,a.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),a=this.toRequest(e,s);return this.request(a,...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 l(this,e)}Paginator(e,t,r){return new d(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 a="string"==typeof e?e:e.message;return a.includes(s.NotFoundError.name)||a.includes("404")?new s.NotFoundError(e):a.includes(s.ConflictError.name)||a.includes("409")?new s.ConflictError(e):a.includes(s.BadRequestError.name)||a.includes("400")?new s.BadRequestError(e):a.includes(s.ValidationError.name)||a.includes("422")?new s.ValidationError(e):a.includes(t.QueryError.name)?new t.QueryError(e):a.includes(t.PagingError.name)?new t.PagingError(e):a.includes(t.UnsupportedError.name)?new t.UnsupportedError(e):a.includes(t.MigrationError.name)?new t.MigrationError(e):a.includes(t.ObserverError.name)?new t.ObserverError(e):a.includes(t.AuthorizationError.name)?new t.AuthorizationError(e):a.includes(t.ForbiddenError.name)?new t.ForbiddenError(e):a.includes(t.ConnectionError.name)?new t.ConnectionError(e):a.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=>(s,a,i)=>r.apply(r.methodMetadata(r.Metadata.key(t.PersistenceKeys.QUERY,a),e),t.prepared(),(e,r,s)=>{s.value=new Proxy(s.value,{async apply(e,s,a){const i=s,n=await t.Context.args(r,i.class,a,i.adapter,i._overrides||{}),{log:o,ctxArgs:c}=i.logCtx(n.args,e);return o.verbose("Running prepared statement "+e.name),o.debug("With args: "+JSON.stringify(a,null,2)),s.statement(e.name,...c)}})})(s,a,i)}).apply()}}u.decoration();const p="axios";class g extends u{constructor(e,t){super(e,p,t)}getClient(){return new n.Axios({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,r){let s,a;e instanceof t.Context?(a=e,s=void 0):(s=e,a=r);const i={};if(a)try{i.headers=a.get("headers")||{}}catch(e){}return s&&(i.method="GET",i.url=this.url(s.class,[t.PersistenceKeys.STATEMENT,s.method,...s.args||[]],s.params)),i}async request(e,...t){let r={};try{const{ctx:e}=this.logCtx(t,this.request);r=this.toRequest(e)}catch(e){}return this.client.request(Object.assign({},e,r))}parseResponse(e,r,a){if(a.status>=400)throw this.parseError(a.error||a.status);switch(r){case s.BulkCrudOperationKeys.CREATE_ALL:case s.BulkCrudOperationKeys.READ_ALL:case s.BulkCrudOperationKeys.UPDATE_ALL:case s.BulkCrudOperationKeys.DELETE_ALL:case t.PreparedStatementKeys.FIND_BY:case t.PreparedStatementKeys.LIST_BY:case t.PreparedStatementKeys.PAGE_BY:case s.OperationKeys.CREATE:case s.OperationKeys.READ:case s.OperationKeys.UPDATE:case s.OperationKeys.DELETE:return a.body;case t.PreparedStatementKeys.FIND_ONE_BY:case"statement":return super.parseResponse(e,r,a.body);default:return a.body}}async create(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.create);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return i.debug(`POSTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.client.post(s,Object.assign({},r,{[a.ModelKeys.ANCHOR]:e.name}),o)}catch(e){throw this.parseError(e)}}async createAll(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.createAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return i.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.post(t,r.map(t=>Object.assign({},t,{[a.ModelKeys.ANCHOR]:e.name})),s)}catch(e){throw this.parseError(e)}}async read(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.read);try{const r=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(i)}`),this.client.get(r)}catch(e){throw this.parseError(e)}}async readAll(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.readAll);try{const r=this.url(e,["bulk"],{ids:t}),i=this.toRequest(a);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(i)}`),this.client.get(r)}catch(e){throw this.parseError(e)}}async update(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return i.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),this.client.put(s,Object.assign({},r,{[a.ModelKeys.ANCHOR]:e.name}))}catch(e){throw this.parseError(e)}}async updateAll(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.updateAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return i.debug(`PUTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.put(t,r.map(t=>Object.assign({},t,{[a.ModelKeys.ANCHOR]:e.name})))}catch(e){throw this.parseError(e)}}async delete(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.delete);try{const r=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(i)}`),this.client.delete(r)}catch(e){throw this.parseError(e)}}async deleteAll(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.delete);try{const r=this.url(e,["bulk"],{ids:t}),i=this.toRequest(a);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(i)}`),this.client.delete(r)}catch(e){throw this.parseError(e)}}parseError(e,...t){return u.parseError(e,...t)}}g.decoration();const y="##VERSION##",f="##PACKAGE##";r.Metadata.registerLibrary(f,y),e.AxiosFlavour=p,e.AxiosHttpAdapter=g,e.HttpAdapter=u,e.HttpPaginator=d,e.HttpStatement=l,e.PACKAGE_NAME=f,e.RestRepository=o,e.RestService=c,e.VERSION=y,e.suffixMethod=h},"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("@decaf-ts/logging"),require("axios")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/core","@decaf-ts/decoration","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","@decaf-ts/logging","axios"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-http"]={},e.decafTsCore,e.decafTsDecoration,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.decafTsLogging,e.axios);
|
|
1
|
+
var e,t;e=this,t=function(e,t,r,s,a,i,n){"use strict";class o 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},...i){const{offset:n,bookmark:o,limit:c}=s,{log:l,ctxArgs:d}=(await this.logCtx(i,t.PreparedStatementKeys.PAGE_BY,!0)).for(this.paginateBy);l.verbose(`paginating ${a.Model.tableName(this.class)} with page size ${c}`);const u={direction:r,limit:c};return o&&(u.bookmark=o),this.statement(this.paginateBy.name,e,n,u,...d)}async listBy(e,r,...s){const{log:i,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.LIST_BY,!0)).for(this.listBy);return i.verbose(`listing ${a.Model.tableName(this.class)} by ${e} ${r}`),await this.statement(this.listBy.name,e,{direction:r},...n)}async findBy(e,r,...s){const{log:i,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_BY,!0)).for(this.findBy);return i.verbose(`finding ${a.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findBy.name,e,r,{},...n)}async findOneBy(e,r,...s){const{log:i,ctxArgs:n}=(await this.logCtx(s,t.PreparedStatementKeys.FIND_ONE_BY,!0)).for(this.findOneBy);return i.verbose(`finding ${a.Model.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findOneBy.name,e,r,{},...n)}async statement(e,...r){const{log:s,ctx:a,ctxArgs:i}=(await this.logCtx(r,t.PersistenceKeys.STATEMENT,!0)).for(this.statement),n=i.slice(0,-1),o=n[n.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:n.pop(),l={class:this.class,args:n,method:e,params:c},d=this.adapter.toRequest(l,a);return s.verbose("Executing prepared statement "+e),this.adapter.parseResponse(this.class,e,await this.request(d,...i))}async request(e,...r){const s=await t.Context.args("request",this.class,r,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(s.args,this.request);return this.adapter.request(e,...a)}}class c extends o{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return a.Model.tableName(this.class)+" REST service"}}class l 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 d 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),a=this.query,{method:i,args:n,params:o}=a,c=RegExp(`^${t.PreparedStatementKeys.FIND_BY}|${t.PreparedStatementKeys.LIST_BY}`,"gi");if(!i.match(c))throw new t.UnsupportedError(`Method ${i} is not supported for pagination`);c.lastIndex=0;const l=[i.replace(c,t.PreparedStatementKeys.PAGE_BY),...n],d={direction:o.direction,limit:this.size,offset:e,bookmark:this._bookmark};l.push(d);const u=await s.statement(...l,...r);return this.apply(u)}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)}}function u(e,t,r,s){const a=s||t.name;e[a]=new Proxy(e[a],{apply:async(e,t,s)=>{let a=e.call(t,...s);return a instanceof Promise&&(a=await a),a=r.call(t,a),a instanceof Promise&&(a=await a),a}})}class p extends t.Adapter{constructor(e,t,r){super(e,t,r);const s=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(e=>{u(this,e,t=>s.parseResponse.call(s,void 0,e.name,t),e.name)})}async flags(e,t,r,...s){const a=await super.flags(e,t,r,...s);return Object.assign({},a,{headers:a.headers??{}})}repository(){return c}prepare(e,...r){const{log:s}=this.logCtx(r,this.prepare),i=Object.assign({},e);return e[t.PersistenceKeys.METADATA]&&(s.silly("Passing along persistence metadata for "+e[t.PersistenceKeys.METADATA]),Object.defineProperty(i,t.PersistenceKeys.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:e[t.PersistenceKeys.METADATA]})),{record:e,id:e[a.Model.pk(e.constructor)]}}revert(e,r,i,...n){const{log:o}=this.logCtx(n,this.revert),c={},l="string"==typeof r?a.Model.build(c,r):new r(c);o.silly(`Rebuilding model ${l.constructor.name} id ${i}`);const d="string"==typeof r?a.Model.get(r):r;if(!d)throw new s.InternalError("Failed to retrieve model constructor for "+r);const u=new d(e),p=e[t.PersistenceKeys.METADATA];return p&&(o.silly(`Passing along ${this.flavour} persistence metadata for ${l.constructor.name} id ${i}: ${p}`),Object.defineProperty(u,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:p})),u}toTableName(e){return"string"==typeof e?e:i.toKebabCase(a.Model.tableName(e))}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=a.Model.composed(e,a.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),a=this.toRequest(e,s);return this.request(a,...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 l(this,e)}Paginator(e,t,r){return new d(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 a="string"==typeof e?e:e.message;return a.includes(s.NotFoundError.name)||a.includes("404")?new s.NotFoundError(e):a.includes(s.ConflictError.name)||a.includes("409")?new s.ConflictError(e):a.includes(s.BadRequestError.name)||a.includes("400")?new s.BadRequestError(e):a.includes(s.ValidationError.name)||a.includes("422")?new s.ValidationError(e):a.includes(t.QueryError.name)?new t.QueryError(e):a.includes(t.PagingError.name)?new t.PagingError(e):a.includes(t.UnsupportedError.name)?new t.UnsupportedError(e):a.includes(t.MigrationError.name)?new t.MigrationError(e):a.includes(t.ObserverError.name)?new t.ObserverError(e):a.includes(t.AuthorizationError.name)?new t.AuthorizationError(e):a.includes(t.ForbiddenError.name)?new t.ForbiddenError(e):a.includes(t.ConnectionError.name)?new t.ConnectionError(e):a.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=>(s,a,i)=>r.apply(r.methodMetadata(r.Metadata.key(t.PersistenceKeys.QUERY,a),e),t.prepared(),(e,r,s)=>{s.value=new Proxy(s.value,{async apply(e,s,a){const i=s,n=await t.Context.args(r,i.class,a,i.adapter,i._overrides||{}),{log:o,ctxArgs:c}=i.logCtx(n.args,e);return o.verbose("Running prepared statement "+e.name),o.debug("With args: "+JSON.stringify(a,null,2)),s.statement(e.name,...c)}})})(s,a,i)}).apply()}}p.decoration();const h="axios";class g extends p{constructor(e,t){super(e,h,t)}getClient(){return new n.Axios({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,r){let s,a;e instanceof t.Context?(a=e,s=void 0):(s=e,a=r);const i={};if(a)try{i.headers=a.get("headers")||{}}catch(e){}return s&&(i.method="GET",i.url=this.url(s.class,[t.PersistenceKeys.STATEMENT,s.method,...s.args||[]],s.params)),i}async request(e,...t){let r={};try{const{ctx:e}=this.logCtx(t,this.request);r=this.toRequest(e)}catch(e){}return this.client.request(Object.assign({},e,r))}parseResponse(e,r,a){if(a.status>=400)throw this.parseError(a.error||a.status);switch(r){case s.BulkCrudOperationKeys.CREATE_ALL:case s.BulkCrudOperationKeys.READ_ALL:case s.BulkCrudOperationKeys.UPDATE_ALL:case s.BulkCrudOperationKeys.DELETE_ALL:case t.PreparedStatementKeys.FIND_BY:case t.PreparedStatementKeys.LIST_BY:case t.PreparedStatementKeys.PAGE_BY:case s.OperationKeys.CREATE:case s.OperationKeys.READ:case s.OperationKeys.UPDATE:case s.OperationKeys.DELETE:return a.body;case t.PreparedStatementKeys.FIND_ONE_BY:case"statement":return super.parseResponse(e,r,a.body);default:return a.body}}async create(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.create);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return i.debug(`POSTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),await this.client.post(s,Object.assign({},r,{[a.ModelKeys.ANCHOR]:e.name}),o)}catch(e){throw this.parseError(e)}}async createAll(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.createAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return i.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.post(t,r.map(t=>Object.assign({},t,{[a.ModelKeys.ANCHOR]:e.name})),s)}catch(e){throw this.parseError(e)}}async read(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.read);try{const r=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(i)}`),this.client.get(r)}catch(e){throw this.parseError(e)}}async readAll(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.readAll);try{const r=this.url(e,["bulk"],{ids:t}),i=this.toRequest(a);return s.debug(`GETing from ${r} and cfg ${JSON.stringify(i)}`),this.client.get(r)}catch(e){throw this.parseError(e)}}async update(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(n);return i.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),this.client.put(s,Object.assign({},r,{[a.ModelKeys.ANCHOR]:e.name}))}catch(e){throw this.parseError(e)}}async updateAll(e,t,r,...s){const{log:i,ctx:n}=this.logCtx(s,this.updateAll);try{const t=this.url(e,["bulk"]),s=this.toRequest(n);return i.debug(`PUTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.put(t,r.map(t=>Object.assign({},t,{[a.ModelKeys.ANCHOR]:e.name})))}catch(e){throw this.parseError(e)}}async delete(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.delete);try{const r=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(i)}`),this.client.delete(r)}catch(e){throw this.parseError(e)}}async deleteAll(e,t,...r){const{log:s,ctx:a}=this.logCtx(r,this.delete);try{const r=this.url(e,["bulk"],{ids:t}),i=this.toRequest(a);return s.debug(`DELETEing from ${r} and cfg ${JSON.stringify(i)}`),this.client.delete(r)}catch(e){throw this.parseError(e)}}parseError(e,...t){return p.parseError(e,...t)}}g.decoration();const y="##VERSION##",f="##PACKAGE##";r.Metadata.registerLibrary(f,y),e.AxiosFlavour=h,e.AxiosHttpAdapter=g,e.HttpAdapter=p,e.HttpPaginator=d,e.HttpStatement=l,e.PACKAGE_NAME=f,e.RestRepository=o,e.RestService=c,e.VERSION=y,e.suffixMethod=u},"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("@decaf-ts/logging"),require("axios")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/core","@decaf-ts/decoration","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","@decaf-ts/logging","axios"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-http"]={},e.decafTsCore,e.decafTsDecoration,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.decafTsLogging,e.axios);
|
|
2
2
|
//# sourceMappingURL=for-http.cjs.map
|
package/dist/for-http.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-http.cjs","sources":["../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.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],"names":["RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","createAllPrefix","models","args","contextArgs","Context","OperationKeys","CREATE","class","ignoreHandlers","context","get","ignoreValidate","length","Promise","all","map","async","m","enforceDBDecorators","ON","ignoredProps","errors","resolve","hasErrors","errorMessages","reduceErrorsToPrint","ValidationError","paginateBy","key","order","ref","offset","limit","PreparedStatementKeys","PAGE_BY","log","ctxArgs","logCtx","verbose","Model","params","direction","bookmark","statement","name","listBy","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","PersistenceKeys","STATEMENT","ctx","pop","query","method","req","toRequest","parseResponse","request","details","RestService","ignoreValidation","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","size","pagePrepared","page","argz","repo","forModel","alias","regexp","RegExp","LIST_BY","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","result","apply","prepare","rawStatement","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","config","flavour","self","create","read","update","delete","createAll","readAll","updateAll","deleteAll","forEach","res","undefined","flags","operation","model","headers","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","ob","constr","InternalError","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","join","entries","v","searchParams","append","JSON","stringify","extractIdArgs","idStr","composed","split","separator","isSerializedPage","data","d","raw","rawInput","Sequence","options","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","prepared","propertyKey","debug","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","e","client","status","error","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","READ","UPDATE","DELETE","body","cfg","post","ModelKeys","ANCHOR","ids","put","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"sDAmDM,MAAOA,UAIHC,EAAAA,WAOR,WAAAC,CAAYC,EAAYC,GACtBC,MAAMF,EAASC,GAPEE,KAAUC,WAAGC,OAAOC,OAAO,CAAA,EAAIJ,MAAkB,WAAG,CACrEK,oBAAoB,EACpBC,2BAA2B,EAC3BC,4BAA4B,GAK7B,CAWD,GAAAC,CACEC,EACAC,EACAC,GAEA,OAAOV,KAAKH,QAAQU,IAAIC,EAAWC,EAAmBC,EACvD,CAEkB,qBAAMC,CACvBC,KACGC,GAEH,MAAMC,QAAoBC,EAAOA,QAACF,KAChCG,EAAaA,cAACC,OACdjB,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,GAEjBkB,EAAiBL,EAAYM,QAAQC,IAAI,kBACzCC,EAAiBR,EAAYM,QAAQC,IAAI,oBAC/C,IAAKT,EAAOW,OAAQ,MAAO,CAACX,KAAWE,EAAYD,MAiBnD,GAfAD,QAAeY,QAAQC,IACrBb,EAAOc,IAAIC,MAAOC,IAChBA,EAAI,IAAI5B,KAAKkB,MAAMU,GACdT,SACGU,EAAmBA,oBACvB7B,KACAc,EAAYM,QACZQ,EACAZ,EAAAA,cAAcC,OACdD,gBAAcc,IAEXF,MAINN,EAAgB,CACnB,MAAMS,EACJjB,EAAYM,QAAQC,IAAI,gCAAkC,GAEtDW,QAAeR,QAAQC,IAC3Bb,EAAOc,IAAKE,GAAMJ,QAAQS,QAAQL,EAAEM,aAAaH,MAG7CI,EAAgBC,sBAAoBJ,GAE1C,GAAIG,EAAe,MAAM,IAAIE,EAAAA,gBAAgBF,EAC9C,CACD,MAAO,CAACvB,KAAWE,EAAYD,KAChC,CAEQ,gBAAMyB,CACbC,EACAC,EACAC,EAA+C,CAC7CC,OAAQ,EACRC,MAAO,OAEN9B,GAEH,MAAMC,QAAoBC,EAAOA,QAACF,KAChC+B,EAAqBA,sBAACC,QACtB7C,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB6C,IAAEA,EAAGC,QAAEA,GAAY/C,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAKsC,YAC5DQ,EAAIG,QACF,cAAcC,EAAAA,MAAM1C,UAAUR,KAAKkB,yBAAyBuB,EAAIE,SAGlE,MAAMQ,EAA+B,CACnCC,UAAWZ,EACXG,MAAOF,EAAIE,OAKb,OAHIF,EAAIY,WACNF,EAAOE,SAAWZ,EAAIY,UAEjBrD,KAAKsD,UACVtD,KAAKsC,WAAWiB,KAChBhB,EACAE,EAAIC,OACJS,KACGJ,EAEN,CAEQ,YAAMS,CACbjB,EACAC,KACG3B,GAEH,MAAMC,QAAoBC,EAAAA,QAAQF,KAChC,OACAb,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB6C,IAAEA,EAAGC,QAAEA,GAAY/C,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAKwD,QAI5D,OAHAV,EAAIG,QACF,WAAWC,EAAKA,MAAC1C,UAAUR,KAAKkB,aAAaqB,KAAiBC,WAElDxC,KAAKsD,UACjBtD,KAAKwD,OAAOD,KACZhB,EACA,CAAEa,UAAWZ,MACVO,EAEN,CAEQ,YAAMU,CACblB,EACAmB,KACG7C,GAEH,MAAMC,QAAoBC,EAAOA,QAACF,KAChC+B,EAAqBA,sBAACe,QACtB3D,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB6C,IAAEA,EAAGC,QAAEA,GAAY/C,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAKyD,QAI5D,OAHAX,EAAIG,QACF,eAAeC,EAAKA,MAAC1C,UAAUR,KAAKkB,eAAeqB,KAAiBmB,WAExD1D,KAAKsD,UACjBtD,KAAKyD,OAAOF,KACZhB,EACAmB,EACA,MACGX,EAEN,CAEQ,eAAMa,CACbrB,EACAmB,KACG7C,GAEH,MAAMC,QAAoBC,EAAOA,QAACF,KAChC+B,EAAqBA,sBAACiB,YACtB7D,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB6C,IAAEA,EAAGC,QAAEA,GAAY/C,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAK4D,WAI5D,OAHAd,EAAIG,QACF,eAAeC,EAAKA,MAAC1C,UAAUR,KAAKkB,eAAeqB,KAAiBmB,WAExD1D,KAAKsD,UACjBtD,KAAK4D,UAAUL,KACfhB,EACAmB,EACA,MACGX,EAEN,CAEQ,eAAMO,CACbC,KACG1C,GAEH,MAAMC,QAAoBC,EAAOA,QAACF,KAChCiD,EAAeA,gBAACC,UAChB/D,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB6C,IAAEA,EAAGC,QAAEA,EAAOiB,IAAEA,GAAQhE,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAKsD,WAC3DH,EAAStC,EAAKoD,MACdC,EAAgC,CACpChD,MAAOlB,KAAKkB,MACZL,KAAMA,EACNsD,OAAQZ,EACRJ,OAAQA,GAEJiB,EAAMpE,KAAKH,QAAQwE,UAAUH,EAAOF,GAE1C,OADAlB,EAAIG,QAAQ,gCAAgCM,GACrCvD,KAAKH,QAAQyE,cAClBtE,KAAKkB,MACLqC,QACMvD,KAAKuE,QAAQH,KAAQrB,GAE9B,CAED,aAAMwB,CACJC,KACG3D,GAEH,MAAMC,QAAoBC,EAAAA,QAAQF,KAChC,UACAb,KAAKkB,MACLL,EACAb,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjB8C,QAAEA,GAAY/C,KAAKgD,OAAOlC,EAAYD,KAAMb,KAAKuE,SACvD,OAAOvE,KAAKH,QAAQ0E,QAAWC,KAAYzB,EAC5C,ECnOG,MAAO0B,UAIH/E,EAgBR,WAAAE,CAAYC,EAAYC,GACtBC,MAAMF,EAASC,GAhBEE,KAAUC,WAAGC,OAAOC,OAAO,CAAA,EAAIJ,MAAkB,WAAG,CACrE2E,kBAAkB,EAClBvD,gBAAgB,EAChBf,oBAAoB,EACpBC,2BAA2B,EAC3BC,4BAA4B,GAY7B,CAEQ,QAAAqE,GACP,OAAUzB,EAAAA,MAAM1C,UAAUR,KAAKkB,OAAxB,eACR,ECvEG,MAAO0D,UAIHC,EAAAA,UACR,WAAAjF,CAAYC,EAAYiF,GACtB/E,MAAMF,EAASiF,EAChB,CAEkB,KAAAC,GACjB,MAAM,IAAIC,EAAgBA,iBACxB,4IAEH,CAEkB,cAAAC,CAEjBC,KAEGrE,GAEH,MAAM,IAAImE,EAAgBA,iBACxB,4IAEH,EClBG,MAAOG,UAIHC,EAAAA,UACR,WAAAxF,CAAYC,EAAYqE,EAAUmB,EAAcvF,GAC9CC,MAAMF,EAASqE,EAAOmB,EAAMvF,EAC7B,CAEkB,kBAAMwF,CACvBC,KACGC,GAEH,MAAMC,EAAO9F,EAAUA,WAAC+F,SAAS1F,KAAKF,MAAOE,KAAKH,QAAQ8F,OACpDrC,EAAYtD,KAAKkE,OACjBC,OAAEA,EAAMtD,KAAEA,EAAIsC,OAAEA,GAAWG,EAC3BsC,EAAaC,OACjB,IAAIjD,EAAqBA,sBAACe,WAAWf,EAAAA,sBAAsBkD,UAC3D,MAEF,IAAK3B,EAAO4B,MAAMH,GAChB,MAAM,IAAIZ,EAAgBA,iBACxB,UAAUb,qCAEdyB,EAAOI,UAAY,EACnB,MAEMC,EAAe,CAFD9B,EAAO+B,QAAQN,EAAQhD,EAAAA,sBAAsBC,YAE3BhC,GAChCsF,EAAuC,CAC3C/C,UAAWD,EAAOC,UAClBT,MAAO3C,KAAKqF,KACZ3C,OAAQ6C,EACRlC,SAAUrD,KAAKoG,WAGjBH,EAAaI,KAAKF,GAElB,MAAMG,QAAeb,EAAKnC,aACpB2C,KACDT,GAEL,OAAOxF,KAAKuG,MAAMD,EACnB,CAES,OAAAE,CAAQC,GAChB,MAAM,IAAIzB,EAAgBA,iBACxB,sGAEH,CAEQ,IAAAO,CACPA,EAAe,KACZ1E,GAEH,OAAOd,MAAMwF,KAAKA,KAAS1E,EAC5B,ECfG,SAAU6F,EACdC,EACAC,EACAC,EACAC,GAEA,MAAMvD,EAAOuD,GAA0BF,EAAOrD,KAC9CoD,EAAIpD,GAAQ,IAAIwD,MAAMJ,EAAIpD,GAAO,CAC/BgD,MAAO5E,MAAOqF,EAAQC,EAASC,KAC7B,IAAIC,EAAUH,EAAOI,KAAKH,KAAYC,GAOtC,OANIC,aAAmB3F,UAAS2F,QAAgBA,GAEhDA,EAAUN,EAAOO,KAAKH,EAASE,GAE3BA,aAAmB3F,UAAS2F,QAAgBA,GAEzCA,IAGb,CAiCM,MAAgBE,UAMZC,EAAAA,QACR,WAAA1H,CAAsB2H,EAAcC,EAAiB7B,GACnD5F,MAAMwH,EAAQC,EAAS7B,GAGvB,MAAM8B,EAAOzH,KACb,CACEA,KAAK0H,OACL1H,KAAK2H,KACL3H,KAAK4H,OACL5H,KAAK6H,OACL7H,KAAK8H,UACL9H,KAAK+H,QACL/H,KAAKgI,UACLhI,KAAKiI,WACLC,QAAS/D,IACTuC,EACE1G,KACAmE,EACCgE,GACCV,EAAKnD,cAAc8C,KAAKK,OAAMW,EAAWjE,EAAOZ,KAAM4E,GACxDhE,EAAOZ,OAGZ,CAYkB,WAAM8E,CACvBC,EACAC,EACAzD,KACGjE,GAEH,MAAMwH,QAActI,MAAMsI,MAAMC,EAAWC,EAAOzD,KAAcjE,GAChE,OAAOX,OAAOC,OAAO,CAAE,EAAEkI,EAAO,CAC9BG,QAASH,EAAMG,SAAW,CAAE,GAE/B,CASQ,UAAAC,GAGP,OAAOhE,CACR,CAYQ,OAAA+B,CACP+B,KACG1H,GAEH,MAAMiC,IAAEA,GAAQ9C,KAAKgD,OAAOnC,EAAMb,KAAKwG,SACjCF,EAASpG,OAAOC,OAAO,CAAE,EAAEoI,GAajC,OAZKA,EAAczE,kBAAgB4E,YACjC5F,EAAI6F,MACF,0CAA2CJ,EAAczE,EAAAA,gBAAgB4E,WAE3ExI,OAAO0I,eAAetC,EAAQxC,EAAAA,gBAAgB4E,SAAU,CACtDG,YAAY,EACZC,UAAU,EACVC,cAAc,EACdrF,MAAQ6E,EAAczE,EAAeA,gBAAC4E,aAInC,CACLM,OAAQT,EACRU,GAAIV,EAAMrF,EAAKA,MAACgG,GAAGX,EAAM3I,cAE5B,CAaQ,MAAAuJ,CACPxC,EACA7G,EACAmJ,KACGpI,GAEH,MAAMiC,IAAEA,GAAQ9C,KAAKgD,OAAOnC,EAAMb,KAAKmJ,QACjCC,EAA0B,CAAA,EAC1BxH,EACa,iBAAV9B,EAAqBoD,EAAAA,MAAM6B,MAAMqE,EAAItJ,GAAS,IAAIA,EAAMsJ,GAEjEtG,EAAI6F,MAAM,oBAAoB/G,EAAEhC,YAAY2D,WAAW0F,KACvD,MAAMI,EAA0B,iBAAVvJ,EAAqBoD,EAAKA,MAAC7B,IAAIvB,GAASA,EAC9D,IAAKuJ,EACH,MAAM,IAAIC,EAAAA,cACR,4CAA4CxJ,GAEhD,MAAMwG,EAAS,IAAK+C,EAA0B1C,GACxC4C,EAAW5C,EAAI7C,EAAeA,gBAAC4E,UAarC,OAZIa,IACFzG,EAAI6F,MACF,iBAAiB3I,KAAKwH,oCAAoC5F,EAAEhC,YAAY2D,WAAW0F,MAAOM,KAE5FrJ,OAAO0I,eAAetC,EAAQxC,EAAAA,gBAAgB4E,SAAU,CACtDG,YAAY,EACZE,cAAc,EACdD,UAAU,EACVpF,MAAO6F,KAIJjD,CACR,CAES,WAAAkD,CAA6BC,GACrC,MAAoB,iBAANA,EAAiBA,EAAIC,EAAWA,YAACxG,QAAM1C,UAAUiJ,GAChE,CAgDD,GAAAlJ,CACEC,EACAC,EACAC,GAEKA,GACCD,IAAekJ,MAAMC,QAAQnJ,KAC/BC,EAAcD,EACdA,EAAa,IAIjBD,EAAYR,KAAKwJ,YAAYhJ,GAC7B,MAAMD,EAAM,IAAIsJ,IACd,GAAG7J,KAAKuH,OAAOuC,cAAc9J,KAAKuH,OAAOwC,QAAQvJ,IAAYC,GAAcA,EAAWc,OAAS,IAAKd,EAAwBuJ,KAAK,KAAS,MAa5I,OAXItJ,GACFR,OAAO+J,QAAQvJ,GAAawH,QAAQ,EAAE3F,EAAKmB,MACrCiG,MAAMC,QAAQlG,GAChBA,EAAMwE,QAASgC,GAAM3J,EAAI4J,aAAaC,OAAO7H,EAAK2H,EAAEvF,aAC1B,iBAAVjB,EAChBnD,EAAI4J,aAAaC,OAAO7H,EAAK8H,KAAKC,UAAU5G,SAClB,IAAVA,GAChBnD,EAAI4J,aAAaC,OAAO7H,EAAKmB,EAAMiB,cAIlCpE,EAAIoE,UACZ,CAiBS,aAAA4F,CACRhC,EACAU,GAEA,MAAMuB,EAAQvB,EAAGtE,WACjB,GAAqB,iBAAV4D,EAAoB,MAAO,CAACiC,GACvC,MAAMC,EAAWvH,EAAKA,MAACuH,SAASlC,EAAOrF,EAAAA,MAAMgG,GAAGX,IAChD,OAAKkC,EACED,EAAME,MAAMD,EAASE,WADN,CAACH,EAExB,CAED,aAAAlG,CACExE,EACAqE,EACAgE,GAEA,OAAIrI,GAASsF,EAAAA,UAAUwF,iBAAiBzC,GAC/BjI,OAAOC,OAAO,CAAE,EAAEgI,EAAK,CAC5B0C,KAAM1C,EAAI0C,KAAKnJ,IAAKoJ,GAAW,IAAIhL,EAAMgL,MAGtC3C,CACR,CA8ED,GAAA4C,CAAOC,KAAgBnK,GACrB,MAAMkC,QAAEA,EAAOiB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK+K,KAC1C3G,EAAMpE,KAAKqE,UAAU2G,EAAUhH,GACrC,OAAOhE,KAAKuE,QAAQH,KAAQrB,EAC7B,CAYQ,QAAAkI,CAASC,GAChB,OAAO1J,QAAQ2J,OACb,IAAInG,EAAAA,iBACF,0FAGL,CAYQ,SAAAH,CACPC,GAEA,OAAO,IAAIF,EAAc5E,KAAM8E,EAChC,CAEQ,SAAAM,CACPlB,EACAmB,EACAvF,GAEA,OAAO,IAAIqF,EACTnF,KACAkE,EACAmB,EACAvF,EAEH,CAYD,cAAAmF,CAAeC,GACb,MAAM,IAAIF,EAAAA,iBACR,yFAEH,CAED,iBAAOoG,CACLC,KAEGxK,GAEH,MAAMyK,EAAqB,iBAARD,EAAmBA,EAAMA,EAAIE,QAChD,OAAID,EAAIE,SAASC,EAAaA,cAAClI,OAAS+H,EAAIE,SAAS,OAC5C,IAAIC,EAAAA,cAAcJ,GACvBC,EAAIE,SAASE,EAAaA,cAACnI,OAAS+H,EAAIE,SAAS,OAC5C,IAAIE,EAAAA,cAAcL,GACvBC,EAAIE,SAASG,EAAeA,gBAACpI,OAAS+H,EAAIE,SAAS,OAC9C,IAAIG,EAAAA,gBAAgBN,GACzBC,EAAIE,SAASnJ,EAAeA,gBAACkB,OAAS+H,EAAIE,SAAS,OAC9C,IAAInJ,EAAAA,gBAAgBgJ,GACzBC,EAAIE,SAASI,EAAUA,WAACrI,MAAc,IAAIqI,EAAAA,WAAWP,GACrDC,EAAIE,SAASK,EAAWA,YAACtI,MAAc,IAAIsI,EAAAA,YAAYR,GACvDC,EAAIE,SAASxG,EAAgBA,iBAACzB,MACzB,IAAIyB,EAAAA,iBAAiBqG,GAC1BC,EAAIE,SAASM,EAAcA,eAACvI,MAAc,IAAIuI,EAAAA,eAAeT,GAC7DC,EAAIE,SAASO,EAAaA,cAACxI,MAAc,IAAIwI,EAAAA,cAAcV,GAC3DC,EAAIE,SAASQ,EAAkBA,mBAACzI,MAC3B,IAAIyI,EAAAA,mBAAmBX,GAC5BC,EAAIE,SAASS,EAAcA,eAAC1I,MAAc,IAAI0I,EAAAA,eAAeZ,GAC7DC,EAAIE,SAASU,EAAeA,gBAAC3I,MACxB,IAAI2I,EAAAA,gBAAgBb,GACzBC,EAAIE,SAASW,EAAkBA,mBAAC5I,MAC3B,IAAI4I,EAAAA,mBAAmBd,GACzB,IAAI/B,EAAAA,cAAc+B,EAC1B,CAED,iBAAgBe,GACdrM,MAAMqM,aAmDNC,aAAWC,IAAIxI,EAAeA,gBAACyI,OAC5BC,OAAO,CACNC,UApDWvB,GACN,CAAevE,EAAa+F,EAAYC,IAyCtCpG,EAAAA,MACLqG,EAAAA,eAAeC,EAAQA,SAACtK,IAAIuB,EAAeA,gBAACyI,MAAOG,GAAOxB,GAC1D4B,EAAAA,WAxCO,CACLnG,EACAoG,EACAJ,KAECA,EAA4CjJ,MAAQ,IAAIqD,MACtD4F,EAA4CjJ,MAC7C,CACE,WAAM6C,CACJS,EACAC,EACApG,GAEA,MAAM4E,EAAOwB,EAEPnG,QAAoBC,EAAOA,QAACF,KAChCkM,EACAtH,EAAKvE,MACLL,EACA4E,EAAc,QACdA,EAAiB,YAAK,CAAE,IAEpB3C,IAAEA,EAAGC,QAAEA,GAAY0C,EAAa,OACpC3E,EAAYD,KACZmG,GAIF,OAFAlE,EAAIG,QAAQ,8BAA8B+D,EAAOzD,MACjDT,EAAIkK,MAAM,cAAc3C,KAAKC,UAAUzJ,EAAM,KAAM,IAC3CoG,EAAiC3D,UACvC0D,EAAOzD,QACJR,EAEN,GAGP,EAGKwD,CAILI,EAAK+F,EAAMC,KAQdpG,OACJ,EAGHc,EAAY+E,aCxlBL,MAAMa,EAAe,QC+DtB,MAAOC,UAAyB7F,EAOpC,WAAAzH,CAAY2H,EAAoB5B,GAC9B5F,MAAMwH,EAAQ0F,EAActH,EAC7B,CAEkB,SAAAwH,GACjB,OAAO,IAAIC,EAAAA,MAAM,CACfC,QAAS,GAAGrN,KAAKuH,OAAOuC,cAAc9J,KAAKuH,OAAOwC,QAErD,CAQQ,SAAA1F,CACPiJ,EACAtJ,GAEA,IAAIE,EACA9C,EAEAkM,aAAsBvM,EAAAA,SACxBK,EAAUkM,EACVpJ,OAAQkE,IAERlE,EAAQoJ,EACRlM,EAAU4C,GAGZ,MAAMI,EAA0B,CAAA,EAChC,GAAIhD,EACF,IACEgD,EAAIoE,QAAUpH,EAAQC,IAAI,YAAc,CAAA,CAEzC,CAAC,MAAOkM,GAER,CAUH,OARIrJ,IACFE,EAAID,OAAS,MACbC,EAAI7D,IAAMP,KAAKO,IACb2D,EAAMhD,MACN,CAAC4C,EAAAA,gBAAgBC,UAAWG,EAAMC,UAAYD,EAAMrD,MAAQ,IAC5DqD,EAAMf,SAGHiB,CACR,CAUQ,aAAMG,CACbC,KACG3D,GAEH,IAAIiE,EAAY,CAAA,EAChB,IACE,MAAMd,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAKuE,SACvCO,EAAY9E,KAAKqE,UAAUL,EAE5B,CAAC,MAAOuJ,GAER,CACD,OAAOvN,KAAKwN,OAAOjJ,QAAQrE,OAAOC,OAAO,GAAIqE,EAASM,GACvD,CAEQ,aAAAR,CACPxE,EACAqE,EACAgE,GAEA,GAAIA,EAAIsF,QAAU,IAChB,MAAMzN,KAAKoL,WAAYjD,EAAIuF,OAAoBvF,EAAIsF,QACrD,OAAQtJ,GACN,KAAKwJ,EAAAA,sBAAsBC,WAC3B,KAAKD,EAAAA,sBAAsBE,SAC3B,KAAKF,EAAAA,sBAAsBG,WAC3B,KAAKH,EAAAA,sBAAsBI,WAC3B,KAAKnL,EAAAA,sBAAsBe,QAC3B,KAAKf,EAAAA,sBAAsBkD,QAC3B,KAAKlD,EAAqBA,sBAACC,QAE3B,KAAK7B,EAAAA,cAAcC,OACnB,KAAKD,EAAAA,cAAcgN,KACnB,KAAKhN,EAAAA,cAAciN,OACnB,KAAKjN,EAAaA,cAACkN,OACjB,OAAO/F,EAAIgG,KACb,KAAKvL,EAAAA,sBAAsBiB,YAC3B,IAAK,YACH,OAAO9D,MAAMuE,cAAcxE,EAAOqE,EAAQgE,EAAIgG,MAChD,QACE,OAAOhG,EAAIgG,KAEhB,CAWQ,YAAMzG,CACblH,EACAyI,EACAV,KACG1H,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK0H,QAC5C,IACE,MAAMnH,EAAMP,KAAKO,IACfC,EACAR,KAAKuK,cAAc/J,EAAWyI,IAE1BmF,EAAMpO,KAAKqE,UAAUL,GAI3B,OAHAlB,EAAIkK,MACF,cAAczM,UAAY8J,KAAKC,UAAU/B,cAAkB8B,KAAKC,UAAU8D,YAE/DpO,KAAKwN,OAAOa,KACvB9N,EACAL,OAAOC,OAAO,CAAE,EAAEoI,EAAO,CACvB,CAAC+F,EAASA,UAACC,QAAS/N,EAAU+C,OAEhC6K,EAEH,CAAC,MAAOb,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAEQ,eAAMzF,CACbhI,EACAmJ,EACAV,KACG1H,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK8H,WAC5C,IACE,MAAMvH,EAAMP,KAAKO,IAAIT,EAAO,CAAC,SACvBsO,EAAMpO,KAAKqE,UAAUL,GAI3B,OAHAlB,EAAIkK,MACF,cAAczM,UAAY8J,KAAKC,UAAU/B,cAAkB8B,KAAKC,UAAU8D,MAErEpO,KAAKwN,OAAOa,KACjB9N,EACAgI,EAAM7G,IAAKE,GACT1B,OAAOC,OAAO,CAAA,EAAIyB,EAAG,CACnB,CAAC0M,EAASA,UAACC,QAASzO,EAAMyD,QAG9B6K,EAEH,CAAC,MAAOb,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAUQ,UAAM5F,CACbnH,EACAyI,KACGpI,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK2H,MAC5C,IACE,MAAMpH,EAAMP,KAAKO,IACfC,EACAR,KAAKuK,cAAc/J,EAAWyI,IAE1BmF,EAAMpO,KAAKqE,UAAUL,GAE3B,OADAlB,EAAIkK,MAAM,eAAezM,aAAe8J,KAAKC,UAAU8D,MAChDpO,KAAKwN,OAAOnM,IAAId,EACxB,CAAC,MAAOgN,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CACQ,aAAMxF,CACbvH,EACAgO,KACG3N,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK+H,SAC5C,IACE,MAAMxH,EAAMP,KAAKO,IAAIC,EAAW,CAAC,QAAS,CAAEgO,IAAKA,IAC3CJ,EAAMpO,KAAKqE,UAAUL,GAE3B,OADAlB,EAAIkK,MAAM,eAAezM,aAAe8J,KAAKC,UAAU8D,MAChDpO,KAAKwN,OAAOnM,IAAId,EACxB,CAAC,MAAOgN,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAWQ,YAAM3F,CACbpH,EACAyI,EACAV,KACG1H,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK4H,QAC5C,IACE,MAAMrH,EAAMP,KAAKO,IACfC,EACAR,KAAKuK,cAAc/J,EAAWyI,IAE1BmF,EAAMpO,KAAKqE,UAAUL,GAI3B,OAHAlB,EAAIkK,MACF,aAAazM,UAAY8J,KAAKC,UAAU/B,cAAkB8B,KAAKC,UAAU8D,MAEpEpO,KAAKwN,OAAOiB,IACjBlO,EACAL,OAAOC,OAAO,CAAE,EAAEoI,EAAO,CACvB,CAAC+F,EAASA,UAACC,QAA+B/N,EAAU+C,OAGzD,CAAC,MAAOgK,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAEQ,eAAMvF,CACbxH,EACAgO,EACAjG,KACG1H,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAKgI,WAC5C,IACE,MAAMzH,EAAMP,KAAKO,IAAIC,EAAW,CAAC,SAC3B4N,EAAMpO,KAAKqE,UAAUL,GAI3B,OAHAlB,EAAIkK,MACF,aAAazM,UAAY8J,KAAKC,UAAU/B,cAAkB8B,KAAKC,UAAU8D,MAEpEpO,KAAKwN,OAAOiB,IACjBlO,EACAgI,EAAM7G,IAAKE,GACT1B,OAAOC,OAAO,CAAA,EAAIyB,EAAG,CACnB,CAAC0M,EAASA,UAACC,QAAS/N,EAAU+C,QAIrC,CAAC,MAAOgK,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAUQ,YAAM,CACb/M,EACAyI,KACGpI,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK6H,QAC5C,IACE,MAAMtH,EAAMP,KAAKO,IACfC,EACAR,KAAKuK,cAAc/J,EAAWyI,IAE1BmF,EAAMpO,KAAKqE,UAAUL,GAE3B,OADAlB,EAAIkK,MAAM,kBAAkBzM,aAAe8J,KAAKC,UAAU8D,MACnDpO,KAAKwN,OAAO3F,OAAOtH,EAC3B,CAAC,MAAOgN,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAEQ,eAAMtF,CACbzH,EACAgO,KACG3N,GAEH,MAAMiC,IAAEA,EAAGkB,IAAEA,GAAQhE,KAAKgD,OAAOnC,EAAMb,KAAK6H,QAC5C,IACE,MAAMtH,EAAMP,KAAKO,IAAIC,EAAW,CAAC,QAAS,CAAEgO,IAAKA,IAC3CJ,EAAMpO,KAAKqE,UAAUL,GAE3B,OADAlB,EAAIkK,MAAM,kBAAkBzM,aAAe8J,KAAKC,UAAU8D,MACnDpO,KAAKwN,OAAO3F,OAAOtH,EAC3B,CAAC,MAAOgN,GACP,MAAMvN,KAAKoL,WAAWmC,EACvB,CACF,CAEQ,UAAAnC,CAAgCC,KAAexK,GACtD,OAAOwG,EAAY+D,WAAWC,KAAQxK,EACvC,EC5XHqM,EAAiBd,aCYJ,MAAAsC,EAAU,cAEVC,EAAe,cAE5B9B,EAAAA,SAAS+B,gBAAgBD,EAAcD"}
|
|
1
|
+
{"version":3,"file":"for-http.cjs","sources":["../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.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],"names":["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","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","parseResponse","request","details","contextArgs","Context","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","size","pagePrepared","page","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","result","apply","prepare","rawStatement","suffixMethod","obj","before","suffix","beforeName","Proxy","async","target","thisArg","argArray","results","call","Promise","HttpAdapter","Adapter","config","flavour","self","create","read","update","delete","createAll","readAll","updateAll","deleteAll","forEach","res","flags","operation","model","headers","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","ob","m","constr","get","InternalError","metadata","toTableName","t","toKebabCase","URL","protocol","host","join","entries","v","searchParams","append","JSON","stringify","extractIdArgs","idStr","composed","split","separator","isSerializedPage","data","map","d","raw","rawInput","Sequence","options","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","prepared","propertyKey","debug","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","e","client","status","error","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","OperationKeys","CREATE","READ","UPDATE","DELETE","body","cfg","post","ModelKeys","ANCHOR","ids","put","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/dist/for-http.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Repository as t,Context as e,PreparedStatementKeys as s,PersistenceKeys as r,Statement as a,UnsupportedError as i,Paginator as n,Adapter as o,QueryError as c,PagingError as l,MigrationError as h,ObserverError as d,AuthorizationError as g,ForbiddenError as u,ConnectionError as p,prepared as m}from"@decaf-ts/core";import{Decoration as f,apply as y,methodMetadata as w,Metadata as A}from"@decaf-ts/decoration";import{OperationKeys as b,enforceDBDecorators as x,reduceErrorsToPrint as E,ValidationError as $,InternalError as T,NotFoundError as O,ConflictError as v,BadRequestError as R,SerializationError as N,BulkCrudOperationKeys as P}from"@decaf-ts/db-decorators";import{Model as S,ModelKeys as C}from"@decaf-ts/decorator-validation";import{toKebabCase as q}from"@decaf-ts/logging";import{Axios as _}from"axios";class B extends t{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 createAllPrefix(t,...s){const r=await e.args(b.CREATE,this.class,s,this.adapter,this._overrides||{}),a=r.context.get("ignoreHandlers"),i=r.context.get("ignoreValidation");if(!t.length)return[t,...r.args];if(t=await Promise.all(t.map(async t=>(t=new this.class(t),a||await x(this,r.context,t,b.CREATE,b.ON),t))),!i){const e=r.context.get("ignoredValidationProperties")||[],s=await Promise.all(t.map(t=>Promise.resolve(t.hasErrors(...e)))),a=E(s);if(a)throw new $(a)}return[t,...r.args]}async paginateBy(t,r,a={offset:1,limit:10},...i){const n=await e.args(s.PAGE_BY,this.class,i,this.adapter,this._overrides||{}),{log:o,ctxArgs:c}=this.logCtx(n.args,this.paginateBy);o.verbose(`paginating ${S.tableName(this.class)} with page size ${a.limit}`);const l={direction:r,limit:a.limit};return a.bookmark&&(l.bookmark=a.bookmark),this.statement(this.paginateBy.name,t,a.offset,l,...c)}async listBy(t,s,...r){const a=await e.args("list",this.class,r,this.adapter,this._overrides||{}),{log:i,ctxArgs:n}=this.logCtx(a.args,this.listBy);return i.verbose(`listing ${S.tableName(this.class)} by ${t} ${s}`),await this.statement(this.listBy.name,t,{direction:s},...n)}async findBy(t,r,...a){const i=await e.args(s.FIND_BY,this.class,a,this.adapter,this._overrides||{}),{log:n,ctxArgs:o}=this.logCtx(i.args,this.findBy);return n.verbose(`finding all ${S.tableName(this.class)} with ${t} ${r}`),await this.statement(this.findBy.name,t,r,{},...o)}async findOneBy(t,r,...a){const i=await e.args(s.FIND_ONE_BY,this.class,a,this.adapter,this._overrides||{}),{log:n,ctxArgs:o}=this.logCtx(i.args,this.findOneBy);return n.verbose(`finding One ${S.tableName(this.class)} with ${t} ${r}`),await this.statement(this.findOneBy.name,t,r,{},...o)}async statement(t,...s){const a=await e.args(r.STATEMENT,this.class,s,this.adapter,this._overrides||{}),{log:i,ctxArgs:n,ctx:o}=this.logCtx(a.args,this.statement),c=s.pop(),l={class:this.class,args:s,method:t,params:c},h=this.adapter.toRequest(l,o);return i.verbose("Executing prepared statement "+t),this.adapter.parseResponse(this.class,t,await this.request(h,...n))}async request(t,...s){const r=await e.args("request",this.class,s,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(r.args,this.request);return this.adapter.request(t,...a)}}class D extends B{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return S.tableName(this.class)+" REST service"}}class I extends a{constructor(t,e){super(t,e)}build(){throw new i("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 i("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class k extends n{constructor(t,e,s,r){super(t,e,s,r)}async pagePrepared(e,...r){const a=t.forModel(this.clazz,this.adapter.alias),n=this.query,{method:o,args:c,params:l}=n,h=RegExp(`^${s.FIND_BY}|${s.LIST_BY}`,"gi");if(!o.match(h))throw new i(`Method ${o} is not supported for pagination`);h.lastIndex=0;const d=[o.replace(h,s.PAGE_BY),...c],g={direction:l.direction,limit:this.size,offset:e,bookmark:this._bookmark};d.push(g);const u=await a.statement(...d,...r);return this.apply(u)}prepare(t){throw new i("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(t=1,...e){return super.page(t,...e)}}function L(t,e,s,r){const a=r||e.name;t[a]=new Proxy(t[a],{apply:async(t,e,r)=>{let a=t.call(e,...r);return a instanceof Promise&&(a=await a),a=s.call(e,a),a instanceof Promise&&(a=await a),a}})}class j extends o{constructor(t,e,s){super(t,e,s);const r=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(t=>{L(this,t,e=>r.parseResponse.call(r,void 0,t.name,e),t.name)})}async flags(t,e,s,...r){const a=await super.flags(t,e,s,...r);return Object.assign({},a,{headers:a.headers??{}})}repository(){return D}prepare(t,...e){const{log:s}=this.logCtx(e,this.prepare),a=Object.assign({},t);return t[r.METADATA]&&(s.silly("Passing along persistence metadata for "+t[r.METADATA]),Object.defineProperty(a,r.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:t[r.METADATA]})),{record:t,id:t[S.pk(t.constructor)]}}revert(t,e,s,...a){const{log:i}=this.logCtx(a,this.revert),n={},o="string"==typeof e?S.build(n,e):new e(n);i.silly(`Rebuilding model ${o.constructor.name} id ${s}`);const c="string"==typeof e?S.get(e):e;if(!c)throw new T("Failed to retrieve model constructor for "+e);const l=new c(t),h=t[r.METADATA];return h&&(i.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:q(S.tableName(t))}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=S.composed(t,S.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),a=this.toRequest(t,r);return this.request(a,...s)}Sequence(t){return Promise.reject(new i("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(t){return new I(this,t)}Paginator(t,e,s){return new k(this,t,e,s)}parseCondition(t){throw new i("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(O.name)||s.includes("404")?new O(t):s.includes(v.name)||s.includes("409")?new v(t):s.includes(R.name)||s.includes("400")?new R(t):s.includes($.name)||s.includes("422")?new $(t):s.includes(c.name)?new c(t):s.includes(l.name)?new l(t):s.includes(i.name)?new i(t):s.includes(h.name)?new h(t):s.includes(d.name)?new d(t):s.includes(g.name)?new g(t):s.includes(u.name)?new u(t):s.includes(p.name)?new p(t):s.includes(N.name)?new N(t):new T(t)}static decoration(){super.decoration(),f.for(r.QUERY).define({decorator:t=>(s,a,i)=>y(w(A.key(r.QUERY,a),t),m(),(t,s,r)=>{r.value=new Proxy(r.value,{async apply(t,r,a){const i=r,n=await e.args(s,i.class,a,i.adapter,i._overrides||{}),{log:o,ctxArgs:c}=i.logCtx(n.args,t);return o.verbose("Running prepared statement "+t.name),o.debug("With args: "+JSON.stringify(a,null,2)),r.statement(t.name,...c)}})})(s,a,i)}).apply()}}j.decoration();const J="axios";class Y extends j{constructor(t,e){super(t,J,e)}getClient(){return new _({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(t,s){let a,i;t instanceof e?(i=t,a=void 0):(a=t,i=s);const n={};if(i)try{n.headers=i.get("headers")||{}}catch(t){}return a&&(n.method="GET",n.url=this.url(a.class,[r.STATEMENT,a.method,...a.args||[]],a.params)),n}async request(t,...e){let s={};try{const{ctx:t}=this.logCtx(e,this.request);s=this.toRequest(t)}catch(t){}return this.client.request(Object.assign({},t,s))}parseResponse(t,e,r){if(r.status>=400)throw this.parseError(r.error||r.status);switch(e){case P.CREATE_ALL:case P.READ_ALL:case P.UPDATE_ALL:case P.DELETE_ALL:case s.FIND_BY:case s.LIST_BY:case s.PAGE_BY:case b.CREATE:case b.READ:case b.UPDATE:case b.DELETE:return r.body;case s.FIND_ONE_BY:case"statement":return super.parseResponse(t,e,r.body);default:return r.body}}async create(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.create);try{const r=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return a.debug(`POSTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(n)}`),await this.client.post(r,Object.assign({},s,{[C.ANCHOR]:t.name}),n)}catch(t){throw this.parseError(t)}}async createAll(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.createAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(i);return a.debug(`POSTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.client.post(e,s.map(e=>Object.assign({},e,{[C.ANCHOR]:t.name})),r)}catch(t){throw this.parseError(t)}}async read(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.read);try{const s=this.url(t,this.extractIdArgs(t,e)),i=this.toRequest(a);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(i)}`),this.client.get(s)}catch(t){throw this.parseError(t)}}async readAll(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.readAll);try{const s=this.url(t,["bulk"],{ids:e}),i=this.toRequest(a);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(i)}`),this.client.get(s)}catch(t){throw this.parseError(t)}}async update(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.update);try{const r=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return a.debug(`PUTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(n)}`),this.client.put(r,Object.assign({},s,{[C.ANCHOR]:t.name}))}catch(t){throw this.parseError(t)}}async updateAll(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.updateAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(i);return a.debug(`PUTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.client.put(e,s.map(e=>Object.assign({},e,{[C.ANCHOR]:t.name})))}catch(t){throw this.parseError(t)}}async delete(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.delete);try{const s=this.url(t,this.extractIdArgs(t,e)),i=this.toRequest(a);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(i)}`),this.client.delete(s)}catch(t){throw this.parseError(t)}}async deleteAll(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.delete);try{const s=this.url(t,["bulk"],{ids:e}),i=this.toRequest(a);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(i)}`),this.client.delete(s)}catch(t){throw this.parseError(t)}}parseError(t,...e){return j.parseError(t,...e)}}Y.decoration();const M="##VERSION##",H="##PACKAGE##";A.registerLibrary(H,M);export{J as AxiosFlavour,Y as AxiosHttpAdapter,j as HttpAdapter,k as HttpPaginator,I as HttpStatement,H as PACKAGE_NAME,B as RestRepository,D as RestService,M as VERSION,L as suffixMethod};
|
|
1
|
+
import{Repository as t,PreparedStatementKeys as e,PersistenceKeys as s,Context as r,Statement as a,UnsupportedError as i,Paginator as n,Adapter as o,QueryError as c,PagingError as l,MigrationError as h,ObserverError as d,AuthorizationError as u,ForbiddenError as g,ConnectionError as p,prepared as m}from"@decaf-ts/core";import{Decoration as f,apply as y,methodMetadata as w,Metadata as A}from"@decaf-ts/decoration";import{InternalError as b,NotFoundError as x,ConflictError as E,BadRequestError as $,ValidationError as T,SerializationError as O,OperationKeys as R,BulkCrudOperationKeys as N}from"@decaf-ts/db-decorators";import{Model as S,ModelKeys as v}from"@decaf-ts/decorator-validation";import{toKebabCase as C}from"@decaf-ts/logging";import{Axios as q}from"axios";class P extends t{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,s,r={offset:1,limit:10},...a){const{offset:i,bookmark:n,limit:o}=r,{log:c,ctxArgs:l}=(await this.logCtx(a,e.PAGE_BY,!0)).for(this.paginateBy);c.verbose(`paginating ${S.tableName(this.class)} with page size ${o}`);const h={direction:s,limit:o};return n&&(h.bookmark=n),this.statement(this.paginateBy.name,t,i,h,...l)}async listBy(t,s,...r){const{log:a,ctxArgs:i}=(await this.logCtx(r,e.LIST_BY,!0)).for(this.listBy);return a.verbose(`listing ${S.tableName(this.class)} by ${t} ${s}`),await this.statement(this.listBy.name,t,{direction:s},...i)}async findBy(t,s,...r){const{log:a,ctxArgs:i}=(await this.logCtx(r,e.FIND_BY,!0)).for(this.findBy);return a.verbose(`finding ${S.tableName(this.class)} with ${t} ${s}`),await this.statement(this.findBy.name,t,s,{},...i)}async findOneBy(t,s,...r){const{log:a,ctxArgs:i}=(await this.logCtx(r,e.FIND_ONE_BY,!0)).for(this.findOneBy);return a.verbose(`finding ${S.tableName(this.class)} with ${t} ${s}`),await this.statement(this.findOneBy.name,t,s,{},...i)}async statement(t,...e){const{log:r,ctx:a,ctxArgs:i}=(await this.logCtx(e,s.STATEMENT,!0)).for(this.statement),n=i.slice(0,-1),o=n[n.length-1],c="object"!=typeof o||null===o||Array.isArray(o)?void 0:n.pop(),l={class:this.class,args:n,method:t,params:c},h=this.adapter.toRequest(l,a);return r.verbose("Executing prepared statement "+t),this.adapter.parseResponse(this.class,t,await this.request(h,...i))}async request(t,...e){const s=await r.args("request",this.class,e,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(s.args,this.request);return this.adapter.request(t,...a)}}class _ extends P{constructor(t,e){super(t,e),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return S.tableName(this.class)+" REST service"}}class B extends a{constructor(t,e){super(t,e)}build(){throw new i("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 i("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class D extends n{constructor(t,e,s,r){super(t,e,s,r)}async pagePrepared(s,...r){const a=t.forModel(this.clazz,this.adapter.alias),n=this.query,{method:o,args:c,params:l}=n,h=RegExp(`^${e.FIND_BY}|${e.LIST_BY}`,"gi");if(!o.match(h))throw new i(`Method ${o} is not supported for pagination`);h.lastIndex=0;const d=[o.replace(h,e.PAGE_BY),...c],u={direction:l.direction,limit:this.size,offset:s,bookmark:this._bookmark};d.push(u);const g=await a.statement(...d,...r);return this.apply(g)}prepare(t){throw new i("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(t=1,...e){return super.page(t,...e)}}function I(t,e,s,r){const a=r||e.name;t[a]=new Proxy(t[a],{apply:async(t,e,r)=>{let a=t.call(e,...r);return a instanceof Promise&&(a=await a),a=s.call(e,a),a instanceof Promise&&(a=await a),a}})}class L extends o{constructor(t,e,s){super(t,e,s);const r=this;[this.create,this.read,this.update,this.delete,this.createAll,this.readAll,this.updateAll,this.deleteAll].forEach(t=>{I(this,t,e=>r.parseResponse.call(r,void 0,t.name,e),t.name)})}async flags(t,e,s,...r){const a=await super.flags(t,e,s,...r);return Object.assign({},a,{headers:a.headers??{}})}repository(){return _}prepare(t,...e){const{log:r}=this.logCtx(e,this.prepare),a=Object.assign({},t);return t[s.METADATA]&&(r.silly("Passing along persistence metadata for "+t[s.METADATA]),Object.defineProperty(a,s.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:t[s.METADATA]})),{record:t,id:t[S.pk(t.constructor)]}}revert(t,e,r,...a){const{log:i}=this.logCtx(a,this.revert),n={},o="string"==typeof e?S.build(n,e):new e(n);i.silly(`Rebuilding model ${o.constructor.name} id ${r}`);const c="string"==typeof e?S.get(e):e;if(!c)throw new b("Failed to retrieve model constructor for "+e);const l=new c(t),h=t[s.METADATA];return h&&(i.silly(`Passing along ${this.flavour} persistence metadata for ${o.constructor.name} id ${r}: ${h}`),Object.defineProperty(l,s.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:h})),l}toTableName(t){return"string"==typeof t?t:C(S.tableName(t))}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=S.composed(t,S.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),a=this.toRequest(t,r);return this.request(a,...s)}Sequence(t){return Promise.reject(new i("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(t){return new B(this,t)}Paginator(t,e,s){return new D(this,t,e,s)}parseCondition(t){throw new i("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(x.name)||s.includes("404")?new x(t):s.includes(E.name)||s.includes("409")?new E(t):s.includes($.name)||s.includes("400")?new $(t):s.includes(T.name)||s.includes("422")?new T(t):s.includes(c.name)?new c(t):s.includes(l.name)?new l(t):s.includes(i.name)?new i(t):s.includes(h.name)?new h(t):s.includes(d.name)?new d(t):s.includes(u.name)?new u(t):s.includes(g.name)?new g(t):s.includes(p.name)?new p(t):s.includes(O.name)?new O(t):new b(t)}static decoration(){super.decoration(),f.for(s.QUERY).define({decorator:t=>(e,a,i)=>y(w(A.key(s.QUERY,a),t),m(),(t,e,s)=>{s.value=new Proxy(s.value,{async apply(t,s,a){const i=s,n=await r.args(e,i.class,a,i.adapter,i._overrides||{}),{log:o,ctxArgs:c}=i.logCtx(n.args,t);return o.verbose("Running prepared statement "+t.name),o.debug("With args: "+JSON.stringify(a,null,2)),s.statement(t.name,...c)}})})(e,a,i)}).apply()}}L.decoration();const j="axios";class k extends L{constructor(t,e){super(t,j,e)}getClient(){return new q({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(t,e){let a,i;t instanceof r?(i=t,a=void 0):(a=t,i=e);const n={};if(i)try{n.headers=i.get("headers")||{}}catch(t){}return a&&(n.method="GET",n.url=this.url(a.class,[s.STATEMENT,a.method,...a.args||[]],a.params)),n}async request(t,...e){let s={};try{const{ctx:t}=this.logCtx(e,this.request);s=this.toRequest(t)}catch(t){}return this.client.request(Object.assign({},t,s))}parseResponse(t,s,r){if(r.status>=400)throw this.parseError(r.error||r.status);switch(s){case N.CREATE_ALL:case N.READ_ALL:case N.UPDATE_ALL:case N.DELETE_ALL:case e.FIND_BY:case e.LIST_BY:case e.PAGE_BY:case R.CREATE:case R.READ:case R.UPDATE:case R.DELETE:return r.body;case e.FIND_ONE_BY:case"statement":return super.parseResponse(t,s,r.body);default:return r.body}}async create(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.create);try{const r=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return a.debug(`POSTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(n)}`),await this.client.post(r,Object.assign({},s,{[v.ANCHOR]:t.name}),n)}catch(t){throw this.parseError(t)}}async createAll(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.createAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(i);return a.debug(`POSTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.client.post(e,s.map(e=>Object.assign({},e,{[v.ANCHOR]:t.name})),r)}catch(t){throw this.parseError(t)}}async read(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.read);try{const s=this.url(t,this.extractIdArgs(t,e)),i=this.toRequest(a);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(i)}`),this.client.get(s)}catch(t){throw this.parseError(t)}}async readAll(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.readAll);try{const s=this.url(t,["bulk"],{ids:e}),i=this.toRequest(a);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(i)}`),this.client.get(s)}catch(t){throw this.parseError(t)}}async update(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.update);try{const r=this.url(t,this.extractIdArgs(t,e)),n=this.toRequest(i);return a.debug(`PUTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(n)}`),this.client.put(r,Object.assign({},s,{[v.ANCHOR]:t.name}))}catch(t){throw this.parseError(t)}}async updateAll(t,e,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.updateAll);try{const e=this.url(t,["bulk"]),r=this.toRequest(i);return a.debug(`PUTing to ${e} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.client.put(e,s.map(e=>Object.assign({},e,{[v.ANCHOR]:t.name})))}catch(t){throw this.parseError(t)}}async delete(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.delete);try{const s=this.url(t,this.extractIdArgs(t,e)),i=this.toRequest(a);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(i)}`),this.client.delete(s)}catch(t){throw this.parseError(t)}}async deleteAll(t,e,...s){const{log:r,ctx:a}=this.logCtx(s,this.delete);try{const s=this.url(t,["bulk"],{ids:e}),i=this.toRequest(a);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(i)}`),this.client.delete(s)}catch(t){throw this.parseError(t)}}parseError(t,...e){return L.parseError(t,...e)}}k.decoration();const J="##VERSION##",Y="##PACKAGE##";A.registerLibrary(Y,J);export{j as AxiosFlavour,k as AxiosHttpAdapter,L as HttpAdapter,D as HttpPaginator,B as HttpStatement,Y as PACKAGE_NAME,P as RestRepository,_ as RestService,J as VERSION,I as suffixMethod};
|
|
2
2
|
//# sourceMappingURL=for-http.js.map
|
package/dist/for-http.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-http.js","sources":["../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.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],"names":["RestRepository","Repository","constructor","adapter","clazz","super","this","_overrides","Object","assign","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","url","tableName","pathParams","queryParams","createAllPrefix","models","args","contextArgs","Context","OperationKeys","CREATE","class","ignoreHandlers","context","get","ignoreValidate","length","Promise","all","map","async","m","enforceDBDecorators","ON","ignoredProps","errors","resolve","hasErrors","errorMessages","reduceErrorsToPrint","ValidationError","paginateBy","key","order","ref","offset","limit","PreparedStatementKeys","PAGE_BY","log","ctxArgs","logCtx","verbose","Model","params","direction","bookmark","statement","name","listBy","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","PersistenceKeys","STATEMENT","ctx","pop","query","method","req","toRequest","parseResponse","request","details","RestService","ignoreValidation","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","size","pagePrepared","page","argz","repo","forModel","alias","regexp","RegExp","LIST_BY","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","result","apply","prepare","rawStatement","suffixMethod","obj","before","suffix","beforeName","Proxy","target","thisArg","argArray","results","call","HttpAdapter","Adapter","config","flavour","self","create","read","update","delete","createAll","readAll","updateAll","deleteAll","forEach","res","undefined","flags","operation","model","headers","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","ob","constr","InternalError","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","join","entries","v","searchParams","append","JSON","stringify","extractIdArgs","idStr","composed","split","separator","isSerializedPage","data","d","raw","rawInput","Sequence","options","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","prepared","propertyKey","debug","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","e","client","status","error","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","READ","UPDATE","DELETE","body","cfg","post","ModelKeys","ANCHOR","ids","put","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"for-http.js","sources":["../src/RestRepository.ts","../src/RestService.ts","../src/HttpStatement.ts","../src/HttpPaginator.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],"names":["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","ctx","PersistenceKeys","STATEMENT","argList","slice","lastArg","length","Array","isArray","undefined","pop","query","method","req","toRequest","parseResponse","request","details","contextArgs","Context","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","size","pagePrepared","page","argz","repo","forModel","alias","regexp","RegExp","match","lastIndex","preparedArgs","replace","preparedParams","_bookmark","push","result","apply","prepare","rawStatement","suffixMethod","obj","before","suffix","beforeName","Proxy","async","target","thisArg","argArray","results","call","Promise","HttpAdapter","Adapter","config","flavour","self","create","read","update","delete","createAll","readAll","updateAll","deleteAll","forEach","res","flags","operation","model","headers","repository","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","ob","m","constr","get","InternalError","metadata","toTableName","t","toKebabCase","URL","protocol","host","join","entries","v","searchParams","append","JSON","stringify","extractIdArgs","idStr","composed","split","separator","isSerializedPage","data","map","d","raw","rawInput","Sequence","options","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","QUERY","define","decorator","prop","descriptor","methodMetadata","Metadata","prepared","propertyKey","debug","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","e","client","status","error","BulkCrudOperationKeys","CREATE_ALL","READ_ALL","UPDATE_ALL","DELETE_ALL","OperationKeys","CREATE","READ","UPDATE","DELETE","body","cfg","post","ModelKeys","ANCHOR","ids","put","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/lib/RestRepository.cjs
CHANGED
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.RestRepository = void 0;
|
|
4
4
|
const core_1 = require("@decaf-ts/core");
|
|
5
5
|
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
6
|
-
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
7
6
|
/**
|
|
8
7
|
* @description Repository for REST API interactions
|
|
9
8
|
* @summary A specialized repository implementation for interacting with REST APIs.
|
|
@@ -45,68 +44,46 @@ class RestRepository extends core_1.Repository {
|
|
|
45
44
|
url(tableName, pathParams, queryParams) {
|
|
46
45
|
return this.adapter.url(tableName, pathParams, queryParams);
|
|
47
46
|
}
|
|
48
|
-
async createAllPrefix(models, ...args) {
|
|
49
|
-
const contextArgs = await core_1.Context.args(db_decorators_1.OperationKeys.CREATE, this.class, args, this.adapter, this._overrides || {});
|
|
50
|
-
const ignoreHandlers = contextArgs.context.get("ignoreHandlers");
|
|
51
|
-
const ignoreValidate = contextArgs.context.get("ignoreValidation");
|
|
52
|
-
if (!models.length)
|
|
53
|
-
return [models, ...contextArgs.args];
|
|
54
|
-
models = await Promise.all(models.map(async (m) => {
|
|
55
|
-
m = new this.class(m);
|
|
56
|
-
if (!ignoreHandlers)
|
|
57
|
-
await (0, db_decorators_1.enforceDBDecorators)(this, contextArgs.context, m, db_decorators_1.OperationKeys.CREATE, db_decorators_1.OperationKeys.ON);
|
|
58
|
-
return m;
|
|
59
|
-
}));
|
|
60
|
-
if (!ignoreValidate) {
|
|
61
|
-
const ignoredProps = contextArgs.context.get("ignoredValidationProperties") || [];
|
|
62
|
-
const errors = await Promise.all(models.map((m) => Promise.resolve(m.hasErrors(...ignoredProps))));
|
|
63
|
-
const errorMessages = (0, db_decorators_1.reduceErrorsToPrint)(errors);
|
|
64
|
-
if (errorMessages)
|
|
65
|
-
throw new db_decorators_1.ValidationError(errorMessages);
|
|
66
|
-
}
|
|
67
|
-
return [models, ...contextArgs.args];
|
|
68
|
-
}
|
|
69
47
|
async paginateBy(key, order, ref = {
|
|
70
48
|
offset: 1,
|
|
71
49
|
limit: 10,
|
|
72
50
|
}, ...args) {
|
|
73
|
-
const
|
|
74
|
-
const { log, ctxArgs } = this.logCtx(
|
|
75
|
-
log.verbose(`paginating ${decorator_validation_1.Model.tableName(this.class)} with page size ${
|
|
51
|
+
const { offset, bookmark, limit } = ref;
|
|
52
|
+
const { log, ctxArgs } = (await this.logCtx(args, core_1.PreparedStatementKeys.PAGE_BY, true)).for(this.paginateBy);
|
|
53
|
+
log.verbose(`paginating ${decorator_validation_1.Model.tableName(this.class)} with page size ${limit}`);
|
|
76
54
|
const params = {
|
|
77
55
|
direction: order,
|
|
78
|
-
limit:
|
|
56
|
+
limit: limit,
|
|
79
57
|
};
|
|
80
|
-
if (
|
|
81
|
-
params.bookmark =
|
|
58
|
+
if (bookmark) {
|
|
59
|
+
params.bookmark = bookmark;
|
|
82
60
|
}
|
|
83
|
-
return this.statement(this.paginateBy.name, key,
|
|
61
|
+
return this.statement(this.paginateBy.name, key, offset, params, ...ctxArgs);
|
|
84
62
|
}
|
|
85
63
|
async listBy(key, order, ...args) {
|
|
86
|
-
const
|
|
87
|
-
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.listBy);
|
|
64
|
+
const { log, ctxArgs } = (await this.logCtx(args, core_1.PreparedStatementKeys.LIST_BY, true)).for(this.listBy);
|
|
88
65
|
log.verbose(`listing ${decorator_validation_1.Model.tableName(this.class)} by ${key} ${order}`);
|
|
89
66
|
return (await this.statement(this.listBy.name, key, { direction: order }, ...ctxArgs));
|
|
90
67
|
}
|
|
91
68
|
async findBy(key, value, ...args) {
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
log.verbose(`finding all ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
69
|
+
const { log, ctxArgs } = (await this.logCtx(args, core_1.PreparedStatementKeys.FIND_BY, true)).for(this.findBy);
|
|
70
|
+
log.verbose(`finding ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
95
71
|
return (await this.statement(this.findBy.name, key, value, {}, ...ctxArgs));
|
|
96
72
|
}
|
|
97
73
|
async findOneBy(key, value, ...args) {
|
|
98
|
-
const
|
|
99
|
-
|
|
100
|
-
log.verbose(`finding One ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
74
|
+
const { log, ctxArgs } = (await this.logCtx(args, core_1.PreparedStatementKeys.FIND_ONE_BY, true)).for(this.findOneBy);
|
|
75
|
+
log.verbose(`finding ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
101
76
|
return (await this.statement(this.findOneBy.name, key, value, {}, ...ctxArgs));
|
|
102
77
|
}
|
|
103
78
|
async statement(name, ...args) {
|
|
104
|
-
const
|
|
105
|
-
const
|
|
106
|
-
const
|
|
79
|
+
const { log, ctx, ctxArgs } = (await this.logCtx(args, core_1.PersistenceKeys.STATEMENT, true)).for(this.statement);
|
|
80
|
+
const argList = ctxArgs.slice(0, -1);
|
|
81
|
+
const lastArg = argList[argList.length - 1];
|
|
82
|
+
const hasParams = typeof lastArg === "object" && lastArg !== null && !Array.isArray(lastArg);
|
|
83
|
+
const params = hasParams ? argList.pop() : undefined;
|
|
107
84
|
const query = {
|
|
108
85
|
class: this.class,
|
|
109
|
-
args:
|
|
86
|
+
args: argList,
|
|
110
87
|
method: name,
|
|
111
88
|
params: params,
|
|
112
89
|
};
|
package/lib/RestRepository.d.ts
CHANGED
|
@@ -32,7 +32,7 @@ import { HttpAdapter } from "./adapter";
|
|
|
32
32
|
* @see {@link RestService}
|
|
33
33
|
*/
|
|
34
34
|
export declare class RestRepository<M extends Model, A extends HttpAdapter<any, any, any, any, any>, Q = A extends HttpAdapter<any, any, any, infer Q, any> ? Q : never> extends Repository<M, A> {
|
|
35
|
-
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<ContextOf<A>>> &
|
|
35
|
+
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<ContextOf<A>>> & {
|
|
36
36
|
allowRawStatements: boolean;
|
|
37
37
|
forcePrepareSimpleQueries: boolean;
|
|
38
38
|
forcePrepareComplexQueries: boolean;
|
|
@@ -41,7 +41,6 @@ export declare class RestRepository<M extends Model, A extends HttpAdapter<any,
|
|
|
41
41
|
url<M extends Model>(tableName: string | Constructor<M>): string;
|
|
42
42
|
url<M extends Model>(tableName: string | Constructor<M>, pathParams: string[]): string;
|
|
43
43
|
url<M extends Model>(tableName: string | Constructor<M>, queryParams: Record<string, string | number> | undefined): string;
|
|
44
|
-
protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
|
|
45
44
|
paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
46
45
|
listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
|
|
47
46
|
findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestRepository.js","sourceRoot":"","sources":["../src/RestRepository.ts"],"names":[],"mappings":";;;AAAA,yCAWwB;AACxB,yEAAuD;
|
|
1
|
+
{"version":3,"file":"RestRepository.js","sourceRoot":"","sources":["../src/RestRepository.ts"],"names":[],"mappings":"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"}
|
package/lib/RestService.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ import { RestRepository } from "./RestRepository";
|
|
|
51
51
|
* Service-->>Client: revert(record)
|
|
52
52
|
*/
|
|
53
53
|
export declare class RestService<M extends Model, A extends HttpAdapter<any, any, any, any, any>, Q = A extends HttpAdapter<any, any, any, infer Q, any> ? Q : never> extends RestRepository<M, A, Q> {
|
|
54
|
-
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<import("@decaf-ts/core").ContextOf<A>>> &
|
|
54
|
+
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<import("@decaf-ts/core").ContextOf<A>>> & {
|
|
55
55
|
allowRawStatements: boolean;
|
|
56
56
|
forcePrepareSimpleQueries: boolean;
|
|
57
57
|
forcePrepareComplexQueries: boolean;
|
|
@@ -32,7 +32,7 @@ import { HttpAdapter } from "./adapter";
|
|
|
32
32
|
* @see {@link RestService}
|
|
33
33
|
*/
|
|
34
34
|
export declare class RestRepository<M extends Model, A extends HttpAdapter<any, any, any, any, any>, Q = A extends HttpAdapter<any, any, any, infer Q, any> ? Q : never> extends Repository<M, A> {
|
|
35
|
-
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<ContextOf<A>>> &
|
|
35
|
+
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<ContextOf<A>>> & {
|
|
36
36
|
allowRawStatements: boolean;
|
|
37
37
|
forcePrepareSimpleQueries: boolean;
|
|
38
38
|
forcePrepareComplexQueries: boolean;
|
|
@@ -41,7 +41,6 @@ export declare class RestRepository<M extends Model, A extends HttpAdapter<any,
|
|
|
41
41
|
url<M extends Model>(tableName: string | Constructor<M>): string;
|
|
42
42
|
url<M extends Model>(tableName: string | Constructor<M>, pathParams: string[]): string;
|
|
43
43
|
url<M extends Model>(tableName: string | Constructor<M>, queryParams: Record<string, string | number> | undefined): string;
|
|
44
|
-
protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
|
|
45
44
|
paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
|
|
46
45
|
listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
|
|
47
46
|
findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { Context, PersistenceKeys, PreparedStatementKeys, Repository, } from "@decaf-ts/core";
|
|
2
2
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
-
import { OperationKeys, ValidationError, enforceDBDecorators, reduceErrorsToPrint, } from "@decaf-ts/db-decorators";
|
|
4
3
|
/**
|
|
5
4
|
* @description Repository for REST API interactions
|
|
6
5
|
* @summary A specialized repository implementation for interacting with REST APIs.
|
|
@@ -42,68 +41,46 @@ export class RestRepository extends Repository {
|
|
|
42
41
|
url(tableName, pathParams, queryParams) {
|
|
43
42
|
return this.adapter.url(tableName, pathParams, queryParams);
|
|
44
43
|
}
|
|
45
|
-
async createAllPrefix(models, ...args) {
|
|
46
|
-
const contextArgs = await Context.args(OperationKeys.CREATE, this.class, args, this.adapter, this._overrides || {});
|
|
47
|
-
const ignoreHandlers = contextArgs.context.get("ignoreHandlers");
|
|
48
|
-
const ignoreValidate = contextArgs.context.get("ignoreValidation");
|
|
49
|
-
if (!models.length)
|
|
50
|
-
return [models, ...contextArgs.args];
|
|
51
|
-
models = await Promise.all(models.map(async (m) => {
|
|
52
|
-
m = new this.class(m);
|
|
53
|
-
if (!ignoreHandlers)
|
|
54
|
-
await enforceDBDecorators(this, contextArgs.context, m, OperationKeys.CREATE, OperationKeys.ON);
|
|
55
|
-
return m;
|
|
56
|
-
}));
|
|
57
|
-
if (!ignoreValidate) {
|
|
58
|
-
const ignoredProps = contextArgs.context.get("ignoredValidationProperties") || [];
|
|
59
|
-
const errors = await Promise.all(models.map((m) => Promise.resolve(m.hasErrors(...ignoredProps))));
|
|
60
|
-
const errorMessages = reduceErrorsToPrint(errors);
|
|
61
|
-
if (errorMessages)
|
|
62
|
-
throw new ValidationError(errorMessages);
|
|
63
|
-
}
|
|
64
|
-
return [models, ...contextArgs.args];
|
|
65
|
-
}
|
|
66
44
|
async paginateBy(key, order, ref = {
|
|
67
45
|
offset: 1,
|
|
68
46
|
limit: 10,
|
|
69
47
|
}, ...args) {
|
|
70
|
-
const
|
|
71
|
-
const { log, ctxArgs } = this.logCtx(
|
|
72
|
-
log.verbose(`paginating ${Model.tableName(this.class)} with page size ${
|
|
48
|
+
const { offset, bookmark, limit } = ref;
|
|
49
|
+
const { log, ctxArgs } = (await this.logCtx(args, PreparedStatementKeys.PAGE_BY, true)).for(this.paginateBy);
|
|
50
|
+
log.verbose(`paginating ${Model.tableName(this.class)} with page size ${limit}`);
|
|
73
51
|
const params = {
|
|
74
52
|
direction: order,
|
|
75
|
-
limit:
|
|
53
|
+
limit: limit,
|
|
76
54
|
};
|
|
77
|
-
if (
|
|
78
|
-
params.bookmark =
|
|
55
|
+
if (bookmark) {
|
|
56
|
+
params.bookmark = bookmark;
|
|
79
57
|
}
|
|
80
|
-
return this.statement(this.paginateBy.name, key,
|
|
58
|
+
return this.statement(this.paginateBy.name, key, offset, params, ...ctxArgs);
|
|
81
59
|
}
|
|
82
60
|
async listBy(key, order, ...args) {
|
|
83
|
-
const
|
|
84
|
-
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.listBy);
|
|
61
|
+
const { log, ctxArgs } = (await this.logCtx(args, PreparedStatementKeys.LIST_BY, true)).for(this.listBy);
|
|
85
62
|
log.verbose(`listing ${Model.tableName(this.class)} by ${key} ${order}`);
|
|
86
63
|
return (await this.statement(this.listBy.name, key, { direction: order }, ...ctxArgs));
|
|
87
64
|
}
|
|
88
65
|
async findBy(key, value, ...args) {
|
|
89
|
-
const
|
|
90
|
-
|
|
91
|
-
log.verbose(`finding all ${Model.tableName(this.class)} with ${key} ${value}`);
|
|
66
|
+
const { log, ctxArgs } = (await this.logCtx(args, PreparedStatementKeys.FIND_BY, true)).for(this.findBy);
|
|
67
|
+
log.verbose(`finding ${Model.tableName(this.class)} with ${key} ${value}`);
|
|
92
68
|
return (await this.statement(this.findBy.name, key, value, {}, ...ctxArgs));
|
|
93
69
|
}
|
|
94
70
|
async findOneBy(key, value, ...args) {
|
|
95
|
-
const
|
|
96
|
-
|
|
97
|
-
log.verbose(`finding One ${Model.tableName(this.class)} with ${key} ${value}`);
|
|
71
|
+
const { log, ctxArgs } = (await this.logCtx(args, PreparedStatementKeys.FIND_ONE_BY, true)).for(this.findOneBy);
|
|
72
|
+
log.verbose(`finding ${Model.tableName(this.class)} with ${key} ${value}`);
|
|
98
73
|
return (await this.statement(this.findOneBy.name, key, value, {}, ...ctxArgs));
|
|
99
74
|
}
|
|
100
75
|
async statement(name, ...args) {
|
|
101
|
-
const
|
|
102
|
-
const
|
|
103
|
-
const
|
|
76
|
+
const { log, ctx, ctxArgs } = (await this.logCtx(args, PersistenceKeys.STATEMENT, true)).for(this.statement);
|
|
77
|
+
const argList = ctxArgs.slice(0, -1);
|
|
78
|
+
const lastArg = argList[argList.length - 1];
|
|
79
|
+
const hasParams = typeof lastArg === "object" && lastArg !== null && !Array.isArray(lastArg);
|
|
80
|
+
const params = hasParams ? argList.pop() : undefined;
|
|
104
81
|
const query = {
|
|
105
82
|
class: this.class,
|
|
106
|
-
args:
|
|
83
|
+
args: argList,
|
|
107
84
|
method: name,
|
|
108
85
|
params: params,
|
|
109
86
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RestRepository.js","sourceRoot":"","sources":["../../src/RestRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,eAAe,EAEf,qBAAqB,EACrB,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"RestRepository.js","sourceRoot":"","sources":["../../src/RestRepository.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAKP,eAAe,EAEf,qBAAqB,EACrB,UAAU,GAEX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAIvD;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,OAAO,cAIX,SAAQ,UAAgB;IAOxB,YAAY,OAAU,EAAE,KAAsB;QAC5C,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAPL,eAAU,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,YAAY,CAAC,EAAE;YACrE,kBAAkB,EAAE,KAAK;YACzB,yBAAyB,EAAE,IAAI;YAC/B,0BAA0B,EAAE,IAAI;SACjC,CAAC,CAAC;IAIH,CAAC;IAWD,GAAG,CACD,SAAkC,EAClC,UAAuD,EACvD,WAA6C;QAE7C,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,UAAiB,EAAE,WAAkB,CAAC,CAAC;IAC5E,CAAC;IAEQ,KAAK,CAAC,UAAU,CACvB,GAAY,EACZ,KAAqB,EACrB,MAA+C;QAC7C,MAAM,EAAE,CAAC;QACT,KAAK,EAAE,EAAE;KACV,EACD,GAAG,IAAsC;QAEzC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,GAAG,GAAG,CAAC;QACxC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CACvB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAC7D,CAAC,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,GAAG,CAAC,OAAO,CACT,cAAc,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,KAAK,EAAE,CACpE,CAAC;QAEF,MAAM,MAAM,GAAyB;YACnC,SAAS,EAAE,KAAK;YAChB,KAAK,EAAE,KAAK;SACb,CAAC;QACF,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,CAAC,QAAQ,GAAG,QAAe,CAAC;QACpC,CAAC;QACD,OAAO,IAAI,CAAC,SAAS,CACnB,IAAI,CAAC,UAAU,CAAC,IAAI,EACpB,GAAG,EACH,MAAM,EACN,MAAM,EACN,GAAG,OAAO,CACX,CAAC;IACJ,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,GAAY,EACZ,KAAqB,EACrB,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CACvB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAC7D,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,GAAG,CAAC,OAAO,CACT,WAAW,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,GAAa,IAAI,KAAK,EAAE,CACtE,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,EACH,EAAE,SAAS,EAAE,KAAK,EAAE,EACpB,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,MAAM,CACnB,GAAY,EACZ,KAAU,EACV,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CACvB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC,OAAO,EAAE,IAAI,CAAC,CAC7D,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,GAAG,CAAC,OAAO,CACT,WAAW,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAa,IAAI,KAAK,EAAE,CACxE,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,GAAG,EACH,KAAK,EACL,EAAE,EACF,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,GAAY,EACZ,KAAU,EACV,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CACvB,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,qBAAqB,CAAC,WAAW,EAAE,IAAI,CAAC,CACjE,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,GAAG,CAAC,OAAO,CACT,WAAW,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,SAAS,GAAa,IAAI,KAAK,EAAE,CACxE,CAAC;QACF,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAC1B,IAAI,CAAC,SAAS,CAAC,IAAI,EACnB,GAAG,EACH,KAAK,EACL,EAAE,EACF,GAAG,OAAO,CACX,CAAQ,CAAC;IACZ,CAAC;IAEQ,KAAK,CAAC,SAAS,CACtB,IAAY,EACZ,GAAG,IAAsC;QAEzC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,EAAE,IAAI,CAAC,CACzD,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtB,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5C,MAAM,SAAS,GACb,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7E,MAAM,MAAM,GAAG,SAAS,CAAC,CAAC,CAAE,OAAO,CAAC,GAAG,EAA0B,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9E,MAAM,KAAK,GAA2B;YACpC,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE,MAAM;SACW,CAAC;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC/C,GAAG,CAAC,OAAO,CAAC,gCAAgC,IAAI,EAAE,CAAC,CAAC;QACpD,OAAO,IAAI,CAAC,OAAO,CAAC,aAAa,CAC/B,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,CACpC,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,OAAO,CACX,OAAU,EACV,GAAG,IAAsC;QAEzC,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,IAAI,CACpC,SAAS,EACT,IAAI,CAAC,KAAK,EACV,IAAI,EACJ,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,IAAI,EAAE,CACtB,CAAC;QACF,MAAM,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAI,OAAO,EAAE,GAAG,OAAO,CAAC,CAAC;IACtD,CAAC;CACF"}
|
package/lib/esm/RestService.d.ts
CHANGED
|
@@ -51,7 +51,7 @@ import { RestRepository } from "./RestRepository";
|
|
|
51
51
|
* Service-->>Client: revert(record)
|
|
52
52
|
*/
|
|
53
53
|
export declare class RestService<M extends Model, A extends HttpAdapter<any, any, any, any, any>, Q = A extends HttpAdapter<any, any, any, infer Q, any> ? Q : never> extends RestRepository<M, A, Q> {
|
|
54
|
-
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<import("@decaf-ts/core").ContextOf<A>>> &
|
|
54
|
+
protected _overrides: Partial<import("@decaf-ts/core").FlagsOf<import("@decaf-ts/core").ContextOf<A>>> & {
|
|
55
55
|
allowRawStatements: boolean;
|
|
56
56
|
forcePrepareSimpleQueries: boolean;
|
|
57
57
|
forcePrepareComplexQueries: boolean;
|
package/lib/esm/index.d.ts
CHANGED
package/lib/esm/index.js
CHANGED
|
@@ -20,7 +20,7 @@ export * from "./types.js";
|
|
|
20
20
|
* @summary Version identifier for the module
|
|
21
21
|
* @const VERSION
|
|
22
22
|
*/
|
|
23
|
-
export const VERSION = "0.3.
|
|
23
|
+
export const VERSION = "0.3.29";
|
|
24
24
|
export const PACKAGE_NAME = "@decaf-ts/for-http";
|
|
25
25
|
Metadata.registerLibrary(PACKAGE_NAME, VERSION);
|
|
26
26
|
//# sourceMappingURL=index.js.map
|
package/lib/index.cjs
CHANGED
|
@@ -37,7 +37,7 @@ __exportStar(require("./types.cjs"), exports);
|
|
|
37
37
|
* @summary Version identifier for the module
|
|
38
38
|
* @const VERSION
|
|
39
39
|
*/
|
|
40
|
-
exports.VERSION = "0.3.
|
|
40
|
+
exports.VERSION = "0.3.29";
|
|
41
41
|
exports.PACKAGE_NAME = "@decaf-ts/for-http";
|
|
42
42
|
decoration_1.Metadata.registerLibrary(exports.PACKAGE_NAME, exports.VERSION);
|
|
43
43
|
//# sourceMappingURL=index.js.map
|
package/lib/index.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decaf-ts/for-http",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.30",
|
|
4
4
|
"description": "http wrappers for decaf-ts",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -58,7 +58,8 @@
|
|
|
58
58
|
},
|
|
59
59
|
"files": [
|
|
60
60
|
"lib",
|
|
61
|
-
"dist"
|
|
61
|
+
"dist",
|
|
62
|
+
"workdocs/assets/slogans.json"
|
|
62
63
|
],
|
|
63
64
|
"keywords": [
|
|
64
65
|
"http",
|
|
@@ -0,0 +1,202 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"Slogan": "Decaf‑TS for HTTP: Sip APIs, not jitters.",
|
|
4
|
+
"Tags": "HTTP, Calm, Coffee-themed"
|
|
5
|
+
},
|
|
6
|
+
{
|
|
7
|
+
"Slogan": "REST endpoints so smooth you’d call them latte‑level.",
|
|
8
|
+
"Tags": "REST, Coffee-themed, Fun"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"Slogan": "Brewed for your API layer: no caffeine required.",
|
|
12
|
+
"Tags": "API, Coffee-themed, Calm"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"Slogan": "CRUD like you’re lounging in a café, not sprinting in a tunnel.",
|
|
16
|
+
"Tags": "CRUD, Relaxed, Coffee-themed"
|
|
17
|
+
},
|
|
18
|
+
{
|
|
19
|
+
"Slogan": "Axios ready, decaf steady — HTTP done right.",
|
|
20
|
+
"Tags": "Axios, Technical, Coffee-themed"
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"Slogan": "Don’t rush the request — enjoy the brew of connectivity.",
|
|
24
|
+
"Tags": "HTTP, Chill, Wordplay"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"Slogan": "HTTP adapter: the decaf version of your backend connection.",
|
|
28
|
+
"Tags": "Adapter, Chill, Backend"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"Slogan": "Calm APIs, clean code, zero caffeine crash.",
|
|
32
|
+
"Tags": "API, Calm, Productivity"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"Slogan": "When your endpoints move slower than your coffee sip, you’re doing it right.",
|
|
36
|
+
"Tags": "Endpoints, Funny, Coffee-themed"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"Slogan": "Restful, restful, and restful. Yes, three times.",
|
|
40
|
+
"Tags": "REST, Funny, Repetition"
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"Slogan": "Let your HTTP calls mellow like a smooth decaf mocha.",
|
|
44
|
+
"Tags": "HTTP, Coffee-themed, Chill"
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"Slogan": "Requests that won’t wake you at 3 AM with errors.",
|
|
48
|
+
"Tags": "Debugging, Calm, Humor"
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
"Slogan": "Say goodbye to shaky connections. Hello, decaf stability.",
|
|
52
|
+
"Tags": "Stability, Coffee-themed, Fun"
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"Slogan": "Your REST wrapper with zero jitter and maximum chill.",
|
|
56
|
+
"Tags": "REST, Calm, Adapter"
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"Slogan": "From endpoint to espresso‑style calm.",
|
|
60
|
+
"Tags": "Endpoints, Coffee-themed, Chill"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"Slogan": "Because your API deserves more than an energy drink.",
|
|
64
|
+
"Tags": "API, Humor, Coffee-themed"
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"Slogan": "HTTP adapter: full flavour, no jitters, all productivity.",
|
|
68
|
+
"Tags": "Adapter, Productive, Coffee-themed"
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"Slogan": "We turned down the caffeine in your HTTP layer so your code can stay calm.",
|
|
72
|
+
"Tags": "HTTP, Calm, Humor"
|
|
73
|
+
},
|
|
74
|
+
{
|
|
75
|
+
"Slogan": "Decaf‑TS for HTTP — where major code meets mellow endpoints.",
|
|
76
|
+
"Tags": "Endpoints, Chill, Technical"
|
|
77
|
+
},
|
|
78
|
+
{
|
|
79
|
+
"Slogan": "Sip your coffee while the adapter handles the heavy lifting.",
|
|
80
|
+
"Tags": "Developer, Coffee-themed, Calm"
|
|
81
|
+
},
|
|
82
|
+
{
|
|
83
|
+
"Slogan": "Settle into the couch of HTTP adapters: decaf‑level comfort.",
|
|
84
|
+
"Tags": "Couch, Adapter, Coffee-themed"
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"Slogan": "Don’t sprint your API calls — stroll them with style.",
|
|
88
|
+
"Tags": "API, Humor, Chill"
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
"Slogan": "Relaxed REST, de‑caffeinated connections, serious developer delight.",
|
|
92
|
+
"Tags": "REST, Developer, Coffee-themed"
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"Slogan": "No crash after deploy: the adapter version of decaf.",
|
|
96
|
+
"Tags": "Adapter, Calm, Deploy"
|
|
97
|
+
},
|
|
98
|
+
{
|
|
99
|
+
"Slogan": "Transport your models over HTTP, not over a roller‑coaster.",
|
|
100
|
+
"Tags": "HTTP, Humor, Models"
|
|
101
|
+
},
|
|
102
|
+
{
|
|
103
|
+
"Slogan": "When your backend is chill, you can brew your coffee in peace.",
|
|
104
|
+
"Tags": "Backend, Calm, Coffee-themed"
|
|
105
|
+
},
|
|
106
|
+
{
|
|
107
|
+
"Slogan": "Let your API layer take a nap while you build features.",
|
|
108
|
+
"Tags": "API, Relaxed, Developer"
|
|
109
|
+
},
|
|
110
|
+
{
|
|
111
|
+
"Slogan": "Adapter so smooth you’ll forget you’re even using HTTP.",
|
|
112
|
+
"Tags": "Adapter, Smooth, Chill"
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"Slogan": "From create to delete without the caffeine shakes.",
|
|
116
|
+
"Tags": "CRUD, Coffee-themed, Humor"
|
|
117
|
+
},
|
|
118
|
+
{
|
|
119
|
+
"Slogan": "Zero boilerplate, all flavor — decaf‑style HTTP.",
|
|
120
|
+
"Tags": "Boilerplate, Fun, Coffee-themed"
|
|
121
|
+
},
|
|
122
|
+
{
|
|
123
|
+
"Slogan": "Plug in your models; the adapter takes it from there (silently, calmly).",
|
|
124
|
+
"Tags": "Models, Adapter, Chill"
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"Slogan": "HTTP calls that whisper, not shout.",
|
|
128
|
+
"Tags": "HTTP, Humor, Calm"
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
"Slogan": "Requests go out; responses come back; developer stays sane.",
|
|
132
|
+
"Tags": "HTTP, DX, Humor"
|
|
133
|
+
},
|
|
134
|
+
{
|
|
135
|
+
"Slogan": "We took the buzz out of HTTP so you can focus on logic.",
|
|
136
|
+
"Tags": "HTTP, Calm, Coffee-themed"
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"Slogan": "REST done right: decaf code, full stack, zero crash.",
|
|
140
|
+
"Tags": "REST, Stack, Coffee-themed"
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"Slogan": "Your frontend’s best friend when your backend needs to chill.",
|
|
144
|
+
"Tags": "Frontend, Backend, Chill"
|
|
145
|
+
},
|
|
146
|
+
{
|
|
147
|
+
"Slogan": "Latency is your new relaxation timer.",
|
|
148
|
+
"Tags": "Latency, Funny, Chill"
|
|
149
|
+
},
|
|
150
|
+
{
|
|
151
|
+
"Slogan": "Grow features, not heart palpitations.",
|
|
152
|
+
"Tags": "Features, Calm, Humor"
|
|
153
|
+
},
|
|
154
|
+
{
|
|
155
|
+
"Slogan": "Build once, deploy everywhere, sip coffee in between.",
|
|
156
|
+
"Tags": "Deploy, Coffee-themed, Fun"
|
|
157
|
+
},
|
|
158
|
+
{
|
|
159
|
+
"Slogan": "Let the adapter hustle; you stay mellow.",
|
|
160
|
+
"Tags": "Adapter, Calm, Developer"
|
|
161
|
+
},
|
|
162
|
+
{
|
|
163
|
+
"Slogan": "Calm code solves more problems than hyperactive code.",
|
|
164
|
+
"Tags": "Calm, Code, Humor"
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"Slogan": "Endpoints with no drama, just parsing and promises.",
|
|
168
|
+
"Tags": "Endpoints, Chill, Technical"
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
"Slogan": "HTTP‑adapter: the decaf espresso shot for your API stack.",
|
|
172
|
+
"Tags": "Adapter, Coffee-themed, API"
|
|
173
|
+
},
|
|
174
|
+
{
|
|
175
|
+
"Slogan": "Chill out — your REST endpoints are in good hands.",
|
|
176
|
+
"Tags": "REST, Chill, Comfort"
|
|
177
|
+
},
|
|
178
|
+
{
|
|
179
|
+
"Slogan": "Handle headers like a barista handles milk foam: effortlessly.",
|
|
180
|
+
"Tags": "Headers, Humor, Coffee-themed"
|
|
181
|
+
},
|
|
182
|
+
{
|
|
183
|
+
"Slogan": "You’re sipping decaf. Your endpoints are sipping decaf. Everyone’s resting nicely.",
|
|
184
|
+
"Tags": "Endpoints, Humor, Calm"
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"Slogan": "REST, relax, repeat.",
|
|
188
|
+
"Tags": "REST, Calm, Repetition"
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"Slogan": "Where API meets iced‑latte vibes.",
|
|
192
|
+
"Tags": "API, Coffee-themed, Chill"
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"Slogan": "No caffeine crash. Just clean requests.",
|
|
196
|
+
"Tags": "HTTP, Calm, Developer"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"Slogan": "Decaf‑TS for HTTP: Because your backend shouldn’t keep you up at night.",
|
|
200
|
+
"Tags": "Backend, Calm, Coffee-themed"
|
|
201
|
+
}
|
|
202
|
+
]
|