@decaf-ts/for-fabric 0.1.2 → 0.1.3
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 +94 -81
- package/lib/client/FabricClientAdapter.d.ts +24 -33
- package/lib/client/FabricClientAdapter.js.map +1 -1
- package/lib/client/FabricClientDispatch.cjs +14 -5
- package/lib/client/FabricClientDispatch.d.ts +7 -5
- package/lib/client/FabricClientDispatch.js.map +1 -1
- package/lib/client/FabricClientRepository.cjs +4 -137
- package/lib/client/FabricClientRepository.d.ts +6 -78
- package/lib/client/FabricClientRepository.js.map +1 -1
- package/lib/client/erc20/FabricERC20ClientRepository.cjs +17 -17
- package/lib/client/erc20/FabricERC20ClientRepository.d.ts +5 -5
- package/lib/client/erc20/FabricERC20ClientRepository.js.map +1 -1
- package/lib/client/logging.cjs +1 -3
- package/lib/client/logging.js.map +1 -1
- package/lib/client/services/FabricEnrollmentService.cjs +3 -3
- package/lib/client/services/FabricEnrollmentService.d.ts +2 -2
- package/lib/client/services/FabricEnrollmentService.js.map +1 -1
- package/lib/contracts/ContractAdapter.cjs +204 -115
- package/lib/contracts/ContractAdapter.d.ts +26 -34
- package/lib/contracts/ContractAdapter.js.map +1 -1
- package/lib/contracts/ContractContext.cjs +1 -9
- package/lib/contracts/ContractContext.d.ts +0 -6
- package/lib/contracts/ContractContext.js.map +1 -1
- package/lib/contracts/ContractPrivateDataAdapter.cjs +429 -288
- package/lib/contracts/ContractPrivateDataAdapter.d.ts +0 -76
- package/lib/contracts/ContractPrivateDataAdapter.js.map +1 -1
- package/lib/contracts/FabricConstruction.cjs +3 -3
- package/lib/contracts/FabricConstruction.d.ts +9 -8
- package/lib/contracts/FabricConstruction.js.map +1 -1
- package/lib/contracts/FabricContractRepository.cjs +7 -202
- package/lib/contracts/FabricContractRepository.d.ts +5 -68
- package/lib/contracts/FabricContractRepository.js.map +1 -1
- package/lib/contracts/FabricContractRepositoryObservableHandler.cjs +4 -1
- package/lib/contracts/FabricContractRepositoryObservableHandler.d.ts +4 -4
- package/lib/contracts/FabricContractRepositoryObservableHandler.js.map +1 -1
- package/lib/contracts/FabricContractSequence.cjs +39 -60
- package/lib/contracts/FabricContractSequence.d.ts +29 -41
- package/lib/contracts/FabricContractSequence.js.map +1 -1
- package/lib/contracts/FabricContractStatement.cjs +6 -6
- package/lib/contracts/FabricContractStatement.d.ts +4 -6
- package/lib/contracts/FabricContractStatement.js.map +1 -1
- package/lib/contracts/crud/crud-contract.cjs +74 -44
- package/lib/contracts/crud/crud-contract.d.ts +7 -11
- package/lib/contracts/crud/crud-contract.js.map +1 -1
- package/lib/contracts/crud/serialized-crud-contract.cjs +12 -21
- package/lib/contracts/crud/serialized-crud-contract.d.ts +3 -11
- package/lib/contracts/crud/serialized-crud-contract.js.map +1 -1
- package/lib/contracts/erc20/erc20contract.cjs +73 -67
- package/lib/contracts/erc20/erc20contract.d.ts +13 -12
- package/lib/contracts/erc20/erc20contract.js.map +1 -1
- package/lib/contracts/logging.cjs +9 -15
- package/lib/contracts/logging.d.ts +1 -2
- package/lib/contracts/logging.js.map +1 -1
- package/lib/contracts/private-data.cjs +202 -118
- package/lib/contracts/private-data.d.ts +0 -16
- package/lib/contracts/private-data.js.map +1 -1
- package/lib/contracts/types.d.ts +1 -1
- package/lib/esm/client/FabricClientAdapter.d.ts +24 -33
- package/lib/esm/client/FabricClientAdapter.js +90 -78
- package/lib/esm/client/FabricClientAdapter.js.map +1 -1
- package/lib/esm/client/FabricClientDispatch.d.ts +7 -5
- package/lib/esm/client/FabricClientDispatch.js +17 -8
- package/lib/esm/client/FabricClientDispatch.js.map +1 -1
- package/lib/esm/client/FabricClientRepository.d.ts +6 -78
- package/lib/esm/client/FabricClientRepository.js +4 -137
- package/lib/esm/client/FabricClientRepository.js.map +1 -1
- package/lib/esm/client/erc20/FabricERC20ClientRepository.d.ts +5 -5
- package/lib/esm/client/erc20/FabricERC20ClientRepository.js +17 -17
- package/lib/esm/client/erc20/FabricERC20ClientRepository.js.map +1 -1
- package/lib/esm/client/logging.js +1 -3
- package/lib/esm/client/logging.js.map +1 -1
- package/lib/esm/client/services/FabricEnrollmentService.d.ts +2 -2
- package/lib/esm/client/services/FabricEnrollmentService.js +3 -3
- package/lib/esm/client/services/FabricEnrollmentService.js.map +1 -1
- package/lib/esm/contracts/ContractAdapter.d.ts +26 -34
- package/lib/esm/contracts/ContractAdapter.js +205 -116
- package/lib/esm/contracts/ContractAdapter.js.map +1 -1
- package/lib/esm/contracts/ContractContext.d.ts +0 -6
- package/lib/esm/contracts/ContractContext.js +1 -9
- package/lib/esm/contracts/ContractContext.js.map +1 -1
- package/lib/esm/contracts/ContractPrivateDataAdapter.d.ts +0 -76
- package/lib/esm/contracts/ContractPrivateDataAdapter.js +430 -285
- package/lib/esm/contracts/ContractPrivateDataAdapter.js.map +1 -1
- package/lib/esm/contracts/FabricConstruction.d.ts +9 -8
- package/lib/esm/contracts/FabricConstruction.js +3 -3
- package/lib/esm/contracts/FabricConstruction.js.map +1 -1
- package/lib/esm/contracts/FabricContractRepository.d.ts +5 -68
- package/lib/esm/contracts/FabricContractRepository.js +7 -202
- package/lib/esm/contracts/FabricContractRepository.js.map +1 -1
- package/lib/esm/contracts/FabricContractRepositoryObservableHandler.d.ts +4 -4
- package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js +5 -2
- package/lib/esm/contracts/FabricContractRepositoryObservableHandler.js.map +1 -1
- package/lib/esm/contracts/FabricContractSequence.d.ts +29 -41
- package/lib/esm/contracts/FabricContractSequence.js +40 -61
- package/lib/esm/contracts/FabricContractSequence.js.map +1 -1
- package/lib/esm/contracts/FabricContractStatement.d.ts +4 -6
- package/lib/esm/contracts/FabricContractStatement.js +7 -7
- package/lib/esm/contracts/FabricContractStatement.js.map +1 -1
- package/lib/esm/contracts/crud/crud-contract.d.ts +7 -11
- package/lib/esm/contracts/crud/crud-contract.js +75 -45
- package/lib/esm/contracts/crud/crud-contract.js.map +1 -1
- package/lib/esm/contracts/crud/serialized-crud-contract.d.ts +3 -11
- package/lib/esm/contracts/crud/serialized-crud-contract.js +12 -21
- package/lib/esm/contracts/crud/serialized-crud-contract.js.map +1 -1
- package/lib/esm/contracts/erc20/erc20contract.d.ts +13 -12
- package/lib/esm/contracts/erc20/erc20contract.js +73 -67
- package/lib/esm/contracts/erc20/erc20contract.js.map +1 -1
- package/lib/esm/contracts/logging.d.ts +1 -2
- package/lib/esm/contracts/logging.js +9 -15
- package/lib/esm/contracts/logging.js.map +1 -1
- package/lib/esm/contracts/private-data.d.ts +0 -16
- package/lib/esm/contracts/private-data.js +203 -111
- package/lib/esm/contracts/private-data.js.map +1 -1
- package/lib/esm/contracts/types.d.ts +1 -1
- package/lib/esm/shared/decorators.d.ts +14 -4
- package/lib/esm/shared/decorators.js +142 -42
- package/lib/esm/shared/decorators.js.map +1 -1
- package/lib/esm/shared/errors.js +2 -2
- package/lib/esm/shared/errors.js.map +1 -1
- package/lib/esm/shared/events.d.ts +1 -5
- package/lib/esm/shared/events.js.map +1 -1
- package/lib/esm/shared/model/Sequence.d.ts +14 -0
- package/lib/esm/shared/model/Sequence.js +33 -0
- package/lib/esm/shared/model/Sequence.js.map +1 -0
- package/lib/esm/shared/model/index.d.ts +2 -0
- package/lib/esm/shared/model/index.js +2 -0
- package/lib/esm/shared/model/index.js.map +1 -1
- package/lib/esm/version.d.ts +1 -1
- package/lib/esm/version.js +1 -1
- package/lib/shared/decorators.cjs +148 -41
- package/lib/shared/decorators.d.ts +14 -4
- package/lib/shared/decorators.js.map +1 -1
- package/lib/shared/errors.cjs +2 -2
- package/lib/shared/errors.js.map +1 -1
- package/lib/shared/events.d.ts +1 -5
- package/lib/shared/events.js.map +1 -1
- package/lib/shared/model/Sequence.cjs +36 -0
- package/lib/shared/model/Sequence.d.ts +14 -0
- package/lib/shared/model/Sequence.js.map +1 -0
- package/lib/shared/model/index.cjs +2 -0
- package/lib/shared/model/index.d.ts +2 -0
- package/lib/shared/model/index.js.map +1 -1
- package/lib/version.cjs +1 -1
- package/lib/version.d.ts +1 -1
- package/package.json +2 -3
- package/lib/client/services/LoggedService.cjs +0 -47
- package/lib/client/services/LoggedService.d.ts +0 -42
- package/lib/client/services/LoggedService.js.map +0 -1
- package/lib/esm/client/services/LoggedService.d.ts +0 -42
- package/lib/esm/client/services/LoggedService.js +0 -43
- package/lib/esm/client/services/LoggedService.js.map +0 -1
|
@@ -58,8 +58,8 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
58
58
|
async TokenName(ctx) {
|
|
59
59
|
// Check contract options are already set first to execute the function
|
|
60
60
|
await this.CheckInitialized(ctx);
|
|
61
|
-
const select = await this.tokenRepository.
|
|
62
|
-
const token = (await select.execute())[0];
|
|
61
|
+
const select = await this.tokenRepository.select();
|
|
62
|
+
const token = (await select.execute(ctx))[0];
|
|
63
63
|
return token.name;
|
|
64
64
|
}
|
|
65
65
|
/**
|
|
@@ -71,8 +71,8 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
71
71
|
async Symbol(ctx) {
|
|
72
72
|
// Check contract options are already set first to execute the function
|
|
73
73
|
await this.CheckInitialized(ctx);
|
|
74
|
-
const select = await this.tokenRepository.
|
|
75
|
-
const token = (await select.execute())[0];
|
|
74
|
+
const select = await this.tokenRepository.select();
|
|
75
|
+
const token = (await select.execute(ctx))[0];
|
|
76
76
|
return token.symbol;
|
|
77
77
|
}
|
|
78
78
|
/**
|
|
@@ -85,8 +85,8 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
85
85
|
async Decimals(ctx) {
|
|
86
86
|
// Check contract options are already set first to execute the function
|
|
87
87
|
await this.CheckInitialized(ctx);
|
|
88
|
-
const select = await this.tokenRepository.
|
|
89
|
-
const token = (await select.execute())[0];
|
|
88
|
+
const select = await this.tokenRepository.select();
|
|
89
|
+
const token = (await select.execute(ctx))[0];
|
|
90
90
|
return token.decimals;
|
|
91
91
|
}
|
|
92
92
|
/**
|
|
@@ -98,8 +98,8 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
98
98
|
async TotalSupply(ctx) {
|
|
99
99
|
// Check contract options are already set first to execute the function
|
|
100
100
|
await this.CheckInitialized(ctx);
|
|
101
|
-
const select = await this.walletRepository.
|
|
102
|
-
const wallets = await select.execute();
|
|
101
|
+
const select = await this.walletRepository.select();
|
|
102
|
+
const wallets = await select.execute(ctx);
|
|
103
103
|
if (wallets.length == 0) {
|
|
104
104
|
throw new db_decorators_1.NotFoundError(`The token ${this.getName()} does not exist`);
|
|
105
105
|
}
|
|
@@ -132,11 +132,12 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
132
132
|
*
|
|
133
133
|
* @returns {Boolean} Return whether the transfer was successful or not
|
|
134
134
|
*/
|
|
135
|
-
async Transfer(
|
|
135
|
+
async Transfer(context, to, value) {
|
|
136
136
|
// Check contract options are already set first to execute the function
|
|
137
|
-
await this.CheckInitialized(
|
|
138
|
-
const
|
|
139
|
-
const
|
|
137
|
+
await this.CheckInitialized(context);
|
|
138
|
+
const { ctx } = await this.logCtx([context], this.Transfer);
|
|
139
|
+
const from = ctx.identity.getID();
|
|
140
|
+
const transferResp = await this._transfer(from, to, value, ctx);
|
|
140
141
|
if (!transferResp) {
|
|
141
142
|
throw new db_decorators_1.InternalError("Failed to transfer");
|
|
142
143
|
}
|
|
@@ -151,12 +152,13 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
151
152
|
* @param {number} value The amount of token to be transferred
|
|
152
153
|
* @returns {Boolean} Return whether the transfer was successful or not
|
|
153
154
|
*/
|
|
154
|
-
async TransferFrom(
|
|
155
|
+
async TransferFrom(context, from, to, value) {
|
|
155
156
|
// Check contract options are already set first to execute the function
|
|
156
|
-
await this.CheckInitialized(
|
|
157
|
+
await this.CheckInitialized(context);
|
|
158
|
+
const { ctx } = await this.logCtx([context], this.BurnFrom);
|
|
157
159
|
// Retrieve the allowance of the spender
|
|
158
|
-
const spender = ctx.
|
|
159
|
-
const allowance = await this._getAllowance(
|
|
160
|
+
const spender = ctx.identity.getID();
|
|
161
|
+
const allowance = await this._getAllowance(from, spender, ctx);
|
|
160
162
|
if (!allowance || allowance.value < 0) {
|
|
161
163
|
throw new errors_1.AllowanceError(`spender ${spender} has no allowance from ${from}`);
|
|
162
164
|
}
|
|
@@ -172,14 +174,14 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
172
174
|
});
|
|
173
175
|
await this.allowanceRepository.update(newAllowance, ctx);
|
|
174
176
|
//Realize the transfer
|
|
175
|
-
const transferResp = await this._transfer(
|
|
177
|
+
const transferResp = await this._transfer(from, to, value, ctx);
|
|
176
178
|
if (!transferResp) {
|
|
177
179
|
throw new db_decorators_1.InternalError("Failed to transfer");
|
|
178
180
|
}
|
|
179
181
|
return true;
|
|
180
182
|
}
|
|
181
|
-
async _transfer(
|
|
182
|
-
const
|
|
183
|
+
async _transfer(from, to, value, ctx) {
|
|
184
|
+
const log = ctx.logger;
|
|
183
185
|
if (from === to) {
|
|
184
186
|
throw new core_1.AuthorizationError("cannot transfer to and from same client account");
|
|
185
187
|
}
|
|
@@ -238,8 +240,9 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
238
240
|
}
|
|
239
241
|
// Emit the Transfer event
|
|
240
242
|
const transferEvent = { from, to, value: value };
|
|
241
|
-
|
|
242
|
-
|
|
243
|
+
this.repo
|
|
244
|
+
.refresh(models_1.ERC20Token, erc20_constants_1.ERC20Events.TRANSFER, "", transferEvent, ctx)
|
|
245
|
+
.catch((e) => log.error(`Failed to notify transfer: ${e}`));
|
|
243
246
|
return true;
|
|
244
247
|
}
|
|
245
248
|
/**
|
|
@@ -251,20 +254,20 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
251
254
|
* @param {number} value The amount of tokens to be approved for transfer
|
|
252
255
|
* @returns {Boolean} Return whether the approval was successful or not
|
|
253
256
|
*/
|
|
254
|
-
async Approve(
|
|
257
|
+
async Approve(context, spender, value) {
|
|
255
258
|
// Check contract options are already set first to execute the function
|
|
256
|
-
await this.CheckInitialized(
|
|
257
|
-
const
|
|
258
|
-
const owner = ctx.
|
|
259
|
-
let allowance = await this._getAllowance(
|
|
260
|
-
const ownerWallet = await this.walletRepository.read(owner,
|
|
259
|
+
await this.CheckInitialized(context);
|
|
260
|
+
const { ctx, ctxArgs } = await this.logCtx([context], this.Approve);
|
|
261
|
+
const owner = ctx.identity.getID();
|
|
262
|
+
let allowance = await this._getAllowance(owner, spender, ctx);
|
|
263
|
+
const ownerWallet = await this.walletRepository.read(owner, ...ctxArgs);
|
|
261
264
|
if (ownerWallet.balance < value) {
|
|
262
265
|
throw new errors_1.BalanceError(`client account ${owner} has insufficient funds.`);
|
|
263
266
|
}
|
|
264
267
|
if (allowance) {
|
|
265
268
|
// Overwrite the allowance
|
|
266
269
|
allowance.value = value;
|
|
267
|
-
await this.allowanceRepository.update(allowance,
|
|
270
|
+
await this.allowanceRepository.update(allowance, ...ctxArgs);
|
|
268
271
|
}
|
|
269
272
|
else {
|
|
270
273
|
allowance = new models_1.Allowance({
|
|
@@ -272,12 +275,11 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
272
275
|
spender: spender,
|
|
273
276
|
value: value,
|
|
274
277
|
});
|
|
275
|
-
await this.allowanceRepository.create(allowance,
|
|
278
|
+
await this.allowanceRepository.create(allowance, ...ctxArgs);
|
|
276
279
|
}
|
|
277
280
|
// Emit the Approval event
|
|
278
281
|
const approvalEvent = { owner, spender, value: value };
|
|
279
|
-
|
|
280
|
-
eventHandler.updateObservers(logger, "", erc20_constants_1.ERC20Events.APPROVAL, "", ctx, "", approvalEvent);
|
|
282
|
+
this.repo.refresh(models_1.ERC20Token, erc20_constants_1.ERC20Events.APPROVAL, "", approvalEvent, ctx);
|
|
281
283
|
return true;
|
|
282
284
|
}
|
|
283
285
|
/**
|
|
@@ -288,19 +290,22 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
288
290
|
* @param {String} spender The spender who are able to transfer the tokens
|
|
289
291
|
* @returns {number} Return the amount of remaining tokens allowed to spent
|
|
290
292
|
*/
|
|
291
|
-
async Allowance(
|
|
293
|
+
async Allowance(context, owner, spender) {
|
|
292
294
|
// Check contract options are already set first to execute the function
|
|
293
|
-
await this.CheckInitialized(
|
|
294
|
-
const
|
|
295
|
+
await this.CheckInitialized(context);
|
|
296
|
+
const { ctx } = await this.logCtx([context], this.Allowance);
|
|
297
|
+
const allowance = await this._getAllowance(owner, spender, ctx);
|
|
295
298
|
if (!allowance) {
|
|
296
299
|
throw new errors_1.AllowanceError(`spender ${spender} has no allowance from ${owner}`);
|
|
297
300
|
}
|
|
298
301
|
return allowance.value;
|
|
299
302
|
}
|
|
300
|
-
async _getAllowance(
|
|
303
|
+
async _getAllowance(owner, spender, ctx) {
|
|
301
304
|
const allowanceCondition = core_1.Condition.and(core_1.Condition.attribute("owner").eq(owner), core_1.Condition.attribute("spender").eq(spender));
|
|
302
|
-
const
|
|
303
|
-
|
|
305
|
+
const allowance = await this.allowanceRepository
|
|
306
|
+
.select()
|
|
307
|
+
.where(allowanceCondition)
|
|
308
|
+
.execute(ctx);
|
|
304
309
|
return allowance?.[0];
|
|
305
310
|
}
|
|
306
311
|
// ================== Extended Functions ==========================
|
|
@@ -313,21 +318,21 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
313
318
|
* @param {String} decimals The decimals of the token
|
|
314
319
|
* @param {String} totalSupply The totalSupply of the token
|
|
315
320
|
*/
|
|
316
|
-
async Initialize(
|
|
321
|
+
async Initialize(context, token) {
|
|
322
|
+
const { ctx } = await this.logCtx([context], this.Initialize);
|
|
317
323
|
// Check contract options are not already set, client is not authorized to change them once intitialized
|
|
318
|
-
const
|
|
319
|
-
const tokens = await select.execute();
|
|
324
|
+
const tokens = await this.tokenRepository.select().execute(ctx);
|
|
320
325
|
if (tokens.length > 0) {
|
|
321
326
|
throw new core_1.AuthorizationError("contract options are already set, client is not authorized to change them");
|
|
322
327
|
}
|
|
323
|
-
token.owner = ctx.
|
|
328
|
+
token.owner = ctx.identity.getID();
|
|
324
329
|
await this.tokenRepository.create(token, ctx);
|
|
325
330
|
return true;
|
|
326
331
|
}
|
|
327
332
|
// Checks that contract options have been already initialized
|
|
328
|
-
async CheckInitialized(
|
|
329
|
-
const
|
|
330
|
-
const tokens = await select.execute();
|
|
333
|
+
async CheckInitialized(context) {
|
|
334
|
+
const { ctx } = await this.logCtx([context], this.CheckInitialized);
|
|
335
|
+
const tokens = await this.tokenRepository.select().execute(ctx);
|
|
331
336
|
if (tokens.length == 0) {
|
|
332
337
|
throw new errors_1.NotInitializedError("contract options need to be set before calling any function, call Initialize() to initialize contract");
|
|
333
338
|
}
|
|
@@ -339,12 +344,12 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
339
344
|
* @param {number} amount amount of tokens to be minted
|
|
340
345
|
* @returns {Object} The balance
|
|
341
346
|
*/
|
|
342
|
-
async Mint(
|
|
347
|
+
async Mint(context, amount) {
|
|
343
348
|
// Check contract options are already set first to execute the function
|
|
344
|
-
await this.CheckInitialized(
|
|
345
|
-
const
|
|
349
|
+
await this.CheckInitialized(context);
|
|
350
|
+
const { ctx } = await this.logCtx([context], this.Mint);
|
|
346
351
|
// Get ID of submitting client identity
|
|
347
|
-
const minter = ctx.
|
|
352
|
+
const minter = ctx.identity.getID();
|
|
348
353
|
if (amount <= 0) {
|
|
349
354
|
throw new db_decorators_1.ValidationError("mint amount must be a positive integer");
|
|
350
355
|
}
|
|
@@ -365,7 +370,7 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
365
370
|
const newWallet = new models_1.ERC20Wallet({
|
|
366
371
|
id: minter,
|
|
367
372
|
balance: amount,
|
|
368
|
-
token: await this.TokenName(
|
|
373
|
+
token: await this.TokenName(context),
|
|
369
374
|
});
|
|
370
375
|
await this.walletRepository.create(newWallet, ctx);
|
|
371
376
|
}
|
|
@@ -380,7 +385,7 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
380
385
|
// Emit the Transfer event
|
|
381
386
|
const transferEvent = { from: "0x0", to: minter, value: amount };
|
|
382
387
|
const eventHandler = this.repo.ObserverHandler();
|
|
383
|
-
eventHandler.updateObservers(
|
|
388
|
+
eventHandler.updateObservers(models_1.ERC20Token, erc20_constants_1.ERC20Events.TRANSFER, "", transferEvent, ctx);
|
|
384
389
|
}
|
|
385
390
|
/**
|
|
386
391
|
* Burn redeem tokens from minter's account balance
|
|
@@ -389,11 +394,11 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
389
394
|
* @param {number} amount amount of tokens to be burned
|
|
390
395
|
* @returns {Object} The balance
|
|
391
396
|
*/
|
|
392
|
-
async Burn(
|
|
397
|
+
async Burn(context, amount) {
|
|
393
398
|
// Check contract options are already set first to execute the function
|
|
394
|
-
await this.CheckInitialized(
|
|
395
|
-
const
|
|
396
|
-
const minter = ctx.
|
|
399
|
+
await this.CheckInitialized(context);
|
|
400
|
+
const { log, ctx } = await this.logCtx([context], this.Burn);
|
|
401
|
+
const minter = ctx.identity.getID();
|
|
397
402
|
const minterWallet = await this.walletRepository.read(minter, ctx);
|
|
398
403
|
const currentBalance = minterWallet.balance;
|
|
399
404
|
if (currentBalance < amount) {
|
|
@@ -404,11 +409,11 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
404
409
|
balance: updatedBalance,
|
|
405
410
|
});
|
|
406
411
|
await this.walletRepository.update(updatedminter, ctx);
|
|
407
|
-
|
|
412
|
+
log.info(`${amount} tokens were burned`);
|
|
408
413
|
// Emit the Transfer event
|
|
409
414
|
const transferEvent = { from: minter, to: "0x0", value: amount };
|
|
410
415
|
const eventHandler = this.repo.ObserverHandler();
|
|
411
|
-
eventHandler.updateObservers(
|
|
416
|
+
eventHandler.updateObservers(models_1.ERC20Token, erc20_constants_1.ERC20Events.TRANSFER, "", transferEvent, ctx);
|
|
412
417
|
}
|
|
413
418
|
/**
|
|
414
419
|
* BurnFrom redeem tokens from account allowence and balance
|
|
@@ -418,10 +423,10 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
418
423
|
* @param {number} amount amount of tokens to be burned
|
|
419
424
|
* @returns {Object} The balance
|
|
420
425
|
*/
|
|
421
|
-
async BurnFrom(
|
|
426
|
+
async BurnFrom(context, account, amount) {
|
|
422
427
|
// Check contract options are already set first to execute the function
|
|
423
|
-
await this.CheckInitialized(
|
|
424
|
-
const
|
|
428
|
+
await this.CheckInitialized(context);
|
|
429
|
+
const { log, ctx } = await this.logCtx([context], this.BurnFrom);
|
|
425
430
|
const accountWallet = await this.walletRepository.read(account, ctx);
|
|
426
431
|
const currentBalance = accountWallet.balance;
|
|
427
432
|
if (currentBalance < amount) {
|
|
@@ -432,11 +437,11 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
432
437
|
balance: updatedBalance,
|
|
433
438
|
});
|
|
434
439
|
await this.walletRepository.update(updatedaccount, ctx);
|
|
435
|
-
|
|
440
|
+
log.info(`${amount} tokens were burned from ${account}`);
|
|
436
441
|
// Emit the Transfer event
|
|
437
442
|
const transferEvent = { from: account, to: "0x0", value: amount };
|
|
438
443
|
const eventHandler = this.repo.ObserverHandler();
|
|
439
|
-
eventHandler.updateObservers(
|
|
444
|
+
eventHandler.updateObservers(models_1.ERC20Token, erc20_constants_1.ERC20Events.TRANSFER, "", transferEvent, ctx);
|
|
440
445
|
}
|
|
441
446
|
/**
|
|
442
447
|
* ClientAccountBalance returns the balance of the requesting client's account.
|
|
@@ -458,11 +463,12 @@ class FabricERC20Contract extends crud_contract_1.FabricCrudContract {
|
|
|
458
463
|
// ClientAccountID returns the id of the requesting client's account.
|
|
459
464
|
// In this implementation, the client account ID is the clientId itself.
|
|
460
465
|
// Users can use this function to get their own account id, which they can then give to others as the payment address
|
|
461
|
-
async ClientAccountID(
|
|
466
|
+
async ClientAccountID(context) {
|
|
462
467
|
// Check contract options are already set first to execute the function
|
|
463
|
-
await this.CheckInitialized(
|
|
468
|
+
await this.CheckInitialized(context);
|
|
469
|
+
const { ctx } = await this.logCtx([context], this.ClientAccountID);
|
|
464
470
|
// Get ID of submitting client identity
|
|
465
|
-
const clientAccountID = ctx.
|
|
471
|
+
const clientAccountID = ctx.identity.getID();
|
|
466
472
|
return clientAccountID;
|
|
467
473
|
}
|
|
468
474
|
}
|
|
@@ -516,7 +522,7 @@ __decorate([
|
|
|
516
522
|
__metadata("design:returntype", Promise)
|
|
517
523
|
], FabricERC20Contract.prototype, "Approve", null);
|
|
518
524
|
__decorate([
|
|
519
|
-
(0, fabric_contract_api_1.Transaction)(),
|
|
525
|
+
(0, fabric_contract_api_1.Transaction)(false),
|
|
520
526
|
__metadata("design:type", Function),
|
|
521
527
|
__metadata("design:paramtypes", [fabric_contract_api_1.Context, String, String]),
|
|
522
528
|
__metadata("design:returntype", Promise)
|
|
@@ -555,13 +561,13 @@ __decorate([
|
|
|
555
561
|
__metadata("design:returntype", Promise)
|
|
556
562
|
], FabricERC20Contract.prototype, "BurnFrom", null);
|
|
557
563
|
__decorate([
|
|
558
|
-
(0, fabric_contract_api_1.Transaction)(),
|
|
564
|
+
(0, fabric_contract_api_1.Transaction)(false),
|
|
559
565
|
__metadata("design:type", Function),
|
|
560
566
|
__metadata("design:paramtypes", [fabric_contract_api_1.Context]),
|
|
561
567
|
__metadata("design:returntype", Promise)
|
|
562
568
|
], FabricERC20Contract.prototype, "ClientAccountBalance", null);
|
|
563
569
|
__decorate([
|
|
564
|
-
(0, fabric_contract_api_1.Transaction)(),
|
|
570
|
+
(0, fabric_contract_api_1.Transaction)(false),
|
|
565
571
|
__metadata("design:type", Function),
|
|
566
572
|
__metadata("design:paramtypes", [fabric_contract_api_1.Context]),
|
|
567
573
|
__metadata("design:returntype", Promise)
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { Context } from "fabric-contract-api";
|
|
2
2
|
import { Allowance, ERC20Token, ERC20Wallet } from "./models";
|
|
3
|
+
import type { FabricContractContext } from "../ContractContext";
|
|
3
4
|
import { FabricCrudContract } from "../crud/crud-contract";
|
|
4
5
|
/**
|
|
5
6
|
* @description ERC20 token contract base for Hyperledger Fabric
|
|
@@ -72,7 +73,7 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
72
73
|
*
|
|
73
74
|
* @returns {Boolean} Return whether the transfer was successful or not
|
|
74
75
|
*/
|
|
75
|
-
Transfer(
|
|
76
|
+
Transfer(context: Context, to: string, value: number): Promise<boolean>;
|
|
76
77
|
/**
|
|
77
78
|
* Transfer `value` amount of tokens from `from` to `to`.
|
|
78
79
|
*
|
|
@@ -82,8 +83,8 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
82
83
|
* @param {number} value The amount of token to be transferred
|
|
83
84
|
* @returns {Boolean} Return whether the transfer was successful or not
|
|
84
85
|
*/
|
|
85
|
-
TransferFrom(
|
|
86
|
-
_transfer(
|
|
86
|
+
TransferFrom(context: Context, from: string, to: string, value: number): Promise<boolean>;
|
|
87
|
+
_transfer(from: string, to: string, value: number, ctx: FabricContractContext): Promise<boolean>;
|
|
87
88
|
/**
|
|
88
89
|
* Allows `spender` to spend `value` amount of tokens from the owner. New Approve calls override the previous allowance.
|
|
89
90
|
* @note https://eips.ethereum.org/EIPS/eip-20
|
|
@@ -93,7 +94,7 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
93
94
|
* @param {number} value The amount of tokens to be approved for transfer
|
|
94
95
|
* @returns {Boolean} Return whether the approval was successful or not
|
|
95
96
|
*/
|
|
96
|
-
Approve(
|
|
97
|
+
Approve(context: Context, spender: string, value: number): Promise<boolean>;
|
|
97
98
|
/**
|
|
98
99
|
* Returns the amount of tokens which ` ` is allowed to withdraw from `owner`.
|
|
99
100
|
*
|
|
@@ -102,8 +103,8 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
102
103
|
* @param {String} spender The spender who are able to transfer the tokens
|
|
103
104
|
* @returns {number} Return the amount of remaining tokens allowed to spent
|
|
104
105
|
*/
|
|
105
|
-
Allowance(
|
|
106
|
-
_getAllowance(
|
|
106
|
+
Allowance(context: Context, owner: string, spender: string): Promise<number>;
|
|
107
|
+
_getAllowance(owner: string, spender: string, ctx: FabricContractContext): Promise<Allowance>;
|
|
107
108
|
/**
|
|
108
109
|
* Set optional infomation for a token.
|
|
109
110
|
*
|
|
@@ -113,8 +114,8 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
113
114
|
* @param {String} decimals The decimals of the token
|
|
114
115
|
* @param {String} totalSupply The totalSupply of the token
|
|
115
116
|
*/
|
|
116
|
-
Initialize(
|
|
117
|
-
CheckInitialized(
|
|
117
|
+
Initialize(context: Context, token: ERC20Token): Promise<boolean>;
|
|
118
|
+
CheckInitialized(context: Context): Promise<void>;
|
|
118
119
|
/**
|
|
119
120
|
* Mint creates new tokens and adds them to minter's account balance
|
|
120
121
|
*
|
|
@@ -122,7 +123,7 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
122
123
|
* @param {number} amount amount of tokens to be minted
|
|
123
124
|
* @returns {Object} The balance
|
|
124
125
|
*/
|
|
125
|
-
Mint(
|
|
126
|
+
Mint(context: Context, amount: number): Promise<void>;
|
|
126
127
|
/**
|
|
127
128
|
* Burn redeem tokens from minter's account balance
|
|
128
129
|
*
|
|
@@ -130,7 +131,7 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
130
131
|
* @param {number} amount amount of tokens to be burned
|
|
131
132
|
* @returns {Object} The balance
|
|
132
133
|
*/
|
|
133
|
-
Burn(
|
|
134
|
+
Burn(context: Context, amount: number): Promise<void>;
|
|
134
135
|
/**
|
|
135
136
|
* BurnFrom redeem tokens from account allowence and balance
|
|
136
137
|
*
|
|
@@ -139,7 +140,7 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
139
140
|
* @param {number} amount amount of tokens to be burned
|
|
140
141
|
* @returns {Object} The balance
|
|
141
142
|
*/
|
|
142
|
-
BurnFrom(
|
|
143
|
+
BurnFrom(context: Context, account: string, amount: number): Promise<void>;
|
|
143
144
|
/**
|
|
144
145
|
* ClientAccountBalance returns the balance of the requesting client's account.
|
|
145
146
|
*
|
|
@@ -147,5 +148,5 @@ export declare abstract class FabricERC20Contract extends FabricCrudContract<ERC
|
|
|
147
148
|
* @returns {Number} Returns the account balance
|
|
148
149
|
*/
|
|
149
150
|
ClientAccountBalance(ctx: Context): Promise<number>;
|
|
150
|
-
ClientAccountID(
|
|
151
|
+
ClientAccountID(context: Context): Promise<string>;
|
|
151
152
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"erc20contract.js","sourceRoot":"","sources":["../../../src/contracts/erc20/erc20contract.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"erc20contract.js","sourceRoot":"","sources":["../../../src/contracts/erc20/erc20contract.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,8 +2,7 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.ContractLogger = void 0;
|
|
4
4
|
const logging_1 = require("@decaf-ts/logging");
|
|
5
|
-
const
|
|
6
|
-
const errors_1 = require("./../shared/errors.cjs");
|
|
5
|
+
const db_decorators_1 = require("@decaf-ts/db-decorators");
|
|
7
6
|
/**
|
|
8
7
|
* @description Logger implementation for Fabric chaincode contracts
|
|
9
8
|
* @summary Adapts the standard logging interface to work with Fabric's chaincode context
|
|
@@ -37,15 +36,12 @@ const errors_1 = require("./../shared/errors.cjs");
|
|
|
37
36
|
class ContractLogger extends logging_1.MiniLogger {
|
|
38
37
|
constructor(context, conf, ctx) {
|
|
39
38
|
super(context, conf);
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
throw new
|
|
45
|
-
|
|
46
|
-
else {
|
|
47
|
-
this.logger = ctx.logging.getLogger(context);
|
|
48
|
-
}
|
|
39
|
+
//
|
|
40
|
+
// if (!ctx) {
|
|
41
|
+
// this.logger = new MiniLogger(context, conf);
|
|
42
|
+
if (!ctx)
|
|
43
|
+
throw new db_decorators_1.InternalError(`Context not provided`);
|
|
44
|
+
this.logger = ctx.logging.getLogger(context);
|
|
49
45
|
}
|
|
50
46
|
/**
|
|
51
47
|
* @description Logs a message at the specified level
|
|
@@ -77,7 +73,7 @@ class ContractLogger extends logging_1.MiniLogger {
|
|
|
77
73
|
method = this.logger.silly;
|
|
78
74
|
break;
|
|
79
75
|
default:
|
|
80
|
-
throw new
|
|
76
|
+
throw new db_decorators_1.InternalError("Invalid log level");
|
|
81
77
|
}
|
|
82
78
|
method.call(this.logger, this.createLog(level, msg, stack));
|
|
83
79
|
}
|
|
@@ -94,9 +90,7 @@ exports.ContractLogger = ContractLogger;
|
|
|
94
90
|
* @memberOf module:fabric.contracts
|
|
95
91
|
*/
|
|
96
92
|
const factory = (object, config, ctx) => {
|
|
97
|
-
|
|
98
|
-
throw new Error("Missing Object String");
|
|
99
|
-
return new ContractLogger(object, config || {}, ctx);
|
|
93
|
+
return new ContractLogger(object || ContractLogger.name, config || {}, ctx);
|
|
100
94
|
};
|
|
101
95
|
// Set the factory as the default logger factory
|
|
102
96
|
logging_1.Logging.setFactory(factory);
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import { Logger, LogLevel, MiniLogger, StringLike } from "@decaf-ts/logging";
|
|
2
2
|
import { LoggingConfig } from "@decaf-ts/logging";
|
|
3
3
|
import { Context as Ctx } from "fabric-contract-api";
|
|
4
|
-
import { FabricContractContext } from "./ContractContext";
|
|
5
4
|
/**
|
|
6
5
|
* @description Logger implementation for Fabric chaincode contracts
|
|
7
6
|
* @summary Adapts the standard logging interface to work with Fabric's chaincode context
|
|
@@ -37,7 +36,7 @@ export declare class ContractLogger extends MiniLogger {
|
|
|
37
36
|
* @description The underlying Fabric logger instance
|
|
38
37
|
*/
|
|
39
38
|
protected logger: Logger;
|
|
40
|
-
constructor(context: string, conf: Partial<LoggingConfig> | undefined, ctx?: Ctx
|
|
39
|
+
constructor(context: string, conf: Partial<LoggingConfig> | undefined, ctx?: Ctx);
|
|
41
40
|
/**
|
|
42
41
|
* @description Logs a message at the specified level
|
|
43
42
|
* @summary Overrides the base log method to use the Fabric context's logger
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/contracts/logging.ts"],"names":[],"mappings":";;;AAAA,+CAQ2B;AAG3B,
|
|
1
|
+
{"version":3,"file":"logging.js","sourceRoot":"","sources":["../../src/contracts/logging.ts"],"names":[],"mappings":";;;AAAA,+CAQ2B;AAG3B,2DAAwD;AAExD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAa,cAAe,SAAQ,oBAAU;IAM5C,YACE,OAAe,EACf,IAAwC,EACxC,GAAS;QAET,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QACrB,EAAE;QACF,cAAc;QACd,iDAAiD;QACjD,IAAI,CAAC,GAAG;YAAE,MAAM,IAAI,6BAAa,CAAC,sBAAsB,CAAC,CAAC;QAC1D,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,OAAO,CAAC,SAAS,CAAC,OAAO,CAAsB,CAAC;IACpE,CAAC;IAED;;;;;;;OAOG;IACgB,GAAG,CACpB,KAAe,EACf,GAAuB,EACvB,KAAa;QAEb,IACE,0BAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAa,CAAC;YAClD,0BAAgB,CAAC,KAAK,CAAC;YAEvB,OAAO;QAET,IAAI,MAAM,CAAC;QACX,QAAQ,KAAK,EAAE,CAAC;YACd,KAAK,kBAAQ,CAAC,IAAI;gBAChB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBAC1B,MAAM;YACR,KAAK,kBAAQ,CAAC,OAAO;gBACnB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC;gBAC7B,MAAM;YACR,KAAK,kBAAQ,CAAC,KAAK;gBACjB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC3B,MAAM;YACR,KAAK,kBAAQ,CAAC,KAAK;gBACjB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC3B,MAAM;YACR,KAAK,kBAAQ,CAAC,KAAK;gBACjB,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC3B,MAAM;YACR;gBACE,MAAM,IAAI,6BAAa,CAAC,mBAAmB,CAAC,CAAC;QACjD,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC;IAC9D,CAAC;CACF;AA5DD,wCA4DC;AAED;;;;;;;;;GASG;AACH,MAAM,OAAO,GAAkB,CAC7B,MAAe,EACf,MAA+B,EAC/B,GAAS,EACT,EAAE;IACF,OAAO,IAAI,cAAc,CACvB,MAAM,IAAI,cAAc,CAAC,IAAI,EAC7B,MAAM,IAAI,EAAE,EACZ,GAAU,CACX,CAAC;AACJ,CAAC,CAAC;AAEF,gDAAgD;AAChD,iBAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC"}
|