@decaf-ts/for-nano 0.2.0 → 0.2.2

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-nano.cjs CHANGED
@@ -1,2 +1,2 @@
1
- var e,t;e=this,t=function(e,t,r,a,s,o,n){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=i(s);const d="nano";class h extends o.Dispatch{constructor(e=5e3){super(),this.timeout=e,this.attemptCounter=0,this.active=!1}close(){return super.close()}async changeHandler(e,r,s){const o=this.log.for(this.changeHandler);if(e)return o.error("Error in change request: "+e);try{r="string"==typeof r?r.split("\n").filter(e=>!!e).map(e=>JSON.parse(e)):r}catch(e){return o.error("Error parsing couchdb change feed: "+e)}const n=r.length;if(n>0){o.debug(`Received ${n} changes. processing...`);const e=r.map((e,r)=>{if(r===n-1)return void(this.observerLastUpdate===e.last_seq&&o.error(`Invalid last update check: ${this.observerLastUpdate} !== ${e.last_seq}`));const s=e,[i,c]=s.id.split(a.CouchDBKeys.SEPARATOR);return{table:i,id:c,operation:s.deleted?t.OperationKeys.DELETE:"1"===s.changes[s.changes.length-1].rev.split("-")[0]?t.OperationKeys.CREATE:t.OperationKeys.UPDATE,step:s.changes[s.changes.length-1].rev}}).reduce((e,t)=>{if(!t)return e;const{table:r,id:a,operation:s,step:o}=t;return e[r]||(e[r]={}),e[r][s]||(e[r][s]={ids:new Set,step:o}),e[r][s].ids.add(a),e[r][s].step=o,e},{});for(const t of Object.keys(e))for(const r of Object.keys(e[t]))try{await this.updateObservers(t,r,[...e[t][r].ids.values()]),this.observerLastUpdate=e[t][r].step,o.verbose(`Observer refresh dispatched by ${r} for ${t}`),o.debug("pks: "+Array.from(e[t][r].ids.values()))}catch(e){o.error(`Failed to dispatch observer refresh for ${t}, op ${r}: ${e}`)}}}async initialize(){const e=this.log.for(this.initialize).for(r);async function r(){if(!this.adapter)throw new t.InternalError("No adapter/native observed for dispatch");if(!this.active)try{this.adapter.client.changes({feed:"continuous",include_docs:!1,since:this.observerLastUpdate||"now",timeout:this.timeout},this.changeHandler.bind(this))}catch(t){if(++this.attemptCounter>3)return e.error("Failed to subscribe to couchdb changes: "+t);if(e.info(`Failed to subscribe to couchdb changes: ${t}. Retrying in 5 seconds...`),!this.active)return;return await new Promise(e=>setTimeout(e,this.timeout)),r.call(this)}}this.active=!0,r.call(this).then(()=>{this.log.info("Subscribed to couchdb changes")}).catch(e=>{throw new t.InternalError("Failed to subscribe to couchdb changes: "+e)})}}async function l(e,t,r,a){try{const t=e.get("user");a[r]=t.name}catch(e){throw new o.UnsupportedError("No User found in context. Please provide a user in the context")}}class u extends a.CouchDBAdapter{constructor(e,t){super(e,d,t)}async shutdown(){await this.shutdownProxies(),this._client&&(this._client=void 0)}getClient(){const{user:e,password:t,host:r,dbName:s}=this.config,o=u.connect(e,t,r);return a.wrapDocumentScope(o,s,e,t)}async flags(e,t,r){return Object.assign(await super.flags(e,t,r),{user:{name:this.config.user}})}Dispatch(){return new h}async index(...e){const r=a.generateIndexes(e);for(const e of r){const r=await this.client.createIndex(e),{result:a,id:s,name:o}=r;if("existing"===a)throw new t.ConflictError(`Index for table ${o} with id ${s}`)}}async create(e,r,a){let s;try{s=await this.client.insert(a)}catch(e){throw this.parseError(e)}if(!s.ok)throw new t.InternalError(`Failed to insert doc id: ${r} in table ${e}`);return this.assignMetadata(a,s.rev)}async createAll(e,r,a){let s;try{s=await this.client.bulk({docs:a})}catch(e){throw this.parseError(e)}if(!s.every(e=>!e.error)){const e=s.reduce((e,t,r)=>(t.error&&e.push(`el ${r}: ${t.error}${t.reason?" - "+t.reason:""}`),e),[]);throw new t.InternalError(e.join("\n"))}return this.assignMultipleMetadata(a,s.map(e=>e.rev))}async read(e,t){const r=this.generateId(e,t);let a;try{a=await this.client.get(r)}catch(e){throw this.parseError(e)}return this.assignMetadata(a,a._rev)}async readAll(e,r){return(await this.client.fetch({keys:r.map(t=>this.generateId(e,t))},{})).rows.map(e=>{if(e.error)throw new t.InternalError(e.error);if(e.doc){const t=Object.assign({},e.doc);return this.assignMetadata(t,e.doc[a.CouchDBKeys.REV])}throw new t.InternalError("Should be impossible")})}async update(e,r,a){let s;try{s=await this.client.insert(a)}catch(e){throw this.parseError(e)}if(!s.ok)throw new t.InternalError(`Failed to update doc id: ${r} in table ${e}`);return this.assignMetadata(a,s.rev)}async updateAll(e,r,a){let s;try{s=await this.client.bulk({docs:a})}catch(e){throw this.parseError(e)}if(!s.every(e=>!e.error)){const e=s.reduce((e,t,r)=>(t.error&&e.push(`el ${r}: ${t.error}${t.reason?" - "+t.reason:""}`),e),[]);throw new t.InternalError(e.join("\n"))}return this.assignMultipleMetadata(a,s.map(e=>e.rev))}async delete(e,t){const r=this.generateId(e,t);let a;try{a=await this.client.get(r),await this.client.destroy(r,a._rev)}catch(e){throw this.parseError(e)}return this.assignMetadata(a,a._rev)}async deleteAll(e,r){const s=this.log.for(this.deleteAll),o=await this.client.fetch({keys:r.map(t=>this.generateId(e,t))},{});return(await this.client.bulk({docs:o.rows.map(e=>(e[a.CouchDBKeys.DELETED]=!0,e))})).forEach(e=>{e.error&&s.error(e.error)}),o.rows.map(e=>{if(e.error)throw new t.InternalError(e.error);if(e.doc){const t=Object.assign({},e.doc);return this.assignMetadata(t,e.doc[a.CouchDBKeys.REV])}throw new t.InternalError("Should be impossible")})}async raw(e,t=!0){try{const r=await this.client.find(e);return r.warning&&this.log.for(this.raw).warn(r.warning),t?r.docs:r}catch(e){throw this.parseError(e)}}static connect(e,t,r="localhost:5984",a="http"){return c.default(`${a}://${e}:${t}@${r}`)}static async createDatabase(e,t){let r;try{r=await e.db.create(t)}catch(e){throw a.CouchDBAdapter.parseError(e)}const{ok:s,error:o,reason:n}=r;if(!s)throw a.CouchDBAdapter.parseError(o,n)}static async deleteDatabase(e,r){let s;try{s=await e.db.destroy(r)}catch(e){throw a.CouchDBAdapter.parseError(e)}const{ok:o}=s;if(!o)throw new t.InternalError("Failed to delete database with name "+r)}static async createUser(e,r,s,o,n=["reader","writer"]){const i=e.db.use("_users"),c={_id:"org.couchdb.user:"+s,name:s,password:o,roles:n,type:"user"};try{const a=await i.insert(c),{ok:o}=a;if(!o)throw new t.InternalError("Failed to create user "+s);if(!(await e.request({db:r,method:"put",path:"_security",body:{admins:{names:[s],roles:[]},members:{names:[s],roles:n}}})).ok)throw new t.InternalError(`Failed to authorize user ${s} to db ${r}`)}catch(e){throw a.CouchDBAdapter.parseError(e)}}static async deleteUser(e,t,r){const s=e.db.use("_users"),o="org.couchdb.user:"+r;try{const e=await s.get(o);await s.destroy(o,e._rev)}catch(e){throw a.CouchDBAdapter.parseError(e)}}static decoration(){super.decoration(),n.Decoration.flavouredAs(d).for(o.PersistenceKeys.CREATED_BY).define(t.onCreate(l),n.propMetadata(o.PersistenceKeys.CREATED_BY,{})).apply(),n.Decoration.flavouredAs(d).for(o.PersistenceKeys.UPDATED_BY).define(t.onCreateUpdate(l),n.propMetadata(o.PersistenceKeys.UPDATED_BY,{})).apply()}}o.Adapter.setCurrent(d),u.decoration();const p="##VERSION##",f="##PACKAGE##";n.Metadata.registerLibrary(f,p),e.NanoAdapter=u,e.NanoFlavour=d,e.PACKAGE_NAME=f,e.VERSION=p,e.createdByOnNanoCreateUpdate=l},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/db-decorators"),require("reflect-metadata"),require("@decaf-ts/for-couchdb"),require("nano"),require("@decaf-ts/core"),require("@decaf-ts/decoration")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/db-decorators","reflect-metadata","@decaf-ts/for-couchdb","nano","@decaf-ts/core","@decaf-ts/decoration"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-nano"]={},e.decafTsDbDecorators,e.reflectMetadata,e.decafTsForCouchdb,e.nano,e.decafTsCore,e.decafTsDecoration);
1
+ var e,t;e=this,t=function(e,t,r,a,s,o,n){"use strict";function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var c=i(a);const d="nano";class h extends o.Dispatch{constructor(e=5e3){super(),this.timeout=e,this.attemptCounter=0,this.active=!1}close(){return super.close()}async changeHandler(e,a,o,n){const i=n||this.adapter.context(t.OperationKeys.UPDATE,{},s.Model),c=i.logger.for(this.changeHandler);if(e)return c.error("Error in change request: "+e);try{a="string"==typeof a?a.split("\n").filter(e=>!!e).map(e=>JSON.parse(e)):a}catch(e){return c.error("Error parsing couchdb change feed: "+e)}const d=a.length;if(d>0){c.debug(`Received ${d} changes. processing...`);const e=a.map((e,a)=>{if(a===d-1)return void(this.observerLastUpdate===e.last_seq&&c.error(`Invalid last update check: ${this.observerLastUpdate} !== ${e.last_seq}`));const s=e,[o,n]=s.id.split(r.CouchDBKeys.SEPARATOR);return{table:o,id:n,operation:s.deleted?t.OperationKeys.DELETE:"1"===s.changes[s.changes.length-1].rev.split("-")[0]?t.OperationKeys.CREATE:t.OperationKeys.UPDATE,step:s.changes[s.changes.length-1].rev}}).reduce((e,t)=>{if(!t)return e;const{table:r,id:a,operation:s,step:o}=t;return e[r]||(e[r]={}),e[r][s]||(e[r][s]={ids:new Set,step:o}),e[r][s].ids.add(a),e[r][s].step=o,e},{});for(const t of Object.keys(e))for(const r of Object.keys(e[t]))try{await this.updateObservers(t,r,[...e[t][r].ids.values()],i),this.observerLastUpdate=e[t][r].step,c.verbose(`Observer refresh dispatched by ${r} for ${t}`),c.debug("pks: "+Array.from(e[t][r].ids.values()))}catch(e){c.error(`Failed to dispatch observer refresh for ${t}, op ${r}: ${e}`)}}}async initialize(){const e=this.log.for(this.initialize).for(r);async function r(){if(!this.adapter)throw new t.InternalError("No adapter/native observed for dispatch");if(!this.active)try{this.adapter.client.changes({feed:"continuous",include_docs:!1,since:this.observerLastUpdate||"now",timeout:this.timeout},this.changeHandler.bind(this))}catch(t){if(++this.attemptCounter>3)return e.error("Failed to subscribe to couchdb changes: "+t);if(e.info(`Failed to subscribe to couchdb changes: ${t}. Retrying in 5 seconds...`),!this.active)return;return await new Promise(e=>setTimeout(e,this.timeout)),r.call(this)}}this.active=!0,r.call(this).then(()=>{this.log.info("Subscribed to couchdb changes")}).catch(e=>{throw new t.InternalError("Failed to subscribe to couchdb changes: "+e)})}}async function l(e,t,r,a){try{const t=e.get("user");a[r]=t.name}catch(e){throw new o.UnsupportedError("No User found in context. Please provide a user in the context")}}class u extends r.CouchDBAdapter{constructor(e,t){super(e,d,t)}async shutdown(){await this.shutdownProxies(),this._client&&(this._client=void 0)}getClient(){const{user:e,password:t,host:a,dbName:s}=this.config,o=u.connect(e,t,a);return r.wrapDocumentScope(o,s,e,t)}async flags(e,t,r){return Object.assign(await super.flags(e,t,r),{user:{name:this.config.user}})}Dispatch(){return new h}async index(...e){const a=r.generateIndexes(e);for(const e of a){const r=await this.client.createIndex(e),{result:a,id:s,name:o}=r;if("existing"===a)throw new t.ConflictError(`Index for table ${o} with id ${s}`)}}async create(e,r,a,...s){let o;try{o=await this.client.insert(a)}catch(e){throw this.parseError(e)}if(!o.ok)throw new t.InternalError(`Failed to insert doc id: ${r} in table ${e}`);return this.assignMetadata(a,o.rev)}async createAll(e,r,a,...s){let o;try{o=await this.client.bulk({docs:a})}catch(e){throw this.parseError(e)}if(!o.every(e=>!e.error)){const e=o.reduce((e,t,r)=>(t.error&&e.push(`el ${r}: ${t.error}${t.reason?" - "+t.reason:""}`),e),[]);throw new t.InternalError(e.join("\n"))}return this.assignMultipleMetadata(a,o.map(e=>e.rev))}async read(e,t,...r){const a=this.generateId(s.Model.tableName(e),t);let o;try{o=await this.client.get(a)}catch(e){throw this.parseError(e)}return this.assignMetadata(o,o._rev)}async readAll(e,a,...o){const n=s.Model.tableName(e);return(await this.client.fetch({keys:a.map(e=>this.generateId(n,e))},{})).rows.map(e=>{if(e.error)throw new t.InternalError(e.error);if(e.doc){const t=Object.assign({},e.doc);return this.assignMetadata(t,e.doc[r.CouchDBKeys.REV])}throw new t.InternalError("Should be impossible")})}async update(e,r,a,...s){let o;try{o=await this.client.insert(a)}catch(e){throw this.parseError(e)}if(!o.ok)throw new t.InternalError(`Failed to update doc id: ${r} in table ${e}`);return this.assignMetadata(a,o.rev)}async updateAll(e,r,a,...s){let o;try{o=await this.client.bulk({docs:a})}catch(e){throw this.parseError(e)}if(!o.every(e=>!e.error)){const e=o.reduce((e,t,r)=>(t.error&&e.push(`el ${r}: ${t.error}${t.reason?" - "+t.reason:""}`),e),[]);throw new t.InternalError(e.join("\n"))}return this.assignMultipleMetadata(a,o.map(e=>e.rev))}async delete(e,t,...r){const a=this.generateId(s.Model.tableName(e),t);let o;try{o=await this.client.get(a),await this.client.destroy(a,o._rev)}catch(e){throw this.parseError(e)}return this.assignMetadata(o,o._rev)}async deleteAll(e,a,...o){const{log:n}=this.logCtx(o,this.deleteAll),i=s.Model.tableName(e),c=await this.client.fetch({keys:a.map(e=>this.generateId(i,e))},{});return(await this.client.bulk({docs:c.rows.map(e=>(e[r.CouchDBKeys.DELETED]=!0,e))})).forEach(e=>{e.error&&n.error(e.error)}),c.rows.map(e=>{if(e.error)throw new t.InternalError(e.error);if(e.doc){const t=Object.assign({},e.doc);return this.assignMetadata(t,e.doc[r.CouchDBKeys.REV])}throw new t.InternalError("Should be impossible")})}async raw(e,t=!0,...r){try{const a=await this.client.find(e);if(a.warning){const{log:e}=this.logCtx(r,this.raw);e.for(this.raw).warn(a.warning)}return t?a.docs:a}catch(e){throw this.parseError(e)}}static connect(e,t,r="localhost:5984",a="http"){return c.default(`${a}://${e}:${t}@${r}`)}static async createDatabase(e,t){let a;try{a=await e.db.create(t)}catch(e){throw r.CouchDBAdapter.parseError(e)}const{ok:s,error:o,reason:n}=a;if(!s)throw r.CouchDBAdapter.parseError(o,n)}static async deleteDatabase(e,a){let s;try{s=await e.db.destroy(a)}catch(e){throw r.CouchDBAdapter.parseError(e)}const{ok:o}=s;if(!o)throw new t.InternalError("Failed to delete database with name "+a)}static async createUser(e,a,s,o,n=["reader","writer"]){const i=e.db.use("_users"),c={_id:"org.couchdb.user:"+s,name:s,password:o,roles:n,type:"user"};try{const r=await i.insert(c),{ok:o}=r;if(!o)throw new t.InternalError("Failed to create user "+s);if(!(await e.request({db:a,method:"put",path:"_security",body:{admins:{names:[s],roles:[]},members:{names:[s],roles:n}}})).ok)throw new t.InternalError(`Failed to authorize user ${s} to db ${a}`)}catch(e){throw r.CouchDBAdapter.parseError(e)}}static async deleteUser(e,t,a){const s=e.db.use("_users"),o="org.couchdb.user:"+a;try{const e=await s.get(o);await s.destroy(o,e._rev)}catch(e){throw r.CouchDBAdapter.parseError(e)}}static decoration(){super.decoration(),n.Decoration.flavouredAs(d).for(o.PersistenceKeys.CREATED_BY).define(t.onCreate(l),n.propMetadata(o.PersistenceKeys.CREATED_BY,{})).apply(),n.Decoration.flavouredAs(d).for(o.PersistenceKeys.UPDATED_BY).define(t.onCreateUpdate(l),n.propMetadata(o.PersistenceKeys.UPDATED_BY,{})).apply()}}o.Adapter.setCurrent(d),u.decoration();const p="##VERSION##",f="##PACKAGE##";n.Metadata.registerLibrary(f,p),e.NanoAdapter=u,e.NanoFlavour=d,e.PACKAGE_NAME=f,e.VERSION=p,e.createdByOnNanoCreateUpdate=l},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/db-decorators"),require("@decaf-ts/for-couchdb"),require("nano"),require("@decaf-ts/decorator-validation"),require("@decaf-ts/core"),require("@decaf-ts/decoration")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/db-decorators","@decaf-ts/for-couchdb","nano","@decaf-ts/decorator-validation","@decaf-ts/core","@decaf-ts/decoration"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-nano"]={},e.decafTsDbDecorators,e.decafTsForCouchdb,e.nano,e.decafTsDecoratorValidation,e.decafTsCore,e.decafTsDecoration);
2
2
  //# sourceMappingURL=for-nano.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"for-nano.cjs","sources":["../src/constants.ts","../src/NanoDispatch.ts","../src/adapter.ts","../src/index.ts"],"sourcesContent":[null,null,null,null],"names":["NanoFlavour","NanoDispatch","Dispatch","constructor","timeout","super","this","attemptCounter","active","close","changeHandler","error","response","headers","log","for","split","filter","r","map","JSON","parse","e","count","length","debug","changes","rec","i","observerLastUpdate","last_seq","table","id","CouchDBKeys","SEPARATOR","operation","deleted","OperationKeys","DELETE","rev","CREATE","UPDATE","step","reduce","accum","ids","Set","add","Object","keys","op","updateObservers","values","verbose","Array","from","initialize","subLog","subscribeToCouch","async","adapter","InternalError","client","feed","include_docs","since","bind","info","Promise","resolve","setTimeout","call","then","catch","createdByOnNanoCreateUpdate","context","data","key","model","user","get","name","UnsupportedError","NanoAdapter","CouchDBAdapter","scope","alias","shutdown","shutdownProxies","_client","undefined","getClient","password","host","dbName","config","con","connect","wrapDocumentScope","flags","assign","index","models","indexes","generateIndexes","res","createIndex","result","ConflictError","create","tableName","insert","parseError","ok","assignMetadata","createAll","bulk","docs","every","errors","el","push","reason","join","assignMultipleMetadata","read","_id","generateId","record","_rev","readAll","fetch","rows","doc","REV","update","updateAll","destroy","deleteAll","results","DELETED","forEach","d","raw","rawInput","docsOnly","find","warning","warn","pass","protocol","Nano","createDatabase","db","deleteDatabase","createUser","roles","users","use","usr","type","created","request","method","path","body","admins","names","members","deleteUser","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","apply","UPDATED_BY","onCreateUpdate","Adapter","setCurrent","VERSION","PACKAGE_NAME","Metadata","registerLibrary"],"mappings":"yIAMO,MAAMA,EAAc,OCoCrB,MAAOC,UAAqBC,EAAAA,SAMhC,WAAAC,CAAoBC,EAAU,KAC5BC,QADkBC,KAAOF,QAAPA,EAJZE,KAAcC,eAAW,EAEzBD,KAAME,QAAY,CAIzB,CAOQ,KAAAC,GACP,OAAOJ,MAAMI,OACd,CAiCS,mBAAMC,CACdC,EACAC,EAEAC,GAEA,MAAMC,EAAMR,KAAKQ,IAAIC,IAAIT,KAAKI,eAC9B,GAAIC,EAAO,OAAOG,EAAIH,MAAM,4BAA4BA,GACxD,IACEC,EACsB,iBAAbA,EACHA,EACGI,MAAM,MACNC,OAAQC,KAAQA,GAChBC,IAAKD,GAAME,KAAKC,MAAMH,IACzBN,CAEP,CAAC,MAAOU,GACP,OAAOR,EAAIH,MAAM,sCAAsCW,EACxD,CACD,MAAMC,EAAQX,EAASY,OACvB,GAAID,EAAQ,EAAG,CACbT,EAAIW,MAAM,YAAYF,4BACtB,MAAMG,EAAUd,EACbO,IAAI,CAACQ,EAAKC,KACT,GAAIA,IAAML,EAAQ,EAQhB,YANEjB,KAAKuB,qBACJF,EAAgCG,UAEjChB,EAAIH,MACF,8BAA8BL,KAAKuB,0BAA2BF,EAAgCG,aAIpG,MAAMZ,EAAIS,GACHI,EAAOC,GAAMd,EAAEc,GAAGhB,MAAMiB,cAAYC,WAC3C,MAAO,CACLH,MAAOA,EACPC,GAAIA,EACJG,UAAWjB,EAAEkB,QACTC,EAAAA,cAAcC,OACwC,MAAtDpB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGe,IAAIvB,MAAM,KAAK,GAC7CqB,EAAAA,cAAcG,OACdH,EAAAA,cAAcI,OACpBC,KAAMxB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGe,OAGzCI,OACC,CACEC,EAUA1B,KAEA,IAAKA,EAAG,OAAO0B,EACf,MAAMb,MAAEA,EAAKC,GAAEA,EAAEG,UAAEA,EAASO,KAAEA,GAASxB,EAWvC,OALK0B,EAAMb,KAAQa,EAAMb,GAAS,IAC7Ba,EAAMb,GAAOI,KAChBS,EAAMb,GAAOI,GAAa,CAAEU,IAAK,IAAIC,IAAOJ,KAAMA,IACpDE,EAAMb,GAAOI,GAAWU,IAAIE,IAAIf,GAChCY,EAAMb,GAAOI,GAAWO,KAAOA,EACxBE,GAET,CAAE,GAGN,IAAK,MAAMb,KAASiB,OAAOC,KAAKvB,GAC9B,IAAK,MAAMwB,KAAMF,OAAOC,KAAKvB,EAAQK,IACnC,UACQzB,KAAK6C,gBAAgBpB,EAAOmB,EAAI,IACjCxB,EAAQK,GAAOmB,GAAIL,IAAIO,WAE5B9C,KAAKuB,mBAAqBH,EAAQK,GAAOmB,GAAIR,KAC7C5B,EAAIuC,QAAQ,kCAAkCH,SAAUnB,KACxDjB,EAAIW,MAAM,QAAQ6B,MAAMC,KAAK7B,EAAQK,GAAOmB,GAAIL,IAAIO,UACrD,CAAC,MAAO9B,GACPR,EAAIH,MACF,2CAA2CoB,SAAamB,MAAO5B,IAElE,CAGN,CACF,CAoCkB,gBAAMkC,GACvB,MACMC,EADMnD,KAAKQ,IAAIC,IAAIT,KAAKkD,YACXzC,IAAI2C,GACvBC,eAAeD,IACb,IAAKpD,KAAKsD,QACR,MAAM,IAAIC,EAAaA,cAAC,2CAC1B,IAAIvD,KAAKE,OACT,IACGF,KAAKsD,QAAgBE,OAAOpC,QAC3B,CACEqC,KAAM,aACNC,cAAc,EACdC,MAAO3D,KAAKuB,oBAAsB,MAClCzB,QAASE,KAAKF,SAEhBE,KAAKI,cAAcwD,KAAK5D,MAE3B,CAAC,MAAOgB,GACP,KAAMhB,KAAKC,eAAiB,EAC1B,OAAOkD,EAAO9C,MAAM,2CAA2CW,GAIjE,GAHAmC,EAAOU,KACL,2CAA2C7C,gCAExChB,KAAKE,OAAQ,OAElB,aADM,IAAI4D,QAASC,GAAYC,WAAWD,EAAS/D,KAAKF,UACjDsD,EAAiBa,KAAKjE,KAC9B,CACF,CAEDA,KAAKE,QAAS,EACdkD,EACGa,KAAKjE,MACLkE,KAAK,KACJlE,KAAKQ,IAAIqD,KAAK,mCAEfM,MAAOnD,IACN,MAAM,IAAIuC,EAAAA,cAAc,2CAA2CvC,IAExE,ECpMIqC,eAAee,EAMpBC,EACAC,EACAC,EACAC,GAEA,IACE,MAAMC,EAAOJ,EAAQK,IAAI,QACzBF,EAAMD,GAAOE,EAAKE,IAEnB,CAAC,MAAO3D,GACP,MAAM,IAAI4D,EAAAA,iBACR,iEAEH,CACH,CA0DM,MAAOC,UAAoBC,EAAAA,eAM/B,WAAAjF,CAAYkF,EAAmBC,GAC7BjF,MAAMgF,EAAOrF,EAAasF,EAC3B,CAOQ,cAAMC,SACPjF,KAAKkF,kBACPlF,KAAKmF,UAASnF,KAAKmF,aAAUC,EAClC,CAOS,SAAAC,GACR,MAAMZ,KAAEA,EAAIa,SAAEA,EAAQC,KAAEA,EAAIC,OAAEA,GAAWxF,KAAKyF,OACxCC,EAAMb,EAAYc,QAAQlB,EAAMa,EAAUC,GAChD,OAAOK,EAAiBA,kBAACF,EAAKF,EAAQf,EAAMa,EAC7C,CAWkB,WAAMO,CACvBhE,EACA2C,EACAqB,GAEA,OAAOnD,OAAOoD,aAAa/F,MAAM8F,MAAMhE,EAAW2C,EAAOqB,GAAQ,CAC/DpB,KAAM,CACJE,KAAM3E,KAAKyF,OAAOhB,OAGvB,CAOkB,QAAA7E,GACjB,OAAO,IAAID,CACZ,CAwBkB,WAAMoG,IACpBC,GAEH,MAAMC,EAAgCC,kBAAgBF,GACtD,IAAK,MAAMD,KAASE,EAAS,CAC3B,MAAME,QAAYnG,KAAKwD,OAAO4C,YAAYL,IACpCM,OAAEA,EAAM3E,GAAEA,EAAEiD,KAAEA,GAASwB,EAC7B,GAAe,aAAXE,EACF,MAAM,IAAIC,EAAaA,cAAC,mBAAmB3B,aAAgBjD,IAC9D,CACF,CA0BQ,YAAM6E,CACbC,EACA9E,EACA8C,GAEA,IAAIlE,EACJ,IACEA,QAAiBN,KAAKwD,OAAOiD,OAAOjC,EACrC,CAAC,MAAOxD,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CAED,IAAKV,EAASqG,GACZ,MAAM,IAAIpD,EAAaA,cACrB,4BAA4B7B,cAAe8E,KAE/C,OAAOxG,KAAK4G,eAAepC,EAAOlE,EAAS2B,IAC5C,CA6BQ,eAAM4E,CACbL,EACAjE,EACAyD,GAEA,IAAI1F,EACJ,IACEA,QAAiBN,KAAKwD,OAAOsD,KAAK,CAAEC,KAAMf,GAC3C,CAAC,MAAOhF,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,IAAKV,EAAS0G,MAAOpG,IAAOA,EAAEP,OAAQ,CACpC,MAAM4G,EAAS3G,EAAS+B,OAAO,CAACC,EAAiB4E,EAAI5F,KAC/C4F,EAAG7G,OACLiC,EAAM6E,KACJ,MAAM7F,MAAM4F,EAAG7G,QAAQ6G,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD9E,GACN,IACH,MAAM,IAAIiB,EAAAA,cAAc0D,EAAOI,KAAK,MACrC,CAED,OAAOrH,KAAKsH,uBACVtB,EACA1F,EAASO,IAAKD,GAAMA,EAAEqB,KAEzB,CAuBQ,UAAMsF,CACbf,EACA9E,GAEA,MAAM8F,EAAMxH,KAAKyH,WAAWjB,EAAW9E,GACvC,IAAIgG,EACJ,IACEA,QAAe1H,KAAKwD,OAAOkB,IAAI8C,EAChC,CAAC,MAAOxG,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,OAAOhB,KAAK4G,eAAec,EAAQA,EAAOC,KAC3C,CA2BQ,aAAMC,CACbpB,EACAjE,GAMA,aAJsBvC,KAAKwD,OAAOqE,MAChC,CAAElF,KAAMJ,EAAI1B,IAAKa,GAAO1B,KAAKyH,WAAWjB,EAAW9E,KACnD,CAAA,IAEaoG,KAAKjH,IAAKD,IACvB,GAAKA,EAAUP,MAAO,MAAM,IAAIkD,EAAaA,cAAE3C,EAAUP,OACzD,GAAKO,EAAUmH,IAAK,CAClB,MAAM5B,EAAMzD,OAAOoD,OAAO,CAAA,EAAKlF,EAAUmH,KACzC,OAAO/H,KAAK4G,eAAeT,EAAMvF,EAAUmH,IAAIpG,EAAWA,YAACqG,KAC5D,CACD,MAAM,IAAIzE,EAAAA,cAAc,yBAE3B,CA0BQ,YAAM0E,CACbzB,EACA9E,EACA8C,GAEA,IAAIlE,EACJ,IACEA,QAAiBN,KAAKwD,OAAOiD,OAAOjC,EACrC,CAAC,MAAOxD,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CAED,IAAKV,EAASqG,GACZ,MAAM,IAAIpD,EAAaA,cACrB,4BAA4B7B,cAAe8E,KAE/C,OAAOxG,KAAK4G,eAAepC,EAAOlE,EAAS2B,IAC5C,CAUQ,eAAMiG,CACb1B,EACAjE,EACAyD,GAEA,IAAI1F,EACJ,IACEA,QAAiBN,KAAKwD,OAAOsD,KAAK,CAAEC,KAAMf,GAC3C,CAAC,MAAOhF,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,IAAKV,EAAS0G,MAAOpG,IAAOA,EAAEP,OAAQ,CACpC,MAAM4G,EAAS3G,EAAS+B,OAAO,CAACC,EAAiB4E,EAAI5F,KAC/C4F,EAAG7G,OACLiC,EAAM6E,KACJ,MAAM7F,MAAM4F,EAAG7G,QAAQ6G,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD9E,GACN,IACH,MAAM,IAAIiB,EAAAA,cAAc0D,EAAOI,KAAK,MACrC,CAED,OAAOrH,KAAKsH,uBACVtB,EACA1F,EAASO,IAAKD,GAAMA,EAAEqB,KAEzB,CASQ,YAAM,CACbuE,EACA9E,GAEA,MAAM8F,EAAMxH,KAAKyH,WAAWjB,EAAW9E,GACvC,IAAIgG,EACJ,IACEA,QAAe1H,KAAKwD,OAAOkB,IAAI8C,SACzBxH,KAAKwD,OAAO2E,QAAQX,EAAKE,EAAOC,KACvC,CAAC,MAAO3G,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,OAAOhB,KAAK4G,eAAec,EAAQA,EAAOC,KAC3C,CASQ,eAAMS,CACb5B,EACAjE,GAEA,MAAM/B,EAAMR,KAAKQ,IAAIC,IAAIT,KAAKoI,WACxBC,QAAgBrI,KAAKwD,OAAOqE,MAChC,CAAElF,KAAMJ,EAAI1B,IAAKa,GAAO1B,KAAKyH,WAAWjB,EAAW9E,KACnD,CAAA,GAWF,aAT+C1B,KAAKwD,OAAOsD,KAAK,CAC9DC,KAAMsB,EAAQP,KAAKjH,IAAKD,IACrBA,EAAUe,EAAWA,YAAC2G,UAAW,EAC3B1H,OAGF2H,QAASC,IACZA,EAAEnI,OAAOG,EAAIH,MAAMmI,EAAEnI,SAEpBgI,EAAQP,KAAKjH,IAAKD,IACvB,GAAKA,EAAUP,MAAO,MAAM,IAAIkD,EAAaA,cAAE3C,EAAUP,OACzD,GAAKO,EAAUmH,IAAK,CAClB,MAAM5B,EAAMzD,OAAOoD,OAAO,CAAA,EAAKlF,EAAUmH,KACzC,OAAO/H,KAAK4G,eAAeT,EAAMvF,EAAUmH,IAAIpG,EAAWA,YAACqG,KAC5D,CACD,MAAM,IAAIzE,EAAAA,cAAc,yBAE3B,CAUQ,SAAMkF,CAAOC,EAAsBC,GAAW,GACrD,IACE,MAAMrI,QAAmCN,KAAKwD,OAAOoF,KAAKF,GAE1D,OADIpI,EAASuI,SAAS7I,KAAKQ,IAAIC,IAAIT,KAAKyI,KAAKK,KAAKxI,EAASuI,SACvDF,EAAiBrI,EAASyG,KACvBzG,CACR,CAAC,MAAOU,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACF,CAWD,cAAO2E,CACLlB,EACAsE,EACAxD,EAAO,iBACPyD,EAA6B,QAE7B,OAAOC,UAAK,GAAGD,OAAcvE,KAAQsE,KAAQxD,IAC9C,CAuBD,2BAAa2D,CAAexD,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAIyD,GAAG5C,OAAO5B,EAC9B,CAAC,MAAO3D,GACP,MAAM8D,EAAcA,eAAC4B,WAAW1F,EACjC,CACD,MAAM2F,GAAEA,EAAEtG,MAAEA,EAAK+G,OAAEA,GAAWf,EAC9B,IAAKM,EAAI,MAAM7B,iBAAe4B,WAAWrG,EAAiB+G,EAC3D,CAuBD,2BAAagC,CAAe1D,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAIyD,GAAGhB,QAAQxD,EAC/B,CAAC,MAAO3D,GACP,MAAM8D,EAAcA,eAAC4B,WAAW1F,EACjC,CACD,MAAM2F,GAAEA,GAAON,EACf,IAAKM,EACH,MAAM,IAAIpD,EAAAA,cAAc,uCAAuCoB,EAClE,CAmCD,uBAAa0E,CACX3D,EACAF,EACAf,EACAsE,EACAO,EAAkB,CAAC,SAAU,WAE7B,MAAMC,EAAQ7D,EAAIyD,GAAGK,IAAI,UACnBC,EAAM,CACVjC,IAAK,oBAAsB/C,EAC3BE,KAAMF,EACNa,SAAUyD,EACVO,MAAOA,EACPI,KAAM,QAER,IACE,MAAMC,QAAwCJ,EAAM9C,OAClDgD,IAEI9C,GAAEA,GAAOgD,EACf,IAAKhD,EAAI,MAAM,IAAIpD,EAAAA,cAAc,yBAAyBkB,GAmB1D,WAlB4BiB,EAAIkE,QAAQ,CACtCT,GAAI3D,EACJqE,OAAQ,MACRC,KAAM,YAINC,KAAM,CACJC,OAAQ,CACNC,MAAO,CAACxF,GACR6E,MAAO,IAETY,QAAS,CACPD,MAAO,CAACxF,GACR6E,MAAOA,OAIC3C,GACZ,MAAM,IAAIpD,EAAaA,cACrB,4BAA4BkB,WAAce,IAE/C,CAAC,MAAOxE,GACP,MAAM8D,EAAcA,eAAC4B,WAAW1F,EACjC,CACF,CAwBD,uBAAamJ,CAAWzE,EAAkBF,EAAgBf,GACxD,MAAM8E,EAAQ7D,EAAIyD,GAAGK,IAAI,UACnB9H,EAAK,oBAAsB+C,EACjC,IACE,MAAMgF,QAAYF,EAAM7E,IAAIhD,SACtB6H,EAAMpB,QAAQzG,EAAI+H,EAAI9B,KAC7B,CAAC,MAAO3G,GACP,MAAM8D,EAAcA,eAAC4B,WAAW1F,EACjC,CACF,CAyBD,iBAAgBoJ,GACdrK,MAAMqK,aACNC,EAAUA,WAACC,YAAY5K,GACpBe,IAAI8J,EAAeA,gBAACC,YACpBC,OACCC,EAAQA,SAACtG,GACTuG,EAAYA,aAACJ,kBAAgBC,WAAY,CAAA,IAE1CI,QAEHP,EAAUA,WAACC,YAAY5K,GACpBe,IAAI8J,EAAeA,gBAACM,YACpBJ,OACCK,EAAcA,eAAC1G,GACfuG,EAAYA,aAACJ,kBAAgBM,WAAY,CAAA,IAE1CD,OACJ,EAGHG,EAAAA,QAAQC,WAAWtL,GCtyBnBmF,EAAYuF,aAoBC,MAAAa,EAAU,cAQVC,EAAe,cAE5BC,EAAAA,SAASC,gBAAgBF,EAAcD"}
