@decaf-ts/for-couchdb 0.4.9 → 0.4.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/for-couchdb.cjs +1 -1
- package/dist/for-couchdb.cjs.map +1 -1
- package/dist/for-couchdb.js +1 -1
- package/dist/for-couchdb.js.map +1 -1
- package/lib/adapter.cjs +3 -0
- package/lib/adapter.d.ts +6 -6
- package/lib/adapter.js.map +1 -1
- package/lib/esm/adapter.d.ts +6 -6
- package/lib/esm/adapter.js +5 -2
- package/lib/esm/adapter.js.map +1 -1
- package/lib/esm/index.d.ts +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/query/Paginator.d.ts +2 -2
- package/lib/esm/query/Paginator.js +6 -4
- package/lib/esm/query/Paginator.js.map +1 -1
- package/lib/esm/query/Statement.d.ts +1 -10
- package/lib/esm/query/Statement.js +1 -19
- package/lib/esm/query/Statement.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/query/Paginator.cjs +5 -3
- package/lib/query/Paginator.d.ts +2 -2
- package/lib/query/Paginator.js.map +1 -1
- package/lib/query/Statement.cjs +0 -18
- package/lib/query/Statement.d.ts +1 -10
- package/lib/query/Statement.js.map +1 -1
- package/package.json +1 -1
package/dist/for-couchdb.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e,t,r,a,s,o,n){"use strict";const i=/^_.*$/g,c={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},d={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},l={AND:"$and",OR:"$or"};class u extends a.BaseError{constructor(e){super(u.name,e,404)}}class p extends r.Paginator{get total(){throw new a.InternalError("The total pages api is not available for couchdb")}get count(){throw new a.InternalError("The record count api is not available for couchdb")}constructor(e,t,r,a){super(e,t,r,a)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(e=1){const{ctx:o}=this.adapter.logCtx([e],this.page),n=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...n,limit:void 0},!0,o)||[];if(this._recordCount=e.length,this._recordCount>0){const e=n?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/e)}}if(this.validatePage(e),1!==e){if(!this.bookMark)throw new r.PagingError("No bookmark. Did you start in the first page?");n.bookmark=this.bookMark}const i=await this.adapter.raw(n,!1,o),{docs:d,bookmark:l,warning:u}=i;if(u&&this.log.for(this.page).warn(u),!this.clazz)throw new r.PagingError("No statement target defined");const p=s.Model.pk(this.clazz),h=t.Metadata.get(this.clazz,t.Metadata.key(a.DBKeys.ID,p))?.type,g=n.fields&&n.fields.length?d:d.map((e=>{const t=e._id.split(c.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,r.Sequence.parseValue(h,t.join(c.SEPARATOR)),void 0,o)}));return this.bookMark=l,this._currentPage=e,g}}function h(e){for(const t of[d,l]){const r=Object.keys(t).find((t=>t===e));if(r)return t[r]}throw new r.QueryError("Could not find adapter translation for operator "+e)}class g extends r.Statement{constructor(e){super(e)}build(){const e=this.log.for(this.build),t={};t[c.TABLE]={},t[c.TABLE]=s.Model.tableName(this.fromSelector);const a={selector:t};if(this.selectSelector&&(a.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(r.Condition.and(this.whereCondition,r.Condition.attribute(c.TABLE).eq(a.selector[c.TABLE]))).selector,s=Object.keys(t);if(1===s.length&&-1!==Object.values(l).indexOf(s[0]))switch(s[0]){case l.AND:t[l.AND]=[...Object.values(t[l.AND]).reduce(((e,t)=>{const r=Object.keys(t);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const a=r[0];return a===l.AND?e.push(...t[a]):e.push(t),e}),[])],a.selector=t;break;case l.OR:{const e={};e[l.AND]=[t,...Object.entries(a.selector).map((([e,t])=>{const r={};return r[e]=t,r}))],a.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach((([t,r])=>{a.selector[t]&&e.warn(`A ${t} query param is about to be overridden: ${a.selector[t]} by ${r}`),a.selector[t]=r}))}if(this.orderBySelector){a.sort=a.sort||[],a.selector=a.selector||{};const[e,t]=this.orderBySelector,r={};r[e]=t,a.sort.push(r),a.selector[e]||(a.selector[e]={},a.selector[e][d.BIGGER]=null)}return this.limitSelector?a.limit=this.limitSelector:(e.warn("No limit selector defined. Using default couchdb limit of 250"),a.limit=250),this.offsetSelector&&(a.skip=this.offsetSelector),a}async paginate(e){try{const t=this.build();return new p(this.adapter,t,e,this.fromSelector)}catch(e){throw new a.InternalError(e)}}processRecord(e,t,a,s){if(e[c.ID]){const[,...t]=e[c.ID].split(c.SEPARATOR),o=t.join("_");return this.adapter.revert(e,this.fromSelector,r.Sequence.parseValue(a,o),void 0,s)}return e}async raw(e,...r){const{ctx:o}=this.logCtx(r,this.raw),n=await this.adapter.raw(e,!0,o),i=s.Model.pk(this.fromSelector),c=t.Metadata.get(this.fromSelector,t.Metadata.key(a.DBKeys.ID,i))?.type;return this.selectSelector?n:n.map((e=>this.processRecord(e,i,c,o)))}parseCondition(e){const{attr1:t,operator:a,comparison:s}=e;let o={};if(-1===[r.GroupOperator.AND,r.GroupOperator.OR,r.Operator.NOT].indexOf(a))o[t]={},o[t][h(a)]=s;else if(a===r.Operator.NOT)o=this.parseCondition(t).selector,o[h(r.Operator.NOT)]={},o[h(r.Operator.NOT)][t.attr1]=s;else{const e=this.parseCondition(t).selector,r=this.parseCondition(s).selector;o=((e,t,r)=>{const a={selector:{}};return a.selector[e]=[t,r],a})(h(a),e,r).selector}return{selector:o}}}class f extends r.Adapter{constructor(e,t,r){super(e,t,r),[this.create,this.createAll,this.update,this.updateAll].forEach((e=>{const t=e.name;a.prefixMethod(this,e,this[t+"Prefix"])}))}Statement(){return new g(this)}async initialize(){const e=r.Adapter.models(this.flavour);return this.index(...e)}repository(){return m}assignMetadata(e,t){return t?(f.setMetadata(e,t),e):e}assignMultipleMetadata(e,t){return e.forEach(((e,r)=>(f.setMetadata(e,t[r]),e))),e}createPrefix(e,t,r,...a){const{ctxArgs:o}=this.logCtx(a,this.createPrefix),n=s.Model.tableName(e),i={};return i[c.TABLE]=n,i[c.ID]=this.generateId(n,t),Object.assign(i,r),[e,t,i,...o]}createAllPrefix(e,t,r,...o){const n=s.Model.tableName(e);if(t.length!==r.length)throw new a.InternalError("Ids and models must have the same length");const{ctxArgs:i}=this.logCtx(o,this.createAllPrefix),d=t.map(((e,t)=>{const a={};return a[c.TABLE]=n,a[c.ID]=this.generateId(n,e),Object.assign(a,r[t]),a}));return[e,t,d,...i]}updatePrefix(e,t,o,...n){const i=s.Model.tableName(e),{ctxArgs:d}=this.logCtx(n,this.updatePrefix),l={};l[c.TABLE]=i,l[c.ID]=this.generateId(i,t);const u=o[r.PersistenceKeys.METADATA];if(!u)throw new a.InternalError("No revision number found for record with id "+t);return Object.assign(l,o),l[c.REV]=u,[e,t,l,...d]}updateAllPrefix(e,t,o,...n){const i=s.Model.tableName(e);if(t.length!==o.length)throw new a.InternalError("Ids and models must have the same length");const{ctxArgs:d}=this.logCtx(n,this.updateAllPrefix),l=t.map(((e,t)=>{const s={};s[c.TABLE]=i,s[c.ID]=this.generateId(i,e);const n=o[t][r.PersistenceKeys.METADATA];if(!n)throw new a.InternalError("No revision number found for record with id "+e);return Object.assign(s,o[t]),s[c.REV]=n,s}));return[e,t,l,...d]}generateId(e,t){return[e,t].join(c.SEPARATOR)}parseError(e,t){return f.parseError(e,t)}isReserved(e){return!!e.match(i)}static parseError(e,t){if(e instanceof a.BaseError)return e;let s="";if("string"==typeof e){if(s=e,s.match(/already exist|update conflict/g))return new a.ConflictError(s);if(s.match(/missing|deleted/g))return new a.NotFoundError(s)}else e.code?(s=e.code,t=t||e.message):e.statusCode?(s=e.statusCode,t=t||e.message):s=e.message;switch(s.toString()){case"401":case"412":case"409":return new a.ConflictError(t);case"404":return new a.NotFoundError(t);case"400":return s.toString().match(/No\sindex\sexists/g)?new u(e):new a.InternalError(e);default:return s.toString().match(/ECONNREFUSED/g)?new r.ConnectionError(e):new a.InternalError(e)}}static setMetadata(e,t){Object.defineProperty(e,r.PersistenceKeys.METADATA,{enumerable:!1,configurable:!0,writable:!0,value:t})}static getMetadata(e){const t=Object.getOwnPropertyDescriptor(e,r.PersistenceKeys.METADATA);return t?t.value:void 0}static removeMetadata(e){Object.getOwnPropertyDescriptor(e,r.PersistenceKeys.METADATA)&&delete e[r.PersistenceKeys.METADATA]}}o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",g)],f.prototype,"Statement",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,String]),o.__metadata("design:returntype",Object)],f.prototype,"assignMetadata",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Array,Array]),o.__metadata("design:returntype",Array)],f.prototype,"assignMultipleMetadata",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Object,Object,Object]),o.__metadata("design:returntype",Array)],f.prototype,"createPrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Array,Array,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"createAllPrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Object,Object,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"updatePrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Array,Array,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"updateAllPrefix",null);class m extends r.Repository{constructor(e,t){super(e,t)}assignMetadata(e,t){const r=(e,t)=>{const r=t??e,a=f.getMetadata(r);return a&&f.setMetadata(e,a),e};return Array.isArray(e)?e.map(((e,a)=>{const s=Array.isArray(t)?t[a]:t;return r(e,s)})):r(e,Array.isArray(t)?t?.[0]:t)}async create(e,...t){const r=await super.create(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async createAll(e,...t){const r=await super.createAll(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async read(e,...t){const r=await super.read(e,...t);return this.assignMetadata(r)}async readAll(e,...t){const r=await super.readAll(e,...t);return this.assignMetadata(r)}async update(e,...t){const r=await super.update(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async updateAll(e,...t){const r=await super.updateAll(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async delete(e,...t){const r=await super.delete(e,...t);return this.assignMetadata(r)}async deleteAll(e,...t){const r=await super.deleteAll(e,...t);return this.assignMetadata(r)}async updatePrefix(e,...t){const r=await a.Context.args(a.OperationKeys.UPDATE,this.class,t,this.adapter,this._overrides||{}),o=r.context.get("ignoreHandlers"),n=r.context.get("ignoreValidation"),i=e[this.pk];if(!i)throw new a.InternalError("No value for the Id is defined under the property "+this.pk);const c=await this.read(i,...r.args);if(e=s.Model.merge(c,e,this.class),o||await a.enforceDBDecorators(this,r.context,e,a.OperationKeys.UPDATE,a.OperationKeys.ON,c),!n){const t=await Promise.resolve(e.hasErrors(c,...s.Model.relations(this.class),...r.context.get("ignoredValidationProperties")||[]));if(t)throw new a.ValidationError(t.toString())}const d=f.getMetadata(c);return d&&f.setMetadata(e,d),[e,...r.args]}async updateAllPrefix(e,...t){const r=await a.Context.args(a.OperationKeys.UPDATE,this.class,t,this.adapter,this._overrides||{}),o=r.context.get("ignoreHandlers"),n=r.context.get("ignoreValidation"),i=e.map((e=>{const t=e[this.pk];if(!t)throw new a.InternalError("missing id on update operation");return t})),c=await this.readAll(i,...r.args);if(e=e.map(((e,t)=>{e=s.Model.merge(c[t],e,this.class);const r=f.getMetadata(c[t]);return r&&f.setMetadata(e,r),e})),o||await Promise.all(e.map(((e,t)=>a.enforceDBDecorators(this,r.context,e,a.OperationKeys.UPDATE,a.OperationKeys.ON,c[t])))),!n){const t=r.context.get("ignoredValidationProperties")||[],s=(await Promise.all(e.map(((e,r)=>Promise.resolve(e.hasErrors(c[r],e,...t)))))).reduce(((e,t,r)=>(t&&(e="string"==typeof e?e+`\n - ${r}: ${t.toString()}`:` - ${r}: ${t.toString()}`),e)),void 0);if(s)throw new a.ValidationError(s)}return e.forEach(((e,t)=>{const r=f.getMetadata(c[t]);r&&f.setMetadata(e,r)})),[e,...r.args]}}async function y(e,t,r){return e.auth(t,r)}function A(e,t,s,o,n=a.DefaultSeparator){const i=[r.PersistenceKeys.INDEX,t,e];return s&&i.push(...s),o&&i.push(o),i.join(n)}const E="##VERSION##",b="##PACKAGE##";t.Metadata.registerLibrary(b,E),e.CouchDBAdapter=f,e.CouchDBConst={NULL:"null"},e.CouchDBGroupOperator=l,e.CouchDBKeys=c,e.CouchDBOperator=d,e.CouchDBPaginator=p,e.CouchDBQueryLimit=250,e.CouchDBRepository=m,e.CouchDBStatement=g,e.IndexError=u,e.PACKAGE_NAME=b,e.VERSION=E,e.generateIndexDoc=(e,t,r,s,o=a.DefaultSeparator)=>{const n={};let i;if(n[c.TABLE]={},n[c.TABLE][d.EQUAL]=t,s){const t={};t[e]=s;const a=(r||[]).map((e=>{const t={};return t[e]=s,t})),o={};o[c.TABLE]=s,i=[t,...a,o]}else i=[e,...r||[],c.TABLE];const l=A(e,t,r,s,o);return{index:{fields:i},ddoc:[l,c.DDOC].join(o),name:l}},e.generateIndexName=A,e.generateIndexes=e=>{const t=((e,t,r,s=a.DefaultSeparator)=>[...e.map((e=>e===c.TABLE?"table":e)),...r||[],...t?[t]:[],c.INDEX].join(s))([c.TABLE]),o={};return o[t]={index:{fields:[c.TABLE]},name:t,ddoc:t,type:"json"},e.forEach((e=>{const t=s.Model.indexes(e);Object.entries(t).forEach((([t,n])=>{const i=Object.keys(n)[0];let{directions:l,compositions:u}=n[i];const p=s.Model.tableName(e);function h(e){const s=[p,t,...u,r.PersistenceKeys.INDEX].join(a.DefaultSeparator);if(o[s]={index:{fields:[t,...u,c.TABLE].reduce(((t,r)=>{if(e){const a={};a[r]=e,t.push(a)}else t.push(r);return t}),[])},name:s,ddoc:s,type:"json"},!e){const e={};e[c.TABLE]={},e[c.TABLE][d.EQUAL]=p,o[s].index.partial_filter_selector=e}}u=u||[],h(),l&&l.forEach((e=>h(e)))}))})),Object.values(o)},e.reAuth=y,e.reservedAttributes=i,e.testReservedAttributes=e=>e.match(/^_.*$/g),e.translateOperators=h,e.wrapDocumentScope=(e,t,r,a)=>{const s=e.use(t);return["insert","get","put","destroy","find"].forEach((t=>{const o=s[t];Object.defineProperty(s,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await y(e,r,a),o.call(s,...t))})})),Object.defineProperty(s,c.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),s}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decoration"),require("@decaf-ts/core"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decorator-validation"),require("tslib"),require("@decaf-ts/logging")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/core","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","tslib","@decaf-ts/logging"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-couchdb"]={},e.decafTsDecoration,e.decafTsCore,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.tslib,e.decafTsLogging);
|
|
1
|
+
var e,t;e=this,t=function(e,t,r,a,s,o,n){"use strict";const i=/^_.*$/g,c={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},d={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},l={AND:"$and",OR:"$or"};class u extends a.BaseError{constructor(e){super(u.name,e,404)}}class p extends r.Paginator{get total(){throw new a.InternalError("The total pages api is not available for couchdb")}get count(){throw new a.InternalError("The record count api is not available for couchdb")}constructor(e,t,r,a){super(e,t,r,a)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(e=1,...o){const{ctxArgs:n,ctx:i}=this.adapter.logCtx(o,this.page);if(this.isPreparedStatement())return this.pagePrepared(e,...n);const d=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...d,limit:void 0},!0,i)||[];if(this._recordCount=e.length,this._recordCount>0){const e=d?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/e)}}if(this.validatePage(e),1!==e){if(!this.bookMark)throw new r.PagingError("No bookmark. Did you start in the first page?");d.bookmark=this.bookMark}const l=await this.adapter.raw(d,!1,i),{docs:u,bookmark:p,warning:h}=l;if(h&&this.log.for(this.page).warn(h),!this.clazz)throw new r.PagingError("No statement target defined");const g=s.Model.pk(this.clazz),f=t.Metadata.get(this.clazz,t.Metadata.key(a.DBKeys.ID,g))?.type,m=d.fields&&d.fields.length?u:u.map((e=>{const t=e._id.split(c.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,r.Sequence.parseValue(f,t.join(c.SEPARATOR)),void 0,i)}));return this.bookMark=p,this._currentPage=e,m}}function h(e){for(const t of[d,l]){const r=Object.keys(t).find((t=>t===e));if(r)return t[r]}throw new r.QueryError("Could not find adapter translation for operator "+e)}class g extends r.Statement{constructor(e){super(e)}build(){const e=this.log.for(this.build),t={};t[c.TABLE]={},t[c.TABLE]=s.Model.tableName(this.fromSelector);const a={selector:t};if(this.selectSelector&&(a.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(r.Condition.and(this.whereCondition,r.Condition.attribute(c.TABLE).eq(a.selector[c.TABLE]))).selector,s=Object.keys(t);if(1===s.length&&-1!==Object.values(l).indexOf(s[0]))switch(s[0]){case l.AND:t[l.AND]=[...Object.values(t[l.AND]).reduce(((e,t)=>{const r=Object.keys(t);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const a=r[0];return a===l.AND?e.push(...t[a]):e.push(t),e}),[])],a.selector=t;break;case l.OR:{const e={};e[l.AND]=[t,...Object.entries(a.selector).map((([e,t])=>{const r={};return r[e]=t,r}))],a.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach((([t,r])=>{a.selector[t]&&e.warn(`A ${t} query param is about to be overridden: ${a.selector[t]} by ${r}`),a.selector[t]=r}))}if(this.orderBySelector){a.sort=a.sort||[],a.selector=a.selector||{};const[e,t]=this.orderBySelector,r={};r[e]=t,a.sort.push(r),a.selector[e]||(a.selector[e]={},a.selector[e][d.BIGGER]=null)}return this.limitSelector?a.limit=this.limitSelector:(e.warn("No limit selector defined. Using default couchdb limit of 250"),a.limit=250),this.offsetSelector&&(a.skip=this.offsetSelector),a}processRecord(e,t,a,s){if(e[c.ID]){const[,...t]=e[c.ID].split(c.SEPARATOR),o=t.join("_");return this.adapter.revert(e,this.fromSelector,r.Sequence.parseValue(a,o),void 0,s)}return e}async raw(e,...r){const{ctx:o}=this.logCtx(r,this.raw),n=await this.adapter.raw(e,!0,o),i=s.Model.pk(this.fromSelector),c=t.Metadata.get(this.fromSelector,t.Metadata.key(a.DBKeys.ID,i))?.type;return this.selectSelector?n:n.map((e=>this.processRecord(e,i,c,o)))}parseCondition(e){const{attr1:t,operator:a,comparison:s}=e;let o={};if(-1===[r.GroupOperator.AND,r.GroupOperator.OR,r.Operator.NOT].indexOf(a))o[t]={},o[t][h(a)]=s;else if(a===r.Operator.NOT)o=this.parseCondition(t).selector,o[h(r.Operator.NOT)]={},o[h(r.Operator.NOT)][t.attr1]=s;else{const e=this.parseCondition(t).selector,r=this.parseCondition(s).selector;o=((e,t,r)=>{const a={selector:{}};return a.selector[e]=[t,r],a})(h(a),e,r).selector}return{selector:o}}}class f extends r.Adapter{constructor(e,t,r){super(e,t,r),[this.create,this.createAll,this.update,this.updateAll].forEach((e=>{const t=e.name;a.prefixMethod(this,e,this[t+"Prefix"])}))}Statement(){return new g(this)}Paginator(e,t,r){return new p(this,e,t,r)}async initialize(){const e=r.Adapter.models(this.flavour);return this.index(...e)}repository(){return m}assignMetadata(e,t){return t?(f.setMetadata(e,t),e):e}assignMultipleMetadata(e,t){return e.forEach(((e,r)=>(f.setMetadata(e,t[r]),e))),e}createPrefix(e,t,r,...a){const{ctxArgs:o}=this.logCtx(a,this.createPrefix),n=s.Model.tableName(e),i={};return i[c.TABLE]=n,i[c.ID]=this.generateId(n,t),Object.assign(i,r),[e,t,i,...o]}createAllPrefix(e,t,r,...o){const n=s.Model.tableName(e);if(t.length!==r.length)throw new a.InternalError("Ids and models must have the same length");const{ctxArgs:i}=this.logCtx(o,this.createAllPrefix),d=t.map(((e,t)=>{const a={};return a[c.TABLE]=n,a[c.ID]=this.generateId(n,e),Object.assign(a,r[t]),a}));return[e,t,d,...i]}updatePrefix(e,t,o,...n){const i=s.Model.tableName(e),{ctxArgs:d}=this.logCtx(n,this.updatePrefix),l={};l[c.TABLE]=i,l[c.ID]=this.generateId(i,t);const u=o[r.PersistenceKeys.METADATA];if(!u)throw new a.InternalError("No revision number found for record with id "+t);return Object.assign(l,o),l[c.REV]=u,[e,t,l,...d]}updateAllPrefix(e,t,o,...n){const i=s.Model.tableName(e);if(t.length!==o.length)throw new a.InternalError("Ids and models must have the same length");const{ctxArgs:d}=this.logCtx(n,this.updateAllPrefix),l=t.map(((e,t)=>{const s={};s[c.TABLE]=i,s[c.ID]=this.generateId(i,e);const n=o[t][r.PersistenceKeys.METADATA];if(!n)throw new a.InternalError("No revision number found for record with id "+e);return Object.assign(s,o[t]),s[c.REV]=n,s}));return[e,t,l,...d]}generateId(e,t){return[e,t].join(c.SEPARATOR)}parseError(e,t){return f.parseError(e,t)}isReserved(e){return!!e.match(i)}static parseError(e,t){if(e instanceof a.BaseError)return e;let s="";if("string"==typeof e){if(s=e,s.match(/already exist|update conflict/g))return new a.ConflictError(s);if(s.match(/missing|deleted/g))return new a.NotFoundError(s)}else e.code?(s=e.code,t=t||e.message):e.statusCode?(s=e.statusCode,t=t||e.message):s=e.message;switch(s.toString()){case"401":case"412":case"409":return new a.ConflictError(t);case"404":return new a.NotFoundError(t);case"400":return s.toString().match(/No\sindex\sexists/g)?new u(e):new a.InternalError(e);default:return s.toString().match(/ECONNREFUSED/g)?new r.ConnectionError(e):new a.InternalError(e)}}static setMetadata(e,t){Object.defineProperty(e,r.PersistenceKeys.METADATA,{enumerable:!1,configurable:!0,writable:!0,value:t})}static getMetadata(e){const t=Object.getOwnPropertyDescriptor(e,r.PersistenceKeys.METADATA);return t?t.value:void 0}static removeMetadata(e){Object.getOwnPropertyDescriptor(e,r.PersistenceKeys.METADATA)&&delete e[r.PersistenceKeys.METADATA]}}o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[]),o.__metadata("design:returntype",g)],f.prototype,"Statement",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,String]),o.__metadata("design:returntype",Object)],f.prototype,"assignMetadata",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Array,Array]),o.__metadata("design:returntype",Array)],f.prototype,"assignMultipleMetadata",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Object,Object,Object]),o.__metadata("design:returntype",Array)],f.prototype,"createPrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Array,Array,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"createAllPrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Object,Object,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"updatePrefix",null),o.__decorate([n.final(),o.__metadata("design:type",Function),o.__metadata("design:paramtypes",[Object,Array,Array,Object]),o.__metadata("design:returntype",void 0)],f.prototype,"updateAllPrefix",null);class m extends r.Repository{constructor(e,t){super(e,t)}assignMetadata(e,t){const r=(e,t)=>{const r=t??e,a=f.getMetadata(r);return a&&f.setMetadata(e,a),e};return Array.isArray(e)?e.map(((e,a)=>{const s=Array.isArray(t)?t[a]:t;return r(e,s)})):r(e,Array.isArray(t)?t?.[0]:t)}async create(e,...t){const r=await super.create(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async createAll(e,...t){const r=await super.createAll(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async read(e,...t){const r=await super.read(e,...t);return this.assignMetadata(r)}async readAll(e,...t){const r=await super.readAll(e,...t);return this.assignMetadata(r)}async update(e,...t){const r=await super.update(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async updateAll(e,...t){const r=await super.updateAll(e,...t);return this.assignMetadata(r),this.assignMetadata(e,r),r}async delete(e,...t){const r=await super.delete(e,...t);return this.assignMetadata(r)}async deleteAll(e,...t){const r=await super.deleteAll(e,...t);return this.assignMetadata(r)}async updatePrefix(e,...t){const r=await a.Context.args(a.OperationKeys.UPDATE,this.class,t,this.adapter,this._overrides||{}),o=r.context.get("ignoreHandlers"),n=r.context.get("ignoreValidation"),i=e[this.pk];if(!i)throw new a.InternalError("No value for the Id is defined under the property "+this.pk);const c=await this.read(i,...r.args);if(e=s.Model.merge(c,e,this.class),o||await a.enforceDBDecorators(this,r.context,e,a.OperationKeys.UPDATE,a.OperationKeys.ON,c),!n){const t=await Promise.resolve(e.hasErrors(c,...s.Model.relations(this.class),...r.context.get("ignoredValidationProperties")||[]));if(t)throw new a.ValidationError(t.toString())}const d=f.getMetadata(c);return d&&f.setMetadata(e,d),[e,...r.args]}async updateAllPrefix(e,...t){const r=await a.Context.args(a.OperationKeys.UPDATE,this.class,t,this.adapter,this._overrides||{}),o=r.context.get("ignoreHandlers"),n=r.context.get("ignoreValidation"),i=e.map((e=>{const t=e[this.pk];if(!t)throw new a.InternalError("missing id on update operation");return t})),c=await this.readAll(i,...r.args);if(e=e.map(((e,t)=>{e=s.Model.merge(c[t],e,this.class);const r=f.getMetadata(c[t]);return r&&f.setMetadata(e,r),e})),o||await Promise.all(e.map(((e,t)=>a.enforceDBDecorators(this,r.context,e,a.OperationKeys.UPDATE,a.OperationKeys.ON,c[t])))),!n){const t=r.context.get("ignoredValidationProperties")||[],s=(await Promise.all(e.map(((e,r)=>Promise.resolve(e.hasErrors(c[r],e,...t)))))).reduce(((e,t,r)=>(t&&(e="string"==typeof e?e+`\n - ${r}: ${t.toString()}`:` - ${r}: ${t.toString()}`),e)),void 0);if(s)throw new a.ValidationError(s)}return e.forEach(((e,t)=>{const r=f.getMetadata(c[t]);r&&f.setMetadata(e,r)})),[e,...r.args]}}async function A(e,t,r){return e.auth(t,r)}function y(e,t,s,o,n=a.DefaultSeparator){const i=[r.PersistenceKeys.INDEX,t,e];return s&&i.push(...s),o&&i.push(o),i.join(n)}const E="##VERSION##",b="##PACKAGE##";t.Metadata.registerLibrary(b,E),e.CouchDBAdapter=f,e.CouchDBConst={NULL:"null"},e.CouchDBGroupOperator=l,e.CouchDBKeys=c,e.CouchDBOperator=d,e.CouchDBPaginator=p,e.CouchDBQueryLimit=250,e.CouchDBRepository=m,e.CouchDBStatement=g,e.IndexError=u,e.PACKAGE_NAME=b,e.VERSION=E,e.generateIndexDoc=(e,t,r,s,o=a.DefaultSeparator)=>{const n={};let i;if(n[c.TABLE]={},n[c.TABLE][d.EQUAL]=t,s){const t={};t[e]=s;const a=(r||[]).map((e=>{const t={};return t[e]=s,t})),o={};o[c.TABLE]=s,i=[t,...a,o]}else i=[e,...r||[],c.TABLE];const l=y(e,t,r,s,o);return{index:{fields:i},ddoc:[l,c.DDOC].join(o),name:l}},e.generateIndexName=y,e.generateIndexes=e=>{const t=((e,t,r,s=a.DefaultSeparator)=>[...e.map((e=>e===c.TABLE?"table":e)),...r||[],...t?[t]:[],c.INDEX].join(s))([c.TABLE]),o={};return o[t]={index:{fields:[c.TABLE]},name:t,ddoc:t,type:"json"},e.forEach((e=>{const t=s.Model.indexes(e);Object.entries(t).forEach((([t,n])=>{const i=Object.keys(n)[0];let{directions:l,compositions:u}=n[i];const p=s.Model.tableName(e);function h(e){const s=[p,t,...u,r.PersistenceKeys.INDEX].join(a.DefaultSeparator);if(o[s]={index:{fields:[t,...u,c.TABLE].reduce(((t,r)=>{if(e){const a={};a[r]=e,t.push(a)}else t.push(r);return t}),[])},name:s,ddoc:s,type:"json"},!e){const e={};e[c.TABLE]={},e[c.TABLE][d.EQUAL]=p,o[s].index.partial_filter_selector=e}}u=u||[],h(),l&&l.forEach((e=>h(e)))}))})),Object.values(o)},e.reAuth=A,e.reservedAttributes=i,e.testReservedAttributes=e=>e.match(/^_.*$/g),e.translateOperators=h,e.wrapDocumentScope=(e,t,r,a)=>{const s=e.use(t);return["insert","get","put","destroy","find"].forEach((t=>{const o=s[t];Object.defineProperty(s,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await A(e,r,a),o.call(s,...t))})})),Object.defineProperty(s,c.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),s}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decoration"),require("@decaf-ts/core"),require("@decaf-ts/db-decorators"),require("@decaf-ts/decorator-validation"),require("tslib"),require("@decaf-ts/logging")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/core","@decaf-ts/db-decorators","@decaf-ts/decorator-validation","tslib","@decaf-ts/logging"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-couchdb"]={},e.decafTsDecoration,e.decafTsCore,e.decafTsDbDecorators,e.decafTsDecoratorValidation,e.tslib,e.decafTsLogging);
|
|
2
2
|
//# sourceMappingURL=for-couchdb.cjs.map
|
package/dist/for-couchdb.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-couchdb.cjs","sources":["../src/constants.ts","../src/query/constants.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/repository.ts","../src/utils.ts","../src/index.ts","../src/indexes/generator.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["reservedAttributes","CouchDBKeys","SEPARATOR","ID","REV","DELETED","TABLE","SEQUENCE","DDOC","NATIVE","INDEX","CouchDBOperator","EQUAL","DIFFERENT","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","NOT","IN","REGEXP","CouchDBGroupOperator","AND","OR","IndexError","BaseError","constructor","msg","super","name","CouchDBPaginator","Paginator","total","InternalError","count","adapter","query","size","clazz","prepare","rawStatement","Object","assign","limit","this","page","ctx","statement","_recordCount","_totalPages","results","raw","undefined","length","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","id","Model","pk","type","Metadata","get","key","DBKeys","fields","map","d","originalId","_id","split","splice","revert","Sequence","parseValue","join","_currentPage","translateOperators","operator","operators","el","keys","find","k","QueryError","CouchDBStatement","Statement","build","selectors","tableName","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","values","indexOf","reduce","accum","val","Error","push","s","entries","result","forEach","orderBySelector","sort","value","rec","limitSelector","offsetSelector","skip","paginate","e","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","args","logCtx","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","alias","create","createAll","update","updateAll","m","prefixMethod","initialize","managedModels","models","index","repository","CouchDBRepository","assignMetadata","model","rev","setMetadata","assignMultipleMetadata","revs","i","createPrefix","ctxArgs","record","generateId","createAllPrefix","ids","records","updatePrefix","PersistenceKeys","METADATA","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","NotFoundError","message","statusCode","toString","ConnectionError","metadata","defineProperty","enumerable","configurable","writable","getMetadata","descriptor","getOwnPropertyDescriptor","removeMetadata","__decorate","final","prototype","Repository","target","source","apply","instance","carrier","metadataSource","Array","isArray","read","readAll","delete","deleteAll","contextArgs","Context","OperationKeys","UPDATE","class","_overrides","ignoreHandlers","context","ignoreValidate","oldModel","enforceDBDecorators","ON","errors","Promise","resolve","hasErrors","relations","ValidationError","oldMetadata","oldModels","all","ignoredProps","errorMessages","async","reAuth","con","user","pass","auth","generateIndexName","compositions","order","separator","DefaultSeparator","VERSION","PACKAGE_NAME","registerLibrary","NULL","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","ddoc","direction","n","indexes","ind","directions","generate","res","tableFilter","partial_filter_selector","dbName","db","use","original","call"],"mappings":"sDAMa,MAAAA,EAAqB,SAyBrBC,EAAc,CACzBC,UAAW,KACXC,GAAI,MACJC,IAAK,OACLC,QAAS,WACTC,MAAO,UACPC,SAAU,aACVC,KAAM,OACNC,OAAQ,WACRC,MAAO,SCbIC,EAAiD,CAC5DC,MAAO,MACPC,UAAW,MACXC,OAAQ,MACRC,UAAW,OACXC,QAAS,MACTC,WAAY,OAEZC,IAAK,OACLC,GAAI,MAEJC,OAAQ,UAaGC,EAAsD,CACjEC,IAAK,OACLC,GAAI,OClCA,MAAOC,UAAmBC,EAAAA,UAC9B,WAAAC,CAAYC,GACVC,MAAMJ,EAAWK,KAAMF,EAAK,IAC7B,ECQG,MAAOG,UAA6CC,EAAAA,UAiBxD,SAAaC,GACX,MAAM,IAAIC,EAAaA,cAAC,mDACzB,CAQD,SAAaC,GACX,MAAM,IAAID,EAAaA,cACrB,oDAEH,CAUD,WAAAP,CACES,EACAC,EACAC,EACAC,GAEAV,MAAMO,EAASC,EAAOC,EAAMC,EAC7B,CAQS,OAAAC,CAAQC,GAChB,MAAMJ,EAAoBK,OAAOC,OAAO,CAAE,EAAEF,GAK5C,OAJIJ,EAAMO,QAAOC,KAAKD,MAAQP,EAAMO,OAEpCP,EAAMO,MAAQC,KAAKP,KAEZD,CACR,CA6DD,UAAMS,CAAKA,EAAe,GACxB,MAAMC,IAAEA,GAAQF,KAAKT,QAAgB,OAAE,CAACU,GAAOD,KAAKC,MAC9CE,EAAYN,OAAOC,OAAO,CAAA,EAAIE,KAAKG,WAEzC,IAAKH,KAAKI,eAAiBJ,KAAKK,YAAa,CAC3CL,KAAKK,YAAcL,KAAKI,aAAe,EACvC,MAAME,QACGN,KAAKT,QAAQgB,IAClB,IAAKJ,EAAWJ,WAAOS,IACvB,EACAN,IACI,GAER,GADAF,KAAKI,aAAeE,EAAQG,OACxBT,KAAKI,aAAe,EAAG,CACzB,MAAMX,EAAOU,GAAWJ,OAASC,KAAKP,KACtCO,KAAKK,YAAcK,KAAKC,KAAKX,KAAKI,aAAeX,EAClD,CACF,CAID,GAFAO,KAAKY,aAAaX,GAEL,IAATA,EAAY,CACd,IAAKD,KAAKa,SACR,MAAM,IAAIC,EAAAA,YAAY,iDACxBX,EAAoB,SAAIH,KAAKa,QAC9B,CACD,MAAME,QAAsCf,KAAKT,QAAQgB,IACvDJ,GACA,EACAD,IAGIc,KAAEA,EAAIC,SAAEA,EAAQC,QAAEA,GAAYH,EAEpC,GADIG,GAASlB,KAAKmB,IAAIC,IAAIpB,KAAKC,MAAMoB,KAAKH,IACrClB,KAAKN,MAAO,MAAM,IAAIoB,EAAAA,YAAY,+BACvC,MAAMQ,EAAKC,EAAKA,MAACC,GAAGxB,KAAKN,OACnB+B,EAAOC,EAAQA,SAACC,IACpB3B,KAAKN,MACLgC,EAAAA,SAASE,IAAIC,EAAMA,OAACtE,GAAI+D,KACvBG,KACGnB,EACJH,EAAU2B,QAAU3B,EAAU2B,OAAOrB,OACjCO,EACAA,EAAKe,KAAKC,IAER,MAAMC,EAAaD,EAAEE,IAAIC,MAAM9E,EAAYC,WAE3C,OADA2E,EAAWG,OAAO,EAAG,GACdpC,KAAKT,QAAQ8C,OAClBL,EACAhC,KAAKN,MACL4C,WAASC,WAAWd,EAAMQ,EAAWO,KAAKnF,EAAYC,iBACtDkD,EACAN,EACD,IAIT,OAFAF,KAAKa,SAAWI,EAChBjB,KAAKyC,aAAexC,EACbK,CACR,EChLG,SAAUoC,EACdC,GAEA,IAAK,MAAMC,IAAa,CAAC7E,EAAiBU,GAAuB,CAC/D,MAAMoE,EAAKhD,OAAOiD,KAAKF,GAAWG,MAAMC,GAAMA,IAAML,IACpD,GAAIE,EAAI,OAAOD,EAAUC,EAC1B,CACD,MAAM,IAAII,EAAAA,WACR,mDAAmDN,EAEvD,CCFM,MAAOO,UAIHC,EAAAA,UACR,WAAArE,CAAYS,GACVP,MAAMO,EACP,CA0DS,KAAA6D,GACR,MAAMjC,EAAMnB,KAAKmB,IAAIC,IAAIpB,KAAKoD,OACxBC,EAA2B,CAAA,EACjCA,EAAUhG,EAAYK,OAAS,GAC/B2F,EAAUhG,EAAYK,OAAS6D,EAAKA,MAAC+B,UAAUtD,KAAKuD,cACpD,MAAM/D,EAAoB,CAAEgE,SAAUH,GAGtC,GAFIrD,KAAKyD,iBAAgBjE,EAAMsC,OAAS9B,KAAKyD,gBAEzCzD,KAAK0D,eAAgB,CACvB,MAAMC,EAA2B3D,KAAK4D,eACpCC,EAAAA,UAAUC,IACR9D,KAAK0D,eACLG,EAAAA,UAAUE,UAAa1G,EAAYK,OAAkBsG,GACnDxE,EAAMgE,SAASnG,EAAYK,UAG/B8F,SACIS,EAAepE,OAAOiD,KAAKa,GACjC,GAC0B,IAAxBM,EAAaxD,SACqD,IAAlEZ,OAAOqE,OAAOzF,GAAsB0F,QAAQF,EAAa,IAEzD,OAAQA,EAAa,IACnB,KAAKxF,EAAqBC,IACxBiF,EAAUlF,EAAqBC,KAAO,IACjCmB,OAAOqE,OACRP,EAAUlF,EAAqBC,MAC/B0F,QAAO,CAACC,EAAwBC,KAChC,MAAMxB,EAAOjD,OAAOiD,KAAKwB,GACzB,GAAoB,IAAhBxB,EAAKrC,OACP,MAAU8D,MACR,kDAEJ,MAAMvB,EAAIF,EAAK,GAIf,OAHIE,IAAMvE,EAAqBC,IAC7B2F,EAAMG,QAASF,EAAItB,IAChBqB,EAAMG,KAAKF,GACTD,CAAK,GACX,KAEL7E,EAAMgE,SAAWG,EACjB,MACF,KAAKlF,EAAqBE,GAAI,CAC5B,MAAM8F,EAAsB,CAAA,EAC5BA,EAAEhG,EAAqBC,KAAO,CAC5BiF,KACG9D,OAAO6E,QAAQlF,EAAMgE,UAAUzB,KAAI,EAAEH,EAAK0C,MAC3C,MAAMK,EAA2B,CAAA,EAEjC,OADAA,EAAO/C,GAAO0C,EACPK,CAAM,KAGjBnF,EAAMgE,SAAWiB,EACjB,KACD,CACD,QACE,MAAUF,MAAM,kCAGpB1E,OAAO6E,QAAQf,GAAWiB,SAAQ,EAAEhD,EAAK0C,MACnC9E,EAAMgE,SAAS5B,IACjBT,EAAIE,KACF,KAAKO,4CAA8CpC,EAAMgE,SAAS5B,SAAW0C,KAEjF9E,EAAMgE,SAAS5B,GAAO0C,CAAG,GAG9B,CAED,GAAItE,KAAK6E,gBAAiB,CACxBrF,EAAMsF,KAAOtF,EAAMsF,MAAQ,GAC3BtF,EAAMgE,SAAWhE,EAAMgE,UAAa,CAAA,EACpC,MAAOA,EAAUuB,GAAS/E,KAAK6E,gBAIzBG,EAAW,CAAA,EACjBA,EAAIxB,GAAYuB,EACfvF,EAAMsF,KAAeN,KAAKQ,GACtBxF,EAAMgE,SAASA,KAClBhE,EAAMgE,SAASA,GAAY,GAC1BhE,EAAMgE,SAASA,GAA4BzF,EAAgBG,QAC1D,KAEL,CAaD,OAXI8B,KAAKiF,cACPzF,EAAMO,MAAQC,KAAKiF,eAEnB9D,EAAIE,KACF,iEAEF7B,EAAMO,MJjMqB,KIoMzBC,KAAKkF,iBAAgB1F,EAAM2F,KAAOnF,KAAKkF,gBAEpC1F,CACR,CAUD,cAAM4F,CAAY3F,GAChB,IACE,MAAMD,EAAoBQ,KAAKoD,QAC/B,OAAO,IAAIlE,EACTc,KAAKT,QACLC,EACAC,EACAO,KAAKuD,aAER,CAAC,MAAO8B,GACP,MAAM,IAAIhG,EAAAA,cAAcgG,EACzB,CACF,CAUS,aAAAC,CACRC,EACAC,EACAC,EACAvF,GAEA,GAAIqF,EAAElI,EAAYE,IAAK,CACrB,MAAS,IAAGmI,GAAWH,EAAElI,EAAYE,IAAI4E,MAAM9E,EAAYC,WAErDgE,EAAKoE,EAAQlD,KAAK,KACxB,OAAOxC,KAAKT,QAAQ8C,OAClBkD,EACAvF,KAAKuD,aACLjB,WAASC,WAAWkD,EAAcnE,QAClCd,EACAN,EAEH,CACD,OAAOqF,CACR,CASQ,SAAMhF,CAAOoF,KAAyBC,GAC7C,MAAM1F,IAAEA,GAAQF,KAAK6F,OAAOD,EAAM5F,KAAKO,KAEjCD,QAAuBN,KAAKT,QAAQgB,IAAIoF,GAAU,EAAMzF,GAExDsF,EAASjE,EAAKA,MAACC,GAAGxB,KAAKuD,cACvB9B,EAAOC,EAAQA,SAACC,IACpB3B,KAAKuD,aACL7B,EAAAA,SAASE,IAAIC,EAAMA,OAACtE,GAAIiI,KACvB/D,KAEH,OAAKzB,KAAKyD,eAEHnD,EADEA,EAAQyB,KAAKwD,GAAMvF,KAAKsF,cAAcC,EAAGC,EAAQ/D,EAAMvB,IAEjE,CAqCS,cAAA0D,CAAeD,GAmBvB,MAAMmC,MAAEA,EAAKnD,SAAEA,EAAQoD,WAAEA,GAAepC,EAMxC,IAAIqC,EAAoB,CAAA,EACxB,IAGS,IAFP,CAACC,EAAaA,cAACvH,IAAKuH,EAAAA,cAActH,GAAIuH,EAAAA,SAAS5H,KAAK6F,QAClDxB,GAGFqD,EAAGF,GAAmB,GACrBE,EAAGF,GAAmCpD,EAAmBC,IACxDoD,OACG,GAAIpD,IAAauD,EAAQA,SAAC5H,IAC/B0H,EAAKhG,KAAK4D,eAAekC,GAAuBtC,SAChDwC,EAAGtD,EAAmBwD,EAAAA,SAAS5H,MAAQ,CAAA,EACtC0H,EAAGtD,EAAmBwD,EAAAA,SAAS5H,MAC7BwH,EAAuCA,OACtCC,MACC,CACL,MAAMI,EAAWnG,KAAK4D,eAAekC,GAAuBtC,SACtD4C,EAAWpG,KAAK4D,eAAemC,GAA4BvC,SACjEwC,EAlCF,EACEA,EACAK,EACAC,KAEA,MAAM3B,EAAqB,CAAEnB,SAAU,CAAA,GAEvC,OADAmB,EAAOnB,SAASwC,GAAM,CAACK,EAAMC,GACtB3B,CACR,EA0BM4B,CAAM7D,EAAmBC,GAAWwD,EAAKC,GAAK5C,QACpD,CAED,MAAO,CAAEA,SAAUwC,EACpB,EC9SG,MAAgBQ,UAIZC,EAAAA,QACR,WAAA3H,CAAsB4H,EAAaC,EAAiBC,GAClD5H,MAAM0H,EAAOC,EAASC,GACtB,CAAC5G,KAAK6G,OAAQ7G,KAAK8G,UAAW9G,KAAK+G,OAAQ/G,KAAKgH,WAAWpC,SAASqC,IAClE,MAAMhI,EAAOgI,EAAEhI,KACfiI,EAAYA,aAAClH,KAAMiH,EAAIjH,KAAaf,EAAO,UAAU,GAExD,CASD,SAAAkE,GAKE,OAAO,IAAID,EAAiBlD,KAC7B,CAOQ,gBAAMmH,GACb,MAAMC,EAAgBX,EAAOA,QAACY,OAAOrH,KAAK2G,SAC1C,OAAO3G,KAAKsH,SAASF,EACtB,CAEQ,UAAAG,GAGP,OAAOC,CACR,CAmCS,cAAAC,CACRC,EACAC,GAEA,OAAKA,GACLnB,EAAeoB,YAAYF,EAAcC,GAClCD,GAFUA,CAGlB,CAUS,sBAAAG,CACRR,EACAS,GAMA,OAJAT,EAAOzC,SAAQ,CAACqC,EAAGc,KACjBvB,EAAeoB,YAAYX,EAAUa,EAAKC,IACnCd,KAEFI,CACR,CAWS,YAAAW,CACRtI,EACA4B,EACAoG,KACG9B,GAEH,MAAMqC,QAAEA,GAAYjI,KAAK6F,OAAOD,EAAM5F,KAAKgI,cACrC1E,EAAY/B,EAAAA,MAAM+B,UAAU5D,GAC5BwI,EAA8B,CAAA,EAIpC,OAHAA,EAAO7K,EAAYK,OAAS4F,EAC5B4E,EAAO7K,EAAYE,IAAMyC,KAAKmI,WAAW7E,EAAWhC,GACpDzB,OAAOC,OAAOoI,EAAQR,GACf,CAAChI,EAAO4B,EAAI4G,KAAWD,EAC/B,CA4BS,eAAAG,CACR1I,EACA2I,EACAhB,KACGzB,GAEH,MAAMtC,EAAY/B,EAAAA,MAAM+B,UAAU5D,GAClC,GAAI2I,EAAI5H,SAAW4G,EAAO5G,OACxB,MAAM,IAAIpB,EAAAA,cAAc,4CAC1B,MAAM4I,QAAEA,GAAYjI,KAAK6F,OAAOD,EAAM5F,KAAKoI,iBACrCE,EAAUD,EAAItG,KAAI,CAACT,EAAIhC,KAC3B,MAAM4I,EAA8B,CAAA,EAIpC,OAHAA,EAAO7K,EAAYK,OAAS4F,EAC5B4E,EAAO7K,EAAYE,IAAMyC,KAAKmI,WAAW7E,EAAWhC,GACpDzB,OAAOC,OAAOoI,EAAQb,EAAO/H,IACtB4I,CAAM,IAEf,MAAO,CAACxI,EAAO2I,EAAKC,KAAYL,EACjC,CA2BD,YAAAM,CACE7I,EACA4B,EACAoG,KACG9B,GAEH,MAAMtC,EAAY/B,EAAAA,MAAM+B,UAAU5D,IAC5BuI,QAAEA,GAAYjI,KAAK6F,OAAOD,EAAM5F,KAAKuI,cACrCL,EAA8B,CAAA,EACpCA,EAAO7K,EAAYK,OAAS4F,EAC5B4E,EAAO7K,EAAYE,IAAMyC,KAAKmI,WAAW7E,EAAWhC,GACpD,MAAMqG,EAAMD,EAAMc,EAAeA,gBAACC,UAClC,IAAKd,EACH,MAAM,IAAItI,EAAAA,cACR,+CAA+CiC,GAInD,OAFAzB,OAAOC,OAAOoI,EAAQR,GACtBQ,EAAO7K,EAAYG,KAAOmK,EACnB,CAACjI,EAAO4B,EAAI4G,KAAWD,EAC/B,CA4BS,eAAAS,CACRhJ,EACA2I,EACAhB,KACGzB,GAEH,MAAMtC,EAAY/B,EAAAA,MAAM+B,UAAU5D,GAClC,GAAI2I,EAAI5H,SAAW4G,EAAO5G,OACxB,MAAM,IAAIpB,EAAAA,cAAc,4CAC1B,MAAM4I,QAAEA,GAAYjI,KAAK6F,OAAOD,EAAM5F,KAAK0I,iBACrCJ,EAAUD,EAAItG,KAAI,CAACT,EAAIhC,KAC3B,MAAM4I,EAA8B,CAAA,EACpCA,EAAO7K,EAAYK,OAAS4F,EAC5B4E,EAAO7K,EAAYE,IAAMyC,KAAKmI,WAAW7E,EAAWhC,GACpD,MAAMqG,EAAMN,EAAO/H,GAAOkJ,EAAeA,gBAACC,UAC1C,IAAKd,EACH,MAAM,IAAItI,EAAAA,cACR,+CAA+CiC,GAInD,OAFAzB,OAAOC,OAAOoI,EAAQb,EAAO/H,IAC7B4I,EAAO7K,EAAYG,KAAOmK,EACnBO,CAAM,IAEf,MAAO,CAACxI,EAAO2I,EAAKC,KAAYL,EACjC,CAuBS,UAAAE,CAAW7E,EAAmBhC,GACtC,MAAO,CAACgC,EAAWhC,GAAIkB,KAAKnF,EAAYC,UACzC,CASD,UAAAqL,CAAgCC,EAAqBC,GACnD,OAAOrC,EAAemC,WAAWC,EAAKC,EACvC,CAQkB,UAAAC,CAAWC,GAC5B,QAASA,EAAKC,MAAM5L,EACrB,CA0DS,iBAAOuL,CACfC,EACAC,GAEA,GAAID,aAAe/J,EAASA,UAAE,OAAO+J,EACrC,IAAIK,EAAe,GACnB,GAAmB,iBAARL,EAAkB,CAE3B,GADAK,EAAOL,EACHK,EAAKD,MAAM,kCACb,OAAO,IAAIE,EAAAA,cAAcD,GAC3B,GAAIA,EAAKD,MAAM,oBAAqB,OAAO,IAAIG,EAAAA,cAAcF,EAC9D,MAAWL,EAAYK,MACtBA,EAAQL,EAAYK,KACpBJ,EAASA,GAAUD,EAAIQ,SACbR,EAAYS,YACtBJ,EAAQL,EAAYS,WACpBR,EAASA,GAAUD,EAAIQ,SAEvBH,EAAOL,EAAIQ,QAGb,OAAQH,EAAKK,YACX,IAAK,MACL,IAAK,MACL,IAAK,MACH,OAAO,IAAIJ,EAAAA,cAAcL,GAC3B,IAAK,MACH,OAAO,IAAIM,EAAAA,cAAcN,GAC3B,IAAK,MACH,OAAII,EAAKK,WAAWN,MAAM,sBACjB,IAAIpK,EAAWgK,GACjB,IAAIvJ,EAAAA,cAAcuJ,GAC3B,QACE,OAAIK,EAAKK,WAAWN,MAAM,iBACjB,IAAIO,EAAAA,gBAAgBX,GACtB,IAAIvJ,EAAAA,cAAcuJ,GAE9B,CAUD,kBAAOhB,CAA6BF,EAAU8B,GAC5C3J,OAAO4J,eAAe/B,EAAOc,EAAAA,gBAAgBC,SAAU,CACrDiB,YAAY,EACZC,cAAc,EACdC,UAAU,EACV7E,MAAOyE,GAEV,CASD,kBAAOK,CAA6BnC,GAClC,MAAMoC,EAAajK,OAAOkK,yBACxBrC,EACAc,EAAAA,gBAAgBC,UAElB,OAAOqB,EAAaA,EAAW/E,WAAQvE,CACxC,CAQD,qBAAOwJ,CAAgCtC,GAClB7H,OAAOkK,yBACxBrC,EACAc,EAAAA,gBAAgBC,kBAEMf,EAAcc,kBAAgBC,SACvD,EAtbDwB,EAAAA,WAAA,CADCC,qHAC6BhH,IAM7BsD,EAAA2D,UAAA,YAAA,MAmDSF,EAAAA,WAAA,CADTC,2IAQA1D,EAAA2D,UAAA,iBAAA,MAUSF,EAAAA,WAAA,CADTC,wIAUA1D,EAAA2D,UAAA,yBAAA,MAWSF,EAAAA,WAAA,CADTC,wJAcA1D,EAAA2D,UAAA,eAAA,MA4BSF,EAAAA,WAAA,CADTC,uJAmBA1D,EAAA2D,UAAA,kBAAA,MA2BDF,EAAAA,WAAA,CADCC,yJAoBA1D,EAAA2D,UAAA,eAAA,MA4BSF,EAAAA,WAAA,CADTC,uJAyBA1D,EAAA2D,UAAA,kBAAA,MChUG,MAAO3C,UAGH4C,EAAAA,WACR,WAAAtL,CAAYS,EAAYmI,GACtB1I,MAAMO,EAASmI,EAChB,CAIS,cAAAD,CAAe4C,EAAiBC,GACxC,MAAMC,EAAQ,CAACC,EAAaC,KAC1B,MAAMC,EAAiBD,GAAWD,EAC5BhB,EAAWhD,EAAeqD,YAAYa,GAE5C,OADIlB,GAAUhD,EAAeoB,YAAY4C,EAAUhB,GAC5CgB,CAAQ,EAGjB,OAAIG,MAAMC,QAAQP,GACTA,EAAOtI,KAAI,CAAC2F,EAAOJ,KACxB,MAAMmD,EAAUE,MAAMC,QAAQN,GAAUA,EAAOhD,GAASgD,EACxD,OAAOC,EAAM7C,EAAO+C,EAAQ,IAKzBF,EAAMF,EADGM,MAAMC,QAAQN,GAAUA,IAAS,GAAKA,EAEvD,CAEQ,YAAMzD,CACba,KACG9B,GAEH,MAAMjB,QAAe3F,MAAM6H,OAAOa,KAAU9B,GAG5C,OAFA5F,KAAKyH,eAAe9C,GACpB3E,KAAKyH,eAAeC,EAAO/C,GACpBA,CACR,CAEQ,eAAMmC,CACbO,KACGzB,GAEH,MAAMtF,QAAgBtB,MAAM8H,UAAUO,KAAWzB,GAGjD,OAFA5F,KAAKyH,eAAenH,GACpBN,KAAKyH,eAAeJ,EAAQ/G,GACrBA,CACR,CAEQ,UAAMuK,CACbvJ,KACGsE,GAEH,MAAMjB,QAAe3F,MAAM6L,KAAKvJ,KAAOsE,GACvC,OAAO5F,KAAKyH,eAAe9C,EAC5B,CAEQ,aAAMmG,CACbzC,KACGzC,GAEH,MAAMtF,QAAgBtB,MAAM8L,QAAQzC,KAAQzC,GAC5C,OAAO5F,KAAKyH,eAAenH,EAC5B,CAEQ,YAAMyG,CACbW,KACG9B,GAEH,MAAMjB,QAAe3F,MAAM+H,OAAOW,KAAU9B,GAG5C,OAFA5F,KAAKyH,eAAe9C,GACpB3E,KAAKyH,eAAeC,EAAO/C,GACpBA,CACR,CAEQ,eAAMqC,CACbK,KACGzB,GAEH,MAAMtF,QAAgBtB,MAAMgI,UAAUK,KAAWzB,GAGjD,OAFA5F,KAAKyH,eAAenH,GACpBN,KAAKyH,eAAeJ,EAAQ/G,GACrBA,CACR,CAEQ,YAAM,CACbgB,KACGsE,GAEH,MAAMjB,QAAe3F,MAAM+L,OAAOzJ,KAAOsE,GACzC,OAAO5F,KAAKyH,eAAe9C,EAC5B,CAEQ,eAAMqG,CACb3C,KACGzC,GAEH,MAAMtF,QAAgBtB,MAAMgM,UAAU3C,KAAQzC,GAC9C,OAAO5F,KAAKyH,eAAenH,EAC5B,CAWkB,kBAAMiI,CACvBb,KACG9B,GAEH,MAAMqF,QAAoBC,EAAOA,QAACtF,KAChCuF,EAAaA,cAACC,OACdpL,KAAKqL,MACLzF,EACA5F,KAAKT,QACLS,KAAKsL,YAAc,CAAE,GAEjBC,EAAiBN,EAAYO,QAAQ7J,IAAI,kBACzC8J,EAAiBR,EAAYO,QAAQ7J,IAAI,oBACzCH,EAAKkG,EAAM1H,KAAKwB,IACtB,IAAKA,EACH,MAAM,IAAInC,EAAaA,cACrB,qDAAqDW,KAAKwB,IAE9D,MAAMkK,QAAiB1L,KAAK6K,KAAKrJ,KAAOyJ,EAAYrF,MAYpD,GAXA8B,EAAQnG,EAAKA,MAACgF,MAAMmF,EAAUhE,EAAO1H,KAAKqL,OACrCE,SACGI,sBACJ3L,KACAiL,EAAYO,QACZ9D,EACAyD,EAAaA,cAACC,OACdD,EAAAA,cAAcS,GACdF,IAGCD,EAAgB,CACnB,MAAMI,QAAeC,QAAQC,QAC3BrE,EAAMsE,UACJN,KACGnK,EAAAA,MAAM0K,UAAUjM,KAAKqL,UACpBJ,EAAYO,QAAQ7J,IAAI,gCAAkC,KAGlE,GAAIkK,EAAQ,MAAM,IAAIK,EAAeA,gBAACL,EAAOvC,WAC9C,CACD,MAAM6C,EAAc3F,EAAeqD,YAAY6B,GAE/C,OADIS,GAAa3F,EAAeoB,YAAYF,EAAOyE,GAC5C,CAACzE,KAAUuD,EAAYrF,KAC/B,CAWkB,qBAAM8C,CACvBrB,KACGzB,GAEH,MAAMqF,QAAoBC,EAAOA,QAACtF,KAChCuF,EAAaA,cAACC,OACdpL,KAAKqL,MACLzF,EACA5F,KAAKT,QACLS,KAAKsL,YAAc,CAAE,GAEjBC,EAAiBN,EAAYO,QAAQ7J,IAAI,kBACzC8J,EAAiBR,EAAYO,QAAQ7J,IAAI,oBACzC0G,EAAMhB,EAAOtF,KAAKkF,IACtB,MAAM3F,EAAK2F,EAAEjH,KAAKwB,IAClB,IAAKF,EAAI,MAAM,IAAIjC,EAAAA,cAAc,kCACjC,OAAOiC,CAAE,IAEL8K,QAAkBpM,KAAK8K,QAAQzC,KAAQ4C,EAAYrF,MAqBzD,GApBAyB,EAASA,EAAOtF,KAAI,CAACkF,EAAGc,KACtBd,EAAI1F,EAAAA,MAAMgF,MAAM6F,EAAUrE,GAAId,EAAGjH,KAAKqL,OACtC,MAAMc,EAAc3F,EAAeqD,YAAYuC,EAAUrE,IAEzD,OADIoE,GAAa3F,EAAeoB,YAAYX,EAAGkF,GACxClF,CAAC,IAELsE,SACGO,QAAQO,IACZhF,EAAOtF,KAAI,CAACkF,EAAGc,IACb4D,EAAmBA,oBACjB3L,KACAiL,EAAYO,QACZvE,EACAkE,gBAAcC,OACdD,EAAaA,cAACS,GACdQ,EAAUrE,QAKb0D,EAAgB,CACnB,MAAMa,EACJrB,EAAYO,QAAQ7J,IAAI,gCAAkC,GAQtD4K,SANeT,QAAQO,IAC3BhF,EAAOtF,KAAI,CAACkF,EAAGc,IACb+D,QAAQC,QAAQ9E,EAAE+E,UAAUI,EAAUrE,GAAId,KAAMqF,QAIvBlI,QAAO,CAACC,EAA2BgB,EAAG0C,KAC7D1C,IACFhB,EACmB,iBAAVA,EACHA,EAAQ,QAAQ0D,MAAM1C,EAAEiE,aACxB,MAAMvB,MAAM1C,EAAEiE,cACfjF,SACN7D,GAEH,GAAI+L,EAAe,MAAM,IAAIL,EAAAA,gBAAgBK,EAC9C,CAMD,OAJAlF,EAAOzC,SAAQ,CAACqC,EAAGc,KACjB,MAAMoE,EAAc3F,EAAeqD,YAAYuC,EAAUrE,IACrDoE,GAAa3F,EAAeoB,YAAYX,EAAGkF,EAAY,IAEtD,CAAC9E,KAAW4D,EAAYrF,KAChC,ECpOI4G,eAAeC,EAAOC,EAAUC,EAAcC,GACnD,OAAOF,EAAIG,KAAKF,EAAMC,EACxB,CA0FgB,SAAAE,EACd/I,EACAT,EACAyJ,EACAC,EACAC,EAAYC,oBAEZ,MAAMnE,EAAO,CAACP,EAAeA,gBAAC1K,MAAOwF,EAAWS,GAGhD,OAFIgJ,GAAchE,EAAKvE,QAAQuI,GAC3BC,GAAOjE,EAAKvE,KAAKwI,GACdjE,EAAKvG,KAAKyK,EACnB,CCjGa,MAAAE,EAAU,cAOVC,EAAe,cAE5B1L,EAAAA,SAAS2L,gBAAgBD,EAAcD,qCRkCa,CAClDG,KAAM,8GA1DyB,8GOwJjB,CACdvJ,EACAT,EACAyJ,EACAC,EACAC,EAAYC,sBAEZ,MAAMK,EAAuC,CAAA,EAK7C,IAAIzL,EACJ,GALAyL,EAAsBlQ,EAAYK,OAAS,GAC1C6P,EAAsBlQ,EAAYK,OACjCK,EAAgBC,OACdsF,EAEA0J,EAAO,CACT,MAAMQ,EAAuB,CAAA,EAC7BA,EAAUzJ,GAAaiJ,EACvB,MAAMS,GAAmCV,GAAgB,IAAIhL,KAAK2L,IAChE,MAAMnI,EAAe,CAAA,EAErB,OADAA,EAAEmI,GAAKV,EACAzH,CAAC,IAEJoI,EAAyB,CAAA,EAC/BA,EAAYtQ,EAAYK,OAASsP,EACjClL,EAAS,CAAC0L,KAAcC,EAAoBE,EAC7C,MACC7L,EAAS,CAACiC,KAAegJ,GAAgB,GAAK1P,EAAYK,OAE5D,MAAMuB,EAAO6N,EACX/I,EACAT,EACAyJ,EACAC,EACAC,GAEF,MAAO,CACL3F,MAAO,CACLxF,OAAQA,GAGV8L,KAAM,CAAC3O,EAAM5B,EAAYO,MAAM4E,KAAKyK,GACpChO,KAAMA,EAEV,0CE1HEoI,IAEA,MAAM/D,EAhER,EACErE,EACA4O,EACAd,EACAE,EAAYC,EAAAA,mBAEL,IACFjO,EAAK8C,KAAK+L,GAAOA,IAAMzQ,EAAYK,MAAQ,QAAUoQ,OACpDf,GAAgB,MAChBc,EAAY,CAACA,GAAa,GAC9BxQ,EAAYS,OACZ0E,KAAKyK,GAqDWH,CAAkB,CAACzP,EAAYK,QAC3CqQ,EAA8C,CAAA,EA4DpD,OA3DAA,EAAQzK,GAAa,CACnBgE,MAAO,CACLxF,OAAQ,CAACzE,EAAYK,QAEvBuB,KAAMqE,EACNsK,KAAMtK,EACN7B,KAAM,QAGR4F,EAAOzC,SAASqC,IACd,MAAM+G,EAAqCzM,EAAAA,MAAMwM,QAAQ9G,GACzDpH,OAAO6E,QAAQsJ,GAAKpJ,SAAQ,EAAEhD,EAAKmD,MACjC,MAAM/B,EAAInD,OAAOiD,KAAKiC,GAAO,GAE7B,IAAIkJ,WAAEA,EAAUlB,aAAEA,GAAkBhI,EAAc/B,GAClD,MAAMM,EAAY/B,EAAAA,MAAM+B,UAAU2D,GAGlC,SAASiH,EAASpJ,GAChB,MAAM7F,EAAO,CACXqE,EACA1B,KACImL,EACJvE,EAAAA,gBAAgB1K,OAChB0E,KAAK0K,EAAAA,kBAsBP,GApBAa,EAAQ9O,GAAQ,CACdqI,MAAO,CACLxF,OAAQ,CAACF,KAASmL,EAAqB1P,EAAYK,OAAO0G,QACxD,CAACC,EAAcxB,KACb,GAAIiC,EAAM,CACR,MAAMqJ,EAAW,CAAA,EACjBA,EAAItL,GAAMiC,EACVT,EAAMG,KAAK2J,EACZ,MACC9J,EAAMG,KAAK3B,GAEb,OAAOwB,CAAK,GAEd,KAGJpF,KAAMA,EACN2O,KAAM3O,EACNwC,KAAM,SAEHqD,EAAM,CACT,MAAMsJ,EAAmC,CAAA,EACzCA,EAAY/Q,EAAYK,OAAS,GACjC0Q,EAAY/Q,EAAYK,OAAOK,EAAgBC,OAASsF,EACxDyK,EAAQ9O,GAAMqI,MAAM+G,wBAA0BD,CAC/C,CACF,CApCDrB,EAAeA,GAAgB,GAsC/BmB,IACID,GACDA,EAA2CrJ,SAAS5C,GAAMkM,EAASlM,IAAG,GACzE,IAEGnC,OAAOqE,OAAO6J,EACvB,6DFrDuChF,GAE9BA,EAAKC,MADG,qDApCX,CACJ0D,EACA4B,EACA3B,EACAC,KAEA,MAAM2B,EAAK7B,EAAI8B,IAAIF,GAkBnB,MAjBA,CAAC,SAAU,MAAO,MAAO,UAAW,QAAQ1J,SAAS5B,IACnD,MAAMyL,EAAYF,EAA2BvL,GAC7CnD,OAAO4J,eAAe8E,EAAIvL,EAAG,CAC3B0G,YAAY,EACZC,cAAc,EACd5E,MAAOyH,SAAU5G,WACT6G,EAAOC,EAAKC,EAAMC,GACjB6B,EAASC,KAAKH,KAAO3I,KAE9B,IAEJ/F,OAAO4J,eAAe8E,EAAIlR,EAAYQ,OAAQ,CAC5C6L,YAAY,EACZC,cAAc,EACdC,UAAU,EACV7E,MAAO2H,IAEF6B,CACT"}
|
|
1
|
+
{"version":3,"file":"for-couchdb.cjs","sources":["../src/constants.ts","../src/query/constants.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/repository.ts","../src/utils.ts","../src/index.ts","../src/indexes/generator.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["reservedAttributes","CouchDBKeys","SEPARATOR","ID","REV","DELETED","TABLE","SEQUENCE","DDOC","NATIVE","INDEX","CouchDBOperator","EQUAL","DIFFERENT","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","NOT","IN","REGEXP","CouchDBGroupOperator","AND","OR","IndexError","BaseError","constructor","msg","super","name","CouchDBPaginator","Paginator","total","InternalError","count","adapter","query","size","clazz","prepare","rawStatement","Object","assign","limit","this","page","args","ctxArgs","ctx","isPreparedStatement","pagePrepared","statement","_recordCount","_totalPages","results","raw","undefined","length","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","id","Model","pk","type","Metadata","get","key","DBKeys","fields","map","d","originalId","_id","split","splice","revert","Sequence","parseValue","join","_currentPage","translateOperators","operator","operators","el","keys","find","k","QueryError","CouchDBStatement","Statement","build","selectors","tableName","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","values","indexOf","reduce","accum","val","Error","push","s","entries","result","forEach","orderBySelector","sort","value","rec","limitSelector","offsetSelector","skip","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","logCtx","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","alias","create","createAll","update","updateAll","m","prefixMethod","initialize","managedModels","models","index","repository","CouchDBRepository","assignMetadata","model","rev","setMetadata","assignMultipleMetadata","revs","i","createPrefix","record","generateId","createAllPrefix","ids","records","updatePrefix","PersistenceKeys","METADATA","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","NotFoundError","message","statusCode","toString","ConnectionError","metadata","defineProperty","enumerable","configurable","writable","getMetadata","descriptor","getOwnPropertyDescriptor","removeMetadata","__decorate","final","prototype","Repository","target","source","apply","instance","carrier","metadataSource","Array","isArray","read","readAll","delete","deleteAll","contextArgs","Context","OperationKeys","UPDATE","class","_overrides","ignoreHandlers","context","ignoreValidate","oldModel","enforceDBDecorators","ON","errors","Promise","resolve","hasErrors","relations","ValidationError","oldMetadata","oldModels","all","ignoredProps","errorMessages","e","async","reAuth","con","user","pass","auth","generateIndexName","compositions","order","separator","DefaultSeparator","VERSION","PACKAGE_NAME","registerLibrary","NULL","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","ddoc","direction","n","indexes","ind","directions","generate","res","tableFilter","partial_filter_selector","dbName","db","use","original","call"],"mappings":"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"}
|
package/dist/for-couchdb.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Metadata as t}from"@decaf-ts/decoration";import{PersistenceKeys as e,Paginator as r,PagingError as s,Sequence as a,QueryError as i,Statement as n,Condition as o,GroupOperator as c,Operator as l,Adapter as d,ConnectionError as u,Repository as h}from"@decaf-ts/core";import{DefaultSeparator as p,BaseError as g,InternalError as f,DBKeys as A,prefixMethod as m,ConflictError as y,NotFoundError as E,Context as b,OperationKeys as w,enforceDBDecorators as O,ValidationError as x}from"@decaf-ts/db-decorators";import{Model as T}from"@decaf-ts/decorator-validation";import{__decorate as j,__metadata as M}from"tslib";import{final as P}from"@decaf-ts/logging";const D=/^_.*$/g,N={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},v=250,S={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},I={AND:"$and",OR:"$or"},L={NULL:"null"};function k(t){const r=((t,e,r,s=p)=>[...t.map((t=>t===N.TABLE?"table":t)),...r||[],...e?[e]:[],N.INDEX].join(s))([N.TABLE]),s={};return s[r]={index:{fields:[N.TABLE]},name:r,ddoc:r,type:"json"},t.forEach((t=>{const r=T.indexes(t);Object.entries(r).forEach((([r,a])=>{const i=Object.keys(a)[0];let{directions:n,compositions:o}=a[i];const c=T.tableName(t);function l(t){const a=[c,r,...o,e.INDEX].join(p);if(s[a]={index:{fields:[r,...o,N.TABLE].reduce(((e,r)=>{if(t){const s={};s[r]=t,e.push(s)}else e.push(r);return e}),[])},name:a,ddoc:a,type:"json"},!t){const t={};t[N.TABLE]={},t[N.TABLE].$eq=c,s[a].index.partial_filter_selector=t}}o=o||[],l(),n&&n.forEach((t=>l(t)))}))})),Object.values(s)}class R extends g{constructor(t){super(R.name,t,404)}}class C extends r{get total(){throw new f("The total pages api is not available for couchdb")}get count(){throw new f("The record count api is not available for couchdb")}constructor(t,e,r,s){super(t,e,r,s)}prepare(t){const e=Object.assign({},t);return e.limit&&(this.limit=e.limit),e.limit=this.size,e}async page(e=1){const{ctx:r}=this.adapter.logCtx([e],this.page),i=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const t=await this.adapter.raw({...i,limit:void 0},!0,r)||[];if(this._recordCount=t.length,this._recordCount>0){const t=i?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/t)}}if(this.validatePage(e),1!==e){if(!this.bookMark)throw new s("No bookmark. Did you start in the first page?");i.bookmark=this.bookMark}const n=await this.adapter.raw(i,!1,r),{docs:o,bookmark:c,warning:l}=n;if(l&&this.log.for(this.page).warn(l),!this.clazz)throw new s("No statement target defined");const d=T.pk(this.clazz),u=t.get(this.clazz,t.key(A.ID,d))?.type,h=i.fields&&i.fields.length?o:o.map((t=>{const e=t._id.split(N.SEPARATOR);return e.splice(0,1),this.adapter.revert(t,this.clazz,a.parseValue(u,e.join(N.SEPARATOR)),void 0,r)}));return this.bookMark=c,this._currentPage=e,h}}function _(t){for(const e of[S,I]){const r=Object.keys(e).find((e=>e===t));if(r)return e[r]}throw new i("Could not find adapter translation for operator "+t)}class B extends n{constructor(t){super(t)}build(){const t=this.log.for(this.build),e={};e[N.TABLE]={},e[N.TABLE]=T.tableName(this.fromSelector);const r={selector:e};if(this.selectSelector&&(r.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(o.and(this.whereCondition,o.attribute(N.TABLE).eq(r.selector[N.TABLE]))).selector,s=Object.keys(e);if(1===s.length&&-1!==Object.values(I).indexOf(s[0]))switch(s[0]){case I.AND:e[I.AND]=[...Object.values(e[I.AND]).reduce(((t,e)=>{const r=Object.keys(e);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const s=r[0];return s===I.AND?t.push(...e[s]):t.push(e),t}),[])],r.selector=e;break;case I.OR:{const t={};t[I.AND]=[e,...Object.entries(r.selector).map((([t,e])=>{const r={};return r[t]=e,r}))],r.selector=t;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach((([e,s])=>{r.selector[e]&&t.warn(`A ${e} query param is about to be overridden: ${r.selector[e]} by ${s}`),r.selector[e]=s}))}if(this.orderBySelector){r.sort=r.sort||[],r.selector=r.selector||{};const[t,e]=this.orderBySelector,s={};s[t]=e,r.sort.push(s),r.selector[t]||(r.selector[t]={},r.selector[t].$gt=null)}return this.limitSelector?r.limit=this.limitSelector:(t.warn("No limit selector defined. Using default couchdb limit of 250"),r.limit=250),this.offsetSelector&&(r.skip=this.offsetSelector),r}async paginate(t){try{const e=this.build();return new C(this.adapter,e,t,this.fromSelector)}catch(t){throw new f(t)}}processRecord(t,e,r,s){if(t[N.ID]){const[,...e]=t[N.ID].split(N.SEPARATOR),i=e.join("_");return this.adapter.revert(t,this.fromSelector,a.parseValue(r,i),void 0,s)}return t}async raw(e,...r){const{ctx:s}=this.logCtx(r,this.raw),a=await this.adapter.raw(e,!0,s),i=T.pk(this.fromSelector),n=t.get(this.fromSelector,t.key(A.ID,i))?.type;return this.selectSelector?a:a.map((t=>this.processRecord(t,i,n,s)))}parseCondition(t){const{attr1:e,operator:r,comparison:s}=t;let a={};if(-1===[c.AND,c.OR,l.NOT].indexOf(r))a[e]={},a[e][_(r)]=s;else if(r===l.NOT)a=this.parseCondition(e).selector,a[_(l.NOT)]={},a[_(l.NOT)][e.attr1]=s;else{const t=this.parseCondition(e).selector,i=this.parseCondition(s).selector;a=((t,e,r)=>{const s={selector:{}};return s.selector[t]=[e,r],s})(_(r),t,i).selector}return{selector:a}}}class $ extends d{constructor(t,e,r){super(t,e,r),[this.create,this.createAll,this.update,this.updateAll].forEach((t=>{const e=t.name;m(this,t,this[e+"Prefix"])}))}Statement(){return new B(this)}async initialize(){const t=d.models(this.flavour);return this.index(...t)}repository(){return V}assignMetadata(t,e){return e?($.setMetadata(t,e),t):t}assignMultipleMetadata(t,e){return t.forEach(((t,r)=>($.setMetadata(t,e[r]),t))),t}createPrefix(t,e,r,...s){const{ctxArgs:a}=this.logCtx(s,this.createPrefix),i=T.tableName(t),n={};return n[N.TABLE]=i,n[N.ID]=this.generateId(i,e),Object.assign(n,r),[t,e,n,...a]}createAllPrefix(t,e,r,...s){const a=T.tableName(t);if(e.length!==r.length)throw new f("Ids and models must have the same length");const{ctxArgs:i}=this.logCtx(s,this.createAllPrefix),n=e.map(((t,e)=>{const s={};return s[N.TABLE]=a,s[N.ID]=this.generateId(a,t),Object.assign(s,r[e]),s}));return[t,e,n,...i]}updatePrefix(t,r,s,...a){const i=T.tableName(t),{ctxArgs:n}=this.logCtx(a,this.updatePrefix),o={};o[N.TABLE]=i,o[N.ID]=this.generateId(i,r);const c=s[e.METADATA];if(!c)throw new f("No revision number found for record with id "+r);return Object.assign(o,s),o[N.REV]=c,[t,r,o,...n]}updateAllPrefix(t,r,s,...a){const i=T.tableName(t);if(r.length!==s.length)throw new f("Ids and models must have the same length");const{ctxArgs:n}=this.logCtx(a,this.updateAllPrefix),o=r.map(((t,r)=>{const a={};a[N.TABLE]=i,a[N.ID]=this.generateId(i,t);const n=s[r][e.METADATA];if(!n)throw new f("No revision number found for record with id "+t);return Object.assign(a,s[r]),a[N.REV]=n,a}));return[t,r,o,...n]}generateId(t,e){return[t,e].join(N.SEPARATOR)}parseError(t,e){return $.parseError(t,e)}isReserved(t){return!!t.match(D)}static parseError(t,e){if(t instanceof g)return t;let r="";if("string"==typeof t){if(r=t,r.match(/already exist|update conflict/g))return new y(r);if(r.match(/missing|deleted/g))return new E(r)}else t.code?(r=t.code,e=e||t.message):t.statusCode?(r=t.statusCode,e=e||t.message):r=t.message;switch(r.toString()){case"401":case"412":case"409":return new y(e);case"404":return new E(e);case"400":return r.toString().match(/No\sindex\sexists/g)?new R(t):new f(t);default:return r.toString().match(/ECONNREFUSED/g)?new u(t):new f(t)}}static setMetadata(t,r){Object.defineProperty(t,e.METADATA,{enumerable:!1,configurable:!0,writable:!0,value:r})}static getMetadata(t){const r=Object.getOwnPropertyDescriptor(t,e.METADATA);return r?r.value:void 0}static removeMetadata(t){Object.getOwnPropertyDescriptor(t,e.METADATA)&&delete t[e.METADATA]}}j([P(),M("design:type",Function),M("design:paramtypes",[]),M("design:returntype",B)],$.prototype,"Statement",null),j([P(),M("design:type",Function),M("design:paramtypes",[Object,String]),M("design:returntype",Object)],$.prototype,"assignMetadata",null),j([P(),M("design:type",Function),M("design:paramtypes",[Array,Array]),M("design:returntype",Array)],$.prototype,"assignMultipleMetadata",null),j([P(),M("design:type",Function),M("design:paramtypes",[Object,Object,Object,Object]),M("design:returntype",Array)],$.prototype,"createPrefix",null),j([P(),M("design:type",Function),M("design:paramtypes",[Object,Array,Array,Object]),M("design:returntype",void 0)],$.prototype,"createAllPrefix",null),j([P(),M("design:type",Function),M("design:paramtypes",[Object,Object,Object,Object]),M("design:returntype",void 0)],$.prototype,"updatePrefix",null),j([P(),M("design:type",Function),M("design:paramtypes",[Object,Array,Array,Object]),M("design:returntype",void 0)],$.prototype,"updateAllPrefix",null);class V extends h{constructor(t,e){super(t,e)}assignMetadata(t,e){const r=(t,e)=>{const r=e??t,s=$.getMetadata(r);return s&&$.setMetadata(t,s),t};return Array.isArray(t)?t.map(((t,s)=>{const a=Array.isArray(e)?e[s]:e;return r(t,a)})):r(t,Array.isArray(e)?e?.[0]:e)}async create(t,...e){const r=await super.create(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async createAll(t,...e){const r=await super.createAll(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async read(t,...e){const r=await super.read(t,...e);return this.assignMetadata(r)}async readAll(t,...e){const r=await super.readAll(t,...e);return this.assignMetadata(r)}async update(t,...e){const r=await super.update(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async updateAll(t,...e){const r=await super.updateAll(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async delete(t,...e){const r=await super.delete(t,...e);return this.assignMetadata(r)}async deleteAll(t,...e){const r=await super.deleteAll(t,...e);return this.assignMetadata(r)}async updatePrefix(t,...e){const r=await b.args(w.UPDATE,this.class,e,this.adapter,this._overrides||{}),s=r.context.get("ignoreHandlers"),a=r.context.get("ignoreValidation"),i=t[this.pk];if(!i)throw new f("No value for the Id is defined under the property "+this.pk);const n=await this.read(i,...r.args);if(t=T.merge(n,t,this.class),s||await O(this,r.context,t,w.UPDATE,w.ON,n),!a){const e=await Promise.resolve(t.hasErrors(n,...T.relations(this.class),...r.context.get("ignoredValidationProperties")||[]));if(e)throw new x(e.toString())}const o=$.getMetadata(n);return o&&$.setMetadata(t,o),[t,...r.args]}async updateAllPrefix(t,...e){const r=await b.args(w.UPDATE,this.class,e,this.adapter,this._overrides||{}),s=r.context.get("ignoreHandlers"),a=r.context.get("ignoreValidation"),i=t.map((t=>{const e=t[this.pk];if(!e)throw new f("missing id on update operation");return e})),n=await this.readAll(i,...r.args);if(t=t.map(((t,e)=>{t=T.merge(n[e],t,this.class);const r=$.getMetadata(n[e]);return r&&$.setMetadata(t,r),t})),s||await Promise.all(t.map(((t,e)=>O(this,r.context,t,w.UPDATE,w.ON,n[e])))),!a){const e=r.context.get("ignoredValidationProperties")||[],s=(await Promise.all(t.map(((t,r)=>Promise.resolve(t.hasErrors(n[r],t,...e)))))).reduce(((t,e,r)=>(e&&(t="string"==typeof t?t+`\n - ${r}: ${e.toString()}`:` - ${r}: ${e.toString()}`),t)),void 0);if(s)throw new x(s)}return t.forEach(((t,e)=>{const r=$.getMetadata(n[e]);r&&$.setMetadata(t,r)})),[t,...r.args]}}async function z(t,e,r){return t.auth(e,r)}function F(t,e,r,s){const a=t.use(e);return["insert","get","put","destroy","find"].forEach((e=>{const i=a[e];Object.defineProperty(a,e,{enumerable:!1,configurable:!0,value:async(...e)=>(await z(t,r,s),i.call(a,...e))})})),Object.defineProperty(a,N.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:t}),a}function U(t){return t.match(/^_.*$/g)}function q(t,r,s,a,i=p){const n=[e.INDEX,r,t];return s&&n.push(...s),a&&n.push(a),n.join(i)}function G(t,e,r,s,a=p){const i={};let n;if(i[N.TABLE]={},i[N.TABLE].$eq=e,s){const e={};e[t]=s;const a=(r||[]).map((t=>{const e={};return e[t]=s,e})),i={};i[N.TABLE]=s,n=[e,...a,i]}else n=[t,...r||[],N.TABLE];const o=q(t,e,r,s,a);return{index:{fields:n},ddoc:[o,N.DDOC].join(a),name:o}}const X="##VERSION##",Q="##PACKAGE##";t.registerLibrary(Q,X);export{$ as CouchDBAdapter,L as CouchDBConst,I as CouchDBGroupOperator,N as CouchDBKeys,S as CouchDBOperator,C as CouchDBPaginator,v as CouchDBQueryLimit,V as CouchDBRepository,B as CouchDBStatement,R as IndexError,Q as PACKAGE_NAME,X as VERSION,G as generateIndexDoc,q as generateIndexName,k as generateIndexes,z as reAuth,D as reservedAttributes,U as testReservedAttributes,_ as translateOperators,F as wrapDocumentScope};
|
|
1
|
+
import{Metadata as t}from"@decaf-ts/decoration";import{PersistenceKeys as e,Paginator as r,PagingError as s,Sequence as a,QueryError as i,Statement as n,Condition as o,GroupOperator as c,Operator as l,Adapter as d,ConnectionError as u,Repository as h}from"@decaf-ts/core";import{DefaultSeparator as p,BaseError as g,InternalError as f,DBKeys as A,prefixMethod as m,ConflictError as y,NotFoundError as E,Context as b,OperationKeys as w,enforceDBDecorators as O,ValidationError as x}from"@decaf-ts/db-decorators";import{Model as T}from"@decaf-ts/decorator-validation";import{__decorate as P,__metadata as j}from"tslib";import{final as M}from"@decaf-ts/logging";const D=/^_.*$/g,N={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},v=250,S={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},I={AND:"$and",OR:"$or"},L={NULL:"null"};function k(t){const r=((t,e,r,s=p)=>[...t.map((t=>t===N.TABLE?"table":t)),...r||[],...e?[e]:[],N.INDEX].join(s))([N.TABLE]),s={};return s[r]={index:{fields:[N.TABLE]},name:r,ddoc:r,type:"json"},t.forEach((t=>{const r=T.indexes(t);Object.entries(r).forEach((([r,a])=>{const i=Object.keys(a)[0];let{directions:n,compositions:o}=a[i];const c=T.tableName(t);function l(t){const a=[c,r,...o,e.INDEX].join(p);if(s[a]={index:{fields:[r,...o,N.TABLE].reduce(((e,r)=>{if(t){const s={};s[r]=t,e.push(s)}else e.push(r);return e}),[])},name:a,ddoc:a,type:"json"},!t){const t={};t[N.TABLE]={},t[N.TABLE].$eq=c,s[a].index.partial_filter_selector=t}}o=o||[],l(),n&&n.forEach((t=>l(t)))}))})),Object.values(s)}class R extends g{constructor(t){super(R.name,t,404)}}class C extends r{get total(){throw new f("The total pages api is not available for couchdb")}get count(){throw new f("The record count api is not available for couchdb")}constructor(t,e,r,s){super(t,e,r,s)}prepare(t){const e=Object.assign({},t);return e.limit&&(this.limit=e.limit),e.limit=this.size,e}async page(e=1,...r){const{ctxArgs:i,ctx:n}=this.adapter.logCtx(r,this.page);if(this.isPreparedStatement())return this.pagePrepared(e,...i);const o=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const t=await this.adapter.raw({...o,limit:void 0},!0,n)||[];if(this._recordCount=t.length,this._recordCount>0){const t=o?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/t)}}if(this.validatePage(e),1!==e){if(!this.bookMark)throw new s("No bookmark. Did you start in the first page?");o.bookmark=this.bookMark}const c=await this.adapter.raw(o,!1,n),{docs:l,bookmark:d,warning:u}=c;if(u&&this.log.for(this.page).warn(u),!this.clazz)throw new s("No statement target defined");const h=T.pk(this.clazz),p=t.get(this.clazz,t.key(A.ID,h))?.type,g=o.fields&&o.fields.length?l:l.map((t=>{const e=t._id.split(N.SEPARATOR);return e.splice(0,1),this.adapter.revert(t,this.clazz,a.parseValue(p,e.join(N.SEPARATOR)),void 0,n)}));return this.bookMark=d,this._currentPage=e,g}}function _(t){for(const e of[S,I]){const r=Object.keys(e).find((e=>e===t));if(r)return e[r]}throw new i("Could not find adapter translation for operator "+t)}class B extends n{constructor(t){super(t)}build(){const t=this.log.for(this.build),e={};e[N.TABLE]={},e[N.TABLE]=T.tableName(this.fromSelector);const r={selector:e};if(this.selectSelector&&(r.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(o.and(this.whereCondition,o.attribute(N.TABLE).eq(r.selector[N.TABLE]))).selector,s=Object.keys(e);if(1===s.length&&-1!==Object.values(I).indexOf(s[0]))switch(s[0]){case I.AND:e[I.AND]=[...Object.values(e[I.AND]).reduce(((t,e)=>{const r=Object.keys(e);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const s=r[0];return s===I.AND?t.push(...e[s]):t.push(e),t}),[])],r.selector=e;break;case I.OR:{const t={};t[I.AND]=[e,...Object.entries(r.selector).map((([t,e])=>{const r={};return r[t]=e,r}))],r.selector=t;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach((([e,s])=>{r.selector[e]&&t.warn(`A ${e} query param is about to be overridden: ${r.selector[e]} by ${s}`),r.selector[e]=s}))}if(this.orderBySelector){r.sort=r.sort||[],r.selector=r.selector||{};const[t,e]=this.orderBySelector,s={};s[t]=e,r.sort.push(s),r.selector[t]||(r.selector[t]={},r.selector[t].$gt=null)}return this.limitSelector?r.limit=this.limitSelector:(t.warn("No limit selector defined. Using default couchdb limit of 250"),r.limit=250),this.offsetSelector&&(r.skip=this.offsetSelector),r}processRecord(t,e,r,s){if(t[N.ID]){const[,...e]=t[N.ID].split(N.SEPARATOR),i=e.join("_");return this.adapter.revert(t,this.fromSelector,a.parseValue(r,i),void 0,s)}return t}async raw(e,...r){const{ctx:s}=this.logCtx(r,this.raw),a=await this.adapter.raw(e,!0,s),i=T.pk(this.fromSelector),n=t.get(this.fromSelector,t.key(A.ID,i))?.type;return this.selectSelector?a:a.map((t=>this.processRecord(t,i,n,s)))}parseCondition(t){const{attr1:e,operator:r,comparison:s}=t;let a={};if(-1===[c.AND,c.OR,l.NOT].indexOf(r))a[e]={},a[e][_(r)]=s;else if(r===l.NOT)a=this.parseCondition(e).selector,a[_(l.NOT)]={},a[_(l.NOT)][e.attr1]=s;else{const t=this.parseCondition(e).selector,i=this.parseCondition(s).selector;a=((t,e,r)=>{const s={selector:{}};return s.selector[t]=[e,r],s})(_(r),t,i).selector}return{selector:a}}}class $ extends d{constructor(t,e,r){super(t,e,r),[this.create,this.createAll,this.update,this.updateAll].forEach((t=>{const e=t.name;m(this,t,this[e+"Prefix"])}))}Statement(){return new B(this)}Paginator(t,e,r){return new C(this,t,e,r)}async initialize(){const t=d.models(this.flavour);return this.index(...t)}repository(){return V}assignMetadata(t,e){return e?($.setMetadata(t,e),t):t}assignMultipleMetadata(t,e){return t.forEach(((t,r)=>($.setMetadata(t,e[r]),t))),t}createPrefix(t,e,r,...s){const{ctxArgs:a}=this.logCtx(s,this.createPrefix),i=T.tableName(t),n={};return n[N.TABLE]=i,n[N.ID]=this.generateId(i,e),Object.assign(n,r),[t,e,n,...a]}createAllPrefix(t,e,r,...s){const a=T.tableName(t);if(e.length!==r.length)throw new f("Ids and models must have the same length");const{ctxArgs:i}=this.logCtx(s,this.createAllPrefix),n=e.map(((t,e)=>{const s={};return s[N.TABLE]=a,s[N.ID]=this.generateId(a,t),Object.assign(s,r[e]),s}));return[t,e,n,...i]}updatePrefix(t,r,s,...a){const i=T.tableName(t),{ctxArgs:n}=this.logCtx(a,this.updatePrefix),o={};o[N.TABLE]=i,o[N.ID]=this.generateId(i,r);const c=s[e.METADATA];if(!c)throw new f("No revision number found for record with id "+r);return Object.assign(o,s),o[N.REV]=c,[t,r,o,...n]}updateAllPrefix(t,r,s,...a){const i=T.tableName(t);if(r.length!==s.length)throw new f("Ids and models must have the same length");const{ctxArgs:n}=this.logCtx(a,this.updateAllPrefix),o=r.map(((t,r)=>{const a={};a[N.TABLE]=i,a[N.ID]=this.generateId(i,t);const n=s[r][e.METADATA];if(!n)throw new f("No revision number found for record with id "+t);return Object.assign(a,s[r]),a[N.REV]=n,a}));return[t,r,o,...n]}generateId(t,e){return[t,e].join(N.SEPARATOR)}parseError(t,e){return $.parseError(t,e)}isReserved(t){return!!t.match(D)}static parseError(t,e){if(t instanceof g)return t;let r="";if("string"==typeof t){if(r=t,r.match(/already exist|update conflict/g))return new y(r);if(r.match(/missing|deleted/g))return new E(r)}else t.code?(r=t.code,e=e||t.message):t.statusCode?(r=t.statusCode,e=e||t.message):r=t.message;switch(r.toString()){case"401":case"412":case"409":return new y(e);case"404":return new E(e);case"400":return r.toString().match(/No\sindex\sexists/g)?new R(t):new f(t);default:return r.toString().match(/ECONNREFUSED/g)?new u(t):new f(t)}}static setMetadata(t,r){Object.defineProperty(t,e.METADATA,{enumerable:!1,configurable:!0,writable:!0,value:r})}static getMetadata(t){const r=Object.getOwnPropertyDescriptor(t,e.METADATA);return r?r.value:void 0}static removeMetadata(t){Object.getOwnPropertyDescriptor(t,e.METADATA)&&delete t[e.METADATA]}}P([M(),j("design:type",Function),j("design:paramtypes",[]),j("design:returntype",B)],$.prototype,"Statement",null),P([M(),j("design:type",Function),j("design:paramtypes",[Object,String]),j("design:returntype",Object)],$.prototype,"assignMetadata",null),P([M(),j("design:type",Function),j("design:paramtypes",[Array,Array]),j("design:returntype",Array)],$.prototype,"assignMultipleMetadata",null),P([M(),j("design:type",Function),j("design:paramtypes",[Object,Object,Object,Object]),j("design:returntype",Array)],$.prototype,"createPrefix",null),P([M(),j("design:type",Function),j("design:paramtypes",[Object,Array,Array,Object]),j("design:returntype",void 0)],$.prototype,"createAllPrefix",null),P([M(),j("design:type",Function),j("design:paramtypes",[Object,Object,Object,Object]),j("design:returntype",void 0)],$.prototype,"updatePrefix",null),P([M(),j("design:type",Function),j("design:paramtypes",[Object,Array,Array,Object]),j("design:returntype",void 0)],$.prototype,"updateAllPrefix",null);class V extends h{constructor(t,e){super(t,e)}assignMetadata(t,e){const r=(t,e)=>{const r=e??t,s=$.getMetadata(r);return s&&$.setMetadata(t,s),t};return Array.isArray(t)?t.map(((t,s)=>{const a=Array.isArray(e)?e[s]:e;return r(t,a)})):r(t,Array.isArray(e)?e?.[0]:e)}async create(t,...e){const r=await super.create(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async createAll(t,...e){const r=await super.createAll(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async read(t,...e){const r=await super.read(t,...e);return this.assignMetadata(r)}async readAll(t,...e){const r=await super.readAll(t,...e);return this.assignMetadata(r)}async update(t,...e){const r=await super.update(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async updateAll(t,...e){const r=await super.updateAll(t,...e);return this.assignMetadata(r),this.assignMetadata(t,r),r}async delete(t,...e){const r=await super.delete(t,...e);return this.assignMetadata(r)}async deleteAll(t,...e){const r=await super.deleteAll(t,...e);return this.assignMetadata(r)}async updatePrefix(t,...e){const r=await b.args(w.UPDATE,this.class,e,this.adapter,this._overrides||{}),s=r.context.get("ignoreHandlers"),a=r.context.get("ignoreValidation"),i=t[this.pk];if(!i)throw new f("No value for the Id is defined under the property "+this.pk);const n=await this.read(i,...r.args);if(t=T.merge(n,t,this.class),s||await O(this,r.context,t,w.UPDATE,w.ON,n),!a){const e=await Promise.resolve(t.hasErrors(n,...T.relations(this.class),...r.context.get("ignoredValidationProperties")||[]));if(e)throw new x(e.toString())}const o=$.getMetadata(n);return o&&$.setMetadata(t,o),[t,...r.args]}async updateAllPrefix(t,...e){const r=await b.args(w.UPDATE,this.class,e,this.adapter,this._overrides||{}),s=r.context.get("ignoreHandlers"),a=r.context.get("ignoreValidation"),i=t.map((t=>{const e=t[this.pk];if(!e)throw new f("missing id on update operation");return e})),n=await this.readAll(i,...r.args);if(t=t.map(((t,e)=>{t=T.merge(n[e],t,this.class);const r=$.getMetadata(n[e]);return r&&$.setMetadata(t,r),t})),s||await Promise.all(t.map(((t,e)=>O(this,r.context,t,w.UPDATE,w.ON,n[e])))),!a){const e=r.context.get("ignoredValidationProperties")||[],s=(await Promise.all(t.map(((t,r)=>Promise.resolve(t.hasErrors(n[r],t,...e)))))).reduce(((t,e,r)=>(e&&(t="string"==typeof t?t+`\n - ${r}: ${e.toString()}`:` - ${r}: ${e.toString()}`),t)),void 0);if(s)throw new x(s)}return t.forEach(((t,e)=>{const r=$.getMetadata(n[e]);r&&$.setMetadata(t,r)})),[t,...r.args]}}async function z(t,e,r){return t.auth(e,r)}function F(t,e,r,s){const a=t.use(e);return["insert","get","put","destroy","find"].forEach((e=>{const i=a[e];Object.defineProperty(a,e,{enumerable:!1,configurable:!0,value:async(...e)=>(await z(t,r,s),i.call(a,...e))})})),Object.defineProperty(a,N.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:t}),a}function U(t){return t.match(/^_.*$/g)}function q(t,r,s,a,i=p){const n=[e.INDEX,r,t];return s&&n.push(...s),a&&n.push(a),n.join(i)}function G(t,e,r,s,a=p){const i={};let n;if(i[N.TABLE]={},i[N.TABLE].$eq=e,s){const e={};e[t]=s;const a=(r||[]).map((t=>{const e={};return e[t]=s,e})),i={};i[N.TABLE]=s,n=[e,...a,i]}else n=[t,...r||[],N.TABLE];const o=q(t,e,r,s,a);return{index:{fields:n},ddoc:[o,N.DDOC].join(a),name:o}}const X="##VERSION##",Q="##PACKAGE##";t.registerLibrary(Q,X);export{$ as CouchDBAdapter,L as CouchDBConst,I as CouchDBGroupOperator,N as CouchDBKeys,S as CouchDBOperator,C as CouchDBPaginator,v as CouchDBQueryLimit,V as CouchDBRepository,B as CouchDBStatement,R as IndexError,Q as PACKAGE_NAME,X as VERSION,G as generateIndexDoc,q as generateIndexName,k as generateIndexes,z as reAuth,D as reservedAttributes,U as testReservedAttributes,_ as translateOperators,F as wrapDocumentScope};
|
|
2
2
|
//# sourceMappingURL=for-couchdb.js.map
|
package/dist/for-couchdb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-couchdb.js","sources":["../src/constants.ts","../src/query/constants.ts","../src/indexes/generator.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/repository.ts","../src/utils.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["reservedAttributes","CouchDBKeys","SEPARATOR","ID","REV","DELETED","TABLE","SEQUENCE","DDOC","NATIVE","INDEX","CouchDBQueryLimit","CouchDBOperator","EQUAL","DIFFERENT","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","NOT","IN","REGEXP","CouchDBGroupOperator","AND","OR","CouchDBConst","NULL","generateIndexes","models","tableName","name","direction","compositions","separator","DefaultSeparator","map","n","join","generateIndexName","indexes","index","fields","ddoc","type","forEach","m","ind","Model","Object","entries","key","value","k","keys","directions","generate","sort","PersistenceKeys","reduce","accum","el","res","push","tableFilter","partial_filter_selector","d","values","IndexError","BaseError","constructor","msg","super","CouchDBPaginator","Paginator","total","InternalError","count","adapter","query","size","clazz","prepare","rawStatement","assign","limit","this","page","ctx","statement","_recordCount","_totalPages","results","raw","undefined","length","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","id","pk","Metadata","get","DBKeys","originalId","_id","split","splice","revert","Sequence","parseValue","_currentPage","translateOperators","operator","operators","find","QueryError","CouchDBStatement","Statement","build","selectors","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","indexOf","val","Error","s","result","orderBySelector","rec","limitSelector","offsetSelector","skip","paginate","e","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","args","logCtx","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","alias","create","createAll","update","updateAll","prefixMethod","initialize","managedModels","repository","CouchDBRepository","assignMetadata","model","rev","setMetadata","assignMultipleMetadata","revs","i","createPrefix","ctxArgs","record","generateId","createAllPrefix","ids","records","updatePrefix","METADATA","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","NotFoundError","message","statusCode","toString","ConnectionError","metadata","defineProperty","enumerable","configurable","writable","getMetadata","descriptor","getOwnPropertyDescriptor","removeMetadata","__decorate","final","prototype","Repository","target","source","apply","instance","carrier","metadataSource","Array","isArray","read","readAll","delete","deleteAll","contextArgs","Context","OperationKeys","UPDATE","class","_overrides","ignoreHandlers","context","ignoreValidate","oldModel","enforceDBDecorators","ON","errors","Promise","resolve","hasErrors","relations","ValidationError","oldMetadata","oldModels","all","ignoredProps","errorMessages","async","reAuth","con","user","pass","auth","wrapDocumentScope","dbName","db","use","original","call","testReservedAttributes","order","generateIndexDoc","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"for-couchdb.js","sources":["../src/constants.ts","../src/query/constants.ts","../src/indexes/generator.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/repository.ts","../src/utils.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null],"names":["reservedAttributes","CouchDBKeys","SEPARATOR","ID","REV","DELETED","TABLE","SEQUENCE","DDOC","NATIVE","INDEX","CouchDBQueryLimit","CouchDBOperator","EQUAL","DIFFERENT","BIGGER","BIGGER_EQ","SMALLER","SMALLER_EQ","NOT","IN","REGEXP","CouchDBGroupOperator","AND","OR","CouchDBConst","NULL","generateIndexes","models","tableName","name","direction","compositions","separator","DefaultSeparator","map","n","join","generateIndexName","indexes","index","fields","ddoc","type","forEach","m","ind","Model","Object","entries","key","value","k","keys","directions","generate","sort","PersistenceKeys","reduce","accum","el","res","push","tableFilter","partial_filter_selector","d","values","IndexError","BaseError","constructor","msg","super","CouchDBPaginator","Paginator","total","InternalError","count","adapter","query","size","clazz","prepare","rawStatement","assign","limit","this","page","args","ctxArgs","ctx","isPreparedStatement","pagePrepared","statement","_recordCount","_totalPages","results","raw","undefined","length","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","id","pk","Metadata","get","DBKeys","originalId","_id","split","splice","revert","Sequence","parseValue","_currentPage","translateOperators","operator","operators","find","QueryError","CouchDBStatement","Statement","build","selectors","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","indexOf","val","Error","s","result","orderBySelector","rec","limitSelector","offsetSelector","skip","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","logCtx","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","alias","create","createAll","update","updateAll","prefixMethod","initialize","managedModels","repository","CouchDBRepository","assignMetadata","model","rev","setMetadata","assignMultipleMetadata","revs","i","createPrefix","record","generateId","createAllPrefix","ids","records","updatePrefix","METADATA","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","NotFoundError","message","statusCode","toString","ConnectionError","metadata","defineProperty","enumerable","configurable","writable","getMetadata","descriptor","getOwnPropertyDescriptor","removeMetadata","__decorate","final","prototype","Repository","target","source","apply","instance","carrier","metadataSource","Array","isArray","read","readAll","delete","deleteAll","contextArgs","Context","OperationKeys","UPDATE","class","_overrides","ignoreHandlers","context","ignoreValidate","oldModel","enforceDBDecorators","ON","errors","Promise","resolve","hasErrors","relations","ValidationError","oldMetadata","oldModels","all","ignoredProps","errorMessages","e","async","reAuth","con","user","pass","auth","wrapDocumentScope","dbName","db","use","original","call","testReservedAttributes","order","generateIndexDoc","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/lib/adapter.cjs
CHANGED
|
@@ -78,6 +78,9 @@ class CouchDBAdapter extends core_1.Adapter {
|
|
|
78
78
|
Statement() {
|
|
79
79
|
return new query_1.CouchDBStatement(this);
|
|
80
80
|
}
|
|
81
|
+
Paginator(query, size, clazz) {
|
|
82
|
+
return new query_1.CouchDBPaginator(this, query, size, clazz);
|
|
83
|
+
}
|
|
81
84
|
/**
|
|
82
85
|
* @description Initializes the adapter by creating indexes for all managed models
|
|
83
86
|
* @summary Sets up the necessary database indexes for all models managed by this adapter
|
package/lib/adapter.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Adapter } from "@decaf-ts/core";
|
|
2
|
-
import { BaseError } from "@decaf-ts/db-decorators";
|
|
3
|
-
import type { Context, PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
1
|
+
import { Adapter, Paginator, RawResult } from "@decaf-ts/core";
|
|
2
|
+
import { BaseError, type PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
4
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
5
4
|
import { type MangoQuery } from "./types";
|
|
6
5
|
import { CouchDBStatement } from "./query";
|
|
7
|
-
import { MaybeContextualArg } from "@decaf-ts/core";
|
|
8
|
-
import type
|
|
6
|
+
import { type MaybeContextualArg, Context } from "@decaf-ts/core";
|
|
7
|
+
import { type Constructor } from "@decaf-ts/decoration";
|
|
9
8
|
import { Repository } from "@decaf-ts/core";
|
|
10
9
|
/**
|
|
11
10
|
* @description Abstract adapter for CouchDB database operations
|
|
@@ -59,6 +58,7 @@ export declare abstract class CouchDBAdapter<CONF, CONN, C extends Context<any>>
|
|
|
59
58
|
* @return {CouchDBStatement<M, any>} A new CouchDBStatement instance
|
|
60
59
|
*/
|
|
61
60
|
Statement<M extends Model>(): CouchDBStatement<M, Adapter<CONF, CONN, MangoQuery, C>, any>;
|
|
61
|
+
Paginator<M extends Model>(query: MangoQuery, size: number, clazz: Constructor<M>): Paginator<M, any, MangoQuery>;
|
|
62
62
|
/**
|
|
63
63
|
* @description Initializes the adapter by creating indexes for all managed models
|
|
64
64
|
* @summary Sets up the necessary database indexes for all models managed by this adapter
|
|
@@ -83,7 +83,7 @@ export declare abstract class CouchDBAdapter<CONF, CONN, C extends Context<any>>
|
|
|
83
83
|
* @param {...MaybeContextualArg<C>} args - Optional `docsOnly` flag followed by contextual arguments
|
|
84
84
|
* @return {Promise<R>} A promise that resolves to the query result
|
|
85
85
|
*/
|
|
86
|
-
abstract raw<R>(rawInput: MangoQuery, ...args: MaybeContextualArg<C>): Promise<R
|
|
86
|
+
abstract raw<R, D extends boolean>(rawInput: MangoQuery, docsOnly: D, ...args: MaybeContextualArg<C>): Promise<RawResult<R, D>>;
|
|
87
87
|
/**
|
|
88
88
|
* @description Assigns metadata to a model
|
|
89
89
|
* @summary Adds revision metadata to a model as a non-enumerable property
|
package/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/adapter.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Adapter } from "@decaf-ts/core";
|
|
2
|
-
import { BaseError } from "@decaf-ts/db-decorators";
|
|
3
|
-
import type { Context, PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
1
|
+
import { Adapter, Paginator, RawResult } from "@decaf-ts/core";
|
|
2
|
+
import { BaseError, type PrimaryKeyType } from "@decaf-ts/db-decorators";
|
|
4
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
5
4
|
import { type MangoQuery } from "./types";
|
|
6
5
|
import { CouchDBStatement } from "./query";
|
|
7
|
-
import { MaybeContextualArg } from "@decaf-ts/core";
|
|
8
|
-
import type
|
|
6
|
+
import { type MaybeContextualArg, Context } from "@decaf-ts/core";
|
|
7
|
+
import { type Constructor } from "@decaf-ts/decoration";
|
|
9
8
|
import { Repository } from "@decaf-ts/core";
|
|
10
9
|
/**
|
|
11
10
|
* @description Abstract adapter for CouchDB database operations
|
|
@@ -59,6 +58,7 @@ export declare abstract class CouchDBAdapter<CONF, CONN, C extends Context<any>>
|
|
|
59
58
|
* @return {CouchDBStatement<M, any>} A new CouchDBStatement instance
|
|
60
59
|
*/
|
|
61
60
|
Statement<M extends Model>(): CouchDBStatement<M, Adapter<CONF, CONN, MangoQuery, C>, any>;
|
|
61
|
+
Paginator<M extends Model>(query: MangoQuery, size: number, clazz: Constructor<M>): Paginator<M, any, MangoQuery>;
|
|
62
62
|
/**
|
|
63
63
|
* @description Initializes the adapter by creating indexes for all managed models
|
|
64
64
|
* @summary Sets up the necessary database indexes for all models managed by this adapter
|
|
@@ -83,7 +83,7 @@ export declare abstract class CouchDBAdapter<CONF, CONN, C extends Context<any>>
|
|
|
83
83
|
* @param {...MaybeContextualArg<C>} args - Optional `docsOnly` flag followed by contextual arguments
|
|
84
84
|
* @return {Promise<R>} A promise that resolves to the query result
|
|
85
85
|
*/
|
|
86
|
-
abstract raw<R>(rawInput: MangoQuery, ...args: MaybeContextualArg<C>): Promise<R
|
|
86
|
+
abstract raw<R, D extends boolean>(rawInput: MangoQuery, docsOnly: D, ...args: MaybeContextualArg<C>): Promise<RawResult<R, D>>;
|
|
87
87
|
/**
|
|
88
88
|
* @description Assigns metadata to a model
|
|
89
89
|
* @summary Adds revision metadata to a model as a non-enumerable property
|
package/lib/esm/adapter.js
CHANGED
|
@@ -7,12 +7,12 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
|
-
import { Adapter, PersistenceKeys, ConnectionError } from "@decaf-ts/core";
|
|
10
|
+
import { Adapter, PersistenceKeys, ConnectionError, } from "@decaf-ts/core";
|
|
11
11
|
import { CouchDBKeys, reservedAttributes } from "./constants.js";
|
|
12
12
|
import { BaseError, ConflictError, InternalError, NotFoundError, prefixMethod, } from "@decaf-ts/db-decorators";
|
|
13
13
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
14
14
|
import { IndexError } from "./errors.js";
|
|
15
|
-
import { CouchDBStatement } from "./query/index.js";
|
|
15
|
+
import { CouchDBPaginator, CouchDBStatement } from "./query/index.js";
|
|
16
16
|
import { final } from "@decaf-ts/logging";
|
|
17
17
|
import { CouchDBRepository } from "./repository.js";
|
|
18
18
|
/**
|
|
@@ -75,6 +75,9 @@ export class CouchDBAdapter extends Adapter {
|
|
|
75
75
|
Statement() {
|
|
76
76
|
return new CouchDBStatement(this);
|
|
77
77
|
}
|
|
78
|
+
Paginator(query, size, clazz) {
|
|
79
|
+
return new CouchDBPaginator(this, query, size, clazz);
|
|
80
|
+
}
|
|
78
81
|
/**
|
|
79
82
|
* @description Initializes the adapter by creating indexes for all managed models
|
|
80
83
|
* @summary Sets up the necessary database indexes for all models managed by this adapter
|
package/lib/esm/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export * from "./query";
|
|
|
16
16
|
* @summary The version string of the for-couchdb package
|
|
17
17
|
* @const VERSION
|
|
18
18
|
*/
|
|
19
|
-
export declare const VERSION = "0.4.
|
|
19
|
+
export declare const VERSION = "0.4.10";
|
|
20
20
|
/**
|
|
21
21
|
* @description Stores the current package name
|
|
22
22
|
* @summary The version string of the for-couchdb package
|
package/lib/esm/index.js
CHANGED
|
@@ -17,7 +17,7 @@ export * from "./query/index.js";
|
|
|
17
17
|
* @summary The version string of the for-couchdb package
|
|
18
18
|
* @const VERSION
|
|
19
19
|
*/
|
|
20
|
-
export const VERSION = "0.4.
|
|
20
|
+
export const VERSION = "0.4.10";
|
|
21
21
|
/**
|
|
22
22
|
* @description Stores the current package name
|
|
23
23
|
* @summary The version string of the for-couchdb package
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Paginator } from "@decaf-ts/core";
|
|
1
|
+
import { MaybeContextualArg, Paginator } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { CouchDBAdapter } from "../adapter";
|
|
@@ -120,5 +120,5 @@ export declare class CouchDBPaginator<M extends Model, R> extends Paginator<M, R
|
|
|
120
120
|
* CouchDBPaginator-->>Client: Return results
|
|
121
121
|
* end
|
|
122
122
|
*/
|
|
123
|
-
page(page?: number): Promise<R[]>;
|
|
123
|
+
page(page?: number, ...args: MaybeContextualArg<any>): Promise<R[]>;
|
|
124
124
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Paginator, PagingError, Sequence } from "@decaf-ts/core";
|
|
1
|
+
import { Paginator, PagingError, Sequence, } from "@decaf-ts/core";
|
|
2
2
|
import { DBKeys, InternalError } from "@decaf-ts/db-decorators";
|
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { CouchDBKeys } from "./../constants.js";
|
|
@@ -127,8 +127,10 @@ export class CouchDBPaginator extends Paginator {
|
|
|
127
127
|
* CouchDBPaginator-->>Client: Return results
|
|
128
128
|
* end
|
|
129
129
|
*/
|
|
130
|
-
async page(page = 1) {
|
|
131
|
-
const { ctx } = this.adapter["logCtx"](
|
|
130
|
+
async page(page = 1, ...args) {
|
|
131
|
+
const { ctxArgs, ctx } = this.adapter["logCtx"](args, this.page);
|
|
132
|
+
if (this.isPreparedStatement())
|
|
133
|
+
return this.pagePrepared(page, ...ctxArgs);
|
|
132
134
|
const statement = Object.assign({}, this.statement);
|
|
133
135
|
if (!this._recordCount || !this._totalPages) {
|
|
134
136
|
this._totalPages = this._recordCount = 0;
|
|
@@ -145,7 +147,7 @@ export class CouchDBPaginator extends Paginator {
|
|
|
145
147
|
throw new PagingError("No bookmark. Did you start in the first page?");
|
|
146
148
|
statement["bookmark"] = this.bookMark;
|
|
147
149
|
}
|
|
148
|
-
const rawResult = await this.adapter.raw(statement, false, ctx);
|
|
150
|
+
const rawResult = (await this.adapter.raw(statement, false, ctx));
|
|
149
151
|
const { docs, bookmark, warning } = rawResult;
|
|
150
152
|
if (warning)
|
|
151
153
|
this.log.for(this.page).warn(warning);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../../src/query/Paginator.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../../src/query/Paginator.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,SAAS,EACT,WAAW,EACX,QAAQ,GACT,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,EAAE,KAAK,EAAE,MAAM,gCAAgC,CAAC;AAEvD,OAAO,EAAE,WAAW,EAAE,0BAAqB;AAC3C,OAAO,EAAe,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAE7D;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,OAAO,gBAAqC,SAAQ,SAIzD;IAOC;;;;;OAKG;IACH,IAAa,KAAK;QAChB,MAAM,IAAI,aAAa,CAAC,kDAAkD,CAAC,CAAC;IAC9E,CAAC;IAED;;;;;OAKG;IACH,IAAa,KAAK;QAChB,MAAM,IAAI,aAAa,CACrB,mDAAmD,CACpD,CAAC;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,YACE,OAAsC,EACtC,KAAiB,EACjB,IAAY,EACZ,KAAqB;QAErB,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACrC,CAAC;IAED;;;;;OAKG;IACO,OAAO,CAAC,YAAwB;QACxC,MAAM,KAAK,GAAe,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,YAAY,CAAC,CAAC;QAC1D,IAAI,KAAK,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;QAE1C,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC;QAExB,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA0DG;IACM,KAAK,CAAC,IAAI,CACjB,OAAe,CAAC,EAChB,GAAG,IAA6B;QAEhC,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;QACjE,IAAI,IAAI,CAAC,mBAAmB,EAAE;YAAE,OAAO,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,GAAG,OAAO,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAEpD,IAAI,CAAC,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YAC5C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;YACzC,MAAM,OAAO,GACX,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CACrB,EAAE,GAAG,SAAS,EAAE,KAAK,EAAE,SAAS,EAAE,EAClC,IAAI,EACJ,GAAG,CACJ,CAAC,IAAI,EAAE,CAAC;YACX,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC;YACnC,IAAI,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE,CAAC;gBAC1B,MAAM,IAAI,GAAG,SAAS,EAAE,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC;gBAC3C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;QAED,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAExB,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;YACf,IAAI,CAAC,IAAI,CAAC,QAAQ;gBAChB,MAAM,IAAI,WAAW,CAAC,+CAA+C,CAAC,CAAC;YACzE,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC;QACxC,CAAC;QACD,MAAM,SAAS,GAAuB,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAC3D,SAAS,EACT,KAAK,EACL,GAAG,CACJ,CAAQ,CAAC;QAEV,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,SAAS,CAAC;QAC9C,IAAI,OAAO;YAAE,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,WAAW,CAAC,6BAA6B,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAChC,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CACvB,IAAI,CAAC,KAAK,EACV,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,EAAY,CAAC,CACtC,EAAE,IAAI,CAAC;QACR,MAAM,OAAO,GACX,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,CAAC,MAAM;YACzC,CAAC,CAAC,IAAI,CAAC,sCAAsC;YAC7C,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;gBAClB,qDAAqD;gBACrD,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;gBACtD,UAAU,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,wBAAwB;gBACjD,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CACxB,CAAC,EACD,IAAI,CAAC,KAAK,EACV,QAAQ,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,EACjE,SAAS,EACT,GAAG,CACJ,CAAC;YACJ,CAAC,CAAC,CAAC;QACT,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;QACzB,OAAO,OAAO,CAAC;IACjB,CAAC;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Condition,
|
|
1
|
+
import { Condition, Statement } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import type { Context } from "@decaf-ts/db-decorators";
|
|
@@ -82,15 +82,6 @@ export declare class CouchDBStatement<M extends Model, A extends Adapter<any, an
|
|
|
82
82
|
* Statement-->>Statement: Return query
|
|
83
83
|
*/
|
|
84
84
|
protected build(): MangoQuery;
|
|
85
|
-
/**
|
|
86
|
-
* @description Creates a paginator for the statement
|
|
87
|
-
* @summary Builds the query and returns a CouchDBPaginator for paginated results
|
|
88
|
-
* @template R - The result type
|
|
89
|
-
* @param {number} size - The page size
|
|
90
|
-
* @return {Promise<Paginator<M, R, MangoQuery>>} A promise that resolves to a paginator
|
|
91
|
-
* @throws {InternalError} If there's an error building the query
|
|
92
|
-
*/
|
|
93
|
-
paginate<R>(size: number): Promise<Paginator<M, R, MangoQuery>>;
|
|
94
85
|
/**
|
|
95
86
|
* @description Processes a record from CouchDB
|
|
96
87
|
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
@@ -3,8 +3,7 @@ import { Model } from "@decaf-ts/decorator-validation";
|
|
|
3
3
|
import { translateOperators } from "./translate.js";
|
|
4
4
|
import { CouchDBKeys } from "./../constants.js";
|
|
5
5
|
import { CouchDBGroupOperator, CouchDBOperator, CouchDBQueryLimit, } from "./constants.js";
|
|
6
|
-
import {
|
|
7
|
-
import { DBKeys, InternalError } from "@decaf-ts/db-decorators";
|
|
6
|
+
import { DBKeys } from "@decaf-ts/db-decorators";
|
|
8
7
|
import { Metadata } from "@decaf-ts/decoration";
|
|
9
8
|
/**
|
|
10
9
|
* @description Statement builder for CouchDB Mango queries
|
|
@@ -164,23 +163,6 @@ export class CouchDBStatement extends Statement {
|
|
|
164
163
|
query.skip = this.offsetSelector;
|
|
165
164
|
return query;
|
|
166
165
|
}
|
|
167
|
-
/**
|
|
168
|
-
* @description Creates a paginator for the statement
|
|
169
|
-
* @summary Builds the query and returns a CouchDBPaginator for paginated results
|
|
170
|
-
* @template R - The result type
|
|
171
|
-
* @param {number} size - The page size
|
|
172
|
-
* @return {Promise<Paginator<M, R, MangoQuery>>} A promise that resolves to a paginator
|
|
173
|
-
* @throws {InternalError} If there's an error building the query
|
|
174
|
-
*/
|
|
175
|
-
async paginate(size) {
|
|
176
|
-
try {
|
|
177
|
-
const query = this.build();
|
|
178
|
-
return new CouchDBPaginator(this.adapter, query, size, this.fromSelector);
|
|
179
|
-
}
|
|
180
|
-
catch (e) {
|
|
181
|
-
throw new InternalError(e);
|
|
182
|
-
}
|
|
183
|
-
}
|
|
184
166
|
/**
|
|
185
167
|
* @description Processes a record from CouchDB
|
|
186
168
|
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../../src/query/Statement.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,EACb,QAAQ,
|
|
1
|
+
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../../src/query/Statement.ts"],"names":[],"mappings":"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"}
|
package/lib/index.cjs
CHANGED
|
@@ -34,7 +34,7 @@ __exportStar(require("./query/index.cjs"), exports);
|
|
|
34
34
|
* @summary The version string of the for-couchdb package
|
|
35
35
|
* @const VERSION
|
|
36
36
|
*/
|
|
37
|
-
exports.VERSION = "0.4.
|
|
37
|
+
exports.VERSION = "0.4.10";
|
|
38
38
|
/**
|
|
39
39
|
* @description Stores the current package name
|
|
40
40
|
* @summary The version string of the for-couchdb package
|
package/lib/index.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export * from "./query";
|
|
|
16
16
|
* @summary The version string of the for-couchdb package
|
|
17
17
|
* @const VERSION
|
|
18
18
|
*/
|
|
19
|
-
export declare const VERSION = "0.4.
|
|
19
|
+
export declare const VERSION = "0.4.10";
|
|
20
20
|
/**
|
|
21
21
|
* @description Stores the current package name
|
|
22
22
|
* @summary The version string of the for-couchdb package
|
package/lib/query/Paginator.cjs
CHANGED
|
@@ -130,8 +130,10 @@ class CouchDBPaginator extends core_1.Paginator {
|
|
|
130
130
|
* CouchDBPaginator-->>Client: Return results
|
|
131
131
|
* end
|
|
132
132
|
*/
|
|
133
|
-
async page(page = 1) {
|
|
134
|
-
const { ctx } = this.adapter["logCtx"](
|
|
133
|
+
async page(page = 1, ...args) {
|
|
134
|
+
const { ctxArgs, ctx } = this.adapter["logCtx"](args, this.page);
|
|
135
|
+
if (this.isPreparedStatement())
|
|
136
|
+
return this.pagePrepared(page, ...ctxArgs);
|
|
135
137
|
const statement = Object.assign({}, this.statement);
|
|
136
138
|
if (!this._recordCount || !this._totalPages) {
|
|
137
139
|
this._totalPages = this._recordCount = 0;
|
|
@@ -148,7 +150,7 @@ class CouchDBPaginator extends core_1.Paginator {
|
|
|
148
150
|
throw new core_1.PagingError("No bookmark. Did you start in the first page?");
|
|
149
151
|
statement["bookmark"] = this.bookMark;
|
|
150
152
|
}
|
|
151
|
-
const rawResult = await this.adapter.raw(statement, false, ctx);
|
|
153
|
+
const rawResult = (await this.adapter.raw(statement, false, ctx));
|
|
152
154
|
const { docs, bookmark, warning } = rawResult;
|
|
153
155
|
if (warning)
|
|
154
156
|
this.log.for(this.page).warn(warning);
|
package/lib/query/Paginator.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Paginator } from "@decaf-ts/core";
|
|
1
|
+
import { MaybeContextualArg, Paginator } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { CouchDBAdapter } from "../adapter";
|
|
@@ -120,5 +120,5 @@ export declare class CouchDBPaginator<M extends Model, R> extends Paginator<M, R
|
|
|
120
120
|
* CouchDBPaginator-->>Client: Return results
|
|
121
121
|
* end
|
|
122
122
|
*/
|
|
123
|
-
page(page?: number): Promise<R[]>;
|
|
123
|
+
page(page?: number, ...args: MaybeContextualArg<any>): Promise<R[]>;
|
|
124
124
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../src/query/Paginator.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../src/query/Paginator.ts"],"names":[],"mappings":"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"}
|
package/lib/query/Statement.cjs
CHANGED
|
@@ -6,7 +6,6 @@ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
|
6
6
|
const translate_1 = require("./translate.cjs");
|
|
7
7
|
const constants_1 = require("./../constants.cjs");
|
|
8
8
|
const constants_2 = require("./constants.cjs");
|
|
9
|
-
const Paginator_1 = require("./Paginator.cjs");
|
|
10
9
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
11
10
|
const decoration_1 = require("@decaf-ts/decoration");
|
|
12
11
|
/**
|
|
@@ -167,23 +166,6 @@ class CouchDBStatement extends core_1.Statement {
|
|
|
167
166
|
query.skip = this.offsetSelector;
|
|
168
167
|
return query;
|
|
169
168
|
}
|
|
170
|
-
/**
|
|
171
|
-
* @description Creates a paginator for the statement
|
|
172
|
-
* @summary Builds the query and returns a CouchDBPaginator for paginated results
|
|
173
|
-
* @template R - The result type
|
|
174
|
-
* @param {number} size - The page size
|
|
175
|
-
* @return {Promise<Paginator<M, R, MangoQuery>>} A promise that resolves to a paginator
|
|
176
|
-
* @throws {InternalError} If there's an error building the query
|
|
177
|
-
*/
|
|
178
|
-
async paginate(size) {
|
|
179
|
-
try {
|
|
180
|
-
const query = this.build();
|
|
181
|
-
return new Paginator_1.CouchDBPaginator(this.adapter, query, size, this.fromSelector);
|
|
182
|
-
}
|
|
183
|
-
catch (e) {
|
|
184
|
-
throw new db_decorators_1.InternalError(e);
|
|
185
|
-
}
|
|
186
|
-
}
|
|
187
169
|
/**
|
|
188
170
|
* @description Processes a record from CouchDB
|
|
189
171
|
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
package/lib/query/Statement.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Condition,
|
|
1
|
+
import { Condition, Statement } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
3
|
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import type { Context } from "@decaf-ts/db-decorators";
|
|
@@ -82,15 +82,6 @@ export declare class CouchDBStatement<M extends Model, A extends Adapter<any, an
|
|
|
82
82
|
* Statement-->>Statement: Return query
|
|
83
83
|
*/
|
|
84
84
|
protected build(): MangoQuery;
|
|
85
|
-
/**
|
|
86
|
-
* @description Creates a paginator for the statement
|
|
87
|
-
* @summary Builds the query and returns a CouchDBPaginator for paginated results
|
|
88
|
-
* @template R - The result type
|
|
89
|
-
* @param {number} size - The page size
|
|
90
|
-
* @return {Promise<Paginator<M, R, MangoQuery>>} A promise that resolves to a paginator
|
|
91
|
-
* @throws {InternalError} If there's an error building the query
|
|
92
|
-
*/
|
|
93
|
-
paginate<R>(size: number): Promise<Paginator<M, R, MangoQuery>>;
|
|
94
85
|
/**
|
|
95
86
|
* @description Processes a record from CouchDB
|
|
96
87
|
* @summary Extracts the ID from a CouchDB document and reverts it to a model instance
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/query/Statement.ts"],"names":[],"mappings":";;;AAAA,
|
|
1
|
+
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/query/Statement.ts"],"names":[],"mappings":";;;AAAA,yCAOwB;AAExB,yEAAuD;AACvD,+CAAiD;AACjD,kDAA2C;AAC3C,+CAIqB;AACrB,2DAAiD;AAEjD,qDAAgD;AAGhD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAa,gBAIX,SAAQ,gBAA8B;IACtC,YAAY,OAAU;QACpB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACO,KAAK;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,SAAS,GAAkB,EAAE,CAAC;QACpC,SAAS,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAClC,SAAS,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,4BAAK,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAClE,MAAM,KAAK,GAAe,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;QAClD,IAAI,IAAI,CAAC,cAAc;YAAE,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,cAA0B,CAAC;QAExE,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,MAAM,SAAS,GAAkB,IAAI,CAAC,cAAc,CAClD,gBAAS,CAAC,GAAG,CACX,IAAI,CAAC,cAAc,EACnB,gBAAS,CAAC,SAAS,CAAI,uBAAW,CAAC,KAAgB,CAAC,CAAC,EAAE,CACrD,KAAK,CAAC,QAAQ,CAAC,uBAAW,CAAC,KAAK,CAAC,CAClC,CACF,CACF,CAAC,QAAQ,CAAC;YACX,MAAM,YAAY,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAoB,CAAC;YAC/D,IACE,YAAY,CAAC,MAAM,KAAK,CAAC;gBACzB,MAAM,CAAC,MAAM,CAAC,gCAAoB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAEnE,QAAQ,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;oBACxB,KAAK,gCAAoB,CAAC,GAAG;wBAC3B,SAAS,CAAC,gCAAoB,CAAC,GAAG,CAAC,GAAG;4BACpC,GAAG,MAAM,CAAC,MAAM,CACd,SAAS,CAAC,gCAAoB,CAAC,GAAG,CAAkB,CACrD,CAAC,MAAM,CAAC,CAAC,KAAsB,EAAE,GAAQ,EAAE,EAAE;gCAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gCAC9B,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;oCACnB,MAAM,IAAI,KAAK,CACb,gDAAgD,CACjD,CAAC;gCACJ,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;gCAClB,IAAI,CAAC,KAAK,gCAAoB,CAAC,GAAG;oCAChC,KAAK,CAAC,IAAI,CAAC,GAAI,GAAG,CAAC,CAAC,CAAW,CAAC,CAAC;;oCAC9B,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gCACrB,OAAO,KAAK,CAAC;4BACf,CAAC,EAAE,EAAE,CAAC;yBACP,CAAC;wBACF,KAAK,CAAC,QAAQ,GAAG,SAAS,CAAC;wBAC3B,MAAM;oBACR,KAAK,gCAAoB,CAAC,EAAE,CAAC,CAAC,CAAC;wBAC7B,MAAM,CAAC,GAAqB,EAAE,CAAC;wBAC/B,CAAC,CAAC,gCAAoB,CAAC,GAAG,CAAC,GAAG;4BAC5B,SAAS;4BACT,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;gCACnD,MAAM,MAAM,GAAqB,EAAE,CAAC;gCACpC,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gCAClB,OAAO,MAAM,CAAC;4BAChB,CAAC,CAAC;yBACH,CAAC;wBACF,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC;wBACnB,MAAM;oBACR,CAAC;oBACD;wBACE,MAAM,IAAI,KAAK,CAAC,2BAA2B,CAAC,CAAC;gBACjD,CAAC;iBACE,CAAC;gBACJ,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,EAAE;oBAC/C,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;wBACrB,GAAG,CAAC,IAAI,CACN,KAAK,GAAG,2CAA2C,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CACnF,CAAC;oBACJ,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;gBAC5B,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,KAAK,CAAC,IAAI,GAAG,KAAK,CAAC,IAAI,IAAI,EAAE,CAAC;YAC9B,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,IAAK,EAAoB,CAAC;YACzD,MAAM,CAAC,QAAQ,EAAE,KAAK,CAAC,GAAG,IAAI,CAAC,eAG9B,CAAC;YACF,MAAM,GAAG,GAAQ,EAAE,CAAC;YACpB,GAAG,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC;YACrB,KAAK,CAAC,IAAc,CAAC,IAAI,CAAC,GAAU,CAAC,CAAC;YACvC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC9B,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,EAAmB,CAAC;gBAC9C,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAmB,CAAC,2BAAe,CAAC,MAAM,CAAC;oBACjE,IAAI,CAAC;YACT,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YACvB,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC;QACnC,CAAC;aAAM,CAAC;YACN,GAAG,CAAC,IAAI,CACN,6DAA6D,6BAAiB,EAAE,CACjF,CAAC;YACF,KAAK,CAAC,KAAK,GAAG,6BAAiB,CAAC;QAClC,CAAC;QAED,IAAI,IAAI,CAAC,cAAc;YAAE,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC;QAE1D,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;;OAOG;IACO,aAAa,CACrB,CAAM,EACN,MAAe,EACf,YAA6C,EAC7C,GAAY;QAEZ,IAAI,CAAC,CAAC,uBAAW,CAAC,EAAE,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,uBAAW,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,uBAAW,CAAC,SAAS,CAAC,CAAC;YAEtE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CACxB,CAAC,EACD,IAAI,CAAC,YAAY,EACjB,eAAQ,CAAC,UAAU,CAAC,YAAY,EAAE,EAAE,CAAC,EACrC,SAAS,EACT,GAAG,CACJ,CAAC;QACJ,CAAC;QACD,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;;;OAMG;IACM,KAAK,CAAC,GAAG,CAAI,QAAoB,EAAE,GAAG,IAAW;QACxD,MAAM,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QAE5C,MAAM,OAAO,GAAU,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;QAEnE,MAAM,MAAM,GAAG,4BAAK,CAAC,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,qBAAQ,CAAC,GAAG,CACvB,IAAI,CAAC,YAAY,EACjB,qBAAQ,CAAC,GAAG,CAAC,sBAAM,CAAC,EAAE,EAAE,MAAgB,CAAC,CAC1C,EAAE,IAAI,CAAC;QAER,IAAI,CAAC,IAAI,CAAC,cAAc;YACtB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,CAAC,CAAM,CAAC;QAC3E,OAAO,OAAY,CAAC;IACtB,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAkCG;IACO,cAAc,CAAC,SAAuB;QAC9C;;;;;;;WAOG;QACH,SAAS,KAAK,CACZ,EAAiB,EACjB,IAAmB,EACnB,IAAmB;YAEnB,MAAM,MAAM,GAAe,EAAE,QAAQ,EAAE,EAAmB,EAAE,CAAC;YAC7D,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACnC,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,UAAU,EAAE,GAAG,SAIvC,CAAC;QAEF,IAAI,EAAE,GAAkB,EAAmB,CAAC;QAC5C,IACE,CAAC,oBAAa,CAAC,GAAG,EAAE,oBAAa,CAAC,EAAE,EAAE,eAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,CACzD,QAAyB,CAC1B,KAAK,CAAC,CAAC,EACR,CAAC;YACD,EAAE,CAAC,KAAe,CAAC,GAAG,EAAmB,CAAC;YACzC,EAAE,CAAC,KAAe,CAAmB,CAAC,IAAA,8BAAkB,EAAC,QAAQ,CAAC,CAAC;gBAClE,UAAU,CAAC;QACf,CAAC;aAAM,IAAI,QAAQ,KAAK,eAAQ,CAAC,GAAG,EAAE,CAAC;YACrC,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,KAAqB,CAAC,CAAC,QAAyB,CAAC;YAC1E,EAAE,CAAC,IAAA,8BAAkB,EAAC,eAAQ,CAAC,GAAG,CAAC,CAAC,GAAG,EAAmB,CAAC;YAC1D,EAAE,CAAC,IAAA,8BAAkB,EAAC,eAAQ,CAAC,GAAG,CAAC,CAAmB,CACpD,KAAsC,CAAC,KAAK,CAC9C,GAAG,UAAU,CAAC;QACjB,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,GAAQ,IAAI,CAAC,cAAc,CAAC,KAAqB,CAAC,CAAC,QAAQ,CAAC;YACrE,MAAM,GAAG,GAAQ,IAAI,CAAC,cAAc,CAAC,UAA0B,CAAC,CAAC,QAAQ,CAAC;YAC1E,EAAE,GAAG,KAAK,CAAC,IAAA,8BAAkB,EAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,QAAQ,CAAC;QAC9D,CAAC;QAED,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC1B,CAAC;CACF;AA5SD,4CA4SC"}
|