@decaf-ts/for-fabric 0.1.29 → 0.1.31
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-fabric.cjs +1 -1
- package/dist/for-fabric.cjs.map +1 -1
- package/dist/for-fabric.js +1 -1
- package/dist/for-fabric.js.map +1 -1
- package/lib/client/FabricClientAdapter.cjs +14 -3
- package/lib/client/FabricClientAdapter.js.map +1 -1
- package/lib/contract/AddressContract.cjs +3 -4
- package/lib/contract/AddressContract.js.map +1 -1
- package/lib/contract/ProductContract.cjs +3 -4
- package/lib/contract/ProductContract.js.map +1 -1
- package/lib/contract/UserContract.cjs +3 -4
- package/lib/contract/UserContract.js.map +1 -1
- package/lib/contracts/ContractAdapter.cjs +15 -12
- package/lib/contracts/ContractAdapter.js.map +1 -1
- package/lib/esm/client/FabricClientAdapter.js +11 -3
- package/lib/esm/client/FabricClientAdapter.js.map +1 -1
- package/lib/esm/contract/AddressContract.js +4 -5
- package/lib/esm/contract/AddressContract.js.map +1 -1
- package/lib/esm/contract/ProductContract.js +4 -5
- package/lib/esm/contract/ProductContract.js.map +1 -1
- package/lib/esm/contract/UserContract.js +4 -5
- package/lib/esm/contract/UserContract.js.map +1 -1
- package/lib/esm/contracts/ContractAdapter.js +16 -13
- package/lib/esm/contracts/ContractAdapter.js.map +1 -1
- package/lib/esm/version.d.ts +1 -1
- package/lib/esm/version.js +1 -1
- package/lib/version.cjs +1 -1
- package/lib/version.d.ts +1 -1
- package/package.json +1 -1
package/dist/for-fabric.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{CouchDBStatement as t,CouchDBKeys as e,CouchDBGroupOperator as i,CouchDBOperator as r,CouchDBAdapter as n}from"@decaf-ts/for-couchdb";import{Model as s,JSONSerializer as a,required as o,model as c}from"@decaf-ts/decorator-validation";import{Context as l,ObserverHandler as u,Adapter as p,Repository as g,QueryError as d,PersistenceKeys as h,Condition as y,Sequence as w,SequenceModel as f,UUID as m,Serial as x,UnsupportedError as b,PagingError as S,MigrationError as v,ObserverError as A,AuthorizationError as C,ForbiddenError as k,ConnectionError as O,OrderDirection as R,pk as N,column as $,table as E,BaseModel as z}from"@decaf-ts/core";import{OperationKeys as P,BulkCrudOperationKeys as T,InternalError as B,enforceDBDecorators as D,reduceErrorsToPrint as I,ValidationError as F,BaseError as J,DBKeys as q,NotFoundError as j,ConflictError as L,SerializationError as _,BadRequestError as U,onCreate as M,onCreateUpdate as V}from"@decaf-ts/db-decorators";import{Property as H,Object as Q,Contract as K,Context as Y,Transaction as G}from"fabric-contract-api";import{Metadata as W,Decoration as X,propMetadata as Z}from"@decaf-ts/decoration";import{Logging as tt,MiniLogger as et,NumericLogLevels as it,LogLevel as rt}from"@decaf-ts/logging";import{__decorate as nt,__metadata as st}from"tslib";class at extends l{constructor(){super()}get stub(){return this.get("stub")}get timestamp(){return this.stub.getDateTimestamp()}get identity(){return this.get("identity")}toString(){return"fabric ctx"+(this.stub?" with stub":"without stub")}}class ot extends u{constructor(t=[P.CREATE,P.UPDATE,P.DELETE,T.CREATE_ALL,T.UPDATE_ALL,T.DELETE_ALL]){super(),this.supportedEvents=t}async updateObservers(t,e,i,...r){const{log:n,ctx:s}=p.logCtx(r,this.updateObservers),{stub:a}=s,[o,c]=r,l="string"==typeof t?t:t.name;if(-1!==this.supportedEvents.indexOf(e)){n.debug(`Emitting ${e} event`);const t=((t,e,i)=>{const r=[t,e];return i&&r.push(i),r.join("_")})(l,e,o);a.setEvent(t,Buffer.from(JSON.stringify({id:i})))}else a.setEvent(e,Buffer.from(JSON.stringify(c)))}}class ct extends g{constructor(t,e,i){super(t,e),this.trackedEvents=i,this._overrides=Object.assign({},super._overrides,{ignoreValidation:!1,ignoreHandlers:!1,allowRawStatements:!0,forcePrepareSimpleQueries:!1,forcePrepareComplexQueries:!1})}async createAllPrefix(t,...e){const i=await l.args(P.CREATE,this.class,e,this.adapter,this._overrides||{}),r=i.context.get("ignoreHandlers"),n=i.context.get("ignoreValidation");if(!t.length)return[t,...i.args];const a=s.sequenceFor(t[0]);let o=[];if(a.type?(a.name||(a.name=s.sequenceName(t[0],"pk")),o=await(await this.adapter.Sequence(a)).range(t.length,...i.args)):o=t.map(((t,e)=>{if(void 0===t[this.pk])throw new B("Primary key is not defined for model in position "+e);return t[this.pk]})),t=await Promise.all(t.map((async(t,e)=>(t=new this.class(t),a.type&&(t[this.pk]="String"!==a.type||a.generated?o[e]:""+t[this.pk]),r||await D(this,i.context,t,P.CREATE,P.ON),t)))),!n){const e=i.context.get("ignoredValidationProperties")||[],r=await Promise.all(t.map((t=>Promise.resolve(t.hasErrors(...e))))),n=I(r);if(n)throw new F(n)}return[t,...i.args]}async statement(t,...e){if(!g.statements(this,t))throw new d("Invalid prepared statement requested "+t);const i=await l.args(h.STATEMENT,this.class,e,this.adapter,this._overrides||{});i.context.logger&&i.context.logger.info(`Repo statement: ${t} + ${e}`);const{log:r,ctxArgs:n}=this.logCtx(i.args,this.statement);r.verbose(`Executing prepared statement ${t} with args ${n}`);try{return this[t](...n)}catch(e){if(e instanceof J)throw e;throw new B(`Failed to execute prepared statement ${t} with args ${n}: ${e}`)}}ObserverHandler(){return new ot}async updateObservers(t,e,i,...r){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(e))return await super.updateObservers(t,e,i,...r)}}class lt extends t{constructor(t){super(t)}async raw(t,...e){const{ctx:i}=this.logCtx(e,this.raw),r=await this.adapter.raw(t,!0,i),n=s.pk(this.fromSelector),a=W.get(this.fromSelector,W.key(q.ID,n))?.type;return this.selectSelector?r:r.map((t=>this.processRecord(t,n,a,i)))}build(){const t={};t[e.TABLE]={},t[e.TABLE]=s.tableName(this.fromSelector);const n={selector:t};if(this.selectSelector&&(n.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(y.and(this.whereCondition,y.attribute(e.TABLE).eq(n.selector[e.TABLE]))).selector,r=Object.keys(t);if(1===r.length&&-1!==Object.values(i).indexOf(r[0]))switch(r[0]){case i.AND:t[i.AND]=[...Object.values(t[i.AND]).reduce(((t,e)=>{const r=Object.keys(e);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const n=r[0];return n===i.AND?t.push(...e[n]):t.push(e),t}),[])],n.selector=t;break;case i.OR:{const e={};e[i.AND]=[t,...Object.entries(n.selector).map((([t,e])=>{const i={};return i[t]=e,i}))],n.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach((([t,e])=>{n.selector[t],n.selector[t]=e}))}if(this.orderBySelector){n.sort=n.sort||[],n.selector=n.selector||{};const[t,e]=this.orderBySelector,i={};i[t]=e,n.sort.push(i),n.selector[t]||(n.selector[t]={},n.selector[t][r.BIGGER]=null)}return this.limitSelector&&(n.limit=this.limitSelector),this.offsetSelector&&(n.skip=this.offsetSelector),n}}var ut,pt;(t=>{t.PRIVATE="private",t.SHARED="shared",t.FABRIC="fabric.",t.OWNEDBY="owned-by"})(ut||(ut={})),(t=>{t.X509="X.509"})(pt||(pt={}));const gt="hlf-fabric";class dt extends a{constructor(){super()}deserialize(t,e){return JSON.parse(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}preSerialize(t){return Object.assign({},t)}}class ht extends et{constructor(t,e,i){super(t,e),this.logger=i?i.logging.getLogger(t):new et(t,e)}log(t,e,i){if(it[this.config("level")]<it[t])return;let r;switch(t){case rt.info:r=this.logger.info;break;case rt.verbose:r=this.logger.verbose;break;case rt.debug:r=this.logger.debug;break;case rt.error:r=this.logger.error;break;case rt.silly:r=this.logger.silly;break;default:throw new B("Invalid log level")}r.call(this.logger,this.createLog(t,e,i))}}tt.setFactory(((t,e,i)=>new ht(t||ht.name,e||{},i)));class yt extends w{constructor(t,e){super(t,e)}async current(...t){const e=(await l.args(P.READ,f,t,this.adapter)).context,{name:i,startWith:r}=this.options;try{const t=await this.repo.read(i,e);return this.parse(t.current)}catch(t){if(t instanceof j){if(void 0===r)throw new B("Starting value is not defined for a non existing sequence");try{return this.parse(r)}catch(t){throw new B(`Failed to parse initial value for sequence ${r}: ${t}`)}}throw new B(`Failed to retrieve current value for sequence ${i}: ${t}`)}}async increment(t,e,i){const{type:r,incrementBy:n,name:s}=this.options;let a;const o=e||n;if(o%n!=0)throw new B("Value to increment does not consider the incrementBy setting: "+n);switch("function"==typeof r&&r?.name?r.name:r){case Number.name:a=this.parse(t)+o;break;case BigInt.name:a=this.parse(t)+BigInt(o);break;case String.name:a=this.parse(t);break;case"serial":a=x.instance.generate(t);break;case"uuid":a=m.instance.generate(t);break;default:throw new B("Should never happen")}let c;try{c=await this.repo.update(new f({id:s,current:a}),i)}catch(n){if(!(n instanceof j))throw n;try{c=await this.repo.create(new f({id:s,current:a}),i)}catch(n){if(!(n instanceof L)||"uuid"!==r)throw n;return this.increment(t,e,i)}}return c.current}async next(...t){const e=await l.args(P.UPDATE,f,t,this.adapter),{context:i,args:r}=e,n=await this.current(...r);return this.increment(n,void 0,i)}async range(t,...e){const i=await l.args(P.UPDATE,f,e,this.adapter),{context:r,args:n}=i,s=await this.current(...n),a=this.parse(this.options.incrementBy),o=await this.increment(s,this.parse(t)*a,r),c=[];for(let e=1;t>=e;e++)c.push(s+a*this.parse(e));if("uuid"===this.options.type||"serial"===this.options.type)throw new b(`type ${this.options.type} is currently not suppported for this adapter`);const u="function"==typeof this.options.type&&this.options.type?.name?this.options.type.name:this.options.type;if(c[c.length-1]!==o&&"String"!==u)throw new B("Miscalculation of range");return c}}async function wt(t,e,i,r){try{const e=t.get("identity");r[i]=e.getID()}catch(t){throw new b("No User found in context. Please provide a user in the context")}}async function ft(t,e,i,r){if(!e.type||r[i])return;let n;e.name||(e.name=s.sequenceName(r,"pk"));try{n=await this.adapter.Sequence(e)}catch(t){throw new B(`Failed to instantiate Sequence ${e.name}: ${t}`)}const a=await n.next(t);Object.defineProperty(r,i,{enumerable:!0,writable:!1,configurable:!0,value:a})}class mt extends n{getClient(){throw new b("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new dt}repository(){return ct}async Sequence(t){return new yt(t,this)}constructor(t,e){super(t,gt,e),this.Context=at}for(t,...e){return super.for(t,...e)}async create(t,e,i,...r){const{ctx:n,log:a,stub:o}=this.logCtx(r,this.create);a.info("in ADAPTER create with args "+r);const c=s.tableName(t);try{a.info(`adding entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);i=await this.putState(t,i,n)}catch(t){throw this.parseError(t)}return i}async read(t,e,...i){const{ctx:r,log:n,stub:a}=this.logCtx(i,this.read);n.info("in ADAPTER read with args "+i);const o=s.tableName(t);let c;try{const t=a.createCompositeKey(o,[e+""]);c=await this.readState(t,r)}catch(t){throw this.parseError(t)}return c}async update(t,e,i,...r){const{ctx:n,log:a,stub:o}=this.logCtx(r,this.update),c=s.tableName(t);try{a.verbose(`updating entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);i=await this.putState(t,i,n)}catch(t){throw this.parseError(t)}return i}async delete(t,e,...i){const{ctx:r,log:n,ctxArgs:a,stub:o}=this.logCtx(i,this.delete),c=s.tableName(t);let l;try{const i=o.createCompositeKey(c,[e+""]);l=await this.read(t,e,...a),n.verbose(`deleting entry with pk ${e} from ${c} table`),await this.deleteState(i,r)}catch(t){throw this.parseError(t)}return l}async deleteState(t,e){const{stub:i}=this.logCtx([e],this.deleteState);await i.deleteState(t)}forPrivate(t){const e=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map((t=>t.name));return new Proxy(this,{get:(i,r,n)=>e.includes(r)?new Proxy(i[r],{async apply(e,i,n){switch(r){case"putState":{const[e,i,r]=n;return await e.putPrivateData(t,i.toString(),r),r}case"deleteState":{const[e,i]=n;return e.deletePrivateData(t,i)}case"readState":{const[e,i]=n;return e.getPrivateData(t,i)}case"queryResult":{const[e,i]=n;return e.getPrivateDataQueryResult(t,i)}case"queryResultPaginated":{const[e,i,r,s]=n,a=await e.getPrivateDataQueryResult(t,i),o=[];let c=0,l=!s,u=null;for(;;){const t=await a.next();if(t.value&&t.value.value.toString()){const e=t.value.key,i=t.value.value.toString("utf8");if(!l){e===s?.toString()&&(l=!0);continue}if(o.push({Key:e,Record:JSON.parse(i)}),u=e,c++,c>=r)return await a.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:u}}}if(t.done)return await a.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:""}}}}default:throw new B("Unsupported method override "+r)}}}):Reflect.get(i,r,n)})}async putState(t,e,i){let r;const{stub:n,log:s}=this.logCtx([i],this.putState);try{r=Buffer.from(mt.serializer.serialize(e))}catch(e){throw new _(`Failed to serialize record with id ${t}: ${e}`)}const a=i.get("segregated");return a?await n.putPrivateData(a,t.toString(),r):await n.putState(t.toString(),r),s.silly(`state stored${a?` in ${a} collection`:""} under id ${t}`),e}async readState(t,e){let i;const{stub:r,log:n}=this.logCtx([e],this.readState);let s;const a=e.get("segregated");if(s=a?(await r.getPrivateData(a,t.toString())).toString():(await r.getState(t.toString())).toString(),!s)throw new j(`Record with id ${t}${a?` in ${a} collection`:""} not found`);n.silly(`state retrieved from${a?` ${a} collection`:""} under id ${t}`);try{i=mt.serializer.deserialize(s.toString())}catch(t){throw new _("Failed to parse record: "+t)}return i}async queryResult(t,e,...i){const{ctx:r}=this.logCtx(i,this.readState);let n;const s=r.get("segregated");return n=s?await t.getPrivateDataQueryResult(s,JSON.stringify(e)):await t.getQueryResult(JSON.stringify(e)),n}async queryResultPaginated(t,e,i=250,r,...n){const{ctx:s}=this.logCtx(n,this.readState);let a;const o=s.get("segregated");return o?(e.selector={...e.selector,_id:r?{$gt:r.toString()}:{$gte:""}},a={iterator:await t.getPrivateDataQueryResult(o,JSON.stringify(e)),metadata:{fetchedRecordsCount:i,bookmark:""}}):a=await t.getQueryResultWithPagination(JSON.stringify(e),i,r?.toString()),a}mergeModels(t){const e=t=>Object.entries(t).reduce(((t,[e,i])=>(void 0!==i&&(t[e]=i),t)),{});let i=t.pop();for(const r of t)i=Object.assign({},e(i),e(r));return i}decode(t){return mt.textDecoder.decode(t)}async flags(t,e,i,r,...n){const s={stub:r.stub,segregated:!1};return Object.assign(s,r instanceof at?{logger:r.logger,identity:r.identity,correlationId:r.stub.getTxID()}:{identity:r.clientIdentity,logger:new ht(this,void 0,r),correlationId:r.stub.getTxID()}),await super.flags(t,e,s,...n)}index(t){return Promise.resolve(void 0)}async resultIterator(t,e,i=!1){const r=[];let n=await e.next();for(;!n.done;){if(n.value&&n.value.value.toString()){let e={};if(t.debug(n.value.value.toString("utf8")),i){e.TxId=n.value.txId,e.Timestamp=n.value.timestamp;try{e.Value=JSON.parse(n.value.value.toString("utf8"))}catch(i){t.error(i),e.Value=n.value.value.toString("utf8")}}else try{e=JSON.parse(n.value.value.toString("utf8"))}catch(i){t.error(i),e=n.value.value.toString("utf8")}r.push(e)}n=await e.next()}return t.debug(`Closing iterator after ${r.length} results`),e.close(),r}async raw(t,e=!0,...i){const{log:r,stub:n,ctx:s}=this.logCtx(i,this.raw),{skip:a,limit:o}=t;let c;o||a?(delete t.limit,delete t.skip,r.debug(`Retrieving paginated iterator: limit: ${o}/ skip: ${a}`),c=(await this.queryResultPaginated(n,t,o||250,a?.toString(),s)).iterator):(r.debug("Retrieving iterator"),c=await this.queryResult(n,t,s)),r.debug("Iterator acquired");const l=await this.resultIterator(r,c);return r.debug(`returning ${Array.isArray(l)?l.length:1} results`),l}Statement(){return new lt(this)}async createAll(t,e,i,...r){if(e.length!==i.length)throw new B("Ids and models must have the same length");const{log:n,ctxArgs:a}=this.logCtx(r,this.createAll),o=s.tableName(t);return n.debug(`Creating ${e.length} entries ${o} table`),Promise.all(e.map(((e,r)=>this.create(t,e,i[r],...a))))}async updateAll(t,e,i,...r){if(e.length!==i.length)throw new B("Ids and models must have the same length");const{log:n,ctxArgs:a}=this.logCtx(r,this.updateAll),o=s.tableName(t);return n.debug(`Updating ${e.length} entries ${o} table`),Promise.all(e.map(((e,r)=>this.update(t,e,i[r],...a))))}prepare(t,...e){const{log:i}=this.logCtx(e,this.prepare),r=s.tableName(t.constructor),n=s.pk(t.constructor),a=s.segregate(t),o=Object.entries(a.model).reduce(((e,[i,r])=>{if(void 0===r)return e;const n=s.columnName(t,i);if(this.isReserved(n))throw new B(`Property name ${n} is reserved`);return e[n]=r,e}),{});return i.silly(`Preparing record for ${r} table with pk ${t[n]}`),{record:o,id:t[n],transient:a.transient}}revert(t,e,i,r,...n){const{log:a}=this.logCtx(n,this.revert),o={};o[s.pk(e)]=i;const c="string"==typeof e?s.build(o,e):new e(o);a.silly(`Rebuilding model ${c.constructor.name} id ${i}`);const l=Object.keys(c).reduce(((e,i)=>(e[i]=t[s.columnName(e,i)],e)),c);return r&&(a.debug("re-adding transient properties: "+Object.keys(r).join(", ")),Object.entries(r).forEach((([t,e])=>{if(t in l&&void 0!==l[t])throw new B(`Transient property ${t} already exists on model ${c.constructor.name}. should be impossible`);l[t]=e}))),l}createPrefix(t,i,r,...n){const{ctxArgs:a}=this.logCtx(n,this.createPrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,r),[t,i,o,...a]}updatePrefix(t,i,r,...n){const{ctxArgs:a}=this.logCtx(n,this.updatePrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,r),[t,i,o,...a]}createAllPrefix(t,i,r,...n){if(i.length!==r.length)throw new B("Ids and models must have the same length");const s=n.pop(),a=i.map(((i,n)=>{const s={};return s[e.TABLE]=t,Object.assign(s,r[n]),s}));return[t,i,a,s]}updateAllPrefix(t,i,r,...n){if(i.length!==r.length)throw new B("Ids and models must have the same length");const s=n.pop(),a=i.map(((i,n)=>{const s={};return s[e.TABLE]=t,Object.assign(s,r[n]),s}));return[t,i,a,s]}parseError(t,e){return mt.parseError(e||t)}logCtx(t,e){return mt.logCtx.call(this,t,e)}static logCtx(t,e){if(1>t.length)throw new B("No context provided");const i=t.pop();if(!(i instanceof l))throw new B("No context provided");if(t.filter((t=>t instanceof l)).length>1)throw Error("here");const r=this?i.logger.for(this).for(e):i.logger.clear().for(this).for(e);return{ctx:i,log:e?r.for(e):r,stub:i.stub,identity:i.identity,ctxArgs:[...t,i]}}static parseError(t){const e="string"==typeof t?t:t.message;return e.includes(j.name)?new j(t):e.includes(L.name)?new L(t):e.includes(U.name)?new U(t):e.includes(d.name)?new d(t):e.includes(S.name)?new S(t):e.includes(b.name)?new b(t):e.includes(v.name)?new v(t):e.includes(A.name)?new A(t):e.includes(C.name)?new C(t):e.includes(k.name)?new k(t):e.includes(O.name)?new O(t):e.includes(_.name)?new _(t):new B(t)}static decoration(){super.decoration(),X.flavouredAs(gt).for(h.CREATED_BY).define(M(wt),Z(h.CREATED_BY,{})).apply(),X.flavouredAs(gt).for(h.UPDATED_BY).define(V(wt),Z(h.UPDATED_BY,{})).apply(),X.flavouredAs(gt).for(h.COLUMN).extend(H()).apply(),X.flavouredAs(gt).for(h.TABLE).extend((t=>Q()(t))).apply()}}mt.decoration(),p.setCurrent(gt);class xt extends a{constructor(){super()}deserialize(t){return super.deserialize(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}}class bt extends K{static{this.adapter=new mt}static{this.serializer=new xt}constructor(t,e){super(t),this.clazz=e,this.initialized=!1,this.repo=g.forModel(e)}async listBy(t,e,i,...r){const{ctxArgs:n,log:s}=await this.logCtx([...r,t],this.listBy);return s.info(`Running listBy key ${e}, order ${i} and args ${n}`),this.repo.listBy(e,i,...n)}async paginateBy(t,e,i,r,...n){const{ctxArgs:s,log:a}=await this.logCtx([...n,t],this.paginateBy);return a.info(`Running paginateBy key ${e}, order ${i} with size ${r} and args ${s}`),this.repo.paginateBy(e,i,r,...s)}async findOneBy(t,e,i,...r){const{ctxArgs:n,log:s}=await this.logCtx([...r,t],this.findOneBy);return s.info(`Running findOneBy key ${e}, value: ${i} with args ${n}`),this.repo.findOneBy(e,i,...n)}async statement(t,e,...i){const{ctxArgs:r,log:n}=await this.logCtx([...i,t],this.statement);return n.info(`Running statement ${e} with args ${r}`),this.repo.statement(e,...r)}async create(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.create);r.info("CONTRACT CREATE, "+n),"string"==typeof e&&(e=this.deserialize(e)),r.info("Creating model: "+JSON.stringify(e));const a=this.getTransientData(t);return r.info("Merging transient data..."),e=s.merge(e,a,this.clazz),this.repo.create(e,...n)}async read(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.read);return r.info(`reading entry with pk ${e} `),this.repo.read(e,...n)}getTransientData(t){const e=t.stub.getTransient();let i={};return e.has(this.repo.tableName)&&(i=JSON.parse(e.get(this.repo.tableName)?.toString("utf8"))),i}async update(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.update);"string"==typeof e&&(e=this.deserialize(e)),r.info("Updating model: "+JSON.stringify(e));const a=this.getTransientData(t);return r.info("Merging transient data..."),e=s.merge(e,a,this.clazz),this.repo.update(e,...n)}async delete(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.delete);return r.info(`deleting entry with pk ${e} `),this.repo.delete(e+"",...n)}async deleteAll(t,e,...i){const{ctxArgs:r}=await this.logCtx([...i,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.deleteAll(e,...r)}async readAll(t,e,...i){const{ctxArgs:r}=await this.logCtx([...i,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.readAll(e,...r)}async updateAll(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.updateAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),r.info(`updating ${e.length} entries to the table`),this.repo.updateAll(e,...n)}async query(t,e,i,r=R.ASC,n,s,...a){const{ctxArgs:o}=await this.logCtx([...a,t],this.query);return this.repo.query(e,i,r,n,s,...o)}async raw(t,e,i,...r){const{ctxArgs:n}=await this.logCtx([...r,t],this.raw);return bt.adapter.raw(e,i,...n)}serialize(t){return bt.serializer.serialize(t)}deserialize(t){return bt.serializer.deserialize(t)}async init(t){const{log:e}=await this.logCtx([t],this.init);e.info(`Running contract ${this.getName()} initialization...`),this.initialized=!0,e.info("Contract initialization completed.")}async healthcheck(t){const{log:e}=await this.logCtx([t],this.healthcheck);return e.info(`Running Healthcheck: ${this.initialized}...`),{healthcheck:this.initialized}}async createAll(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.createAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),r.info(`adding ${e.length} entries to the table`),this.repo.createAll(e,...n)}async logCtx(t,e){return bt.logCtx.bind(this)(t,e)}static async logCtx(t,e){if(1>t.length)throw new B("No context provided");const i=t.pop();if(i instanceof at)return{ctx:i,log:i.logger.clear().for(this).for(e),ctxArgs:[...t,i],stub:i.stub,identity:i.identity};if(!(i instanceof Y))throw new B("No valid context provided");const r={correlationId:i.stub.getTxID()},n=await bt.adapter.context((()=>{if("string"==typeof e)return e;switch(e.name){case P.CREATE:case P.READ:case P.UPDATE:case P.DELETE:case T.CREATE_ALL:case T.READ_ALL:case T.UPDATE_ALL:case T.DELETE_ALL:}return e.name})(),r,this.clazz,i),s=this?n.logger.for(this).for(e):n.logger.clear().for(this).for(e);return{ctx:n,log:s,stub:n.stub,identity:n.identity,ctxArgs:[...t,n]}}}class St extends bt{constructor(t,e){super(t,e)}async create(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.create);i.info("Creating model: "+e);const n=this.deserialize(e);return i.info("Model deserialized: "+JSON.stringify(n)),this.serialize(await super.create(r,n))}async read(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.read);return i.info("Reading id: "+e),this.serialize(await super.read(r,e))}async update(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.update);return i.info("Updating model: "+e),this.serialize(await super.update(r,e))}async delete(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.delete);return i.info("Deleting id: "+e),this.serialize(await super.delete(r,e))}async deleteAll(t,e){const i=JSON.parse(e),{log:r,ctx:n}=await this.logCtx([t],this.deleteAll);return r.info(`deleting ${i.length} entries from the table`),JSON.stringify((await super.deleteAll(n,i)).map((t=>this.serialize(t))))}async readAll(t,e){const i=JSON.parse(e),{log:r,ctx:n}=await this.logCtx([t],this.readAll);return r.info(`reading ${i.length} entries from the table`),JSON.stringify((await super.readAll(n,i)).map((t=>this.serialize(t))))}async updateAll(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.updateAll),n=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return i.info(`Updating ${n.length} entries to the table`),JSON.stringify((await super.updateAll(r,n)).map((t=>this.serialize(t))))}async statement(t,e,i){const{ctx:r,log:n}=await this.logCtx([t],this.statement);try{i=JSON.parse(i)}catch(t){throw new _("Invalid args: "+t)}if(!Array.isArray(i))throw new _(`Invalid args: ${JSON.stringify(i)}. must be an array`);return n.info("calling prepared statement "+e),n.info("with args "+i),JSON.stringify(await super.statement(r,e,...i))}async listBy(t,e,i){const{ctx:r,log:n}=await this.logCtx([t],this.listBy);return n.info(`Executing listBy with key ${e} and order ${i}`),JSON.stringify(await super.listBy(r,e,i))}async paginateBy(t,e,i,r){const{ctx:n,log:s}=await this.logCtx([t],this.paginateBy);return s.info(`Executing paginateBy with key ${e} and order ${i}`),JSON.stringify(await super.paginateBy(n,e,i,r))}async findOneBy(t,e,i,...r){const{ctx:n,log:s}=await this.logCtx([...r,t],this.findOneBy);return s.info(`Executing findOneBy with key ${e} and value ${i}`),JSON.stringify(await super.findOneBy(n,e,i,...r))}async query(t,e,i,r,n,s){const{ctx:a,log:o}=await this.logCtx([t],this.query);let c;o.info(`Executing query orderedBy ${i} and order ${r}`);try{c=y.from(JSON.parse(e))}catch(t){throw new _("Invalid condition: "+t)}return o.info("Condition: "+JSON.stringify(c)),JSON.stringify(await super.query(a,c,i,r,n,s))}async init(t){await super.init(t)}async healthcheck(t){const{log:e,ctx:i}=await this.logCtx([t],this.updateAll);return e.debug(`Running Healthcheck: ${this.initialized}...`),JSON.stringify(await super.healthcheck(i))}async createAll(t,e){const{log:i}=await this.logCtx([t],this.createAll),r=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return i.info(`Adding ${r.length} entries to the table`),JSON.stringify((await super.createAll(t,r)).map((t=>this.serialize(t))))}}nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"create",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"read",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"update",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"delete",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"deleteAll",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"readAll",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"updateAll",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],St.prototype,"statement",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],St.prototype,"listBy",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String,Number]),st("design:returntype",Promise)],St.prototype,"paginateBy",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String,String]),st("design:returntype",Promise)],St.prototype,"findOneBy",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],St.prototype,"init",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],St.prototype,"healthcheck",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"createAll",null);class vt extends B{constructor(t){super(t,vt.name)}}class At extends B{constructor(t){super(t,At.name)}}class Ct extends B{constructor(t){super(t,Ct.name)}}class kt extends J{constructor(t){super(kt.name,t,409)}}function Ot(t,e){const i=t+e;if(t!==i-e||e!==i-t)throw new vt(`Addition overflow: ${t} + ${e}`);return i}function Rt(t,e){const i=t-e;if(t!==i+e||e!==t-i)throw new vt(`Subtraction overflow: ${t} - ${e}`);return i}let Nt=class extends z{constructor(t){super(t)}};nt([N({type:"String"}),st("design:type",String)],Nt.prototype,"name",void 0),nt([$(),o(),st("design:type",String)],Nt.prototype,"owner",void 0),nt([$(),o(),st("design:type",String)],Nt.prototype,"symbol",void 0),nt([$(),o(),st("design:type",Number)],Nt.prototype,"decimals",void 0),Nt=nt([E("erc20_tokens"),c(),st("design:paramtypes",[Object])],Nt);let $t=class extends z{constructor(t){super(t)}};nt([N({type:"String"}),st("design:type",String)],$t.prototype,"id",void 0),nt([$(),o(),st("design:type",String)],$t.prototype,"token",void 0),nt([$(),o(),st("design:type",Number)],$t.prototype,"balance",void 0),nt([$(),st("design:type",String)],$t.prototype,"captive",void 0),$t=nt([E("erc20_wallets"),c(),st("design:paramtypes",[Object])],$t);let Et=class extends z{constructor(t){super(t)}};function zt(){return function(t,e,i){const r=i.value;return i.value=async function(...t){const i=t[0],n=i.clientIdentity.getID(),s=await this.tokenRepository.select(),a=await s.execute(i);if(0==a.length)throw new j("No tokens avaialble");if(a.length>1)throw new j("To many token available : "+a.length);if(a[0].owner!=n)throw new C(`User not authorized to run ${e} on the token`);return await r.apply(this,t)},i}}var Pt;nt([N({type:"String"}),$(),o(),st("design:type",String)],Et.prototype,"owner",void 0),nt([$(),o(),st("design:type",String)],Et.prototype,"spender",void 0),nt([$(),o(),st("design:type",Number)],Et.prototype,"value",void 0),Et=nt([E("erc20_allowances"),c(),st("design:paramtypes",[Object])],Et),(t=>{t.TRANSFER="Transfer",t.APPROVAL="Approval"})(Pt||(Pt={}));class Tt extends bt{constructor(t){super(t,$t),Tt.adapter=Tt.adapter||new mt,this.walletRepository=ct.forModel($t,Tt.adapter.alias),this.tokenRepository=ct.forModel(Nt,Tt.adapter.alias),this.allowanceRepository=ct.forModel(Et,Tt.adapter.alias)}async TokenName(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].name}async Symbol(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].symbol}async Decimals(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].decimals}async TotalSupply(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.walletRepository.select(),r=await i.execute(e);if(0==r.length)throw new j(`The token ${this.getName()} does not exist`);let n=0;return r.forEach((t=>{n+=t.balance})),n}async BalanceOf(t,e){const{ctx:i}=await this.logCtx([t],this.TokenName);return await this.CheckInitialized(i),(await this.walletRepository.read(e,i)).balance}async Transfer(t,e,i){const{ctx:r}=await this.logCtx([t],this.Transfer);await this.CheckInitialized(r);const n=r.identity.getID();if(!await this._transfer(n,e,i,r))throw new B("Failed to transfer");return!0}async TransferFrom(t,e,i,r){const{ctx:n}=await this.logCtx([t],this.BurnFrom);await this.CheckInitialized(n);const s=n.identity.getID(),a=await this._getAllowance(e,s,n);if(!a||0>a.value)throw new Ct(`spender ${s} has no allowance from ${e}`);const o=a.value;if(r>o)throw new At("The spender does not have enough allowance to spend.");const c=Rt(o,r),l=Object.assign({},a,{value:c});if(await this.allowanceRepository.update(l,n),!await this._transfer(e,i,r,n))throw new B("Failed to transfer");return!0}async _transfer(t,e,i,r){const n=r.logger;if(t===e)throw new C("cannot transfer to and from same client account");if(0>i)throw new At("transfer amount cannot be negative");const s=await this.walletRepository.read(t,r),a=s.balance;if(i>a)throw new At(`client account ${t} has insufficient funds.`);let o,c=!1;try{o=await this.walletRepository.read(e,r)}catch(t){if(!(t instanceof J))throw new B(t);if(404!==t.code)throw new B(t.message);o=new $t({id:e,balance:0,token:await this.TokenName(r)}),c=!0}const l=o.balance,u=Rt(a,i),p=Ot(l,i),g=Object.assign({},s,{balance:u});await this.walletRepository.update(g,r);const d=Object.assign({},o,{balance:p});c?await this.walletRepository.create(d,r):await this.walletRepository.update(d,r);const h={from:t,to:e,value:i};return this.repo.refresh(Nt,Pt.TRANSFER,"",h,r).catch((t=>n.error("Failed to notify transfer: "+t))),!0}async Approve(t,e,i){const{ctx:r,ctxArgs:n}=await this.logCtx([t],this.Approve);await this.CheckInitialized(r);const s=r.identity.getID();let a=await this._getAllowance(s,e,r);if((await this.walletRepository.read(s,...n)).balance<i)throw new At(`client account ${s} has insufficient funds.`);a?(a.value=i,await this.allowanceRepository.update(a,...n)):(a=new Et({owner:s,spender:e,value:i}),await this.allowanceRepository.create(a,...n));const o={owner:s,spender:e,value:i};return this.repo.refresh(Nt,Pt.APPROVAL,"",o,r),!0}async Allowance(t,e,i){const{ctx:r}=await this.logCtx([t],this.Allowance);await this.CheckInitialized(r);const n=await this._getAllowance(e,i,r);if(!n)throw new Ct(`spender ${i} has no allowance from ${e}`);return n.value}async _getAllowance(t,e,i){const r=y.and(y.attribute("owner").eq(t),y.attribute("spender").eq(e)),n=await this.allowanceRepository.select().where(r).execute(i);return n?.[0]}async Initialize(t,e){const{ctx:i}=await this.logCtx([t],this.Initialize);if((await this.tokenRepository.select().execute(i)).length>0)throw new C("contract options are already set, client is not authorized to change them");return e.owner=i.identity.getID(),await this.tokenRepository.create(e,i),!0}async CheckInitialized(t){const{ctx:e}=await this.logCtx([t],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(e)).length)throw new kt("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(t,e){const{ctx:i}=await this.logCtx([t],this.Mint);await this.CheckInitialized(i);const r=i.identity.getID();if(0>=e)throw new F("mint amount must be a positive integer");let n;try{n=await this.walletRepository.read(r,i);const t=Ot(n.balance,e),s=Object.assign({},n,{balance:t});await this.walletRepository.update(s,i)}catch(n){if(!(n instanceof J))throw new B(n);if(404!==n.code)throw new B(n.message);{const n=new $t({id:r,balance:e,token:await this.TokenName(t)});await this.walletRepository.create(n,i)}}const s={from:"0x0",to:r,value:e};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",s,i)}async Burn(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.Burn);await this.CheckInitialized(r);const n=r.identity.getID(),s=await this.walletRepository.read(n,r),a=s.balance;if(e>a)throw new At("Minter has insufficient funds.");const o=Rt(a,e),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,r),i.info(e+" tokens were burned");const l={from:n,to:"0x0",value:e};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",l,r)}async BurnFrom(t,e,i){const{log:r,ctx:n}=await this.logCtx([t],this.BurnFrom);await this.CheckInitialized(n);const s=await this.walletRepository.read(e,n),a=s.balance;if(i>a)throw new At(e+" has insufficient funds.");const o=Rt(a,i),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,n),r.info(`${i} tokens were burned from ${e}`);const l={from:e,to:"0x0",value:i};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",l,n)}async ClientAccountBalance(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=e.identity.getID(),r=await this.walletRepository.read(i,e);if(!r)throw new At(`The account ${i} does not exist`);return r.balance}async ClientAccountID(t){const{ctx:e}=await this.logCtx([t],this.ClientAccountID);return await this.CheckInitialized(e),e.identity.getID()}}nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"TokenName",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"Symbol",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"Decimals",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"TotalSupply",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],Tt.prototype,"BalanceOf",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"Transfer",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,String,Number]),st("design:returntype",Promise)],Tt.prototype,"TransferFrom",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"Approve",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],Tt.prototype,"Allowance",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,Nt]),st("design:returntype",Promise)],Tt.prototype,"Initialize",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"CheckInitialized",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,Number]),st("design:returntype",Promise)],Tt.prototype,"Mint",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,Number]),st("design:returntype",Promise)],Tt.prototype,"Burn",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"BurnFrom",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"ClientAccountBalance",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"ClientAccountID",null);const Bt=[Tt],Dt="##VERSION##",It="##PACKAGE##";W.registerLibrary(It,Dt);export{ht as ContractLogger,mt as FabricContractAdapter,at as FabricContractContext,ct as FabricContractRepository,ot as FabricContractRepositoryObservableHandler,yt as FabricContractSequence,bt as FabricCrudContract,lt as FabricStatement,It as PACKAGE_NAME,St as SerializedCrudContract,Dt as VERSION,Bt as contracts,wt as createdByOnFabricCreateUpdate,ft as pkFabricOnCreate};
|
|
1
|
+
import{CouchDBStatement as t,CouchDBKeys as e,CouchDBGroupOperator as i,CouchDBOperator as r,CouchDBAdapter as n}from"@decaf-ts/for-couchdb";import{Model as s,JSONSerializer as a,required as o,model as c}from"@decaf-ts/decorator-validation";import{Context as l,ObserverHandler as u,Adapter as p,Repository as g,QueryError as d,PersistenceKeys as h,Condition as y,Sequence as w,SequenceModel as f,UUID as m,Serial as x,UnsupportedError as b,PagingError as S,MigrationError as v,ObserverError as A,AuthorizationError as C,ForbiddenError as k,ConnectionError as O,OrderDirection as R,pk as N,column as $,table as E,BaseModel as z}from"@decaf-ts/core";import{OperationKeys as P,BulkCrudOperationKeys as T,InternalError as B,enforceDBDecorators as D,reduceErrorsToPrint as I,ValidationError as F,BaseError as j,DBKeys as J,NotFoundError as q,ConflictError as L,SerializationError as _,BadRequestError as U,onCreate as M,onCreateUpdate as V}from"@decaf-ts/db-decorators";import{Property as H,Object as Q,Contract as K,Context as Y,Transaction as G}from"fabric-contract-api";import{Metadata as W,Decoration as X,propMetadata as Z}from"@decaf-ts/decoration";import{Logging as tt,MiniLogger as et,NumericLogLevels as it,LogLevel as rt}from"@decaf-ts/logging";import{__decorate as nt,__metadata as st}from"tslib";class at extends l{constructor(){super()}get stub(){return this.get("stub")}get timestamp(){return this.stub.getDateTimestamp()}get identity(){return this.get("identity")}toString(){return"fabric ctx"+(this.stub?" with stub":"without stub")}}class ot extends u{constructor(t=[P.CREATE,P.UPDATE,P.DELETE,T.CREATE_ALL,T.UPDATE_ALL,T.DELETE_ALL]){super(),this.supportedEvents=t}async updateObservers(t,e,i,...r){const{log:n,ctx:s}=p.logCtx(r,this.updateObservers),{stub:a}=s,[o,c]=r,l="string"==typeof t?t:t.name;if(-1!==this.supportedEvents.indexOf(e)){n.debug(`Emitting ${e} event`);const t=((t,e,i)=>{const r=[t,e];return i&&r.push(i),r.join("_")})(l,e,o);a.setEvent(t,Buffer.from(JSON.stringify({id:i})))}else a.setEvent(e,Buffer.from(JSON.stringify(c)))}}class ct extends g{constructor(t,e,i){super(t,e),this.trackedEvents=i,this._overrides=Object.assign({},super._overrides,{ignoreValidation:!1,ignoreHandlers:!1,allowRawStatements:!0,forcePrepareSimpleQueries:!1,forcePrepareComplexQueries:!1})}async createAllPrefix(t,...e){const i=await l.args(P.CREATE,this.class,e,this.adapter,this._overrides||{}),r=i.context.get("ignoreHandlers"),n=i.context.get("ignoreValidation");if(!t.length)return[t,...i.args];const a=s.sequenceFor(t[0]);let o=[];if(a.type?(a.name||(a.name=s.sequenceName(t[0],"pk")),o=await(await this.adapter.Sequence(a)).range(t.length,...i.args)):o=t.map(((t,e)=>{if(void 0===t[this.pk])throw new B("Primary key is not defined for model in position "+e);return t[this.pk]})),t=await Promise.all(t.map((async(t,e)=>(t=new this.class(t),a.type&&(t[this.pk]="String"!==a.type||a.generated?o[e]:""+t[this.pk]),r||await D(this,i.context,t,P.CREATE,P.ON),t)))),!n){const e=i.context.get("ignoredValidationProperties")||[],r=await Promise.all(t.map((t=>Promise.resolve(t.hasErrors(...e))))),n=I(r);if(n)throw new F(n)}return[t,...i.args]}async statement(t,...e){if(!g.statements(this,t))throw new d("Invalid prepared statement requested "+t);const i=await l.args(h.STATEMENT,this.class,e,this.adapter,this._overrides||{});i.context.logger&&i.context.logger.info(`Repo statement: ${t} + ${e}`);const{log:r,ctxArgs:n}=this.logCtx(i.args,this.statement);r.verbose(`Executing prepared statement ${t} with args ${n}`);try{return this[t](...n)}catch(e){if(e instanceof j)throw e;throw new B(`Failed to execute prepared statement ${t} with args ${n}: ${e}`)}}ObserverHandler(){return new ot}async updateObservers(t,e,i,...r){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(e))return await super.updateObservers(t,e,i,...r)}}class lt extends t{constructor(t){super(t)}async raw(t,...e){const{ctx:i}=this.logCtx(e,this.raw),r=await this.adapter.raw(t,!0,i),n=s.pk(this.fromSelector),a=W.get(this.fromSelector,W.key(J.ID,n))?.type;return this.selectSelector?r:r.map((t=>this.processRecord(t,n,a,i)))}build(){const t={};t[e.TABLE]={},t[e.TABLE]=s.tableName(this.fromSelector);const n={selector:t};if(this.selectSelector&&(n.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(y.and(this.whereCondition,y.attribute(e.TABLE).eq(n.selector[e.TABLE]))).selector,r=Object.keys(t);if(1===r.length&&-1!==Object.values(i).indexOf(r[0]))switch(r[0]){case i.AND:t[i.AND]=[...Object.values(t[i.AND]).reduce(((t,e)=>{const r=Object.keys(e);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const n=r[0];return n===i.AND?t.push(...e[n]):t.push(e),t}),[])],n.selector=t;break;case i.OR:{const e={};e[i.AND]=[t,...Object.entries(n.selector).map((([t,e])=>{const i={};return i[t]=e,i}))],n.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach((([t,e])=>{n.selector[t],n.selector[t]=e}))}if(this.orderBySelector){n.sort=n.sort||[],n.selector=n.selector||{};const[t,e]=this.orderBySelector,i={};i[t]=e,n.sort.push(i),n.selector[t]||(n.selector[t]={},n.selector[t][r.BIGGER]=null)}return this.limitSelector&&(n.limit=this.limitSelector),this.offsetSelector&&(n.skip=this.offsetSelector),n}}var ut,pt;(t=>{t.PRIVATE="private",t.SHARED="shared",t.FABRIC="fabric.",t.OWNEDBY="owned-by"})(ut||(ut={})),(t=>{t.X509="X.509"})(pt||(pt={}));const gt="hlf-fabric";class dt extends a{constructor(){super()}deserialize(t,e){return JSON.parse(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}preSerialize(t){return Object.assign({},t)}}class ht extends et{constructor(t,e,i){super(t,e),this.logger=i?i.logging.getLogger(t):new et(t,e)}log(t,e,i){if(it[this.config("level")]<it[t])return;let r;switch(t){case rt.info:r=this.logger.info;break;case rt.verbose:r=this.logger.verbose;break;case rt.debug:r=this.logger.debug;break;case rt.error:r=this.logger.error;break;case rt.silly:r=this.logger.silly;break;default:throw new B("Invalid log level")}r.call(this.logger,this.createLog(t,e,i))}}tt.setFactory(((t,e,i)=>new ht(t||ht.name,e||{},i)));class yt extends w{constructor(t,e){super(t,e)}async current(...t){const e=(await l.args(P.READ,f,t,this.adapter)).context,{name:i,startWith:r}=this.options;try{const t=await this.repo.read(i,e);return this.parse(t.current)}catch(t){if(t instanceof q){if(void 0===r)throw new B("Starting value is not defined for a non existing sequence");try{return this.parse(r)}catch(t){throw new B(`Failed to parse initial value for sequence ${r}: ${t}`)}}throw new B(`Failed to retrieve current value for sequence ${i}: ${t}`)}}async increment(t,e,i){const{type:r,incrementBy:n,name:s}=this.options;let a;const o=e||n;if(o%n!=0)throw new B("Value to increment does not consider the incrementBy setting: "+n);switch("function"==typeof r&&r?.name?r.name:r){case Number.name:a=this.parse(t)+o;break;case BigInt.name:a=this.parse(t)+BigInt(o);break;case String.name:a=this.parse(t);break;case"serial":a=x.instance.generate(t);break;case"uuid":a=m.instance.generate(t);break;default:throw new B("Should never happen")}let c;try{c=await this.repo.update(new f({id:s,current:a}),i)}catch(n){if(!(n instanceof q))throw n;try{c=await this.repo.create(new f({id:s,current:a}),i)}catch(n){if(!(n instanceof L)||"uuid"!==r)throw n;return this.increment(t,e,i)}}return c.current}async next(...t){const e=await l.args(P.UPDATE,f,t,this.adapter),{context:i,args:r}=e,n=await this.current(...r);return this.increment(n,void 0,i)}async range(t,...e){const i=await l.args(P.UPDATE,f,e,this.adapter),{context:r,args:n}=i,s=await this.current(...n),a=this.parse(this.options.incrementBy),o=await this.increment(s,this.parse(t)*a,r),c=[];for(let e=1;t>=e;e++)c.push(s+a*this.parse(e));if("uuid"===this.options.type||"serial"===this.options.type)throw new b(`type ${this.options.type} is currently not suppported for this adapter`);const u="function"==typeof this.options.type&&this.options.type?.name?this.options.type.name:this.options.type;if(c[c.length-1]!==o&&"String"!==u)throw new B("Miscalculation of range");return c}}async function wt(t,e,i,r){try{const e=t.get("identity");r[i]=e.getID()}catch(t){throw new b("No User found in context. Please provide a user in the context")}}async function ft(t,e,i,r){if(!e.type||r[i])return;let n;e.name||(e.name=s.sequenceName(r,"pk"));try{n=await this.adapter.Sequence(e)}catch(t){throw new B(`Failed to instantiate Sequence ${e.name}: ${t}`)}const a=await n.next(t);Object.defineProperty(r,i,{enumerable:!0,writable:!1,configurable:!0,value:a})}class mt extends n{getClient(){throw new b("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new dt}repository(){return ct}async Sequence(t){return new yt(t,this)}constructor(t,e){super(t,gt,e),this.Context=at}for(t,...e){return super.for(t,...e)}async create(t,e,i,...r){const{ctx:n,log:a,stub:o}=this.logCtx(r,this.create);a.info("in ADAPTER create with args "+r);const c=s.tableName(t);try{a.info(`adding entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);i=await this.putState(t,i,n)}catch(t){throw this.parseError(t)}return i}async read(t,e,...i){const{ctx:r,log:n,stub:a}=this.logCtx(i,this.read);n.info("in ADAPTER read with args "+i);const o=s.tableName(t);let c;try{const t=a.createCompositeKey(o,[e+""]);c=await this.readState(t,r)}catch(t){throw this.parseError(t)}return c}async update(t,e,i,...r){const{ctx:n,log:a,stub:o}=this.logCtx(r,this.update),c=s.tableName(t);try{a.verbose(`updating entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);i=await this.putState(t,i,n)}catch(t){throw this.parseError(t)}return i}async delete(t,e,...i){const{ctx:r,log:n,ctxArgs:a,stub:o}=this.logCtx(i,this.delete),c=s.tableName(t);let l;try{const i=o.createCompositeKey(c,[e+""]);l=await this.read(t,e,...a),n.verbose(`deleting entry with pk ${e} from ${c} table`),await this.deleteState(i,r)}catch(t){throw this.parseError(t)}return l}async deleteState(t,e){const{stub:i}=this.logCtx([e],this.deleteState);await i.deleteState(t)}forPrivate(t){const e=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map((t=>t.name));return new Proxy(this,{get:(i,r,n)=>e.includes(r)?new Proxy(i[r],{async apply(e,i,n){switch(r){case"putState":{const[e,i,r]=n;return await e.putPrivateData(t,i.toString(),r),r}case"deleteState":{const[e,i]=n;return e.deletePrivateData(t,i)}case"readState":{const[e,i]=n;return e.getPrivateData(t,i)}case"queryResult":{const[e,i]=n;return e.getPrivateDataQueryResult(t,i)}case"queryResultPaginated":{const[e,i,r,s]=n,a=await e.getPrivateDataQueryResult(t,i),o=[];let c=0,l=!s,u=null;for(;;){const t=await a.next();if(t.value&&t.value.value.toString()){const e=t.value.key,i=t.value.value.toString("utf8");if(!l){e===s?.toString()&&(l=!0);continue}if(o.push({Key:e,Record:JSON.parse(i)}),u=e,c++,c>=r)return await a.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:u}}}if(t.done)return await a.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:""}}}}default:throw new B("Unsupported method override "+r)}}}):Reflect.get(i,r,n)})}async putState(t,e,i){let r;const{stub:n,log:s}=this.logCtx([i],this.putState);try{r=Buffer.from(mt.serializer.serialize(e))}catch(e){throw new _(`Failed to serialize record with id ${t}: ${e}`)}const a=i.get("segregated");return a?await n.putPrivateData(a,t.toString(),r):await n.putState(t.toString(),r),s.silly(`state stored${a?` in ${a} collection`:""} under id ${t}`),e}async readState(t,e){let i;const{stub:r,log:n}=this.logCtx([e],this.readState);let s;const a=e.get("segregated");if(s=a?(await r.getPrivateData(a,t.toString())).toString():(await r.getState(t.toString())).toString(),!s)throw new q(`Record with id ${t}${a?` in ${a} collection`:""} not found`);n.silly(`state retrieved from${a?` ${a} collection`:""} under id ${t}`);try{i=mt.serializer.deserialize(s.toString())}catch(t){throw new _("Failed to parse record: "+t)}return i}async queryResult(t,e,...i){const{ctx:r}=this.logCtx(i,this.readState);let n;const s=r.get("segregated");return n=s?await t.getPrivateDataQueryResult(s,JSON.stringify(e)):await t.getQueryResult(JSON.stringify(e)),n}async queryResultPaginated(t,e,i=250,r,...n){const{ctx:s}=this.logCtx(n,this.readState);let a;const o=s.get("segregated");return o?(e.selector={...e.selector,_id:r?{$gt:r.toString()}:{$gte:""}},a={iterator:await t.getPrivateDataQueryResult(o,JSON.stringify(e)),metadata:{fetchedRecordsCount:i,bookmark:""}}):a=await t.getQueryResultWithPagination(JSON.stringify(e),i,r?.toString()),a}mergeModels(t){const e=t=>Object.entries(t).reduce(((t,[e,i])=>(void 0!==i&&(t[e]=i),t)),{});let i=t.pop();for(const r of t)i=Object.assign({},e(i),e(r));return i}decode(t){return mt.textDecoder.decode(t)}async flags(t,e,i,r,...n){const s={stub:r.stub,segregated:!1};return Object.assign(s,r instanceof at?{logger:r.logger,identity:r.identity,correlationId:r.stub.getTxID()}:{identity:r.clientIdentity,logger:new ht(this,void 0,r),correlationId:r.stub.getTxID()}),await super.flags(t,e,s,...n)}index(t){return Promise.resolve(void 0)}async resultIterator(t,e,i=!1){const r=[];let n=await e.next();for(;!n.done;){if(n.value&&n.value.value.toString()){let e={};if(t.debug(n.value.value.toString("utf8")),i){e.TxId=n.value.txId,e.Timestamp=n.value.timestamp;try{e.Value=JSON.parse(n.value.value.toString("utf8"))}catch(i){t.error(i),e.Value=n.value.value.toString("utf8")}}else try{e=JSON.parse(n.value.value.toString("utf8"))}catch(i){t.error(i),e=n.value.value.toString("utf8")}r.push(e)}n=await e.next()}return t.debug(`Closing iterator after ${r.length} results`),e.close(),r}async raw(t,e=!0,...i){const{log:r,stub:n,ctx:s}=this.logCtx(i,this.raw),{skip:a,limit:o}=t;let c;o||a?(delete t.limit,delete t.skip,r.debug(`Retrieving paginated iterator: limit: ${o}/ skip: ${a}`),c=(await this.queryResultPaginated(n,t,o||250,a?.toString(),s)).iterator):(r.debug("Retrieving iterator"),c=await this.queryResult(n,t,s)),r.debug("Iterator acquired");const l=await this.resultIterator(r,c);return r.debug(`returning ${Array.isArray(l)?l.length:1} results`),l}Statement(){return new lt(this)}async createAll(t,e,i,...r){if(e.length!==i.length)throw new B("Ids and models must have the same length");const{log:n,ctxArgs:a}=this.logCtx(r,this.createAll),o=s.tableName(t);return n.debug(`Creating ${e.length} entries ${o} table`),Promise.all(e.map(((e,r)=>this.create(t,e,i[r],...a))))}async updateAll(t,e,i,...r){if(e.length!==i.length)throw new B("Ids and models must have the same length");const{log:n,ctxArgs:a}=this.logCtx(r,this.updateAll),o=s.tableName(t);return n.debug(`Updating ${e.length} entries ${o} table`),Promise.all(e.map(((e,r)=>this.update(t,e,i[r],...a))))}prepare(t,...e){const{log:i}=this.logCtx(e,this.prepare),r=s.tableName(t.constructor),n=s.pk(t.constructor),a=s.segregate(t),o=Object.entries(a.model).reduce(((e,[i,r])=>{if(void 0===r)return e;const n=s.columnName(t,i);if(this.isReserved(n))throw new B(`Property name ${n} is reserved`);return e[n]=r,e}),{});return i.silly(`Preparing record for ${r} table with pk ${t[n]}`),{record:o,id:t[n],transient:a.transient}}revert(t,e,i,r,...n){const{log:a}=this.logCtx(n,this.revert),o={};o[s.pk(e)]=i;const c="string"==typeof e?s.build(o,e):new e(o);a.silly(`Rebuilding model ${c.constructor.name} id ${i}`);const l=Object.keys(c).reduce(((e,i)=>(e[i]=t[s.columnName(e,i)],e)),c);return r&&(a.debug("re-adding transient properties: "+Object.keys(r).join(", ")),Object.entries(r).forEach((([t,e])=>{if(t in l&&void 0!==l[t])throw new B(`Transient property ${t} already exists on model ${c.constructor.name}. should be impossible`);l[t]=e}))),l}createPrefix(t,i,r,...n){const{ctxArgs:a}=this.logCtx(n,this.createPrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,r),[t,i,o,...a]}updatePrefix(t,i,r,...n){const{ctxArgs:a}=this.logCtx(n,this.updatePrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,r),[t,i,o,...a]}createAllPrefix(t,i,r,...n){if(i.length!==r.length)throw new B("Ids and models must have the same length");const s=n.pop(),a=i.map(((i,n)=>{const s={};return s[e.TABLE]=t,Object.assign(s,r[n]),s}));return[t,i,a,s]}updateAllPrefix(t,i,r,...n){if(i.length!==r.length)throw new B("Ids and models must have the same length");const s=n.pop(),a=i.map(((i,n)=>{const s={};return s[e.TABLE]=t,Object.assign(s,r[n]),s}));return[t,i,a,s]}parseError(t,e){return mt.parseError(e||t)}logCtx(t,e){return mt.logCtx.call(this,t,e)}static logCtx(t,e){if(1>t.length)throw new B("No context provided");const i=t.pop();if(!(i instanceof l))throw new B("No context provided");if(t.filter((t=>t instanceof l)).length>1)throw Error("here");const r=this?i.logger.for(this).for(e):i.logger.clear().for(this).for(e);return{ctx:i,log:e?r.for(e):r,stub:i.stub,identity:i.identity,ctxArgs:[...t,i]}}static parseError(t){const e="string"==typeof t?t:t.message;return e.includes(q.name)?new q(t):e.includes(L.name)?new L(t):e.includes(U.name)?new U(t):e.includes(d.name)?new d(t):e.includes(S.name)?new S(t):e.includes(b.name)?new b(t):e.includes(v.name)?new v(t):e.includes(A.name)?new A(t):e.includes(C.name)?new C(t):e.includes(k.name)?new k(t):e.includes(O.name)?new O(t):e.includes(_.name)?new _(t):new B(t)}static decoration(){super.decoration(),X.flavouredAs(gt).for(h.CREATED_BY).define(M(wt),Z(h.CREATED_BY,{})).apply(),X.flavouredAs(gt).for(h.UPDATED_BY).define(V(wt),Z(h.UPDATED_BY,{})).apply(),X.flavouredAs(gt).for(h.COLUMN).extend(H()).apply(),X.flavouredAs(gt).for(h.TABLE).extend((t=>{const e=[];let i="function"==typeof t?W.constr(t):W.constr(t.constructor);for(;i&&i!==Object&&i.prototype;)e.push(i),i=Object.getPrototypeOf(i);for(;e.length>0;){const t=e.pop();Q()(t)}return Q()(t)})).apply()}}mt.decoration(),p.setCurrent(gt);class xt extends a{constructor(){super()}deserialize(t){return super.deserialize(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}}class bt extends K{static{this.adapter=new mt}static{this.serializer=new xt}constructor(t,e){super(t),this.clazz=e,this.initialized=!1,this.repo=g.forModel(e)}async listBy(t,e,i,...r){const{ctxArgs:n,log:s}=await this.logCtx([...r,t],this.listBy);return s.info(`Running listBy key ${e}, order ${i} and args ${n}`),this.repo.listBy(e,i,...n)}async paginateBy(t,e,i,r,...n){const{ctxArgs:s,log:a}=await this.logCtx([...n,t],this.paginateBy);return a.info(`Running paginateBy key ${e}, order ${i} with size ${r} and args ${s}`),this.repo.paginateBy(e,i,r,...s)}async findOneBy(t,e,i,...r){const{ctxArgs:n,log:s}=await this.logCtx([...r,t],this.findOneBy);return s.info(`Running findOneBy key ${e}, value: ${i} with args ${n}`),this.repo.findOneBy(e,i,...n)}async statement(t,e,...i){const{ctxArgs:r,log:n}=await this.logCtx([...i,t],this.statement);return n.info(`Running statement ${e} with args ${r}`),this.repo.statement(e,...r)}async create(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.create);r.info("CONTRACT CREATE, "+n),"string"==typeof e&&(e=this.deserialize(e)),r.info("Creating model: "+JSON.stringify(e));const a=this.getTransientData(t);return r.info("Merging transient data..."),e=s.merge(e,a,this.clazz),this.repo.create(e,...n)}async read(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.read);return r.info(`reading entry with pk ${e} `),this.repo.read(e,...n)}getTransientData(t){const e=t.stub.getTransient();let i={};return e.has(this.repo.tableName)&&(i=JSON.parse(e.get(this.repo.tableName)?.toString("utf8"))),i}async update(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.update);"string"==typeof e&&(e=this.deserialize(e)),r.info("Updating model: "+JSON.stringify(e));const a=this.getTransientData(t);return r.info("Merging transient data..."),e=s.merge(e,a,this.clazz),this.repo.update(e,...n)}async delete(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.delete);return r.info(`deleting entry with pk ${e} `),this.repo.delete(e+"",...n)}async deleteAll(t,e,...i){const{ctxArgs:r}=await this.logCtx([...i,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.deleteAll(e,...r)}async readAll(t,e,...i){const{ctxArgs:r}=await this.logCtx([...i,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.readAll(e,...r)}async updateAll(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.updateAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),r.info(`updating ${e.length} entries to the table`),this.repo.updateAll(e,...n)}async query(t,e,i,r=R.ASC,n,s,...a){const{ctxArgs:o}=await this.logCtx([...a,t],this.query);return this.repo.query(e,i,r,n,s,...o)}async raw(t,e,i,...r){const{ctxArgs:n}=await this.logCtx([...r,t],this.raw);return bt.adapter.raw(e,i,...n)}serialize(t){return bt.serializer.serialize(t)}deserialize(t){return bt.serializer.deserialize(t)}async init(t){const{log:e}=await this.logCtx([t],this.init);e.info(`Running contract ${this.getName()} initialization...`),this.initialized=!0,e.info("Contract initialization completed.")}async healthcheck(t){const{log:e}=await this.logCtx([t],this.healthcheck);return e.info(`Running Healthcheck: ${this.initialized}...`),{healthcheck:this.initialized}}async createAll(t,e,...i){const{log:r,ctxArgs:n}=await this.logCtx([...i,t],this.createAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),r.info(`adding ${e.length} entries to the table`),this.repo.createAll(e,...n)}async logCtx(t,e){return bt.logCtx.bind(this)(t,e)}static async logCtx(t,e){if(1>t.length)throw new B("No context provided");const i=t.pop();if(i instanceof at)return{ctx:i,log:i.logger.clear().for(this).for(e),ctxArgs:[...t,i],stub:i.stub,identity:i.identity};if(!(i instanceof Y))throw new B("No valid context provided");const r={correlationId:i.stub.getTxID()},n=await bt.adapter.context((()=>{if("string"==typeof e)return e;switch(e.name){case P.CREATE:case P.READ:case P.UPDATE:case P.DELETE:case T.CREATE_ALL:case T.READ_ALL:case T.UPDATE_ALL:case T.DELETE_ALL:}return e.name})(),r,this.clazz,i),s=this?n.logger.for(this).for(e):n.logger.clear().for(this).for(e);return{ctx:n,log:s,stub:n.stub,identity:n.identity,ctxArgs:[...t,n]}}}class St extends bt{constructor(t,e){super(t,e)}async create(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.create);i.info("Creating model: "+e);const n=this.deserialize(e);return i.info("Model deserialized: "+JSON.stringify(n)),this.serialize(await super.create(r,n))}async read(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.read);return i.info("Reading id: "+e),this.serialize(await super.read(r,e))}async update(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.update);return i.info("Updating model: "+e),this.serialize(await super.update(r,e))}async delete(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.delete);return i.info("Deleting id: "+e),this.serialize(await super.delete(r,e))}async deleteAll(t,e){const i=JSON.parse(e),{log:r,ctx:n}=await this.logCtx([t],this.deleteAll);return r.info(`deleting ${i.length} entries from the table`),JSON.stringify((await super.deleteAll(n,i)).map((t=>this.serialize(t))))}async readAll(t,e){const i=JSON.parse(e),{log:r,ctx:n}=await this.logCtx([t],this.readAll);return r.info(`reading ${i.length} entries from the table`),JSON.stringify((await super.readAll(n,i)).map((t=>this.serialize(t))))}async updateAll(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.updateAll),n=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return i.info(`Updating ${n.length} entries to the table`),JSON.stringify((await super.updateAll(r,n)).map((t=>this.serialize(t))))}async statement(t,e,i){const{ctx:r,log:n}=await this.logCtx([t],this.statement);try{i=JSON.parse(i)}catch(t){throw new _("Invalid args: "+t)}if(!Array.isArray(i))throw new _(`Invalid args: ${JSON.stringify(i)}. must be an array`);return n.info("calling prepared statement "+e),n.info("with args "+i),JSON.stringify(await super.statement(r,e,...i))}async listBy(t,e,i){const{ctx:r,log:n}=await this.logCtx([t],this.listBy);return n.info(`Executing listBy with key ${e} and order ${i}`),JSON.stringify(await super.listBy(r,e,i))}async paginateBy(t,e,i,r){const{ctx:n,log:s}=await this.logCtx([t],this.paginateBy);return s.info(`Executing paginateBy with key ${e} and order ${i}`),JSON.stringify(await super.paginateBy(n,e,i,r))}async findOneBy(t,e,i,...r){const{ctx:n,log:s}=await this.logCtx([...r,t],this.findOneBy);return s.info(`Executing findOneBy with key ${e} and value ${i}`),JSON.stringify(await super.findOneBy(n,e,i,...r))}async query(t,e,i,r,n,s){const{ctx:a,log:o}=await this.logCtx([t],this.query);let c;o.info(`Executing query orderedBy ${i} and order ${r}`);try{c=y.from(JSON.parse(e))}catch(t){throw new _("Invalid condition: "+t)}return o.info("Condition: "+JSON.stringify(c)),JSON.stringify(await super.query(a,c,i,r,n,s))}async init(t){await super.init(t)}async healthcheck(t){const{log:e,ctx:i}=await this.logCtx([t],this.updateAll);return e.debug(`Running Healthcheck: ${this.initialized}...`),JSON.stringify(await super.healthcheck(i))}async createAll(t,e){const{log:i}=await this.logCtx([t],this.createAll),r=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return i.info(`Adding ${r.length} entries to the table`),JSON.stringify((await super.createAll(t,r)).map((t=>this.serialize(t))))}}nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"create",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"read",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"update",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"delete",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"deleteAll",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"readAll",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"updateAll",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],St.prototype,"statement",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],St.prototype,"listBy",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String,Number]),st("design:returntype",Promise)],St.prototype,"paginateBy",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String,String]),st("design:returntype",Promise)],St.prototype,"findOneBy",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],St.prototype,"init",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],St.prototype,"healthcheck",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],St.prototype,"createAll",null);class vt extends B{constructor(t){super(t,vt.name)}}class At extends B{constructor(t){super(t,At.name)}}class Ct extends B{constructor(t){super(t,Ct.name)}}class kt extends j{constructor(t){super(kt.name,t,409)}}function Ot(t,e){const i=t+e;if(t!==i-e||e!==i-t)throw new vt(`Addition overflow: ${t} + ${e}`);return i}function Rt(t,e){const i=t-e;if(t!==i+e||e!==t-i)throw new vt(`Subtraction overflow: ${t} - ${e}`);return i}let Nt=class extends z{constructor(t){super(t)}};nt([N({type:"String"}),st("design:type",String)],Nt.prototype,"name",void 0),nt([$(),o(),st("design:type",String)],Nt.prototype,"owner",void 0),nt([$(),o(),st("design:type",String)],Nt.prototype,"symbol",void 0),nt([$(),o(),st("design:type",Number)],Nt.prototype,"decimals",void 0),Nt=nt([E("erc20_tokens"),c(),st("design:paramtypes",[Object])],Nt);let $t=class extends z{constructor(t){super(t)}};nt([N({type:"String"}),st("design:type",String)],$t.prototype,"id",void 0),nt([$(),o(),st("design:type",String)],$t.prototype,"token",void 0),nt([$(),o(),st("design:type",Number)],$t.prototype,"balance",void 0),nt([$(),st("design:type",String)],$t.prototype,"captive",void 0),$t=nt([E("erc20_wallets"),c(),st("design:paramtypes",[Object])],$t);let Et=class extends z{constructor(t){super(t)}};function zt(){return function(t,e,i){const r=i.value;return i.value=async function(...t){const i=t[0],n=i.clientIdentity.getID(),s=await this.tokenRepository.select(),a=await s.execute(i);if(0==a.length)throw new q("No tokens avaialble");if(a.length>1)throw new q("To many token available : "+a.length);if(a[0].owner!=n)throw new C(`User not authorized to run ${e} on the token`);return await r.apply(this,t)},i}}var Pt;nt([N({type:"String"}),$(),o(),st("design:type",String)],Et.prototype,"owner",void 0),nt([$(),o(),st("design:type",String)],Et.prototype,"spender",void 0),nt([$(),o(),st("design:type",Number)],Et.prototype,"value",void 0),Et=nt([E("erc20_allowances"),c(),st("design:paramtypes",[Object])],Et),(t=>{t.TRANSFER="Transfer",t.APPROVAL="Approval"})(Pt||(Pt={}));class Tt extends bt{constructor(t){super(t,$t),Tt.adapter=Tt.adapter||new mt,this.walletRepository=ct.forModel($t,Tt.adapter.alias),this.tokenRepository=ct.forModel(Nt,Tt.adapter.alias),this.allowanceRepository=ct.forModel(Et,Tt.adapter.alias)}async TokenName(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].name}async Symbol(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].symbol}async Decimals(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.tokenRepository.select();return(await i.execute(e))[0].decimals}async TotalSupply(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=this.walletRepository.select(),r=await i.execute(e);if(0==r.length)throw new q(`The token ${this.getName()} does not exist`);let n=0;return r.forEach((t=>{n+=t.balance})),n}async BalanceOf(t,e){const{ctx:i}=await this.logCtx([t],this.TokenName);return await this.CheckInitialized(i),(await this.walletRepository.read(e,i)).balance}async Transfer(t,e,i){const{ctx:r}=await this.logCtx([t],this.Transfer);await this.CheckInitialized(r);const n=r.identity.getID();if(!await this._transfer(n,e,i,r))throw new B("Failed to transfer");return!0}async TransferFrom(t,e,i,r){const{ctx:n}=await this.logCtx([t],this.BurnFrom);await this.CheckInitialized(n);const s=n.identity.getID(),a=await this._getAllowance(e,s,n);if(!a||0>a.value)throw new Ct(`spender ${s} has no allowance from ${e}`);const o=a.value;if(r>o)throw new At("The spender does not have enough allowance to spend.");const c=Rt(o,r),l=Object.assign({},a,{value:c});if(await this.allowanceRepository.update(l,n),!await this._transfer(e,i,r,n))throw new B("Failed to transfer");return!0}async _transfer(t,e,i,r){const n=r.logger;if(t===e)throw new C("cannot transfer to and from same client account");if(0>i)throw new At("transfer amount cannot be negative");const s=await this.walletRepository.read(t,r),a=s.balance;if(i>a)throw new At(`client account ${t} has insufficient funds.`);let o,c=!1;try{o=await this.walletRepository.read(e,r)}catch(t){if(!(t instanceof j))throw new B(t);if(404!==t.code)throw new B(t.message);o=new $t({id:e,balance:0,token:await this.TokenName(r)}),c=!0}const l=o.balance,u=Rt(a,i),p=Ot(l,i),g=Object.assign({},s,{balance:u});await this.walletRepository.update(g,r);const d=Object.assign({},o,{balance:p});c?await this.walletRepository.create(d,r):await this.walletRepository.update(d,r);const h={from:t,to:e,value:i};return this.repo.refresh(Nt,Pt.TRANSFER,"",h,r).catch((t=>n.error("Failed to notify transfer: "+t))),!0}async Approve(t,e,i){const{ctx:r,ctxArgs:n}=await this.logCtx([t],this.Approve);await this.CheckInitialized(r);const s=r.identity.getID();let a=await this._getAllowance(s,e,r);if((await this.walletRepository.read(s,...n)).balance<i)throw new At(`client account ${s} has insufficient funds.`);a?(a.value=i,await this.allowanceRepository.update(a,...n)):(a=new Et({owner:s,spender:e,value:i}),await this.allowanceRepository.create(a,...n));const o={owner:s,spender:e,value:i};return this.repo.refresh(Nt,Pt.APPROVAL,"",o,r),!0}async Allowance(t,e,i){const{ctx:r}=await this.logCtx([t],this.Allowance);await this.CheckInitialized(r);const n=await this._getAllowance(e,i,r);if(!n)throw new Ct(`spender ${i} has no allowance from ${e}`);return n.value}async _getAllowance(t,e,i){const r=y.and(y.attribute("owner").eq(t),y.attribute("spender").eq(e)),n=await this.allowanceRepository.select().where(r).execute(i);return n?.[0]}async Initialize(t,e){const{ctx:i}=await this.logCtx([t],this.Initialize);if((await this.tokenRepository.select().execute(i)).length>0)throw new C("contract options are already set, client is not authorized to change them");return e.owner=i.identity.getID(),await this.tokenRepository.create(e,i),!0}async CheckInitialized(t){const{ctx:e}=await this.logCtx([t],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(e)).length)throw new kt("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(t,e){const{ctx:i}=await this.logCtx([t],this.Mint);await this.CheckInitialized(i);const r=i.identity.getID();if(0>=e)throw new F("mint amount must be a positive integer");let n;try{n=await this.walletRepository.read(r,i);const t=Ot(n.balance,e),s=Object.assign({},n,{balance:t});await this.walletRepository.update(s,i)}catch(n){if(!(n instanceof j))throw new B(n);if(404!==n.code)throw new B(n.message);{const n=new $t({id:r,balance:e,token:await this.TokenName(t)});await this.walletRepository.create(n,i)}}const s={from:"0x0",to:r,value:e};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",s,i)}async Burn(t,e){const{log:i,ctx:r}=await this.logCtx([t],this.Burn);await this.CheckInitialized(r);const n=r.identity.getID(),s=await this.walletRepository.read(n,r),a=s.balance;if(e>a)throw new At("Minter has insufficient funds.");const o=Rt(a,e),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,r),i.info(e+" tokens were burned");const l={from:n,to:"0x0",value:e};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",l,r)}async BurnFrom(t,e,i){const{log:r,ctx:n}=await this.logCtx([t],this.BurnFrom);await this.CheckInitialized(n);const s=await this.walletRepository.read(e,n),a=s.balance;if(i>a)throw new At(e+" has insufficient funds.");const o=Rt(a,i),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,n),r.info(`${i} tokens were burned from ${e}`);const l={from:e,to:"0x0",value:i};this.repo.ObserverHandler().updateObservers(Nt,Pt.TRANSFER,"",l,n)}async ClientAccountBalance(t){const{ctx:e}=await this.logCtx([t],this.TokenName);await this.CheckInitialized(e);const i=e.identity.getID(),r=await this.walletRepository.read(i,e);if(!r)throw new At(`The account ${i} does not exist`);return r.balance}async ClientAccountID(t){const{ctx:e}=await this.logCtx([t],this.ClientAccountID);return await this.CheckInitialized(e),e.identity.getID()}}nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"TokenName",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"Symbol",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"Decimals",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"TotalSupply",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String]),st("design:returntype",Promise)],Tt.prototype,"BalanceOf",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"Transfer",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,String,Number]),st("design:returntype",Promise)],Tt.prototype,"TransferFrom",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"Approve",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y,String,String]),st("design:returntype",Promise)],Tt.prototype,"Allowance",null),nt([G(),st("design:type",Function),st("design:paramtypes",[Y,Nt]),st("design:returntype",Promise)],Tt.prototype,"Initialize",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"CheckInitialized",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,Number]),st("design:returntype",Promise)],Tt.prototype,"Mint",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,Number]),st("design:returntype",Promise)],Tt.prototype,"Burn",null),nt([zt(),G(),st("design:type",Function),st("design:paramtypes",[Y,String,Number]),st("design:returntype",Promise)],Tt.prototype,"BurnFrom",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"ClientAccountBalance",null),nt([G(!1),st("design:type",Function),st("design:paramtypes",[Y]),st("design:returntype",Promise)],Tt.prototype,"ClientAccountID",null);const Bt=[Tt],Dt="##VERSION##",It="##PACKAGE##";W.registerLibrary(It,Dt);export{ht as ContractLogger,mt as FabricContractAdapter,at as FabricContractContext,ct as FabricContractRepository,ot as FabricContractRepositoryObservableHandler,yt as FabricContractSequence,bt as FabricCrudContract,lt as FabricStatement,It as PACKAGE_NAME,St as SerializedCrudContract,Dt as VERSION,Bt as contracts,wt as createdByOnFabricCreateUpdate,ft as pkFabricOnCreate};
|
|
2
2
|
//# sourceMappingURL=for-fabric.js.map
|
package/dist/for-fabric.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-fabric.js","sources":["../src/contracts/ContractContext.ts","../src/contracts/FabricContractRepositoryObservableHandler.ts","../src/shared/events.ts","../src/contracts/FabricContractRepository.ts","../src/contracts/FabricContractStatement.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/logging.ts","../src/contracts/FabricContractSequence.ts","../src/contracts/ContractAdapter.ts","../src/shared/DeterministicSerializer.ts","../src/contracts/crud/crud-contract.ts","../src/contracts/crud/serialized-crud-contract.ts","../src/shared/errors.ts","../src/shared/math.ts","../src/contracts/erc20/models.ts","../src/shared/decorators.ts","../src/shared/erc20/erc20-constants.ts","../src/contracts/erc20/erc20contract.ts","../src/contracts/erc20/index.ts","../src/version.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["FabricContractContext","Context","constructor","super","stub","this","get","timestamp","getDateTimestamp","identity","toString","FabricContractRepositoryObservableHandler","ObserverHandler","supportedEvents","OperationKeys","CREATE","UPDATE","DELETE","BulkCrudOperationKeys","CREATE_ALL","UPDATE_ALL","DELETE_ALL","updateObservers","clazz","event","id","args","log","ctx","Adapter","logCtx","owner","payload","table","name","indexOf","debug","eventName","params","push","join","generateFabricEventName","setEvent","Buffer","from","JSON","stringify","FabricContractRepository","Repository","adapter","trackedEvents","_overrides","Object","assign","ignoreValidation","ignoreHandlers","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","createAllPrefix","models","contextArgs","class","context","ignoreValidate","length","opts","Model","sequenceFor","ids","type","sequenceName","Sequence","range","map","m","i","pk","InternalError","Promise","all","async","generated","enforceDBDecorators","ON","ignoredProps","errors","resolve","hasErrors","errorMessages","reduceErrorsToPrint","ValidationError","statement","statements","QueryError","PersistenceKeys","STATEMENT","logger","info","ctxArgs","verbose","e","BaseError","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","fromSelector","Metadata","key","DBKeys","ID","selectSelector","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","keys","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","parse","serialize","model","require","sortKeysRecursive","preSerialize","ContractLogger","MiniLogger","conf","logging","getLogger","level","msg","stack","NumericLogLevels","config","method","LogLevel","error","silly","call","createLog","Logging","setFactory","object","FabricContractSequence","options","current","READ","SequenceModel","startWith","sequence","repo","read","NotFoundError","increment","count","incrementBy","next","toIncrementBy","Number","BigInt","String","Serial","instance","generate","UUID","seq","update","create","ConflictError","argz","undefined","UnsupportedError","typeName","createdByOnFabricCreateUpdate","data","user","getID","pkFabricOnCreate","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","alias","for","composedKey","createCompositeKey","putState","parseError","readState","delete","deleteState","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","res","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","getState","getQueryResult","_id","$gt","$gte","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","baseFlags","segregated","correlationId","getTxID","clientIdentity","index","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","docsOnly","Array","isArray","Statement","createAll","tableLabel","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","record","transient","revert","obj","ob","createPrefix","updatePrefix","records","updateAllPrefix","reason","filter","a","clear","message","BadRequestError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","decoration","Decoration","flavouredAs","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","COLUMN","extend","FabricProperty","FabricObject","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","forModel","listBy","order","paginateBy","size","findOneBy","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","orderBy","OrderDirection","ASC","init","getName","healthcheck","bind","Ctx","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","cond","__decorate","Transaction","prototype","OverflowError","BalanceError","AllowanceError","NotInitializedError","add","b","c","sub","ERC20Token","BaseModel","column","required","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"for-fabric.js","sources":["../src/contracts/ContractContext.ts","../src/contracts/FabricContractRepositoryObservableHandler.ts","../src/shared/events.ts","../src/contracts/FabricContractRepository.ts","../src/contracts/FabricContractStatement.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/logging.ts","../src/contracts/FabricContractSequence.ts","../src/contracts/ContractAdapter.ts","../src/shared/DeterministicSerializer.ts","../src/contracts/crud/crud-contract.ts","../src/contracts/crud/serialized-crud-contract.ts","../src/shared/errors.ts","../src/shared/math.ts","../src/contracts/erc20/models.ts","../src/shared/decorators.ts","../src/shared/erc20/erc20-constants.ts","../src/contracts/erc20/erc20contract.ts","../src/contracts/erc20/index.ts","../src/version.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["FabricContractContext","Context","constructor","super","stub","this","get","timestamp","getDateTimestamp","identity","toString","FabricContractRepositoryObservableHandler","ObserverHandler","supportedEvents","OperationKeys","CREATE","UPDATE","DELETE","BulkCrudOperationKeys","CREATE_ALL","UPDATE_ALL","DELETE_ALL","updateObservers","clazz","event","id","args","log","ctx","Adapter","logCtx","owner","payload","table","name","indexOf","debug","eventName","params","push","join","generateFabricEventName","setEvent","Buffer","from","JSON","stringify","FabricContractRepository","Repository","adapter","trackedEvents","_overrides","Object","assign","ignoreValidation","ignoreHandlers","allowRawStatements","forcePrepareSimpleQueries","forcePrepareComplexQueries","createAllPrefix","models","contextArgs","class","context","ignoreValidate","length","opts","Model","sequenceFor","ids","type","sequenceName","Sequence","range","map","m","i","pk","InternalError","Promise","all","async","generated","enforceDBDecorators","ON","ignoredProps","errors","resolve","hasErrors","errorMessages","reduceErrorsToPrint","ValidationError","statement","statements","QueryError","PersistenceKeys","STATEMENT","logger","info","ctxArgs","verbose","e","BaseError","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","fromSelector","Metadata","key","DBKeys","ID","selectSelector","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","keys","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","parse","serialize","model","require","sortKeysRecursive","preSerialize","ContractLogger","MiniLogger","conf","logging","getLogger","level","msg","stack","NumericLogLevels","config","method","LogLevel","error","silly","call","createLog","Logging","setFactory","object","FabricContractSequence","options","current","READ","SequenceModel","startWith","sequence","repo","read","NotFoundError","increment","count","incrementBy","next","toIncrementBy","Number","BigInt","String","Serial","instance","generate","UUID","seq","update","create","ConflictError","argz","undefined","UnsupportedError","typeName","createdByOnFabricCreateUpdate","data","user","getID","pkFabricOnCreate","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","alias","for","composedKey","createCompositeKey","putState","parseError","readState","delete","deleteState","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","res","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","getState","getQueryResult","_id","$gt","$gte","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","baseFlags","segregated","correlationId","getTxID","clientIdentity","index","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","docsOnly","Array","isArray","Statement","createAll","tableLabel","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","record","transient","revert","obj","ob","createPrefix","updatePrefix","records","updateAllPrefix","reason","filter","a","clear","message","BadRequestError","PagingError","MigrationError","ObserverError","AuthorizationError","ForbiddenError","ConnectionError","decoration","Decoration","flavouredAs","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","COLUMN","extend","FabricProperty","chain","constr","prototype","getPrototypeOf","FabricObject","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","forModel","listBy","order","paginateBy","size","findOneBy","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","orderBy","OrderDirection","ASC","init","getName","healthcheck","bind","Ctx","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","cond","__decorate","Transaction","OverflowError","BalanceError","AllowanceError","NotInitializedError","add","b","c","sub","ERC20Token","BaseModel","column","required","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
@@ -41,6 +41,9 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
41
41
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
42
42
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
43
43
|
};
|
|
44
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
45
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
46
|
+
};
|
|
44
47
|
var _a;
|
|
45
48
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
46
49
|
exports.FabricClientAdapter = void 0;
|
|
@@ -62,6 +65,7 @@ const FabricClientPaginator_1 = require("./FabricClientPaginator.cjs");
|
|
|
62
65
|
const FabricClientRepository_1 = require("./FabricClientRepository.cjs");
|
|
63
66
|
const errors_1 = require("./../shared/errors.cjs");
|
|
64
67
|
const constants_2 = require("./constants.cjs");
|
|
68
|
+
const fs_1 = __importDefault(require("fs"));
|
|
65
69
|
/**
|
|
66
70
|
* @description Adapter for interacting with Hyperledger Fabric networks
|
|
67
71
|
* @summary The FabricAdapter extends CouchDBAdapter to provide a seamless interface for interacting with Hyperledger Fabric networks.
|
|
@@ -663,9 +667,16 @@ class FabricClientAdapter extends core_1.Adapter {
|
|
|
663
667
|
static getClient(config) {
|
|
664
668
|
const log = this.log.for(this.getClient);
|
|
665
669
|
log.debug(`generating TLS credentials for msp ${config.mspId}`);
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
670
|
+
let pathOrCert = config.tlsCert;
|
|
671
|
+
if (typeof pathOrCert === "string") {
|
|
672
|
+
if (pathOrCert.match(/-----BEGIN (CERTIFICATE|KEY|PRIVATE KEY)-----.+?-----END \1-----$/gms)) {
|
|
673
|
+
pathOrCert = Buffer.from(pathOrCert, "utf8");
|
|
674
|
+
}
|
|
675
|
+
else {
|
|
676
|
+
pathOrCert = Buffer.from(fs_1.default.readFileSync(pathOrCert, "utf8"));
|
|
677
|
+
}
|
|
678
|
+
}
|
|
679
|
+
const tlsCredentials = grpc.credentials.createSsl(pathOrCert);
|
|
669
680
|
log.debug(`generating Gateway Client for url ${config.peerEndpoint}`);
|
|
670
681
|
return new grpc_js_1.Client(config.peerEndpoint, tlsCredentials);
|
|
671
682
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"FabricClientAdapter.js","sourceRoot":"","sources":["../../src/client/FabricClientAdapter.ts"],"names":[],"mappings":"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"}
|