1
+ {"version":3,"file":"for-nano.cjs","sources":["../src/constants.ts","../src/NanoDispatch.ts","../src/adapter.ts","../src/index.ts"],"sourcesContent":[null,null,null,null],"names":["NanoFlavour","NanoDispatch","Dispatch","constructor","timeout","super","this","attemptCounter","active","close","changeHandler","error","response","headers","ctxArg","ctx","adapter","context","OperationKeys","UPDATE","Model","log","logger","for","split","filter","r","map","JSON","parse","e","count","length","debug","changes","rec","i","observerLastUpdate","last_seq","table","id","CouchDBKeys","SEPARATOR","operation","deleted","DELETE","rev","CREATE","step","reduce","accum","ids","Set","add","Object","keys","op","updateObservers","values","verbose","Array","from","initialize","subLog","subscribeToCouch","async","InternalError","client","feed","include_docs","since","bind","info","Promise","resolve","setTimeout","call","then","catch","createdByOnNanoCreateUpdate","data","key","model","user","get","name","UnsupportedError","NanoAdapter","CouchDBAdapter","scope","alias","shutdown","shutdownProxies","_client","undefined","getClient","password","host","dbName","config","con","connect","wrapDocumentScope","flags","assign","index","models","indexes","generateIndexes","res","createIndex","result","ConflictError","create","tableName","args","insert","parseError","ok","assignMetadata","createAll","bulk","docs","every","errors","el","push","reason","join","assignMultipleMetadata","read","_id","generateId","record","_rev","readAll","fetch","rows","doc","REV","update","updateAll","destroy","deleteAll","logCtx","results","DELETED","forEach","d","raw","rawInput","docsOnly","find","warning","warn","pass","protocol","Nano","createDatabase","db","deleteDatabase","createUser","roles","users","use","usr","type","created","request","method","path","body","admins","names","members","deleteUser","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","apply","UPDATED_BY","onCreateUpdate","Adapter","setCurrent","VERSION","PACKAGE_NAME","Metadata","registerLibrary"],"mappings":"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"}
package/dist/for-nano.js CHANGED
@@ -1,2 +1,2 @@
1
- import{OperationKeys as t,InternalError as e,ConflictError as r,onCreate as s,onCreateUpdate as a}from"@decaf-ts/db-decorators";import"reflect-metadata";import{CouchDBKeys as o,CouchDBAdapter as i,wrapDocumentScope as n,generateIndexes as c}from"@decaf-ts/for-couchdb";import h from"nano";import{Dispatch as d,Adapter as l,UnsupportedError as u,PersistenceKeys as p}from"@decaf-ts/core";import{Decoration as w,propMetadata as f,Metadata as b}from"@decaf-ts/decoration";const g="nano";class y extends d{constructor(t=5e3){super(),this.timeout=t,this.attemptCounter=0,this.active=!1}close(){return super.close()}async changeHandler(e,r,s){const a=this.log.for(this.changeHandler);if(e)return a.error("Error in change request: "+e);try{r="string"==typeof r?r.split("\n").filter(t=>!!t).map(t=>JSON.parse(t)):r}catch(t){return a.error("Error parsing couchdb change feed: "+t)}const i=r.length;if(i>0){a.debug(`Received ${i} changes. processing...`);const e=r.map((e,r)=>{if(r===i-1)return void(this.observerLastUpdate===e.last_seq&&a.error(`Invalid last update check: ${this.observerLastUpdate} !== ${e.last_seq}`));const s=e,[n,c]=s.id.split(o.SEPARATOR);return{table:n,id:c,operation:s.deleted?t.DELETE:"1"===s.changes[s.changes.length-1].rev.split("-")[0]?t.CREATE:t.UPDATE,step:s.changes[s.changes.length-1].rev}}).reduce((t,e)=>{if(!e)return t;const{table:r,id:s,operation:a,step:o}=e;return t[r]||(t[r]={}),t[r][a]||(t[r][a]={ids:new Set,step:o}),t[r][a].ids.add(s),t[r][a].step=o,t},{});for(const t of Object.keys(e))for(const r of Object.keys(e[t]))try{await this.updateObservers(t,r,[...e[t][r].ids.values()]),this.observerLastUpdate=e[t][r].step,a.verbose(`Observer refresh dispatched by ${r} for ${t}`),a.debug("pks: "+Array.from(e[t][r].ids.values()))}catch(e){a.error(`Failed to dispatch observer refresh for ${t}, op ${r}: ${e}`)}}}async initialize(){const t=this.log.for(this.initialize).for(r);async function r(){if(!this.adapter)throw new e("No adapter/native observed for dispatch");if(!this.active)try{this.adapter.client.changes({feed:"continuous",include_docs:!1,since:this.observerLastUpdate||"now",timeout:this.timeout},this.changeHandler.bind(this))}catch(e){if(++this.attemptCounter>3)return t.error("Failed to subscribe to couchdb changes: "+e);if(t.info(`Failed to subscribe to couchdb changes: ${e}. Retrying in 5 seconds...`),!this.active)return;return await new Promise(t=>setTimeout(t,this.timeout)),r.call(this)}}this.active=!0,r.call(this).then(()=>{this.log.info("Subscribed to couchdb changes")}).catch(t=>{throw new e("Failed to subscribe to couchdb changes: "+t)})}}async function m(t,e,r,s){try{const e=t.get("user");s[r]=e.name}catch(t){throw new u("No User found in context. Please provide a user in the context")}}class v extends i{constructor(t,e){super(t,g,e)}async shutdown(){await this.shutdownProxies(),this._client&&(this._client=void 0)}getClient(){const{user:t,password:e,host:r,dbName:s}=this.config,a=v.connect(t,e,r);return n(a,s,t,e)}async flags(t,e,r){return Object.assign(await super.flags(t,e,r),{user:{name:this.config.user}})}Dispatch(){return new y}async index(...t){const e=c(t);for(const t of e){const e=await this.client.createIndex(t),{result:s,id:a,name:o}=e;if("existing"===s)throw new r(`Index for table ${o} with id ${a}`)}}async create(t,r,s){let a;try{a=await this.client.insert(s)}catch(t){throw this.parseError(t)}if(!a.ok)throw new e(`Failed to insert doc id: ${r} in table ${t}`);return this.assignMetadata(s,a.rev)}async createAll(t,r,s){let a;try{a=await this.client.bulk({docs:s})}catch(t){throw this.parseError(t)}if(!a.every(t=>!t.error)){const t=a.reduce((t,e,r)=>(e.error&&t.push(`el ${r}: ${e.error}${e.reason?" - "+e.reason:""}`),t),[]);throw new e(t.join("\n"))}return this.assignMultipleMetadata(s,a.map(t=>t.rev))}async read(t,e){const r=this.generateId(t,e);let s;try{s=await this.client.get(r)}catch(t){throw this.parseError(t)}return this.assignMetadata(s,s._rev)}async readAll(t,r){return(await this.client.fetch({keys:r.map(e=>this.generateId(t,e))},{})).rows.map(t=>{if(t.error)throw new e(t.error);if(t.doc){const e=Object.assign({},t.doc);return this.assignMetadata(e,t.doc[o.REV])}throw new e("Should be impossible")})}async update(t,r,s){let a;try{a=await this.client.insert(s)}catch(t){throw this.parseError(t)}if(!a.ok)throw new e(`Failed to update doc id: ${r} in table ${t}`);return this.assignMetadata(s,a.rev)}async updateAll(t,r,s){let a;try{a=await this.client.bulk({docs:s})}catch(t){throw this.parseError(t)}if(!a.every(t=>!t.error)){const t=a.reduce((t,e,r)=>(e.error&&t.push(`el ${r}: ${e.error}${e.reason?" - "+e.reason:""}`),t),[]);throw new e(t.join("\n"))}return this.assignMultipleMetadata(s,a.map(t=>t.rev))}async delete(t,e){const r=this.generateId(t,e);let s;try{s=await this.client.get(r),await this.client.destroy(r,s._rev)}catch(t){throw this.parseError(t)}return this.assignMetadata(s,s._rev)}async deleteAll(t,r){const s=this.log.for(this.deleteAll),a=await this.client.fetch({keys:r.map(e=>this.generateId(t,e))},{});return(await this.client.bulk({docs:a.rows.map(t=>(t[o.DELETED]=!0,t))})).forEach(t=>{t.error&&s.error(t.error)}),a.rows.map(t=>{if(t.error)throw new e(t.error);if(t.doc){const e=Object.assign({},t.doc);return this.assignMetadata(e,t.doc[o.REV])}throw new e("Should be impossible")})}async raw(t,e=!0){try{const r=await this.client.find(t);return r.warning&&this.log.for(this.raw).warn(r.warning),e?r.docs:r}catch(t){throw this.parseError(t)}}static connect(t,e,r="localhost:5984",s="http"){return h(`${s}://${t}:${e}@${r}`)}static async createDatabase(t,e){let r;try{r=await t.db.create(e)}catch(t){throw i.parseError(t)}const{ok:s,error:a,reason:o}=r;if(!s)throw i.parseError(a,o)}static async deleteDatabase(t,r){let s;try{s=await t.db.destroy(r)}catch(t){throw i.parseError(t)}const{ok:a}=s;if(!a)throw new e("Failed to delete database with name "+r)}static async createUser(t,r,s,a,o=["reader","writer"]){const n=t.db.use("_users"),c={_id:"org.couchdb.user:"+s,name:s,password:a,roles:o,type:"user"};try{const a=await n.insert(c),{ok:i}=a;if(!i)throw new e("Failed to create user "+s);if(!(await t.request({db:r,method:"put",path:"_security",body:{admins:{names:[s],roles:[]},members:{names:[s],roles:o}}})).ok)throw new e(`Failed to authorize user ${s} to db ${r}`)}catch(t){throw i.parseError(t)}}static async deleteUser(t,e,r){const s=t.db.use("_users"),a="org.couchdb.user:"+r;try{const t=await s.get(a);await s.destroy(a,t._rev)}catch(t){throw i.parseError(t)}}static decoration(){super.decoration(),w.flavouredAs(g).for(p.CREATED_BY).define(s(m),f(p.CREATED_BY,{})).apply(),w.flavouredAs(g).for(p.UPDATED_BY).define(a(m),f(p.UPDATED_BY,{})).apply()}}l.setCurrent(g),v.decoration();const E="##VERSION##",$="##PACKAGE##";b.registerLibrary($,E);export{v as NanoAdapter,g as NanoFlavour,$ as PACKAGE_NAME,E as VERSION,m as createdByOnNanoCreateUpdate};
1
+ import{OperationKeys as t,InternalError as e,ConflictError as r,onCreate as s,onCreateUpdate as a}from"@decaf-ts/db-decorators";import{CouchDBKeys as o,CouchDBAdapter as i,wrapDocumentScope as n,generateIndexes as c}from"@decaf-ts/for-couchdb";import h from"nano";import{Model as d}from"@decaf-ts/decorator-validation";import{Dispatch as l,Adapter as u,UnsupportedError as p,PersistenceKeys as w}from"@decaf-ts/core";import{Decoration as f,propMetadata as b,Metadata as g}from"@decaf-ts/decoration";const y="nano";class m extends l{constructor(t=5e3){super(),this.timeout=t,this.attemptCounter=0,this.active=!1}close(){return super.close()}async changeHandler(e,r,s,a){const i=a||this.adapter.context(t.UPDATE,{},d),n=i.logger.for(this.changeHandler);if(e)return n.error("Error in change request: "+e);try{r="string"==typeof r?r.split("\n").filter(t=>!!t).map(t=>JSON.parse(t)):r}catch(t){return n.error("Error parsing couchdb change feed: "+t)}const c=r.length;if(c>0){n.debug(`Received ${c} changes. processing...`);const e=r.map((e,r)=>{if(r===c-1)return void(this.observerLastUpdate===e.last_seq&&n.error(`Invalid last update check: ${this.observerLastUpdate} !== ${e.last_seq}`));const s=e,[a,i]=s.id.split(o.SEPARATOR);return{table:a,id:i,operation:s.deleted?t.DELETE:"1"===s.changes[s.changes.length-1].rev.split("-")[0]?t.CREATE:t.UPDATE,step:s.changes[s.changes.length-1].rev}}).reduce((t,e)=>{if(!e)return t;const{table:r,id:s,operation:a,step:o}=e;return t[r]||(t[r]={}),t[r][a]||(t[r][a]={ids:new Set,step:o}),t[r][a].ids.add(s),t[r][a].step=o,t},{});for(const t of Object.keys(e))for(const r of Object.keys(e[t]))try{await this.updateObservers(t,r,[...e[t][r].ids.values()],i),this.observerLastUpdate=e[t][r].step,n.verbose(`Observer refresh dispatched by ${r} for ${t}`),n.debug("pks: "+Array.from(e[t][r].ids.values()))}catch(e){n.error(`Failed to dispatch observer refresh for ${t}, op ${r}: ${e}`)}}}async initialize(){const t=this.log.for(this.initialize).for(r);async function r(){if(!this.adapter)throw new e("No adapter/native observed for dispatch");if(!this.active)try{this.adapter.client.changes({feed:"continuous",include_docs:!1,since:this.observerLastUpdate||"now",timeout:this.timeout},this.changeHandler.bind(this))}catch(e){if(++this.attemptCounter>3)return t.error("Failed to subscribe to couchdb changes: "+e);if(t.info(`Failed to subscribe to couchdb changes: ${e}. Retrying in 5 seconds...`),!this.active)return;return await new Promise(t=>setTimeout(t,this.timeout)),r.call(this)}}this.active=!0,r.call(this).then(()=>{this.log.info("Subscribed to couchdb changes")}).catch(t=>{throw new e("Failed to subscribe to couchdb changes: "+t)})}}async function v(t,e,r,s){try{const e=t.get("user");s[r]=e.name}catch(t){throw new p("No User found in context. Please provide a user in the context")}}class E extends i{constructor(t,e){super(t,y,e)}async shutdown(){await this.shutdownProxies(),this._client&&(this._client=void 0)}getClient(){const{user:t,password:e,host:r,dbName:s}=this.config,a=E.connect(t,e,r);return n(a,s,t,e)}async flags(t,e,r){return Object.assign(await super.flags(t,e,r),{user:{name:this.config.user}})}Dispatch(){return new m}async index(...t){const e=c(t);for(const t of e){const e=await this.client.createIndex(t),{result:s,id:a,name:o}=e;if("existing"===s)throw new r(`Index for table ${o} with id ${a}`)}}async create(t,r,s,...a){let o;try{o=await this.client.insert(s)}catch(t){throw this.parseError(t)}if(!o.ok)throw new e(`Failed to insert doc id: ${r} in table ${t}`);return this.assignMetadata(s,o.rev)}async createAll(t,r,s,...a){let o;try{o=await this.client.bulk({docs:s})}catch(t){throw this.parseError(t)}if(!o.every(t=>!t.error)){const t=o.reduce((t,e,r)=>(e.error&&t.push(`el ${r}: ${e.error}${e.reason?" - "+e.reason:""}`),t),[]);throw new e(t.join("\n"))}return this.assignMultipleMetadata(s,o.map(t=>t.rev))}async read(t,e,...r){const s=this.generateId(d.tableName(t),e);let a;try{a=await this.client.get(s)}catch(t){throw this.parseError(t)}return this.assignMetadata(a,a._rev)}async readAll(t,r,...s){const a=d.tableName(t);return(await this.client.fetch({keys:r.map(t=>this.generateId(a,t))},{})).rows.map(t=>{if(t.error)throw new e(t.error);if(t.doc){const e=Object.assign({},t.doc);return this.assignMetadata(e,t.doc[o.REV])}throw new e("Should be impossible")})}async update(t,r,s,...a){let o;try{o=await this.client.insert(s)}catch(t){throw this.parseError(t)}if(!o.ok)throw new e(`Failed to update doc id: ${r} in table ${t}`);return this.assignMetadata(s,o.rev)}async updateAll(t,r,s,...a){let o;try{o=await this.client.bulk({docs:s})}catch(t){throw this.parseError(t)}if(!o.every(t=>!t.error)){const t=o.reduce((t,e,r)=>(e.error&&t.push(`el ${r}: ${e.error}${e.reason?" - "+e.reason:""}`),t),[]);throw new e(t.join("\n"))}return this.assignMultipleMetadata(s,o.map(t=>t.rev))}async delete(t,e,...r){const s=this.generateId(d.tableName(t),e);let a;try{a=await this.client.get(s),await this.client.destroy(s,a._rev)}catch(t){throw this.parseError(t)}return this.assignMetadata(a,a._rev)}async deleteAll(t,r,...s){const{log:a}=this.logCtx(s,this.deleteAll),i=d.tableName(t),n=await this.client.fetch({keys:r.map(t=>this.generateId(i,t))},{});return(await this.client.bulk({docs:n.rows.map(t=>(t[o.DELETED]=!0,t))})).forEach(t=>{t.error&&a.error(t.error)}),n.rows.map(t=>{if(t.error)throw new e(t.error);if(t.doc){const e=Object.assign({},t.doc);return this.assignMetadata(e,t.doc[o.REV])}throw new e("Should be impossible")})}async raw(t,e=!0,...r){try{const s=await this.client.find(t);if(s.warning){const{log:t}=this.logCtx(r,this.raw);t.for(this.raw).warn(s.warning)}return e?s.docs:s}catch(t){throw this.parseError(t)}}static connect(t,e,r="localhost:5984",s="http"){return h(`${s}://${t}:${e}@${r}`)}static async createDatabase(t,e){let r;try{r=await t.db.create(e)}catch(t){throw i.parseError(t)}const{ok:s,error:a,reason:o}=r;if(!s)throw i.parseError(a,o)}static async deleteDatabase(t,r){let s;try{s=await t.db.destroy(r)}catch(t){throw i.parseError(t)}const{ok:a}=s;if(!a)throw new e("Failed to delete database with name "+r)}static async createUser(t,r,s,a,o=["reader","writer"]){const n=t.db.use("_users"),c={_id:"org.couchdb.user:"+s,name:s,password:a,roles:o,type:"user"};try{const a=await n.insert(c),{ok:i}=a;if(!i)throw new e("Failed to create user "+s);if(!(await t.request({db:r,method:"put",path:"_security",body:{admins:{names:[s],roles:[]},members:{names:[s],roles:o}}})).ok)throw new e(`Failed to authorize user ${s} to db ${r}`)}catch(t){throw i.parseError(t)}}static async deleteUser(t,e,r){const s=t.db.use("_users"),a="org.couchdb.user:"+r;try{const t=await s.get(a);await s.destroy(a,t._rev)}catch(t){throw i.parseError(t)}}static decoration(){super.decoration(),f.flavouredAs(y).for(w.CREATED_BY).define(s(v),b(w.CREATED_BY,{})).apply(),f.flavouredAs(y).for(w.UPDATED_BY).define(a(v),b(w.UPDATED_BY,{})).apply()}}u.setCurrent(y),E.decoration();const $="##VERSION##",A="##PACKAGE##";g.registerLibrary(A,$);export{E as NanoAdapter,y as NanoFlavour,A as PACKAGE_NAME,$ as VERSION,v as createdByOnNanoCreateUpdate};
2
2
  //# sourceMappingURL=for-nano.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"for-nano.js","sources":["../src/constants.ts","../src/NanoDispatch.ts","../src/adapter.ts","../src/index.ts"],"sourcesContent":[null,null,null,null],"names":["NanoFlavour","NanoDispatch","Dispatch","constructor","timeout","super","this","attemptCounter","active","close","changeHandler","error","response","headers","log","for","split","filter","r","map","JSON","parse","e","count","length","debug","changes","rec","i","observerLastUpdate","last_seq","table","id","CouchDBKeys","SEPARATOR","operation","deleted","OperationKeys","DELETE","rev","CREATE","UPDATE","step","reduce","accum","ids","Set","add","Object","keys","op","updateObservers","values","verbose","Array","from","initialize","subLog","subscribeToCouch","async","adapter","InternalError","client","feed","include_docs","since","bind","info","Promise","resolve","setTimeout","call","then","catch","createdByOnNanoCreateUpdate","context","data","key","model","user","get","name","UnsupportedError","NanoAdapter","CouchDBAdapter","scope","alias","shutdown","shutdownProxies","_client","undefined","getClient","password","host","dbName","config","con","connect","wrapDocumentScope","flags","assign","index","models","indexes","generateIndexes","res","createIndex","result","ConflictError","create","tableName","insert","parseError","ok","assignMetadata","createAll","bulk","docs","every","errors","el","push","reason","join","assignMultipleMetadata","read","_id","generateId","record","_rev","readAll","fetch","rows","doc","REV","update","updateAll","destroy","deleteAll","results","DELETED","forEach","d","raw","rawInput","docsOnly","find","warning","warn","pass","protocol","Nano","createDatabase","db","deleteDatabase","createUser","roles","users","use","usr","type","created","request","method","path","body","admins","names","members","deleteUser","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","apply","UPDATED_BY","onCreateUpdate","Adapter","setCurrent","VERSION","PACKAGE_NAME","Metadata","registerLibrary"],"mappings":"qdAMO,MAAMA,EAAc,OCoCrB,MAAOC,UAAqBC,EAMhC,WAAAC,CAAoBC,EAAU,KAC5BC,QADkBC,KAAOF,QAAPA,EAJZE,KAAcC,eAAW,EAEzBD,KAAME,QAAY,CAIzB,CAOQ,KAAAC,GACP,OAAOJ,MAAMI,OACd,CAiCS,mBAAMC,CACdC,EACAC,EAEAC,GAEA,MAAMC,EAAMR,KAAKQ,IAAIC,IAAIT,KAAKI,eAC9B,GAAIC,EAAO,OAAOG,EAAIH,MAAM,4BAA4BA,GACxD,IACEC,EACsB,iBAAbA,EACHA,EACGI,MAAM,MACNC,OAAQC,KAAQA,GAChBC,IAAKD,GAAME,KAAKC,MAAMH,IACzBN,CAEP,CAAC,MAAOU,GACP,OAAOR,EAAIH,MAAM,sCAAsCW,EACxD,CACD,MAAMC,EAAQX,EAASY,OACvB,GAAID,EAAQ,EAAG,CACbT,EAAIW,MAAM,YAAYF,4BACtB,MAAMG,EAAUd,EACbO,IAAI,CAACQ,EAAKC,KACT,GAAIA,IAAML,EAAQ,EAQhB,YANEjB,KAAKuB,qBACJF,EAAgCG,UAEjChB,EAAIH,MACF,8BAA8BL,KAAKuB,0BAA2BF,EAAgCG,aAIpG,MAAMZ,EAAIS,GACHI,EAAOC,GAAMd,EAAEc,GAAGhB,MAAMiB,EAAYC,WAC3C,MAAO,CACLH,MAAOA,EACPC,GAAIA,EACJG,UAAWjB,EAAEkB,QACTC,EAAcC,OACwC,MAAtDpB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGe,IAAIvB,MAAM,KAAK,GAC7CqB,EAAcG,OACdH,EAAcI,OACpBC,KAAMxB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGe,OAGzCI,OACC,CACEC,EAUA1B,KAEA,IAAKA,EAAG,OAAO0B,EACf,MAAMb,MAAEA,EAAKC,GAAEA,EAAEG,UAAEA,EAASO,KAAEA,GAASxB,EAWvC,OALK0B,EAAMb,KAAQa,EAAMb,GAAS,IAC7Ba,EAAMb,GAAOI,KAChBS,EAAMb,GAAOI,GAAa,CAAEU,IAAK,IAAIC,IAAOJ,KAAMA,IACpDE,EAAMb,GAAOI,GAAWU,IAAIE,IAAIf,GAChCY,EAAMb,GAAOI,GAAWO,KAAOA,EACxBE,GAET,CAAE,GAGN,IAAK,MAAMb,KAASiB,OAAOC,KAAKvB,GAC9B,IAAK,MAAMwB,KAAMF,OAAOC,KAAKvB,EAAQK,IACnC,UACQzB,KAAK6C,gBAAgBpB,EAAOmB,EAAI,IACjCxB,EAAQK,GAAOmB,GAAIL,IAAIO,WAE5B9C,KAAKuB,mBAAqBH,EAAQK,GAAOmB,GAAIR,KAC7C5B,EAAIuC,QAAQ,kCAAkCH,SAAUnB,KACxDjB,EAAIW,MAAM,QAAQ6B,MAAMC,KAAK7B,EAAQK,GAAOmB,GAAIL,IAAIO,UACrD,CAAC,MAAO9B,GACPR,EAAIH,MACF,2CAA2CoB,SAAamB,MAAO5B,IAElE,CAGN,CACF,CAoCkB,gBAAMkC,GACvB,MACMC,EADMnD,KAAKQ,IAAIC,IAAIT,KAAKkD,YACXzC,IAAI2C,GACvBC,eAAeD,IACb,IAAKpD,KAAKsD,QACR,MAAM,IAAIC,EAAc,2CAC1B,IAAIvD,KAAKE,OACT,IACGF,KAAKsD,QAAgBE,OAAOpC,QAC3B,CACEqC,KAAM,aACNC,cAAc,EACdC,MAAO3D,KAAKuB,oBAAsB,MAClCzB,QAASE,KAAKF,SAEhBE,KAAKI,cAAcwD,KAAK5D,MAE3B,CAAC,MAAOgB,GACP,KAAMhB,KAAKC,eAAiB,EAC1B,OAAOkD,EAAO9C,MAAM,2CAA2CW,GAIjE,GAHAmC,EAAOU,KACL,2CAA2C7C,gCAExChB,KAAKE,OAAQ,OAElB,aADM,IAAI4D,QAASC,GAAYC,WAAWD,EAAS/D,KAAKF,UACjDsD,EAAiBa,KAAKjE,KAC9B,CACF,CAEDA,KAAKE,QAAS,EACdkD,EACGa,KAAKjE,MACLkE,KAAK,KACJlE,KAAKQ,IAAIqD,KAAK,mCAEfM,MAAOnD,IACN,MAAM,IAAIuC,EAAc,2CAA2CvC,IAExE,ECpMIqC,eAAee,EAMpBC,EACAC,EACAC,EACAC,GAEA,IACE,MAAMC,EAAOJ,EAAQK,IAAI,QACzBF,EAAMD,GAAOE,EAAKE,IAEnB,CAAC,MAAO3D,GACP,MAAM,IAAI4D,EACR,iEAEH,CACH,CA0DM,MAAOC,UAAoBC,EAM/B,WAAAjF,CAAYkF,EAAmBC,GAC7BjF,MAAMgF,EAAOrF,EAAasF,EAC3B,CAOQ,cAAMC,SACPjF,KAAKkF,kBACPlF,KAAKmF,UAASnF,KAAKmF,aAAUC,EAClC,CAOS,SAAAC,GACR,MAAMZ,KAAEA,EAAIa,SAAEA,EAAQC,KAAEA,EAAIC,OAAEA,GAAWxF,KAAKyF,OACxCC,EAAMb,EAAYc,QAAQlB,EAAMa,EAAUC,GAChD,OAAOK,EAAkBF,EAAKF,EAAQf,EAAMa,EAC7C,CAWkB,WAAMO,CACvBhE,EACA2C,EACAqB,GAEA,OAAOnD,OAAOoD,aAAa/F,MAAM8F,MAAMhE,EAAW2C,EAAOqB,GAAQ,CAC/DpB,KAAM,CACJE,KAAM3E,KAAKyF,OAAOhB,OAGvB,CAOkB,QAAA7E,GACjB,OAAO,IAAID,CACZ,CAwBkB,WAAMoG,IACpBC,GAEH,MAAMC,EAAgCC,EAAgBF,GACtD,IAAK,MAAMD,KAASE,EAAS,CAC3B,MAAME,QAAYnG,KAAKwD,OAAO4C,YAAYL,IACpCM,OAAEA,EAAM3E,GAAEA,EAAEiD,KAAEA,GAASwB,EAC7B,GAAe,aAAXE,EACF,MAAM,IAAIC,EAAc,mBAAmB3B,aAAgBjD,IAC9D,CACF,CA0BQ,YAAM6E,CACbC,EACA9E,EACA8C,GAEA,IAAIlE,EACJ,IACEA,QAAiBN,KAAKwD,OAAOiD,OAAOjC,EACrC,CAAC,MAAOxD,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CAED,IAAKV,EAASqG,GACZ,MAAM,IAAIpD,EACR,4BAA4B7B,cAAe8E,KAE/C,OAAOxG,KAAK4G,eAAepC,EAAOlE,EAAS2B,IAC5C,CA6BQ,eAAM4E,CACbL,EACAjE,EACAyD,GAEA,IAAI1F,EACJ,IACEA,QAAiBN,KAAKwD,OAAOsD,KAAK,CAAEC,KAAMf,GAC3C,CAAC,MAAOhF,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,IAAKV,EAAS0G,MAAOpG,IAAOA,EAAEP,OAAQ,CACpC,MAAM4G,EAAS3G,EAAS+B,OAAO,CAACC,EAAiB4E,EAAI5F,KAC/C4F,EAAG7G,OACLiC,EAAM6E,KACJ,MAAM7F,MAAM4F,EAAG7G,QAAQ6G,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD9E,GACN,IACH,MAAM,IAAIiB,EAAc0D,EAAOI,KAAK,MACrC,CAED,OAAOrH,KAAKsH,uBACVtB,EACA1F,EAASO,IAAKD,GAAMA,EAAEqB,KAEzB,CAuBQ,UAAMsF,CACbf,EACA9E,GAEA,MAAM8F,EAAMxH,KAAKyH,WAAWjB,EAAW9E,GACvC,IAAIgG,EACJ,IACEA,QAAe1H,KAAKwD,OAAOkB,IAAI8C,EAChC,CAAC,MAAOxG,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,OAAOhB,KAAK4G,eAAec,EAAQA,EAAOC,KAC3C,CA2BQ,aAAMC,CACbpB,EACAjE,GAMA,aAJsBvC,KAAKwD,OAAOqE,MAChC,CAAElF,KAAMJ,EAAI1B,IAAKa,GAAO1B,KAAKyH,WAAWjB,EAAW9E,KACnD,CAAA,IAEaoG,KAAKjH,IAAKD,IACvB,GAAKA,EAAUP,MAAO,MAAM,IAAIkD,EAAe3C,EAAUP,OACzD,GAAKO,EAAUmH,IAAK,CAClB,MAAM5B,EAAMzD,OAAOoD,OAAO,CAAA,EAAKlF,EAAUmH,KACzC,OAAO/H,KAAK4G,eAAeT,EAAMvF,EAAUmH,IAAIpG,EAAYqG,KAC5D,CACD,MAAM,IAAIzE,EAAc,yBAE3B,CA0BQ,YAAM0E,CACbzB,EACA9E,EACA8C,GAEA,IAAIlE,EACJ,IACEA,QAAiBN,KAAKwD,OAAOiD,OAAOjC,EACrC,CAAC,MAAOxD,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CAED,IAAKV,EAASqG,GACZ,MAAM,IAAIpD,EACR,4BAA4B7B,cAAe8E,KAE/C,OAAOxG,KAAK4G,eAAepC,EAAOlE,EAAS2B,IAC5C,CAUQ,eAAMiG,CACb1B,EACAjE,EACAyD,GAEA,IAAI1F,EACJ,IACEA,QAAiBN,KAAKwD,OAAOsD,KAAK,CAAEC,KAAMf,GAC3C,CAAC,MAAOhF,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,IAAKV,EAAS0G,MAAOpG,IAAOA,EAAEP,OAAQ,CACpC,MAAM4G,EAAS3G,EAAS+B,OAAO,CAACC,EAAiB4E,EAAI5F,KAC/C4F,EAAG7G,OACLiC,EAAM6E,KACJ,MAAM7F,MAAM4F,EAAG7G,QAAQ6G,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD9E,GACN,IACH,MAAM,IAAIiB,EAAc0D,EAAOI,KAAK,MACrC,CAED,OAAOrH,KAAKsH,uBACVtB,EACA1F,EAASO,IAAKD,GAAMA,EAAEqB,KAEzB,CASQ,YAAM,CACbuE,EACA9E,GAEA,MAAM8F,EAAMxH,KAAKyH,WAAWjB,EAAW9E,GACvC,IAAIgG,EACJ,IACEA,QAAe1H,KAAKwD,OAAOkB,IAAI8C,SACzBxH,KAAKwD,OAAO2E,QAAQX,EAAKE,EAAOC,KACvC,CAAC,MAAO3G,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACD,OAAOhB,KAAK4G,eAAec,EAAQA,EAAOC,KAC3C,CASQ,eAAMS,CACb5B,EACAjE,GAEA,MAAM/B,EAAMR,KAAKQ,IAAIC,IAAIT,KAAKoI,WACxBC,QAAgBrI,KAAKwD,OAAOqE,MAChC,CAAElF,KAAMJ,EAAI1B,IAAKa,GAAO1B,KAAKyH,WAAWjB,EAAW9E,KACnD,CAAA,GAWF,aAT+C1B,KAAKwD,OAAOsD,KAAK,CAC9DC,KAAMsB,EAAQP,KAAKjH,IAAKD,IACrBA,EAAUe,EAAY2G,UAAW,EAC3B1H,OAGF2H,QAASC,IACZA,EAAEnI,OAAOG,EAAIH,MAAMmI,EAAEnI,SAEpBgI,EAAQP,KAAKjH,IAAKD,IACvB,GAAKA,EAAUP,MAAO,MAAM,IAAIkD,EAAe3C,EAAUP,OACzD,GAAKO,EAAUmH,IAAK,CAClB,MAAM5B,EAAMzD,OAAOoD,OAAO,CAAA,EAAKlF,EAAUmH,KACzC,OAAO/H,KAAK4G,eAAeT,EAAMvF,EAAUmH,IAAIpG,EAAYqG,KAC5D,CACD,MAAM,IAAIzE,EAAc,yBAE3B,CAUQ,SAAMkF,CAAOC,EAAsBC,GAAW,GACrD,IACE,MAAMrI,QAAmCN,KAAKwD,OAAOoF,KAAKF,GAE1D,OADIpI,EAASuI,SAAS7I,KAAKQ,IAAIC,IAAIT,KAAKyI,KAAKK,KAAKxI,EAASuI,SACvDF,EAAiBrI,EAASyG,KACvBzG,CACR,CAAC,MAAOU,GACP,MAAMhB,KAAK0G,WAAW1F,EACvB,CACF,CAWD,cAAO2E,CACLlB,EACAsE,EACAxD,EAAO,iBACPyD,EAA6B,QAE7B,OAAOC,EAAK,GAAGD,OAAcvE,KAAQsE,KAAQxD,IAC9C,CAuBD,2BAAa2D,CAAexD,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAIyD,GAAG5C,OAAO5B,EAC9B,CAAC,MAAO3D,GACP,MAAM8D,EAAe4B,WAAW1F,EACjC,CACD,MAAM2F,GAAEA,EAAEtG,MAAEA,EAAK+G,OAAEA,GAAWf,EAC9B,IAAKM,EAAI,MAAM7B,EAAe4B,WAAWrG,EAAiB+G,EAC3D,CAuBD,2BAAagC,CAAe1D,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAIyD,GAAGhB,QAAQxD,EAC/B,CAAC,MAAO3D,GACP,MAAM8D,EAAe4B,WAAW1F,EACjC,CACD,MAAM2F,GAAEA,GAAON,EACf,IAAKM,EACH,MAAM,IAAIpD,EAAc,uCAAuCoB,EAClE,CAmCD,uBAAa0E,CACX3D,EACAF,EACAf,EACAsE,EACAO,EAAkB,CAAC,SAAU,WAE7B,MAAMC,EAAQ7D,EAAIyD,GAAGK,IAAI,UACnBC,EAAM,CACVjC,IAAK,oBAAsB/C,EAC3BE,KAAMF,EACNa,SAAUyD,EACVO,MAAOA,EACPI,KAAM,QAER,IACE,MAAMC,QAAwCJ,EAAM9C,OAClDgD,IAEI9C,GAAEA,GAAOgD,EACf,IAAKhD,EAAI,MAAM,IAAIpD,EAAc,yBAAyBkB,GAmB1D,WAlB4BiB,EAAIkE,QAAQ,CACtCT,GAAI3D,EACJqE,OAAQ,MACRC,KAAM,YAINC,KAAM,CACJC,OAAQ,CACNC,MAAO,CAACxF,GACR6E,MAAO,IAETY,QAAS,CACPD,MAAO,CAACxF,GACR6E,MAAOA,OAIC3C,GACZ,MAAM,IAAIpD,EACR,4BAA4BkB,WAAce,IAE/C,CAAC,MAAOxE,GACP,MAAM8D,EAAe4B,WAAW1F,EACjC,CACF,CAwBD,uBAAamJ,CAAWzE,EAAkBF,EAAgBf,GACxD,MAAM8E,EAAQ7D,EAAIyD,GAAGK,IAAI,UACnB9H,EAAK,oBAAsB+C,EACjC,IACE,MAAMgF,QAAYF,EAAM7E,IAAIhD,SACtB6H,EAAMpB,QAAQzG,EAAI+H,EAAI9B,KAC7B,CAAC,MAAO3G,GACP,MAAM8D,EAAe4B,WAAW1F,EACjC,CACF,CAyBD,iBAAgBoJ,GACdrK,MAAMqK,aACNC,EAAWC,YAAY5K,GACpBe,IAAI8J,EAAgBC,YACpBC,OACCC,EAAStG,GACTuG,EAAaJ,EAAgBC,WAAY,CAAA,IAE1CI,QAEHP,EAAWC,YAAY5K,GACpBe,IAAI8J,EAAgBM,YACpBJ,OACCK,EAAe1G,GACfuG,EAAaJ,EAAgBM,WAAY,CAAA,IAE1CD,OACJ,EAGHG,EAAQC,WAAWtL,GCtyBnBmF,EAAYuF,aAoBL,MAAMa,EAAU,cAQVC,EAAe,cAE5BC,EAASC,gBAAgBF,EAAcD"}
