1
- import { SecurityTokenEvents , TransactionParams } from '@polymathnetwork/contract-wrappers' ;
1
+ import { SecurityTokenEvents } from '@polymathnetwork/contract-wrappers' ;
2
2
import { Procedure } from './Procedure' ;
3
3
import {
4
4
CreateCheckpointProcedureArgs ,
@@ -9,8 +9,16 @@ import {
9
9
import { PolymathError } from '../PolymathError' ;
10
10
import { findEvents } from '../utils' ;
11
11
import { SecurityToken , Checkpoint } from '../entities' ;
12
+ import { Factories } from '../Context' ;
12
13
13
- export class CreateCheckpoint extends Procedure < CreateCheckpointProcedureArgs , Checkpoint > {
14
+ export const createRefreshSecurityTokenFactoryResolver = (
15
+ factories : Factories ,
16
+ securityTokenId : string
17
+ ) => async ( ) => {
18
+ return factories . securityTokenFactory . refresh ( securityTokenId ) ;
19
+ } ;
20
+
21
+ export class CreateCheckpoint extends Procedure < CreateCheckpointProcedureArgs , Checkpoint | void > {
14
22
public type = ProcedureType . CreateCheckpoint ;
15
23
16
24
public async prepareTransactions ( ) {
@@ -32,7 +40,7 @@ export class CreateCheckpoint extends Procedure<CreateCheckpointProcedureArgs, C
32
40
}
33
41
34
42
const securityTokenId = SecurityToken . generateId ( { symbol } ) ;
35
- const [ checkpoint ] = await this . addTransaction < { } , [ Checkpoint ] > (
43
+ const [ checkpoint ] = await this . addTransaction < { } , [ Checkpoint , void ] > (
36
44
securityToken . createCheckpoint ,
37
45
{
38
46
tag : PolyTransactionTag . CreateCheckpoint ,
@@ -48,7 +56,6 @@ export class CreateCheckpoint extends Procedure<CreateCheckpointProcedureArgs, C
48
56
const { args : eventArgs } = event ;
49
57
50
58
const { _checkpointId } = eventArgs ;
51
- await factories . securityTokenFactory . refresh ( securityTokenId ) ; // Issue leaving this in separate resolver
52
59
return factories . checkpointFactory . fetch (
53
60
Checkpoint . generateId ( {
54
61
securityTokenId : SecurityToken . generateId ( { symbol } ) ,
@@ -62,6 +69,7 @@ export class CreateCheckpoint extends Procedure<CreateCheckpointProcedureArgs, C
62
69
"The Checkpoint was successfully created but the corresponding event wasn't fired. Please report this issue to the Polymath team." ,
63
70
} ) ;
64
71
} ,
72
+ createRefreshSecurityTokenFactoryResolver ( factories , securityTokenId ) ,
65
73
] ,
66
74
}
67
75
) ( { } ) ;
0 commit comments