@decaf-ts/for-couchdb 0.3.15 → 0.4.1
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 +0 -1
- package/lib/adapter.d.ts +2 -2
- package/lib/adapter.js.map +1 -1
- package/lib/esm/adapter.d.ts +2 -2
- package/lib/esm/adapter.js +0 -1
- 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/indexes/generator.d.ts +2 -1
- package/lib/esm/indexes/generator.js.map +1 -1
- package/lib/esm/query/Paginator.d.ts +2 -1
- package/lib/esm/query/Paginator.js +7 -4
- package/lib/esm/query/Paginator.js.map +1 -1
- package/lib/esm/query/Statement.js +8 -6
- package/lib/esm/query/Statement.js.map +1 -1
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/indexes/generator.d.ts +2 -1
- package/lib/indexes/generator.js.map +1 -1
- package/lib/query/Paginator.cjs +6 -3
- package/lib/query/Paginator.d.ts +2 -1
- package/lib/query/Paginator.js.map +1 -1
- package/lib/query/Statement.cjs +7 -5
- package/lib/query/Statement.js.map +1 -1
- package/package.json +3 -28
package/dist/for-couchdb.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e,t,r,n,a,o){"use strict";const s=/^_.*$/g,i={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},c={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},d={AND:"$and",OR:"$or"};e.Sequence=class extends r.BaseModel{constructor(e){super(e)}},a.__decorate([r.pk(),a.__metadata("design:type",String)],e.Sequence.prototype,"id",void 0),a.__decorate([o.required(),r.index(),a.__metadata("design:type",Object)],e.Sequence.prototype,"current",void 0),e.Sequence=a.__decorate([r.table(i.SEQUENCE),o.model(),a.__metadata("design:paramtypes",[Object])],e.Sequence);class l extends r.Sequence{constructor(t,n){super(t),this.repo=r.Repository.forModel(e.Sequence,n.alias)}async current(){const{name:e,startWith:t}=this.options;try{const t=await this.repo.read(e);return this.parse(t.current)}catch(r){if(r instanceof n.NotFoundError){if(void 0===t)throw new n.InternalError("Starting value is not defined for a non existing sequence");try{return this.parse(t)}catch(e){throw new n.InternalError(`Failed to parse initial value for sequence ${t}: ${e}`)}}throw new n.InternalError(`Failed to retrieve current value for sequence ${e}: ${r}`)}}parse(e){return r.Sequence.parseValue(this.options.type,e)}async increment(t,r){const{type:a,incrementBy:o,name:s}=this.options;let i;const c=r||o;if(c%o!==0)throw new n.InternalError("Value to increment does not consider the incrementBy setting: "+o);switch(a){case"Number":i=this.parse(t)+c;break;case"BigInt":i=this.parse(t)+BigInt(c);break;default:throw new n.InternalError("Should never happen")}let d;try{d=await this.repo.update(new e.Sequence({id:s,current:i}))}catch(t){if(!(t instanceof n.NotFoundError))throw t;d=await this.repo.create(new e.Sequence({id:s,current:i}))}return d.current}async next(){const e=await this.current();return this.increment(e)}async range(e){const t=await this.current(),r=this.parse(this.options.incrementBy),a=await this.increment(t,this.parse(e)*r),o=[];for(let n=1;e>=n;n++)o.push(t+r*this.parse(n));if(o[o.length-1]!==a)throw new n.InternalError("Miscalculation of range");return o}}class u extends n.BaseError{constructor(e){super(u.name,e,404)}}class p extends r.Paginator{get total(){throw new n.InternalError("The total pages api is not available for couchdb")}get count(){throw new n.InternalError("The record count api is not available for couchdb")}constructor(e,t,r,n){super(e,t,r,n)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(e=1){const t=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...t,limit:void 0})||[];if(this._recordCount=e.length,this._recordCount>0){const e=t?.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?");t.bookmark=this.bookMark}const a=await this.adapter.raw(t,!1),{docs:o,bookmark:s,warning:c}=a;if(!this.clazz)throw new r.PagingError("No statement target defined");const d=n.findPrimaryKey(new this.clazz),l=t.fields&&t.fields.length?o:o.map(e=>{const t=e._id.split(i.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,d.id,r.Sequence.parseValue(d.props.type,t.join(i.SEPARATOR)))});return this.bookMark=s,this._currentPage=e,l}}function h(e){for(const t of[c,d]){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 f extends r.Statement{constructor(e){super(e)}build(){const e={};e[i.TABLE]={},e[i.TABLE]=r.Repository.table(this.fromSelector);const t={selector:e};if(this.selectSelector&&(t.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(r.Condition.and(this.whereCondition,r.Condition.attribute(i.TABLE).eq(t.selector[i.TABLE]))).selector,n=Object.keys(e);if(1===n.length&&-1!==Object.values(d).indexOf(n[0]))switch(n[0]){case d.AND:e[d.AND]=[...Object.values(e[d.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 n=r[0];return n===d.AND?e.push(...t[n]):e.push(t),e},[])],t.selector=e;break;case d.OR:{const r={};r[d.AND]=[e,...Object.entries(t.selector).map(([e,t])=>{const r={};return r[e]=t,r})],t.selector=r;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach(([e,r])=>{t.selector[e],t.selector[e]=r})}if(this.orderBySelector){t.sort=t.sort||[],t.selector=t.selector||{};const[e,r]=this.orderBySelector,n={};n[e]=r,t.sort.push(n),t.selector[e]||(t.selector[e]={},t.selector[e][c.BIGGER]=null)}return this.limitSelector?t.limit=this.limitSelector:t.limit=250,this.offsetSelector&&(t.skip=this.offsetSelector),t}async paginate(e){try{const t=this.build();return new p(this.adapter,t,e,this.fromSelector)}catch(e){throw new n.InternalError(e)}}processRecord(e,t,n){if(e[i.ID]){const[,...a]=e[i.ID].split(i.SEPARATOR),o=a.join("_");return this.adapter.revert(e,this.fromSelector,t,r.Sequence.parseValue(n,o))}return e}async raw(e){const t=await this.adapter.raw(e,!0),r=n.findPrimaryKey(new this.fromSelector),a=r.id,o=r.props.type;return this.selectSelector?t:t.map(e=>this.processRecord(e,a,o))}parseCondition(e){const{attr1:t,operator:n,comparison:a}=e;let o={};if(-1===[r.GroupOperator.AND,r.GroupOperator.OR,r.Operator.NOT].indexOf(n))o[t]={},o[t][h(n)]=a;else if(n===r.Operator.NOT)o=this.parseCondition(t).selector,o[h(r.Operator.NOT)]={},o[h(r.Operator.NOT)][t.attr1]=a;else{const e=this.parseCondition(t).selector,r=this.parseCondition(a).selector;o=((e,t,r)=>{const n={selector:{}};return n.selector[e]=[t,r],n})(h(n),e,r).selector}return{selector:o}}}class m 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;n.prefixMethod(this,e,this[t+"Prefix"])})}Statement(){return new f(this)}async Sequence(e){return new l(e,this)}async initialize(){const e=r.Adapter.models(this.flavour);return this.index(...e)}assignMetadata(e,t){return Object.defineProperty(e,r.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:t}),e}assignMultipleMetadata(e,t){return e.forEach((e,n)=>(r.Repository.setMetadata(e,t[n]),e)),e}createPrefix(e,t,r){const n={};return n[i.TABLE]=e,n[i.ID]=this.generateId(e,t),Object.assign(n,r),[e,t,n]}createAllPrefix(e,t,r){if(t.length!==r.length)throw new n.InternalError("Ids and models must have the same length");const a=t.map((t,n)=>{const a={};return a[i.TABLE]=e,a[i.ID]=this.generateId(e,t),Object.assign(a,r[n]),a});return[e,t,a]}updatePrefix(e,t,a){const o={};o[i.TABLE]=e,o[i.ID]=this.generateId(e,t);const s=a[r.PersistenceKeys.METADATA];if(!s)throw new n.InternalError("No revision number found for record with id "+t);return Object.assign(o,a),o[i.REV]=s,[e,t,o]}updateAllPrefix(e,t,a){if(t.length!==a.length)throw new n.InternalError("Ids and models must have the same length");const o=t.map((t,o)=>{const s={};s[i.TABLE]=e,s[i.ID]=this.generateId(e,t);const c=a[o][r.PersistenceKeys.METADATA];if(!c)throw new n.InternalError("No revision number found for record with id "+t);return Object.assign(s,a[o]),s[i.REV]=c,s});return[e,t,o]}generateId(e,t){return[e,t].join(i.SEPARATOR)}parseError(e,t){return m.parseError(e,t)}isReserved(e){return!!e.match(s)}static parseError(e,t){if(e instanceof n.BaseError)return e;let a="";if("string"==typeof e){if(a=e,a.match(/already exist|update conflict/g))return new n.ConflictError(a);if(a.match(/missing|deleted/g))return new n.NotFoundError(a)}else e.code?(a=e.code,t=t||e.message):e.statusCode?(a=e.statusCode,t=t||e.message):a=e.message;switch(a.toString()){case"401":case"412":case"409":return new n.ConflictError(t);case"404":return new n.NotFoundError(t);case"400":return a.toString().match(/No\sindex\sexists/g)?new u(e):new n.InternalError(e);default:return a.toString().match(/ECONNREFUSED/g)?new r.ConnectionError(e):new n.InternalError(e)}}}async function g(e,t,r){return e.auth(t,r)}function E(e,t,a,o,s=n.DefaultSeparator){const i=[r.PersistenceKeys.INDEX,t,e];return a&&i.push(...a),o&&i.push(o),i.join(s)}a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[]),a.__metadata("design:returntype",f)],m.prototype,"Statement",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object]),a.__metadata("design:returntype",Promise)],m.prototype,"Sequence",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object,String]),a.__metadata("design:returntype",Object)],m.prototype,"assignMetadata",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Array,Array]),a.__metadata("design:returntype",Array)],m.prototype,"assignMultipleMetadata",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Object,Object]),a.__metadata("design:returntype",void 0)],m.prototype,"createPrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Array,Array]),a.__metadata("design:returntype",void 0)],m.prototype,"createAllPrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Object,Object]),a.__metadata("design:returntype",void 0)],m.prototype,"updatePrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Array,Array]),a.__metadata("design:returntype",void 0)],m.prototype,"updateAllPrefix",null);const y="##VERSION##",_="##PACKAGE##";t.Metadata.registerLibrary(_,y),e.CouchDBAdapter=m,e.CouchDBConst={NULL:"null"},e.CouchDBGroupOperator=d,e.CouchDBKeys=i,e.CouchDBOperator=c,e.CouchDBPaginator=p,e.CouchDBQueryLimit=250,e.CouchDBSequence=l,e.CouchDBStatement=f,e.IndexError=u,e.PACKAGE_NAME=_,e.VERSION=y,e.generateIndexDoc=(e,t,r,a,o=n.DefaultSeparator)=>{const s={};let d;if(s[i.TABLE]={},s[i.TABLE][c.EQUAL]=t,a){const t={};t[e]=a;const n=(r||[]).map(e=>{const t={};return t[e]=a,t}),o={};o[i.TABLE]=a,d=[t,...n,o]}else d=[e,...r||[],i.TABLE];const l=E(e,t,r,a,o);return{index:{fields:d},ddoc:[l,i.DDOC].join(o),name:l}},e.generateIndexName=E,e.generateIndexes=e=>{const t=((e,t,r,a=n.DefaultSeparator)=>[...e.map(e=>e===i.TABLE?"table":e),...r||[],...t?[t]:[],i.INDEX].join(a))([i.TABLE]),a={};return a[t]={index:{fields:[i.TABLE]},name:t,ddoc:t,type:"json"},e.forEach(e=>{const t=r.Repository.indexes(e);Object.entries(t).forEach(([t,o])=>{const s=Object.keys(o)[0];let{directions:d,compositions:l}=o[s];const u=r.Repository.table(e);function p(e){const o=[u,t,...l,r.PersistenceKeys.INDEX].join(n.DefaultSeparator);if(a[o]={index:{fields:[t,...l,i.TABLE].reduce((t,r)=>{if(e){const n={};n[r]=e,t.push(n)}else t.push(r);return t},[])},name:o,ddoc:o,type:"json"},!e){const e={};e[i.TABLE]={},e[i.TABLE][c.EQUAL]=u,a[o].index.partial_filter_selector=e}}l=l||[],p(),d&&d.forEach(e=>p(e))})}),Object.values(a)},e.reAuth=g,e.reservedAttributes=s,e.testReservedAttributes=e=>e.match(/^_.*$/g),e.translateOperators=h,e.wrapDocumentScope=(e,t,r,n)=>{const a=e.use(t);return["insert","get","put","destroy","find"].forEach(t=>{const o=a[t];Object.defineProperty(a,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await g(e,r,n),o.call(a,...t))})}),Object.defineProperty(a,i.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),a}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decoration"),require("@decaf-ts/core"),require("@decaf-ts/db-decorators"),require("tslib"),require("@decaf-ts/decorator-validation"),require("reflect-metadata")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/core","@decaf-ts/db-decorators","tslib","@decaf-ts/decorator-validation","reflect-metadata"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-couchdb"]={},e.decafTsDecoration,e.decafTsCore,e.decafTsDbDecorators,e.tslib,e.decafTsDecoratorValidation);
|
|
1
|
+
var e,t;e=this,t=function(e,t,r,n,a,o){"use strict";const s=/^_.*$/g,i={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},c={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},d={AND:"$and",OR:"$or"};e.Sequence=class extends r.BaseModel{constructor(e){super(e)}},a.__decorate([r.pk(),a.__metadata("design:type",String)],e.Sequence.prototype,"id",void 0),a.__decorate([o.required(),r.index(),a.__metadata("design:type",Object)],e.Sequence.prototype,"current",void 0),e.Sequence=a.__decorate([r.table(i.SEQUENCE),o.model(),a.__metadata("design:paramtypes",[Object])],e.Sequence);class l extends r.Sequence{constructor(t,n){super(t),this.repo=r.Repository.forModel(e.Sequence,n.alias)}async current(){const{name:e,startWith:t}=this.options;try{const t=await this.repo.read(e);return this.parse(t.current)}catch(r){if(r instanceof n.NotFoundError){if(void 0===t)throw new n.InternalError("Starting value is not defined for a non existing sequence");try{return this.parse(t)}catch(e){throw new n.InternalError(`Failed to parse initial value for sequence ${t}: ${e}`)}}throw new n.InternalError(`Failed to retrieve current value for sequence ${e}: ${r}`)}}parse(e){return r.Sequence.parseValue(this.options.type,e)}async increment(t,r){const{type:a,incrementBy:o,name:s}=this.options;let i;const c=r||o;if(c%o!==0)throw new n.InternalError("Value to increment does not consider the incrementBy setting: "+o);switch(a){case"Number":i=this.parse(t)+c;break;case"BigInt":i=this.parse(t)+BigInt(c);break;default:throw new n.InternalError("Should never happen")}let d;try{d=await this.repo.update(new e.Sequence({id:s,current:i}))}catch(t){if(!(t instanceof n.NotFoundError))throw t;d=await this.repo.create(new e.Sequence({id:s,current:i}))}return d.current}async next(){const e=await this.current();return this.increment(e)}async range(e){const t=await this.current(),r=this.parse(this.options.incrementBy),a=await this.increment(t,this.parse(e)*r),o=[];for(let n=1;e>=n;n++)o.push(t+r*this.parse(n));if(o[o.length-1]!==a)throw new n.InternalError("Miscalculation of range");return o}}class u extends n.BaseError{constructor(e){super(u.name,e,404)}}class p extends r.Paginator{get total(){throw new n.InternalError("The total pages api is not available for couchdb")}get count(){throw new n.InternalError("The record count api is not available for couchdb")}constructor(e,t,r,n){super(e,t,r,n)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(e=1){const a=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...a,limit:void 0})||[];if(this._recordCount=e.length,this._recordCount>0){const e=a?.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?");a.bookmark=this.bookMark}const s=await this.adapter.raw(a,!1),{docs:c,bookmark:d,warning:l}=s;if(l&&this.log.for(this.page).warn(l),!this.clazz)throw new r.PagingError("No statement target defined");const u=o.Model.pk(this.clazz),p=t.Metadata.get(this.clazz,t.Metadata.key(n.DBKeys.ID,u))?.type,h=a.fields&&a.fields.length?c:c.map(e=>{const t=e._id.split(i.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,u,r.Sequence.parseValue(p,t.join(i.SEPARATOR)))});return this.bookMark=d,this._currentPage=e,h}}function h(e){for(const t of[c,d]){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 f extends r.Statement{constructor(e){super(e)}build(){const e=this.log.for(this.build),t={};t[i.TABLE]={},t[i.TABLE]=r.Repository.table(this.fromSelector);const n={selector:t};if(this.selectSelector&&(n.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(r.Condition.and(this.whereCondition,r.Condition.attribute(i.TABLE).eq(n.selector[i.TABLE]))).selector,a=Object.keys(t);if(1===a.length&&-1!==Object.values(d).indexOf(a[0]))switch(a[0]){case d.AND:t[d.AND]=[...Object.values(t[d.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 n=r[0];return n===d.AND?e.push(...t[n]):e.push(t),e},[])],n.selector=t;break;case d.OR:{const e={};e[d.AND]=[t,...Object.entries(n.selector).map(([e,t])=>{const r={};return r[e]=t,r})],n.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach(([t,r])=>{n.selector[t]&&e.warn(`A ${t} query param is about to be overridden: ${n.selector[t]} by ${r}`),n.selector[t]=r})}if(this.orderBySelector){n.sort=n.sort||[],n.selector=n.selector||{};const[e,t]=this.orderBySelector,r={};r[e]=t,n.sort.push(r),n.selector[e]||(n.selector[e]={},n.selector[e][c.BIGGER]=null)}return this.limitSelector?n.limit=this.limitSelector:(e.warn("No limit selector defined. Using default couchdb limit of 250"),n.limit=250),this.offsetSelector&&(n.skip=this.offsetSelector),n}async paginate(e){try{const t=this.build();return new p(this.adapter,t,e,this.fromSelector)}catch(e){throw new n.InternalError(e)}}processRecord(e,t,n){if(e[i.ID]){const[,...a]=e[i.ID].split(i.SEPARATOR),o=a.join("_");return this.adapter.revert(e,this.fromSelector,t,r.Sequence.parseValue(n,o))}return e}async raw(e){const r=await this.adapter.raw(e,!0),a=o.Model.pk(this.fromSelector),s=t.Metadata.get(this.fromSelector,t.Metadata.key(n.DBKeys.ID,a))?.type;return this.selectSelector?r:r.map(e=>this.processRecord(e,a,s))}parseCondition(e){const{attr1:t,operator:n,comparison:a}=e;let o={};if(-1===[r.GroupOperator.AND,r.GroupOperator.OR,r.Operator.NOT].indexOf(n))o[t]={},o[t][h(n)]=a;else if(n===r.Operator.NOT)o=this.parseCondition(t).selector,o[h(r.Operator.NOT)]={},o[h(r.Operator.NOT)][t.attr1]=a;else{const e=this.parseCondition(t).selector,r=this.parseCondition(a).selector;o=((e,t,r)=>{const n={selector:{}};return n.selector[e]=[t,r],n})(h(n),e,r).selector}return{selector:o}}}class g 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;n.prefixMethod(this,e,this[t+"Prefix"])})}Statement(){return new f(this)}async Sequence(e){return new l(e,this)}async initialize(){const e=r.Adapter.models(this.flavour);return this.index(...e)}assignMetadata(e,t){return Object.defineProperty(e,r.PersistenceKeys.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:t}),e}assignMultipleMetadata(e,t){return e.forEach((e,n)=>(r.Repository.setMetadata(e,t[n]),e)),e}createPrefix(e,t,r){const n={};return n[i.TABLE]=e,n[i.ID]=this.generateId(e,t),Object.assign(n,r),[e,t,n]}createAllPrefix(e,t,r){if(t.length!==r.length)throw new n.InternalError("Ids and models must have the same length");const a=t.map((t,n)=>{const a={};return a[i.TABLE]=e,a[i.ID]=this.generateId(e,t),Object.assign(a,r[n]),a});return[e,t,a]}updatePrefix(e,t,a){const o={};o[i.TABLE]=e,o[i.ID]=this.generateId(e,t);const s=a[r.PersistenceKeys.METADATA];if(!s)throw new n.InternalError("No revision number found for record with id "+t);return Object.assign(o,a),o[i.REV]=s,[e,t,o]}updateAllPrefix(e,t,a){if(t.length!==a.length)throw new n.InternalError("Ids and models must have the same length");const o=t.map((t,o)=>{const s={};s[i.TABLE]=e,s[i.ID]=this.generateId(e,t);const c=a[o][r.PersistenceKeys.METADATA];if(!c)throw new n.InternalError("No revision number found for record with id "+t);return Object.assign(s,a[o]),s[i.REV]=c,s});return[e,t,o]}generateId(e,t){return[e,t].join(i.SEPARATOR)}parseError(e,t){return g.parseError(e,t)}isReserved(e){return!!e.match(s)}static parseError(e,t){if(e instanceof n.BaseError)return e;let a="";if("string"==typeof e){if(a=e,a.match(/already exist|update conflict/g))return new n.ConflictError(a);if(a.match(/missing|deleted/g))return new n.NotFoundError(a)}else e.code?(a=e.code,t=t||e.message):e.statusCode?(a=e.statusCode,t=t||e.message):a=e.message;switch(a.toString()){case"401":case"412":case"409":return new n.ConflictError(t);case"404":return new n.NotFoundError(t);case"400":return a.toString().match(/No\sindex\sexists/g)?new u(e):new n.InternalError(e);default:return a.toString().match(/ECONNREFUSED/g)?new r.ConnectionError(e):new n.InternalError(e)}}}async function m(e,t,r){return e.auth(t,r)}function y(e,t,a,o,s=n.DefaultSeparator){const i=[r.PersistenceKeys.INDEX,t,e];return a&&i.push(...a),o&&i.push(o),i.join(s)}a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[]),a.__metadata("design:returntype",f)],g.prototype,"Statement",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object]),a.__metadata("design:returntype",Promise)],g.prototype,"Sequence",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Object,String]),a.__metadata("design:returntype",Object)],g.prototype,"assignMetadata",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[Array,Array]),a.__metadata("design:returntype",Array)],g.prototype,"assignMultipleMetadata",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Object,Object]),a.__metadata("design:returntype",void 0)],g.prototype,"createPrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Array,Array]),a.__metadata("design:returntype",void 0)],g.prototype,"createAllPrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Object,Object]),a.__metadata("design:returntype",void 0)],g.prototype,"updatePrefix",null),a.__decorate([r.final(),a.__metadata("design:type",Function),a.__metadata("design:paramtypes",[String,Array,Array]),a.__metadata("design:returntype",void 0)],g.prototype,"updateAllPrefix",null);const E="##VERSION##",_="##PACKAGE##";t.Metadata.registerLibrary(_,E),e.CouchDBAdapter=g,e.CouchDBConst={NULL:"null"},e.CouchDBGroupOperator=d,e.CouchDBKeys=i,e.CouchDBOperator=c,e.CouchDBPaginator=p,e.CouchDBQueryLimit=250,e.CouchDBSequence=l,e.CouchDBStatement=f,e.IndexError=u,e.PACKAGE_NAME=_,e.VERSION=E,e.generateIndexDoc=(e,t,r,a,o=n.DefaultSeparator)=>{const s={};let d;if(s[i.TABLE]={},s[i.TABLE][c.EQUAL]=t,a){const t={};t[e]=a;const n=(r||[]).map(e=>{const t={};return t[e]=a,t}),o={};o[i.TABLE]=a,d=[t,...n,o]}else d=[e,...r||[],i.TABLE];const l=y(e,t,r,a,o);return{index:{fields:d},ddoc:[l,i.DDOC].join(o),name:l}},e.generateIndexName=y,e.generateIndexes=e=>{const t=((e,t,r,a=n.DefaultSeparator)=>[...e.map(e=>e===i.TABLE?"table":e),...r||[],...t?[t]:[],i.INDEX].join(a))([i.TABLE]),a={};return a[t]={index:{fields:[i.TABLE]},name:t,ddoc:t,type:"json"},e.forEach(e=>{const t=r.Repository.indexes(e);Object.entries(t).forEach(([t,o])=>{const s=Object.keys(o)[0];let{directions:d,compositions:l}=o[s];const u=r.Repository.table(e);function p(e){const o=[u,t,...l,r.PersistenceKeys.INDEX].join(n.DefaultSeparator);if(a[o]={index:{fields:[t,...l,i.TABLE].reduce((t,r)=>{if(e){const n={};n[r]=e,t.push(n)}else t.push(r);return t},[])},name:o,ddoc:o,type:"json"},!e){const e={};e[i.TABLE]={},e[i.TABLE][c.EQUAL]=u,a[o].index.partial_filter_selector=e}}l=l||[],p(),d&&d.forEach(e=>p(e))})}),Object.values(a)},e.reAuth=m,e.reservedAttributes=s,e.testReservedAttributes=e=>e.match(/^_.*$/g),e.translateOperators=h,e.wrapDocumentScope=(e,t,r,n)=>{const a=e.use(t);return["insert","get","put","destroy","find"].forEach(t=>{const o=a[t];Object.defineProperty(a,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await m(e,r,n),o.call(a,...t))})}),Object.defineProperty(a,i.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),a}},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/decoration"),require("@decaf-ts/core"),require("@decaf-ts/db-decorators"),require("tslib"),require("@decaf-ts/decorator-validation")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/decoration","@decaf-ts/core","@decaf-ts/db-decorators","tslib","@decaf-ts/decorator-validation"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-couchdb"]={},e.decafTsDecoration,e.decafTsCore,e.decafTsDbDecorators,e.tslib,e.decafTsDecoratorValidation);
|
|
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/model/CouchDBSequence.ts","../src/sequences/Sequence.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/utils.ts","../src/index.ts","../src/indexes/generator.ts"],"sourcesContent":[null,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","Sequence","BaseModel","constructor","seq","super","__decorate","pk","prototype","required","index","exports","table","model","CouchDBSequence","options","adapter","this","repo","Repository","forModel","Seq","alias","current","name","startWith","sequence","read","parse","e","NotFoundError","InternalError","value","parseValue","type","increment","count","incrementBy","next","toIncrementBy","BigInt","update","id","create","range","i","push","length","IndexError","BaseError","msg","CouchDBPaginator","Paginator","total","query","size","clazz","prepare","rawStatement","Object","assign","limit","page","statement","_recordCount","_totalPages","results","raw","undefined","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","pkDef","findPrimaryKey","fields","map","d","originalId","_id","split","splice","revert","props","join","_currentPage","translateOperators","operator","operators","el","keys","find","k","QueryError","CouchDBStatement","Statement","build","selectors","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","values","indexOf","reduce","accum","val","Error","s","entries","key","result","forEach","orderBySelector","sort","rec","limitSelector","offsetSelector","skip","paginate","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","createAll","updateAll","m","prefixMethod","initialize","managedModels","models","assignMetadata","rev","defineProperty","PersistenceKeys","METADATA","enumerable","configurable","writable","assignMultipleMetadata","revs","setMetadata","createPrefix","tableName","record","generateId","createAllPrefix","ids","records","updatePrefix","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","message","statusCode","toString","ConnectionError","async","reAuth","con","user","pass","auth","generateIndexName","compositions","order","separator","DefaultSeparator","final","VERSION","PACKAGE_NAME","Metadata","registerLibrary","NULL","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","ddoc","direction","n","indexes","ind","directions","generate","res","tableFilter","partial_filter_selector","dbName","db","use","original","args","call"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"for-couchdb.cjs","sources":["../src/constants.ts","../src/query/constants.ts","../src/model/CouchDBSequence.ts","../src/sequences/Sequence.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/utils.ts","../src/index.ts","../src/indexes/generator.ts"],"sourcesContent":[null,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","Sequence","BaseModel","constructor","seq","super","__decorate","pk","prototype","required","index","exports","table","model","CouchDBSequence","options","adapter","this","repo","Repository","forModel","Seq","alias","current","name","startWith","sequence","read","parse","e","NotFoundError","InternalError","value","parseValue","type","increment","count","incrementBy","next","toIncrementBy","BigInt","update","id","create","range","i","push","length","IndexError","BaseError","msg","CouchDBPaginator","Paginator","total","query","size","clazz","prepare","rawStatement","Object","assign","limit","page","statement","_recordCount","_totalPages","results","raw","undefined","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","Model","Metadata","get","key","DBKeys","fields","map","d","originalId","_id","split","splice","revert","join","_currentPage","translateOperators","operator","operators","el","keys","find","k","QueryError","CouchDBStatement","Statement","build","selectors","fromSelector","selector","selectSelector","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","values","indexOf","reduce","accum","val","Error","s","entries","result","forEach","orderBySelector","sort","rec","limitSelector","offsetSelector","skip","paginate","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","createAll","updateAll","m","prefixMethod","initialize","managedModels","models","assignMetadata","rev","defineProperty","PersistenceKeys","METADATA","enumerable","configurable","writable","assignMultipleMetadata","revs","setMetadata","createPrefix","tableName","record","generateId","createAllPrefix","ids","records","updatePrefix","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","message","statusCode","toString","ConnectionError","async","reAuth","con","user","pass","auth","generateIndexName","compositions","order","separator","DefaultSeparator","final","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","args","call"],"mappings":"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"}
|
package/dist/for-couchdb.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{Metadata as e}from"@decaf-ts/decoration";import{Repository as t,PersistenceKeys as r,pk as n,index as s,table as i,BaseModel as o,Sequence as a,Paginator as c,PagingError as l,QueryError as u,Statement as d,Condition as p,GroupOperator as h,Operator as f,final as g,Adapter as m,ConnectionError as y}from"@decaf-ts/core";import{DefaultSeparator as w,NotFoundError as E,InternalError as b,BaseError as A,findPrimaryKey as O,prefixMethod as T,ConflictError as S}from"@decaf-ts/db-decorators";import{__decorate as j,__metadata as v}from"tslib";import{required as N,model as x}from"@decaf-ts/decorator-validation";import"reflect-metadata";const D=/^_.*$/g,B={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},L=250,I={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},R={AND:"$and",OR:"$or"},P={NULL:"null"};function _(e){const n=((e,t,r,n=w)=>[...e.map(e=>e===B.TABLE?"table":e),...r||[],...t?[t]:[],B.INDEX].join(n))([B.TABLE]),s={};return s[n]={index:{fields:[B.TABLE]},name:n,ddoc:n,type:"json"},e.forEach(e=>{const n=t.indexes(e);Object.entries(n).forEach(([n,i])=>{const o=Object.keys(i)[0];let{directions:a,compositions:c}=i[o];const l=t.table(e);function u(e){const t=[l,n,...c,r.INDEX].join(w);if(s[t]={index:{fields:[n,...c,B.TABLE].reduce((t,r)=>{if(e){const n={};n[r]=e,t.push(n)}else t.push(r);return t},[])},name:t,ddoc:t,type:"json"},!e){const e={};e[B.TABLE]={},e[B.TABLE].$eq=l,s[t].index.partial_filter_selector=e}}c=c||[],u(),a&&a.forEach(e=>u(e))})}),Object.values(s)}let k=class extends o{constructor(e){super(e)}};j([n(),v("design:type",String)],k.prototype,"id",void 0),j([N(),s(),v("design:type",Object)],k.prototype,"current",void 0),k=j([i(B.SEQUENCE),x(),v("design:paramtypes",[Object])],k);class C extends a{constructor(e,r){super(e),this.repo=t.forModel(k,r.alias)}async current(){const{name:e,startWith:t}=this.options;try{const t=await this.repo.read(e);return this.parse(t.current)}catch(r){if(r instanceof E){if(void 0===t)throw new b("Starting value is not defined for a non existing sequence");try{return this.parse(t)}catch(e){throw new b(`Failed to parse initial value for sequence ${t}: ${e}`)}}throw new b(`Failed to retrieve current value for sequence ${e}: ${r}`)}}parse(e){return a.parseValue(this.options.type,e)}async increment(e,t){const{type:r,incrementBy:n,name:s}=this.options;let i;const o=t||n;if(o%n!==0)throw new b("Value to increment does not consider the incrementBy setting: "+n);switch(r){case"Number":i=this.parse(e)+o;break;case"BigInt":i=this.parse(e)+BigInt(o);break;default:throw new b("Should never happen")}let a;try{a=await this.repo.update(new k({id:s,current:i}))}catch(e){if(!(e instanceof E))throw e;a=await this.repo.create(new k({id:s,current:i}))}return a.current}async next(){const e=await this.current();return this.increment(e)}async range(e){const t=await this.current(),r=this.parse(this.options.incrementBy),n=await this.increment(t,this.parse(e)*r),s=[];for(let n=1;e>=n;n++)s.push(t+r*this.parse(n));if(s[s.length-1]!==n)throw new b("Miscalculation of range");return s}}class $ extends A{constructor(e){super($.name,e,404)}}class M extends c{get total(){throw new b("The total pages api is not available for couchdb")}get count(){throw new b("The record count api is not available for couchdb")}constructor(e,t,r,n){super(e,t,r,n)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(e=1){const t=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...t,limit:void 0})||[];if(this._recordCount=e.length,this._recordCount>0){const e=t?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/e)}}if(this.validatePage(e),1!==e){if(!this.bookMark)throw new l("No bookmark. Did you start in the first page?");t.bookmark=this.bookMark}const r=await this.adapter.raw(t,!1),{docs:n,bookmark:s,warning:i}=r;if(!this.clazz)throw new l("No statement target defined");const o=O(new this.clazz),c=t.fields&&t.fields.length?n:n.map(e=>{const t=e._id.split(B.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,o.id,a.parseValue(o.props.type,t.join(B.SEPARATOR)))});return this.bookMark=s,this._currentPage=e,c}}function F(e){for(const t of[I,R]){const r=Object.keys(t).find(t=>t===e);if(r)return t[r]}throw new u("Could not find adapter translation for operator "+e)}class q extends d{constructor(e){super(e)}build(){const e={};e[B.TABLE]={},e[B.TABLE]=t.table(this.fromSelector);const r={selector:e};if(this.selectSelector&&(r.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(p.and(this.whereCondition,p.attribute(B.TABLE).eq(r.selector[B.TABLE]))).selector,t=Object.keys(e);if(1===t.length&&-1!==Object.values(R).indexOf(t[0]))switch(t[0]){case R.AND:e[R.AND]=[...Object.values(e[R.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 n=r[0];return n===R.AND?e.push(...t[n]):e.push(t),e},[])],r.selector=e;break;case R.OR:{const t={};t[R.AND]=[e,...Object.entries(r.selector).map(([e,t])=>{const r={};return r[e]=t,r})],r.selector=t;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach(([e,t])=>{r.selector[e],r.selector[e]=t})}if(this.orderBySelector){r.sort=r.sort||[],r.selector=r.selector||{};const[e,t]=this.orderBySelector,n={};n[e]=t,r.sort.push(n),r.selector[e]||(r.selector[e]={},r.selector[e].$gt=null)}return this.limitSelector?r.limit=this.limitSelector:r.limit=250,this.offsetSelector&&(r.skip=this.offsetSelector),r}async paginate(e){try{const t=this.build();return new M(this.adapter,t,e,this.fromSelector)}catch(e){throw new b(e)}}processRecord(e,t,r){if(e[B.ID]){const[,...n]=e[B.ID].split(B.SEPARATOR),s=n.join("_");return this.adapter.revert(e,this.fromSelector,t,a.parseValue(r,s))}return e}async raw(e){const t=await this.adapter.raw(e,!0),r=O(new this.fromSelector),n=r.id,s=r.props.type;return this.selectSelector?t:t.map(e=>this.processRecord(e,n,s))}parseCondition(e){const{attr1:t,operator:r,comparison:n}=e;let s={};if(-1===[h.AND,h.OR,f.NOT].indexOf(r))s[t]={},s[t][F(r)]=n;else if(r===f.NOT)s=this.parseCondition(t).selector,s[F(f.NOT)]={},s[F(f.NOT)][t.attr1]=n;else{const e=this.parseCondition(t).selector,i=this.parseCondition(n).selector;s=((e,t,r)=>{const n={selector:{}};return n.selector[e]=[t,r],n})(F(r),e,i).selector}return{selector:s}}}class V extends m{constructor(e,t,r){super(e,t,r),[this.create,this.createAll,this.update,this.updateAll].forEach(e=>{const t=e.name;T(this,e,this[t+"Prefix"])})}Statement(){return new q(this)}async Sequence(e){return new C(e,this)}async initialize(){const e=m.models(this.flavour);return this.index(...e)}assignMetadata(e,t){return Object.defineProperty(e,r.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:t}),e}assignMultipleMetadata(e,r){return e.forEach((e,n)=>(t.setMetadata(e,r[n]),e)),e}createPrefix(e,t,r){const n={};return n[B.TABLE]=e,n[B.ID]=this.generateId(e,t),Object.assign(n,r),[e,t,n]}createAllPrefix(e,t,r){if(t.length!==r.length)throw new b("Ids and models must have the same length");const n=t.map((t,n)=>{const s={};return s[B.TABLE]=e,s[B.ID]=this.generateId(e,t),Object.assign(s,r[n]),s});return[e,t,n]}updatePrefix(e,t,n){const s={};s[B.TABLE]=e,s[B.ID]=this.generateId(e,t);const i=n[r.METADATA];if(!i)throw new b("No revision number found for record with id "+t);return Object.assign(s,n),s[B.REV]=i,[e,t,s]}updateAllPrefix(e,t,n){if(t.length!==n.length)throw new b("Ids and models must have the same length");const s=t.map((t,s)=>{const i={};i[B.TABLE]=e,i[B.ID]=this.generateId(e,t);const o=n[s][r.METADATA];if(!o)throw new b("No revision number found for record with id "+t);return Object.assign(i,n[s]),i[B.REV]=o,i});return[e,t,s]}generateId(e,t){return[e,t].join(B.SEPARATOR)}parseError(e,t){return V.parseError(e,t)}isReserved(e){return!!e.match(D)}static parseError(e,t){if(e instanceof A)return e;let r="";if("string"==typeof e){if(r=e,r.match(/already exist|update conflict/g))return new S(r);if(r.match(/missing|deleted/g))return new E(r)}else e.code?(r=e.code,t=t||e.message):e.statusCode?(r=e.statusCode,t=t||e.message):r=e.message;switch(r.toString()){case"401":case"412":case"409":return new S(t);case"404":return new E(t);case"400":return r.toString().match(/No\sindex\sexists/g)?new $(e):new b(e);default:return r.toString().match(/ECONNREFUSED/g)?new y(e):new b(e)}}}async function z(e,t,r){return e.auth(t,r)}function G(e,t,r,n){const s=e.use(t);return["insert","get","put","destroy","find"].forEach(t=>{const i=s[t];Object.defineProperty(s,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await z(e,r,n),i.call(s,...t))})}),Object.defineProperty(s,B.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),s}function Q(e){return e.match(/^_.*$/g)}function U(e,t,n,s,i=w){const o=[r.INDEX,t,e];return n&&o.push(...n),s&&o.push(s),o.join(i)}function X(e,t,r,n,s=w){const i={};let o;if(i[B.TABLE]={},i[B.TABLE].$eq=t,n){const t={};t[e]=n;const s=(r||[]).map(e=>{const t={};return t[e]=n,t}),i={};i[B.TABLE]=n,o=[t,...s,i]}else o=[e,...r||[],B.TABLE];const a=U(e,t,r,n,s);return{index:{fields:o},ddoc:[a,B.DDOC].join(s),name:a}}j([g(),v("design:type",Function),v("design:paramtypes",[]),v("design:returntype",q)],V.prototype,"Statement",null),j([g(),v("design:type",Function),v("design:paramtypes",[Object]),v("design:returntype",Promise)],V.prototype,"Sequence",null),j([g(),v("design:type",Function),v("design:paramtypes",[Object,String]),v("design:returntype",Object)],V.prototype,"assignMetadata",null),j([g(),v("design:type",Function),v("design:paramtypes",[Array,Array]),v("design:returntype",Array)],V.prototype,"assignMultipleMetadata",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Object,Object]),v("design:returntype",void 0)],V.prototype,"createPrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Array,Array]),v("design:returntype",void 0)],V.prototype,"createAllPrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Object,Object]),v("design:returntype",void 0)],V.prototype,"updatePrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Array,Array]),v("design:returntype",void 0)],V.prototype,"updateAllPrefix",null);const K="##VERSION##",W="##PACKAGE##";e.registerLibrary(W,K);export{V as CouchDBAdapter,P as CouchDBConst,R as CouchDBGroupOperator,B as CouchDBKeys,I as CouchDBOperator,M as CouchDBPaginator,L as CouchDBQueryLimit,C as CouchDBSequence,q as CouchDBStatement,$ as IndexError,W as PACKAGE_NAME,k as Sequence,K as VERSION,X as generateIndexDoc,U as generateIndexName,_ as generateIndexes,z as reAuth,D as reservedAttributes,Q as testReservedAttributes,F as translateOperators,G as wrapDocumentScope};
|
|
1
|
+
import{Metadata as e}from"@decaf-ts/decoration";import{Repository as t,PersistenceKeys as r,pk as n,index as s,table as i,BaseModel as o,Sequence as a,Paginator as c,PagingError as l,QueryError as u,Statement as d,Condition as h,GroupOperator as p,Operator as f,final as g,Adapter as m,ConnectionError as y}from"@decaf-ts/core";import{DefaultSeparator as w,NotFoundError as E,InternalError as b,BaseError as A,DBKeys as O,prefixMethod as T,ConflictError as S}from"@decaf-ts/db-decorators";import{__decorate as j,__metadata as v}from"tslib";import{required as N,model as D,Model as x}from"@decaf-ts/decorator-validation";const I=/^_.*$/g,B={SEPARATOR:"__",ID:"_id",REV:"_rev",DELETED:"_deleted",TABLE:"??table",SEQUENCE:"??sequence",DDOC:"ddoc",NATIVE:"__native",INDEX:"index"},L=250,R={EQUAL:"$eq",DIFFERENT:"$ne",BIGGER:"$gt",BIGGER_EQ:"$gte",SMALLER:"$lt",SMALLER_EQ:"$lte",NOT:"$not",IN:"$in",REGEXP:"$regex"},k={AND:"$and",OR:"$or"},P={NULL:"null"};function _(e){const n=((e,t,r,n=w)=>[...e.map(e=>e===B.TABLE?"table":e),...r||[],...t?[t]:[],B.INDEX].join(n))([B.TABLE]),s={};return s[n]={index:{fields:[B.TABLE]},name:n,ddoc:n,type:"json"},e.forEach(e=>{const n=t.indexes(e);Object.entries(n).forEach(([n,i])=>{const o=Object.keys(i)[0];let{directions:a,compositions:c}=i[o];const l=t.table(e);function u(e){const t=[l,n,...c,r.INDEX].join(w);if(s[t]={index:{fields:[n,...c,B.TABLE].reduce((t,r)=>{if(e){const n={};n[r]=e,t.push(n)}else t.push(r);return t},[])},name:t,ddoc:t,type:"json"},!e){const e={};e[B.TABLE]={},e[B.TABLE].$eq=l,s[t].index.partial_filter_selector=e}}c=c||[],u(),a&&a.forEach(e=>u(e))})}),Object.values(s)}let $=class extends o{constructor(e){super(e)}};j([n(),v("design:type",String)],$.prototype,"id",void 0),j([N(),s(),v("design:type",Object)],$.prototype,"current",void 0),$=j([i(B.SEQUENCE),D(),v("design:paramtypes",[Object])],$);class C extends a{constructor(e,r){super(e),this.repo=t.forModel($,r.alias)}async current(){const{name:e,startWith:t}=this.options;try{const t=await this.repo.read(e);return this.parse(t.current)}catch(r){if(r instanceof E){if(void 0===t)throw new b("Starting value is not defined for a non existing sequence");try{return this.parse(t)}catch(e){throw new b(`Failed to parse initial value for sequence ${t}: ${e}`)}}throw new b(`Failed to retrieve current value for sequence ${e}: ${r}`)}}parse(e){return a.parseValue(this.options.type,e)}async increment(e,t){const{type:r,incrementBy:n,name:s}=this.options;let i;const o=t||n;if(o%n!==0)throw new b("Value to increment does not consider the incrementBy setting: "+n);switch(r){case"Number":i=this.parse(e)+o;break;case"BigInt":i=this.parse(e)+BigInt(o);break;default:throw new b("Should never happen")}let a;try{a=await this.repo.update(new $({id:s,current:i}))}catch(e){if(!(e instanceof E))throw e;a=await this.repo.create(new $({id:s,current:i}))}return a.current}async next(){const e=await this.current();return this.increment(e)}async range(e){const t=await this.current(),r=this.parse(this.options.incrementBy),n=await this.increment(t,this.parse(e)*r),s=[];for(let n=1;e>=n;n++)s.push(t+r*this.parse(n));if(s[s.length-1]!==n)throw new b("Miscalculation of range");return s}}class M extends A{constructor(e){super(M.name,e,404)}}class q extends c{get total(){throw new b("The total pages api is not available for couchdb")}get count(){throw new b("The record count api is not available for couchdb")}constructor(e,t,r,n){super(e,t,r,n)}prepare(e){const t=Object.assign({},e);return t.limit&&(this.limit=t.limit),t.limit=this.size,t}async page(t=1){const r=Object.assign({},this.statement);if(!this._recordCount||!this._totalPages){this._totalPages=this._recordCount=0;const e=await this.adapter.raw({...r,limit:void 0})||[];if(this._recordCount=e.length,this._recordCount>0){const e=r?.limit||this.size;this._totalPages=Math.ceil(this._recordCount/e)}}if(this.validatePage(t),1!==t){if(!this.bookMark)throw new l("No bookmark. Did you start in the first page?");r.bookmark=this.bookMark}const n=await this.adapter.raw(r,!1),{docs:s,bookmark:i,warning:o}=n;if(o&&this.log.for(this.page).warn(o),!this.clazz)throw new l("No statement target defined");const c=x.pk(this.clazz),u=e.get(this.clazz,e.key(O.ID,c))?.type,d=r.fields&&r.fields.length?s:s.map(e=>{const t=e._id.split(B.SEPARATOR);return t.splice(0,1),this.adapter.revert(e,this.clazz,c,a.parseValue(u,t.join(B.SEPARATOR)))});return this.bookMark=i,this._currentPage=t,d}}function F(e){for(const t of[R,k]){const r=Object.keys(t).find(t=>t===e);if(r)return t[r]}throw new u("Could not find adapter translation for operator "+e)}class z extends d{constructor(e){super(e)}build(){const e=this.log.for(this.build),r={};r[B.TABLE]={},r[B.TABLE]=t.table(this.fromSelector);const n={selector:r};if(this.selectSelector&&(n.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(h.and(this.whereCondition,h.attribute(B.TABLE).eq(n.selector[B.TABLE]))).selector,r=Object.keys(t);if(1===r.length&&-1!==Object.values(k).indexOf(r[0]))switch(r[0]){case k.AND:t[k.AND]=[...Object.values(t[k.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 n=r[0];return n===k.AND?e.push(...t[n]):e.push(t),e},[])],n.selector=t;break;case k.OR:{const e={};e[k.AND]=[t,...Object.entries(n.selector).map(([e,t])=>{const r={};return r[e]=t,r})],n.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach(([t,r])=>{n.selector[t]&&e.warn(`A ${t} query param is about to be overridden: ${n.selector[t]} by ${r}`),n.selector[t]=r})}if(this.orderBySelector){n.sort=n.sort||[],n.selector=n.selector||{};const[e,t]=this.orderBySelector,r={};r[e]=t,n.sort.push(r),n.selector[e]||(n.selector[e]={},n.selector[e].$gt=null)}return this.limitSelector?n.limit=this.limitSelector:(e.warn("No limit selector defined. Using default couchdb limit of 250"),n.limit=250),this.offsetSelector&&(n.skip=this.offsetSelector),n}async paginate(e){try{const t=this.build();return new q(this.adapter,t,e,this.fromSelector)}catch(e){throw new b(e)}}processRecord(e,t,r){if(e[B.ID]){const[,...n]=e[B.ID].split(B.SEPARATOR),s=n.join("_");return this.adapter.revert(e,this.fromSelector,t,a.parseValue(r,s))}return e}async raw(t){const r=await this.adapter.raw(t,!0),n=x.pk(this.fromSelector),s=e.get(this.fromSelector,e.key(O.ID,n))?.type;return this.selectSelector?r:r.map(e=>this.processRecord(e,n,s))}parseCondition(e){const{attr1:t,operator:r,comparison:n}=e;let s={};if(-1===[p.AND,p.OR,f.NOT].indexOf(r))s[t]={},s[t][F(r)]=n;else if(r===f.NOT)s=this.parseCondition(t).selector,s[F(f.NOT)]={},s[F(f.NOT)][t.attr1]=n;else{const e=this.parseCondition(t).selector,i=this.parseCondition(n).selector;s=((e,t,r)=>{const n={selector:{}};return n.selector[e]=[t,r],n})(F(r),e,i).selector}return{selector:s}}}class V extends m{constructor(e,t,r){super(e,t,r),[this.create,this.createAll,this.update,this.updateAll].forEach(e=>{const t=e.name;T(this,e,this[t+"Prefix"])})}Statement(){return new z(this)}async Sequence(e){return new C(e,this)}async initialize(){const e=m.models(this.flavour);return this.index(...e)}assignMetadata(e,t){return Object.defineProperty(e,r.METADATA,{enumerable:!1,configurable:!1,writable:!1,value:t}),e}assignMultipleMetadata(e,r){return e.forEach((e,n)=>(t.setMetadata(e,r[n]),e)),e}createPrefix(e,t,r){const n={};return n[B.TABLE]=e,n[B.ID]=this.generateId(e,t),Object.assign(n,r),[e,t,n]}createAllPrefix(e,t,r){if(t.length!==r.length)throw new b("Ids and models must have the same length");const n=t.map((t,n)=>{const s={};return s[B.TABLE]=e,s[B.ID]=this.generateId(e,t),Object.assign(s,r[n]),s});return[e,t,n]}updatePrefix(e,t,n){const s={};s[B.TABLE]=e,s[B.ID]=this.generateId(e,t);const i=n[r.METADATA];if(!i)throw new b("No revision number found for record with id "+t);return Object.assign(s,n),s[B.REV]=i,[e,t,s]}updateAllPrefix(e,t,n){if(t.length!==n.length)throw new b("Ids and models must have the same length");const s=t.map((t,s)=>{const i={};i[B.TABLE]=e,i[B.ID]=this.generateId(e,t);const o=n[s][r.METADATA];if(!o)throw new b("No revision number found for record with id "+t);return Object.assign(i,n[s]),i[B.REV]=o,i});return[e,t,s]}generateId(e,t){return[e,t].join(B.SEPARATOR)}parseError(e,t){return V.parseError(e,t)}isReserved(e){return!!e.match(I)}static parseError(e,t){if(e instanceof A)return e;let r="";if("string"==typeof e){if(r=e,r.match(/already exist|update conflict/g))return new S(r);if(r.match(/missing|deleted/g))return new E(r)}else e.code?(r=e.code,t=t||e.message):e.statusCode?(r=e.statusCode,t=t||e.message):r=e.message;switch(r.toString()){case"401":case"412":case"409":return new S(t);case"404":return new E(t);case"400":return r.toString().match(/No\sindex\sexists/g)?new M(e):new b(e);default:return r.toString().match(/ECONNREFUSED/g)?new y(e):new b(e)}}}async function G(e,t,r){return e.auth(t,r)}function U(e,t,r,n){const s=e.use(t);return["insert","get","put","destroy","find"].forEach(t=>{const i=s[t];Object.defineProperty(s,t,{enumerable:!1,configurable:!0,value:async(...t)=>(await G(e,r,n),i.call(s,...t))})}),Object.defineProperty(s,B.NATIVE,{enumerable:!1,configurable:!1,writable:!1,value:e}),s}function Q(e){return e.match(/^_.*$/g)}function X(e,t,n,s,i=w){const o=[r.INDEX,t,e];return n&&o.push(...n),s&&o.push(s),o.join(i)}function K(e,t,r,n,s=w){const i={};let o;if(i[B.TABLE]={},i[B.TABLE].$eq=t,n){const t={};t[e]=n;const s=(r||[]).map(e=>{const t={};return t[e]=n,t}),i={};i[B.TABLE]=n,o=[t,...s,i]}else o=[e,...r||[],B.TABLE];const a=X(e,t,r,n,s);return{index:{fields:o},ddoc:[a,B.DDOC].join(s),name:a}}j([g(),v("design:type",Function),v("design:paramtypes",[]),v("design:returntype",z)],V.prototype,"Statement",null),j([g(),v("design:type",Function),v("design:paramtypes",[Object]),v("design:returntype",Promise)],V.prototype,"Sequence",null),j([g(),v("design:type",Function),v("design:paramtypes",[Object,String]),v("design:returntype",Object)],V.prototype,"assignMetadata",null),j([g(),v("design:type",Function),v("design:paramtypes",[Array,Array]),v("design:returntype",Array)],V.prototype,"assignMultipleMetadata",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Object,Object]),v("design:returntype",void 0)],V.prototype,"createPrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Array,Array]),v("design:returntype",void 0)],V.prototype,"createAllPrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Object,Object]),v("design:returntype",void 0)],V.prototype,"updatePrefix",null),j([g(),v("design:type",Function),v("design:paramtypes",[String,Array,Array]),v("design:returntype",void 0)],V.prototype,"updateAllPrefix",null);const W="##VERSION##",H="##PACKAGE##";e.registerLibrary(H,W);export{V as CouchDBAdapter,P as CouchDBConst,k as CouchDBGroupOperator,B as CouchDBKeys,R as CouchDBOperator,q as CouchDBPaginator,L as CouchDBQueryLimit,C as CouchDBSequence,z as CouchDBStatement,M as IndexError,H as PACKAGE_NAME,$ as Sequence,W as VERSION,K as generateIndexDoc,X as generateIndexName,_ as generateIndexes,G as reAuth,I as reservedAttributes,Q as testReservedAttributes,F as translateOperators,U 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/model/CouchDBSequence.ts","../src/sequences/Sequence.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/utils.ts","../src/index.ts"],"sourcesContent":[null,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","Repository","Object","entries","key","value","k","keys","directions","table","generate","sort","PersistenceKeys","reduce","accum","el","res","push","tableFilter","partial_filter_selector","d","values","Sequence","BaseModel","constructor","seq","super","__decorate","pk","prototype","required","model","CouchDBSequence","options","adapter","this","repo","forModel","Seq","alias","current","startWith","sequence","read","parse","e","NotFoundError","InternalError","parseValue","increment","count","incrementBy","next","toIncrementBy","BigInt","update","id","create","range","i","length","IndexError","BaseError","msg","CouchDBPaginator","Paginator","total","query","size","clazz","prepare","rawStatement","assign","limit","page","statement","_recordCount","_totalPages","results","raw","undefined","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","pkDef","findPrimaryKey","originalId","_id","split","splice","revert","props","_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","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","createAll","updateAll","prefixMethod","initialize","managedModels","assignMetadata","rev","defineProperty","METADATA","enumerable","configurable","writable","assignMultipleMetadata","revs","setMetadata","createPrefix","record","generateId","createAllPrefix","ids","records","updatePrefix","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","message","statusCode","toString","ConnectionError","async","reAuth","con","user","pass","auth","wrapDocumentScope","dbName","db","use","original","args","call","testReservedAttributes","order","generateIndexDoc","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","final","VERSION","PACKAGE_NAME","Metadata","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/model/CouchDBSequence.ts","../src/sequences/Sequence.ts","../src/errors.ts","../src/query/Paginator.ts","../src/query/translate.ts","../src/query/Statement.ts","../src/adapter.ts","../src/utils.ts","../src/index.ts"],"sourcesContent":[null,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","Repository","Object","entries","key","value","k","keys","directions","table","generate","sort","PersistenceKeys","reduce","accum","el","res","push","tableFilter","partial_filter_selector","d","values","Sequence","BaseModel","constructor","seq","super","__decorate","pk","prototype","required","model","CouchDBSequence","options","adapter","this","repo","forModel","Seq","alias","current","startWith","sequence","read","parse","e","NotFoundError","InternalError","parseValue","increment","count","incrementBy","next","toIncrementBy","BigInt","update","id","create","range","i","length","IndexError","BaseError","msg","CouchDBPaginator","Paginator","total","query","size","clazz","prepare","rawStatement","assign","limit","page","statement","_recordCount","_totalPages","results","raw","undefined","Math","ceil","validatePage","bookMark","PagingError","rawResult","docs","bookmark","warning","log","for","warn","Model","Metadata","get","DBKeys","originalId","_id","split","splice","revert","_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","processRecord","r","pkAttr","sequenceType","keyArgs","rawInput","attr1","comparison","op","GroupOperator","Operator","op1","op2","obj1","obj2","merge","CouchDBAdapter","Adapter","scope","flavour","createAll","updateAll","prefixMethod","initialize","managedModels","assignMetadata","rev","defineProperty","METADATA","enumerable","configurable","writable","assignMultipleMetadata","revs","setMetadata","createPrefix","record","generateId","createAllPrefix","ids","records","updatePrefix","updateAllPrefix","parseError","err","reason","isReserved","attr","match","code","ConflictError","message","statusCode","toString","ConnectionError","async","reAuth","con","user","pass","auth","wrapDocumentScope","dbName","db","use","original","args","call","testReservedAttributes","order","generateIndexDoc","partialFilterSelector","orderProp","sortedCompositions","c","sortedTable","final","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/lib/adapter.cjs
CHANGED
|
@@ -13,7 +13,6 @@ exports.CouchDBAdapter = void 0;
|
|
|
13
13
|
const core_1 = require("@decaf-ts/core");
|
|
14
14
|
const constants_1 = require("./constants.cjs");
|
|
15
15
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
16
|
-
require("reflect-metadata");
|
|
17
16
|
const Sequence_1 = require("./sequences/Sequence.cjs");
|
|
18
17
|
const errors_1 = require("./errors.cjs");
|
|
19
18
|
const query_1 = require("./query/index.cjs");
|
package/lib/adapter.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Adapter, Sequence, type SequenceOptions } from "@decaf-ts/core";
|
|
2
2
|
import { BaseError, Context, RepositoryFlags } from "@decaf-ts/db-decorators";
|
|
3
|
-
import "
|
|
4
|
-
import { Constructor, Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
5
4
|
import { MangoQuery } from "./types";
|
|
6
5
|
import { CouchDBStatement } from "./query";
|
|
6
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
7
7
|
/**
|
|
8
8
|
* @description Abstract adapter for CouchDB database operations
|
|
9
9
|
* @summary Provides a base implementation for CouchDB database operations, including CRUD operations, sequence management, and error handling
|
package/lib/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAOwB;AACxB,+CAA8D;AAC9D,2DAQiC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,yCAOwB;AACxB,+CAA8D;AAC9D,2DAQiC;AAEjC,uDAAuD;AAEvD,yCAAsC;AAEtC,6CAA2C;AAC3C,yCAAuC;AAGvC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAsB,cAKpB,SAAQ,cAAkC;IAC1C,YAAsB,KAAQ,EAAE,OAAe,EAAE,KAAc;QAC7D,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;QAC7B,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YACvE,MAAM,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;YACpB,IAAA,4BAAY,EAAC,IAAI,EAAE,CAAC,EAAG,IAAY,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,CAAC;QACxD,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IAEH,SAAS;QACP,OAAO,IAAI,wBAAgB,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IAEG,AAAN,KAAK,CAAC,QAAQ,CAAC,OAAwB;QACrC,OAAO,IAAI,0BAAe,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACM,KAAK,CAAC,UAAU;QACvB,MAAM,aAAa,GAAG,cAAO,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC,CAAC;IACtC,CAAC;IAuBD;;;;;;OAMG;IAEO,cAAc,CACtB,KAA0B,EAC1B,GAAW;QAEX,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,sBAAe,CAAC,QAAQ,EAAE;YACrD,UAAU,EAAE,KAAK;YACjB,YAAY,EAAE,KAAK;YACnB,QAAQ,EAAE,KAAK;YACf,KAAK,EAAE,GAAG;SACX,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;;;OAMG;IAEO,sBAAsB,CAC9B,MAA6B,EAC7B,IAAc;QAEd,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;YACtB,iBAAU,CAAC,WAAW,CAAC,CAAQ,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;YAC1C,OAAO,CAAC,CAAC;QACX,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;;;;;;OAOG;IAEO,YAAY,CACpB,SAAiB,EACjB,EAAmB,EACnB,KAA0B;QAE1B,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;QACtC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7B,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IAkBD;;;;;;;;OAQG;IAEO,eAAe,CACvB,SAAiB,EACjB,GAAwB,EACxB,MAA6B;QAE7B,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QAEtE,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,MAAM,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;YACtC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACxD,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAgBD;;;;;;;;OAQG;IAEH,YAAY,CACV,SAAiB,EACjB,EAAmB,EACnB,KAA0B;QAE1B,MAAM,MAAM,GAAwB,EAAE,CAAC;QACvC,MAAM,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;QACtC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;QACxD,MAAM,GAAG,GAAG,KAAK,CAAC,sBAAe,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,CAAC,GAAG;YACN,MAAM,IAAI,6BAAa,CACrB,+CAA+C,EAAE,EAAE,CACpD,CAAC;QACJ,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAC7B,MAAM,CAAC,uBAAW,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;QAC9B,OAAO,CAAC,SAAS,EAAE,EAAE,EAAE,MAAM,CAAC,CAAC;IACjC,CAAC;IAkBD;;;;;;;;OAQG;IAEO,eAAe,CACvB,SAAiB,EACjB,GAAwB,EACxB,MAA6B;QAE7B,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM;YAC9B,MAAM,IAAI,6BAAa,CAAC,0CAA0C,CAAC,CAAC;QAEtE,MAAM,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE;YACpC,MAAM,MAAM,GAAwB,EAAE,CAAC;YACvC,MAAM,CAAC,uBAAW,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;YACtC,MAAM,CAAC,uBAAW,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC;YACxD,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,sBAAe,CAAC,QAAQ,CAAC,CAAC;YACpD,IAAI,CAAC,GAAG;gBACN,MAAM,IAAI,6BAAa,CACrB,+CAA+C,EAAE,EAAE,CACpD,CAAC;YACJ,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,MAAM,CAAC,uBAAW,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;YAC9B,OAAO,MAAM,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,CAAC,SAAS,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;IACnC,CAAC;IAgBD;;;;;;OAMG;IACO,UAAU,CAAC,SAAiB,EAAE,EAAmB;QACzD,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,uBAAW,CAAC,SAAS,CAAC,CAAC;IACrD,CAAC;IAED;;;;;;OAMG;IACH,UAAU,CAAC,GAAmB,EAAE,MAAe;QAC7C,OAAO,cAAc,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;;;;OAKG;IACgB,UAAU,CAAC,IAAY;QACxC,OAAO,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,8BAAkB,CAAC,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAuDG;IACO,MAAM,CAAC,UAAU,CAAC,GAAmB,EAAE,MAAe;QAC9D,IAAI,GAAG,YAAY,yBAAS;YAAE,OAAO,GAAU,CAAC;QAChD,IAAI,IAAI,GAAW,EAAE,CAAC;QACtB,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,CAAC;YAC5B,IAAI,GAAG,GAAG,CAAC;YACX,IAAI,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC;gBAC9C,OAAO,IAAI,6BAAa,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;gBAAE,OAAO,IAAI,6BAAa,CAAC,IAAI,CAAC,CAAC;QACrE,CAAC;aAAM,IAAK,GAAW,CAAC,IAAI,EAAE,CAAC;YAC7B,IAAI,GAAI,GAAW,CAAC,IAAI,CAAC;YACzB,MAAM,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC;QACjC,CAAC;aAAM,IAAK,GAAW,CAAC,UAAU,EAAE,CAAC;YACnC,IAAI,GAAI,GAAW,CAAC,UAAU,CAAC;YAC/B,MAAM,GAAG,MAAM,IAAI,GAAG,CAAC,OAAO,CAAC;QACjC,CAAC;aAAM,CAAC;YACN,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC;QACrB,CAAC;QAED,QAAQ,IAAI,CAAC,QAAQ,EAAE,EAAE,CAAC;YACxB,KAAK,KAAK,CAAC;YACX,KAAK,KAAK,CAAC;YACX,KAAK,KAAK;gBACR,OAAO,IAAI,6BAAa,CAAC,MAAgB,CAAC,CAAC;YAC7C,KAAK,KAAK;gBACR,OAAO,IAAI,6BAAa,CAAC,MAAgB,CAAC,CAAC;YAC7C,KAAK,KAAK;gBACR,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC;oBAC7C,OAAO,IAAI,mBAAU,CAAC,GAAG,CAAC,CAAC;gBAC7B,OAAO,IAAI,6BAAa,CAAC,GAAG,CAAC,CAAC;YAChC;gBACE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC;oBACxC,OAAO,IAAI,sBAAe,CAAC,GAAG,CAAC,CAAC;gBAClC,OAAO,IAAI,6BAAa,CAAC,GAAG,CAAC,CAAC;QAClC,CAAC;IACH,CAAC;CACF;AAjZD,wCAiZC;AA5XC;IADC,IAAA,YAAK,GAAE;;;oCACsB,wBAAgB;+CAE7C;AASK;IADL,IAAA,YAAK,GAAE;;;;8CAGP;AAyCS;IADT,IAAA,YAAK,GAAE;;;;oDAYP;AAUS;IADT,IAAA,YAAK,GAAE;;;;4DAUP;AAWS;IADT,IAAA,YAAK,GAAE;;;;kDAWP;AA4BS;IADT,IAAA,YAAK,GAAE;;;;qDAiBP;AA0BD;IADC,IAAA,YAAK,GAAE;;;;kDAiBP;AA4BS;IADT,IAAA,YAAK,GAAE;;;;qDAuBP"}
|
package/lib/esm/adapter.d.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { Adapter, Sequence, type SequenceOptions } from "@decaf-ts/core";
|
|
2
2
|
import { BaseError, Context, RepositoryFlags } from "@decaf-ts/db-decorators";
|
|
3
|
-
import "
|
|
4
|
-
import { Constructor, Model } from "@decaf-ts/decorator-validation";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
5
4
|
import { MangoQuery } from "./types";
|
|
6
5
|
import { CouchDBStatement } from "./query";
|
|
6
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
7
7
|
/**
|
|
8
8
|
* @description Abstract adapter for CouchDB database operations
|
|
9
9
|
* @summary Provides a base implementation for CouchDB database operations, including CRUD operations, sequence management, and error handling
|
package/lib/esm/adapter.js
CHANGED
|
@@ -10,7 +10,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
10
10
|
import { Adapter, PersistenceKeys, ConnectionError, Repository, } 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
|
-
import "reflect-metadata";
|
|
14
13
|
import { CouchDBSequence } from "./sequences/Sequence.js";
|
|
15
14
|
import { IndexError } from "./errors.js";
|
|
16
15
|
import { CouchDBStatement } from "./query/index.js";
|
package/lib/esm/adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EACL,OAAO,EAGP,eAAe,EACf,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,uBAAoB;AAC9D,OAAO,EACL,SAAS,EACT,aAAa,EAEb,aAAa,EACb,aAAa,EACb,YAAY,GAEb,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
|
package/lib/esm/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export * from "./query";
|
|
|
18
18
|
* @summary The version string of the for-couchdb package
|
|
19
19
|
* @const VERSION
|
|
20
20
|
*/
|
|
21
|
-
export declare const VERSION = "0.
|
|
21
|
+
export declare const VERSION = "0.4.0";
|
|
22
22
|
/**
|
|
23
23
|
* @description Stores the current package name
|
|
24
24
|
* @summary The version string of the for-couchdb package
|
package/lib/esm/index.js
CHANGED
|
@@ -19,7 +19,7 @@ export * from "./query/index.js";
|
|
|
19
19
|
* @summary The version string of the for-couchdb package
|
|
20
20
|
* @const VERSION
|
|
21
21
|
*/
|
|
22
|
-
export const VERSION = "0.
|
|
22
|
+
export const VERSION = "0.4.0";
|
|
23
23
|
/**
|
|
24
24
|
* @description Stores the current package name
|
|
25
25
|
* @summary The version string of the for-couchdb package
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
2
2
|
import { CreateIndexRequest } from "../types";
|
|
3
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
3
4
|
/**
|
|
4
5
|
* @description Generates CouchDB index configurations for models
|
|
5
6
|
* @summary Creates a set of CouchDB index configurations based on the metadata of the provided models
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/indexes/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,0BAAqB;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,gCAA2B;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../../src/indexes/generator.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,eAAe,EACf,UAAU,GACX,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,0BAAqB;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,eAAe,EAAE,gCAA2B;AAIrD;;;;;;;;;GASG;AACH,SAAS,iBAAiB,CACxB,IAAc,EACd,SAA0B,EAC1B,YAAuB,EACvB,SAAS,GAAG,gBAAgB;IAE5B,OAAO;QACL,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC3D,GAAG,CAAC,YAAY,IAAI,EAAE,CAAC;QACvB,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,WAAW,CAAC,KAAK;KAClB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAM,UAAU,eAAe,CAC7B,MAAwB;IAExB,MAAM,SAAS,GAAG,iBAAiB,CAAC,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;IACzD,MAAM,OAAO,GAAuC,EAAE,CAAC;IACvD,OAAO,CAAC,SAAS,CAAC,GAAG;QACnB,KAAK,EAAE;YACL,MAAM,EAAE,CAAC,WAAW,CAAC,KAAK,CAAC;SAC5B;QACD,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,SAAS;QACf,IAAI,EAAE,MAAM;KACb,CAAC;IAEF,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QACnB,MAAM,GAAG,GAAkC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QACjE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YAC3C,MAAM,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAChC,wCAAwC;YACxC,IAAI,EAAE,UAAU,EAAE,YAAY,EAAE,GAAI,KAAa,CAAC,CAAC,CAAC,CAAC;YACrD,MAAM,SAAS,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;YACtC,YAAY,GAAG,YAAY,IAAI,EAAE,CAAC;YAElC,SAAS,QAAQ,CAAC,IAAqB;gBACrC,MAAM,IAAI,GAAG;oBACX,SAAS;oBACT,GAAG;oBACH,GAAI,YAAmB;oBACvB,eAAe,CAAC,KAAK;iBACtB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAEzB,OAAO,CAAC,IAAI,CAAC,GAAG;oBACd,KAAK,EAAE;wBACL,MAAM,EAAE,CAAC,GAAG,EAAE,GAAI,YAAmB,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,MAAM,CAC9D,CAAC,KAAY,EAAE,EAAE,EAAE,EAAE;4BACnB,IAAI,IAAI,EAAE,CAAC;gCACT,MAAM,GAAG,GAAQ,EAAE,CAAC;gCACpB,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;gCACf,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;4BAClB,CAAC;iCAAM,CAAC;gCACN,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;4BACjB,CAAC;4BACD,OAAO,KAAK,CAAC;wBACf,CAAC,EACD,EAAE,CACH;qBACF;oBACD,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,IAAI;oBACV,IAAI,EAAE,MAAM;iBACb,CAAC;gBACF,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,MAAM,WAAW,GAAwB,EAAE,CAAC;oBAC5C,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;oBACpC,WAAW,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,eAAe,CAAC,KAAK,CAAC,GAAG,SAAS,CAAC;oBAClE,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,uBAAuB,GAAG,WAAW,CAAC;gBAC5D,CAAC;YACH,CAAC;YAED,QAAQ,EAAE,CAAC;YACX,IAAI,UAAU;gBACX,UAA0C,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;AAChC,CAAC"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Paginator } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
|
-
import {
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { CouchDBAdapter } from "../adapter";
|
|
5
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
5
6
|
/**
|
|
6
7
|
* @description Paginator for CouchDB query results
|
|
7
8
|
* @summary Implements pagination for CouchDB queries using bookmarks for efficient navigation through result sets
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Paginator, PagingError, Sequence } from "@decaf-ts/core";
|
|
2
|
-
import {
|
|
2
|
+
import { DBKeys, InternalError } from "@decaf-ts/db-decorators";
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
3
4
|
import { CouchDBKeys } from "./../constants.js";
|
|
5
|
+
import { Metadata } from "@decaf-ts/decoration";
|
|
4
6
|
/**
|
|
5
7
|
* @description Paginator for CouchDB query results
|
|
6
8
|
* @summary Implements pagination for CouchDB queries using bookmarks for efficient navigation through result sets
|
|
@@ -145,17 +147,18 @@ export class CouchDBPaginator extends Paginator {
|
|
|
145
147
|
const rawResult = await this.adapter.raw(statement, false);
|
|
146
148
|
const { docs, bookmark, warning } = rawResult;
|
|
147
149
|
if (warning)
|
|
148
|
-
|
|
150
|
+
this.log.for(this.page).warn(warning);
|
|
149
151
|
if (!this.clazz)
|
|
150
152
|
throw new PagingError("No statement target defined");
|
|
151
|
-
const
|
|
153
|
+
const id = Model.pk(this.clazz);
|
|
154
|
+
const type = Metadata.get(this.clazz, Metadata.key(DBKeys.ID, id))?.type;
|
|
152
155
|
const results = statement.fields && statement.fields.length
|
|
153
156
|
? docs // has fields means its not full model
|
|
154
157
|
: docs.map((d) => {
|
|
155
158
|
//no fields means we need to revert to saving process
|
|
156
159
|
const originalId = d._id.split(CouchDBKeys.SEPARATOR);
|
|
157
160
|
originalId.splice(0, 1); // remove the table name
|
|
158
|
-
return this.adapter.revert(d, this.clazz,
|
|
161
|
+
return this.adapter.revert(d, this.clazz, id, Sequence.parseValue(type, originalId.join(CouchDBKeys.SEPARATOR)));
|
|
159
162
|
});
|
|
160
163
|
this.bookMark = bookmark;
|
|
161
164
|
this._currentPage = page;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../../src/query/Paginator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../../src/query/Paginator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { Condition, GroupOperator, Operator, Repository, Sequence, Statement, } from "@decaf-ts/core";
|
|
2
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
2
3
|
import { translateOperators } from "./translate.js";
|
|
3
4
|
import { CouchDBKeys } from "./../constants.js";
|
|
4
5
|
import { CouchDBGroupOperator, CouchDBOperator, CouchDBQueryLimit, } from "./constants.js";
|
|
5
6
|
import { CouchDBPaginator } from "./Paginator.js";
|
|
6
|
-
import {
|
|
7
|
+
import { DBKeys, InternalError } from "@decaf-ts/db-decorators";
|
|
8
|
+
import { Metadata } from "@decaf-ts/decoration";
|
|
7
9
|
/**
|
|
8
10
|
* @description Statement builder for CouchDB Mango queries
|
|
9
11
|
* @summary Provides a fluent interface for building CouchDB Mango queries with type safety
|
|
@@ -85,6 +87,7 @@ export class CouchDBStatement extends Statement {
|
|
|
85
87
|
* Statement-->>Statement: Return query
|
|
86
88
|
*/
|
|
87
89
|
build() {
|
|
90
|
+
const log = this.log.for(this.build);
|
|
88
91
|
const selectors = {};
|
|
89
92
|
selectors[CouchDBKeys.TABLE] = {};
|
|
90
93
|
selectors[CouchDBKeys.TABLE] = Repository.table(this.fromSelector);
|
|
@@ -132,7 +135,7 @@ export class CouchDBStatement extends Statement {
|
|
|
132
135
|
else {
|
|
133
136
|
Object.entries(condition).forEach(([key, val]) => {
|
|
134
137
|
if (query.selector[key])
|
|
135
|
-
|
|
138
|
+
log.warn(`A ${key} query param is about to be overridden: ${query.selector[key]} by ${val}`);
|
|
136
139
|
query.selector[key] = val;
|
|
137
140
|
});
|
|
138
141
|
}
|
|
@@ -154,7 +157,7 @@ export class CouchDBStatement extends Statement {
|
|
|
154
157
|
query.limit = this.limitSelector;
|
|
155
158
|
}
|
|
156
159
|
else {
|
|
157
|
-
|
|
160
|
+
log.warn(`No limit selector defined. Using default couchdb limit of ${CouchDBQueryLimit}`);
|
|
158
161
|
query.limit = CouchDBQueryLimit;
|
|
159
162
|
}
|
|
160
163
|
if (this.offsetSelector)
|
|
@@ -203,9 +206,8 @@ export class CouchDBStatement extends Statement {
|
|
|
203
206
|
*/
|
|
204
207
|
async raw(rawInput) {
|
|
205
208
|
const results = await this.adapter.raw(rawInput, true);
|
|
206
|
-
const
|
|
207
|
-
const
|
|
208
|
-
const type = pkDef.props.type;
|
|
209
|
+
const pkAttr = Model.pk(this.fromSelector);
|
|
210
|
+
const type = Metadata.get(this.fromSelector, Metadata.key(DBKeys.ID, pkAttr))?.type;
|
|
209
211
|
if (!this.selectSelector)
|
|
210
212
|
return results.map((r) => this.processRecord(r, pkAttr, type));
|
|
211
213
|
return results;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../../src/query/Statement.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,aAAa,EACb,QAAQ,EAGR,UAAU,EACV,QAAQ,EACR,SAAS,GACV,MAAM,gBAAgB,CAAC;
|
|
1
|
+
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../../src/query/Statement.ts"],"names":[],"mappings":"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"}
|
package/lib/index.cjs
CHANGED
|
@@ -36,7 +36,7 @@ __exportStar(require("./query/index.cjs"), exports);
|
|
|
36
36
|
* @summary The version string of the for-couchdb package
|
|
37
37
|
* @const VERSION
|
|
38
38
|
*/
|
|
39
|
-
exports.VERSION = "0.
|
|
39
|
+
exports.VERSION = "0.4.0";
|
|
40
40
|
/**
|
|
41
41
|
* @description Stores the current package name
|
|
42
42
|
* @summary The version string of the for-couchdb package
|
package/lib/index.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ export * from "./query";
|
|
|
18
18
|
* @summary The version string of the for-couchdb package
|
|
19
19
|
* @const VERSION
|
|
20
20
|
*/
|
|
21
|
-
export declare const VERSION = "0.
|
|
21
|
+
export declare const VERSION = "0.4.0";
|
|
22
22
|
/**
|
|
23
23
|
* @description Stores the current package name
|
|
24
24
|
* @summary The version string of the for-couchdb package
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
2
2
|
import { CreateIndexRequest } from "../types";
|
|
3
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
3
4
|
/**
|
|
4
5
|
* @description Generates CouchDB index configurations for models
|
|
5
6
|
* @summary Creates a set of CouchDB index configurations based on the metadata of the provided models
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/indexes/generator.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"generator.js","sourceRoot":"","sources":["../../src/indexes/generator.ts"],"names":[],"mappings":"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"}
|
package/lib/query/Paginator.cjs
CHANGED
|
@@ -3,7 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.CouchDBPaginator = void 0;
|
|
4
4
|
const core_1 = require("@decaf-ts/core");
|
|
5
5
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
6
|
+
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
6
7
|
const constants_1 = require("./../constants.cjs");
|
|
8
|
+
const decoration_1 = require("@decaf-ts/decoration");
|
|
7
9
|
/**
|
|
8
10
|
* @description Paginator for CouchDB query results
|
|
9
11
|
* @summary Implements pagination for CouchDB queries using bookmarks for efficient navigation through result sets
|
|
@@ -148,17 +150,18 @@ class CouchDBPaginator extends core_1.Paginator {
|
|
|
148
150
|
const rawResult = await this.adapter.raw(statement, false);
|
|
149
151
|
const { docs, bookmark, warning } = rawResult;
|
|
150
152
|
if (warning)
|
|
151
|
-
|
|
153
|
+
this.log.for(this.page).warn(warning);
|
|
152
154
|
if (!this.clazz)
|
|
153
155
|
throw new core_1.PagingError("No statement target defined");
|
|
154
|
-
const
|
|
156
|
+
const id = decorator_validation_1.Model.pk(this.clazz);
|
|
157
|
+
const type = decoration_1.Metadata.get(this.clazz, decoration_1.Metadata.key(db_decorators_1.DBKeys.ID, id))?.type;
|
|
155
158
|
const results = statement.fields && statement.fields.length
|
|
156
159
|
? docs // has fields means its not full model
|
|
157
160
|
: docs.map((d) => {
|
|
158
161
|
//no fields means we need to revert to saving process
|
|
159
162
|
const originalId = d._id.split(constants_1.CouchDBKeys.SEPARATOR);
|
|
160
163
|
originalId.splice(0, 1); // remove the table name
|
|
161
|
-
return this.adapter.revert(d, this.clazz,
|
|
164
|
+
return this.adapter.revert(d, this.clazz, id, core_1.Sequence.parseValue(type, originalId.join(constants_1.CouchDBKeys.SEPARATOR)));
|
|
162
165
|
});
|
|
163
166
|
this.bookMark = bookmark;
|
|
164
167
|
this._currentPage = page;
|
package/lib/query/Paginator.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { Paginator } from "@decaf-ts/core";
|
|
2
2
|
import { MangoQuery } from "../types";
|
|
3
|
-
import {
|
|
3
|
+
import { Model } from "@decaf-ts/decorator-validation";
|
|
4
4
|
import { CouchDBAdapter } from "../adapter";
|
|
5
|
+
import { Constructor } from "@decaf-ts/decoration";
|
|
5
6
|
/**
|
|
6
7
|
* @description Paginator for CouchDB query results
|
|
7
8
|
* @summary Implements pagination for CouchDB queries using bookmarks for efficient navigation through result sets
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../src/query/Paginator.ts"],"names":[],"mappings":";;;AAAA,yCAAkE;AAClE,
|
|
1
|
+
{"version":3,"file":"Paginator.js","sourceRoot":"","sources":["../../src/query/Paginator.ts"],"names":[],"mappings":"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"}
|
package/lib/query/Statement.cjs
CHANGED
|
@@ -2,11 +2,13 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.CouchDBStatement = void 0;
|
|
4
4
|
const core_1 = require("@decaf-ts/core");
|
|
5
|
+
const decorator_validation_1 = require("@decaf-ts/decorator-validation");
|
|
5
6
|
const translate_1 = require("./translate.cjs");
|
|
6
7
|
const constants_1 = require("./../constants.cjs");
|
|
7
8
|
const constants_2 = require("./constants.cjs");
|
|
8
9
|
const Paginator_1 = require("./Paginator.cjs");
|
|
9
10
|
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
11
|
+
const decoration_1 = require("@decaf-ts/decoration");
|
|
10
12
|
/**
|
|
11
13
|
* @description Statement builder for CouchDB Mango queries
|
|
12
14
|
* @summary Provides a fluent interface for building CouchDB Mango queries with type safety
|
|
@@ -88,6 +90,7 @@ class CouchDBStatement extends core_1.Statement {
|
|
|
88
90
|
* Statement-->>Statement: Return query
|
|
89
91
|
*/
|
|
90
92
|
build() {
|
|
93
|
+
const log = this.log.for(this.build);
|
|
91
94
|
const selectors = {};
|
|
92
95
|
selectors[constants_1.CouchDBKeys.TABLE] = {};
|
|
93
96
|
selectors[constants_1.CouchDBKeys.TABLE] = core_1.Repository.table(this.fromSelector);
|
|
@@ -135,7 +138,7 @@ class CouchDBStatement extends core_1.Statement {
|
|
|
135
138
|
else {
|
|
136
139
|
Object.entries(condition).forEach(([key, val]) => {
|
|
137
140
|
if (query.selector[key])
|
|
138
|
-
|
|
141
|
+
log.warn(`A ${key} query param is about to be overridden: ${query.selector[key]} by ${val}`);
|
|
139
142
|
query.selector[key] = val;
|
|
140
143
|
});
|
|
141
144
|
}
|
|
@@ -157,7 +160,7 @@ class CouchDBStatement extends core_1.Statement {
|
|
|
157
160
|
query.limit = this.limitSelector;
|
|
158
161
|
}
|
|
159
162
|
else {
|
|
160
|
-
|
|
163
|
+
log.warn(`No limit selector defined. Using default couchdb limit of ${constants_2.CouchDBQueryLimit}`);
|
|
161
164
|
query.limit = constants_2.CouchDBQueryLimit;
|
|
162
165
|
}
|
|
163
166
|
if (this.offsetSelector)
|
|
@@ -206,9 +209,8 @@ class CouchDBStatement extends core_1.Statement {
|
|
|
206
209
|
*/
|
|
207
210
|
async raw(rawInput) {
|
|
208
211
|
const results = await this.adapter.raw(rawInput, true);
|
|
209
|
-
const
|
|
210
|
-
const
|
|
211
|
-
const type = pkDef.props.type;
|
|
212
|
+
const pkAttr = decorator_validation_1.Model.pk(this.fromSelector);
|
|
213
|
+
const type = decoration_1.Metadata.get(this.fromSelector, decoration_1.Metadata.key(db_decorators_1.DBKeys.ID, pkAttr))?.type;
|
|
212
214
|
if (!this.selectSelector)
|
|
213
215
|
return results.map((r) => this.processRecord(r, pkAttr, type));
|
|
214
216
|
return results;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/query/Statement.ts"],"names":[],"mappings":";;;AAAA,yCASwB;
|
|
1
|
+
{"version":3,"file":"Statement.js","sourceRoot":"","sources":["../../src/query/Statement.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@decaf-ts/for-couchdb",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.1",
|
|
4
4
|
"description": "template for ts projects",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -83,31 +83,7 @@
|
|
|
83
83
|
"homepage": "https://github.com/decaf-ts/for-couchdb#readme",
|
|
84
84
|
"devDependencies": {
|
|
85
85
|
"@decaf-ts/utils": "latest",
|
|
86
|
-
"@
|
|
87
|
-
"@stylistic/eslint-plugin": "^4.2.0",
|
|
88
|
-
"@types/jest": "^29.5.14",
|
|
89
|
-
"clean-publish": "^5.1.0",
|
|
90
|
-
"dpdm": "^3.14.0",
|
|
91
|
-
"eslint": "^9.25.1",
|
|
92
|
-
"eslint-config-prettier": "^10.1.2",
|
|
93
|
-
"eslint-plugin-prettier": "^5.2.6",
|
|
94
|
-
"globals": "^16.0.0",
|
|
95
|
-
"jest": "^29.7.0",
|
|
96
|
-
"jest-html-reporters": "^3.1.7",
|
|
97
|
-
"jest-junit": "^16.0.0",
|
|
98
|
-
"jsdoc": "^4.0.4",
|
|
99
|
-
"jsdoc-mermaid": "^1.0.0",
|
|
100
|
-
"markdown-include": "^0.4.3",
|
|
101
|
-
"minimist": "^1.2.8",
|
|
102
|
-
"nodemon": "^3.1.9",
|
|
103
|
-
"npm-check-updates": "^18.0.0",
|
|
104
|
-
"prettier": "3.5.3",
|
|
105
|
-
"rimraf": "^6.0.1",
|
|
106
|
-
"ts-jest": "^29.3.2",
|
|
107
|
-
"ts-loader": "^9.5.2",
|
|
108
|
-
"ts-node": "^10.9.2",
|
|
109
|
-
"typescript": "^5.8.3",
|
|
110
|
-
"typescript-eslint": "^8.31.0"
|
|
86
|
+
"@types/node": "^24.5.0"
|
|
111
87
|
},
|
|
112
88
|
"peerDependencies": {
|
|
113
89
|
"@decaf-ts/core": "latest",
|
|
@@ -117,7 +93,6 @@
|
|
|
117
93
|
"@decaf-ts/injectable-decorators": "latest",
|
|
118
94
|
"@decaf-ts/logging": "latest",
|
|
119
95
|
"@decaf-ts/reflection": "latest",
|
|
120
|
-
"@decaf-ts/transactional-decorators": "latest"
|
|
121
|
-
"reflect-metadata": "^0.2.1"
|
|
96
|
+
"@decaf-ts/transactional-decorators": "latest"
|
|
122
97
|
}
|
|
123
98
|
}
|