1
+ {"version":3,"file":"for-nano.js","sources":["../src/constants.ts","../src/NanoDispatch.ts","../src/adapter.ts","../src/index.ts"],"sourcesContent":[null,null,null,null],"names":["NanoFlavour","NanoDispatch","Dispatch","constructor","timeout","super","this","attemptCounter","active","close","changeHandler","error","response","headers","ctxArg","ctx","adapter","context","OperationKeys","UPDATE","Model","log","logger","for","split","filter","r","map","JSON","parse","e","count","length","debug","changes","rec","i","observerLastUpdate","last_seq","table","id","CouchDBKeys","SEPARATOR","operation","deleted","DELETE","rev","CREATE","step","reduce","accum","ids","Set","add","Object","keys","op","updateObservers","values","verbose","Array","from","initialize","subLog","subscribeToCouch","async","InternalError","client","feed","include_docs","since","bind","info","Promise","resolve","setTimeout","call","then","catch","createdByOnNanoCreateUpdate","data","key","model","user","get","name","UnsupportedError","NanoAdapter","CouchDBAdapter","scope","alias","shutdown","shutdownProxies","_client","undefined","getClient","password","host","dbName","config","con","connect","wrapDocumentScope","flags","assign","index","models","indexes","generateIndexes","res","createIndex","result","ConflictError","create","tableName","args","insert","parseError","ok","assignMetadata","createAll","bulk","docs","every","errors","el","push","reason","join","assignMultipleMetadata","read","_id","generateId","record","_rev","readAll","fetch","rows","doc","REV","update","updateAll","destroy","deleteAll","logCtx","results","DELETED","forEach","d","raw","rawInput","docsOnly","find","warning","warn","pass","protocol","Nano","createDatabase","db","deleteDatabase","createUser","roles","users","use","usr","type","created","request","method","path","body","admins","names","members","deleteUser","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","apply","UPDATED_BY","onCreateUpdate","Adapter","setCurrent","VERSION","PACKAGE_NAME","Metadata","registerLibrary"],"mappings":"mfAMO,MAAMA,EAAc,OCsCrB,MAAOC,UAAqBC,EAMhC,WAAAC,CAAoBC,EAAU,KAC5BC,QADkBC,KAAOF,QAAPA,EAJZE,KAAcC,eAAW,EAEzBD,KAAME,QAAY,CAIzB,CAOQ,KAAAC,GACP,OAAOJ,MAAMI,OACd,CAiCS,mBAAMC,CACdC,EACAC,EACAC,EACAC,GAEA,MAAMC,EAAOD,GACXR,KAAKU,QAASC,QACZC,EAAcC,OACd,CAAE,EACFC,GAEEC,EAAMN,EAAIO,OAAOC,IAAIjB,KAAKI,eAChC,GAAIC,EAAO,OAAOU,EAAIV,MAAM,4BAA4BA,GACxD,IACEC,EACsB,iBAAbA,EACHA,EACGY,MAAM,MACNC,OAAQC,KAAQA,GAChBC,IAAKD,GAAME,KAAKC,MAAMH,IACzBd,CAEP,CAAC,MAAOkB,GACP,OAAOT,EAAIV,MAAM,sCAAsCmB,EACxD,CACD,MAAMC,EAAQnB,EAASoB,OACvB,GAAID,EAAQ,EAAG,CACbV,EAAIY,MAAM,YAAYF,4BACtB,MAAMG,EAAUtB,EACbe,IAAI,CAACQ,EAAKC,KACT,GAAIA,IAAML,EAAQ,EAQhB,YANEzB,KAAK+B,qBACJF,EAAgCG,UAEjCjB,EAAIV,MACF,8BAA8BL,KAAK+B,0BAA2BF,EAAgCG,aAIpG,MAAMZ,EAAIS,GACHI,EAAOC,GAAMd,EAAEc,GAAGhB,MAAMiB,EAAYC,WAC3C,MAAO,CACLH,MAAOA,EACPC,GAAIA,EACJG,UAAWjB,EAAEkB,QACT1B,EAAc2B,OACwC,MAAtDnB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGc,IAAItB,MAAM,KAAK,GAC7CN,EAAc6B,OACd7B,EAAcC,OACpB6B,KAAMtB,EAAEQ,QAAQR,EAAEQ,QAAQF,OAAS,GAAGc,OAGzCG,OACC,CACEC,EAUAxB,KAEA,IAAKA,EAAG,OAAOwB,EACf,MAAMX,MAAEA,EAAKC,GAAEA,EAAEG,UAAEA,EAASK,KAAEA,GAAStB,EAWvC,OALKwB,EAAMX,KAAQW,EAAMX,GAAS,IAC7BW,EAAMX,GAAOI,KAChBO,EAAMX,GAAOI,GAAa,CAAEQ,IAAK,IAAIC,IAAOJ,KAAMA,IACpDE,EAAMX,GAAOI,GAAWQ,IAAIE,IAAIb,GAChCU,EAAMX,GAAOI,GAAWK,KAAOA,EACxBE,GAET,CAAE,GAGN,IAAK,MAAMX,KAASe,OAAOC,KAAKrB,GAC9B,IAAK,MAAMsB,KAAMF,OAAOC,KAAKrB,EAAQK,IACnC,UACQjC,KAAKmD,gBACTlB,EACAiB,EACA,IAAItB,EAAQK,GAAOiB,GAAIL,IAAIO,UAC3B3C,GAEFT,KAAK+B,mBAAqBH,EAAQK,GAAOiB,GAAIR,KAC7C3B,EAAIsC,QAAQ,kCAAkCH,SAAUjB,KACxDlB,EAAIY,MAAM,QAAQ2B,MAAMC,KAAK3B,EAAQK,GAAOiB,GAAIL,IAAIO,UACrD,CAAC,MAAO5B,GACPT,EAAIV,MACF,2CAA2C4B,SAAaiB,MAAO1B,IAElE,CAGN,CACF,CAoCkB,gBAAMgC,GACvB,MACMC,EADMzD,KAAKe,IAAIE,IAAIjB,KAAKwD,YACXvC,IAAIyC,GACvBC,eAAeD,IACb,IAAK1D,KAAKU,QACR,MAAM,IAAIkD,EAAc,2CAC1B,IAAI5D,KAAKE,OACT,IACGF,KAAKU,QAAgBmD,OAAOjC,QAC3B,CACEkC,KAAM,aACNC,cAAc,EACdC,MAAOhE,KAAK+B,oBAAsB,MAClCjC,QAASE,KAAKF,SAEhBE,KAAKI,cAAc6D,KAAKjE,MAE3B,CAAC,MAAOwB,GACP,KAAMxB,KAAKC,eAAiB,EAC1B,OAAOwD,EAAOpD,MAAM,2CAA2CmB,GAIjE,GAHAiC,EAAOS,KACL,2CAA2C1C,gCAExCxB,KAAKE,OAAQ,OAElB,aADM,IAAIiE,QAASC,GAAYC,WAAWD,EAASpE,KAAKF,UACjD4D,EAAiBY,KAAKtE,KAC9B,CACF,CAEDA,KAAKE,QAAS,EACdwD,EACGY,KAAKtE,MACLuE,KAAK,KACJvE,KAAKe,IAAImD,KAAK,mCAEfM,MAAOhD,IACN,MAAM,IAAIoC,EAAc,2CAA2CpC,IAExE,EC7MImC,eAAec,EAMpB9D,EACA+D,EACAC,EACAC,GAEA,IACE,MAAMC,EAAOlE,EAAQmE,IAAI,QACzBF,EAAMD,GAAOE,EAAKE,IAEnB,CAAC,MAAOvD,GACP,MAAM,IAAIwD,EACR,iEAEH,CACH,CA0DM,MAAOC,UAEHC,EACR,WAAArF,CAAYsF,EAAmBC,GAC7BrF,MAAMoF,EAAOzF,EAAa0F,EAC3B,CAOQ,cAAMC,SACPrF,KAAKsF,kBACPtF,KAAKuF,UAASvF,KAAKuF,aAAUC,EAClC,CAOS,SAAAC,GACR,MAAMZ,KAAEA,EAAIa,SAAEA,EAAQC,KAAEA,EAAIC,OAAEA,GAAW5F,KAAK6F,OACxCC,EAAMb,EAAYc,QAAQlB,EAAMa,EAAUC,GAChD,OAAOK,EAAkBF,EAAKF,EAAQf,EAAMa,EAC7C,CAWkB,WAAMO,CACvB5D,EACAuC,EACAqB,GAEA,OAAOjD,OAAOkD,aAAanG,MAAMkG,MAAM5D,EAAWuC,EAAOqB,GAAQ,CAC/DpB,KAAM,CACJE,KAAM/E,KAAK6F,OAAOhB,OAGvB,CAOkB,QAAAjF,GACjB,OAAO,IAAID,CACZ,CAwBkB,WAAMwG,IACpBC,GAEH,MAAMC,EAAgCC,EAAgBF,GACtD,IAAK,MAAMD,KAASE,EAAS,CAC3B,MAAME,QAAYvG,KAAK6D,OAAO2C,YAAYL,IACpCM,OAAEA,EAAMvE,GAAEA,EAAE6C,KAAEA,GAASwB,EAC7B,GAAe,aAAXE,EACF,MAAM,IAAIC,EAAc,mBAAmB3B,aAAgB7C,IAC9D,CACF,CA0BQ,YAAMyE,CACbC,EACA1E,EACA0C,KAEGiC,GAEH,IAAIvG,EACJ,IACEA,QAAiBN,KAAK6D,OAAOiD,OAAOlC,EACrC,CAAC,MAAOpD,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CAED,IAAKlB,EAAS0G,GACZ,MAAM,IAAIpD,EACR,4BAA4B1B,cAAe0E,KAE/C,OAAO5G,KAAKiH,eAAerC,EAAOtE,EAASkC,IAC5C,CA6BQ,eAAM0E,CACbN,EACA/D,EACAuD,KAEGS,GAEH,IAAIvG,EACJ,IACEA,QAAiBN,KAAK6D,OAAOsD,KAAK,CAAEC,KAAMhB,GAC3C,CAAC,MAAO5E,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CACD,IAAKlB,EAAS+G,MAAOjG,IAAOA,EAAEf,OAAQ,CACpC,MAAMiH,EAAShH,EAASqC,OAAO,CAACC,EAAiB2E,EAAIzF,KAC/CyF,EAAGlH,OACLuC,EAAM4E,KACJ,MAAM1F,MAAMyF,EAAGlH,QAAQkH,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD7E,GACN,IACH,MAAM,IAAIgB,EAAc0D,EAAOI,KAAK,MACrC,CAED,OAAO1H,KAAK2H,uBACVvB,EACA9F,EAASe,IAAKD,GAAMA,EAAEoB,KAEzB,CAuBQ,UAAMoF,CACbhB,EACA1E,KAEG2E,GAEH,MAAMgB,EAAM7H,KAAK8H,WAAWhH,EAAM8F,UAAUA,GAAY1E,GACxD,IAAI6F,EACJ,IACEA,QAAe/H,KAAK6D,OAAOiB,IAAI+C,EAChC,CAAC,MAAOrG,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CACD,OAAOxB,KAAKiH,eAAec,EAAQA,EAAOC,KAC3C,CA2BQ,aAAMC,CACbrB,EACA/D,KAEGgE,GAEH,MAAM5E,EAAQnB,EAAM8F,UAAUA,GAK9B,aAJsB5G,KAAK6D,OAAOqE,MAChC,CAAEjF,KAAMJ,EAAIxB,IAAKa,GAAOlC,KAAK8H,WAAW7F,EAAOC,KAC/C,CAAA,IAEaiG,KAAK9G,IAAKD,IACvB,GAAKA,EAAUf,MAAO,MAAM,IAAIuD,EAAexC,EAAUf,OACzD,GAAKe,EAAUgH,IAAK,CAClB,MAAM7B,EAAMvD,OAAOkD,OAAO,CAAA,EAAK9E,EAAUgH,KACzC,OAAOpI,KAAKiH,eAAeV,EAAMnF,EAAUgH,IAAIjG,EAAYkG,KAC5D,CACD,MAAM,IAAIzE,EAAc,yBAE3B,CA0BQ,YAAM0E,CACb1B,EACA1E,EACA0C,KAEGiC,GAEH,IAAIvG,EACJ,IACEA,QAAiBN,KAAK6D,OAAOiD,OAAOlC,EACrC,CAAC,MAAOpD,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CAED,IAAKlB,EAAS0G,GACZ,MAAM,IAAIpD,EACR,4BAA4B1B,cAAe0E,KAE/C,OAAO5G,KAAKiH,eAAerC,EAAOtE,EAASkC,IAC5C,CAUQ,eAAM+F,CACb3B,EACA/D,EACAuD,KAEGS,GAEH,IAAIvG,EACJ,IACEA,QAAiBN,KAAK6D,OAAOsD,KAAK,CAAEC,KAAMhB,GAC3C,CAAC,MAAO5E,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CACD,IAAKlB,EAAS+G,MAAOjG,IAAOA,EAAEf,OAAQ,CACpC,MAAMiH,EAAShH,EAASqC,OAAO,CAACC,EAAiB2E,EAAIzF,KAC/CyF,EAAGlH,OACLuC,EAAM4E,KACJ,MAAM1F,MAAMyF,EAAGlH,QAAQkH,EAAGE,OAAS,MAAMF,EAAGE,OAAW,MAEpD7E,GACN,IACH,MAAM,IAAIgB,EAAc0D,EAAOI,KAAK,MACrC,CAED,OAAO1H,KAAK2H,uBACVvB,EACA9F,EAASe,IAAKD,GAAMA,EAAEoB,KAEzB,CASQ,YAAM,CACboE,EACA1E,KAEG2E,GAEH,MAAMgB,EAAM7H,KAAK8H,WAAWhH,EAAM8F,UAAUA,GAAY1E,GACxD,IAAI6F,EACJ,IACEA,QAAe/H,KAAK6D,OAAOiB,IAAI+C,SACzB7H,KAAK6D,OAAO2E,QAAQX,EAAKE,EAAOC,KACvC,CAAC,MAAOxG,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CACD,OAAOxB,KAAKiH,eAAec,EAAQA,EAAOC,KAC3C,CASQ,eAAMS,CACb7B,EACA/D,KAEGgE,GAEH,MAAM9F,IAAEA,GAAQf,KAAK0I,OAAO7B,EAAM7G,KAAKyI,WACjCxG,EAAQnB,EAAM8F,UAAUA,GACxB+B,QAAgB3I,KAAK6D,OAAOqE,MAChC,CAAEjF,KAAMJ,EAAIxB,IAAKa,GAAOlC,KAAK8H,WAAW7F,EAAOC,KAC/C,CAAA,GAWF,aAT+ClC,KAAK6D,OAAOsD,KAAK,CAC9DC,KAAMuB,EAAQR,KAAK9G,IAAKD,IACrBA,EAAUe,EAAYyG,UAAW,EAC3BxH,OAGFyH,QAASC,IACZA,EAAEzI,OAAOU,EAAIV,MAAMyI,EAAEzI,SAEpBsI,EAAQR,KAAK9G,IAAKD,IACvB,GAAKA,EAAUf,MAAO,MAAM,IAAIuD,EAAexC,EAAUf,OACzD,GAAKe,EAAUgH,IAAK,CAClB,MAAM7B,EAAMvD,OAAOkD,OAAO,CAAA,EAAK9E,EAAUgH,KACzC,OAAOpI,KAAKiH,eAAeV,EAAMnF,EAAUgH,IAAIjG,EAAYkG,KAC5D,CACD,MAAM,IAAIzE,EAAc,yBAE3B,CAUQ,SAAMmF,CACbC,EACAC,GAAW,KACRpC,GAEH,IACE,MAAMvG,QAAmCN,KAAK6D,OAAOqF,KAAKF,GAC1D,GAAI1I,EAAS6I,QAAS,CACpB,MAAMpI,IAAEA,GAAQf,KAAK0I,OAAO7B,EAAM7G,KAAK+I,KACvChI,EAAIE,IAAIjB,KAAK+I,KAAKK,KAAK9I,EAAS6I,QACjC,CACD,OAAIF,EAAiB3I,EAAS8G,KACvB9G,CACR,CAAC,MAAOkB,GACP,MAAMxB,KAAK+G,WAAWvF,EACvB,CACF,CAWD,cAAOuE,CACLlB,EACAwE,EACA1D,EAAO,iBACP2D,EAA6B,QAE7B,OAAOC,EAAK,GAAGD,OAAczE,KAAQwE,KAAQ1D,IAC9C,CAuBD,2BAAa6D,CAAe1D,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAI2D,GAAG9C,OAAO5B,EAC9B,CAAC,MAAOvD,GACP,MAAM0D,EAAe6B,WAAWvF,EACjC,CACD,MAAMwF,GAAEA,EAAE3G,MAAEA,EAAKoH,OAAEA,GAAWhB,EAC9B,IAAKO,EAAI,MAAM9B,EAAe6B,WAAW1G,EAAiBoH,EAC3D,CAuBD,2BAAaiC,CAAe5D,EAAkBf,GAC5C,IAAI0B,EACJ,IACEA,QAAeX,EAAI2D,GAAGjB,QAAQzD,EAC/B,CAAC,MAAOvD,GACP,MAAM0D,EAAe6B,WAAWvF,EACjC,CACD,MAAMwF,GAAEA,GAAOP,EACf,IAAKO,EACH,MAAM,IAAIpD,EAAc,uCAAuCmB,EAClE,CAmCD,uBAAa4E,CACX7D,EACAF,EACAf,EACAwE,EACAO,EAAkB,CAAC,SAAU,WAE7B,MAAMC,EAAQ/D,EAAI2D,GAAGK,IAAI,UACnBC,EAAM,CACVlC,IAAK,oBAAsBhD,EAC3BE,KAAMF,EACNa,SAAU2D,EACVO,MAAOA,EACPI,KAAM,QAER,IACE,MAAMC,QAAwCJ,EAAM/C,OAClDiD,IAEI/C,GAAEA,GAAOiD,EACf,IAAKjD,EAAI,MAAM,IAAIpD,EAAc,yBAAyBiB,GAmB1D,WAlB4BiB,EAAIoE,QAAQ,CACtCT,GAAI7D,EACJuE,OAAQ,MACRC,KAAM,YAINC,KAAM,CACJC,OAAQ,CACNC,MAAO,CAAC1F,GACR+E,MAAO,IAETY,QAAS,CACPD,MAAO,CAAC1F,GACR+E,MAAOA,OAIC5C,GACZ,MAAM,IAAIpD,EACR,4BAA4BiB,WAAce,IAE/C,CAAC,MAAOpE,GACP,MAAM0D,EAAe6B,WAAWvF,EACjC,CACF,CAwBD,uBAAaiJ,CAAW3E,EAAkBF,EAAgBf,GACxD,MAAMgF,EAAQ/D,EAAI2D,GAAGK,IAAI,UACnB5H,EAAK,oBAAsB2C,EACjC,IACE,MAAMkF,QAAYF,EAAM/E,IAAI5C,SACtB2H,EAAMrB,QAAQtG,EAAI6H,EAAI/B,KAC7B,CAAC,MAAOxG,GACP,MAAM0D,EAAe6B,WAAWvF,EACjC,CACF,CAyBD,iBAAgBkJ,GACd3K,MAAM2K,aACNC,EAAWC,YAAYlL,GACpBuB,IAAI4J,EAAgBC,YACpBC,OACCC,EAASvG,GACTwG,EAAaJ,EAAgBC,WAAY,CAAA,IAE1CI,QAEHP,EAAWC,YAAYlL,GACpBuB,IAAI4J,EAAgBM,YACpBJ,OACCK,EAAe3G,GACfwG,EAAaJ,EAAgBM,WAAY,CAAA,IAE1CD,OACJ,EAGHG,EAAQC,WAAW5L,GC9zBnBuF,EAAYyF,aAoBL,MAAMa,EAAU,cAQVC,EAAe,cAE5BC,EAASC,gBAAgBF,EAAcD"}
@@ -4,6 +4,7 @@ exports.NanoDispatch = void 0;
4
4
  const core_1 = require("@decaf-ts/core");
