@decaf-ts/for-fabric 0.1.8 → 0.1.9
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 +4 -4
- package/lib/client/FabricClientAdapter.js.map +1 -1
- package/lib/esm/client/FabricClientAdapter.js +4 -4
- package/lib/esm/client/FabricClientAdapter.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.cjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var e,t;e=this,t=function(e,t,a,r,n,i,o,s,c){"use strict";class l extends r.Context{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 d extends i.ObserverHandler{constructor(e=[r.OperationKeys.CREATE,r.OperationKeys.UPDATE,r.OperationKeys.DELETE,r.BulkCrudOperationKeys.CREATE_ALL,r.BulkCrudOperationKeys.UPDATE_ALL,r.BulkCrudOperationKeys.DELETE_ALL]){super(),this.supportedEvents=e}async updateObservers(e,t,a,...r){const{log:n,ctx:o}=i.Adapter.logCtx(r,this.updateObservers),{stub:s}=o,[c,l]=r,d="string"==typeof e?e:e.name;if(-1!==this.supportedEvents.indexOf(t)){n.debug(`Emitting ${t} event`);const e=((e,t,a)=>{const r=[e,t];return a&&r.push(a),r.join("_")})(d,t,c);s.setEvent(e,Buffer.from(JSON.stringify({id:a})))}else s.setEvent(t,Buffer.from(JSON.stringify(l)))}}class u extends i.Repository{constructor(e,t,a){super(e,t),this.trackedEvents=a}logFor(e){if(e.logger)return e.logger;const t=o.Logging.for(this,{correlationId:e.stub.getTxID()},e);return t.info("REPOSITORY LOG_CTX"),t}ObserverHandler(){return new d}async updateObservers(e,t,a,...r){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(t))return await super.updateObservers(e,t,a,...r)}}class p extends t.CouchDBStatement{constructor(e){super(e)}async raw(e,...t){const{ctx:n}=this.logCtx(t,this.raw),i=await this.adapter.raw(e,!0,n),o=a.Model.pk(this.fromSelector),c=s.Metadata.get(this.fromSelector,s.Metadata.key(r.DBKeys.ID,o))?.type;return this.selectSelector?i:i.map(e=>this.processRecord(e,o,c,n))}build(){const e={};e[t.CouchDBKeys.TABLE]={},e[t.CouchDBKeys.TABLE]=a.Model.tableName(this.fromSelector);const r={selector:e};if(this.selectSelector&&(r.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(i.Condition.and(this.whereCondition,i.Condition.attribute(t.CouchDBKeys.TABLE).eq(r.selector[t.CouchDBKeys.TABLE]))).selector,a=Object.keys(e);if(1===a.length&&-1!==Object.values(t.CouchDBGroupOperator).indexOf(a[0]))switch(a[0]){case t.CouchDBGroupOperator.AND:e[t.CouchDBGroupOperator.AND]=[...Object.values(e[t.CouchDBGroupOperator.AND]).reduce((e,a)=>{const r=Object.keys(a);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const n=r[0];return n===t.CouchDBGroupOperator.AND?e.push(...a[n]):e.push(a),e},[])],r.selector=e;break;case t.CouchDBGroupOperator.OR:{const a={};a[t.CouchDBGroupOperator.AND]=[e,...Object.entries(r.selector).map(([e,t])=>{const a={};return a[e]=t,a})],r.selector=a;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach(([e,t])=>{r.selector[e],r.selector[e]=t})}if(this.orderBySelector){r.sort=r.sort||[],r.selector=r.selector||{};const[e,a]=this.orderBySelector,n={};n[e]=a,r.sort.push(n),r.selector[e]||(r.selector[e]={},r.selector[e][t.CouchDBOperator.BIGGER]=null)}return this.limitSelector&&(r.limit=this.limitSelector),this.offsetSelector&&(r.skip=this.offsetSelector),r}}let h=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk(),c.__metadata("design:type",String)],h.prototype,"id",void 0),c.__decorate([a.required(),i.index(),c.__metadata("design:type",Object)],h.prototype,"current",void 0),h=c.__decorate([i.table(t.CouchDBKeys.SEQUENCE),a.model(),c.__metadata("design:paramtypes",[Object])],h);class g extends i.Sequence{constructor(e,t){super(e,t),this.repo=i.Repository.forModel(h,t.alias)}async current(...e){const t=(await r.Context.args(r.OperationKeys.READ,h,e,this.adapter)).context,{name:a,startWith:n}=this.options;try{const e=await this.repo.read(a,t);return this.parse(e.current)}catch(e){if(e instanceof r.NotFoundError){if(void 0===n)throw new r.InternalError("Starting value is not defined for a non existing sequence");try{return this.parse(n)}catch(e){throw new r.InternalError(`Failed to parse initial value for sequence ${n}: ${e}`)}}throw new r.InternalError(`Failed to retrieve current value for sequence ${a}: ${e}`)}}async increment(e,t,a){const{type:n,incrementBy:i,name:o}=this.options;let s;const c=t||i;if(c%i!==0)throw new r.InternalError("Value to increment does not consider the incrementBy setting: "+i);switch(n){case"Number":s=this.parse(e)+c;break;case"BigInt":s=this.parse(e)+BigInt(c);break;default:throw new r.InternalError("Should never happen")}let l;try{l=await this.repo.update(new h({id:o,current:s}),a)}catch(e){if(!(e instanceof r.NotFoundError))throw e;l=await this.repo.create(new h({id:o,current:s}),a)}return l.current}async next(...e){const t=await r.Context.args(r.OperationKeys.UPDATE,h,e,this.adapter),{context:a,args:n}=t,i=await this.current(...n);return this.increment(i,void 0,a)}async range(e,...t){const a=await r.Context.args(r.OperationKeys.UPDATE,h,t,this.adapter),{context:n,args:i}=a,o=await this.current(...i),s=this.parse(this.options.incrementBy),c=await this.increment(o,this.parse(e)*s,n),l=[];for(let t=1;e>=t;t++)l.push(o+s*this.parse(t));if(l[l.length-1]!==c&&"String"!==this.options.type)throw new r.InternalError("Miscalculation of range");return l}}var y,m;(e=>{e.PRIVATE="private",e.SHARED="shared",e.FABRIC="fabric.",e.OWNEDBY="owned-by"})(y||(y={})),(e=>{e.X509="X.509"})(m||(m={}));const f="hlf-fabric";class w extends a.JSONSerializer{constructor(){super()}deserialize(e,t){return JSON.parse(e)}serialize(e){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(e)))}preSerialize(e){return Object.assign({},e)}}async function _(e,t,n,o){const s=o[n];if(!s)return;if("object"!=typeof s){const t=i.repositoryFromTypeMetadata(o,n,this.adapter.alias),a=await t.read(s,e);return await i.cacheModelForPopulate(e,o,n,s,a),void(o[n]=s)}t.class="string"==typeof t.class?t.class:t.class().name;const c=a.Model.get(t.class);if(!c)throw new r.InternalError("Could not find model "+t.class);const l=i.Repository.forModel(c,this.adapter.alias),d=await l.create(s,e),u=a.Model.pk(d);await i.cacheModelForPopulate(e,o,n,d[u],d),o[n]=d[u]}async function b(e,t,r,n){const o=n[r];if(!o)return;if(t.cascade.update!==i.Cascade.CASCADE)return;if("object"!=typeof o){const t=i.repositoryFromTypeMetadata(n,r,this.adapter.alias),a=await t.read(o,e);return await i.cacheModelForPopulate(e,n,r,o,a),void(n[r]=o)}const s=await i.createOrUpdate(n[r],e,this.adapter.alias),c=a.Model.pk(s);await i.cacheModelForPopulate(e,n,r,s[c],s),n[r]=s[c]}async function C(e,t,r,n){const o=n[r];if(!o)return;if(t.cascade.update!==i.Cascade.CASCADE)return;const s=i.repositoryFromTypeMetadata(n,r,this.adapter.alias);let c;c=o instanceof a.Model?await s.delete(n[r][a.Model.pk(s.class)],e):await s.delete(n[r],e),await i.cacheModelForPopulate(e,n,r,c[a.Model.pk(s.class)],c)}async function x(e,t,n,o){const s=o[n];if(!s||!s.length)return;const c=typeof s[0];if(!s.every(e=>typeof e===c))throw new r.InternalError(`Invalid operation. All elements of property ${n} must match the same type.`);const l=new Set([...s]);if("object"!==c){const t=i.repositoryFromTypeMetadata(o,n,this.adapter.alias);for(const a of l){const r=await t.read(a,e);await i.cacheModelForPopulate(e,o,n,a,r)}return void(o[n]=[...l])}const d=a.Model.pk(s[0]),u=new Set;for(const t of s){const a=await i.createOrUpdate(t,e,this.adapter.alias);await i.cacheModelForPopulate(e,o,n,a[d],a),u.add(a[d])}o[n]=[...u]}async function A(e,t,n,o){if(t.cascade.delete!==i.Cascade.CASCADE)return;const s=o[n];if(!s||!s.length)return;const c=typeof s[0];if(!s.every(e=>typeof e===c))throw new r.InternalError(`Invalid operation. All elements of property ${n} must match the same type.`);const l="object"===c,d=l?i.Repository.forModel(s[0],this.adapter.alias):i.repositoryFromTypeMetadata(o,n,this.adapter.alias),u=new Set([...l?s.map(e=>e[a.Model.pk(this.class)]):s]);for(const t of u.values()){const a=await d.delete(t,e);await i.cacheModelForPopulate(e,o,n,t,a)}o[n]=[...u]}async function v(e,t,a,n){if(!t.populate)return;const o=n[a],s=Array.isArray(o);if(void 0===o||s&&0===o.length)return;const c=await(async(t,a,n,o,s)=>{let c,l;const d=[];for(const u of o){c=i.getPopulateKey(a.constructor.name,n,u);try{l=await t.get(c)}catch(t){const o=i.repositoryFromTypeMetadata(a,n,s);if(!o)throw new r.InternalError("Could not find repo");l=await o.read(u,e)}d.push(l)}return d})(e,n,a,s?o:[o],this.adapter.alias);n[a]=s?c:c[0]}async function S(e,t,a,r){try{const t=e.get("identity");r[a]=t.getID()}catch(e){throw new i.UnsupportedError("No User found in context. Please provide a user in the context")}}async function E(e,t,n,i){if(!t.type||i[n])return;let o;t.name||(t.name=a.Model.sequenceName(i,"pk"));try{o=await this.adapter.Sequence(t)}catch(e){throw new r.InternalError(`Failed to instantiate Sequence ${t.name}: ${e}`)}const s=await o.next(e);Object.defineProperty(i,n,{enumerable:!0,writable:!1,configurable:!0,value:s})}class O extends t.CouchDBAdapter{getClient(){throw new i.UnsupportedError("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new w}repository(){return u}constructor(e,t){super(e,f,t),this.Context=l}for(e,...t){return super.for(e,...t)}async create(e,t,r,...n){const{ctx:i,log:o}=this.logCtx(n,this.create);o.info("in ADAPTER create with args "+n);const{stub:s}=i,c=a.Model.tableName(e);try{o.info(`adding entry to ${c} table with pk ${t}`);const e=s.createCompositeKey(c,[t+""]);r=await this.putState(e,r,i)}catch(e){throw this.parseError(e)}return r}async read(e,t,...r){const{ctx:n,log:i}=this.logCtx(r,this.read);i.info("in ADAPTER read with args "+r);const{stub:o}=n,s=a.Model.tableName(e);let c;try{const e=o.createCompositeKey(s,[t+""]);c=await this.readState(e,n)}catch(e){throw this.parseError(e)}return c}async update(e,t,r,...n){const{ctx:i,log:o}=this.logCtx(n,this.update),{stub:s}=i,c=a.Model.tableName(e);try{o.verbose(`updating entry to ${c} table with pk ${t}`);const e=s.createCompositeKey(c,[t+""]);r=await this.putState(e,r,i)}catch(e){throw this.parseError(e)}return r}async delete(e,t,...r){const{ctx:n,log:i,ctxArgs:o}=this.logCtx(r,this.delete),{stub:s}=n,c=a.Model.tableName(e);let l;try{const a=s.createCompositeKey(c,[t+""]);l=await this.read(e,t,...o),i.verbose(`deleting entry with pk ${t} from ${c} table`),await this.deleteState(a,n)}catch(e){throw this.parseError(e)}return l}async deleteState(e,t){const{stub:a,logger:r}=t,n=r.for(this.deleteState);await a.deleteState(e),n.trace("Deleted state for id "+e)}forPrivate(e){const t=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map(e=>e.name);return new Proxy(this,{get:(a,n,i)=>t.includes(n)?new Proxy(a[n],{async apply(t,a,i){switch(n){case"putState":{const[t,a,r]=i;return await t.putPrivateData(e,a.toString(),r),r}case"deleteState":{const[t,a]=i;return t.deletePrivateData(e,a)}case"readState":{const[t,a]=i;return t.getPrivateData(e,a)}case"queryResult":{const[t,a]=i;return t.getPrivateDataQueryResult(e,a)}case"queryResultPaginated":{const[t,a,r,n]=i,o=await t.getPrivateDataQueryResult(e,a),s=[];let c=0,l=!n,d=null;for(;;){const e=await o.next();if(e.value&&e.value.value.toString()){const t=e.value.key,a=e.value.value.toString("utf8");if(!l){t===n?.toString()&&(l=!0);continue}if(s.push({Key:t,Record:JSON.parse(a)}),d=t,c++,c>=r)return await o.close(),{iterator:s,metadata:{fetchedRecordsCount:s.length,bookmark:d}}}if(e.done)return await o.close(),{iterator:s,metadata:{fetchedRecordsCount:s.length,bookmark:""}}}}default:throw new r.InternalError("Unsupported method override "+n)}}}):Reflect.get(a,n,i)})}async putState(e,t,a){let n;const{stub:i,logger:o}=a,s=o.for(this.putState);try{n=Buffer.from(O.serializer.serialize(t))}catch(t){throw new r.SerializationError(`Failed to serialize record with id ${e}: ${t}`)}return await i.putState(e.toString(),n),s.silly("state stored under id "+e),t}async readState(e,t){let a;const{stub:n,logger:i}=t,o=i.for(this.readState),s=(await n.getState(e)).toString();if(!s)throw new r.NotFoundError(`Record with id ${e} not found`);o.silly("Read state for id "+e);try{a=O.serializer.deserialize(s.toString())}catch(e){throw new r.SerializationError("Failed to parse record: "+e)}return a}async queryResult(e,t,...a){return await e.getQueryResult(JSON.stringify(t))}async queryResultPaginated(e,t,a=250,r,...n){return await e.getQueryResultWithPagination(JSON.stringify(t),a,r?.toString())}mergeModels(e){const t=e=>Object.entries(e).reduce((e,[t,a])=>(void 0!==a&&(e[t]=a),e),{});let a=e.pop();for(const r of e)a=Object.assign({},t(a),t(r));return a}decode(e){return O.textDecoder.decode(e)}async flags(e,t,a,r,...n){const i=e=>{const t=e??this.log.for(this.flags);return"function"!=typeof t.clear&&(t.clear=()=>t),"function"!=typeof t.for&&(t.for=()=>t),t},o=r instanceof l?r.accumulate({logger:i(r.logger)}):(new l).accumulate({stub:r.stub,identity:r.clientIdentity,logger:i()}),s=Object.assign({},a,{logger:o.logger});return Object.assign(await super.flags(e,t,s,...n),{stub:r.stub,identity:r.clientIdentity??o.identity,logger:o.logger,correlationId:r.stub.getTxID()})}index(e){return Promise.resolve(void 0)}async resultIterator(e,t,a=!1){const r=[];let n=await t.next();for(;!n.done;){if(n.value&&n.value.value.toString()){let t={};if(e.debug(n.value.value.toString("utf8")),a){t.TxId=n.value.txId,t.Timestamp=n.value.timestamp;try{t.Value=JSON.parse(n.value.value.toString("utf8"))}catch(a){e.error(a),t.Value=n.value.value.toString("utf8")}}else try{t=JSON.parse(n.value.value.toString("utf8"))}catch(a){e.error(a),t=n.value.value.toString("utf8")}r.push(t)}n=await t.next()}return e.debug(`Closing iterator after ${r.length} results`),t.close(),r}async raw(e,...t){const{ctx:a,log:r,ctxArgs:n}=this.logCtx(t,this.raw);"boolean"==typeof n[0]&&n.shift();const{stub:i}=a,{skip:o,limit:s}=e;let c;s||o?(delete e.limit,delete e.skip,r.debug(`Retrieving paginated iterator: limit: ${s}/ skip: ${o}`),c=(await this.queryResultPaginated(i,e,s||250,o?.toString())).iterator):(r.debug("Retrieving iterator"),c=await this.queryResult(i,e)),r.debug("Iterator acquired");const l=await this.resultIterator(r,c);return r.debug("returning {0} results",""+(Array.isArray(l)?l.length:1)),l}Statement(){return new p(this)}async Sequence(e){return new g(e,this)}async createAll(e,t,n,...i){if(t.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const{log:o,ctxArgs:s}=this.logCtx(i,this.createAll),c=a.Model.tableName(e);return o.debug(`Creating ${t.length} entries ${c} table`),Promise.all(t.map((t,a)=>this.create(e,t,n[a],...s)))}async updateAll(e,t,n,...i){if(t.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const{log:o,ctxArgs:s}=this.logCtx(i,this.updateAll),c=a.Model.tableName(e);return o.debug(`Updating ${t.length} entries ${c} table`),Promise.all(t.map((t,a)=>this.update(e,t,n[a],...s)))}prepare(e,...t){const{log:n}=this.logCtx(t,this.prepare),i=a.Model.tableName(e.constructor),o=a.Model.pk(e.constructor),s=a.Model.segregate(e),c=Object.entries(s.model).reduce((t,[n,i])=>{if(void 0===i)return t;const o=a.Model.columnName(e,n);if(this.isReserved(o))throw new r.InternalError(`Property name ${o} is reserved`);return t[o]=i,t},{});return n.silly(`Preparing record for ${i} table with pk ${e[o]}`),{record:c,id:e[o],transient:s.transient}}revert(e,t,n,i,...o){const{log:s}=this.logCtx(o,this.revert),c={};c[a.Model.pk(t)]=n;const l="string"==typeof t?a.Model.build(c,t):new t(c);s.silly(`Rebuilding model ${l.constructor.name} id ${n}`);const d=Object.keys(l).reduce((t,r)=>(t[r]=e[a.Model.columnName(t,r)],t),l);return i&&(s.debug("re-adding transient properties: "+Object.keys(i).join(", ")),Object.entries(i).forEach(([e,t])=>{if(e in d&&void 0!==d[e])throw new r.InternalError(`Transient property ${e} already exists on model ${l.constructor.name}. should be impossible`);d[e]=t})),d}createPrefix(e,r,n,...i){const{ctxArgs:o}=this.logCtx(i,this.createPrefix),s={};return s[t.CouchDBKeys.TABLE]=a.Model.tableName(e),Object.assign(s,n),[e,r,s,...o]}updatePrefix(e,r,n,...i){const{ctxArgs:o}=this.logCtx(i,this.updatePrefix),s={};return s[t.CouchDBKeys.TABLE]=a.Model.tableName(e),Object.assign(s,n),[e,r,s,...o]}createAllPrefix(e,a,n,...i){if(a.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const o=i.pop(),s=a.map((a,r)=>{const i={};return i[t.CouchDBKeys.TABLE]=e,Object.assign(i,n[r]),i});return[e,a,s,o]}updateAllPrefix(e,a,n,...i){if(a.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const o=i.pop(),s=a.map((a,r)=>{const i={};return i[t.CouchDBKeys.TABLE]=e,Object.assign(i,n[r]),i});return[e,a,s,o]}parseError(e,t){return O.parseError(t||e)}static parseError(e,t){return super.parseError(e,t)}static decoration(){super.decoration(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.CREATED_BY).define(r.onCreate(S),s.propMetadata(i.PersistenceKeys.CREATED_BY,{})).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.UPDATED_BY).define(r.onCreateUpdate(S),s.propMetadata(i.PersistenceKeys.UPDATED_BY,{})).apply(),s.Decoration.flavouredAs(f).for(r.DBKeys.ID).define({decorator:(e,t)=>(n,i)=>s.apply(a.required(),r.readonly(),s.propMetadata(s.Metadata.key(r.DBKeys.ID,i),e),r.onCreate(E,e,t))(n,i)}).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.COLUMN).extend(n.Property()).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.TABLE).extend(e=>n.Object()(e)).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.ONE_TO_ONE).define({decorator:(e,t,n,o,c)=>{const l={class:e,cascade:t,populate:n};return o&&(l.joinTable=o),c&&(l.name=c),s.apply(s.prop(),i.relation(i.PersistenceKeys.ONE_TO_ONE,l),a.type([e,String,Number,BigInt]),r.onCreate(_,l),r.onUpdate(b,l),r.onDelete(C,l),r.afterAny(v,l),s.propMetadata(i.PersistenceKeys.ONE_TO_ONE,l))}}).apply(),s.Decoration.for(i.PersistenceKeys.ONE_TO_MANY).define({decorator:(e,t,n,o,c)=>{const l={class:e,cascade:t,populate:n};return o&&(l.joinTable=o),c&&(l.name=c),s.apply(s.prop(),i.relation(i.PersistenceKeys.ONE_TO_MANY,l),a.list([e,String,Number]),r.onCreate(x,l),r.onUpdate(i.oneToManyOnUpdate,l),r.onDelete(A,l),r.afterAny(v,l),s.propMetadata(i.PersistenceKeys.ONE_TO_MANY,l))}}).apply()}}O.decoration(),i.Adapter.setCurrent(f);class T extends a.JSONSerializer{constructor(){super()}deserialize(e){return super.deserialize(e)}serialize(e){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(e)))}}class k extends n.Contract{static{this.adapter=new O}static{this.serializer=new T}constructor(e,t){super(e),this.clazz=t,this.initialized=!1,this.repo=i.Repository.forModel(t)}async create(e,t,...r){const{log:n,ctxArgs:i}=await this.logCtx([...r,e],this.create);n.info("CONTRACT CREATE, "+i),"string"==typeof t&&(t=this.deserialize(t)),n.info("Creating model: "+JSON.stringify(t));const o=this.getTransientData(e);return n.info("Merging transient data..."),t=a.Model.merge(t,o,this.clazz),this.repo.create(t,...i)}async read(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.read);return r.info(`reading entry with pk ${t} `),this.repo.read(t,...n)}getTransientData(e){const t=e.stub.getTransient();let a={};return t.has(this.repo.tableName)&&(a=JSON.parse(t.get(this.repo.tableName)?.toString("utf8"))),a}async update(e,t,...r){const{log:n,ctxArgs:i}=await this.logCtx([...r,e],this.update);"string"==typeof t&&(t=this.deserialize(t)),n.info("Updating model: "+JSON.stringify(t));const o=this.getTransientData(e);return n.info("Merging transient data..."),t=a.Model.merge(t,o,this.clazz),this.repo.update(t,...i)}async delete(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.delete);return r.info(`deleting entry with pk ${t} `),this.repo.delete(t+"",...n)}async deleteAll(e,t,...a){const{ctxArgs:r}=await this.logCtx([...a,e],this.readAll);return"string"==typeof t&&(t=JSON.parse(t)),this.repo.deleteAll(t,...r)}async readAll(e,t,...a){const{ctxArgs:r}=await this.logCtx([...a,e],this.readAll);return"string"==typeof t&&(t=JSON.parse(t)),this.repo.readAll(t,...r)}async updateAll(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.updateAll);return"string"==typeof t&&(t=JSON.parse(t).map(e=>this.deserialize(e)).map(e=>new this.clazz(e))),r.info(`updating ${t.length} entries to the table`),this.repo.updateAll(t,...n)}async raw(e,t,a,...r){const{ctxArgs:n}=await this.logCtx([...r,e],this.raw);return"string"==typeof t&&(t=JSON.parse(t)),k.adapter.raw(t,a,...n)}serialize(e){return k.serializer.serialize(e)}deserialize(e){return k.serializer.deserialize(e)}async init(e){const{log:t}=await this.logCtx([e],this.init);t.info("Running contract initialization..."),this.initialized=!0,t.info("Contract initialization completed.")}async healthcheck(e){const{log:t}=await this.logCtx([e],this.healthcheck);return t.info(`Running Healthcheck: ${this.initialized}...`),{healthcheck:this.initialized}}async createAll(e,t,...a){const{log:r}=await this.logCtx([...a,e],this.createAll);return"string"==typeof t&&(t=JSON.parse(t).map(e=>this.deserialize(e)).map(e=>new this.clazz(e))),r.info(`adding ${t.length} entries to the table`),this.repo.createAll(t,e,...a)}async logCtx(e,t){return k.logCtx.bind(this)(e,t)}static async logCtx(e,t){if(1>e.length)throw new r.InternalError("No context provided");const a=e.pop();if(a instanceof l)return{ctx:a,log:a.logger.clear().for(this).for(t),ctxArgs:[...e,a]};if(!(a instanceof n.Context))throw new r.InternalError("No valid context provided");const i={correlationId:a.stub.getTxID()},o=await k.adapter.context((()=>{if("string"==typeof t)return t;switch(t.name){case r.OperationKeys.CREATE:case r.OperationKeys.READ:case r.OperationKeys.UPDATE:case r.OperationKeys.DELETE:case r.BulkCrudOperationKeys.CREATE_ALL:case r.BulkCrudOperationKeys.READ_ALL:case r.BulkCrudOperationKeys.UPDATE_ALL:case r.BulkCrudOperationKeys.DELETE_ALL:}return t.name})(),i,this.clazz,a),s=this?o.logger.for(this).for(t):o.logger.clear().for(this).for(t);return{ctx:o,log:s,ctxArgs:[...e,o]}}}class N extends k{constructor(e,t){super(e,t)}async create(e,t){const{log:a}=await this.logCtx([e],this.create);a.info("Creating model: "+t);const r=this.deserialize(t);return a.info("Model deserialized: "+JSON.stringify(r)),this.serialize(await super.create(e,r))}async read(e,t){const{log:a}=await this.logCtx([e],this.read);return a.info("Reading id: "+t),this.serialize(await super.read(e,t))}async update(e,t){const{log:a}=await this.logCtx([e],this.update);return a.info("Updating model: "+t),this.serialize(await super.update(e,t))}async delete(e,t){const{log:a}=await this.logCtx([e],this.delete);return a.info("Deleting id: "+t),this.serialize(await super.delete(e,t))}async deleteAll(e,t){const a=JSON.parse(t),{log:r}=await this.logCtx([e],this.deleteAll);return r.info(`deleting ${a.length} entries from the table`),JSON.stringify((await super.deleteAll(e,a)).map(e=>this.serialize(e)))}async readAll(e,t){const a=JSON.parse(t),{log:r}=await this.logCtx([e],this.readAll);return r.info(`reading ${a.length} entries from the table`),JSON.stringify((await super.readAll(e,a)).map(e=>this.serialize(e)))}async updateAll(e,t){const{log:a}=await this.logCtx([e],this.updateAll),r=JSON.parse(t).map(e=>this.deserialize(e)).map(e=>new this.clazz(e));return a.info(`Updating ${r.length} entries to the table`),JSON.stringify((await super.updateAll(e,r)).map(e=>this.serialize(e)))}async raw(e,t,a){const{ctx:r}=await this.logCtx([e],this.raw),n=JSON.parse(t);return super.raw(r,n,a)}async init(e){await super.init(e)}async healthcheck(e){return JSON.stringify(await super.healthcheck(e))}async createAll(e,t){const{log:a}=await this.logCtx([e],this.createAll),r=JSON.parse(t).map(e=>this.deserialize(e)).map(e=>new this.clazz(e));return a.info(`Adding ${r.length} entries to the table`),JSON.stringify((await super.createAll(e,r)).map(e=>this.serialize(e)))}}c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"create",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"read",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"update",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"delete",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"deleteAll",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"readAll",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"updateAll",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Boolean]),c.__metadata("design:returntype",Promise)],N.prototype,"raw",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],N.prototype,"init",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],N.prototype,"healthcheck",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"createAll",null);class D extends r.InternalError{constructor(e){super(e,D.name)}}class I extends r.InternalError{constructor(e){super(e,I.name)}}class R extends r.InternalError{constructor(e){super(e,R.name)}}class P extends r.BaseError{constructor(e){super(P.name,e,409)}}function z(e,t){const a=e+t;if(e!==a-t||t!==a-e)throw new D(`Addition overflow: ${e} + ${t}`);return a}function F(e,t){const a=e-t;if(e!==a+t||t!==e-a)throw new D(`Subtraction overflow: ${e} - ${t}`);return a}let M=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk({type:"String"}),c.__metadata("design:type",String)],M.prototype,"name",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],M.prototype,"owner",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],M.prototype,"symbol",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],M.prototype,"decimals",void 0),M=c.__decorate([i.table("erc20_tokens"),a.model(),c.__metadata("design:paramtypes",[Object])],M);let B=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk({type:"String"}),c.__metadata("design:type",String)],B.prototype,"id",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],B.prototype,"token",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],B.prototype,"balance",void 0),c.__decorate([i.column(),c.__metadata("design:type",String)],B.prototype,"captive",void 0),B=c.__decorate([i.table("erc20_wallets"),a.model(),c.__metadata("design:paramtypes",[Object])],B);let $=class extends i.BaseModel{constructor(e){super(e)}};function L(){return function(e,t,a){const n=a.value;return a.value=async function(...e){const a=e[0],o=a.clientIdentity.getID(),s=await this.tokenRepository.select(),c=await s.execute(a);if(0==c.length)throw new r.NotFoundError("No tokens avaialble");if(c.length>1)throw new r.NotFoundError("To many token available : "+c.length);if(c[0].owner!=o)throw new i.AuthorizationError(`User not authorized to run ${t} on the token`);return await n.apply(this,e)},a}}var K;c.__decorate([i.pk({type:"String"}),i.column(),a.required(),c.__metadata("design:type",String)],$.prototype,"owner",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],$.prototype,"spender",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],$.prototype,"value",void 0),$=c.__decorate([i.table("erc20_allowances"),a.model(),c.__metadata("design:paramtypes",[Object])],$),(e=>{e.TRANSFER="Transfer",e.APPROVAL="Approval"})(K||(K={}));class q extends k{constructor(e){super(e,B),q.adapter=q.adapter||new O,this.walletRepository=u.forModel(B,q.adapter.alias),this.tokenRepository=u.forModel(M,q.adapter.alias),this.allowanceRepository=u.forModel($,q.adapter.alias)}async TokenName(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].name}async Symbol(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].symbol}async Decimals(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].decimals}async TotalSupply(e){await this.CheckInitialized(e);const t=await this.walletRepository.select(),a=await t.execute(e);if(0==a.length)throw new r.NotFoundError(`The token ${this.getName()} does not exist`);let n=0;return a.forEach(e=>{n+=e.balance}),n}async BalanceOf(e,t){return await this.CheckInitialized(e),(await this.walletRepository.read(t,e)).balance}async Transfer(e,t,a){await this.CheckInitialized(e);const{ctx:n}=await this.logCtx([e],this.Transfer),i=n.identity.getID();if(!await this._transfer(i,t,a,n))throw new r.InternalError("Failed to transfer");return!0}async TransferFrom(e,t,a,n){await this.CheckInitialized(e);const{ctx:i}=await this.logCtx([e],this.BurnFrom),o=i.identity.getID(),s=await this._getAllowance(t,o,i);if(!s||0>s.value)throw new R(`spender ${o} has no allowance from ${t}`);const c=s.value;if(n>c)throw new I("The spender does not have enough allowance to spend.");const l=F(c,n),d=Object.assign({},s,{value:l});if(await this.allowanceRepository.update(d,i),!await this._transfer(t,a,n,i))throw new r.InternalError("Failed to transfer");return!0}async _transfer(e,t,a,n){const o=n.logger;if(e===t)throw new i.AuthorizationError("cannot transfer to and from same client account");if(0>a)throw new I("transfer amount cannot be negative");const s=await this.walletRepository.read(e,n),c=s.balance;if(a>c)throw new I(`client account ${e} has insufficient funds.`);let l,d=!1;try{l=await this.walletRepository.read(t,n)}catch(e){if(!(e instanceof r.BaseError))throw new r.InternalError(e);if(404!==e.code)throw new r.InternalError(e.message);l=new B({id:t,balance:0,token:await this.TokenName(n)}),d=!0}const u=l.balance,p=F(c,a),h=z(u,a),g=Object.assign({},s,{balance:p});await this.walletRepository.update(g,n);const y=Object.assign({},l,{balance:h});d?await this.walletRepository.create(y,n):await this.walletRepository.update(y,n);const m={from:e,to:t,value:a};return this.repo.refresh(M,K.TRANSFER,"",m,n).catch(e=>o.error("Failed to notify transfer: "+e)),!0}async Approve(e,t,a){await this.CheckInitialized(e);const{ctx:r,ctxArgs:n}=await this.logCtx([e],this.Approve),i=r.identity.getID();let o=await this._getAllowance(i,t,r);if((await this.walletRepository.read(i,...n)).balance<a)throw new I(`client account ${i} has insufficient funds.`);o?(o.value=a,await this.allowanceRepository.update(o,...n)):(o=new $({owner:i,spender:t,value:a}),await this.allowanceRepository.create(o,...n));const s={owner:i,spender:t,value:a};return this.repo.refresh(M,K.APPROVAL,"",s,r),!0}async Allowance(e,t,a){await this.CheckInitialized(e);const{ctx:r}=await this.logCtx([e],this.Allowance),n=await this._getAllowance(t,a,r);if(!n)throw new R(`spender ${a} has no allowance from ${t}`);return n.value}async _getAllowance(e,t,a){const r=i.Condition.and(i.Condition.attribute("owner").eq(e),i.Condition.attribute("spender").eq(t)),n=await this.allowanceRepository.select().where(r).execute(a);return n?.[0]}async Initialize(e,t){const{ctx:a}=await this.logCtx([e],this.Initialize);if((await this.tokenRepository.select().execute(a)).length>0)throw new i.AuthorizationError("contract options are already set, client is not authorized to change them");return t.owner=a.identity.getID(),await this.tokenRepository.create(t,a),!0}async CheckInitialized(e){const{ctx:t}=await this.logCtx([e],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(t)).length)throw new P("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(e,t){await this.CheckInitialized(e);const{ctx:a}=await this.logCtx([e],this.Mint),n=a.identity.getID();if(0>=t)throw new r.ValidationError("mint amount must be a positive integer");let i;try{i=await this.walletRepository.read(n,a);const e=z(i.balance,t),r=Object.assign({},i,{balance:e});await this.walletRepository.update(r,a)}catch(i){if(!(i instanceof r.BaseError))throw new r.InternalError(i);if(404!==i.code)throw new r.InternalError(i.message);{const r=new B({id:n,balance:t,token:await this.TokenName(e)});await this.walletRepository.create(r,a)}}const o={from:"0x0",to:n,value:t};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",o,a)}async Burn(e,t){await this.CheckInitialized(e);const{log:a,ctx:r}=await this.logCtx([e],this.Burn),n=r.identity.getID(),i=await this.walletRepository.read(n,r),o=i.balance;if(t>o)throw new I("Minter has insufficient funds.");const s=F(o,t),c=Object.assign({},i,{balance:s});await this.walletRepository.update(c,r),a.info(t+" tokens were burned");const l={from:n,to:"0x0",value:t};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",l,r)}async BurnFrom(e,t,a){await this.CheckInitialized(e);const{log:r,ctx:n}=await this.logCtx([e],this.BurnFrom),i=await this.walletRepository.read(t,n),o=i.balance;if(a>o)throw new I(t+" has insufficient funds.");const s=F(o,a),c=Object.assign({},i,{balance:s});await this.walletRepository.update(c,n),r.info(`${a} tokens were burned from ${t}`);const l={from:t,to:"0x0",value:a};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",l,n)}async ClientAccountBalance(e){await this.CheckInitialized(e);const t=e.clientIdentity.getID(),a=await this.walletRepository.read(t,e);if(!a)throw new I(`The account ${t} does not exist`);return a.balance}async ClientAccountID(e){await this.CheckInitialized(e);const{ctx:t}=await this.logCtx([e],this.ClientAccountID);return t.identity.getID()}}c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"TokenName",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"Symbol",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"Decimals",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"TotalSupply",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],q.prototype,"BalanceOf",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Transfer",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"TransferFrom",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Approve",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,String]),c.__metadata("design:returntype",Promise)],q.prototype,"Allowance",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,M]),c.__metadata("design:returntype",Promise)],q.prototype,"Initialize",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"CheckInitialized",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Mint",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Burn",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"BurnFrom",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"ClientAccountBalance",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"ClientAccountID",null);const j=[q];class J extends o.MiniLogger{constructor(e,t,a){super(e,t),this.logger=a?a.logging.getLogger(e):new o.MiniLogger(e,t)}log(e,t,a){if(o.NumericLogLevels[this.config("level")]<o.NumericLogLevels[e])return;let n;switch(e){case o.LogLevel.info:n=this.logger.info;break;case o.LogLevel.verbose:n=this.logger.verbose;break;case o.LogLevel.debug:n=this.logger.debug;break;case o.LogLevel.error:n=this.logger.error;break;case o.LogLevel.silly:n=this.logger.silly;break;default:throw new r.InternalError("Invalid log level")}n.call(this.logger,this.createLog(e,t,a))}}o.Logging.setFactory((e,t,a)=>new J(e||J.name,t||{},a));const U="##VERSION##",G="##PACKAGE##";s.Metadata.registerLibrary(G,U),e.ContractLogger=J,e.FabricContractAdapter=O,e.FabricContractContext=l,e.FabricContractRepository=u,e.FabricContractRepositoryObservableHandler=d,e.FabricContractSequence=g,e.FabricCrudContract=k,e.FabricStatement=p,e.PACKAGE_NAME=G,e.SerializedCrudContract=N,e.VERSION=U,e.contracts=j,e.createdByOnFabricCreateUpdate=S,e.pkFabricOnCreate=E},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/for-couchdb"),require("@decaf-ts/decorator-validation"),require("@decaf-ts/db-decorators"),require("fabric-contract-api"),require("@decaf-ts/core"),require("@decaf-ts/logging"),require("@decaf-ts/decoration"),require("tslib")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/for-couchdb","@decaf-ts/decorator-validation","@decaf-ts/db-decorators","fabric-contract-api","@decaf-ts/core","@decaf-ts/logging","@decaf-ts/decoration","tslib"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-fabric"]={},e.decafTsForCouchdb,e.decafTsDecoratorValidation,e.decafTsDbDecorators,e.fabricContractApi,e.decafTsCore,e.decafTsLogging,e.decafTsDecoration,e.tslib);
|
|
1
|
+
var e,t;e=this,t=function(e,t,a,r,n,i,o,s,c){"use strict";class l extends r.Context{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 d extends i.ObserverHandler{constructor(e=[r.OperationKeys.CREATE,r.OperationKeys.UPDATE,r.OperationKeys.DELETE,r.BulkCrudOperationKeys.CREATE_ALL,r.BulkCrudOperationKeys.UPDATE_ALL,r.BulkCrudOperationKeys.DELETE_ALL]){super(),this.supportedEvents=e}async updateObservers(e,t,a,...r){const{log:n,ctx:o}=i.Adapter.logCtx(r,this.updateObservers),{stub:s}=o,[c,l]=r,d="string"==typeof e?e:e.name;if(-1!==this.supportedEvents.indexOf(t)){n.debug(`Emitting ${t} event`);const e=((e,t,a)=>{const r=[e,t];return a&&r.push(a),r.join("_")})(d,t,c);s.setEvent(e,Buffer.from(JSON.stringify({id:a})))}else s.setEvent(t,Buffer.from(JSON.stringify(l)))}}class u extends i.Repository{constructor(e,t,a){super(e,t),this.trackedEvents=a}logFor(e){if(e.logger)return e.logger;const t=o.Logging.for(this,{correlationId:e.stub.getTxID()},e);return t.info("REPOSITORY LOG_CTX"),t}ObserverHandler(){return new d}async updateObservers(e,t,a,...r){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(t))return await super.updateObservers(e,t,a,...r)}}class p extends t.CouchDBStatement{constructor(e){super(e)}async raw(e,...t){const{ctx:n}=this.logCtx(t,this.raw),i=await this.adapter.raw(e,!0,n),o=a.Model.pk(this.fromSelector),c=s.Metadata.get(this.fromSelector,s.Metadata.key(r.DBKeys.ID,o))?.type;return this.selectSelector?i:i.map((e=>this.processRecord(e,o,c,n)))}build(){const e={};e[t.CouchDBKeys.TABLE]={},e[t.CouchDBKeys.TABLE]=a.Model.tableName(this.fromSelector);const r={selector:e};if(this.selectSelector&&(r.fields=this.selectSelector),this.whereCondition){const e=this.parseCondition(i.Condition.and(this.whereCondition,i.Condition.attribute(t.CouchDBKeys.TABLE).eq(r.selector[t.CouchDBKeys.TABLE]))).selector,a=Object.keys(e);if(1===a.length&&-1!==Object.values(t.CouchDBGroupOperator).indexOf(a[0]))switch(a[0]){case t.CouchDBGroupOperator.AND:e[t.CouchDBGroupOperator.AND]=[...Object.values(e[t.CouchDBGroupOperator.AND]).reduce(((e,a)=>{const r=Object.keys(a);if(1!==r.length)throw Error("Too many keys in query selector. should be one");const n=r[0];return n===t.CouchDBGroupOperator.AND?e.push(...a[n]):e.push(a),e}),[])],r.selector=e;break;case t.CouchDBGroupOperator.OR:{const a={};a[t.CouchDBGroupOperator.AND]=[e,...Object.entries(r.selector).map((([e,t])=>{const a={};return a[e]=t,a}))],r.selector=a;break}default:throw Error("This should be impossible")}else Object.entries(e).forEach((([e,t])=>{r.selector[e],r.selector[e]=t}))}if(this.orderBySelector){r.sort=r.sort||[],r.selector=r.selector||{};const[e,a]=this.orderBySelector,n={};n[e]=a,r.sort.push(n),r.selector[e]||(r.selector[e]={},r.selector[e][t.CouchDBOperator.BIGGER]=null)}return this.limitSelector&&(r.limit=this.limitSelector),this.offsetSelector&&(r.skip=this.offsetSelector),r}}let h=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk(),c.__metadata("design:type",String)],h.prototype,"id",void 0),c.__decorate([a.required(),i.index(),c.__metadata("design:type",Object)],h.prototype,"current",void 0),h=c.__decorate([i.table(t.CouchDBKeys.SEQUENCE),a.model(),c.__metadata("design:paramtypes",[Object])],h);class g extends i.Sequence{constructor(e,t){super(e,t),this.repo=i.Repository.forModel(h,t.alias)}async current(...e){const t=(await r.Context.args(r.OperationKeys.READ,h,e,this.adapter)).context,{name:a,startWith:n}=this.options;try{const e=await this.repo.read(a,t);return this.parse(e.current)}catch(e){if(e instanceof r.NotFoundError){if(void 0===n)throw new r.InternalError("Starting value is not defined for a non existing sequence");try{return this.parse(n)}catch(e){throw new r.InternalError(`Failed to parse initial value for sequence ${n}: ${e}`)}}throw new r.InternalError(`Failed to retrieve current value for sequence ${a}: ${e}`)}}async increment(e,t,a){const{type:n,incrementBy:i,name:o}=this.options;let s;const c=t||i;if(c%i!=0)throw new r.InternalError("Value to increment does not consider the incrementBy setting: "+i);switch(n){case"Number":s=this.parse(e)+c;break;case"BigInt":s=this.parse(e)+BigInt(c);break;default:throw new r.InternalError("Should never happen")}let l;try{l=await this.repo.update(new h({id:o,current:s}),a)}catch(e){if(!(e instanceof r.NotFoundError))throw e;l=await this.repo.create(new h({id:o,current:s}),a)}return l.current}async next(...e){const t=await r.Context.args(r.OperationKeys.UPDATE,h,e,this.adapter),{context:a,args:n}=t,i=await this.current(...n);return this.increment(i,void 0,a)}async range(e,...t){const a=await r.Context.args(r.OperationKeys.UPDATE,h,t,this.adapter),{context:n,args:i}=a,o=await this.current(...i),s=this.parse(this.options.incrementBy),c=await this.increment(o,this.parse(e)*s,n),l=[];for(let t=1;e>=t;t++)l.push(o+s*this.parse(t));if(l[l.length-1]!==c&&"String"!==this.options.type)throw new r.InternalError("Miscalculation of range");return l}}var y,m;(e=>{e.PRIVATE="private",e.SHARED="shared",e.FABRIC="fabric.",e.OWNEDBY="owned-by"})(y||(y={})),(e=>{e.X509="X.509"})(m||(m={}));const f="hlf-fabric";class w extends a.JSONSerializer{constructor(){super()}deserialize(e,t){return JSON.parse(e)}serialize(e){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(e)))}preSerialize(e){return Object.assign({},e)}}async function _(e,t,n,o){const s=o[n];if(!s)return;if("object"!=typeof s){const t=i.repositoryFromTypeMetadata(o,n,this.adapter.alias),a=await t.read(s,e);return await i.cacheModelForPopulate(e,o,n,s,a),void(o[n]=s)}t.class="string"==typeof t.class?t.class:t.class().name;const c=a.Model.get(t.class);if(!c)throw new r.InternalError("Could not find model "+t.class);const l=i.Repository.forModel(c,this.adapter.alias),d=await l.create(s,e),u=a.Model.pk(d);await i.cacheModelForPopulate(e,o,n,d[u],d),o[n]=d[u]}async function b(e,t,r,n){const o=n[r];if(!o)return;if(t.cascade.update!==i.Cascade.CASCADE)return;if("object"!=typeof o){const t=i.repositoryFromTypeMetadata(n,r,this.adapter.alias),a=await t.read(o,e);return await i.cacheModelForPopulate(e,n,r,o,a),void(n[r]=o)}const s=await i.createOrUpdate(n[r],e,this.adapter.alias),c=a.Model.pk(s);await i.cacheModelForPopulate(e,n,r,s[c],s),n[r]=s[c]}async function C(e,t,r,n){const o=n[r];if(!o)return;if(t.cascade.update!==i.Cascade.CASCADE)return;const s=i.repositoryFromTypeMetadata(n,r,this.adapter.alias);let c;c=o instanceof a.Model?await s.delete(n[r][a.Model.pk(s.class)],e):await s.delete(n[r],e),await i.cacheModelForPopulate(e,n,r,c[a.Model.pk(s.class)],c)}async function x(e,t,n,o){const s=o[n];if(!s||!s.length)return;const c=typeof s[0];if(!s.every((e=>typeof e===c)))throw new r.InternalError(`Invalid operation. All elements of property ${n} must match the same type.`);const l=new Set([...s]);if("object"!==c){const t=i.repositoryFromTypeMetadata(o,n,this.adapter.alias);for(const a of l){const r=await t.read(a,e);await i.cacheModelForPopulate(e,o,n,a,r)}return void(o[n]=[...l])}const d=a.Model.pk(s[0]),u=new Set;for(const t of s){const a=await i.createOrUpdate(t,e,this.adapter.alias);await i.cacheModelForPopulate(e,o,n,a[d],a),u.add(a[d])}o[n]=[...u]}async function A(e,t,n,o){if(t.cascade.delete!==i.Cascade.CASCADE)return;const s=o[n];if(!s||!s.length)return;const c=typeof s[0];if(!s.every((e=>typeof e===c)))throw new r.InternalError(`Invalid operation. All elements of property ${n} must match the same type.`);const l="object"===c,d=l?i.Repository.forModel(s[0],this.adapter.alias):i.repositoryFromTypeMetadata(o,n,this.adapter.alias),u=new Set([...l?s.map((e=>e[a.Model.pk(this.class)])):s]);for(const t of u.values()){const a=await d.delete(t,e);await i.cacheModelForPopulate(e,o,n,t,a)}o[n]=[...u]}async function v(e,t,a,n){if(!t.populate)return;const o=n[a],s=Array.isArray(o);if(void 0===o||s&&0===o.length)return;const c=await(async(t,a,n,o,s)=>{let c,l;const d=[];for(const u of o){c=i.getPopulateKey(a.constructor.name,n,u);try{l=await t.get(c)}catch(t){const o=i.repositoryFromTypeMetadata(a,n,s);if(!o)throw new r.InternalError("Could not find repo");l=await o.read(u,e)}d.push(l)}return d})(e,n,a,s?o:[o],this.adapter.alias);n[a]=s?c:c[0]}async function S(e,t,a,r){try{const t=e.get("identity");r[a]=t.getID()}catch(e){throw new i.UnsupportedError("No User found in context. Please provide a user in the context")}}async function E(e,t,n,i){if(!t.type||i[n])return;let o;t.name||(t.name=a.Model.sequenceName(i,"pk"));try{o=await this.adapter.Sequence(t)}catch(e){throw new r.InternalError(`Failed to instantiate Sequence ${t.name}: ${e}`)}const s=await o.next(e);Object.defineProperty(i,n,{enumerable:!0,writable:!1,configurable:!0,value:s})}class O extends t.CouchDBAdapter{getClient(){throw new i.UnsupportedError("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new w}repository(){return u}constructor(e,t){super(e,f,t),this.Context=l}for(e,...t){return super.for(e,...t)}async create(e,t,r,...n){const{ctx:i,log:o}=this.logCtx(n,this.create);o.info("in ADAPTER create with args "+n);const{stub:s}=i,c=a.Model.tableName(e);try{o.info(`adding entry to ${c} table with pk ${t}`);const e=s.createCompositeKey(c,[t+""]);r=await this.putState(e,r,i)}catch(e){throw this.parseError(e)}return r}async read(e,t,...r){const{ctx:n,log:i}=this.logCtx(r,this.read);i.info("in ADAPTER read with args "+r);const{stub:o}=n,s=a.Model.tableName(e);let c;try{const e=o.createCompositeKey(s,[t+""]);c=await this.readState(e,n)}catch(e){throw this.parseError(e)}return c}async update(e,t,r,...n){const{ctx:i,log:o}=this.logCtx(n,this.update),{stub:s}=i,c=a.Model.tableName(e);try{o.verbose(`updating entry to ${c} table with pk ${t}`);const e=s.createCompositeKey(c,[t+""]);r=await this.putState(e,r,i)}catch(e){throw this.parseError(e)}return r}async delete(e,t,...r){const{ctx:n,log:i,ctxArgs:o}=this.logCtx(r,this.delete),{stub:s}=n,c=a.Model.tableName(e);let l;try{const a=s.createCompositeKey(c,[t+""]);l=await this.read(e,t,...o),i.verbose(`deleting entry with pk ${t} from ${c} table`),await this.deleteState(a,n)}catch(e){throw this.parseError(e)}return l}async deleteState(e,t){const{stub:a,logger:r}=t,n=r.for(this.deleteState);await a.deleteState(e),n.trace("Deleted state for id "+e)}forPrivate(e){const t=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map((e=>e.name));return new Proxy(this,{get:(a,n,i)=>t.includes(n)?new Proxy(a[n],{async apply(t,a,i){switch(n){case"putState":{const[t,a,r]=i;return await t.putPrivateData(e,a.toString(),r),r}case"deleteState":{const[t,a]=i;return t.deletePrivateData(e,a)}case"readState":{const[t,a]=i;return t.getPrivateData(e,a)}case"queryResult":{const[t,a]=i;return t.getPrivateDataQueryResult(e,a)}case"queryResultPaginated":{const[t,a,r,n]=i,o=await t.getPrivateDataQueryResult(e,a),s=[];let c=0,l=!n,d=null;for(;;){const e=await o.next();if(e.value&&e.value.value.toString()){const t=e.value.key,a=e.value.value.toString("utf8");if(!l){t===n?.toString()&&(l=!0);continue}if(s.push({Key:t,Record:JSON.parse(a)}),d=t,c++,c>=r)return await o.close(),{iterator:s,metadata:{fetchedRecordsCount:s.length,bookmark:d}}}if(e.done)return await o.close(),{iterator:s,metadata:{fetchedRecordsCount:s.length,bookmark:""}}}}default:throw new r.InternalError("Unsupported method override "+n)}}}):Reflect.get(a,n,i)})}async putState(e,t,a){let n;const{stub:i,logger:o}=a,s=o.for(this.putState);try{n=Buffer.from(O.serializer.serialize(t))}catch(t){throw new r.SerializationError(`Failed to serialize record with id ${e}: ${t}`)}return await i.putState(e.toString(),n),s.silly("state stored under id "+e),t}async readState(e,t){let a;const{stub:n,logger:i}=t,o=i.for(this.readState),s=(await n.getState(e)).toString();if(!s)throw new r.NotFoundError(`Record with id ${e} not found`);o.silly("Read state for id "+e);try{a=O.serializer.deserialize(s.toString())}catch(e){throw new r.SerializationError("Failed to parse record: "+e)}return a}async queryResult(e,t,...a){return await e.getQueryResult(JSON.stringify(t))}async queryResultPaginated(e,t,a=250,r,...n){return await e.getQueryResultWithPagination(JSON.stringify(t),a,r?.toString())}mergeModels(e){const t=e=>Object.entries(e).reduce(((e,[t,a])=>(void 0!==a&&(e[t]=a),e)),{});let a=e.pop();for(const r of e)a=Object.assign({},t(a),t(r));return a}decode(e){return O.textDecoder.decode(e)}async flags(e,t,a,r,...n){const i=e=>{const t=e??this.log.for(this.flags);return"function"!=typeof t.clear&&(t.clear=()=>t),"function"!=typeof t.for&&(t.for=()=>t),t},o=r instanceof l?r.accumulate({logger:i(r.logger)}):(new l).accumulate({stub:r.stub,identity:r.clientIdentity,logger:i()}),s=Object.assign({},a,{logger:o.logger});return Object.assign(await super.flags(e,t,s,...n),{stub:r.stub,identity:r.clientIdentity??o.identity,logger:o.logger,correlationId:r.stub.getTxID()})}index(e){return Promise.resolve(void 0)}async resultIterator(e,t,a=!1){const r=[];let n=await t.next();for(;!n.done;){if(n.value&&n.value.value.toString()){let t={};if(e.debug(n.value.value.toString("utf8")),a){t.TxId=n.value.txId,t.Timestamp=n.value.timestamp;try{t.Value=JSON.parse(n.value.value.toString("utf8"))}catch(a){e.error(a),t.Value=n.value.value.toString("utf8")}}else try{t=JSON.parse(n.value.value.toString("utf8"))}catch(a){e.error(a),t=n.value.value.toString("utf8")}r.push(t)}n=await t.next()}return e.debug(`Closing iterator after ${r.length} results`),t.close(),r}async raw(e,...t){const{ctx:a,log:r,ctxArgs:n}=this.logCtx(t,this.raw);"boolean"==typeof n[0]&&n.shift();const{stub:i}=a,{skip:o,limit:s}=e;let c;s||o?(delete e.limit,delete e.skip,r.debug(`Retrieving paginated iterator: limit: ${s}/ skip: ${o}`),c=(await this.queryResultPaginated(i,e,s||250,o?.toString())).iterator):(r.debug("Retrieving iterator"),c=await this.queryResult(i,e)),r.debug("Iterator acquired");const l=await this.resultIterator(r,c);return r.debug("returning {0} results",""+(Array.isArray(l)?l.length:1)),l}Statement(){return new p(this)}async Sequence(e){return new g(e,this)}async createAll(e,t,n,...i){if(t.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const{log:o,ctxArgs:s}=this.logCtx(i,this.createAll),c=a.Model.tableName(e);return o.debug(`Creating ${t.length} entries ${c} table`),Promise.all(t.map(((t,a)=>this.create(e,t,n[a],...s))))}async updateAll(e,t,n,...i){if(t.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const{log:o,ctxArgs:s}=this.logCtx(i,this.updateAll),c=a.Model.tableName(e);return o.debug(`Updating ${t.length} entries ${c} table`),Promise.all(t.map(((t,a)=>this.update(e,t,n[a],...s))))}prepare(e,...t){const{log:n}=this.logCtx(t,this.prepare),i=a.Model.tableName(e.constructor),o=a.Model.pk(e.constructor),s=a.Model.segregate(e),c=Object.entries(s.model).reduce(((t,[n,i])=>{if(void 0===i)return t;const o=a.Model.columnName(e,n);if(this.isReserved(o))throw new r.InternalError(`Property name ${o} is reserved`);return t[o]=i,t}),{});return n.silly(`Preparing record for ${i} table with pk ${e[o]}`),{record:c,id:e[o],transient:s.transient}}revert(e,t,n,i,...o){const{log:s}=this.logCtx(o,this.revert),c={};c[a.Model.pk(t)]=n;const l="string"==typeof t?a.Model.build(c,t):new t(c);s.silly(`Rebuilding model ${l.constructor.name} id ${n}`);const d=Object.keys(l).reduce(((t,r)=>(t[r]=e[a.Model.columnName(t,r)],t)),l);return i&&(s.debug("re-adding transient properties: "+Object.keys(i).join(", ")),Object.entries(i).forEach((([e,t])=>{if(e in d&&void 0!==d[e])throw new r.InternalError(`Transient property ${e} already exists on model ${l.constructor.name}. should be impossible`);d[e]=t}))),d}createPrefix(e,r,n,...i){const{ctxArgs:o}=this.logCtx(i,this.createPrefix),s={};return s[t.CouchDBKeys.TABLE]=a.Model.tableName(e),Object.assign(s,n),[e,r,s,...o]}updatePrefix(e,r,n,...i){const{ctxArgs:o}=this.logCtx(i,this.updatePrefix),s={};return s[t.CouchDBKeys.TABLE]=a.Model.tableName(e),Object.assign(s,n),[e,r,s,...o]}createAllPrefix(e,a,n,...i){if(a.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const o=i.pop(),s=a.map(((a,r)=>{const i={};return i[t.CouchDBKeys.TABLE]=e,Object.assign(i,n[r]),i}));return[e,a,s,o]}updateAllPrefix(e,a,n,...i){if(a.length!==n.length)throw new r.InternalError("Ids and models must have the same length");const o=i.pop(),s=a.map(((a,r)=>{const i={};return i[t.CouchDBKeys.TABLE]=e,Object.assign(i,n[r]),i}));return[e,a,s,o]}parseError(e,t){return O.parseError(t||e)}static parseError(e,t){return super.parseError(e,t)}static decoration(){super.decoration(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.CREATED_BY).define(r.onCreate(S),s.propMetadata(i.PersistenceKeys.CREATED_BY,{})).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.UPDATED_BY).define(r.onCreateUpdate(S),s.propMetadata(i.PersistenceKeys.UPDATED_BY,{})).apply(),s.Decoration.flavouredAs(f).for(r.DBKeys.ID).define({decorator:(e,t)=>(n,i)=>s.apply(a.required(),r.readonly(),s.propMetadata(s.Metadata.key(r.DBKeys.ID,i),e),r.onCreate(E,e,t))(n,i)}).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.COLUMN).extend(n.Property()).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.TABLE).extend((e=>n.Object()(e))).apply(),s.Decoration.flavouredAs(f).for(i.PersistenceKeys.ONE_TO_ONE).define({decorator:(e,t,n,o,c)=>{const l={class:e,cascade:t,populate:n};return o&&(l.joinTable=o),c&&(l.name=c),s.apply(s.prop(),i.relation(i.PersistenceKeys.ONE_TO_ONE,l),a.type([e,String,Number,BigInt]),r.onCreate(_,l),r.onUpdate(b,l),r.onDelete(C,l),r.afterAny(v,l),s.propMetadata(i.PersistenceKeys.ONE_TO_ONE,l))}}).apply(),s.Decoration.for(i.PersistenceKeys.ONE_TO_MANY).define({decorator:(e,t,n,o,c)=>{const l={class:e,cascade:t,populate:n};return o&&(l.joinTable=o),c&&(l.name=c),s.apply(s.prop(),i.relation(i.PersistenceKeys.ONE_TO_MANY,l),a.list([e,String,Number]),r.onCreate(x,l),r.onUpdate(i.oneToManyOnUpdate,l),r.onDelete(A,l),r.afterAny(v,l),s.propMetadata(i.PersistenceKeys.ONE_TO_MANY,l))}}).apply()}}O.decoration(),i.Adapter.setCurrent(f);class T extends a.JSONSerializer{constructor(){super()}deserialize(e){return super.deserialize(e)}serialize(e){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(e)))}}class k extends n.Contract{static{this.adapter=new O}static{this.serializer=new T}constructor(e,t){super(e),this.clazz=t,this.initialized=!1,this.repo=i.Repository.forModel(t)}async create(e,t,...r){const{log:n,ctxArgs:i}=await this.logCtx([...r,e],this.create);n.info("CONTRACT CREATE, "+i),"string"==typeof t&&(t=this.deserialize(t)),n.info("Creating model: "+JSON.stringify(t));const o=this.getTransientData(e);return n.info("Merging transient data..."),t=a.Model.merge(t,o,this.clazz),this.repo.create(t,...i)}async read(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.read);return r.info(`reading entry with pk ${t} `),this.repo.read(t,...n)}getTransientData(e){const t=e.stub.getTransient();let a={};return t.has(this.repo.tableName)&&(a=JSON.parse(t.get(this.repo.tableName)?.toString("utf8"))),a}async update(e,t,...r){const{log:n,ctxArgs:i}=await this.logCtx([...r,e],this.update);"string"==typeof t&&(t=this.deserialize(t)),n.info("Updating model: "+JSON.stringify(t));const o=this.getTransientData(e);return n.info("Merging transient data..."),t=a.Model.merge(t,o,this.clazz),this.repo.update(t,...i)}async delete(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.delete);return r.info(`deleting entry with pk ${t} `),this.repo.delete(t+"",...n)}async deleteAll(e,t,...a){const{ctxArgs:r}=await this.logCtx([...a,e],this.readAll);return"string"==typeof t&&(t=JSON.parse(t)),this.repo.deleteAll(t,...r)}async readAll(e,t,...a){const{ctxArgs:r}=await this.logCtx([...a,e],this.readAll);return"string"==typeof t&&(t=JSON.parse(t)),this.repo.readAll(t,...r)}async updateAll(e,t,...a){const{log:r,ctxArgs:n}=await this.logCtx([...a,e],this.updateAll);return"string"==typeof t&&(t=JSON.parse(t).map((e=>this.deserialize(e))).map((e=>new this.clazz(e)))),r.info(`updating ${t.length} entries to the table`),this.repo.updateAll(t,...n)}async raw(e,t,a,...r){const{ctxArgs:n}=await this.logCtx([...r,e],this.raw);return"string"==typeof t&&(t=JSON.parse(t)),k.adapter.raw(t,a,...n)}serialize(e){return k.serializer.serialize(e)}deserialize(e){return k.serializer.deserialize(e)}async init(e){const{log:t}=await this.logCtx([e],this.init);t.info("Running contract initialization..."),this.initialized=!0,t.info("Contract initialization completed.")}async healthcheck(e){const{log:t}=await this.logCtx([e],this.healthcheck);return t.info(`Running Healthcheck: ${this.initialized}...`),{healthcheck:this.initialized}}async createAll(e,t,...a){const{log:r}=await this.logCtx([...a,e],this.createAll);return"string"==typeof t&&(t=JSON.parse(t).map((e=>this.deserialize(e))).map((e=>new this.clazz(e)))),r.info(`adding ${t.length} entries to the table`),this.repo.createAll(t,e,...a)}async logCtx(e,t){return k.logCtx.bind(this)(e,t)}static async logCtx(e,t){if(1>e.length)throw new r.InternalError("No context provided");const a=e.pop();if(a instanceof l)return{ctx:a,log:a.logger.clear().for(this).for(t),ctxArgs:[...e,a]};if(!(a instanceof n.Context))throw new r.InternalError("No valid context provided");const i={correlationId:a.stub.getTxID()},o=await k.adapter.context((()=>{if("string"==typeof t)return t;switch(t.name){case r.OperationKeys.CREATE:case r.OperationKeys.READ:case r.OperationKeys.UPDATE:case r.OperationKeys.DELETE:case r.BulkCrudOperationKeys.CREATE_ALL:case r.BulkCrudOperationKeys.READ_ALL:case r.BulkCrudOperationKeys.UPDATE_ALL:case r.BulkCrudOperationKeys.DELETE_ALL:}return t.name})(),i,this.clazz,a),s=this?o.logger.for(this).for(t):o.logger.clear().for(this).for(t);return{ctx:o,log:s,ctxArgs:[...e,o]}}}class N extends k{constructor(e,t){super(e,t)}async create(e,t){const{log:a}=await this.logCtx([e],this.create);a.info("Creating model: "+t);const r=this.deserialize(t);return a.info("Model deserialized: "+JSON.stringify(r)),this.serialize(await super.create(e,r))}async read(e,t){const{log:a}=await this.logCtx([e],this.read);return a.info("Reading id: "+t),this.serialize(await super.read(e,t))}async update(e,t){const{log:a}=await this.logCtx([e],this.update);return a.info("Updating model: "+t),this.serialize(await super.update(e,t))}async delete(e,t){const{log:a}=await this.logCtx([e],this.delete);return a.info("Deleting id: "+t),this.serialize(await super.delete(e,t))}async deleteAll(e,t){const a=JSON.parse(t),{log:r}=await this.logCtx([e],this.deleteAll);return r.info(`deleting ${a.length} entries from the table`),JSON.stringify((await super.deleteAll(e,a)).map((e=>this.serialize(e))))}async readAll(e,t){const a=JSON.parse(t),{log:r}=await this.logCtx([e],this.readAll);return r.info(`reading ${a.length} entries from the table`),JSON.stringify((await super.readAll(e,a)).map((e=>this.serialize(e))))}async updateAll(e,t){const{log:a}=await this.logCtx([e],this.updateAll),r=JSON.parse(t).map((e=>this.deserialize(e))).map((e=>new this.clazz(e)));return a.info(`Updating ${r.length} entries to the table`),JSON.stringify((await super.updateAll(e,r)).map((e=>this.serialize(e))))}async raw(e,t,a){const{ctx:r}=await this.logCtx([e],this.raw),n=JSON.parse(t);return super.raw(r,n,a)}async init(e){await super.init(e)}async healthcheck(e){return JSON.stringify(await super.healthcheck(e))}async createAll(e,t){const{log:a}=await this.logCtx([e],this.createAll),r=JSON.parse(t).map((e=>this.deserialize(e))).map((e=>new this.clazz(e)));return a.info(`Adding ${r.length} entries to the table`),JSON.stringify((await super.createAll(e,r)).map((e=>this.serialize(e))))}}c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"create",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"read",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"update",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"delete",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"deleteAll",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"readAll",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"updateAll",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Boolean]),c.__metadata("design:returntype",Promise)],N.prototype,"raw",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],N.prototype,"init",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],N.prototype,"healthcheck",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],N.prototype,"createAll",null);class D extends r.InternalError{constructor(e){super(e,D.name)}}class I extends r.InternalError{constructor(e){super(e,I.name)}}class R extends r.InternalError{constructor(e){super(e,R.name)}}class P extends r.BaseError{constructor(e){super(P.name,e,409)}}function z(e,t){const a=e+t;if(e!==a-t||t!==a-e)throw new D(`Addition overflow: ${e} + ${t}`);return a}function F(e,t){const a=e-t;if(e!==a+t||t!==e-a)throw new D(`Subtraction overflow: ${e} - ${t}`);return a}let M=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk({type:"String"}),c.__metadata("design:type",String)],M.prototype,"name",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],M.prototype,"owner",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],M.prototype,"symbol",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],M.prototype,"decimals",void 0),M=c.__decorate([i.table("erc20_tokens"),a.model(),c.__metadata("design:paramtypes",[Object])],M);let B=class extends i.BaseModel{constructor(e){super(e)}};c.__decorate([i.pk({type:"String"}),c.__metadata("design:type",String)],B.prototype,"id",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],B.prototype,"token",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],B.prototype,"balance",void 0),c.__decorate([i.column(),c.__metadata("design:type",String)],B.prototype,"captive",void 0),B=c.__decorate([i.table("erc20_wallets"),a.model(),c.__metadata("design:paramtypes",[Object])],B);let $=class extends i.BaseModel{constructor(e){super(e)}};function L(){return function(e,t,a){const n=a.value;return a.value=async function(...e){const a=e[0],o=a.clientIdentity.getID(),s=await this.tokenRepository.select(),c=await s.execute(a);if(0==c.length)throw new r.NotFoundError("No tokens avaialble");if(c.length>1)throw new r.NotFoundError("To many token available : "+c.length);if(c[0].owner!=o)throw new i.AuthorizationError(`User not authorized to run ${t} on the token`);return await n.apply(this,e)},a}}var K;c.__decorate([i.pk({type:"String"}),i.column(),a.required(),c.__metadata("design:type",String)],$.prototype,"owner",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",String)],$.prototype,"spender",void 0),c.__decorate([i.column(),a.required(),c.__metadata("design:type",Number)],$.prototype,"value",void 0),$=c.__decorate([i.table("erc20_allowances"),a.model(),c.__metadata("design:paramtypes",[Object])],$),(e=>{e.TRANSFER="Transfer",e.APPROVAL="Approval"})(K||(K={}));class q extends k{constructor(e){super(e,B),q.adapter=q.adapter||new O,this.walletRepository=u.forModel(B,q.adapter.alias),this.tokenRepository=u.forModel(M,q.adapter.alias),this.allowanceRepository=u.forModel($,q.adapter.alias)}async TokenName(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].name}async Symbol(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].symbol}async Decimals(e){await this.CheckInitialized(e);const t=await this.tokenRepository.select();return(await t.execute(e))[0].decimals}async TotalSupply(e){await this.CheckInitialized(e);const t=await this.walletRepository.select(),a=await t.execute(e);if(0==a.length)throw new r.NotFoundError(`The token ${this.getName()} does not exist`);let n=0;return a.forEach((e=>{n+=e.balance})),n}async BalanceOf(e,t){return await this.CheckInitialized(e),(await this.walletRepository.read(t,e)).balance}async Transfer(e,t,a){await this.CheckInitialized(e);const{ctx:n}=await this.logCtx([e],this.Transfer),i=n.identity.getID();if(!await this._transfer(i,t,a,n))throw new r.InternalError("Failed to transfer");return!0}async TransferFrom(e,t,a,n){await this.CheckInitialized(e);const{ctx:i}=await this.logCtx([e],this.BurnFrom),o=i.identity.getID(),s=await this._getAllowance(t,o,i);if(!s||0>s.value)throw new R(`spender ${o} has no allowance from ${t}`);const c=s.value;if(n>c)throw new I("The spender does not have enough allowance to spend.");const l=F(c,n),d=Object.assign({},s,{value:l});if(await this.allowanceRepository.update(d,i),!await this._transfer(t,a,n,i))throw new r.InternalError("Failed to transfer");return!0}async _transfer(e,t,a,n){const o=n.logger;if(e===t)throw new i.AuthorizationError("cannot transfer to and from same client account");if(0>a)throw new I("transfer amount cannot be negative");const s=await this.walletRepository.read(e,n),c=s.balance;if(a>c)throw new I(`client account ${e} has insufficient funds.`);let l,d=!1;try{l=await this.walletRepository.read(t,n)}catch(e){if(!(e instanceof r.BaseError))throw new r.InternalError(e);if(404!==e.code)throw new r.InternalError(e.message);l=new B({id:t,balance:0,token:await this.TokenName(n)}),d=!0}const u=l.balance,p=F(c,a),h=z(u,a),g=Object.assign({},s,{balance:p});await this.walletRepository.update(g,n);const y=Object.assign({},l,{balance:h});d?await this.walletRepository.create(y,n):await this.walletRepository.update(y,n);const m={from:e,to:t,value:a};return this.repo.refresh(M,K.TRANSFER,"",m,n).catch((e=>o.error("Failed to notify transfer: "+e))),!0}async Approve(e,t,a){await this.CheckInitialized(e);const{ctx:r,ctxArgs:n}=await this.logCtx([e],this.Approve),i=r.identity.getID();let o=await this._getAllowance(i,t,r);if((await this.walletRepository.read(i,...n)).balance<a)throw new I(`client account ${i} has insufficient funds.`);o?(o.value=a,await this.allowanceRepository.update(o,...n)):(o=new $({owner:i,spender:t,value:a}),await this.allowanceRepository.create(o,...n));const s={owner:i,spender:t,value:a};return this.repo.refresh(M,K.APPROVAL,"",s,r),!0}async Allowance(e,t,a){await this.CheckInitialized(e);const{ctx:r}=await this.logCtx([e],this.Allowance),n=await this._getAllowance(t,a,r);if(!n)throw new R(`spender ${a} has no allowance from ${t}`);return n.value}async _getAllowance(e,t,a){const r=i.Condition.and(i.Condition.attribute("owner").eq(e),i.Condition.attribute("spender").eq(t)),n=await this.allowanceRepository.select().where(r).execute(a);return n?.[0]}async Initialize(e,t){const{ctx:a}=await this.logCtx([e],this.Initialize);if((await this.tokenRepository.select().execute(a)).length>0)throw new i.AuthorizationError("contract options are already set, client is not authorized to change them");return t.owner=a.identity.getID(),await this.tokenRepository.create(t,a),!0}async CheckInitialized(e){const{ctx:t}=await this.logCtx([e],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(t)).length)throw new P("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(e,t){await this.CheckInitialized(e);const{ctx:a}=await this.logCtx([e],this.Mint),n=a.identity.getID();if(0>=t)throw new r.ValidationError("mint amount must be a positive integer");let i;try{i=await this.walletRepository.read(n,a);const e=z(i.balance,t),r=Object.assign({},i,{balance:e});await this.walletRepository.update(r,a)}catch(i){if(!(i instanceof r.BaseError))throw new r.InternalError(i);if(404!==i.code)throw new r.InternalError(i.message);{const r=new B({id:n,balance:t,token:await this.TokenName(e)});await this.walletRepository.create(r,a)}}const o={from:"0x0",to:n,value:t};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",o,a)}async Burn(e,t){await this.CheckInitialized(e);const{log:a,ctx:r}=await this.logCtx([e],this.Burn),n=r.identity.getID(),i=await this.walletRepository.read(n,r),o=i.balance;if(t>o)throw new I("Minter has insufficient funds.");const s=F(o,t),c=Object.assign({},i,{balance:s});await this.walletRepository.update(c,r),a.info(t+" tokens were burned");const l={from:n,to:"0x0",value:t};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",l,r)}async BurnFrom(e,t,a){await this.CheckInitialized(e);const{log:r,ctx:n}=await this.logCtx([e],this.BurnFrom),i=await this.walletRepository.read(t,n),o=i.balance;if(a>o)throw new I(t+" has insufficient funds.");const s=F(o,a),c=Object.assign({},i,{balance:s});await this.walletRepository.update(c,n),r.info(`${a} tokens were burned from ${t}`);const l={from:t,to:"0x0",value:a};this.repo.ObserverHandler().updateObservers(M,K.TRANSFER,"",l,n)}async ClientAccountBalance(e){await this.CheckInitialized(e);const t=e.clientIdentity.getID(),a=await this.walletRepository.read(t,e);if(!a)throw new I(`The account ${t} does not exist`);return a.balance}async ClientAccountID(e){await this.CheckInitialized(e);const{ctx:t}=await this.logCtx([e],this.ClientAccountID);return t.identity.getID()}}c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"TokenName",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"Symbol",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"Decimals",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"TotalSupply",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String]),c.__metadata("design:returntype",Promise)],q.prototype,"BalanceOf",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Transfer",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"TransferFrom",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Approve",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,String]),c.__metadata("design:returntype",Promise)],q.prototype,"Allowance",null),c.__decorate([n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,M]),c.__metadata("design:returntype",Promise)],q.prototype,"Initialize",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"CheckInitialized",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Mint",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"Burn",null),c.__decorate([L(),n.Transaction(),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context,String,Number]),c.__metadata("design:returntype",Promise)],q.prototype,"BurnFrom",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"ClientAccountBalance",null),c.__decorate([n.Transaction(!1),c.__metadata("design:type",Function),c.__metadata("design:paramtypes",[n.Context]),c.__metadata("design:returntype",Promise)],q.prototype,"ClientAccountID",null);const j=[q];class J extends o.MiniLogger{constructor(e,t,a){super(e,t),this.logger=a?a.logging.getLogger(e):new o.MiniLogger(e,t)}log(e,t,a){if(o.NumericLogLevels[this.config("level")]<o.NumericLogLevels[e])return;let n;switch(e){case o.LogLevel.info:n=this.logger.info;break;case o.LogLevel.verbose:n=this.logger.verbose;break;case o.LogLevel.debug:n=this.logger.debug;break;case o.LogLevel.error:n=this.logger.error;break;case o.LogLevel.silly:n=this.logger.silly;break;default:throw new r.InternalError("Invalid log level")}n.call(this.logger,this.createLog(e,t,a))}}o.Logging.setFactory(((e,t,a)=>new J(e||J.name,t||{},a)));const U="##VERSION##",G="##PACKAGE##";s.Metadata.registerLibrary(G,U),e.ContractLogger=J,e.FabricContractAdapter=O,e.FabricContractContext=l,e.FabricContractRepository=u,e.FabricContractRepositoryObservableHandler=d,e.FabricContractSequence=g,e.FabricCrudContract=k,e.FabricStatement=p,e.PACKAGE_NAME=G,e.SerializedCrudContract=N,e.VERSION=U,e.contracts=j,e.createdByOnFabricCreateUpdate=S,e.pkFabricOnCreate=E},"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@decaf-ts/for-couchdb"),require("@decaf-ts/decorator-validation"),require("@decaf-ts/db-decorators"),require("fabric-contract-api"),require("@decaf-ts/core"),require("@decaf-ts/logging"),require("@decaf-ts/decoration"),require("tslib")):"function"==typeof define&&define.amd?define(["exports","@decaf-ts/for-couchdb","@decaf-ts/decorator-validation","@decaf-ts/db-decorators","fabric-contract-api","@decaf-ts/core","@decaf-ts/logging","@decaf-ts/decoration","tslib"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self)["for-fabric"]={},e.decafTsForCouchdb,e.decafTsDecoratorValidation,e.decafTsDbDecorators,e.fabricContractApi,e.decafTsCore,e.decafTsLogging,e.decafTsDecoration,e.tslib);
|
|
2
2
|
//# sourceMappingURL=for-fabric.cjs.map
|
package/dist/for-fabric.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"for-fabric.cjs","sources":["../src/contracts/ContractContext.ts","../src/contracts/FabricContractRepositoryObservableHandler.ts","../src/shared/events.ts","../src/contracts/FabricContractRepository.ts","../src/contracts/FabricContractStatement.ts","../src/shared/model/Sequence.ts","../src/contracts/FabricContractSequence.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/FabricConstruction.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/contracts/logging.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,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","logFor","logger","l","Logging","for","correlationId","getTxID","info","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","Model","pk","fromSelector","type","Metadata","key","DBKeys","ID","selectSelector","map","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","Object","keys","length","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","SequenceModel","BaseModel","seq","__decorate","prototype","required","index","SEQUENCE","model","FabricContractSequence","Sequence","options","repo","forModel","alias","current","READ","context","startWith","sequence","read","parse","e","NotFoundError","InternalError","increment","count","incrementBy","next","toIncrementBy","BigInt","update","create","argz","contextArgs","undefined","range","i","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","serialize","require","sortKeysRecursive","preSerialize","assign","async","oneToOneOnCreate","data","propertyValue","innerRepo","repositoryFromTypeMetadata","cacheModelForPopulate","class","created","oneToOneOnUpdate","cascade","Cascade","CASCADE","updated","createOrUpdate","oneToOneOnDelete","deleted","delete","oneToManyOnCreate","propertyValues","arrayType","every","item","uniqueValues","Set","pkName","m","record","add","oneToManyOnDelete","isInstantiated","v","populate","nested","isArr","Array","isArray","res","c","propName","propKeyValues","cacheKey","proKeyValue","getPopulateKey","fetchPopulateValues","createdByOnFabricCreateUpdate","user","getID","UnsupportedError","pkFabricOnCreate","sequenceName","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","config","composedKey","createCompositeKey","String","putState","parseError","readState","verbose","ctxArgs","deleteState","trace","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","silly","getState","getQueryResult","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","ensureLogger","base","clear","fabricCtx","accumulate","clientIdentity","baseFlags","models","Promise","resolve","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","error","shift","Statement","createAll","tableLabel","all","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","transient","revert","obj","ob","createPrefix","updatePrefix","createAllPrefix","ids","records","updateAllPrefix","reason","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","decorator","groupsort","attr","readonly","COLUMN","extend","FabricProperty","Property","FabricObject","ONE_TO_ONE","joinColumnOpts","fk","meta","joinTable","relation","Number","onUpdate","onDelete","afterAny","ONE_TO_MANY","joinTableOpts","list","oneToManyOnUpdate","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","docsOnly","init","healthcheck","method","bind","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","parsedInput","Transaction","Ctx","Boolean","OverflowError","msg","BalanceError","AllowanceError","NotInitializedError","BaseError","a","b","sub","ERC20Token","column","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","AuthorizationError","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","getName","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","message","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","ValidationError","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","ContractLogger","MiniLogger","conf","logging","getLogger","level","stack","NumericLogLevels","LogLevel","call","createLog","setFactory","object","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"for-fabric.cjs","sources":["../src/contracts/ContractContext.ts","../src/contracts/FabricContractRepositoryObservableHandler.ts","../src/shared/events.ts","../src/contracts/FabricContractRepository.ts","../src/contracts/FabricContractStatement.ts","../src/shared/model/Sequence.ts","../src/contracts/FabricContractSequence.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/FabricConstruction.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/contracts/logging.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,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","logFor","logger","l","Logging","for","correlationId","getTxID","info","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","Model","pk","fromSelector","type","Metadata","key","DBKeys","ID","selectSelector","map","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","Object","keys","length","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","SequenceModel","BaseModel","seq","__decorate","prototype","required","index","SEQUENCE","model","FabricContractSequence","Sequence","options","repo","forModel","alias","current","READ","context","startWith","sequence","read","parse","e","NotFoundError","InternalError","increment","count","incrementBy","next","toIncrementBy","BigInt","update","create","argz","contextArgs","undefined","range","i","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","serialize","require","sortKeysRecursive","preSerialize","assign","async","oneToOneOnCreate","data","propertyValue","innerRepo","repositoryFromTypeMetadata","cacheModelForPopulate","class","created","oneToOneOnUpdate","cascade","Cascade","CASCADE","updated","createOrUpdate","oneToOneOnDelete","deleted","delete","oneToManyOnCreate","propertyValues","arrayType","every","item","uniqueValues","Set","pkName","m","record","add","oneToManyOnDelete","isInstantiated","v","populate","nested","isArr","Array","isArray","res","c","propName","propKeyValues","cacheKey","proKeyValue","getPopulateKey","fetchPopulateValues","createdByOnFabricCreateUpdate","user","getID","UnsupportedError","pkFabricOnCreate","sequenceName","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","config","composedKey","createCompositeKey","String","putState","parseError","readState","verbose","ctxArgs","deleteState","trace","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","silly","getState","getQueryResult","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","ensureLogger","base","clear","fabricCtx","accumulate","clientIdentity","baseFlags","models","Promise","resolve","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","error","shift","Statement","createAll","tableLabel","all","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","transient","revert","obj","ob","createPrefix","updatePrefix","createAllPrefix","ids","records","updateAllPrefix","reason","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","decorator","groupsort","attr","readonly","COLUMN","extend","FabricProperty","Property","FabricObject","ONE_TO_ONE","joinColumnOpts","fk","meta","joinTable","relation","Number","onUpdate","onDelete","afterAny","ONE_TO_MANY","joinTableOpts","list","oneToManyOnUpdate","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","docsOnly","init","healthcheck","method","bind","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","parsedInput","Transaction","Ctx","Boolean","OverflowError","msg","BalanceError","AllowanceError","NotInitializedError","BaseError","a","b","sub","ERC20Token","column","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","AuthorizationError","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","getName","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","message","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","ValidationError","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","ContractLogger","MiniLogger","conf","logging","getLogger","level","stack","NumericLogLevels","LogLevel","call","createLog","setFactory","object","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
package/dist/for-fabric.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{CouchDBStatement as t,CouchDBKeys as e,CouchDBGroupOperator as r,CouchDBOperator as i,CouchDBAdapter as a}from"@decaf-ts/for-couchdb";import{Model as s,required as n,model as o,JSONSerializer as c,type as l,list as u}from"@decaf-ts/decorator-validation";import{Context as p,OperationKeys as d,BulkCrudOperationKeys as h,DBKeys as g,NotFoundError as y,InternalError as w,SerializationError as f,onCreate as m,onCreateUpdate as b,readonly as x,onUpdate as A,onDelete as v,afterAny as S,BaseError as C,ValidationError as O}from"@decaf-ts/db-decorators";import{Property as E,Object as k,Contract as N,Context as R,Transaction as z}from"fabric-contract-api";import{ObserverHandler as T,Adapter as P,Repository as I,Condition as D,pk as $,index as F,table as j,BaseModel as B,Sequence as _,repositoryFromTypeMetadata as L,cacheModelForPopulate as J,Cascade as q,createOrUpdate as M,getPopulateKey as U,UnsupportedError as Y,PersistenceKeys as V,relation as H,oneToManyOnUpdate as K,column as Q,AuthorizationError as G}from"@decaf-ts/core";import{Logging as W,MiniLogger as X,NumericLogLevels as Z,LogLevel as tt}from"@decaf-ts/logging";import{Metadata as et,Decoration as rt,propMetadata as it,apply as at,prop as st}from"@decaf-ts/decoration";import{__decorate as nt,__metadata as ot}from"tslib";class ct extends p{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 lt extends T{constructor(t=[d.CREATE,d.UPDATE,d.DELETE,h.CREATE_ALL,h.UPDATE_ALL,h.DELETE_ALL]){super(),this.supportedEvents=t}async updateObservers(t,e,r,...i){const{log:a,ctx:s}=P.logCtx(i,this.updateObservers),{stub:n}=s,[o,c]=i,l="string"==typeof t?t:t.name;if(-1!==this.supportedEvents.indexOf(e)){a.debug(`Emitting ${e} event`);const t=((t,e,r)=>{const i=[t,e];return r&&i.push(r),i.join("_")})(l,e,o);n.setEvent(t,Buffer.from(JSON.stringify({id:r})))}else n.setEvent(e,Buffer.from(JSON.stringify(c)))}}class ut extends I{constructor(t,e,r){super(t,e),this.trackedEvents=r}logFor(t){if(t.logger)return t.logger;const e=W.for(this,{correlationId:t.stub.getTxID()},t);return e.info("REPOSITORY LOG_CTX"),e}ObserverHandler(){return new lt}async updateObservers(t,e,r,...i){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(e))return await super.updateObservers(t,e,r,...i)}}class pt extends t{constructor(t){super(t)}async raw(t,...e){const{ctx:r}=this.logCtx(e,this.raw),i=await this.adapter.raw(t,!0,r),a=s.pk(this.fromSelector),n=et.get(this.fromSelector,et.key(g.ID,a))?.type;return this.selectSelector?i:i.map(t=>this.processRecord(t,a,n,r))}build(){const t={};t[e.TABLE]={},t[e.TABLE]=s.tableName(this.fromSelector);const a={selector:t};if(this.selectSelector&&(a.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(D.and(this.whereCondition,D.attribute(e.TABLE).eq(a.selector[e.TABLE]))).selector,i=Object.keys(t);if(1===i.length&&-1!==Object.values(r).indexOf(i[0]))switch(i[0]){case r.AND:t[r.AND]=[...Object.values(t[r.AND]).reduce((t,e)=>{const i=Object.keys(e);if(1!==i.length)throw Error("Too many keys in query selector. should be one");const a=i[0];return a===r.AND?t.push(...e[a]):t.push(e),t},[])],a.selector=t;break;case r.OR:{const e={};e[r.AND]=[t,...Object.entries(a.selector).map(([t,e])=>{const r={};return r[t]=e,r})],a.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach(([t,e])=>{a.selector[t],a.selector[t]=e})}if(this.orderBySelector){a.sort=a.sort||[],a.selector=a.selector||{};const[t,e]=this.orderBySelector,r={};r[t]=e,a.sort.push(r),a.selector[t]||(a.selector[t]={},a.selector[t][i.BIGGER]=null)}return this.limitSelector&&(a.limit=this.limitSelector),this.offsetSelector&&(a.skip=this.offsetSelector),a}}let dt=class extends B{constructor(t){super(t)}};nt([$(),ot("design:type",String)],dt.prototype,"id",void 0),nt([n(),F(),ot("design:type",Object)],dt.prototype,"current",void 0),dt=nt([j(e.SEQUENCE),o(),ot("design:paramtypes",[Object])],dt);class ht extends _{constructor(t,e){super(t,e),this.repo=I.forModel(dt,e.alias)}async current(...t){const e=(await p.args(d.READ,dt,t,this.adapter)).context,{name:r,startWith:i}=this.options;try{const t=await this.repo.read(r,e);return this.parse(t.current)}catch(t){if(t instanceof y){if(void 0===i)throw new w("Starting value is not defined for a non existing sequence");try{return this.parse(i)}catch(t){throw new w(`Failed to parse initial value for sequence ${i}: ${t}`)}}throw new w(`Failed to retrieve current value for sequence ${r}: ${t}`)}}async increment(t,e,r){const{type:i,incrementBy:a,name:s}=this.options;let n;const o=e||a;if(o%a!==0)throw new w("Value to increment does not consider the incrementBy setting: "+a);switch(i){case"Number":n=this.parse(t)+o;break;case"BigInt":n=this.parse(t)+BigInt(o);break;default:throw new w("Should never happen")}let c;try{c=await this.repo.update(new dt({id:s,current:n}),r)}catch(t){if(!(t instanceof y))throw t;c=await this.repo.create(new dt({id:s,current:n}),r)}return c.current}async next(...t){const e=await p.args(d.UPDATE,dt,t,this.adapter),{context:r,args:i}=e,a=await this.current(...i);return this.increment(a,void 0,r)}async range(t,...e){const r=await p.args(d.UPDATE,dt,e,this.adapter),{context:i,args:a}=r,s=await this.current(...a),n=this.parse(this.options.incrementBy),o=await this.increment(s,this.parse(t)*n,i),c=[];for(let e=1;t>=e;e++)c.push(s+n*this.parse(e));if(c[c.length-1]!==o&&"String"!==this.options.type)throw new w("Miscalculation of range");return c}}var gt,yt;(t=>{t.PRIVATE="private",t.SHARED="shared",t.FABRIC="fabric.",t.OWNEDBY="owned-by"})(gt||(gt={})),(t=>{t.X509="X.509"})(yt||(yt={}));const wt="hlf-fabric";class ft extends c{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)}}async function mt(t,e,r,i){const a=i[r];if(!a)return;if("object"!=typeof a){const e=L(i,r,this.adapter.alias),s=await e.read(a,t);return await J(t,i,r,a,s),void(i[r]=a)}e.class="string"==typeof e.class?e.class:e.class().name;const n=s.get(e.class);if(!n)throw new w("Could not find model "+e.class);const o=I.forModel(n,this.adapter.alias),c=await o.create(a,t),l=s.pk(c);await J(t,i,r,c[l],c),i[r]=c[l]}async function bt(t,e,r,i){const a=i[r];if(!a)return;if(e.cascade.update!==q.CASCADE)return;if("object"!=typeof a){const e=L(i,r,this.adapter.alias),s=await e.read(a,t);return await J(t,i,r,a,s),void(i[r]=a)}const n=await M(i[r],t,this.adapter.alias),o=s.pk(n);await J(t,i,r,n[o],n),i[r]=n[o]}async function xt(t,e,r,i){const a=i[r];if(!a)return;if(e.cascade.update!==q.CASCADE)return;const n=L(i,r,this.adapter.alias);let o;o=a instanceof s?await n.delete(i[r][s.pk(n.class)],t):await n.delete(i[r],t),await J(t,i,r,o[s.pk(n.class)],o)}async function At(t,e,r,i){const a=i[r];if(!a||!a.length)return;const n=typeof a[0];if(!a.every(t=>typeof t===n))throw new w(`Invalid operation. All elements of property ${r} must match the same type.`);const o=new Set([...a]);if("object"!==n){const e=L(i,r,this.adapter.alias);for(const a of o){const s=await e.read(a,t);await J(t,i,r,a,s)}return void(i[r]=[...o])}const c=s.pk(a[0]),l=new Set;for(const e of a){const a=await M(e,t,this.adapter.alias);await J(t,i,r,a[c],a),l.add(a[c])}i[r]=[...l]}async function vt(t,e,r,i){if(e.cascade.delete!==q.CASCADE)return;const a=i[r];if(!a||!a.length)return;const n=typeof a[0];if(!a.every(t=>typeof t===n))throw new w(`Invalid operation. All elements of property ${r} must match the same type.`);const o="object"===n,c=o?I.forModel(a[0],this.adapter.alias):L(i,r,this.adapter.alias),l=new Set([...o?a.map(t=>t[s.pk(this.class)]):a]);for(const e of l.values()){const a=await c.delete(e,t);await J(t,i,r,e,a)}i[r]=[...l]}async function St(t,e,r,i){if(!e.populate)return;const a=i[r],s=Array.isArray(a);if(void 0===a||s&&0===a.length)return;const n=await(async(e,r,i,a,s)=>{let n,o;const c=[];for(const l of a){n=U(r.constructor.name,i,l);try{o=await e.get(n)}catch(e){const a=L(r,i,s);if(!a)throw new w("Could not find repo");o=await a.read(l,t)}c.push(o)}return c})(t,i,r,s?a:[a],this.adapter.alias);i[r]=s?n:n[0]}async function Ct(t,e,r,i){try{const e=t.get("identity");i[r]=e.getID()}catch(t){throw new Y("No User found in context. Please provide a user in the context")}}async function Ot(t,e,r,i){if(!e.type||i[r])return;let a;e.name||(e.name=s.sequenceName(i,"pk"));try{a=await this.adapter.Sequence(e)}catch(t){throw new w(`Failed to instantiate Sequence ${e.name}: ${t}`)}const n=await a.next(t);Object.defineProperty(i,r,{enumerable:!0,writable:!1,configurable:!0,value:n})}class Et extends a{getClient(){throw new Y("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new ft}repository(){return ut}constructor(t,e){super(t,wt,e),this.Context=ct}for(t,...e){return super.for(t,...e)}async create(t,e,r,...i){const{ctx:a,log:n}=this.logCtx(i,this.create);n.info("in ADAPTER create with args "+i);const{stub:o}=a,c=s.tableName(t);try{n.info(`adding entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);r=await this.putState(t,r,a)}catch(t){throw this.parseError(t)}return r}async read(t,e,...r){const{ctx:i,log:a}=this.logCtx(r,this.read);a.info("in ADAPTER read with args "+r);const{stub:n}=i,o=s.tableName(t);let c;try{const t=n.createCompositeKey(o,[e+""]);c=await this.readState(t,i)}catch(t){throw this.parseError(t)}return c}async update(t,e,r,...i){const{ctx:a,log:n}=this.logCtx(i,this.update),{stub:o}=a,c=s.tableName(t);try{n.verbose(`updating entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);r=await this.putState(t,r,a)}catch(t){throw this.parseError(t)}return r}async delete(t,e,...r){const{ctx:i,log:a,ctxArgs:n}=this.logCtx(r,this.delete),{stub:o}=i,c=s.tableName(t);let l;try{const r=o.createCompositeKey(c,[e+""]);l=await this.read(t,e,...n),a.verbose(`deleting entry with pk ${e} from ${c} table`),await this.deleteState(r,i)}catch(t){throw this.parseError(t)}return l}async deleteState(t,e){const{stub:r,logger:i}=e,a=i.for(this.deleteState);await r.deleteState(t),a.trace("Deleted state for id "+t)}forPrivate(t){const e=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map(t=>t.name);return new Proxy(this,{get:(r,i,a)=>e.includes(i)?new Proxy(r[i],{async apply(e,r,a){switch(i){case"putState":{const[e,r,i]=a;return await e.putPrivateData(t,r.toString(),i),i}case"deleteState":{const[e,r]=a;return e.deletePrivateData(t,r)}case"readState":{const[e,r]=a;return e.getPrivateData(t,r)}case"queryResult":{const[e,r]=a;return e.getPrivateDataQueryResult(t,r)}case"queryResultPaginated":{const[e,r,i,s]=a,n=await e.getPrivateDataQueryResult(t,r),o=[];let c=0,l=!s,u=null;for(;;){const t=await n.next();if(t.value&&t.value.value.toString()){const e=t.value.key,r=t.value.value.toString("utf8");if(!l){e===s?.toString()&&(l=!0);continue}if(o.push({Key:e,Record:JSON.parse(r)}),u=e,c++,c>=i)return await n.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:u}}}if(t.done)return await n.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:""}}}}default:throw new w("Unsupported method override "+i)}}}):Reflect.get(r,i,a)})}async putState(t,e,r){let i;const{stub:a,logger:s}=r,n=s.for(this.putState);try{i=Buffer.from(Et.serializer.serialize(e))}catch(e){throw new f(`Failed to serialize record with id ${t}: ${e}`)}return await a.putState(t.toString(),i),n.silly("state stored under id "+t),e}async readState(t,e){let r;const{stub:i,logger:a}=e,s=a.for(this.readState),n=(await i.getState(t)).toString();if(!n)throw new y(`Record with id ${t} not found`);s.silly("Read state for id "+t);try{r=Et.serializer.deserialize(n.toString())}catch(t){throw new f("Failed to parse record: "+t)}return r}async queryResult(t,e,...r){return await t.getQueryResult(JSON.stringify(e))}async queryResultPaginated(t,e,r=250,i,...a){return await t.getQueryResultWithPagination(JSON.stringify(e),r,i?.toString())}mergeModels(t){const e=t=>Object.entries(t).reduce((t,[e,r])=>(void 0!==r&&(t[e]=r),t),{});let r=t.pop();for(const i of t)r=Object.assign({},e(r),e(i));return r}decode(t){return Et.textDecoder.decode(t)}async flags(t,e,r,i,...a){const s=t=>{const e=t??this.log.for(this.flags);return"function"!=typeof e.clear&&(e.clear=()=>e),"function"!=typeof e.for&&(e.for=()=>e),e},n=i instanceof ct?i.accumulate({logger:s(i.logger)}):(new ct).accumulate({stub:i.stub,identity:i.clientIdentity,logger:s()}),o=Object.assign({},r,{logger:n.logger});return Object.assign(await super.flags(t,e,o,...a),{stub:i.stub,identity:i.clientIdentity??n.identity,logger:n.logger,correlationId:i.stub.getTxID()})}index(t){return Promise.resolve(void 0)}async resultIterator(t,e,r=!1){const i=[];let a=await e.next();for(;!a.done;){if(a.value&&a.value.value.toString()){let e={};if(t.debug(a.value.value.toString("utf8")),r){e.TxId=a.value.txId,e.Timestamp=a.value.timestamp;try{e.Value=JSON.parse(a.value.value.toString("utf8"))}catch(r){t.error(r),e.Value=a.value.value.toString("utf8")}}else try{e=JSON.parse(a.value.value.toString("utf8"))}catch(r){t.error(r),e=a.value.value.toString("utf8")}i.push(e)}a=await e.next()}return t.debug(`Closing iterator after ${i.length} results`),e.close(),i}async raw(t,...e){const{ctx:r,log:i,ctxArgs:a}=this.logCtx(e,this.raw);"boolean"==typeof a[0]&&a.shift();const{stub:s}=r,{skip:n,limit:o}=t;let c;o||n?(delete t.limit,delete t.skip,i.debug(`Retrieving paginated iterator: limit: ${o}/ skip: ${n}`),c=(await this.queryResultPaginated(s,t,o||250,n?.toString())).iterator):(i.debug("Retrieving iterator"),c=await this.queryResult(s,t)),i.debug("Iterator acquired");const l=await this.resultIterator(i,c);return i.debug("returning {0} results",""+(Array.isArray(l)?l.length:1)),l}Statement(){return new pt(this)}async Sequence(t){return new ht(t,this)}async createAll(t,e,r,...i){if(e.length!==r.length)throw new w("Ids and models must have the same length");const{log:a,ctxArgs:n}=this.logCtx(i,this.createAll),o=s.tableName(t);return a.debug(`Creating ${e.length} entries ${o} table`),Promise.all(e.map((e,i)=>this.create(t,e,r[i],...n)))}async updateAll(t,e,r,...i){if(e.length!==r.length)throw new w("Ids and models must have the same length");const{log:a,ctxArgs:n}=this.logCtx(i,this.updateAll),o=s.tableName(t);return a.debug(`Updating ${e.length} entries ${o} table`),Promise.all(e.map((e,i)=>this.update(t,e,r[i],...n)))}prepare(t,...e){const{log:r}=this.logCtx(e,this.prepare),i=s.tableName(t.constructor),a=s.pk(t.constructor),n=s.segregate(t),o=Object.entries(n.model).reduce((e,[r,i])=>{if(void 0===i)return e;const a=s.columnName(t,r);if(this.isReserved(a))throw new w(`Property name ${a} is reserved`);return e[a]=i,e},{});return r.silly(`Preparing record for ${i} table with pk ${t[a]}`),{record:o,id:t[a],transient:n.transient}}revert(t,e,r,i,...a){const{log:n}=this.logCtx(a,this.revert),o={};o[s.pk(e)]=r;const c="string"==typeof e?s.build(o,e):new e(o);n.silly(`Rebuilding model ${c.constructor.name} id ${r}`);const l=Object.keys(c).reduce((e,r)=>(e[r]=t[s.columnName(e,r)],e),c);return i&&(n.debug("re-adding transient properties: "+Object.keys(i).join(", ")),Object.entries(i).forEach(([t,e])=>{if(t in l&&void 0!==l[t])throw new w(`Transient property ${t} already exists on model ${c.constructor.name}. should be impossible`);l[t]=e})),l}createPrefix(t,r,i,...a){const{ctxArgs:n}=this.logCtx(a,this.createPrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,i),[t,r,o,...n]}updatePrefix(t,r,i,...a){const{ctxArgs:n}=this.logCtx(a,this.updatePrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,i),[t,r,o,...n]}createAllPrefix(t,r,i,...a){if(r.length!==i.length)throw new w("Ids and models must have the same length");const s=a.pop(),n=r.map((r,a)=>{const s={};return s[e.TABLE]=t,Object.assign(s,i[a]),s});return[t,r,n,s]}updateAllPrefix(t,r,i,...a){if(r.length!==i.length)throw new w("Ids and models must have the same length");const s=a.pop(),n=r.map((r,a)=>{const s={};return s[e.TABLE]=t,Object.assign(s,i[a]),s});return[t,r,n,s]}parseError(t,e){return Et.parseError(e||t)}static parseError(t,e){return super.parseError(t,e)}static decoration(){super.decoration(),rt.flavouredAs(wt).for(V.CREATED_BY).define(m(Ct),it(V.CREATED_BY,{})).apply(),rt.flavouredAs(wt).for(V.UPDATED_BY).define(b(Ct),it(V.UPDATED_BY,{})).apply(),rt.flavouredAs(wt).for(g.ID).define({decorator:(t,e)=>(r,i)=>at(n(),x(),it(et.key(g.ID,i),t),m(Ot,t,e))(r,i)}).apply(),rt.flavouredAs(wt).for(V.COLUMN).extend(E()).apply(),rt.flavouredAs(wt).for(V.TABLE).extend(t=>k()(t)).apply(),rt.flavouredAs(wt).for(V.ONE_TO_ONE).define({decorator:(t,e,r,i,a)=>{const s={class:t,cascade:e,populate:r};return i&&(s.joinTable=i),a&&(s.name=a),at(st(),H(V.ONE_TO_ONE,s),l([t,String,Number,BigInt]),m(mt,s),A(bt,s),v(xt,s),S(St,s),it(V.ONE_TO_ONE,s))}}).apply(),rt.for(V.ONE_TO_MANY).define({decorator:(t,e,r,i,a)=>{const s={class:t,cascade:e,populate:r};return i&&(s.joinTable=i),a&&(s.name=a),at(st(),H(V.ONE_TO_MANY,s),u([t,String,Number]),m(At,s),A(K,s),v(vt,s),S(St,s),it(V.ONE_TO_MANY,s))}}).apply()}}Et.decoration(),P.setCurrent(wt);class kt extends c{constructor(){super()}deserialize(t){return super.deserialize(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}}class Nt extends N{static{this.adapter=new Et}static{this.serializer=new kt}constructor(t,e){super(t),this.clazz=e,this.initialized=!1,this.repo=I.forModel(e)}async create(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.create);i.info("CONTRACT CREATE, "+a),"string"==typeof e&&(e=this.deserialize(e)),i.info("Creating model: "+JSON.stringify(e));const n=this.getTransientData(t);return i.info("Merging transient data..."),e=s.merge(e,n,this.clazz),this.repo.create(e,...a)}async read(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.read);return i.info(`reading entry with pk ${e} `),this.repo.read(e,...a)}getTransientData(t){const e=t.stub.getTransient();let r={};return e.has(this.repo.tableName)&&(r=JSON.parse(e.get(this.repo.tableName)?.toString("utf8"))),r}async update(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.update);"string"==typeof e&&(e=this.deserialize(e)),i.info("Updating model: "+JSON.stringify(e));const n=this.getTransientData(t);return i.info("Merging transient data..."),e=s.merge(e,n,this.clazz),this.repo.update(e,...a)}async delete(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.delete);return i.info(`deleting entry with pk ${e} `),this.repo.delete(e+"",...a)}async deleteAll(t,e,...r){const{ctxArgs:i}=await this.logCtx([...r,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.deleteAll(e,...i)}async readAll(t,e,...r){const{ctxArgs:i}=await this.logCtx([...r,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.readAll(e,...i)}async updateAll(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.updateAll);return"string"==typeof e&&(e=JSON.parse(e).map(t=>this.deserialize(t)).map(t=>new this.clazz(t))),i.info(`updating ${e.length} entries to the table`),this.repo.updateAll(e,...a)}async raw(t,e,r,...i){const{ctxArgs:a}=await this.logCtx([...i,t],this.raw);return"string"==typeof e&&(e=JSON.parse(e)),Nt.adapter.raw(e,r,...a)}serialize(t){return Nt.serializer.serialize(t)}deserialize(t){return Nt.serializer.deserialize(t)}async init(t){const{log:e}=await this.logCtx([t],this.init);e.info("Running contract 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,...r){const{log:i}=await this.logCtx([...r,t],this.createAll);return"string"==typeof e&&(e=JSON.parse(e).map(t=>this.deserialize(t)).map(t=>new this.clazz(t))),i.info(`adding ${e.length} entries to the table`),this.repo.createAll(e,t,...r)}async logCtx(t,e){return Nt.logCtx.bind(this)(t,e)}static async logCtx(t,e){if(1>t.length)throw new w("No context provided");const r=t.pop();if(r instanceof ct)return{ctx:r,log:r.logger.clear().for(this).for(e),ctxArgs:[...t,r]};if(!(r instanceof R))throw new w("No valid context provided");const i={correlationId:r.stub.getTxID()},a=await Nt.adapter.context((()=>{if("string"==typeof e)return e;switch(e.name){case d.CREATE:case d.READ:case d.UPDATE:case d.DELETE:case h.CREATE_ALL:case h.READ_ALL:case h.UPDATE_ALL:case h.DELETE_ALL:}return e.name})(),i,this.clazz,r),s=this?a.logger.for(this).for(e):a.logger.clear().for(this).for(e);return{ctx:a,log:s,ctxArgs:[...t,a]}}}class Rt extends Nt{constructor(t,e){super(t,e)}async create(t,e){const{log:r}=await this.logCtx([t],this.create);r.info("Creating model: "+e);const i=this.deserialize(e);return r.info("Model deserialized: "+JSON.stringify(i)),this.serialize(await super.create(t,i))}async read(t,e){const{log:r}=await this.logCtx([t],this.read);return r.info("Reading id: "+e),this.serialize(await super.read(t,e))}async update(t,e){const{log:r}=await this.logCtx([t],this.update);return r.info("Updating model: "+e),this.serialize(await super.update(t,e))}async delete(t,e){const{log:r}=await this.logCtx([t],this.delete);return r.info("Deleting id: "+e),this.serialize(await super.delete(t,e))}async deleteAll(t,e){const r=JSON.parse(e),{log:i}=await this.logCtx([t],this.deleteAll);return i.info(`deleting ${r.length} entries from the table`),JSON.stringify((await super.deleteAll(t,r)).map(t=>this.serialize(t)))}async readAll(t,e){const r=JSON.parse(e),{log:i}=await this.logCtx([t],this.readAll);return i.info(`reading ${r.length} entries from the table`),JSON.stringify((await super.readAll(t,r)).map(t=>this.serialize(t)))}async updateAll(t,e){const{log:r}=await this.logCtx([t],this.updateAll),i=JSON.parse(e).map(t=>this.deserialize(t)).map(t=>new this.clazz(t));return r.info(`Updating ${i.length} entries to the table`),JSON.stringify((await super.updateAll(t,i)).map(t=>this.serialize(t)))}async raw(t,e,r){const{ctx:i}=await this.logCtx([t],this.raw),a=JSON.parse(e);return super.raw(i,a,r)}async init(t){await super.init(t)}async healthcheck(t){return JSON.stringify(await super.healthcheck(t))}async createAll(t,e){const{log:r}=await this.logCtx([t],this.createAll),i=JSON.parse(e).map(t=>this.deserialize(t)).map(t=>new this.clazz(t));return r.info(`Adding ${i.length} entries to the table`),JSON.stringify((await super.createAll(t,i)).map(t=>this.serialize(t)))}}nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"create",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"read",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"update",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"delete",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"deleteAll",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"readAll",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"updateAll",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String,Boolean]),ot("design:returntype",Promise)],Rt.prototype,"raw",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Rt.prototype,"init",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Rt.prototype,"healthcheck",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"createAll",null);class zt extends w{constructor(t){super(t,zt.name)}}class Tt extends w{constructor(t){super(t,Tt.name)}}class Pt extends w{constructor(t){super(t,Pt.name)}}class It extends C{constructor(t){super(It.name,t,409)}}function Dt(t,e){const r=t+e;if(t!==r-e||e!==r-t)throw new zt(`Addition overflow: ${t} + ${e}`);return r}function $t(t,e){const r=t-e;if(t!==r+e||e!==t-r)throw new zt(`Subtraction overflow: ${t} - ${e}`);return r}let Ft=class extends B{constructor(t){super(t)}};nt([$({type:"String"}),ot("design:type",String)],Ft.prototype,"name",void 0),nt([Q(),n(),ot("design:type",String)],Ft.prototype,"owner",void 0),nt([Q(),n(),ot("design:type",String)],Ft.prototype,"symbol",void 0),nt([Q(),n(),ot("design:type",Number)],Ft.prototype,"decimals",void 0),Ft=nt([j("erc20_tokens"),o(),ot("design:paramtypes",[Object])],Ft);let jt=class extends B{constructor(t){super(t)}};nt([$({type:"String"}),ot("design:type",String)],jt.prototype,"id",void 0),nt([Q(),n(),ot("design:type",String)],jt.prototype,"token",void 0),nt([Q(),n(),ot("design:type",Number)],jt.prototype,"balance",void 0),nt([Q(),ot("design:type",String)],jt.prototype,"captive",void 0),jt=nt([j("erc20_wallets"),o(),ot("design:paramtypes",[Object])],jt);let Bt=class extends B{constructor(t){super(t)}};function _t(){return function(t,e,r){const i=r.value;return r.value=async function(...t){const r=t[0],a=r.clientIdentity.getID(),s=await this.tokenRepository.select(),n=await s.execute(r);if(0==n.length)throw new y("No tokens avaialble");if(n.length>1)throw new y("To many token available : "+n.length);if(n[0].owner!=a)throw new G(`User not authorized to run ${e} on the token`);return await i.apply(this,t)},r}}var Lt;nt([$({type:"String"}),Q(),n(),ot("design:type",String)],Bt.prototype,"owner",void 0),nt([Q(),n(),ot("design:type",String)],Bt.prototype,"spender",void 0),nt([Q(),n(),ot("design:type",Number)],Bt.prototype,"value",void 0),Bt=nt([j("erc20_allowances"),o(),ot("design:paramtypes",[Object])],Bt),(t=>{t.TRANSFER="Transfer",t.APPROVAL="Approval"})(Lt||(Lt={}));class Jt extends Nt{constructor(t){super(t,jt),Jt.adapter=Jt.adapter||new Et,this.walletRepository=ut.forModel(jt,Jt.adapter.alias),this.tokenRepository=ut.forModel(Ft,Jt.adapter.alias),this.allowanceRepository=ut.forModel(Bt,Jt.adapter.alias)}async TokenName(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].name}async Symbol(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].symbol}async Decimals(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].decimals}async TotalSupply(t){await this.CheckInitialized(t);const e=await this.walletRepository.select(),r=await e.execute(t);if(0==r.length)throw new y(`The token ${this.getName()} does not exist`);let i=0;return r.forEach(t=>{i+=t.balance}),i}async BalanceOf(t,e){return await this.CheckInitialized(t),(await this.walletRepository.read(e,t)).balance}async Transfer(t,e,r){await this.CheckInitialized(t);const{ctx:i}=await this.logCtx([t],this.Transfer),a=i.identity.getID();if(!await this._transfer(a,e,r,i))throw new w("Failed to transfer");return!0}async TransferFrom(t,e,r,i){await this.CheckInitialized(t);const{ctx:a}=await this.logCtx([t],this.BurnFrom),s=a.identity.getID(),n=await this._getAllowance(e,s,a);if(!n||0>n.value)throw new Pt(`spender ${s} has no allowance from ${e}`);const o=n.value;if(i>o)throw new Tt("The spender does not have enough allowance to spend.");const c=$t(o,i),l=Object.assign({},n,{value:c});if(await this.allowanceRepository.update(l,a),!await this._transfer(e,r,i,a))throw new w("Failed to transfer");return!0}async _transfer(t,e,r,i){const a=i.logger;if(t===e)throw new G("cannot transfer to and from same client account");if(0>r)throw new Tt("transfer amount cannot be negative");const s=await this.walletRepository.read(t,i),n=s.balance;if(r>n)throw new Tt(`client account ${t} has insufficient funds.`);let o,c=!1;try{o=await this.walletRepository.read(e,i)}catch(t){if(!(t instanceof C))throw new w(t);if(404!==t.code)throw new w(t.message);o=new jt({id:e,balance:0,token:await this.TokenName(i)}),c=!0}const l=o.balance,u=$t(n,r),p=Dt(l,r),d=Object.assign({},s,{balance:u});await this.walletRepository.update(d,i);const h=Object.assign({},o,{balance:p});c?await this.walletRepository.create(h,i):await this.walletRepository.update(h,i);const g={from:t,to:e,value:r};return this.repo.refresh(Ft,Lt.TRANSFER,"",g,i).catch(t=>a.error("Failed to notify transfer: "+t)),!0}async Approve(t,e,r){await this.CheckInitialized(t);const{ctx:i,ctxArgs:a}=await this.logCtx([t],this.Approve),s=i.identity.getID();let n=await this._getAllowance(s,e,i);if((await this.walletRepository.read(s,...a)).balance<r)throw new Tt(`client account ${s} has insufficient funds.`);n?(n.value=r,await this.allowanceRepository.update(n,...a)):(n=new Bt({owner:s,spender:e,value:r}),await this.allowanceRepository.create(n,...a));const o={owner:s,spender:e,value:r};return this.repo.refresh(Ft,Lt.APPROVAL,"",o,i),!0}async Allowance(t,e,r){await this.CheckInitialized(t);const{ctx:i}=await this.logCtx([t],this.Allowance),a=await this._getAllowance(e,r,i);if(!a)throw new Pt(`spender ${r} has no allowance from ${e}`);return a.value}async _getAllowance(t,e,r){const i=D.and(D.attribute("owner").eq(t),D.attribute("spender").eq(e)),a=await this.allowanceRepository.select().where(i).execute(r);return a?.[0]}async Initialize(t,e){const{ctx:r}=await this.logCtx([t],this.Initialize);if((await this.tokenRepository.select().execute(r)).length>0)throw new G("contract options are already set, client is not authorized to change them");return e.owner=r.identity.getID(),await this.tokenRepository.create(e,r),!0}async CheckInitialized(t){const{ctx:e}=await this.logCtx([t],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(e)).length)throw new It("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(t,e){await this.CheckInitialized(t);const{ctx:r}=await this.logCtx([t],this.Mint),i=r.identity.getID();if(0>=e)throw new O("mint amount must be a positive integer");let a;try{a=await this.walletRepository.read(i,r);const t=Dt(a.balance,e),s=Object.assign({},a,{balance:t});await this.walletRepository.update(s,r)}catch(a){if(!(a instanceof C))throw new w(a);if(404!==a.code)throw new w(a.message);{const a=new jt({id:i,balance:e,token:await this.TokenName(t)});await this.walletRepository.create(a,r)}}const s={from:"0x0",to:i,value:e};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",s,r)}async Burn(t,e){await this.CheckInitialized(t);const{log:r,ctx:i}=await this.logCtx([t],this.Burn),a=i.identity.getID(),s=await this.walletRepository.read(a,i),n=s.balance;if(e>n)throw new Tt("Minter has insufficient funds.");const o=$t(n,e),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,i),r.info(e+" tokens were burned");const l={from:a,to:"0x0",value:e};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",l,i)}async BurnFrom(t,e,r){await this.CheckInitialized(t);const{log:i,ctx:a}=await this.logCtx([t],this.BurnFrom),s=await this.walletRepository.read(e,a),n=s.balance;if(r>n)throw new Tt(e+" has insufficient funds.");const o=$t(n,r),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,a),i.info(`${r} tokens were burned from ${e}`);const l={from:e,to:"0x0",value:r};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",l,a)}async ClientAccountBalance(t){await this.CheckInitialized(t);const e=t.clientIdentity.getID(),r=await this.walletRepository.read(e,t);if(!r)throw new Tt(`The account ${e} does not exist`);return r.balance}async ClientAccountID(t){await this.CheckInitialized(t);const{ctx:e}=await this.logCtx([t],this.ClientAccountID);return e.identity.getID()}}nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"TokenName",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"Symbol",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"Decimals",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"TotalSupply",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Jt.prototype,"BalanceOf",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"Transfer",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"TransferFrom",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"Approve",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String,String]),ot("design:returntype",Promise)],Jt.prototype,"Allowance",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,Ft]),ot("design:returntype",Promise)],Jt.prototype,"Initialize",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"CheckInitialized",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,Number]),ot("design:returntype",Promise)],Jt.prototype,"Mint",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,Number]),ot("design:returntype",Promise)],Jt.prototype,"Burn",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"BurnFrom",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"ClientAccountBalance",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"ClientAccountID",null);const qt=[Jt];class Mt extends X{constructor(t,e,r){super(t,e),this.logger=r?r.logging.getLogger(t):new X(t,e)}log(t,e,r){if(Z[this.config("level")]<Z[t])return;let i;switch(t){case tt.info:i=this.logger.info;break;case tt.verbose:i=this.logger.verbose;break;case tt.debug:i=this.logger.debug;break;case tt.error:i=this.logger.error;break;case tt.silly:i=this.logger.silly;break;default:throw new w("Invalid log level")}i.call(this.logger,this.createLog(t,e,r))}}W.setFactory((t,e,r)=>new Mt(t||Mt.name,e||{},r));const Ut="##VERSION##",Yt="##PACKAGE##";et.registerLibrary(Yt,Ut);export{Mt as ContractLogger,Et as FabricContractAdapter,ct as FabricContractContext,ut as FabricContractRepository,lt as FabricContractRepositoryObservableHandler,ht as FabricContractSequence,Nt as FabricCrudContract,pt as FabricStatement,Yt as PACKAGE_NAME,Rt as SerializedCrudContract,Ut as VERSION,qt as contracts,Ct as createdByOnFabricCreateUpdate,Ot as pkFabricOnCreate};
|
|
1
|
+
import{CouchDBStatement as t,CouchDBKeys as e,CouchDBGroupOperator as r,CouchDBOperator as i,CouchDBAdapter as a}from"@decaf-ts/for-couchdb";import{Model as s,required as n,model as o,JSONSerializer as c,type as l,list as u}from"@decaf-ts/decorator-validation";import{Context as p,OperationKeys as d,BulkCrudOperationKeys as h,DBKeys as g,NotFoundError as y,InternalError as w,SerializationError as f,onCreate as m,onCreateUpdate as b,readonly as x,onUpdate as A,onDelete as v,afterAny as S,BaseError as C,ValidationError as O}from"@decaf-ts/db-decorators";import{Property as E,Object as k,Contract as N,Context as R,Transaction as z}from"fabric-contract-api";import{ObserverHandler as T,Adapter as P,Repository as I,Condition as D,pk as $,index as F,table as j,BaseModel as B,Sequence as _,repositoryFromTypeMetadata as L,cacheModelForPopulate as J,Cascade as q,createOrUpdate as M,getPopulateKey as U,UnsupportedError as Y,PersistenceKeys as V,relation as H,oneToManyOnUpdate as K,column as Q,AuthorizationError as G}from"@decaf-ts/core";import{Logging as W,MiniLogger as X,NumericLogLevels as Z,LogLevel as tt}from"@decaf-ts/logging";import{Metadata as et,Decoration as rt,propMetadata as it,apply as at,prop as st}from"@decaf-ts/decoration";import{__decorate as nt,__metadata as ot}from"tslib";class ct extends p{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 lt extends T{constructor(t=[d.CREATE,d.UPDATE,d.DELETE,h.CREATE_ALL,h.UPDATE_ALL,h.DELETE_ALL]){super(),this.supportedEvents=t}async updateObservers(t,e,r,...i){const{log:a,ctx:s}=P.logCtx(i,this.updateObservers),{stub:n}=s,[o,c]=i,l="string"==typeof t?t:t.name;if(-1!==this.supportedEvents.indexOf(e)){a.debug(`Emitting ${e} event`);const t=((t,e,r)=>{const i=[t,e];return r&&i.push(r),i.join("_")})(l,e,o);n.setEvent(t,Buffer.from(JSON.stringify({id:r})))}else n.setEvent(e,Buffer.from(JSON.stringify(c)))}}class ut extends I{constructor(t,e,r){super(t,e),this.trackedEvents=r}logFor(t){if(t.logger)return t.logger;const e=W.for(this,{correlationId:t.stub.getTxID()},t);return e.info("REPOSITORY LOG_CTX"),e}ObserverHandler(){return new lt}async updateObservers(t,e,r,...i){if(!this.trackedEvents||-1!==this.trackedEvents.indexOf(e))return await super.updateObservers(t,e,r,...i)}}class pt extends t{constructor(t){super(t)}async raw(t,...e){const{ctx:r}=this.logCtx(e,this.raw),i=await this.adapter.raw(t,!0,r),a=s.pk(this.fromSelector),n=et.get(this.fromSelector,et.key(g.ID,a))?.type;return this.selectSelector?i:i.map((t=>this.processRecord(t,a,n,r)))}build(){const t={};t[e.TABLE]={},t[e.TABLE]=s.tableName(this.fromSelector);const a={selector:t};if(this.selectSelector&&(a.fields=this.selectSelector),this.whereCondition){const t=this.parseCondition(D.and(this.whereCondition,D.attribute(e.TABLE).eq(a.selector[e.TABLE]))).selector,i=Object.keys(t);if(1===i.length&&-1!==Object.values(r).indexOf(i[0]))switch(i[0]){case r.AND:t[r.AND]=[...Object.values(t[r.AND]).reduce(((t,e)=>{const i=Object.keys(e);if(1!==i.length)throw Error("Too many keys in query selector. should be one");const a=i[0];return a===r.AND?t.push(...e[a]):t.push(e),t}),[])],a.selector=t;break;case r.OR:{const e={};e[r.AND]=[t,...Object.entries(a.selector).map((([t,e])=>{const r={};return r[t]=e,r}))],a.selector=e;break}default:throw Error("This should be impossible")}else Object.entries(t).forEach((([t,e])=>{a.selector[t],a.selector[t]=e}))}if(this.orderBySelector){a.sort=a.sort||[],a.selector=a.selector||{};const[t,e]=this.orderBySelector,r={};r[t]=e,a.sort.push(r),a.selector[t]||(a.selector[t]={},a.selector[t][i.BIGGER]=null)}return this.limitSelector&&(a.limit=this.limitSelector),this.offsetSelector&&(a.skip=this.offsetSelector),a}}let dt=class extends B{constructor(t){super(t)}};nt([$(),ot("design:type",String)],dt.prototype,"id",void 0),nt([n(),F(),ot("design:type",Object)],dt.prototype,"current",void 0),dt=nt([j(e.SEQUENCE),o(),ot("design:paramtypes",[Object])],dt);class ht extends _{constructor(t,e){super(t,e),this.repo=I.forModel(dt,e.alias)}async current(...t){const e=(await p.args(d.READ,dt,t,this.adapter)).context,{name:r,startWith:i}=this.options;try{const t=await this.repo.read(r,e);return this.parse(t.current)}catch(t){if(t instanceof y){if(void 0===i)throw new w("Starting value is not defined for a non existing sequence");try{return this.parse(i)}catch(t){throw new w(`Failed to parse initial value for sequence ${i}: ${t}`)}}throw new w(`Failed to retrieve current value for sequence ${r}: ${t}`)}}async increment(t,e,r){const{type:i,incrementBy:a,name:s}=this.options;let n;const o=e||a;if(o%a!=0)throw new w("Value to increment does not consider the incrementBy setting: "+a);switch(i){case"Number":n=this.parse(t)+o;break;case"BigInt":n=this.parse(t)+BigInt(o);break;default:throw new w("Should never happen")}let c;try{c=await this.repo.update(new dt({id:s,current:n}),r)}catch(t){if(!(t instanceof y))throw t;c=await this.repo.create(new dt({id:s,current:n}),r)}return c.current}async next(...t){const e=await p.args(d.UPDATE,dt,t,this.adapter),{context:r,args:i}=e,a=await this.current(...i);return this.increment(a,void 0,r)}async range(t,...e){const r=await p.args(d.UPDATE,dt,e,this.adapter),{context:i,args:a}=r,s=await this.current(...a),n=this.parse(this.options.incrementBy),o=await this.increment(s,this.parse(t)*n,i),c=[];for(let e=1;t>=e;e++)c.push(s+n*this.parse(e));if(c[c.length-1]!==o&&"String"!==this.options.type)throw new w("Miscalculation of range");return c}}var gt,yt;(t=>{t.PRIVATE="private",t.SHARED="shared",t.FABRIC="fabric.",t.OWNEDBY="owned-by"})(gt||(gt={})),(t=>{t.X509="X.509"})(yt||(yt={}));const wt="hlf-fabric";class ft extends c{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)}}async function mt(t,e,r,i){const a=i[r];if(!a)return;if("object"!=typeof a){const e=L(i,r,this.adapter.alias),s=await e.read(a,t);return await J(t,i,r,a,s),void(i[r]=a)}e.class="string"==typeof e.class?e.class:e.class().name;const n=s.get(e.class);if(!n)throw new w("Could not find model "+e.class);const o=I.forModel(n,this.adapter.alias),c=await o.create(a,t),l=s.pk(c);await J(t,i,r,c[l],c),i[r]=c[l]}async function bt(t,e,r,i){const a=i[r];if(!a)return;if(e.cascade.update!==q.CASCADE)return;if("object"!=typeof a){const e=L(i,r,this.adapter.alias),s=await e.read(a,t);return await J(t,i,r,a,s),void(i[r]=a)}const n=await M(i[r],t,this.adapter.alias),o=s.pk(n);await J(t,i,r,n[o],n),i[r]=n[o]}async function xt(t,e,r,i){const a=i[r];if(!a)return;if(e.cascade.update!==q.CASCADE)return;const n=L(i,r,this.adapter.alias);let o;o=a instanceof s?await n.delete(i[r][s.pk(n.class)],t):await n.delete(i[r],t),await J(t,i,r,o[s.pk(n.class)],o)}async function At(t,e,r,i){const a=i[r];if(!a||!a.length)return;const n=typeof a[0];if(!a.every((t=>typeof t===n)))throw new w(`Invalid operation. All elements of property ${r} must match the same type.`);const o=new Set([...a]);if("object"!==n){const e=L(i,r,this.adapter.alias);for(const a of o){const s=await e.read(a,t);await J(t,i,r,a,s)}return void(i[r]=[...o])}const c=s.pk(a[0]),l=new Set;for(const e of a){const a=await M(e,t,this.adapter.alias);await J(t,i,r,a[c],a),l.add(a[c])}i[r]=[...l]}async function vt(t,e,r,i){if(e.cascade.delete!==q.CASCADE)return;const a=i[r];if(!a||!a.length)return;const n=typeof a[0];if(!a.every((t=>typeof t===n)))throw new w(`Invalid operation. All elements of property ${r} must match the same type.`);const o="object"===n,c=o?I.forModel(a[0],this.adapter.alias):L(i,r,this.adapter.alias),l=new Set([...o?a.map((t=>t[s.pk(this.class)])):a]);for(const e of l.values()){const a=await c.delete(e,t);await J(t,i,r,e,a)}i[r]=[...l]}async function St(t,e,r,i){if(!e.populate)return;const a=i[r],s=Array.isArray(a);if(void 0===a||s&&0===a.length)return;const n=await(async(e,r,i,a,s)=>{let n,o;const c=[];for(const l of a){n=U(r.constructor.name,i,l);try{o=await e.get(n)}catch(e){const a=L(r,i,s);if(!a)throw new w("Could not find repo");o=await a.read(l,t)}c.push(o)}return c})(t,i,r,s?a:[a],this.adapter.alias);i[r]=s?n:n[0]}async function Ct(t,e,r,i){try{const e=t.get("identity");i[r]=e.getID()}catch(t){throw new Y("No User found in context. Please provide a user in the context")}}async function Ot(t,e,r,i){if(!e.type||i[r])return;let a;e.name||(e.name=s.sequenceName(i,"pk"));try{a=await this.adapter.Sequence(e)}catch(t){throw new w(`Failed to instantiate Sequence ${e.name}: ${t}`)}const n=await a.next(t);Object.defineProperty(i,r,{enumerable:!0,writable:!1,configurable:!0,value:n})}class Et extends a{getClient(){throw new Y("Client is not supported in Fabric contracts")}static{this.textDecoder=new TextDecoder("utf8")}static{this.serializer=new ft}repository(){return ut}constructor(t,e){super(t,wt,e),this.Context=ct}for(t,...e){return super.for(t,...e)}async create(t,e,r,...i){const{ctx:a,log:n}=this.logCtx(i,this.create);n.info("in ADAPTER create with args "+i);const{stub:o}=a,c=s.tableName(t);try{n.info(`adding entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);r=await this.putState(t,r,a)}catch(t){throw this.parseError(t)}return r}async read(t,e,...r){const{ctx:i,log:a}=this.logCtx(r,this.read);a.info("in ADAPTER read with args "+r);const{stub:n}=i,o=s.tableName(t);let c;try{const t=n.createCompositeKey(o,[e+""]);c=await this.readState(t,i)}catch(t){throw this.parseError(t)}return c}async update(t,e,r,...i){const{ctx:a,log:n}=this.logCtx(i,this.update),{stub:o}=a,c=s.tableName(t);try{n.verbose(`updating entry to ${c} table with pk ${e}`);const t=o.createCompositeKey(c,[e+""]);r=await this.putState(t,r,a)}catch(t){throw this.parseError(t)}return r}async delete(t,e,...r){const{ctx:i,log:a,ctxArgs:n}=this.logCtx(r,this.delete),{stub:o}=i,c=s.tableName(t);let l;try{const r=o.createCompositeKey(c,[e+""]);l=await this.read(t,e,...n),a.verbose(`deleting entry with pk ${e} from ${c} table`),await this.deleteState(r,i)}catch(t){throw this.parseError(t)}return l}async deleteState(t,e){const{stub:r,logger:i}=e,a=i.for(this.deleteState);await r.deleteState(t),a.trace("Deleted state for id "+t)}forPrivate(t){const e=[this.putState,this.readState,this.deleteState,this.queryResult,this.queryResultPaginated].map((t=>t.name));return new Proxy(this,{get:(r,i,a)=>e.includes(i)?new Proxy(r[i],{async apply(e,r,a){switch(i){case"putState":{const[e,r,i]=a;return await e.putPrivateData(t,r.toString(),i),i}case"deleteState":{const[e,r]=a;return e.deletePrivateData(t,r)}case"readState":{const[e,r]=a;return e.getPrivateData(t,r)}case"queryResult":{const[e,r]=a;return e.getPrivateDataQueryResult(t,r)}case"queryResultPaginated":{const[e,r,i,s]=a,n=await e.getPrivateDataQueryResult(t,r),o=[];let c=0,l=!s,u=null;for(;;){const t=await n.next();if(t.value&&t.value.value.toString()){const e=t.value.key,r=t.value.value.toString("utf8");if(!l){e===s?.toString()&&(l=!0);continue}if(o.push({Key:e,Record:JSON.parse(r)}),u=e,c++,c>=i)return await n.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:u}}}if(t.done)return await n.close(),{iterator:o,metadata:{fetchedRecordsCount:o.length,bookmark:""}}}}default:throw new w("Unsupported method override "+i)}}}):Reflect.get(r,i,a)})}async putState(t,e,r){let i;const{stub:a,logger:s}=r,n=s.for(this.putState);try{i=Buffer.from(Et.serializer.serialize(e))}catch(e){throw new f(`Failed to serialize record with id ${t}: ${e}`)}return await a.putState(t.toString(),i),n.silly("state stored under id "+t),e}async readState(t,e){let r;const{stub:i,logger:a}=e,s=a.for(this.readState),n=(await i.getState(t)).toString();if(!n)throw new y(`Record with id ${t} not found`);s.silly("Read state for id "+t);try{r=Et.serializer.deserialize(n.toString())}catch(t){throw new f("Failed to parse record: "+t)}return r}async queryResult(t,e,...r){return await t.getQueryResult(JSON.stringify(e))}async queryResultPaginated(t,e,r=250,i,...a){return await t.getQueryResultWithPagination(JSON.stringify(e),r,i?.toString())}mergeModels(t){const e=t=>Object.entries(t).reduce(((t,[e,r])=>(void 0!==r&&(t[e]=r),t)),{});let r=t.pop();for(const i of t)r=Object.assign({},e(r),e(i));return r}decode(t){return Et.textDecoder.decode(t)}async flags(t,e,r,i,...a){const s=t=>{const e=t??this.log.for(this.flags);return"function"!=typeof e.clear&&(e.clear=()=>e),"function"!=typeof e.for&&(e.for=()=>e),e},n=i instanceof ct?i.accumulate({logger:s(i.logger)}):(new ct).accumulate({stub:i.stub,identity:i.clientIdentity,logger:s()}),o=Object.assign({},r,{logger:n.logger});return Object.assign(await super.flags(t,e,o,...a),{stub:i.stub,identity:i.clientIdentity??n.identity,logger:n.logger,correlationId:i.stub.getTxID()})}index(t){return Promise.resolve(void 0)}async resultIterator(t,e,r=!1){const i=[];let a=await e.next();for(;!a.done;){if(a.value&&a.value.value.toString()){let e={};if(t.debug(a.value.value.toString("utf8")),r){e.TxId=a.value.txId,e.Timestamp=a.value.timestamp;try{e.Value=JSON.parse(a.value.value.toString("utf8"))}catch(r){t.error(r),e.Value=a.value.value.toString("utf8")}}else try{e=JSON.parse(a.value.value.toString("utf8"))}catch(r){t.error(r),e=a.value.value.toString("utf8")}i.push(e)}a=await e.next()}return t.debug(`Closing iterator after ${i.length} results`),e.close(),i}async raw(t,...e){const{ctx:r,log:i,ctxArgs:a}=this.logCtx(e,this.raw);"boolean"==typeof a[0]&&a.shift();const{stub:s}=r,{skip:n,limit:o}=t;let c;o||n?(delete t.limit,delete t.skip,i.debug(`Retrieving paginated iterator: limit: ${o}/ skip: ${n}`),c=(await this.queryResultPaginated(s,t,o||250,n?.toString())).iterator):(i.debug("Retrieving iterator"),c=await this.queryResult(s,t)),i.debug("Iterator acquired");const l=await this.resultIterator(i,c);return i.debug("returning {0} results",""+(Array.isArray(l)?l.length:1)),l}Statement(){return new pt(this)}async Sequence(t){return new ht(t,this)}async createAll(t,e,r,...i){if(e.length!==r.length)throw new w("Ids and models must have the same length");const{log:a,ctxArgs:n}=this.logCtx(i,this.createAll),o=s.tableName(t);return a.debug(`Creating ${e.length} entries ${o} table`),Promise.all(e.map(((e,i)=>this.create(t,e,r[i],...n))))}async updateAll(t,e,r,...i){if(e.length!==r.length)throw new w("Ids and models must have the same length");const{log:a,ctxArgs:n}=this.logCtx(i,this.updateAll),o=s.tableName(t);return a.debug(`Updating ${e.length} entries ${o} table`),Promise.all(e.map(((e,i)=>this.update(t,e,r[i],...n))))}prepare(t,...e){const{log:r}=this.logCtx(e,this.prepare),i=s.tableName(t.constructor),a=s.pk(t.constructor),n=s.segregate(t),o=Object.entries(n.model).reduce(((e,[r,i])=>{if(void 0===i)return e;const a=s.columnName(t,r);if(this.isReserved(a))throw new w(`Property name ${a} is reserved`);return e[a]=i,e}),{});return r.silly(`Preparing record for ${i} table with pk ${t[a]}`),{record:o,id:t[a],transient:n.transient}}revert(t,e,r,i,...a){const{log:n}=this.logCtx(a,this.revert),o={};o[s.pk(e)]=r;const c="string"==typeof e?s.build(o,e):new e(o);n.silly(`Rebuilding model ${c.constructor.name} id ${r}`);const l=Object.keys(c).reduce(((e,r)=>(e[r]=t[s.columnName(e,r)],e)),c);return i&&(n.debug("re-adding transient properties: "+Object.keys(i).join(", ")),Object.entries(i).forEach((([t,e])=>{if(t in l&&void 0!==l[t])throw new w(`Transient property ${t} already exists on model ${c.constructor.name}. should be impossible`);l[t]=e}))),l}createPrefix(t,r,i,...a){const{ctxArgs:n}=this.logCtx(a,this.createPrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,i),[t,r,o,...n]}updatePrefix(t,r,i,...a){const{ctxArgs:n}=this.logCtx(a,this.updatePrefix),o={};return o[e.TABLE]=s.tableName(t),Object.assign(o,i),[t,r,o,...n]}createAllPrefix(t,r,i,...a){if(r.length!==i.length)throw new w("Ids and models must have the same length");const s=a.pop(),n=r.map(((r,a)=>{const s={};return s[e.TABLE]=t,Object.assign(s,i[a]),s}));return[t,r,n,s]}updateAllPrefix(t,r,i,...a){if(r.length!==i.length)throw new w("Ids and models must have the same length");const s=a.pop(),n=r.map(((r,a)=>{const s={};return s[e.TABLE]=t,Object.assign(s,i[a]),s}));return[t,r,n,s]}parseError(t,e){return Et.parseError(e||t)}static parseError(t,e){return super.parseError(t,e)}static decoration(){super.decoration(),rt.flavouredAs(wt).for(V.CREATED_BY).define(m(Ct),it(V.CREATED_BY,{})).apply(),rt.flavouredAs(wt).for(V.UPDATED_BY).define(b(Ct),it(V.UPDATED_BY,{})).apply(),rt.flavouredAs(wt).for(g.ID).define({decorator:(t,e)=>(r,i)=>at(n(),x(),it(et.key(g.ID,i),t),m(Ot,t,e))(r,i)}).apply(),rt.flavouredAs(wt).for(V.COLUMN).extend(E()).apply(),rt.flavouredAs(wt).for(V.TABLE).extend((t=>k()(t))).apply(),rt.flavouredAs(wt).for(V.ONE_TO_ONE).define({decorator:(t,e,r,i,a)=>{const s={class:t,cascade:e,populate:r};return i&&(s.joinTable=i),a&&(s.name=a),at(st(),H(V.ONE_TO_ONE,s),l([t,String,Number,BigInt]),m(mt,s),A(bt,s),v(xt,s),S(St,s),it(V.ONE_TO_ONE,s))}}).apply(),rt.for(V.ONE_TO_MANY).define({decorator:(t,e,r,i,a)=>{const s={class:t,cascade:e,populate:r};return i&&(s.joinTable=i),a&&(s.name=a),at(st(),H(V.ONE_TO_MANY,s),u([t,String,Number]),m(At,s),A(K,s),v(vt,s),S(St,s),it(V.ONE_TO_MANY,s))}}).apply()}}Et.decoration(),P.setCurrent(wt);class kt extends c{constructor(){super()}deserialize(t){return super.deserialize(t)}serialize(t){return require("json-stringify-deterministic")(require("sort-keys-recursive")(this.preSerialize(t)))}}class Nt extends N{static{this.adapter=new Et}static{this.serializer=new kt}constructor(t,e){super(t),this.clazz=e,this.initialized=!1,this.repo=I.forModel(e)}async create(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.create);i.info("CONTRACT CREATE, "+a),"string"==typeof e&&(e=this.deserialize(e)),i.info("Creating model: "+JSON.stringify(e));const n=this.getTransientData(t);return i.info("Merging transient data..."),e=s.merge(e,n,this.clazz),this.repo.create(e,...a)}async read(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.read);return i.info(`reading entry with pk ${e} `),this.repo.read(e,...a)}getTransientData(t){const e=t.stub.getTransient();let r={};return e.has(this.repo.tableName)&&(r=JSON.parse(e.get(this.repo.tableName)?.toString("utf8"))),r}async update(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.update);"string"==typeof e&&(e=this.deserialize(e)),i.info("Updating model: "+JSON.stringify(e));const n=this.getTransientData(t);return i.info("Merging transient data..."),e=s.merge(e,n,this.clazz),this.repo.update(e,...a)}async delete(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.delete);return i.info(`deleting entry with pk ${e} `),this.repo.delete(e+"",...a)}async deleteAll(t,e,...r){const{ctxArgs:i}=await this.logCtx([...r,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.deleteAll(e,...i)}async readAll(t,e,...r){const{ctxArgs:i}=await this.logCtx([...r,t],this.readAll);return"string"==typeof e&&(e=JSON.parse(e)),this.repo.readAll(e,...i)}async updateAll(t,e,...r){const{log:i,ctxArgs:a}=await this.logCtx([...r,t],this.updateAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),i.info(`updating ${e.length} entries to the table`),this.repo.updateAll(e,...a)}async raw(t,e,r,...i){const{ctxArgs:a}=await this.logCtx([...i,t],this.raw);return"string"==typeof e&&(e=JSON.parse(e)),Nt.adapter.raw(e,r,...a)}serialize(t){return Nt.serializer.serialize(t)}deserialize(t){return Nt.serializer.deserialize(t)}async init(t){const{log:e}=await this.logCtx([t],this.init);e.info("Running contract 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,...r){const{log:i}=await this.logCtx([...r,t],this.createAll);return"string"==typeof e&&(e=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)))),i.info(`adding ${e.length} entries to the table`),this.repo.createAll(e,t,...r)}async logCtx(t,e){return Nt.logCtx.bind(this)(t,e)}static async logCtx(t,e){if(1>t.length)throw new w("No context provided");const r=t.pop();if(r instanceof ct)return{ctx:r,log:r.logger.clear().for(this).for(e),ctxArgs:[...t,r]};if(!(r instanceof R))throw new w("No valid context provided");const i={correlationId:r.stub.getTxID()},a=await Nt.adapter.context((()=>{if("string"==typeof e)return e;switch(e.name){case d.CREATE:case d.READ:case d.UPDATE:case d.DELETE:case h.CREATE_ALL:case h.READ_ALL:case h.UPDATE_ALL:case h.DELETE_ALL:}return e.name})(),i,this.clazz,r),s=this?a.logger.for(this).for(e):a.logger.clear().for(this).for(e);return{ctx:a,log:s,ctxArgs:[...t,a]}}}class Rt extends Nt{constructor(t,e){super(t,e)}async create(t,e){const{log:r}=await this.logCtx([t],this.create);r.info("Creating model: "+e);const i=this.deserialize(e);return r.info("Model deserialized: "+JSON.stringify(i)),this.serialize(await super.create(t,i))}async read(t,e){const{log:r}=await this.logCtx([t],this.read);return r.info("Reading id: "+e),this.serialize(await super.read(t,e))}async update(t,e){const{log:r}=await this.logCtx([t],this.update);return r.info("Updating model: "+e),this.serialize(await super.update(t,e))}async delete(t,e){const{log:r}=await this.logCtx([t],this.delete);return r.info("Deleting id: "+e),this.serialize(await super.delete(t,e))}async deleteAll(t,e){const r=JSON.parse(e),{log:i}=await this.logCtx([t],this.deleteAll);return i.info(`deleting ${r.length} entries from the table`),JSON.stringify((await super.deleteAll(t,r)).map((t=>this.serialize(t))))}async readAll(t,e){const r=JSON.parse(e),{log:i}=await this.logCtx([t],this.readAll);return i.info(`reading ${r.length} entries from the table`),JSON.stringify((await super.readAll(t,r)).map((t=>this.serialize(t))))}async updateAll(t,e){const{log:r}=await this.logCtx([t],this.updateAll),i=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return r.info(`Updating ${i.length} entries to the table`),JSON.stringify((await super.updateAll(t,i)).map((t=>this.serialize(t))))}async raw(t,e,r){const{ctx:i}=await this.logCtx([t],this.raw),a=JSON.parse(e);return super.raw(i,a,r)}async init(t){await super.init(t)}async healthcheck(t){return JSON.stringify(await super.healthcheck(t))}async createAll(t,e){const{log:r}=await this.logCtx([t],this.createAll),i=JSON.parse(e).map((t=>this.deserialize(t))).map((t=>new this.clazz(t)));return r.info(`Adding ${i.length} entries to the table`),JSON.stringify((await super.createAll(t,i)).map((t=>this.serialize(t))))}}nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"create",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"read",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"update",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"delete",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"deleteAll",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"readAll",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"updateAll",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String,Boolean]),ot("design:returntype",Promise)],Rt.prototype,"raw",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Rt.prototype,"init",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Rt.prototype,"healthcheck",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Rt.prototype,"createAll",null);class zt extends w{constructor(t){super(t,zt.name)}}class Tt extends w{constructor(t){super(t,Tt.name)}}class Pt extends w{constructor(t){super(t,Pt.name)}}class It extends C{constructor(t){super(It.name,t,409)}}function Dt(t,e){const r=t+e;if(t!==r-e||e!==r-t)throw new zt(`Addition overflow: ${t} + ${e}`);return r}function $t(t,e){const r=t-e;if(t!==r+e||e!==t-r)throw new zt(`Subtraction overflow: ${t} - ${e}`);return r}let Ft=class extends B{constructor(t){super(t)}};nt([$({type:"String"}),ot("design:type",String)],Ft.prototype,"name",void 0),nt([Q(),n(),ot("design:type",String)],Ft.prototype,"owner",void 0),nt([Q(),n(),ot("design:type",String)],Ft.prototype,"symbol",void 0),nt([Q(),n(),ot("design:type",Number)],Ft.prototype,"decimals",void 0),Ft=nt([j("erc20_tokens"),o(),ot("design:paramtypes",[Object])],Ft);let jt=class extends B{constructor(t){super(t)}};nt([$({type:"String"}),ot("design:type",String)],jt.prototype,"id",void 0),nt([Q(),n(),ot("design:type",String)],jt.prototype,"token",void 0),nt([Q(),n(),ot("design:type",Number)],jt.prototype,"balance",void 0),nt([Q(),ot("design:type",String)],jt.prototype,"captive",void 0),jt=nt([j("erc20_wallets"),o(),ot("design:paramtypes",[Object])],jt);let Bt=class extends B{constructor(t){super(t)}};function _t(){return function(t,e,r){const i=r.value;return r.value=async function(...t){const r=t[0],a=r.clientIdentity.getID(),s=await this.tokenRepository.select(),n=await s.execute(r);if(0==n.length)throw new y("No tokens avaialble");if(n.length>1)throw new y("To many token available : "+n.length);if(n[0].owner!=a)throw new G(`User not authorized to run ${e} on the token`);return await i.apply(this,t)},r}}var Lt;nt([$({type:"String"}),Q(),n(),ot("design:type",String)],Bt.prototype,"owner",void 0),nt([Q(),n(),ot("design:type",String)],Bt.prototype,"spender",void 0),nt([Q(),n(),ot("design:type",Number)],Bt.prototype,"value",void 0),Bt=nt([j("erc20_allowances"),o(),ot("design:paramtypes",[Object])],Bt),(t=>{t.TRANSFER="Transfer",t.APPROVAL="Approval"})(Lt||(Lt={}));class Jt extends Nt{constructor(t){super(t,jt),Jt.adapter=Jt.adapter||new Et,this.walletRepository=ut.forModel(jt,Jt.adapter.alias),this.tokenRepository=ut.forModel(Ft,Jt.adapter.alias),this.allowanceRepository=ut.forModel(Bt,Jt.adapter.alias)}async TokenName(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].name}async Symbol(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].symbol}async Decimals(t){await this.CheckInitialized(t);const e=await this.tokenRepository.select();return(await e.execute(t))[0].decimals}async TotalSupply(t){await this.CheckInitialized(t);const e=await this.walletRepository.select(),r=await e.execute(t);if(0==r.length)throw new y(`The token ${this.getName()} does not exist`);let i=0;return r.forEach((t=>{i+=t.balance})),i}async BalanceOf(t,e){return await this.CheckInitialized(t),(await this.walletRepository.read(e,t)).balance}async Transfer(t,e,r){await this.CheckInitialized(t);const{ctx:i}=await this.logCtx([t],this.Transfer),a=i.identity.getID();if(!await this._transfer(a,e,r,i))throw new w("Failed to transfer");return!0}async TransferFrom(t,e,r,i){await this.CheckInitialized(t);const{ctx:a}=await this.logCtx([t],this.BurnFrom),s=a.identity.getID(),n=await this._getAllowance(e,s,a);if(!n||0>n.value)throw new Pt(`spender ${s} has no allowance from ${e}`);const o=n.value;if(i>o)throw new Tt("The spender does not have enough allowance to spend.");const c=$t(o,i),l=Object.assign({},n,{value:c});if(await this.allowanceRepository.update(l,a),!await this._transfer(e,r,i,a))throw new w("Failed to transfer");return!0}async _transfer(t,e,r,i){const a=i.logger;if(t===e)throw new G("cannot transfer to and from same client account");if(0>r)throw new Tt("transfer amount cannot be negative");const s=await this.walletRepository.read(t,i),n=s.balance;if(r>n)throw new Tt(`client account ${t} has insufficient funds.`);let o,c=!1;try{o=await this.walletRepository.read(e,i)}catch(t){if(!(t instanceof C))throw new w(t);if(404!==t.code)throw new w(t.message);o=new jt({id:e,balance:0,token:await this.TokenName(i)}),c=!0}const l=o.balance,u=$t(n,r),p=Dt(l,r),d=Object.assign({},s,{balance:u});await this.walletRepository.update(d,i);const h=Object.assign({},o,{balance:p});c?await this.walletRepository.create(h,i):await this.walletRepository.update(h,i);const g={from:t,to:e,value:r};return this.repo.refresh(Ft,Lt.TRANSFER,"",g,i).catch((t=>a.error("Failed to notify transfer: "+t))),!0}async Approve(t,e,r){await this.CheckInitialized(t);const{ctx:i,ctxArgs:a}=await this.logCtx([t],this.Approve),s=i.identity.getID();let n=await this._getAllowance(s,e,i);if((await this.walletRepository.read(s,...a)).balance<r)throw new Tt(`client account ${s} has insufficient funds.`);n?(n.value=r,await this.allowanceRepository.update(n,...a)):(n=new Bt({owner:s,spender:e,value:r}),await this.allowanceRepository.create(n,...a));const o={owner:s,spender:e,value:r};return this.repo.refresh(Ft,Lt.APPROVAL,"",o,i),!0}async Allowance(t,e,r){await this.CheckInitialized(t);const{ctx:i}=await this.logCtx([t],this.Allowance),a=await this._getAllowance(e,r,i);if(!a)throw new Pt(`spender ${r} has no allowance from ${e}`);return a.value}async _getAllowance(t,e,r){const i=D.and(D.attribute("owner").eq(t),D.attribute("spender").eq(e)),a=await this.allowanceRepository.select().where(i).execute(r);return a?.[0]}async Initialize(t,e){const{ctx:r}=await this.logCtx([t],this.Initialize);if((await this.tokenRepository.select().execute(r)).length>0)throw new G("contract options are already set, client is not authorized to change them");return e.owner=r.identity.getID(),await this.tokenRepository.create(e,r),!0}async CheckInitialized(t){const{ctx:e}=await this.logCtx([t],this.CheckInitialized);if(0==(await this.tokenRepository.select().execute(e)).length)throw new It("contract options need to be set before calling any function, call Initialize() to initialize contract")}async Mint(t,e){await this.CheckInitialized(t);const{ctx:r}=await this.logCtx([t],this.Mint),i=r.identity.getID();if(0>=e)throw new O("mint amount must be a positive integer");let a;try{a=await this.walletRepository.read(i,r);const t=Dt(a.balance,e),s=Object.assign({},a,{balance:t});await this.walletRepository.update(s,r)}catch(a){if(!(a instanceof C))throw new w(a);if(404!==a.code)throw new w(a.message);{const a=new jt({id:i,balance:e,token:await this.TokenName(t)});await this.walletRepository.create(a,r)}}const s={from:"0x0",to:i,value:e};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",s,r)}async Burn(t,e){await this.CheckInitialized(t);const{log:r,ctx:i}=await this.logCtx([t],this.Burn),a=i.identity.getID(),s=await this.walletRepository.read(a,i),n=s.balance;if(e>n)throw new Tt("Minter has insufficient funds.");const o=$t(n,e),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,i),r.info(e+" tokens were burned");const l={from:a,to:"0x0",value:e};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",l,i)}async BurnFrom(t,e,r){await this.CheckInitialized(t);const{log:i,ctx:a}=await this.logCtx([t],this.BurnFrom),s=await this.walletRepository.read(e,a),n=s.balance;if(r>n)throw new Tt(e+" has insufficient funds.");const o=$t(n,r),c=Object.assign({},s,{balance:o});await this.walletRepository.update(c,a),i.info(`${r} tokens were burned from ${e}`);const l={from:e,to:"0x0",value:r};this.repo.ObserverHandler().updateObservers(Ft,Lt.TRANSFER,"",l,a)}async ClientAccountBalance(t){await this.CheckInitialized(t);const e=t.clientIdentity.getID(),r=await this.walletRepository.read(e,t);if(!r)throw new Tt(`The account ${e} does not exist`);return r.balance}async ClientAccountID(t){await this.CheckInitialized(t);const{ctx:e}=await this.logCtx([t],this.ClientAccountID);return e.identity.getID()}}nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"TokenName",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"Symbol",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"Decimals",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"TotalSupply",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String]),ot("design:returntype",Promise)],Jt.prototype,"BalanceOf",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"Transfer",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"TransferFrom",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"Approve",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R,String,String]),ot("design:returntype",Promise)],Jt.prototype,"Allowance",null),nt([z(),ot("design:type",Function),ot("design:paramtypes",[R,Ft]),ot("design:returntype",Promise)],Jt.prototype,"Initialize",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"CheckInitialized",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,Number]),ot("design:returntype",Promise)],Jt.prototype,"Mint",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,Number]),ot("design:returntype",Promise)],Jt.prototype,"Burn",null),nt([_t(),z(),ot("design:type",Function),ot("design:paramtypes",[R,String,Number]),ot("design:returntype",Promise)],Jt.prototype,"BurnFrom",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"ClientAccountBalance",null),nt([z(!1),ot("design:type",Function),ot("design:paramtypes",[R]),ot("design:returntype",Promise)],Jt.prototype,"ClientAccountID",null);const qt=[Jt];class Mt extends X{constructor(t,e,r){super(t,e),this.logger=r?r.logging.getLogger(t):new X(t,e)}log(t,e,r){if(Z[this.config("level")]<Z[t])return;let i;switch(t){case tt.info:i=this.logger.info;break;case tt.verbose:i=this.logger.verbose;break;case tt.debug:i=this.logger.debug;break;case tt.error:i=this.logger.error;break;case tt.silly:i=this.logger.silly;break;default:throw new w("Invalid log level")}i.call(this.logger,this.createLog(t,e,r))}}W.setFactory(((t,e,r)=>new Mt(t||Mt.name,e||{},r)));const Ut="##VERSION##",Yt="##PACKAGE##";et.registerLibrary(Yt,Ut);export{Mt as ContractLogger,Et as FabricContractAdapter,ct as FabricContractContext,ut as FabricContractRepository,lt as FabricContractRepositoryObservableHandler,ht as FabricContractSequence,Nt as FabricCrudContract,pt as FabricStatement,Yt as PACKAGE_NAME,Rt as SerializedCrudContract,Ut as VERSION,qt as contracts,Ct as createdByOnFabricCreateUpdate,Ot 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/model/Sequence.ts","../src/contracts/FabricContractSequence.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/FabricConstruction.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/contracts/logging.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,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","logFor","logger","l","Logging","for","correlationId","getTxID","info","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","Model","pk","fromSelector","type","Metadata","key","DBKeys","ID","selectSelector","map","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","Object","keys","length","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","SequenceModel","BaseModel","seq","__decorate","prototype","required","index","SEQUENCE","model","FabricContractSequence","Sequence","options","repo","forModel","alias","current","READ","context","startWith","sequence","read","parse","e","NotFoundError","InternalError","increment","count","incrementBy","next","toIncrementBy","BigInt","update","create","argz","contextArgs","undefined","range","i","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","serialize","require","sortKeysRecursive","preSerialize","assign","async","oneToOneOnCreate","data","propertyValue","innerRepo","repositoryFromTypeMetadata","cacheModelForPopulate","class","created","oneToOneOnUpdate","cascade","Cascade","CASCADE","updated","createOrUpdate","oneToOneOnDelete","deleted","delete","oneToManyOnCreate","propertyValues","arrayType","every","item","uniqueValues","Set","pkName","m","record","add","oneToManyOnDelete","isInstantiated","v","populate","nested","isArr","Array","isArray","res","c","propName","propKeyValues","cacheKey","proKeyValue","getPopulateKey","fetchPopulateValues","createdByOnFabricCreateUpdate","user","getID","UnsupportedError","pkFabricOnCreate","sequenceName","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","config","composedKey","createCompositeKey","String","putState","parseError","readState","verbose","ctxArgs","deleteState","trace","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","silly","getState","getQueryResult","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","ensureLogger","base","clear","fabricCtx","accumulate","clientIdentity","baseFlags","models","Promise","resolve","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","error","shift","Statement","createAll","tableLabel","all","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","transient","revert","obj","ob","createPrefix","updatePrefix","createAllPrefix","ids","records","updateAllPrefix","reason","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","decorator","groupsort","attr","readonly","COLUMN","extend","FabricProperty","FabricObject","ONE_TO_ONE","joinColumnOpts","fk","meta","joinTable","relation","Number","onUpdate","onDelete","afterAny","ONE_TO_MANY","joinTableOpts","list","oneToManyOnUpdate","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","docsOnly","init","healthcheck","method","bind","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","parsedInput","Transaction","Ctx","Boolean","OverflowError","msg","BalanceError","AllowanceError","NotInitializedError","BaseError","a","b","sub","ERC20Token","column","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","AuthorizationError","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","getName","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","message","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","ValidationError","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","ContractLogger","MiniLogger","conf","logging","getLogger","level","stack","NumericLogLevels","LogLevel","call","createLog","setFactory","object","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/model/Sequence.ts","../src/contracts/FabricContractSequence.ts","../src/shared/constants.ts","../src/shared/SimpleDeterministicSerializer.ts","../src/contracts/FabricConstruction.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/contracts/logging.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,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","logFor","logger","l","Logging","for","correlationId","getTxID","info","FabricStatement","CouchDBStatement","raw","rawInput","results","pkAttr","Model","pk","fromSelector","type","Metadata","key","DBKeys","ID","selectSelector","map","r","processRecord","build","selectors","CouchDBKeys","TABLE","tableName","query","selector","fields","whereCondition","condition","parseCondition","Condition","and","attribute","eq","selectorKeys","Object","keys","length","values","CouchDBGroupOperator","AND","reduce","accum","val","Error","k","OR","s","entries","result","forEach","orderBySelector","sort","value","rec","CouchDBOperator","BIGGER","limitSelector","limit","offsetSelector","skip","SequenceModel","BaseModel","seq","__decorate","prototype","required","index","SEQUENCE","model","FabricContractSequence","Sequence","options","repo","forModel","alias","current","READ","context","startWith","sequence","read","parse","e","NotFoundError","InternalError","increment","count","incrementBy","next","toIncrementBy","BigInt","update","create","argz","contextArgs","undefined","range","i","FabricModelKeys","IdentityType","FabricFlavour","SimpleDeterministicSerializer","JSONSerializer","deserialize","str","serialize","require","sortKeysRecursive","preSerialize","assign","async","oneToOneOnCreate","data","propertyValue","innerRepo","repositoryFromTypeMetadata","cacheModelForPopulate","class","created","oneToOneOnUpdate","cascade","Cascade","CASCADE","updated","createOrUpdate","oneToOneOnDelete","deleted","delete","oneToManyOnCreate","propertyValues","arrayType","every","item","uniqueValues","Set","pkName","m","record","add","oneToManyOnDelete","isInstantiated","v","populate","nested","isArr","Array","isArray","res","c","propName","propKeyValues","cacheKey","proKeyValue","getPopulateKey","fetchPopulateValues","createdByOnFabricCreateUpdate","user","getID","UnsupportedError","pkFabricOnCreate","sequenceName","defineProperty","enumerable","writable","configurable","FabricContractAdapter","CouchDBAdapter","getClient","textDecoder","TextDecoder","serializer","repository","scope","config","composedKey","createCompositeKey","String","putState","parseError","readState","verbose","ctxArgs","deleteState","trace","forPrivate","collection","toOverride","queryResult","queryResultPaginated","fn","Proxy","target","prop","receiver","includes","apply","thisArg","argsList","putPrivateData","deletePrivateData","getPrivateData","getPrivateDataQueryResult","iterator","reachedBookmark","lastKey","recordKey","recordValue","Key","Record","close","metadata","fetchedRecordsCount","bookmark","done","Reflect","SerializationError","silly","getState","getQueryResult","getQueryResultWithPagination","mergeModels","extract","finalModel","pop","decode","buffer","flags","operation","ensureLogger","base","clear","fabricCtx","accumulate","clientIdentity","baseFlags","models","Promise","resolve","resultIterator","isHistory","allResults","jsonRes","TxId","txId","Timestamp","Value","err","error","shift","Statement","createAll","tableLabel","all","updateAll","prepare","split","segregate","mappedProp","columnName","isReserved","transient","revert","obj","ob","createPrefix","updatePrefix","createAllPrefix","ids","records","updateAllPrefix","reason","decoration","Decoration","flavouredAs","PersistenceKeys","CREATED_BY","define","onCreate","propMetadata","UPDATED_BY","onCreateUpdate","decorator","groupsort","attr","readonly","COLUMN","extend","FabricProperty","FabricObject","ONE_TO_ONE","joinColumnOpts","fk","meta","joinTable","relation","Number","onUpdate","onDelete","afterAny","ONE_TO_MANY","joinTableOpts","list","oneToManyOnUpdate","setCurrent","DeterministicSerializer","FabricCrudContract","Contract","initialized","getTransientData","merge","transientMap","getTransient","has","deleteAll","readAll","docsOnly","init","healthcheck","method","bind","overrides","READ_ALL","getOp","SerializedCrudContract","parsedKeys","modelList","parsedInput","Transaction","Ctx","Boolean","OverflowError","msg","BalanceError","AllowanceError","NotInitializedError","BaseError","a","b","sub","ERC20Token","column","ERC20Wallet","Allowance","Owner","propertyKey","descriptor","originalMethod","acountId","select","tokens","execute","AuthorizationError","ERC20Events","FabricERC20Contract","walletRepository","tokenRepository","allowanceRepository","TokenName","CheckInitialized","Symbol","symbol","Decimals","decimals","TotalSupply","wallets","getName","total","wallet","balance","BalanceOf","Transfer","to","_transfer","TransferFrom","BurnFrom","spender","allowance","_getAllowance","currentAllowance","updatedAllowance","newAllowance","fromWallet","fromBalance","toWallet","newToWallet","code","message","token","toBalance","fromUpdatedBalance","toUpdatedBalance","updatedFromWallet","updatedToWallet","transferEvent","refresh","TRANSFER","catch","Approve","approvalEvent","APPROVAL","allowanceCondition","where","Initialize","Mint","amount","minter","ValidationError","minterWallet","updatedBalance","updatedminter","newWallet","Burn","currentBalance","account","accountWallet","updatedaccount","ClientAccountBalance","clientAccountID","clientWallet","ClientAccountID","__metadata","contracts","ContractLogger","MiniLogger","conf","logging","getLogger","level","stack","NumericLogLevels","LogLevel","call","createLog","setFactory","object","VERSION","PACKAGE_NAME","registerLibrary"],"mappings":"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"}
|
|
@@ -164,7 +164,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
164
164
|
const tableName = decorator_validation_1.Model.tableName(clazz);
|
|
165
165
|
log.info(`adding ${ids.length} entries to ${tableName} table`);
|
|
166
166
|
log.verbose(`pks: ${ids}`);
|
|
167
|
-
const result = await this.submitTransaction(db_decorators_1.BulkCrudOperationKeys.CREATE_ALL, [ids, models.map((m) => this.serializer.serialize(m
|
|
167
|
+
const result = await this.submitTransaction(db_decorators_1.BulkCrudOperationKeys.CREATE_ALL, [ids, models.map((m) => this.serializer.serialize(m))], transient, undefined, tableName);
|
|
168
168
|
try {
|
|
169
169
|
return JSON.parse(this.decode(result)).map((r) => JSON.parse(r));
|
|
170
170
|
}
|
|
@@ -210,7 +210,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
210
210
|
const tableName = decorator_validation_1.Model.tableName(clazz);
|
|
211
211
|
log.info(`updating ${ids.length} entries to ${tableName} table`);
|
|
212
212
|
log.verbose(`pks: ${ids}`);
|
|
213
|
-
const result = await this.submitTransaction(db_decorators_1.BulkCrudOperationKeys.UPDATE_ALL, [ids, models.map((m) => this.serializer.serialize(m
|
|
213
|
+
const result = await this.submitTransaction(db_decorators_1.BulkCrudOperationKeys.UPDATE_ALL, [ids, models.map((m) => this.serializer.serialize(m))], transient, undefined, clazz.name);
|
|
214
214
|
try {
|
|
215
215
|
return JSON.parse(this.decode(result)).map((r) => JSON.parse(r));
|
|
216
216
|
}
|
|
@@ -336,7 +336,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
336
336
|
const tableName = decorator_validation_1.Model.tableName(clazz);
|
|
337
337
|
log.verbose(`adding entry to ${tableName} table`);
|
|
338
338
|
log.debug(`pk: ${id}`);
|
|
339
|
-
const result = await this.submitTransaction(db_decorators_1.OperationKeys.CREATE, [this.serializer.serialize(model
|
|
339
|
+
const result = await this.submitTransaction(db_decorators_1.OperationKeys.CREATE, [this.serializer.serialize(model)], transient, undefined, clazz.name);
|
|
340
340
|
return this.serializer.deserialize(this.decode(result));
|
|
341
341
|
}
|
|
342
342
|
/**
|
|
@@ -379,7 +379,7 @@ class FabricClientAdapter extends for_couchdb_1.CouchDBAdapter {
|
|
|
379
379
|
const tableName = decorator_validation_1.Model.tableName(clazz);
|
|
380
380
|
log.verbose(`updating entry to ${tableName} table`);
|
|
381
381
|
log.debug(`pk: ${id}`);
|
|
382
|
-
const result = await this.submitTransaction(db_decorators_1.OperationKeys.UPDATE, [this.serializer.serialize(model
|
|
382
|
+
const result = await this.submitTransaction(db_decorators_1.OperationKeys.UPDATE, [this.serializer.serialize(model)], transient, undefined, clazz.name);
|
|
383
383
|
return this.serializer.deserialize(this.decode(result));
|
|
384
384
|
}
|
|
385
385
|
/**
|
|
@@ -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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"}
|
|
@@ -127,7 +127,7 @@ export class FabricClientAdapter extends CouchDBAdapter {
|
|
|
127
127
|
const tableName = Model.tableName(clazz);
|
|
128
128
|
log.info(`adding ${ids.length} entries to ${tableName} table`);
|
|
129
129
|
log.verbose(`pks: ${ids}`);
|
|
130
|
-
const result = await this.submitTransaction(BulkCrudOperationKeys.CREATE_ALL, [ids, models.map((m) => this.serializer.serialize(m
|
|
130
|
+
const result = await this.submitTransaction(BulkCrudOperationKeys.CREATE_ALL, [ids, models.map((m) => this.serializer.serialize(m))], transient, undefined, tableName);
|
|
131
131
|
try {
|
|
132
132
|
return JSON.parse(this.decode(result)).map((r) => JSON.parse(r));
|
|
133
133
|
}
|
|
@@ -173,7 +173,7 @@ export class FabricClientAdapter extends CouchDBAdapter {
|
|
|
173
173
|
const tableName = Model.tableName(clazz);
|
|
174
174
|
log.info(`updating ${ids.length} entries to ${tableName} table`);
|
|
175
175
|
log.verbose(`pks: ${ids}`);
|
|
176
|
-
const result = await this.submitTransaction(BulkCrudOperationKeys.UPDATE_ALL, [ids, models.map((m) => this.serializer.serialize(m
|
|
176
|
+
const result = await this.submitTransaction(BulkCrudOperationKeys.UPDATE_ALL, [ids, models.map((m) => this.serializer.serialize(m))], transient, undefined, clazz.name);
|
|
177
177
|
try {
|
|
178
178
|
return JSON.parse(this.decode(result)).map((r) => JSON.parse(r));
|
|
179
179
|
}
|
|
@@ -299,7 +299,7 @@ export class FabricClientAdapter extends CouchDBAdapter {
|
|
|
299
299
|
const tableName = Model.tableName(clazz);
|
|
300
300
|
log.verbose(`adding entry to ${tableName} table`);
|
|
301
301
|
log.debug(`pk: ${id}`);
|
|
302
|
-
const result = await this.submitTransaction(OperationKeys.CREATE, [this.serializer.serialize(model
|
|
302
|
+
const result = await this.submitTransaction(OperationKeys.CREATE, [this.serializer.serialize(model)], transient, undefined, clazz.name);
|
|
303
303
|
return this.serializer.deserialize(this.decode(result));
|
|
304
304
|
}
|
|
305
305
|
/**
|
|
@@ -342,7 +342,7 @@ export class FabricClientAdapter extends CouchDBAdapter {
|
|
|
342
342
|
const tableName = Model.tableName(clazz);
|
|
343
343
|
log.verbose(`updating entry to ${tableName} table`);
|
|
344
344
|
log.debug(`pk: ${id}`);
|
|
345
|
-
const result = await this.submitTransaction(OperationKeys.UPDATE, [this.serializer.serialize(model
|
|
345
|
+
const result = await this.submitTransaction(OperationKeys.UPDATE, [this.serializer.serialize(model)], transient, undefined, clazz.name);
|
|
346
346
|
return this.serializer.deserialize(this.decode(result));
|
|
347
347
|
}
|
|
348
348
|
/**
|
|
@@ -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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"}
|
package/lib/esm/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.8";
|
|
2
2
|
export declare const PACKAGE_NAME = "@decaf-ts/for-fabric";
|
package/lib/esm/version.js
CHANGED
package/lib/version.cjs
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PACKAGE_NAME = exports.VERSION = void 0;
|
|
4
4
|
const decoration_1 = require("@decaf-ts/decoration");
|
|
5
|
-
exports.VERSION = "0.1.
|
|
5
|
+
exports.VERSION = "0.1.8";
|
|
6
6
|
exports.PACKAGE_NAME = "@decaf-ts/for-fabric";
|
|
7
7
|
decoration_1.Metadata.registerLibrary(exports.PACKAGE_NAME, exports.VERSION);
|
|
8
8
|
//# sourceMappingURL=version.js.map
|
package/lib/version.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const VERSION = "0.1.
|
|
1
|
+
export declare const VERSION = "0.1.8";
|
|
2
2
|
export declare const PACKAGE_NAME = "@decaf-ts/for-fabric";
|