@@ -23,27 +23,33 @@ function updateDataPoint(
23
23
const newCounter = new Entity ( ) ;
24
24
const counter = store . get ( "Counter" , "0" ) ;
25
25
for ( let i = 0 ; i < VARIABLES . length ; i ++ ) {
26
- const targetVar = VARIABLES [ i ] ;
27
- if ( targetVar === variable ) {
28
- newCounter . set (
29
- targetVar ,
30
- ! counter
31
- ? Value . fromBigInt ( delta )
32
- : Value . fromBigInt ( counter . get ( targetVar ) ! . toBigInt ( ) . plus ( delta ) )
33
- ) ;
34
- } else {
35
- newCounter . set (
36
- targetVar ,
37
- ! counter ? Value . fromBigInt ( ZERO ) : counter . get ( VARIABLES [ i ] ) !
38
- ) ;
39
- }
26
+ const currentVar = VARIABLES [ i ] ;
27
+ newCounter . set (
28
+ currentVar ,
29
+ getNewValue ( currentVar , variable , delta , counter )
30
+ ) ;
40
31
}
41
32
const dayID = timestamp . toI32 ( ) / 86400 ;
42
33
const dayStartTimestamp = dayID * 86400 ;
43
34
store . set ( "Counter" , dayStartTimestamp . toString ( ) , newCounter ) ;
44
35
store . set ( "Counter" , "0" , newCounter ) ;
45
36
}
46
37
38
+ function getNewValue (
39
+ currentVar : string ,
40
+ targetVar : string ,
41
+ delta : BigInt ,
42
+ counter : Entity | null
43
+ ) : Value {
44
+ if ( currentVar === targetVar ) {
45
+ return ! counter
46
+ ? Value . fromBigInt ( delta )
47
+ : Value . fromBigInt ( counter . get ( currentVar ) ! . toBigInt ( ) . plus ( delta ) ) ;
48
+ } else {
49
+ return ! counter ? Value . fromBigInt ( ZERO ) : counter . get ( currentVar ) ! ;
50
+ }
51
+ }
52
+
47
53
export function updateStakedPNK ( delta : BigInt , timestamp : BigInt ) : void {
48
54
updateDataPoint ( delta , timestamp , "stakedPNK" ) ;
49
55
}
0 commit comments