5
5
  const db_decorators_1 = require("@decaf-ts/db-decorators");
6
6
  const for_couchdb_1 = require("@decaf-ts/for-couchdb");
7
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
7
8
  /**
8
9
  * @description Dispatcher for Nano database change events
9
10
  * @summary Handles the subscription to and processing of database change events from a Nano database,
@@ -45,10 +46,10 @@ class NanoDispatch extends core_1.Dispatch {
45
46
  this.active = false;
46
47
  }
47
48
  /**
48
- * @description Closes the dispatcher
49
- * @summary Stops the dispatcher and cleans up any active subscriptions or resources
50
- * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
51
- */
49
+ * @description Closes the dispatcher
50
+ * @summary Stops the dispatcher and cleans up any active subscriptions or resources
51
+ * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
52
+ */
52
53
  close() {
53
54
  return super.close();
54
55
  }
@@ -83,10 +84,10 @@ class NanoDispatch extends core_1.Dispatch {
83
84
  * end
84
85
  * end
85
86
  */
86
- async changeHandler(error, response,
87
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
88
- headers) {
89
- const log = this.log.for(this.changeHandler);
87
+ async changeHandler(error, response, headers, ctxArg) {
88
+ const ctx = (ctxArg ||
89
+ this.adapter.context(db_decorators_1.OperationKeys.UPDATE, {}, decorator_validation_1.Model));
90
+ const log = ctx.logger.for(this.changeHandler);
90
91
  if (error)
91
92
  return log.error(`Error in change request: ${error}`);
92
93
  try {
@@ -139,9 +140,7 @@ class NanoDispatch extends core_1.Dispatch {
139
140
  for (const table of Object.keys(changes)) {
140
141
  for (const op of Object.keys(changes[table])) {
141
142
  try {
142
- await this.updateObservers(table, op, [
143
- ...changes[table][op].ids.values(),
144
- ]);
143
+ await this.updateObservers(table, op, [...changes[table][op].ids.values()], ctx);
145
144
  this.observerLastUpdate = changes[table][op].step;
146
145
  log.verbose(`Observer refresh dispatched by ${op} for ${table}`);
147
146
  log.debug(`pks: ${Array.from(changes[table][op].ids.values())}`);
@@ -1,5 +1,8 @@
1
1
  import { Dispatch } from "@decaf-ts/core";
2
2
  import { DatabaseChangesResponse, DatabaseChangesResultItem, RequestError } from "nano";
3
+ import { Context } from "@decaf-ts/db-decorators";
4
+ import { CouchDBAdapter } from "@decaf-ts/for-couchdb";
5
+ import { NanoFlags } from "./types";
3
6
  /**
4
7
  * @description Dispatcher for Nano database change events
5
8
  * @summary Handles the subscription to and processing of database change events from a Nano database,
@@ -33,17 +36,17 @@ import { DatabaseChangesResponse, DatabaseChangesResultItem, RequestError } from
33
36
  * }
34
37
  * Dispatch <|-- NanoDispatch
35
38
  */
36
- export declare class NanoDispatch extends Dispatch {
39
+ export declare class NanoDispatch extends Dispatch<CouchDBAdapter<any, any, any>> {
37
40
  private timeout;
38
41
  private observerLastUpdate?;
39
42
  private attemptCounter;
40
43
  private active;
41
44
  constructor(timeout?: number);
42
45
  /**
43
- * @description Closes the dispatcher
44
- * @summary Stops the dispatcher and cleans up any active subscriptions or resources
45
- * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
46
- */
46
+ * @description Closes the dispatcher
47
+ * @summary Stops the dispatcher and cleans up any active subscriptions or resources
48
+ * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
49
+ */
47
50
  close(): Promise<void>;
48
51
  /**
49
52
  * @description Processes database change events
@@ -76,7 +79,7 @@ export declare class NanoDispatch extends Dispatch {
76
79
  * end
77
80
  * end
78
81
  */
79
- protected changeHandler(error: RequestError | null, response: (DatabaseChangesResponse | DatabaseChangesResultItem)[] | string, headers?: any): Promise<void>;
82
+ protected changeHandler(error: RequestError | null, response: (DatabaseChangesResponse | DatabaseChangesResultItem)[] | string, headers?: any, ctxArg?: Context<NanoFlags>): Promise<void>;
80
83
  /**
81
84
  * @description Initializes the dispatcher and subscribes to database changes
82
85
  * @summary Sets up the continuous changes feed subscription to the Nano database
@@ -1 +1 @@
1
- {"version":3,"file":"NanoDispatch.js","sourceRoot":"","sources":["../src/NanoDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NanoDispatch.js","sourceRoot":"","sources":["../src/NanoDispatch.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,6 @@
1
1
  import { Model } from "@decaf-ts/decorator-validation";
2
- import { MangoQuery } from "@decaf-ts/for-couchdb";
3
- import { Repository } from "@decaf-ts/core";
2
+ import { CouchDBRepository } from "@decaf-ts/for-couchdb";
4
3
  import { NanoAdapter } from "./adapter";
5
- import { NanoFlags } from "./types";
6
- import { Context } from "@decaf-ts/db-decorators";
7
4
  /**
8
5
  * @description Type for Nano database repositories
9
6
  * @summary A specialized repository type for working with Nano databases, extending the base Repository
@@ -12,4 +9,4 @@ import { Context } from "@decaf-ts/db-decorators";
12
9
  * @typedef {Repository<M, MangoQuery, NanoAdapter, NanoFlags, Context<NanoFlags>>} NanoRepository
13
10
  * @memberOf module:for-nano
14
11
  */
15
- export type NanoRepository<M extends Model> = Repository<M, MangoQuery, NanoAdapter, NanoFlags, Context<NanoFlags>>;
12
+ export type NanoRepository<M extends Model> = CouchDBRepository<M, NanoAdapter>;
package/lib/adapter.cjs CHANGED
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.NanoAdapter = void 0;
7
7
  exports.createdByOnNanoCreateUpdate = createdByOnNanoCreateUpdate;
8
8
  const db_decorators_1 = require("@decaf-ts/db-decorators");
9
- require("reflect-metadata");
10
9
  const for_couchdb_1 = require("@decaf-ts/for-couchdb");
11
10
  const nano_1 = __importDefault(require("nano"));
11
+ const decorator_validation_1 = require("@decaf-ts/decorator-validation");
12
12
  const core_1 = require("@decaf-ts/core");
13
13
  const constants_1 = require("./constants.cjs");
14
14
  const NanoDispatch_1 = require("./NanoDispatch.cjs");
@@ -208,7 +208,9 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
208
208
  * A-->>A: throw InternalError
209
209
  * end
210
210
  */
211
- async create(tableName, id, model) {
211
+ async create(tableName, id, model,
212
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
213
+ ...args) {
212
214
  let response;
213
215
  try {
214
216
  response = await this.client.insert(model);
@@ -247,7 +249,9 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
247
249
  * A-->>A: throw parseError(e)
248
250
  * end
249
251
  */
250
- async createAll(tableName, ids, models) {
252
+ async createAll(tableName, ids, models,
253
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
254
+ ...args) {
251
255
  let response;
252
256
  try {
253
257
  response = await this.client.bulk({ docs: models });
@@ -286,8 +290,10 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
286
290
  * A-->>A: throw parseError(e)
287
291
  * end
288
292
  */
289
- async read(tableName, id) {
290
- const _id = this.generateId(tableName, id);
293
+ async read(tableName, id,
294
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
295
+ ...args) {
296
+ const _id = this.generateId(decorator_validation_1.Model.tableName(tableName), id);
291
297
  let record;
292
298
  try {
293
299
  record = await this.client.get(_id);
@@ -322,8 +328,11 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
322
328
  * end
323
329
  * A-->>A: return documents with metadata
324
330
  */
325
- async readAll(tableName, ids) {
326
- const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(tableName, id)) }, {});
331
+ async readAll(tableName, ids,
332
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
333
+ ...args) {
334
+ const table = decorator_validation_1.Model.tableName(tableName);
335
+ const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(table, id)) }, {});
327
336
  return results.rows.map((r) => {
328
337
  if (r.error)
329
338
  throw new db_decorators_1.InternalError(r.error);
@@ -358,7 +367,9 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
358
367
  * A-->>A: throw InternalError
359
368
  * end
360
369
  */
361
- async update(tableName, id, model) {
370
+ async update(tableName, id, model,
371
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
372
+ ...args) {
362
373
  let response;
363
374
  try {
364
375
  response = await this.client.insert(model);
@@ -378,7 +389,9 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
378
389
  * @param {Promise<Array<Record<string, any>>>} models - Array of updated document data
379
390
  * @return {Promise<Promise<Array<Record<string, any>>>>} A promise that resolves to the updated documents with metadata
380
391
  */
381
- async updateAll(tableName, ids, models) {
392
+ async updateAll(tableName, ids, models,
393
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
394
+ ...args) {
382
395
  let response;
383
396
  try {
384
397
  response = await this.client.bulk({ docs: models });
@@ -403,8 +416,10 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
403
416
  * @param {string|number} id - The document identifier
404
417
  * @return {Promise<Record<string, any>>} A promise that resolves to the deleted document with metadata
405
418
  */
406
- async delete(tableName, id) {
407
- const _id = this.generateId(tableName, id);
419
+ async delete(tableName, id,
420
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
421
+ ...args) {
422
+ const _id = this.generateId(decorator_validation_1.Model.tableName(tableName), id);
408
423
  let record;
409
424
  try {
410
425
  record = await this.client.get(_id);
@@ -422,9 +437,10 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
422
437
  * @param {Array<string|number|bigint>} ids - Array of document identifiers to delete
423
438
  * @return {Promise<Array<Record<string, any>>>} A promise resolving to the deleted documents with metadata
424
439
  */
425
- async deleteAll(tableName, ids) {
426
- const log = this.log.for(this.deleteAll);
427
- const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(tableName, id)) }, {});
440
+ async deleteAll(tableName, ids, ...args) {
441
+ const { log } = this.logCtx(args, this.deleteAll);
442
+ const table = decorator_validation_1.Model.tableName(tableName);
443
+ const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(table, id)) }, {});
428
444
  const deletion = await this.client.bulk({
429
445
  docs: results.rows.map((r) => {
430
446
  r[for_couchdb_1.CouchDBKeys.DELETED] = true;
@@ -453,11 +469,13 @@ class NanoAdapter extends for_couchdb_1.CouchDBAdapter {
453
469
  * @param {boolean} [docsOnly=true] - Whether to return only the docs array or the full response
454
470
  * @return {Promise<R>} A promise that resolves to the query result, shaped according to docsOnly
455
471
  */
456
- async raw(rawInput, docsOnly = true) {
472
+ async raw(rawInput, docsOnly = true, ...args) {
457
473
  try {
458
474
  const response = await this.client.find(rawInput);
459
- if (response.warning)
460
- this.log.for(this.raw).warn(response.warning);
475
+ if (response.warning) {
476
+ const { log } = this.logCtx(args, this.raw);
477
+ log.for(this.raw).warn(response.warning);
478
+ }
461
479
  if (docsOnly)
462
480
  return response.docs;
463
481
  return response;
package/lib/adapter.d.ts CHANGED
@@ -1,10 +1,9 @@
1
- import { Context, OperationKeys } from "@decaf-ts/db-decorators";
2
- import "reflect-metadata";
1
+ import { Context, OperationKeys, PrimaryKeyType } from "@decaf-ts/db-decorators";
3
2
  import { CouchDBAdapter, MangoQuery } from "@decaf-ts/for-couchdb";
4
3
  import { DocumentScope, ServerScope } from "nano";
5
4
  import { Model } from "@decaf-ts/decorator-validation";
6
5
  import { NanoConfig, NanoFlags } from "./types";
7
- import { RelationsMetadata } from "@decaf-ts/core";
6
+ import { ContextualArgs, FlagsOf, RelationsMetadata } from "@decaf-ts/core";
8
7
  import { NanoRepository } from "./NanoRepository";
9
8
  import { NanoDispatch } from "./NanoDispatch";
10
9
  import { Constructor } from "@decaf-ts/decoration";
@@ -91,7 +90,7 @@ export declare function createdByOnNanoCreateUpdate<M extends Model, R extends N
91
90
  * }
92
91
  * CouchDBAdapter <|-- NanoAdapter
93
92
  */
94
- export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScope<any>, NanoFlags, Context<NanoFlags>> {
93
+ export declare class NanoAdapter<C extends Context<NanoFlags> = Context<NanoFlags>> extends CouchDBAdapter<NanoConfig, DocumentScope<any>, C> {
95
94
  constructor(scope: NanoConfig, alias?: string);
96
95
  /**
97
96
  * @description Shuts down the adapter instance
@@ -114,7 +113,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
114
113
  * @param {Partial<NanoFlags>} flags - Partial flags to be merged
115
114
  * @return {Promise<NanoFlags>} Complete flags for the operation
116
115
  */
117
- protected flags<M extends Model>(operation: OperationKeys, model: Constructor<M>, flags: Partial<NanoFlags>): Promise<NanoFlags>;
116
+ protected flags<M extends Model>(operation: OperationKeys, model: Constructor<M>, flags: Partial<FlagsOf<C>>): Promise<FlagsOf<C>>;
118
117
  /**
119
118
  * @description Creates a new NanoDispatch instance
120
119
  * @summary Returns a dispatcher for handling Nano-specific operations
@@ -168,7 +167,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
168
167
  * A-->>A: throw InternalError
169
168
  * end
170
169
  */
171
- create(tableName: string, id: string | number, model: Record<string, any>): Promise<Record<string, any>>;
170
+ create<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
172
171
  /**
173
172
  * @description Creates multiple documents in the database
174
173
  * @summary Inserts multiple documents into the Nano database in a single bulk operation
@@ -196,7 +195,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
196
195
  * A-->>A: throw parseError(e)
197
196
  * end
198
197
  */
199
- createAll(tableName: string, ids: string[] | number[], models: Record<string, any>[]): Promise<Record<string, any>[]>;
198
+ createAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
200
199
  /**
201
200
  * @description Retrieves a document from the database
202
201
  * @summary Fetches a single document from the Nano database by its ID
@@ -218,7 +217,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
218
217
  * A-->>A: throw parseError(e)
219
218
  * end
220
219
  */
221
- read(tableName: string, id: string | number): Promise<Record<string, any>>;
220
+ read<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
222
221
  /**
223
222
  * @description Retrieves multiple documents from the database
224
223
  * @summary Fetches multiple documents from the Nano database by their IDs in a single operation
@@ -244,7 +243,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
244
243
  * end
245
244
  * A-->>A: return documents with metadata
246
245
  */
247
- readAll(tableName: string, ids: (string | number | bigint)[]): Promise<Record<string, any>[]>;
246
+ readAll<M extends Model>(tableName: Constructor<M>, ids: (string | number | bigint)[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
248
247
  /**
249
248
  * @description Updates a document in the database
250
249
  * @summary Updates an existing document in the Nano database with the provided data
@@ -269,7 +268,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
269
268
  * A-->>A: throw InternalError
270
269
  * end
271
270
  */
272
- update(tableName: string, id: string | number, model: Record<string, any>): Promise<Record<string, any>>;
271
+ update<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
273
272
  /**
274
273
  * @description Updates multiple documents in the database
275
274
  * @summary Performs a bulk update operation on the Nano database for the provided documents
@@ -278,7 +277,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
278
277
  * @param {Promise<Array<Record<string, any>>>} models - Array of updated document data
279
278
  * @return {Promise<Promise<Array<Record<string, any>>>>} A promise that resolves to the updated documents with metadata
280
279
  */
281
- updateAll(tableName: string, ids: string[] | number[], models: Record<string, any>[]): Promise<Record<string, any>[]>;
280
+ updateAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
282
281
  /**
283
282
  * @description Deletes a document from the database
284
283
  * @summary Removes a single document from the Nano database by its ID and returns the deleted document metadata
@@ -286,7 +285,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
286
285
  * @param {string|number} id - The document identifier
287
286
  * @return {Promise<Record<string, any>>} A promise that resolves to the deleted document with metadata
288
287
  */
289
- delete(tableName: string, id: string | number): Promise<Record<string, any>>;
288
+ delete<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
290
289
  /**
291
290
  * @description Deletes multiple documents from the database
292
291
  * @summary Performs a bulk delete operation for the provided IDs and returns the deleted documents metadata
@@ -294,7 +293,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
294
293
  * @param {Array<string|number|bigint>} ids - Array of document identifiers to delete
295
294
  * @return {Promise<Array<Record<string, any>>>} A promise resolving to the deleted documents with metadata
296
295
  */
297
- deleteAll(tableName: string, ids: (string | number | bigint)[]): Promise<Record<string, any>[]>;
296
+ deleteAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
298
297
  /**
299
298
  * @description Executes a raw Mango query against the database
300
299
  * @summary Runs a Mango query using Nano's find API and optionally returns only the documents array
@@ -303,7 +302,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
303
302
  * @param {boolean} [docsOnly=true] - Whether to return only the docs array or the full response
304
303
  * @return {Promise<R>} A promise that resolves to the query result, shaped according to docsOnly
305
304
  */
306
- raw<R>(rawInput: MangoQuery, docsOnly?: boolean): Promise<R>;
305
+ raw<R>(rawInput: MangoQuery, docsOnly?: boolean, ...args: ContextualArgs<C>): Promise<R>;
307
306
  /**
308
307
  * @description Establishes a connection to a Nano (CouchDB) server
309
308
  * @summary Creates and returns a Nano ServerScope using the given credentials, host, and protocol
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../src/adapter.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
1
  import { Dispatch } from "@decaf-ts/core";
2
2
  import { DatabaseChangesResponse, DatabaseChangesResultItem, RequestError } from "nano";
3
+ import { Context } from "@decaf-ts/db-decorators";
4
+ import { CouchDBAdapter } from "@decaf-ts/for-couchdb";
5
+ import { NanoFlags } from "./types";
3
6
  /**
4
7
  * @description Dispatcher for Nano database change events
5
8
  * @summary Handles the subscription to and processing of database change events from a Nano database,
@@ -33,17 +36,17 @@ import { DatabaseChangesResponse, DatabaseChangesResultItem, RequestError } from
33
36
  * }
34
37
  * Dispatch <|-- NanoDispatch
35
38
  */
36
- export declare class NanoDispatch extends Dispatch {
39
+ export declare class NanoDispatch extends Dispatch<CouchDBAdapter<any, any, any>> {
37
40
  private timeout;
38
41
  private observerLastUpdate?;
39
42
  private attemptCounter;
40
43
  private active;
41
44
  constructor(timeout?: number);
42
45
  /**
43
- * @description Closes the dispatcher
44
- * @summary Stops the dispatcher and cleans up any active subscriptions or resources
45
- * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
46
- */
46
+ * @description Closes the dispatcher
47
+ * @summary Stops the dispatcher and cleans up any active subscriptions or resources
48
+ * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
49
+ */
47
50
  close(): Promise<void>;
48
51
  /**
49
52
  * @description Processes database change events
@@ -76,7 +79,7 @@ export declare class NanoDispatch extends Dispatch {
76
79
  * end
77
80
  * end
78
81
  */
79
- protected changeHandler(error: RequestError | null, response: (DatabaseChangesResponse | DatabaseChangesResultItem)[] | string, headers?: any): Promise<void>;
82
+ protected changeHandler(error: RequestError | null, response: (DatabaseChangesResponse | DatabaseChangesResultItem)[] | string, headers?: any, ctxArg?: Context<NanoFlags>): Promise<void>;
80
83
  /**
81
84
  * @description Initializes the dispatcher and subscribes to database changes
82
85
  * @summary Sets up the continuous changes feed subscription to the Nano database
@@ -1,6 +1,7 @@
1
1
  import { Dispatch } from "@decaf-ts/core";
2
2
  import { InternalError, OperationKeys } from "@decaf-ts/db-decorators";
3
3
  import { CouchDBKeys } from "@decaf-ts/for-couchdb";
4
+ import { Model } from "@decaf-ts/decorator-validation";
4
5
  /**
5
6
  * @description Dispatcher for Nano database change events
6
7
  * @summary Handles the subscription to and processing of database change events from a Nano database,
@@ -42,10 +43,10 @@ export class NanoDispatch extends Dispatch {
42
43
  this.active = false;
43
44
  }
44
45
  /**
45
- * @description Closes the dispatcher
46
- * @summary Stops the dispatcher and cleans up any active subscriptions or resources
47
- * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
48
- */
46
+ * @description Closes the dispatcher
47
+ * @summary Stops the dispatcher and cleans up any active subscriptions or resources
48
+ * @return {Promise<void>} A promise that resolves when the dispatcher has been closed
49
+ */
49
50
  close() {
50
51
  return super.close();
51
52
  }
@@ -80,10 +81,10 @@ export class NanoDispatch extends Dispatch {
80
81
  * end
81
82
  * end
82
83
  */
83
- async changeHandler(error, response,
84
- // eslint-disable-next-line @typescript-eslint/no-unused-vars
85
- headers) {
86
- const log = this.log.for(this.changeHandler);
84
+ async changeHandler(error, response, headers, ctxArg) {
85
+ const ctx = (ctxArg ||
86
+ this.adapter.context(OperationKeys.UPDATE, {}, Model));
87
+ const log = ctx.logger.for(this.changeHandler);
87
88
  if (error)
88
89
  return log.error(`Error in change request: ${error}`);
89
90
  try {
@@ -136,9 +137,7 @@ export class NanoDispatch extends Dispatch {
136
137
  for (const table of Object.keys(changes)) {
137
138
  for (const op of Object.keys(changes[table])) {
138
139
  try {
139
- await this.updateObservers(table, op, [
140
- ...changes[table][op].ids.values(),
141
- ]);
140
+ await this.updateObservers(table, op, [...changes[table][op].ids.values()], ctx);
142
141
  this.observerLastUpdate = changes[table][op].step;
143
142
  log.verbose(`Observer refresh dispatched by ${op} for ${table}`);
144
143
  log.debug(`pks: ${Array.from(changes[table][op].ids.values())}`);
@@ -1 +1 @@
1
- {"version":3,"file":"NanoDispatch.js","sourceRoot":"","sources":["../../src/NanoDispatch.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"NanoDispatch.js","sourceRoot":"","sources":["../../src/NanoDispatch.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,6 @@
1
1
  import { Model } from "@decaf-ts/decorator-validation";
2
- import { MangoQuery } from "@decaf-ts/for-couchdb";
3
- import { Repository } from "@decaf-ts/core";
2
+ import { CouchDBRepository } from "@decaf-ts/for-couchdb";
4
3
  import { NanoAdapter } from "./adapter";
5
- import { NanoFlags } from "./types";
6
- import { Context } from "@decaf-ts/db-decorators";
7
4
  /**
8
5
  * @description Type for Nano database repositories
9
6
  * @summary A specialized repository type for working with Nano databases, extending the base Repository
@@ -12,4 +9,4 @@ import { Context } from "@decaf-ts/db-decorators";
12
9
  * @typedef {Repository<M, MangoQuery, NanoAdapter, NanoFlags, Context<NanoFlags>>} NanoRepository
13
10
  * @memberOf module:for-nano
14
11
  */
15
- export type NanoRepository<M extends Model> = Repository<M, MangoQuery, NanoAdapter, NanoFlags, Context<NanoFlags>>;
12
+ export type NanoRepository<M extends Model> = CouchDBRepository<M, NanoAdapter>;
@@ -1,10 +1,9 @@
1
- import { Context, OperationKeys } from "@decaf-ts/db-decorators";
2
- import "reflect-metadata";
1
+ import { Context, OperationKeys, PrimaryKeyType } from "@decaf-ts/db-decorators";
3
2
  import { CouchDBAdapter, MangoQuery } from "@decaf-ts/for-couchdb";
4
3
  import { DocumentScope, ServerScope } from "nano";
5
4
  import { Model } from "@decaf-ts/decorator-validation";
6
5
  import { NanoConfig, NanoFlags } from "./types";
7
- import { RelationsMetadata } from "@decaf-ts/core";
6
+ import { ContextualArgs, FlagsOf, RelationsMetadata } from "@decaf-ts/core";
8
7
  import { NanoRepository } from "./NanoRepository";
9
8
  import { NanoDispatch } from "./NanoDispatch";
10
9
  import { Constructor } from "@decaf-ts/decoration";
@@ -91,7 +90,7 @@ export declare function createdByOnNanoCreateUpdate<M extends Model, R extends N
91
90
  * }
92
91
  * CouchDBAdapter <|-- NanoAdapter
93
92
  */
94
- export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScope<any>, NanoFlags, Context<NanoFlags>> {
93
+ export declare class NanoAdapter<C extends Context<NanoFlags> = Context<NanoFlags>> extends CouchDBAdapter<NanoConfig, DocumentScope<any>, C> {
95
94
  constructor(scope: NanoConfig, alias?: string);
96
95
  /**
97
96
  * @description Shuts down the adapter instance
@@ -114,7 +113,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
114
113
  * @param {Partial<NanoFlags>} flags - Partial flags to be merged
115
114
  * @return {Promise<NanoFlags>} Complete flags for the operation
116
115
  */
117
- protected flags<M extends Model>(operation: OperationKeys, model: Constructor<M>, flags: Partial<NanoFlags>): Promise<NanoFlags>;
116
+ protected flags<M extends Model>(operation: OperationKeys, model: Constructor<M>, flags: Partial<FlagsOf<C>>): Promise<FlagsOf<C>>;
118
117
  /**
119
118
  * @description Creates a new NanoDispatch instance
120
119
  * @summary Returns a dispatcher for handling Nano-specific operations
@@ -168,7 +167,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
168
167
  * A-->>A: throw InternalError
169
168
  * end
170
169
  */
171
- create(tableName: string, id: string | number, model: Record<string, any>): Promise<Record<string, any>>;
170
+ create<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
172
171
  /**
173
172
  * @description Creates multiple documents in the database
174
173
  * @summary Inserts multiple documents into the Nano database in a single bulk operation
@@ -196,7 +195,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
196
195
  * A-->>A: throw parseError(e)
197
196
  * end
198
197
  */
199
- createAll(tableName: string, ids: string[] | number[], models: Record<string, any>[]): Promise<Record<string, any>[]>;
198
+ createAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
200
199
  /**
201
200
  * @description Retrieves a document from the database
202
201
  * @summary Fetches a single document from the Nano database by its ID
@@ -218,7 +217,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
218
217
  * A-->>A: throw parseError(e)
219
218
  * end
220
219
  */
221
- read(tableName: string, id: string | number): Promise<Record<string, any>>;
220
+ read<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
222
221
  /**
223
222
  * @description Retrieves multiple documents from the database
224
223
  * @summary Fetches multiple documents from the Nano database by their IDs in a single operation
@@ -244,7 +243,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
244
243
  * end
245
244
  * A-->>A: return documents with metadata
246
245
  */
247
- readAll(tableName: string, ids: (string | number | bigint)[]): Promise<Record<string, any>[]>;
246
+ readAll<M extends Model>(tableName: Constructor<M>, ids: (string | number | bigint)[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
248
247
  /**
249
248
  * @description Updates a document in the database
250
249
  * @summary Updates an existing document in the Nano database with the provided data
@@ -269,7 +268,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
269
268
  * A-->>A: throw InternalError
270
269
  * end
271
270
  */
272
- update(tableName: string, id: string | number, model: Record<string, any>): Promise<Record<string, any>>;
271
+ update<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, model: Record<string, any>, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
273
272
  /**
274
273
  * @description Updates multiple documents in the database
275
274
  * @summary Performs a bulk update operation on the Nano database for the provided documents
@@ -278,7 +277,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
278
277
  * @param {Promise<Array<Record<string, any>>>} models - Array of updated document data
279
278
  * @return {Promise<Promise<Array<Record<string, any>>>>} A promise that resolves to the updated documents with metadata
280
279
  */
281
- updateAll(tableName: string, ids: string[] | number[], models: Record<string, any>[]): Promise<Record<string, any>[]>;
280
+ updateAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], models: Record<string, any>[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
282
281
  /**
283
282
  * @description Deletes a document from the database
284
283
  * @summary Removes a single document from the Nano database by its ID and returns the deleted document metadata
@@ -286,7 +285,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
286
285
  * @param {string|number} id - The document identifier
287
286
  * @return {Promise<Record<string, any>>} A promise that resolves to the deleted document with metadata
288
287
  */
289
- delete(tableName: string, id: string | number): Promise<Record<string, any>>;
288
+ delete<M extends Model>(tableName: Constructor<M>, id: PrimaryKeyType, ...args: ContextualArgs<C>): Promise<Record<string, any>>;
290
289
  /**
291
290
  * @description Deletes multiple documents from the database
292
291
  * @summary Performs a bulk delete operation for the provided IDs and returns the deleted documents metadata
@@ -294,7 +293,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
294
293
  * @param {Array<string|number|bigint>} ids - Array of document identifiers to delete
295
294
  * @return {Promise<Array<Record<string, any>>>} A promise resolving to the deleted documents with metadata
296
295
  */
297
- deleteAll(tableName: string, ids: (string | number | bigint)[]): Promise<Record<string, any>[]>;
296
+ deleteAll<M extends Model>(tableName: Constructor<M>, ids: PrimaryKeyType[], ...args: ContextualArgs<C>): Promise<Record<string, any>[]>;
298
297
  /**
299
298
  * @description Executes a raw Mango query against the database
300
299
  * @summary Runs a Mango query using Nano's find API and optionally returns only the documents array
@@ -303,7 +302,7 @@ export declare class NanoAdapter extends CouchDBAdapter<NanoConfig, DocumentScop
303
302
  * @param {boolean} [docsOnly=true] - Whether to return only the docs array or the full response
304
303
  * @return {Promise<R>} A promise that resolves to the query result, shaped according to docsOnly
305
304
  */
306
- raw<R>(rawInput: MangoQuery, docsOnly?: boolean): Promise<R>;
305
+ raw<R>(rawInput: MangoQuery, docsOnly?: boolean, ...args: ContextualArgs<C>): Promise<R>;
307
306
  /**
308
307
  * @description Establishes a connection to a Nano (CouchDB) server
309
308
  * @summary Creates and returns a Nano ServerScope using the given credentials, host, and protocol
@@ -1,7 +1,7 @@
1
1
  import { ConflictError, InternalError, onCreate, onCreateUpdate, } from "@decaf-ts/db-decorators";
2
- import "reflect-metadata";
3
2
  import { CouchDBAdapter, CouchDBKeys, generateIndexes, wrapDocumentScope, } from "@decaf-ts/for-couchdb";
4
3
  import Nano from "nano";
4
+ import { Model } from "@decaf-ts/decorator-validation";
5
5
  import { Adapter, PersistenceKeys, UnsupportedError, } from "@decaf-ts/core";
6
6
  import { NanoFlavour } from "./constants.js";
7
7
  import { NanoDispatch } from "./NanoDispatch.js";
@@ -201,7 +201,9 @@ export class NanoAdapter extends CouchDBAdapter {
201
201
  * A-->>A: throw InternalError
202
202
  * end
203
203
  */
204
- async create(tableName, id, model) {
204
+ async create(tableName, id, model,
205
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
206
+ ...args) {
205
207
  let response;
206
208
  try {
207
209
  response = await this.client.insert(model);
@@ -240,7 +242,9 @@ export class NanoAdapter extends CouchDBAdapter {
240
242
  * A-->>A: throw parseError(e)
241
243
  * end
242
244
  */
243
- async createAll(tableName, ids, models) {
245
+ async createAll(tableName, ids, models,
246
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
247
+ ...args) {
244
248
  let response;
245
249
  try {
246
250
  response = await this.client.bulk({ docs: models });
@@ -279,8 +283,10 @@ export class NanoAdapter extends CouchDBAdapter {
279
283
  * A-->>A: throw parseError(e)
280
284
  * end
281
285
  */
282
- async read(tableName, id) {
283
- const _id = this.generateId(tableName, id);
286
+ async read(tableName, id,
287
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
288
+ ...args) {
289
+ const _id = this.generateId(Model.tableName(tableName), id);
284
290
  let record;
285
291
  try {
286
292
  record = await this.client.get(_id);
@@ -315,8 +321,11 @@ export class NanoAdapter extends CouchDBAdapter {
315
321
  * end
316
322
  * A-->>A: return documents with metadata
317
323
  */
318
- async readAll(tableName, ids) {
319
- const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(tableName, id)) }, {});
324
+ async readAll(tableName, ids,
325
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
326
+ ...args) {
327
+ const table = Model.tableName(tableName);
328
+ const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(table, id)) }, {});
320
329
  return results.rows.map((r) => {
321
330
  if (r.error)
322
331
  throw new InternalError(r.error);
@@ -351,7 +360,9 @@ export class NanoAdapter extends CouchDBAdapter {
351
360
  * A-->>A: throw InternalError
352
361
  * end
353
362
  */
354
- async update(tableName, id, model) {
363
+ async update(tableName, id, model,
364
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
365
+ ...args) {
355
366
  let response;
356
367
  try {
357
368
  response = await this.client.insert(model);
@@ -371,7 +382,9 @@ export class NanoAdapter extends CouchDBAdapter {
371
382
  * @param {Promise<Array<Record<string, any>>>} models - Array of updated document data
372
383
  * @return {Promise<Promise<Array<Record<string, any>>>>} A promise that resolves to the updated documents with metadata
373
384
  */
374
- async updateAll(tableName, ids, models) {
385
+ async updateAll(tableName, ids, models,
386
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
387
+ ...args) {
375
388
  let response;
376
389
  try {
377
390
  response = await this.client.bulk({ docs: models });
@@ -396,8 +409,10 @@ export class NanoAdapter extends CouchDBAdapter {
396
409
  * @param {string|number} id - The document identifier
397
410
  * @return {Promise<Record<string, any>>} A promise that resolves to the deleted document with metadata
398
411
  */
399
- async delete(tableName, id) {
400
- const _id = this.generateId(tableName, id);
412
+ async delete(tableName, id,
413
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
414
+ ...args) {
415
+ const _id = this.generateId(Model.tableName(tableName), id);
401
416
  let record;
402
417
  try {
403
418
  record = await this.client.get(_id);
@@ -415,9 +430,10 @@ export class NanoAdapter extends CouchDBAdapter {
415
430
  * @param {Array<string|number|bigint>} ids - Array of document identifiers to delete
416
431
  * @return {Promise<Array<Record<string, any>>>} A promise resolving to the deleted documents with metadata
417
432
  */
418
- async deleteAll(tableName, ids) {
419
- const log = this.log.for(this.deleteAll);
420
- const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(tableName, id)) }, {});
433
+ async deleteAll(tableName, ids, ...args) {
434
+ const { log } = this.logCtx(args, this.deleteAll);
435
+ const table = Model.tableName(tableName);
436
+ const results = await this.client.fetch({ keys: ids.map((id) => this.generateId(table, id)) }, {});
421
437
  const deletion = await this.client.bulk({
422
438
  docs: results.rows.map((r) => {
423
439
  r[CouchDBKeys.DELETED] = true;
@@ -446,11 +462,13 @@ export class NanoAdapter extends CouchDBAdapter {
446
462
  * @param {boolean} [docsOnly=true] - Whether to return only the docs array or the full response
447
463
  * @return {Promise<R>} A promise that resolves to the query result, shaped according to docsOnly
448
464
  */
449
- async raw(rawInput, docsOnly = true) {
465
+ async raw(rawInput, docsOnly = true, ...args) {
450
466
  try {
451
467
  const response = await this.client.find(rawInput);
452
- if (response.warning)
453
- this.log.for(this.raw).warn(response.warning);
468
+ if (response.warning) {
469
+ const { log } = this.logCtx(args, this.raw);
470
+ log.for(this.raw).warn(response.warning);
471
+ }
454
472
  if (docsOnly)
455
473
  return response.docs;
456
474
  return response;
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../src/adapter.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export * from "./adapter";
13
13
  * @const VERSION
14
14
  * @memberOf module:for-nano
15
15
  */
16
- export declare const VERSION = "0.1.14";
16
+ export declare const VERSION = "0.2.1";
17
17
  /**
18
18
  * @description Package version identifier
19
19
  * @summary Stores the current package version string for the for-nano module
package/lib/esm/index.js CHANGED
@@ -18,7 +18,7 @@ export * from "./adapter.js";
18
18
  * @const VERSION
19
19
  * @memberOf module:for-nano
20
20
  */
21
- export const VERSION = "0.1.14";
21
+ export const VERSION = "0.2.1";
22
22
  /**
23
23
  * @description Package version identifier
24
24
  * @summary Stores the current package version string for the for-nano module
package/lib/index.cjs CHANGED
@@ -35,7 +35,7 @@ __exportStar(require("./adapter.cjs"), exports);
35
35
  * @const VERSION
36
36
  * @memberOf module:for-nano
37
37
  */
38
- exports.VERSION = "0.1.14";
38
+ exports.VERSION = "0.2.1";
39
39
  /**
40
40
  * @description Package version identifier
41
41
  * @summary Stores the current package version string for the for-nano module
package/lib/index.d.ts CHANGED
@@ -13,7 +13,7 @@ export * from "./adapter";
13
13
  * @const VERSION
14
14
  * @memberOf module:for-nano
15
15
  */
16
- export declare const VERSION = "0.1.14";
16
+ export declare const VERSION = "0.2.1";
17
17
  /**
18
18
  * @description Package version identifier
19
19
  * @summary Stores the current package version string for the for-nano module
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@decaf-ts/for-nano",
3
- "version": "0.2.0",
3
+ "version": "0.2.2",
4
4
  "description": "decaf-ts persistence adapter for CouchDB via nano",
5
5
  "type": "module",
6
6
  "exports": {