@@ -234,8 +234,8 @@ interface PushAvailableTokensParams extends TxParams {
234
234
/**
235
235
* @param name Name of the template will be created
236
236
* @param numberOfTokens Number of tokens that should be assigned to schedule
237
- * @param duration Duration of the vesting schedule
238
- * @param frequency Frequency of the vesting schedule
237
+ * @param duration Duration of the vesting schedule in seconds
238
+ * @param frequency Frequency of the vesting schedule in seconds
239
239
*/
240
240
interface AddTemplateParams extends TxParams {
241
241
name : string ;
@@ -262,7 +262,7 @@ interface RemoveTemplateParams extends TxParams {
262
262
interface AddScheduleParams extends TxParams {
263
263
beneficiary : string ;
264
264
templateName : string ;
265
- numberOfTokens : number ;
265
+ numberOfTokens : BigNumber ;
266
266
duration : number ;
267
267
frequency : number ;
268
268
startTime : Date ;
@@ -349,7 +349,7 @@ interface PushAvailableTokensMultiParams extends TxParams {
349
349
interface AddScheduleMultiParams extends TxParams {
350
350
beneficiaries : string [ ] ;
351
351
templateNames : string [ ] ;
352
- numberOfTokens : number [ ] ;
352
+ numberOfTokens : BigNumber [ ] ;
353
353
durations : number [ ] ;
354
354
frequencies : number [ ] ;
355
355
startTimes : Date [ ] ;
@@ -397,7 +397,7 @@ interface Schedule {
397
397
}
398
398
399
399
interface BeneficiarySchedule {
400
- numberOfTokens : number ;
400
+ numberOfTokens : BigNumber ;
401
401
duration : number ;
402
402
frequency : number ;
403
403
startTime : Date ;
@@ -562,7 +562,7 @@ export default class VestingEscrowWalletWrapper extends ModuleWrapper {
562
562
assert . assert ( await this . isCallerAllowed ( params . txData , Perm . Admin ) , 'Caller is not allowed' ) ;
563
563
assert . assert ( params . name !== '' , 'Invalid name' ) ;
564
564
assert . assert ( ! ( await this . getAllTemplateNames ( ) ) . includes ( params . name ) , 'Template name already exists' ) ;
565
- await this . validateTemplate ( params . numberOfTokens . toNumber ( ) , params . duration , params . frequency ) ;
565
+ await this . validateTemplate ( params . numberOfTokens , params . duration , params . frequency ) ;
566
566
return ( await this . contract ) . addTemplate . sendTransactionAsync (
567
567
stringToBytes32 ( params . name ) ,
568
568
params . numberOfTokens ,
@@ -618,7 +618,7 @@ export default class VestingEscrowWalletWrapper extends ModuleWrapper {
618
618
return ( await this . contract ) . addSchedule . sendTransactionAsync (
619
619
params . beneficiary ,
620
620
stringToBytes32 ( params . templateName ) ,
621
- numberToBigNumber ( params . numberOfTokens ) ,
621
+ params . numberOfTokens ,
622
622
numberToBigNumber ( params . duration ) ,
623
623
numberToBigNumber ( params . frequency ) ,
624
624
dateToBigNumber ( params . startTime ) ,
@@ -714,7 +714,7 @@ export default class VestingEscrowWalletWrapper extends ModuleWrapper {
714
714
}
715
715
716
716
const response : BeneficiarySchedule = {
717
- numberOfTokens : result [ 0 ] . toNumber ( ) ,
717
+ numberOfTokens : result [ 0 ] ,
718
718
duration : result [ 1 ] . toNumber ( ) ,
719
719
frequency : result [ 2 ] . toNumber ( ) ,
720
720
startTime : bigNumberToDate ( result [ 3 ] ) ,
@@ -798,9 +798,7 @@ export default class VestingEscrowWalletWrapper extends ModuleWrapper {
798
798
params . templateNames . map ( name => {
799
799
return stringToBytes32 ( name ) ;
800
800
} ) ,
801
- params . numberOfTokens . map ( number => {
802
- return numberToBigNumber ( number ) ;
803
- } ) ,
801
+ params . numberOfTokens ,
804
802
params . durations . map ( duration => {
805
803
return numberToBigNumber ( duration ) ;
806
804
} ) ,
@@ -884,12 +882,12 @@ export default class VestingEscrowWalletWrapper extends ModuleWrapper {
884
882
) ;
885
883
} ;
886
884
887
- private validateTemplate = async ( numberOfTokens : number , duration : number , frequency : number ) => {
888
- assert . assert ( numberOfTokens > 0 , 'Zero amount' ) ;
885
+ private validateTemplate = async ( numberOfTokens : BigNumber , duration : number , frequency : number ) => {
886
+ assert . assert ( numberOfTokens . toNumber ( ) > 0 , 'Zero amount' ) ;
889
887
assert . assert ( duration % frequency === 0 , 'Invalid frequency' ) ;
890
888
const periodCount = duration / frequency ;
891
- assert . assert ( numberOfTokens % periodCount === 0 , 'Invalid period count' ) ;
892
- const amountPerPeriod = numberOfTokens / periodCount ;
889
+ assert . assert ( numberOfTokens . toNumber ( ) % periodCount === 0 , 'Invalid period count' ) ;
890
+ const amountPerPeriod = numberOfTokens . toNumber ( ) / periodCount ;
893
891
const granularity = await ( await this . securityTokenContract ( ) ) . granularity . callAsync ( ) ;
894
892
assert . assert ( amountPerPeriod % granularity . toNumber ( ) === 0 , 'Invalid granularity' ) ;
895
893
} ;
0 commit comments