@decaf-ts/for-http 0.3.11 → 0.3.12
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/HttpPaginator.cjs +5 -56
- package/lib/HttpPaginator.d.ts +5 -6
- package/lib/HttpPaginator.js.map +1 -1
- package/lib/HttpStatement.cjs +7 -97
- package/lib/HttpStatement.d.ts +8 -6
- package/lib/HttpStatement.js.map +1 -1
- package/lib/RestRepository.cjs +25 -10
- package/lib/RestRepository.d.ts +9 -3
- package/lib/RestRepository.js.map +1 -1
- package/lib/RestService.cjs +5 -2
- package/lib/RestService.d.ts +11 -2
- package/lib/RestService.js.map +1 -1
- package/lib/adapter.cjs +17 -13
- package/lib/adapter.d.ts +14 -15
- package/lib/adapter.js.map +1 -1
- package/lib/axios/axios.cjs +2 -3
- package/lib/axios/axios.d.ts +6 -6
- package/lib/axios/axios.js.map +1 -1
- package/lib/esm/HttpPaginator.d.ts +5 -6
- package/lib/esm/HttpPaginator.js +6 -57
- package/lib/esm/HttpPaginator.js.map +1 -1
- package/lib/esm/HttpStatement.d.ts +8 -6
- package/lib/esm/HttpStatement.js +8 -98
- package/lib/esm/HttpStatement.js.map +1 -1
- package/lib/esm/RestRepository.d.ts +9 -3
- package/lib/esm/RestRepository.js +23 -8
- package/lib/esm/RestRepository.js.map +1 -1
- package/lib/esm/RestService.d.ts +11 -2
- package/lib/esm/RestService.js +5 -2
- package/lib/esm/RestService.js.map +1 -1
- package/lib/esm/adapter.d.ts +14 -15
- package/lib/esm/adapter.js +18 -14
- package/lib/esm/adapter.js.map +1 -1
- package/lib/esm/axios/axios.d.ts +6 -6
- package/lib/esm/axios/axios.js +2 -3
- package/lib/esm/axios/axios.js.map +1 -1
- package/lib/esm/index.d.ts +4 -1
- package/lib/esm/index.js +6 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/types.d.ts +2 -9
- package/lib/index.cjs +7 -2
- package/lib/index.d.ts +4 -1
- package/lib/index.js.map +1 -1
- package/lib/types.d.ts +2 -9
- package/package.json +1 -1
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:
|
|
32
|
+
Minimal size: 2.7 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,o){"use strict";class n extends t.Repository{constructor(e,t){super(e,t)}url(e,t,r){return this.adapter.url(e,t,r)}async paginateBy(e,t,a,...i){const o=await r.Context.args("paginateBy",this.class,i,this.adapter,this._overrides||{}),{log:n,ctxArgs:c}=this.logCtx(o.args,this.paginateBy);return n.verbose(`paginating ${s.Model.tableName(this.class)} with page size ${a}`),await this.statement(this.paginateBy.name,e,t,a,...c)}async listBy(e,t,...a){const i=await r.Context.args("list",this.class,a,this.adapter,this._overrides||{}),{log:o,ctxArgs:n}=this.logCtx(i.args,this.listBy);return o.verbose(`listing ${s.Model.tableName(this.class)} by ${e} ${t}`),await this.statement(this.listBy.name,e,t,...n)}async findOneBy(e,t,...a){const i=await r.Context.args("findOneBy",this.class,a,this.adapter,this._overrides||{}),{log:o,ctxArgs:n}=this.logCtx(i.args,this.findOneBy);return o.verbose(`finding ${s.Model.tableName(this.class)} with ${e} ${t}`),await this.statement(this.findOneBy.name,e,t,...n)}async statement(e,...t){const s=await r.Context.args("statement",this.class,t,this.adapter,this._overrides||{}),{log:a,ctxArgs:i,ctx:o}=this.logCtx(s.args,this.statement),n={class:this.class,args:t,method:e},c=this.adapter.toRequest(n,o);return a.verbose("Executing prepared statement "+e),this.request(c,...i)}async request(e,...t){const s=await r.Context.args("request",this.class,t,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(s.args,this.request);return this.adapter.request(e,...a)}}class c extends n{constructor(e,t){super(e,t),this._overrides={ignoreValidation:!0,ignoreHandlers:!0}}toString(){return s.Model.tableName(this.class)+" REST service"}}class l extends t.Paginator{constructor(e,t,r,s){super(e,t,r,s)}async page(e=1,...t){const s=await r.Context.args(r.OperationKeys.READ,this.clazz,t,this.adapter);let a=Object.assign({},this.statement,{args:[...this.statement.args],params:{...this.statement.params}});this.statement.method.includes("pageBy")||(a=this.prepare(a)),a.args.push(e),e=this.validatePage(e);const i=await this.adapter.raw(a,...s.args);return this._currentPage=e,i}prepare(e){let r=e.method.split(RegExp(`(${[t.QueryClause.FIND_BY,t.QueryClause.SELECT,t.QueryClause.ORDER_BY,t.QueryClause.GROUP_BY,t.QueryClause.AND,t.QueryClause.OR].join("|")})`,"i"));r=r.map((e=>e.trim())).filter(Boolean).filter((e=>![t.QueryClause.FIND_BY,t.QueryClause.SELECT,t.QueryClause.ORDER_BY,t.QueryClause.GROUP_BY,i.toPascalCase(t.OrderDirection.ASC),i.toPascalCase(t.OrderDirection.DSC)].find((t=>e.includes(t)))));const s=e.method.split(t.QueryClause.ORDER_BY);let a;if(s.length&&(a=s[1].split(RegExp(""+[i.toPascalCase(t.OrderDirection.ASC),i.toPascalCase(t.OrderDirection.DSC),t.QueryClause.GROUP_BY+".*",t.QueryClause.THEN_BY].join("|"),"i")).map((e=>e.trim())).filter(Boolean),a=[a[0],s[1].includes(i.toPascalCase(t.OrderDirection.ASC))?t.OrderDirection.ASC:t.OrderDirection.DSC]),1===r.length&&r[0]===a[0]){const t=r[0];return Object.assign({},e,{method:"pageBy",args:[i.toCamelCase(t),a[1],this.size]})}return Object.assign({},e,{method:e.method.replace(t.QueryClause.FIND_BY,"pageBy"),args:[...e.args,this.size]})}}class d extends t.Statement{constructor(e){super(e)}build(){const e=[t.QueryClause.FIND_BY],r=[],s={};if(this.whereCondition){const t=this.parseCondition(this.whereCondition);e.push(t.method),t.args&&t.args.length&&r.push(...t.args)}return this.selectSelector&&e.push(t.QueryClause.SELECT,this.selectSelector.join(` ${t.QueryClause.AND.toLowerCase()} `)),this.orderBySelector&&e.push(t.QueryClause.ORDER_BY,...this.orderBySelector),this.groupBySelector&&e.push(t.QueryClause.GROUP_BY,this.groupBySelector),this.limitSelector&&(s.limit=this.limitSelector),this.offsetSelector&&(s.skip=this.offsetSelector),{class:this.fromSelector,method:i.toCamelCase(e.join(" ")),args:r,params:Object.keys(s).length?s:void 0}}async paginate(e=10,...t){try{const t=this.build();return new l(this.adapter,t,e,this.fromSelector)}catch(e){throw new r.InternalError(e)}}parseCondition(e){let{attr1:r,operator:s,comparison:a}=e;const i={};switch(s){case t.GroupOperator.AND:case t.GroupOperator.OR:{let e=r,o=a;if("string"!=typeof r){const t=this.parseCondition(r);e=t.method,i.args=[...i.args||[],...t.args||[]]}if(a instanceof t.Condition){const e=this.parseCondition(a);o=e.method,i.args=[...i.args||[],...e.args||[]]}i.method=`${e} ${s.toLowerCase()} ${o}`;break}case t.Operator.EQUAL:i.method=r,i.args=[...i.args||[],a];break;case t.Operator.DIFFERENT:i.method=r+" diff",i.args=[...i.args||[],a];break;case t.Operator.REGEXP:i.method=r+" matches",i.args=[...i.args||[],a];break;case t.Operator.BIGGER:i.method=r+" bigger",i.args=[...i.args||[],a];break;case t.Operator.BIGGER_EQ:i.method=r+" bigger than equal";break;case t.Operator.SMALLER:i.method=r+" less",i.args=[...i.args||[],a];break;case t.Operator.SMALLER_EQ:i.method=r+" less than equal",i.args=[...i.args||[],a];break;case t.Operator.IN:i.method=r+" in",i.args=[...i.args||[],a];break;default:throw new t.QueryError("Unsupported operator "+s)}return i}}class u extends t.Adapter{constructor(e,t,r){super(e,t,r)}async flags(e,t,r){return Object.assign(await super.flags(e,t,r),{headers:{}})}repository(){return c}prepare(e,...r){const{log:a}=this.logCtx(r,this.prepare),i=Object.assign({},e);return e[t.PersistenceKeys.METADATA]&&(a.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[s.Model.pk(e.constructor)]}}revert(e,a,i,...o){const{log:n}=this.logCtx(o,this.revert),c={},l="string"==typeof a?s.Model.build(c,a):new a(c);n.silly(`Rebuilding model ${l.constructor.name} id ${i}`);const d="string"==typeof a?s.Model.get(a):a;if(!d)throw new r.InternalError("Failed to retrieve model constructor for "+a);const u=new d(e),h=e[t.PersistenceKeys.METADATA];return h&&(n.silly(`Passing along ${this.flavour} persistence metadata for ${l.constructor.name} id ${i}: ${h}`),Object.defineProperty(u,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:h})),u}toTableName(e){return"string"==typeof e?e:i.toKebabCase(s.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])=>s.searchParams.append(e,t.toString()))),encodeURI(s.toString()).replace(/\+/g,"%20")}extractIdArgs(e,t){const r=t.toString();if("string"==typeof e)return[r];const a=s.Model.composed(e,s.Model.pk(e));return a?r.split(a.separator):[r]}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(){return new d(this)}parseCondition(e){throw new t.UnsupportedError("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(e,...s){const a="string"==typeof e?e:e.message;return a.includes(r.NotFoundError.name)||a.includes("404")?new r.NotFoundError(e):a.includes(r.ConflictError.name)||a.includes("409")?new r.ConflictError(e):a.includes(r.BadRequestError.name)||a.includes("400")?new r.BadRequestError(e):a.includes(r.ValidationError.name)||a.includes("422")?new r.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(r.SerializationError.name)?new r.SerializationError(e):new r.InternalError(e)}static decoration(){super.decoration(),a.Decoration.for(t.PersistenceKeys.QUERY).define({decorator:e=>(s,i,o)=>a.apply(a.methodMetadata(a.Metadata.key(t.PersistenceKeys.QUERY,i),e),t.prepared(),((e,t,s)=>{s.value=new Proxy(s.value,{async apply(e,s,a){const i=s,o=await r.Context.args(t,i.class,a,i.adapter,i._overrides||{}),{log:n,ctxArgs:c}=i.logCtx(o.args,e);return n.verbose("Running prepared statement "+e.name),n.debug("With args: "+JSON.stringify(a,null,2)),s.statement(e.name,...c)}})}))(s,i,o)}).apply()}}u.decoration();const h="axios";class g extends u{constructor(e,t){super(e,h,t)}getClient(){return new o.Axios({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,s){let a,i;e instanceof r.Context?(i=e,a=void 0):(a=e,i=s);const o={};if(i)try{o.headers=i.get("headers")||{}}catch(e){}return a&&(o.method="GET",o.url=this.url(a.class,[t.PersistenceKeys.STATEMENT,a.method,...a.args],a.params)),o}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))}async create(e,t,r,...s){const{log:a,ctx:i}=this.logCtx(s,this.create);try{const t=this.url(e),s=this.toRequest(i);return a.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.post(t,r,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 update(e,t,r,...s){const{log:a,ctx:i}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),o=this.toRequest(i);return a.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(o)}`),this.client.put(s,r)}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)}}parseError(e,...t){return u.parseError(e,...t)}}g.decoration(),e.AxiosFlavour=h,e.AxiosHttpAdapter=g,e.HttpAdapter=u,e.RestRepository=n,e.RestService=c,e.VERSION="##VERSION##"},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/core"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decorator-validation"),require("@decaf-ts/decoration"),require("@decaf-ts/logging"),require("axios")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/core","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","@decaf-ts/decoration","@decaf-ts/logging","axios"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-http"]={},e.decafTsCore,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.decafTsDecoration,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,...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);return o.verbose(`paginating ${a.Model.tableName(this.class)} with page size ${s}`),this.select().orderBy([e,r]).paginate(s,...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("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},d=this.adapter.toRequest(c,n);return a.verbose("Executing prepared statement "+e),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 d 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 l extends t.Paginator{constructor(e,t,r,s){super(e,t,r,s)}prepare(e){throw new t.UnsupportedError("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(e=1,...t){return super.page(e,...t)}}class u extends t.Adapter{constructor(e,t,r){super(e,t,r)}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={},d="string"==typeof r?a.Model.build(c,r):new r(c);o.silly(`Rebuilding model ${d.constructor.name} id ${i}`);const l="string"==typeof r?a.Model.get(r):r;if(!l)throw new s.InternalError("Failed to retrieve model constructor for "+r);const u=new l(e),g=e[t.PersistenceKeys.METADATA];return g&&(o.silly(`Passing along ${this.flavour} persistence metadata for ${d.constructor.name} id ${i}: ${g}`),Object.defineProperty(u,t.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:g})),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])=>s.searchParams.append(e,t.toString())),encodeURI(s.toString()).replace(/\+/g,"%20")}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]}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 d(this,e)}Paginator(e,t,r){return new l(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 g="axios";class h extends u{constructor(e,t){super(e,g,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))}async create(e,t,r,...s){const{log:a,ctx:i}=this.logCtx(s,this.create);try{const t=this.url(e),s=this.toRequest(i);return a.debug(`POSTing to ${t} with ${JSON.stringify(r)} and cfg ${JSON.stringify(s)}`),this.client.post(t,r,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 update(e,t,r,...s){const{log:a,ctx:i}=this.logCtx(s,this.update);try{const s=this.url(e,this.extractIdArgs(e,t)),n=this.toRequest(i);return a.debug(`PUTing to ${s} with ${JSON.stringify(r)} and cfg ${JSON.stringify(n)}`),this.client.put(s,r)}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)}}parseError(e,...t){return u.parseError(e,...t)}}h.decoration();const p="##VERSION##",f="##PACKAGE##";r.Metadata.registerLibrary(f,p),e.AxiosFlavour=g,e.AxiosHttpAdapter=h,e.HttpAdapter=u,e.HttpPaginator=l,e.HttpStatement=d,e.PACKAGE_NAME=f,e.RestRepository=o,e.RestService=c,e.VERSION=p},"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/HttpPaginator.ts","../src/HttpStatement.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","url","tableName","pathParams","queryParams","this","paginateBy","key","order","size","args","contextArgs","Context","class","_overrides","log","ctxArgs","logCtx","verbose","Model","statement","name","listBy","findOneBy","value","ctx","query","method","req","toRequest","request","details","RestService","ignoreValidation","ignoreHandlers","toString","HttpPaginator","Paginator","page","OperationKeys","READ","Object","assign","params","includes","prepare","push","validatePage","results","raw","_currentPage","rawStatement","attrs","split","RegExp","QueryClause","FIND_BY","SELECT","ORDER_BY","GROUP_BY","AND","OR","join","map","s","trim","filter","Boolean","toPascalCase","OrderDirection","ASC","DSC","find","c","fullOrderBy","orderBy","length","THEN_BY","attr","toCamelCase","replace","HttpStatement","Statement","build","whereCondition","parsed","parseCondition","selectSelector","toLowerCase","orderBySelector","groupBySelector","limitSelector","limit","offsetSelector","skip","fromSelector","keys","undefined","paginate","e","InternalError","condition","attr1","operator","comparison","result","GroupOperator","side1","side2","condition1","Condition","condition2","Operator","EQUAL","DIFFERENT","REGEXP","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","IN","QueryError","HttpAdapter","Adapter","config","flavour","alias","flags","operation","model","overrides","headers","repository","PersistenceKeys","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","obj","ob","m","constr","get","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","entries","forEach","searchParams","append","encodeURI","extractIdArgs","idStr","composed","separator","rawInput","Sequence","options","Promise","reject","UnsupportedError","parseError","err","msg","message","NotFoundError","ConflictError","BadRequestError","ValidationError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","apply","methodMetadata","Metadata","prepared","propertyKey","Proxy","target","thisArg","repo","debug","JSON","stringify","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","STATEMENT","client","create","cfg","post","read","update","put","delete"],"mappings":"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"}
|
|
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","size","args","contextArgs","Context","PreparedStatementKeys","PAGE_BY","class","log","ctxArgs","logCtx","verbose","Model","select","orderBy","paginate","listBy","statement","name","direction","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","ctx","params","pop","query","method","req","toRequest","request","details","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","prepare","rawStatement","page","HttpAdapter","Adapter","config","flavour","alias","flags","operation","model","headers","repository","result","PersistenceKeys","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","obj","ob","m","constr","get","InternalError","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","length","join","entries","forEach","searchParams","append","encodeURI","replace","extractIdArgs","idStr","composed","split","separator","raw","rawInput","Sequence","options","Promise","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","apply","methodMetadata","Metadata","prepared","propertyKey","Proxy","target","thisArg","repo","debug","JSON","stringify","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","undefined","e","STATEMENT","client","create","cfg","post","read","update","put","delete","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/dist/for-http.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Repository as
|
|
1
|
+
import{Repository as e,Context as t,PreparedStatementKeys as s,Statement as r,UnsupportedError as a,Paginator as i,Adapter as n,PersistenceKeys as o,QueryError as c,PagingError as l,MigrationError as d,ObserverError as h,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 x}from"@decaf-ts/decoration";import{InternalError as b,NotFoundError as A,ConflictError as v,BadRequestError as $,ValidationError as E,SerializationError as q}from"@decaf-ts/db-decorators";import{Model as T}from"@decaf-ts/decorator-validation";import{toKebabCase as O}from"@decaf-ts/logging";import{Axios as C}from"axios";class S extends e{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}url(e,t,s){return this.adapter.url(e,t,s)}async paginateBy(e,r,a,...i){const n=await t.args(s.PAGE_BY,this.class,i,this.adapter,this._overrides||{}),{log:o,ctxArgs:c}=this.logCtx(n.args,this.paginateBy);return o.verbose(`paginating ${T.tableName(this.class)} with page size ${a}`),this.select().orderBy([e,r]).paginate(a,...c)}async listBy(e,s,...r){const a=await t.args("list",this.class,r,this.adapter,this._overrides||{}),{log:i,ctxArgs:n}=this.logCtx(a.args,this.listBy);return i.verbose(`listing ${T.tableName(this.class)} by ${e} ${s}`),await this.statement(this.listBy.name,e,{direction:s},...n)}async findBy(e,r,...a){const i=await t.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 ${T.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findBy.name,e,r,{},...o)}async findOneBy(e,r,...a){const i=await t.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 ${T.tableName(this.class)} with ${e} ${r}`),await this.statement(this.findOneBy.name,e,r,{},...o)}async statement(e,...s){const r=await t.args("statement",this.class,s,this.adapter,this._overrides||{}),{log:a,ctxArgs:i,ctx:n}=this.logCtx(r.args,this.statement),o=s.pop(),c={class:this.class,args:s,method:e,params:o},l=this.adapter.toRequest(c,n);return a.verbose("Executing prepared statement "+e),this.request(l,...i)}async request(e,...s){const r=await t.args("request",this.class,s,this.adapter,this._overrides||{}),{ctxArgs:a}=this.logCtx(r.args,this.request);return this.adapter.request(e,...a)}}class N extends S{constructor(e,t){super(e,t),this._overrides=Object.assign({},super._overrides,{ignoreValidation:!0,ignoreHandlers:!0,allowRawStatements:!1,forcePrepareSimpleQueries:!0,forcePrepareComplexQueries:!0})}toString(){return T.tableName(this.class)+" REST service"}}class R extends r{constructor(e,t){super(e,t)}build(){throw new a("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,...t){throw new a("This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required")}}class P extends i{constructor(e,t,s,r){super(e,t,s,r)}prepare(e){throw new a("Raw query access must be implemented by a subclass. only prepared statements are natively available")}page(e=1,...t){return super.page(e,...t)}}class B extends n{constructor(e,t,s){super(e,t,s)}async flags(e,t,s,...r){const a=await super.flags(e,t,s,...r);return Object.assign({},a,{headers:a.headers??{}})}repository(){return N}prepare(e,...t){const{log:s}=this.logCtx(t,this.prepare),r=Object.assign({},e);return e[o.METADATA]&&(s.silly("Passing along persistence metadata for "+e[o.METADATA]),Object.defineProperty(r,o.METADATA,{enumerable:!1,writable:!1,configurable:!0,value:e[o.METADATA]})),{record:e,id:e[T.pk(e.constructor)]}}revert(e,t,s,...r){const{log:a}=this.logCtx(r,this.revert),i={},n="string"==typeof t?T.build(i,t):new t(i);a.silly(`Rebuilding model ${n.constructor.name} id ${s}`);const c="string"==typeof t?T.get(t):t;if(!c)throw new b("Failed to retrieve model constructor for "+t);const l=new c(e),d=e[o.METADATA];return d&&(a.silly(`Passing along ${this.flavour} persistence metadata for ${n.constructor.name} id ${s}: ${d}`),Object.defineProperty(l,o.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:d})),l}toTableName(e){return"string"==typeof e?e:O(T.tableName(e))}url(e,t,s){s||t&&!Array.isArray(t)&&(s=t,t=[]),e=this.toTableName(e);const r=new URL(`${this.config.protocol}://${this.config.host}/${e}${t&&t.length?"/"+t.join("/"):""}`);return s&&Object.entries(s).forEach(([e,t])=>r.searchParams.append(e,t.toString())),encodeURI(r.toString()).replace(/\+/g,"%20")}extractIdArgs(e,t){const s=t.toString();if("string"==typeof e)return[s];const r=T.composed(e,T.pk(e));return r?s.split(r.separator):[s]}raw(e,...t){const{ctxArgs:s,ctx:r}=this.logCtx(t,this.raw),a=this.toRequest(e,r);return this.request(a,...s)}Sequence(e){return Promise.reject(new a("Api is not natively available for HttpAdapters. If required, please extends this class"))}Statement(e){return new R(this,e)}Paginator(e,t,s){return new P(this,e,t,s)}parseCondition(e){throw new a("Api is not natively available for HttpAdapters. If required, please extends this class")}static parseError(e,...t){const s="string"==typeof e?e:e.message;return s.includes(A.name)||s.includes("404")?new A(e):s.includes(v.name)||s.includes("409")?new v(e):s.includes($.name)||s.includes("400")?new $(e):s.includes(E.name)||s.includes("422")?new E(e):s.includes(c.name)?new c(e):s.includes(l.name)?new l(e):s.includes(a.name)?new a(e):s.includes(d.name)?new d(e):s.includes(h.name)?new h(e):s.includes(u.name)?new u(e):s.includes(g.name)?new g(e):s.includes(p.name)?new p(e):s.includes(q.name)?new q(e):new b(e)}static decoration(){super.decoration(),f.for(o.QUERY).define({decorator:e=>(s,r,a)=>y(w(x.key(o.QUERY,r),e),m(),(e,s,r)=>{r.value=new Proxy(r.value,{async apply(e,r,a){const i=r,n=await t.args(s,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)),r.statement(e.name,...c)}})})(s,r,a)}).apply()}}B.decoration();const _="axios";class I extends B{constructor(e,t){super(e,_,t)}getClient(){return new C({baseURL:`${this.config.protocol}://${this.config.host}`})}toRequest(e,s){let r,a;e instanceof t?(a=e,r=void 0):(r=e,a=s);const i={};if(a)try{i.headers=a.get("headers")||{}}catch(e){}return r&&(i.method="GET",i.url=this.url(r.class,[o.STATEMENT,r.method,...r.args||[]],r.params)),i}async request(e,...t){let s={};try{const{ctx:e}=this.logCtx(t,this.request);s=this.toRequest(e)}catch(e){}return this.client.request(Object.assign({},e,s))}async create(e,t,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.create);try{const t=this.url(e),r=this.toRequest(i);return a.debug(`POSTing to ${t} with ${JSON.stringify(s)} and cfg ${JSON.stringify(r)}`),this.client.post(t,s,r)}catch(e){throw this.parseError(e)}}async read(e,t,...s){const{log:r,ctx:a}=this.logCtx(s,this.read);try{const s=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return r.debug(`GETing from ${s} and cfg ${JSON.stringify(i)}`),this.client.get(s)}catch(e){throw this.parseError(e)}}async update(e,t,s,...r){const{log:a,ctx:i}=this.logCtx(r,this.update);try{const r=this.url(e,this.extractIdArgs(e,t)),n=this.toRequest(i);return a.debug(`PUTing to ${r} with ${JSON.stringify(s)} and cfg ${JSON.stringify(n)}`),this.client.put(r,s)}catch(e){throw this.parseError(e)}}async delete(e,t,...s){const{log:r,ctx:a}=this.logCtx(s,this.delete);try{const s=this.url(e,this.extractIdArgs(e,t)),i=this.toRequest(a);return r.debug(`DELETEing from ${s} and cfg ${JSON.stringify(i)}`),this.client.delete(s)}catch(e){throw this.parseError(e)}}parseError(e,...t){return B.parseError(e,...t)}}I.decoration();const j="##VERSION##",D="##PACKAGE##";x.registerLibrary(D,j);export{_ as AxiosFlavour,I as AxiosHttpAdapter,B as HttpAdapter,P as HttpPaginator,R as HttpStatement,D as PACKAGE_NAME,S as RestRepository,N as RestService,j as VERSION};
|
|
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/HttpPaginator.ts","../src/HttpStatement.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","url","tableName","pathParams","queryParams","this","paginateBy","key","order","size","args","contextArgs","Context","class","_overrides","log","ctxArgs","logCtx","verbose","Model","statement","name","listBy","findOneBy","value","ctx","query","method","req","toRequest","request","details","RestService","ignoreValidation","ignoreHandlers","toString","HttpPaginator","Paginator","page","OperationKeys","READ","Object","assign","params","includes","prepare","push","validatePage","results","raw","_currentPage","rawStatement","attrs","split","RegExp","QueryClause","FIND_BY","SELECT","ORDER_BY","GROUP_BY","AND","OR","join","map","s","trim","filter","Boolean","toPascalCase","OrderDirection","ASC","DSC","find","c","fullOrderBy","orderBy","length","THEN_BY","attr","toCamelCase","replace","HttpStatement","Statement","build","whereCondition","parsed","parseCondition","selectSelector","toLowerCase","orderBySelector","groupBySelector","limitSelector","limit","offsetSelector","skip","fromSelector","keys","undefined","paginate","e","InternalError","condition","attr1","operator","comparison","result","GroupOperator","side1","side2","condition1","Condition","condition2","Operator","EQUAL","DIFFERENT","REGEXP","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","IN","QueryError","HttpAdapter","Adapter","config","flavour","alias","flags","operation","model","overrides","headers","repository","PersistenceKeys","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","obj","ob","m","constr","get","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","entries","forEach","searchParams","append","encodeURI","extractIdArgs","idStr","composed","separator","rawInput","Sequence","options","Promise","reject","UnsupportedError","parseError","err","msg","message","NotFoundError","ConflictError","BadRequestError","ValidationError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","apply","methodMetadata","Metadata","prepared","propertyKey","Proxy","target","thisArg","repo","debug","JSON","stringify","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","STATEMENT","client","create","cfg","post","read","update","put","delete","VERSION"],"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","size","args","contextArgs","Context","PreparedStatementKeys","PAGE_BY","class","log","ctxArgs","logCtx","verbose","Model","select","orderBy","paginate","listBy","statement","name","direction","findBy","value","FIND_BY","findOneBy","FIND_ONE_BY","ctx","params","pop","query","method","req","toRequest","request","details","RestService","ignoreValidation","ignoreHandlers","toString","HttpStatement","Statement","overrides","build","UnsupportedError","parseCondition","condition","HttpPaginator","Paginator","prepare","rawStatement","page","HttpAdapter","Adapter","config","flavour","alias","flags","operation","model","headers","repository","result","PersistenceKeys","METADATA","silly","defineProperty","enumerable","writable","configurable","record","id","pk","revert","obj","ob","m","constr","get","InternalError","metadata","toTableName","t","toKebabCase","Array","isArray","URL","protocol","host","length","join","entries","forEach","searchParams","append","encodeURI","replace","extractIdArgs","idStr","composed","split","separator","raw","rawInput","Sequence","options","Promise","reject","parseError","err","msg","message","includes","NotFoundError","ConflictError","BadRequestError","ValidationError","QueryError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","SerializationError","decoration","Decoration","for","QUERY","define","decorator","prop","descriptor","apply","methodMetadata","Metadata","prepared","propertyKey","Proxy","target","thisArg","repo","debug","JSON","stringify","AxiosFlavour","AxiosHttpAdapter","getClient","Axios","baseURL","ctxOrQuery","context","undefined","e","STATEMENT","client","create","cfg","post","read","update","put","delete","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"qsBA0CM,MAAOA,UAIHC,EAOR,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,CAEQ,gBAAMC,CACbC,EACAC,EACAC,KACGC,GAEH,MAAMC,QAAoBC,EAAQF,KAChCG,EAAsBC,QACtBnB,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBoB,IAAEA,EAAGC,QAAEA,GAAYtB,KAAKuB,OAAOP,EAAYD,KAAMf,KAAKW,YAI5D,OAHAU,EAAIG,QACF,cAAcC,EAAMjB,UAAUR,KAAKoB,yBAAyBN,KAEvDd,KAAK0B,SACTC,QAAQ,CAACf,EAAKC,IACde,SAASd,KAASQ,EACtB,CAEQ,YAAMO,CACbjB,EACAC,KACGE,GAEH,MAAMC,QAAoBC,EAAQF,KAChC,OACAf,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBoB,IAAEA,EAAGC,QAAEA,GAAYtB,KAAKuB,OAAOP,EAAYD,KAAMf,KAAK6B,QAI5D,OAHAR,EAAIG,QACF,WAAWC,EAAMjB,UAAUR,KAAKoB,aAAaR,KAAiBC,WAElDb,KAAK8B,UACjB9B,KAAK6B,OAAOE,KACZnB,EACA,CAAEoB,UAAWnB,MACVS,EAEN,CAEQ,YAAMW,CACbrB,EACAsB,KACGnB,GAEH,MAAMC,QAAoBC,EAAQF,KAChCG,EAAsBiB,QACtBnC,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBoB,IAAEA,EAAGC,QAAEA,GAAYtB,KAAKuB,OAAOP,EAAYD,KAAMf,KAAKiC,QAI5D,OAHAZ,EAAIG,QACF,eAAeC,EAAMjB,UAAUR,KAAKoB,eAAeR,KAAiBsB,WAExDlC,KAAK8B,UACjB9B,KAAKiC,OAAOF,KACZnB,EACAsB,EACA,MACGZ,EAEN,CAEQ,eAAMc,CACbxB,EACAsB,KACGnB,GAEH,MAAMC,QAAoBC,EAAQF,KAChCG,EAAsBmB,YACtBrC,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBoB,IAAEA,EAAGC,QAAEA,GAAYtB,KAAKuB,OAAOP,EAAYD,KAAMf,KAAKoC,WAI5D,OAHAf,EAAIG,QACF,eAAeC,EAAMjB,UAAUR,KAAKoB,eAAeR,KAAiBsB,WAExDlC,KAAK8B,UACjB9B,KAAKoC,UAAUL,KACfnB,EACAsB,EACA,MACGZ,EAEN,CAEQ,eAAMQ,CACbC,KACGhB,GAEH,MAAMC,QAAoBC,EAAQF,KAChC,YACAf,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBoB,IAAEA,EAAGC,QAAEA,EAAOgB,IAAEA,GAAQtC,KAAKuB,OAAOP,EAAYD,KAAMf,KAAK8B,WAC3DS,EAASxB,EAAKyB,MACdC,EAAgC,CACpCrB,MAAOpB,KAAKoB,MACZL,KAAMA,EACN2B,OAAQX,EACRQ,OAAQA,GAEJI,EAAM3C,KAAKH,QAAQ+C,UAAUH,EAAOH,GAE1C,OADAjB,EAAIG,QAAQ,gCAAgCO,GACrC/B,KAAK6C,QAAQF,KAAQrB,EAC7B,CAED,aAAMuB,CACJC,KACG/B,GAEH,MAAMC,QAAoBC,EAAQF,KAChC,UACAf,KAAKoB,MACLL,EACAf,KAAKH,QACLG,KAAKC,YAAc,CAAE,IAEjBqB,QAAEA,GAAYtB,KAAKuB,OAAOP,EAAYD,KAAMf,KAAK6C,SACvD,OAAO7C,KAAKH,QAAQgD,QAAWC,KAAYxB,EAC5C,EC1JG,MAAOyB,UAIHrD,EAgBR,WAAAE,CAAYC,EAAYC,GACtBC,MAAMF,EAASC,GAhBEE,KAAUC,WAAGC,OAAOC,OAAO,CAAA,EAAIJ,MAAkB,WAAG,CACrEiD,kBAAkB,EAClBC,gBAAgB,EAChB7C,oBAAoB,EACpBC,2BAA2B,EAC3BC,4BAA4B,GAY7B,CAEQ,QAAA4C,GACP,OAAUzB,EAAMjB,UAAUR,KAAKoB,OAAxB,eACR,ECvEG,MAAO+B,UAIHC,EACR,WAAAxD,CAAYC,EAAYwD,GACtBtD,MAAMF,EAASwD,EAChB,CAEkB,KAAAC,GACjB,MAAM,IAAIC,EACR,4IAEH,CAEkB,cAAAC,CAEjBC,KAEG1C,GAEH,MAAM,IAAIwC,EACR,4IAEH,ECtBG,MAAOG,UAIHC,EACR,WAAA/D,CAAYC,EAAY4C,EAAU3B,EAAchB,GAC9CC,MAAMF,EAAS4C,EAAO3B,EAAMhB,EAC7B,CAGS,OAAA8D,CAAQC,GAChB,MAAM,IAAIN,EACR,sGAEH,CAEQ,IAAAO,CACPA,EAAe,KACZ/C,GAEH,OAAOhB,MAAM+D,KAAKA,KAAS/C,EAC5B,ECoDG,MAAgBgD,UAMZC,EACR,WAAApE,CAAsBqE,EAAcC,EAAiBC,GACnDpE,MAAMkE,EAAQC,EAASC,EACxB,CAYkB,WAAMC,CACvBC,EACAC,EACAjB,KACGtC,GAEH,MAAMqD,QAAcrE,MAAMqE,MAAMC,EAAWC,EAAOjB,KAActC,GAChE,OAAOb,OAAOC,OAAO,CAAE,EAAEiE,EAAO,CAC9BG,QAASH,EAAMG,SAAW,CAAE,GAE/B,CASQ,UAAAC,GAGP,OAAOzB,CACR,CAYQ,OAAAa,CACPU,KACGvD,GAEH,MAAMM,IAAEA,GAAQrB,KAAKuB,OAAOR,EAAMf,KAAK4D,SACjCa,EAASvE,OAAOC,OAAO,CAAE,EAAEmE,GAajC,OAZKA,EAAcI,EAAgBC,YACjCtD,EAAIuD,MACF,0CAA2CN,EAAcI,EAAgBC,WAE3EzE,OAAO2E,eAAeJ,EAAQC,EAAgBC,SAAU,CACtDG,YAAY,EACZC,UAAU,EACVC,cAAc,EACd9C,MAAQoC,EAAcI,EAAgBC,aAInC,CACLM,OAAQX,EACRY,GAAIZ,EAAM7C,EAAM0D,GAAGb,EAAM1E,cAE5B,CAaQ,MAAAwF,CACPC,EACAvF,EACAoF,KACGnE,GAEH,MAAMM,IAAEA,GAAQrB,KAAKuB,OAAOR,EAAMf,KAAKoF,QACjCE,EAA0B,CAAA,EAC1BC,EACa,iBAAVzF,EAAqB2B,EAAM6B,MAAMgC,EAAIxF,GAAS,IAAIA,EAAMwF,GAEjEjE,EAAIuD,MAAM,oBAAoBW,EAAE3F,YAAYmC,WAAWmD,KACvD,MAAMM,EAA0B,iBAAV1F,EAAqB2B,EAAMgE,IAAI3F,GAASA,EAC9D,IAAK0F,EACH,MAAM,IAAIE,EACR,4CAA4C5F,GAEhD,MAAM2E,EAAS,IAAKe,EAA0BH,GACxCM,EAAWN,EAAIX,EAAgBC,UAarC,OAZIgB,IACFtE,EAAIuD,MACF,iBAAiB5E,KAAKkE,oCAAoCqB,EAAE3F,YAAYmC,WAAWmD,MAAOS,KAE5FzF,OAAO2E,eAAeJ,EAAQC,EAAgBC,SAAU,CACtDG,YAAY,EACZE,cAAc,EACdD,UAAU,EACV7C,MAAOyD,KAIJlB,CACR,CAES,WAAAmB,CAA6BC,GACrC,MAAoB,iBAANA,EAAiBA,EAAIC,EAAYrE,EAAMjB,UAAUqF,GAChE,CAgDD,GAAAtF,CACEC,EACAC,EACAC,GAEKA,GACCD,IAAesF,MAAMC,QAAQvF,KAC/BC,EAAcD,EACdA,EAAa,IAIjBD,EAAYR,KAAK4F,YAAYpF,GAC7B,MAAMD,EAAM,IAAI0F,IACd,GAAGjG,KAAKiE,OAAOiC,cAAclG,KAAKiE,OAAOkC,QAAQ3F,IAAYC,GAAcA,EAAW2F,OAAS,IAAK3F,EAAwB4F,KAAK,KAAS,MAQ5I,OANI3F,GACFR,OAAOoG,QAAQ5F,GAAa6F,QAAQ,EAAE3F,EAAKsB,KACzC3B,EAAIiG,aAAaC,OAAO7F,EAAKsB,EAAMgB,aAIhCwD,UAAUnG,EAAI2C,YAAYyD,QAAQ,MAAO,MACjD,CAiBS,aAAAC,CACRtC,EACAY,GAEA,MAAM2B,EAAQ3B,EAAGhC,WACjB,GAAqB,iBAAVoB,EAAoB,MAAO,CAACuC,GACvC,MAAMC,EAAWrF,EAAMqF,SAASxC,EAAO7C,EAAM0D,GAAGb,IAChD,OAAKwC,EACED,EAAME,MAAMD,EAASE,WADN,CAACH,EAExB,CA8ED,GAAAI,CAAOC,KAAgBnG,GACrB,MAAMO,QAAEA,EAAOgB,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAKiH,KAC1CtE,EAAM3C,KAAK4C,UAAUsE,EAAU5E,GACrC,OAAOtC,KAAK6C,QAAQF,KAAQrB,EAC7B,CAYQ,QAAA6F,CAASC,GAChB,OAAOC,QAAQC,OACb,IAAI/D,EACF,0FAGL,CAYQ,SAAAH,CACPC,GAEA,OAAO,IAAIF,EAAcnD,KAAMqD,EAChC,CAEQ,SAAAM,CACPlB,EACA3B,EACAhB,GAEA,OAAO,IAAI4D,EACT1D,KACAyC,EACA3B,EACAhB,EAEH,CAYD,cAAA0D,CAAeC,GACb,MAAM,IAAIF,EACR,yFAEH,CAED,iBAAOgE,CACLC,KAEGzG,GAEH,MAAM0G,EAAqB,iBAARD,EAAmBA,EAAMA,EAAIE,QAChD,OAAID,EAAIE,SAASC,EAAc7F,OAAS0F,EAAIE,SAAS,OAC5C,IAAIC,EAAcJ,GACvBC,EAAIE,SAASE,EAAc9F,OAAS0F,EAAIE,SAAS,OAC5C,IAAIE,EAAcL,GACvBC,EAAIE,SAASG,EAAgB/F,OAAS0F,EAAIE,SAAS,OAC9C,IAAIG,EAAgBN,GACzBC,EAAIE,SAASI,EAAgBhG,OAAS0F,EAAIE,SAAS,OAC9C,IAAII,EAAgBP,GACzBC,EAAIE,SAASK,EAAWjG,MAAc,IAAIiG,EAAWR,GACrDC,EAAIE,SAASM,EAAYlG,MAAc,IAAIkG,EAAYT,GACvDC,EAAIE,SAASpE,EAAiBxB,MACzB,IAAIwB,EAAiBiE,GAC1BC,EAAIE,SAASO,EAAenG,MAAc,IAAImG,EAAeV,GAC7DC,EAAIE,SAASQ,EAAcpG,MAAc,IAAIoG,EAAcX,GAC3DC,EAAIE,SAASS,EAAmBrG,MAC3B,IAAIqG,EAAmBZ,GAC5BC,EAAIE,SAASU,EAAetG,MAAc,IAAIsG,EAAeb,GAC7DC,EAAIE,SAASW,EAAgBvG,MACxB,IAAIuG,EAAgBd,GACzBC,EAAIE,SAASY,EAAmBxG,MAC3B,IAAIwG,EAAmBf,GACzB,IAAI9B,EAAc8B,EAC1B,CAED,iBAAgBgB,GACdzI,MAAMyI,aAmDNC,EAAWC,IAAIhE,EAAgBiE,OAC5BC,OAAO,CACNC,UApDWzB,GACN,CAAe/B,EAAayD,EAAYC,IAyCtCC,EACLC,EAAeC,EAAStI,IAAI8D,EAAgBiE,MAAOG,GAAO1B,GAC1D+B,IAxCO,CACL9D,EACA+D,EACAL,KAECA,EAA4C7G,MAAQ,IAAImH,MACtDN,EAA4C7G,MAC7C,CACE,WAAM8G,CACJM,EACAC,EACAxI,GAEA,MAAMyI,EAAOD,EAEPvI,QAAoBC,EAAQF,KAChCqI,EACAI,EAAKpI,MACLL,EACAyI,EAAc,QACdA,EAAiB,YAAK,CAAE,IAEpBnI,IAAEA,EAAGC,QAAEA,GAAYkI,EAAa,OACpCxI,EAAYD,KACZuI,GAIF,OAFAjI,EAAIG,QAAQ,8BAA8B8H,EAAOvH,MACjDV,EAAIoI,MAAM,cAAcC,KAAKC,UAAU5I,EAAM,KAAM,IAC3CwI,EAAiCzH,UACvCwH,EAAOvH,QACJT,EAEN,GAGP,EAGK0H,CAIL3D,EAAKyD,EAAMC,KAQdC,OACJ,EAGHjF,EAAYyE,aC1hBL,MAAMoB,EAAe,QCyDtB,MAAOC,UAAyB9F,EAOpC,WAAAnE,CAAYqE,EAAoBE,GAC9BpE,MAAMkE,EAAQ2F,EAAczF,EAC7B,CAEkB,SAAA2F,GACjB,OAAO,IAAIC,EAAM,CACfC,QAAS,GAAGhK,KAAKiE,OAAOiC,cAAclG,KAAKiE,OAAOkC,QAErD,CAQQ,SAAAvD,CACPqH,EACA3H,GAEA,IAAIG,EACAyH,EAEAD,aAAsBhJ,GACxBiJ,EAAUD,EACVxH,OAAQ0H,IAER1H,EAAQwH,EACRC,EAAU5H,GAGZ,MAAMK,EAA0B,CAAA,EAChC,GAAIuH,EACF,IACEvH,EAAI4B,QAAU2F,EAAQzE,IAAI,YAAc,CAAA,CAEzC,CAAC,MAAO2E,GAER,CAUH,OARI3H,IACFE,EAAID,OAAS,MACbC,EAAIpC,IAAMP,KAAKO,IACbkC,EAAMrB,MACN,CAACsD,EAAgB2F,UAAW5H,EAAMC,UAAYD,EAAM1B,MAAQ,IAC5D0B,EAAMF,SAGHI,CACR,CAUQ,aAAME,CACbC,KACG/B,GAEH,IAAIsC,EAAY,CAAA,EAChB,IACE,MAAMf,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAK6C,SACvCQ,EAAYrD,KAAK4C,UAAUN,EAE5B,CAAC,MAAO8H,GAER,CACD,OAAOpK,KAAKsK,OAAOzH,QAAQ3C,OAAOC,OAAO,GAAI2C,EAASO,GACvD,CAWQ,YAAMkH,CACb/J,EACA0E,EACAZ,KACGvD,GAEH,MAAMM,IAAEA,EAAGiB,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAKuK,QAC5C,IACE,MAAMhK,EAAMP,KAAKO,IAAIC,GACfgK,EAAMxK,KAAK4C,UAAUN,GAI3B,OAHAjB,EAAIoI,MACF,cAAclJ,UAAYmJ,KAAKC,UAAUrF,cAAkBoF,KAAKC,UAAUa,MAErExK,KAAKsK,OAAOG,KAAKlK,EAAK+D,EAAOkG,EACrC,CAAC,MAAOJ,GACP,MAAMpK,KAAKuH,WAAW6C,EACvB,CACF,CASQ,UAAMM,CACblK,EACA0E,KACGnE,GAEH,MAAMM,IAAEA,EAAGiB,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAK0K,MAC5C,IACE,MAAMnK,EAAMP,KAAKO,IACfC,EACAR,KAAK4G,cAAcpG,EAAW0E,IAE1BsF,EAAMxK,KAAK4C,UAAUN,GAE3B,OADAjB,EAAIoI,MAAM,eAAelJ,aAAemJ,KAAKC,UAAUa,MAChDxK,KAAKsK,OAAO7E,IAAIlF,EACxB,CAAC,MAAO6J,GACP,MAAMpK,KAAKuH,WAAW6C,EACvB,CACF,CAWQ,YAAMO,CACbnK,EACA0E,EACAZ,KACGvD,GAEH,MAAMM,IAAEA,EAAGiB,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAK2K,QAC5C,IACE,MAAMpK,EAAMP,KAAKO,IACfC,EACAR,KAAK4G,cAAcpG,EAAW0E,IAE1BsF,EAAMxK,KAAK4C,UAAUN,GAI3B,OAHAjB,EAAIoI,MACF,aAAalJ,UAAYmJ,KAAKC,UAAUrF,cAAkBoF,KAAKC,UAAUa,MAEpExK,KAAKsK,OAAOM,IAAIrK,EAAK+D,EAC7B,CAAC,MAAO8F,GACP,MAAMpK,KAAKuH,WAAW6C,EACvB,CACF,CAUQ,YAAM,CACb5J,EACA0E,KACGnE,GAEH,MAAMM,IAAEA,EAAGiB,IAAEA,GAAQtC,KAAKuB,OAAOR,EAAMf,KAAK6K,QAC5C,IACE,MAAMtK,EAAMP,KAAKO,IACfC,EACAR,KAAK4G,cAAcpG,EAAW0E,IAE1BsF,EAAMxK,KAAK4C,UAAUN,GAE3B,OADAjB,EAAIoI,MAAM,kBAAkBlJ,aAAemJ,KAAKC,UAAUa,MACnDxK,KAAKsK,OAAOO,OAAOtK,EAC3B,CAAC,MAAO6J,GACP,MAAMpK,KAAKuH,WAAW6C,EACvB,CACF,CAEQ,UAAA7C,CAAgCC,KAAezG,GACtD,OAAOgD,EAAYwD,WAAWC,KAAQzG,EACvC,ECtPH8I,EAAiBrB,aCYV,MAAMsC,EAAU,cAEVC,EAAe,cAE5B7B,EAAS8B,gBAAgBD,EAAcD"}
|
package/lib/HttpPaginator.cjs
CHANGED
|
@@ -2,67 +2,16 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HttpPaginator = void 0;
|
|
4
4
|
const core_1 = require("@decaf-ts/core");
|
|
5
|
-
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
6
|
-
const logging_1 = require("@decaf-ts/logging");
|
|
7
5
|
class HttpPaginator extends core_1.Paginator {
|
|
8
6
|
constructor(adapter, query, size, clazz) {
|
|
9
7
|
super(adapter, query, size, clazz);
|
|
10
8
|
}
|
|
11
|
-
|
|
12
|
-
const contextArgs = await db_decorators_1.Context.args(db_decorators_1.OperationKeys.READ, this.clazz, args, this.adapter);
|
|
13
|
-
let statement = Object.assign({}, this.statement, {
|
|
14
|
-
args: [...this.statement.args],
|
|
15
|
-
params: { ...this.statement.params },
|
|
16
|
-
});
|
|
17
|
-
if (!this.statement.method.includes("pageBy"))
|
|
18
|
-
statement = this.prepare(statement);
|
|
19
|
-
statement.args.push(page);
|
|
20
|
-
page = this.validatePage(page);
|
|
21
|
-
const results = await this.adapter.raw(statement, ...contextArgs.args);
|
|
22
|
-
this._currentPage = page;
|
|
23
|
-
return results;
|
|
24
|
-
}
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
25
10
|
prepare(rawStatement) {
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
.filter(Boolean)
|
|
31
|
-
.filter((s) => ![
|
|
32
|
-
core_1.QueryClause.FIND_BY,
|
|
33
|
-
core_1.QueryClause.SELECT,
|
|
34
|
-
core_1.QueryClause.ORDER_BY,
|
|
35
|
-
core_1.QueryClause.GROUP_BY,
|
|
36
|
-
(0, logging_1.toPascalCase)(core_1.OrderDirection.ASC),
|
|
37
|
-
(0, logging_1.toPascalCase)(core_1.OrderDirection.DSC),
|
|
38
|
-
].find((c) => s.includes(c)));
|
|
39
|
-
const fullOrderBy = rawStatement.method.split(core_1.QueryClause.ORDER_BY);
|
|
40
|
-
let orderBy;
|
|
41
|
-
if (fullOrderBy.length) {
|
|
42
|
-
orderBy = fullOrderBy[1]
|
|
43
|
-
.split(new RegExp(`${[(0, logging_1.toPascalCase)(core_1.OrderDirection.ASC), (0, logging_1.toPascalCase)(core_1.OrderDirection.DSC), core_1.QueryClause.GROUP_BY + ".*", core_1.QueryClause.THEN_BY].join("|")}`, "i"))
|
|
44
|
-
.map((s) => s.trim())
|
|
45
|
-
.filter(Boolean);
|
|
46
|
-
orderBy = [
|
|
47
|
-
orderBy[0],
|
|
48
|
-
fullOrderBy[1].includes((0, logging_1.toPascalCase)(core_1.OrderDirection.ASC))
|
|
49
|
-
? core_1.OrderDirection.ASC
|
|
50
|
-
: core_1.OrderDirection.DSC,
|
|
51
|
-
];
|
|
52
|
-
}
|
|
53
|
-
if (attrs.length === 1 && attrs[0] === orderBy[0]) {
|
|
54
|
-
const attr = attrs[0];
|
|
55
|
-
return Object.assign({}, rawStatement, {
|
|
56
|
-
method: "pageBy",
|
|
57
|
-
args: [(0, logging_1.toCamelCase)(attr), orderBy[1], this.size],
|
|
58
|
-
});
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
return Object.assign({}, rawStatement, {
|
|
62
|
-
method: rawStatement.method.replace(core_1.QueryClause.FIND_BY, "pageBy"),
|
|
63
|
-
args: [...rawStatement.args, this.size],
|
|
64
|
-
});
|
|
65
|
-
}
|
|
11
|
+
throw new core_1.UnsupportedError(`Raw query access must be implemented by a subclass. only prepared statements are natively available`);
|
|
12
|
+
}
|
|
13
|
+
page(page = 1, ...args) {
|
|
14
|
+
return super.page(page, ...args); // this will fail for non-prepared statements
|
|
66
15
|
}
|
|
67
16
|
}
|
|
68
17
|
exports.HttpPaginator = HttpPaginator;
|
package/lib/HttpPaginator.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
|
-
import { Paginator } from "@decaf-ts/core";
|
|
1
|
+
import { MaybeContextualArg, Paginator, PreparedStatement } from "@decaf-ts/core";
|
|
2
2
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
|
-
import { HttpQuery } from "./types";
|
|
4
3
|
import { Constructor } from "@decaf-ts/decoration";
|
|
5
4
|
import { HttpAdapter } from "./adapter";
|
|
6
|
-
export declare class HttpPaginator<M extends Model, A extends HttpAdapter<any, any, any,
|
|
7
|
-
constructor(adapter: A, query:
|
|
8
|
-
|
|
9
|
-
|
|
5
|
+
export declare class HttpPaginator<M extends Model, Q extends PreparedStatement<M>, A extends HttpAdapter<any, any, any, Q, any>> extends Paginator<M, M, Q> {
|
|
6
|
+
constructor(adapter: A, query: Q, size: number, clazz: Constructor<M>);
|
|
7
|
+
protected prepare(rawStatement: Q): Q;
|
|
8
|
+
page(page?: number, ...args: MaybeContextualArg<any>): Promise<M[]>;
|
|
10
9
|
}
|
package/lib/HttpPaginator.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpPaginator.js","sourceRoot":"","sources":["../src/HttpPaginator.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"HttpPaginator.js","sourceRoot":"","sources":["../src/HttpPaginator.ts"],"names":[],"mappings":";;;AAAA,yCAKwB;AAKxB,MAAa,aAIX,SAAQ,gBAAkB;IAC1B,YAAY,OAAU,EAAE,KAAQ,EAAE,IAAY,EAAE,KAAqB;QACnE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED,6DAA6D;IACnD,OAAO,CAAC,YAAe;QAC/B,MAAM,IAAI,uBAAgB,CACxB,qGAAqG,CACtG,CAAC;IACJ,CAAC;IAEQ,IAAI,CACX,OAAe,CAAC,EAChB,GAAG,IAA6B;QAEhC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,6CAA6C;IACjF,CAAC;CACF;AAtBD,sCAsBC"}
|
package/lib/HttpStatement.cjs
CHANGED
|
@@ -2,109 +2,19 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.HttpStatement = void 0;
|
|
4
4
|
const core_1 = require("@decaf-ts/core");
|
|
5
|
-
const logging_1 = require("@decaf-ts/logging");
|
|
6
|
-
const HttpPaginator_1 = require("./HttpPaginator.cjs");
|
|
7
|
-
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
8
5
|
class HttpStatement extends core_1.Statement {
|
|
9
|
-
constructor(adapter) {
|
|
10
|
-
super(adapter);
|
|
6
|
+
constructor(adapter, overrides) {
|
|
7
|
+
super(adapter, overrides);
|
|
11
8
|
}
|
|
12
9
|
build() {
|
|
13
|
-
|
|
14
|
-
const args = [];
|
|
15
|
-
const params = {};
|
|
16
|
-
if (this.whereCondition) {
|
|
17
|
-
const parsed = this.parseCondition(this.whereCondition);
|
|
18
|
-
method.push(parsed.method);
|
|
19
|
-
if (parsed.args && parsed.args.length)
|
|
20
|
-
args.push(...parsed.args);
|
|
21
|
-
}
|
|
22
|
-
if (this.selectSelector)
|
|
23
|
-
method.push(core_1.QueryClause.SELECT, this.selectSelector.join(` ${core_1.QueryClause.AND.toLowerCase()} `));
|
|
24
|
-
if (this.orderBySelector)
|
|
25
|
-
method.push(core_1.QueryClause.ORDER_BY, ...this.orderBySelector);
|
|
26
|
-
if (this.groupBySelector)
|
|
27
|
-
method.push(core_1.QueryClause.GROUP_BY, this.groupBySelector);
|
|
28
|
-
if (this.limitSelector)
|
|
29
|
-
params.limit = this.limitSelector;
|
|
30
|
-
if (this.offsetSelector) {
|
|
31
|
-
params.skip = this.offsetSelector;
|
|
32
|
-
}
|
|
33
|
-
return {
|
|
34
|
-
class: this.fromSelector,
|
|
35
|
-
method: (0, logging_1.toCamelCase)(method.join(" ")),
|
|
36
|
-
args: args,
|
|
37
|
-
params: Object.keys(params).length ? params : undefined,
|
|
38
|
-
};
|
|
10
|
+
throw new core_1.UnsupportedError(`This method is only called is prepared statements are not used. If so, a dedicated implementation for the native queries used is required`);
|
|
39
11
|
}
|
|
40
|
-
|
|
12
|
+
parseCondition(
|
|
13
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
14
|
+
condition,
|
|
41
15
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
42
16
|
...args) {
|
|
43
|
-
|
|
44
|
-
const query = this.build();
|
|
45
|
-
return new HttpPaginator_1.HttpPaginator(this.adapter, query, size, this.fromSelector);
|
|
46
|
-
}
|
|
47
|
-
catch (e) {
|
|
48
|
-
throw new db_decorators_1.InternalError(e);
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
parseCondition(condition) {
|
|
52
|
-
// @ts-expect-error accessing protected properties
|
|
53
|
-
// eslint-disable-next-line prefer-const
|
|
54
|
-
let { attr1, operator, comparison } = condition;
|
|
55
|
-
const result = {};
|
|
56
|
-
switch (operator) {
|
|
57
|
-
case core_1.GroupOperator.AND:
|
|
58
|
-
case core_1.GroupOperator.OR: {
|
|
59
|
-
let side1 = attr1, side2 = comparison;
|
|
60
|
-
if (typeof attr1 !== "string") {
|
|
61
|
-
const condition1 = this.parseCondition(attr1);
|
|
62
|
-
side1 = condition1.method;
|
|
63
|
-
result.args = [...(result.args || []), ...(condition1.args || [])];
|
|
64
|
-
}
|
|
65
|
-
if (comparison instanceof core_1.Condition) {
|
|
66
|
-
const condition2 = this.parseCondition(comparison);
|
|
67
|
-
side2 = condition2.method;
|
|
68
|
-
result.args = [...(result.args || []), ...(condition2.args || [])];
|
|
69
|
-
}
|
|
70
|
-
result.method = `${side1} ${operator.toLowerCase()} ${side2}`;
|
|
71
|
-
break;
|
|
72
|
-
}
|
|
73
|
-
case core_1.Operator.EQUAL:
|
|
74
|
-
result.method = attr1;
|
|
75
|
-
result.args = [...(result.args || []), comparison];
|
|
76
|
-
break;
|
|
77
|
-
case core_1.Operator.DIFFERENT:
|
|
78
|
-
result.method = `${attr1} diff`;
|
|
79
|
-
result.args = [...(result.args || []), comparison];
|
|
80
|
-
break;
|
|
81
|
-
case core_1.Operator.REGEXP:
|
|
82
|
-
result.method = `${attr1} matches`;
|
|
83
|
-
result.args = [...(result.args || []), comparison];
|
|
84
|
-
break;
|
|
85
|
-
case core_1.Operator.BIGGER:
|
|
86
|
-
result.method = `${attr1} bigger`;
|
|
87
|
-
result.args = [...(result.args || []), comparison];
|
|
88
|
-
break;
|
|
89
|
-
case core_1.Operator.BIGGER_EQ:
|
|
90
|
-
result.method = `${attr1} bigger than equal`;
|
|
91
|
-
break;
|
|
92
|
-
case core_1.Operator.SMALLER:
|
|
93
|
-
result.method = `${attr1} less`;
|
|
94
|
-
result.args = [...(result.args || []), comparison];
|
|
95
|
-
break;
|
|
96
|
-
case core_1.Operator.SMALLER_EQ:
|
|
97
|
-
result.method = `${attr1} less than equal`;
|
|
98
|
-
result.args = [...(result.args || []), comparison];
|
|
99
|
-
break;
|
|
100
|
-
case core_1.Operator.IN:
|
|
101
|
-
result.method = `${attr1} in`;
|
|
102
|
-
result.args = [...(result.args || []), comparison];
|
|
103
|
-
break;
|
|
104
|
-
default:
|
|
105
|
-
throw new core_1.QueryError(`Unsupported operator ${operator}`);
|
|
106
|
-
}
|
|
107
|
-
return result;
|
|
17
|
+
throw new core_1.UnsupportedError(`This method is only called is prepared statements are not used. Is so, a dedicated implementation for the native queries used is required`);
|
|
108
18
|
}
|
|
109
19
|
}
|
|
110
20
|
exports.HttpStatement = HttpStatement;
|
package/lib/HttpStatement.d.ts
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { Condition,
|
|
1
|
+
import { Condition, Statement } from "@decaf-ts/core";
|
|
2
2
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
3
|
import { HttpAdapter } from "./adapter";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
protected
|
|
4
|
+
import type { AdapterFlags } from "@decaf-ts/core";
|
|
5
|
+
type HttpAdapterQuery<T extends HttpAdapter<any, any, any, any, any>> = T extends HttpAdapter<any, any, any, infer Q, any> ? Q : never;
|
|
6
|
+
export declare class HttpStatement<M extends Model, A extends HttpAdapter<any, any, any, any, any>, R> extends Statement<M, A, R, HttpAdapterQuery<A>> {
|
|
7
|
+
constructor(adapter: A, overrides?: Partial<AdapterFlags>);
|
|
8
|
+
protected build(): HttpAdapterQuery<A>;
|
|
9
|
+
protected parseCondition(condition: Condition<M>, ...args: any[]): HttpAdapterQuery<A>;
|
|
9
10
|
}
|
|
11
|
+
export {};
|
package/lib/HttpStatement.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpStatement.js","sourceRoot":"","sources":["../src/HttpStatement.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"HttpStatement.js","sourceRoot":"","sources":["../src/HttpStatement.ts"],"names":[],"mappings":";;;AAAA,yCAAwE;AAQxE,MAAa,aAIX,SAAQ,gBAAuC;IAC/C,YAAY,OAAU,EAAE,SAAiC;QACvD,KAAK,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;IAEkB,KAAK;QACtB,MAAM,IAAI,uBAAgB,CACxB,2IAA2I,CAC5I,CAAC;IACJ,CAAC;IAEkB,cAAc;IAC/B,6DAA6D;IAC7D,SAAuB;IACvB,6DAA6D;IAC7D,GAAG,IAAW;QAEd,MAAM,IAAI,uBAAgB,CACxB,2IAA2I,CAC5I,CAAC;IACJ,CAAC;CACF;AAzBD,sCAyBC"}
|
package/lib/RestRepository.cjs
CHANGED
|
@@ -3,7 +3,7 @@ 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
|
|
6
|
+
const core_2 = require("@decaf-ts/core");
|
|
7
7
|
/**
|
|
8
8
|
* @description Repository for REST API interactions
|
|
9
9
|
* @summary A specialized repository implementation for interacting with REST APIs.
|
|
@@ -36,42 +36,57 @@ const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
|
36
36
|
class RestRepository extends core_1.Repository {
|
|
37
37
|
constructor(adapter, clazz) {
|
|
38
38
|
super(adapter, clazz);
|
|
39
|
+
this._overrides = Object.assign({}, super["_overrides"], {
|
|
40
|
+
allowRawStatements: false,
|
|
41
|
+
forcePrepareSimpleQueries: true,
|
|
42
|
+
forcePrepareComplexQueries: true,
|
|
43
|
+
});
|
|
39
44
|
}
|
|
40
45
|
url(tableName, pathParams, queryParams) {
|
|
41
46
|
return this.adapter.url(tableName, pathParams, queryParams);
|
|
42
47
|
}
|
|
43
48
|
async paginateBy(key, order, size, ...args) {
|
|
44
|
-
const contextArgs = await
|
|
49
|
+
const contextArgs = await core_1.Context.args(core_2.PreparedStatementKeys.PAGE_BY, this.class, args, this.adapter, this._overrides || {});
|
|
45
50
|
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.paginateBy);
|
|
46
51
|
log.verbose(`paginating ${decorator_validation_1.Model.tableName(this.class)} with page size ${size}`);
|
|
47
|
-
return
|
|
52
|
+
return this.select()
|
|
53
|
+
.orderBy([key, order])
|
|
54
|
+
.paginate(size, ...ctxArgs);
|
|
48
55
|
}
|
|
49
56
|
async listBy(key, order, ...args) {
|
|
50
|
-
const contextArgs = await
|
|
57
|
+
const contextArgs = await core_1.Context.args("list", this.class, args, this.adapter, this._overrides || {});
|
|
51
58
|
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.listBy);
|
|
52
59
|
log.verbose(`listing ${decorator_validation_1.Model.tableName(this.class)} by ${key} ${order}`);
|
|
53
|
-
return (await this.statement(this.listBy.name, key, order, ...ctxArgs));
|
|
60
|
+
return (await this.statement(this.listBy.name, key, { direction: order }, ...ctxArgs));
|
|
61
|
+
}
|
|
62
|
+
async findBy(key, value, ...args) {
|
|
63
|
+
const contextArgs = await core_1.Context.args(core_2.PreparedStatementKeys.FIND_BY, this.class, args, this.adapter, this._overrides || {});
|
|
64
|
+
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.findBy);
|
|
65
|
+
log.verbose(`finding all ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
66
|
+
return (await this.statement(this.findBy.name, key, value, {}, ...ctxArgs));
|
|
54
67
|
}
|
|
55
68
|
async findOneBy(key, value, ...args) {
|
|
56
|
-
const contextArgs = await
|
|
69
|
+
const contextArgs = await core_1.Context.args(core_2.PreparedStatementKeys.FIND_ONE_BY, this.class, args, this.adapter, this._overrides || {});
|
|
57
70
|
const { log, ctxArgs } = this.logCtx(contextArgs.args, this.findOneBy);
|
|
58
|
-
log.verbose(`finding ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
59
|
-
return (await this.statement(this.findOneBy.name, key, value, ...ctxArgs));
|
|
71
|
+
log.verbose(`finding One ${decorator_validation_1.Model.tableName(this.class)} with ${key} ${value}`);
|
|
72
|
+
return (await this.statement(this.findOneBy.name, key, value, {}, ...ctxArgs));
|
|
60
73
|
}
|
|
61
74
|
async statement(name, ...args) {
|
|
62
|
-
const contextArgs = await
|
|
75
|
+
const contextArgs = await core_1.Context.args("statement", this.class, args, this.adapter, this._overrides || {});
|
|
63
76
|
const { log, ctxArgs, ctx } = this.logCtx(contextArgs.args, this.statement);
|
|
77
|
+
const params = args.pop();
|
|
64
78
|
const query = {
|
|
65
79
|
class: this.class,
|
|
66
80
|
args: args,
|
|
67
81
|
method: name,
|
|
82
|
+
params: params,
|
|
68
83
|
};
|
|
69
84
|
const req = this.adapter.toRequest(query, ctx);
|
|
70
85
|
log.verbose(`Executing prepared statement ${name}`);
|
|
71
86
|
return this.request(req, ...ctxArgs);
|
|
72
87
|
}
|
|
73
88
|
async request(details, ...args) {
|
|
74
|
-
const contextArgs = await
|
|
89
|
+
const contextArgs = await core_1.Context.args("request", this.class, args, this.adapter, this._overrides || {});
|
|
75
90
|
const { ctxArgs } = this.logCtx(contextArgs.args, this.request);
|
|
76
91
|
return this.adapter.request(details, ...ctxArgs);
|
|
77
92
|
}
|