@wharfkit/resources 1.5.0-rc3 → 1.5.0-rc4
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/lib/wharfkit-resources.d.ts +1 -23
- package/lib/wharfkit-resources.js +13 -162
- package/lib/wharfkit-resources.js.map +1 -1
- package/lib/wharfkit-resources.m.js +13 -162
- package/lib/wharfkit-resources.m.js.map +1 -1
- package/package.json +1 -1
- package/src/powerup/abstract.ts +3 -108
- package/src/powerup/cpu.ts +1 -57
- package/src/powerup/net.ts +0 -39
- package/src/rex.ts +10 -9
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @wharfkit/resources v1.5.0-
|
|
2
|
+
* @wharfkit/resources v1.5.0-rc4
|
|
3
3
|
* https://github.com/wharfkit/resources
|
|
4
4
|
*
|
|
5
5
|
* @license
|
|
@@ -45,16 +45,10 @@ class PowerUpStateResource extends Struct {
|
|
|
45
45
|
this.default_block_net_limit = UInt64.from(1048576000);
|
|
46
46
|
}
|
|
47
47
|
// Get the current number of allocated units (shift from REX -> PowerUp)
|
|
48
|
-
get allocated_legacy() {
|
|
49
|
-
return 1 - Number(this.weight_ratio) / Number(this.target_weight_ratio) / 100;
|
|
50
|
-
}
|
|
51
48
|
get allocated() {
|
|
52
49
|
return 1 - Number(this.weight_ratio.dividing(this.target_weight_ratio)) / 100;
|
|
53
50
|
}
|
|
54
51
|
// Get the current percentage of reserved units
|
|
55
|
-
get reserved_legacy() {
|
|
56
|
-
return new BN(String(this.utilization)) / new BN(String(this.weight));
|
|
57
|
-
}
|
|
58
52
|
get reserved() {
|
|
59
53
|
return this.utilization.dividing(this.weight);
|
|
60
54
|
}
|
|
@@ -63,40 +57,13 @@ class PowerUpStateResource extends Struct {
|
|
|
63
57
|
return this.min_price.symbol;
|
|
64
58
|
}
|
|
65
59
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L358
|
|
66
|
-
utilization_increase_legacy(frac) {
|
|
67
|
-
const { weight } = this;
|
|
68
|
-
const frac128 = UInt128.from(frac);
|
|
69
|
-
const utilization_increase = new BN(weight.value.mul(new BN(frac128.value))) / Math.pow(10, 15);
|
|
70
|
-
return Math.ceil(utilization_increase);
|
|
71
|
-
}
|
|
72
60
|
utilization_increase(frac) {
|
|
73
61
|
const base = intToBigDecimal(frac);
|
|
74
62
|
const weight = intToBigDecimal(this.weight);
|
|
75
63
|
const multiplier = intToBigDecimal(Math.pow(10, 15));
|
|
76
|
-
|
|
77
|
-
console.log('fooo', Number(weight.multiply(base).divide(multiplier).getValue()));
|
|
78
|
-
return frac.multiplying(this.weight).dividing(UInt128.from(Math.pow(10, 15)), 'ceil');
|
|
64
|
+
return UInt128.from(base.multiply(weight).divide(multiplier, 15).ceil().getValue());
|
|
79
65
|
}
|
|
80
66
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L284-L298
|
|
81
|
-
price_function_legacy(utilization) {
|
|
82
|
-
const { exponent, weight } = this;
|
|
83
|
-
const max_price = this.max_price.value;
|
|
84
|
-
const min_price = this.min_price.value;
|
|
85
|
-
let price = min_price;
|
|
86
|
-
const new_exponent = Number(exponent) - 1.0;
|
|
87
|
-
if (new_exponent <= 0.0) {
|
|
88
|
-
return max_price;
|
|
89
|
-
}
|
|
90
|
-
else {
|
|
91
|
-
const util_weight = intToBigDecimal(utilization).divide(intToBigDecimal(weight), 18);
|
|
92
|
-
console.log('old', String(util_weight.getValue()));
|
|
93
|
-
const difference = max_price - min_price;
|
|
94
|
-
console.log('diff', difference);
|
|
95
|
-
price += difference * Math.pow(Number(util_weight.getValue()), new_exponent);
|
|
96
|
-
}
|
|
97
|
-
console.log('price_function_legacy return', price);
|
|
98
|
-
return price;
|
|
99
|
-
}
|
|
100
67
|
price_function(utilization) {
|
|
101
68
|
const { weight } = this;
|
|
102
69
|
let price = this.min_price.value;
|
|
@@ -107,28 +74,12 @@ class PowerUpStateResource extends Struct {
|
|
|
107
74
|
else {
|
|
108
75
|
// const util_weight = utilization.dividing(weight)
|
|
109
76
|
const util_weight = intToBigDecimal(utilization).divide(intToBigDecimal(weight), 18);
|
|
110
|
-
console.log('new', String(util_weight.getValue()));
|
|
111
77
|
const difference = this.max_price.value - this.min_price.value;
|
|
112
|
-
console.log('diff', String(difference));
|
|
113
78
|
price += difference * Math.pow(Number(util_weight.getValue()), new_exponent);
|
|
114
79
|
}
|
|
115
|
-
console.log('price_function return', price);
|
|
116
80
|
return price;
|
|
117
81
|
}
|
|
118
82
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L274-L280
|
|
119
|
-
price_integral_delta_legacy(start_utilization, end_utilization) {
|
|
120
|
-
const { exponent, weight } = this;
|
|
121
|
-
const max_price = this.max_price.value;
|
|
122
|
-
const min_price = this.min_price.value;
|
|
123
|
-
const coefficient = (max_price - min_price) / exponent.value;
|
|
124
|
-
const start_u = Number(start_utilization.dividing(weight));
|
|
125
|
-
const end_u = Number(end_utilization.dividing(weight));
|
|
126
|
-
const delta = min_price * end_u -
|
|
127
|
-
min_price * start_u +
|
|
128
|
-
coefficient * Math.pow(end_u, exponent.value) -
|
|
129
|
-
coefficient * Math.pow(start_u, exponent.value);
|
|
130
|
-
return delta;
|
|
131
|
-
}
|
|
132
83
|
price_integral_delta(start_utilization, end_utilization) {
|
|
133
84
|
const difference = Asset.fromUnits(this.max_price.units.subtracting(this.min_price.units), this.symbol);
|
|
134
85
|
const coefficient = difference.value / this.exponent.value;
|
|
@@ -141,25 +92,6 @@ class PowerUpStateResource extends Struct {
|
|
|
141
92
|
return delta;
|
|
142
93
|
}
|
|
143
94
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L262-L315
|
|
144
|
-
fee_legacy(utilization_increase, adjusted_utilization) {
|
|
145
|
-
const { utilization, weight } = this;
|
|
146
|
-
let start_utilization = Int64.from(utilization);
|
|
147
|
-
const end_utilization = start_utilization.adding(utilization_increase);
|
|
148
|
-
let fee = 0;
|
|
149
|
-
if (start_utilization.lt(adjusted_utilization)) {
|
|
150
|
-
const min = Math.min(utilization_increase, adjusted_utilization.subtracting(start_utilization));
|
|
151
|
-
console.log('min', min);
|
|
152
|
-
fee += Number(new bigDecimal(this.price_function_legacy(adjusted_utilization) * min)
|
|
153
|
-
.divide(new bigDecimal(weight.toString()))
|
|
154
|
-
.getValue());
|
|
155
|
-
start_utilization = adjusted_utilization;
|
|
156
|
-
}
|
|
157
|
-
if (start_utilization.gt(end_utilization)) {
|
|
158
|
-
fee += this.price_integral_delta(start_utilization, end_utilization);
|
|
159
|
-
}
|
|
160
|
-
console.log('fee_legacy', fee);
|
|
161
|
-
return fee;
|
|
162
|
-
}
|
|
163
95
|
fee(utilization_increase, adjusted_utilization) {
|
|
164
96
|
const { utilization, weight } = this;
|
|
165
97
|
let start_utilization = Int64.from(utilization);
|
|
@@ -167,32 +99,14 @@ class PowerUpStateResource extends Struct {
|
|
|
167
99
|
let fee = 0;
|
|
168
100
|
if (start_utilization.lt(adjusted_utilization)) {
|
|
169
101
|
const min = Math.min(Number(utilization_increase), Number(adjusted_utilization.subtracting(start_utilization)));
|
|
170
|
-
console.log('min', min);
|
|
171
|
-
// fee += Number(
|
|
172
|
-
// new bigDecimal(
|
|
173
|
-
// String(
|
|
174
|
-
// (this.price_function(adjusted_utilization) /
|
|
175
|
-
// Math.pow(10, this.symbol.precision)) *
|
|
176
|
-
// min
|
|
177
|
-
// )
|
|
178
|
-
// )
|
|
179
|
-
// .divide(new bigDecimal(weight.toString()))
|
|
180
|
-
// .getValue()
|
|
181
|
-
// )
|
|
182
|
-
// fee += Number(
|
|
183
|
-
// new bigDecimal(this.price_function_legacy(adjusted_utilization) * min)
|
|
184
|
-
// .divide(new bigDecimal(weight.toString()))
|
|
185
|
-
// .getValue()
|
|
186
|
-
// )
|
|
187
102
|
fee += Number(intToBigDecimal(this.price_function(adjusted_utilization) * min)
|
|
188
103
|
.divide(intToBigDecimal(weight))
|
|
189
104
|
.getValue());
|
|
190
105
|
start_utilization = adjusted_utilization;
|
|
191
106
|
}
|
|
192
|
-
if (start_utilization.
|
|
107
|
+
if (start_utilization.lt(end_utilization)) {
|
|
193
108
|
fee += this.price_integral_delta(start_utilization, end_utilization);
|
|
194
109
|
}
|
|
195
|
-
console.log('fee', fee);
|
|
196
110
|
return fee;
|
|
197
111
|
}
|
|
198
112
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L105-L117
|
|
@@ -266,16 +180,12 @@ let PowerUpStateResourceCPU = class PowerUpStateResourceCPU extends PowerUpState
|
|
|
266
180
|
// Return smallest units per day, μs (microseconds)
|
|
267
181
|
this.per_day = (options) => this.us_per_day(options);
|
|
268
182
|
// Default frac generation by smallest unit type
|
|
269
|
-
this.frac_legacy = (usage, us) => this.frac_by_us_legacy(usage, us);
|
|
270
183
|
this.frac = (usage, us) => this.frac_by_us(usage, us);
|
|
271
184
|
// Frac generation by ms (milliseconds)
|
|
272
|
-
this.frac_by_ms_legacy = (usage, ms) => this.frac_by_us_legacy(usage, ms * 1000);
|
|
273
185
|
this.frac_by_ms = (usage, ms) => this.frac_by_us(usage, ms * 1000);
|
|
274
186
|
// Price generation by smallest units, μs (microseconds)
|
|
275
|
-
this.price_per_legacy = (usage, us = 1000, options) => this.price_per_us_legacy(usage, us, options);
|
|
276
187
|
this.price_per = (usage, us = 1000, options) => this.price_per_us(usage, us, options);
|
|
277
188
|
// Price generation by ms (milliseconds)
|
|
278
|
-
this.price_per_ms_legacy = (usage, ms = 1, options) => this.price_per_us_legacy(usage, ms * 1000, options);
|
|
279
189
|
this.price_per_ms = (usage, ms = 1, options) => this.price_per_us(usage, ms * 1000, options);
|
|
280
190
|
}
|
|
281
191
|
// Return ms (milliseconds) per day
|
|
@@ -290,27 +200,14 @@ let PowerUpStateResourceCPU = class PowerUpStateResourceCPU extends PowerUpState
|
|
|
290
200
|
return Number(limit) * 2 * 60 * 60 * 24;
|
|
291
201
|
}
|
|
292
202
|
// Convert weight to μs (microseconds)
|
|
293
|
-
weight_to_us_legacy(sample, weight) {
|
|
294
|
-
return Math.ceil((weight * Number(sample)) / BNPrecision);
|
|
295
|
-
}
|
|
296
203
|
weight_to_us(sample, weight) {
|
|
297
204
|
return UInt128.from(UInt128.from(weight).multiplying(Int64.from(sample)).dividing(BNPrecision, 'ceil'));
|
|
298
205
|
}
|
|
299
206
|
// Convert μs (microseconds) to weight
|
|
300
|
-
us_to_weight_legacy(sample, us) {
|
|
301
|
-
const sampled = intToBigDecimal(sample);
|
|
302
|
-
return Math.floor((us / Number(sampled.getValue())) * BNPrecision);
|
|
303
|
-
}
|
|
304
207
|
us_to_weight(sample, us) {
|
|
305
|
-
return Int64.from(us).multiplying(BNPrecision).dividing(
|
|
208
|
+
return Int64.from(us).multiplying(BNPrecision).dividing(sample, 'floor');
|
|
306
209
|
}
|
|
307
210
|
// Frac generation by μs (microseconds)
|
|
308
|
-
frac_by_us_legacy(usage, us) {
|
|
309
|
-
const weight = intToBigDecimal(this.us_to_weight_legacy(usage.cpu, us));
|
|
310
|
-
const current = intToBigDecimal(this.weight);
|
|
311
|
-
const frac = weight.divide(current);
|
|
312
|
-
return Math.floor(Number(frac.getValue()) * Math.pow(10, 15));
|
|
313
|
-
}
|
|
314
211
|
frac_by_us(usage, us) {
|
|
315
212
|
const precision = 15;
|
|
316
213
|
const converted = intToBigDecimal(this.us_to_weight(usage.cpu, us));
|
|
@@ -320,41 +217,17 @@ let PowerUpStateResourceCPU = class PowerUpStateResourceCPU extends PowerUpState
|
|
|
320
217
|
return Int64.from(frac.getValue());
|
|
321
218
|
}
|
|
322
219
|
// Price generation by μs (microseconds)
|
|
323
|
-
price_per_us_legacy(usage, us = 1000, options) {
|
|
324
|
-
// Determine the utilization increase by this action
|
|
325
|
-
const frac = UInt128.from(this.frac_legacy(usage, us));
|
|
326
|
-
console.log('frac', String(frac));
|
|
327
|
-
const utilization_increase = this.utilization_increase_legacy(frac);
|
|
328
|
-
console.log('utilization_increase', String(utilization_increase));
|
|
329
|
-
// Determine the adjusted utilization if needed
|
|
330
|
-
const adjusted_utilization = this.determine_adjusted_utilization(options);
|
|
331
|
-
console.log('adjusted_utilization', String(adjusted_utilization));
|
|
332
|
-
// Derive the fee from the increase and utilization
|
|
333
|
-
const fee = this.fee_legacy(utilization_increase, adjusted_utilization);
|
|
334
|
-
console.log('fee', fee);
|
|
335
|
-
// Force the fee up to the next highest value of precision
|
|
336
|
-
const precision = Math.pow(10, this.max_price.symbol.precision);
|
|
337
|
-
const value = Math.ceil(fee * precision) / precision;
|
|
338
|
-
console.log('ceil', value);
|
|
339
|
-
// Return the modified fee
|
|
340
|
-
return value;
|
|
341
|
-
}
|
|
342
220
|
price_per_us(usage, us = 1000, options) {
|
|
343
221
|
// Determine the utilization increase by this action
|
|
344
222
|
const frac = UInt128.from(this.frac(usage, us));
|
|
345
|
-
console.log('frac', String(frac));
|
|
346
223
|
const utilization_increase = this.utilization_increase(frac);
|
|
347
|
-
console.log('utilization_increase', String(utilization_increase));
|
|
348
224
|
// Determine the adjusted utilization if needed
|
|
349
225
|
const adjusted_utilization = this.determine_adjusted_utilization(options);
|
|
350
|
-
console.log('adjusted_utilization', String(adjusted_utilization));
|
|
351
226
|
// Derive the fee from the increase and utilization
|
|
352
227
|
const fee = this.fee(utilization_increase, adjusted_utilization);
|
|
353
|
-
console.log('fee', fee);
|
|
354
228
|
// Force the fee up to the next highest value of precision
|
|
355
229
|
const precision = Math.pow(10, this.max_price.symbol.precision);
|
|
356
230
|
const value = Math.ceil(fee * precision) / precision;
|
|
357
|
-
console.log('ceil', value);
|
|
358
231
|
// Return the modified fee
|
|
359
232
|
return value;
|
|
360
233
|
}
|
|
@@ -369,16 +242,12 @@ let PowerUpStateResourceNET = class PowerUpStateResourceNET extends PowerUpState
|
|
|
369
242
|
// Return smallest units per day, bytes
|
|
370
243
|
this.per_day = (options) => this.bytes_per_day(options);
|
|
371
244
|
// Default frac generation by smallest unit type
|
|
372
|
-
this.frac_legacy = (usage, bytes) => this.frac_by_bytes_legacy(usage, bytes);
|
|
373
245
|
this.frac = (usage, bytes) => this.frac_by_bytes(usage, bytes);
|
|
374
246
|
// Frac generation by kb
|
|
375
|
-
this.frac_by_kb_legacy = (usage, kilobytes) => this.frac_by_bytes_legacy(usage, kilobytes * 1000);
|
|
376
247
|
this.frac_by_kb = (usage, kilobytes) => this.frac_by_bytes(usage, kilobytes * 1000);
|
|
377
248
|
// Price generation by smallest units, bytes
|
|
378
|
-
this.price_per_legacy = (usage, bytes = 1000, options) => this.price_per_byte_legacy(usage, bytes, options);
|
|
379
249
|
this.price_per = (usage, bytes = 1000, options) => this.price_per_byte(usage, bytes, options);
|
|
380
250
|
// Price generation by kb
|
|
381
|
-
this.price_per_kb_legacy = (usage, kilobytes = 1, options) => this.price_per_byte_legacy(usage, kilobytes * 1000, options);
|
|
382
251
|
this.price_per_kb = (usage, kilobytes = 1, options) => this.price_per_byte(usage, kilobytes * 1000, options);
|
|
383
252
|
}
|
|
384
253
|
// Return kb per day
|
|
@@ -393,25 +262,14 @@ let PowerUpStateResourceNET = class PowerUpStateResourceNET extends PowerUpState
|
|
|
393
262
|
return Number(limit) * 2 * 60 * 60 * 24;
|
|
394
263
|
}
|
|
395
264
|
// Convert weight to bytes
|
|
396
|
-
weight_to_bytes_legacy(sample, weight) {
|
|
397
|
-
return Math.ceil((weight * Number(sample)) / BNPrecision);
|
|
398
|
-
}
|
|
399
265
|
weight_to_bytes(sample, weight) {
|
|
400
266
|
return UInt128.from(UInt128.from(weight).multiplying(Int64.from(sample)).dividing(BNPrecision, 'ceil'));
|
|
401
267
|
}
|
|
402
268
|
// Convert bytes to weight
|
|
403
|
-
bytes_to_weight_legacy(sample, bytes) {
|
|
404
|
-
return Math.floor((bytes / Number(sample)) * BNPrecision);
|
|
405
|
-
}
|
|
406
269
|
bytes_to_weight(sample, bytes) {
|
|
407
270
|
return Int64.from(bytes).multiplying(BNPrecision).dividing(Int64.from(sample), 'floor');
|
|
408
271
|
}
|
|
409
272
|
// Frac generation by bytes
|
|
410
|
-
frac_by_bytes_legacy(usage, bytes) {
|
|
411
|
-
const { weight } = this;
|
|
412
|
-
const frac = new BN(this.bytes_to_weight_legacy(usage.net, bytes)) / Number(weight);
|
|
413
|
-
return Math.floor(frac * Math.pow(10, 15));
|
|
414
|
-
}
|
|
415
273
|
frac_by_bytes(usage, bytes) {
|
|
416
274
|
const precision = 15;
|
|
417
275
|
const converted = intToBigDecimal(this.bytes_to_weight(usage.net, bytes));
|
|
@@ -421,19 +279,6 @@ let PowerUpStateResourceNET = class PowerUpStateResourceNET extends PowerUpState
|
|
|
421
279
|
return Int64.from(frac.getValue());
|
|
422
280
|
}
|
|
423
281
|
// Price generation by bytes
|
|
424
|
-
price_per_byte_legacy(usage, bytes = 1000, options) {
|
|
425
|
-
// Determine the utilization increase by this action
|
|
426
|
-
const frac = UInt128.from(this.frac_legacy(usage, bytes));
|
|
427
|
-
const utilization_increase = this.utilization_increase_legacy(frac);
|
|
428
|
-
// Determine the adjusted utilization if needed
|
|
429
|
-
const adjusted_utilization = this.determine_adjusted_utilization(options);
|
|
430
|
-
// Derive the fee from the increase and utilization
|
|
431
|
-
const fee = this.fee_legacy(utilization_increase, adjusted_utilization);
|
|
432
|
-
const precision = Math.pow(10, this.max_price.symbol.precision);
|
|
433
|
-
const value = Math.ceil(fee * precision) / precision;
|
|
434
|
-
// Return the modified fee
|
|
435
|
-
return value;
|
|
436
|
-
}
|
|
437
282
|
price_per_byte(usage, bytes = 1000, options) {
|
|
438
283
|
// Determine the utilization increase by this action
|
|
439
284
|
const frac = UInt128.from(this.frac(usage, bytes));
|
|
@@ -557,11 +402,17 @@ let REXState = class REXState extends Struct {
|
|
|
557
402
|
return this.total_lent.symbol.precision;
|
|
558
403
|
}
|
|
559
404
|
get value() {
|
|
560
|
-
|
|
561
|
-
|
|
405
|
+
const lent = intToBigDecimal(this.total_lent.units);
|
|
406
|
+
const unlent = intToBigDecimal(this.total_unlent.units);
|
|
407
|
+
const rex = intToBigDecimal(this.total_rex.units);
|
|
408
|
+
return Number(lent.add(unlent).divide(rex, 18).getValue());
|
|
562
409
|
}
|
|
563
410
|
exchange(amount) {
|
|
564
|
-
|
|
411
|
+
const value = intToBigDecimal(amount.units);
|
|
412
|
+
const lendable = intToBigDecimal(this.total_lendable.units);
|
|
413
|
+
const rex = intToBigDecimal(this.total_rex.units);
|
|
414
|
+
const tokens = value.multiply(lendable).divide(rex, this.precision);
|
|
415
|
+
return Asset.fromUnits(Number(tokens.getValue()), this.symbol);
|
|
565
416
|
}
|
|
566
417
|
cpu_price_per_ms(sample, ms = 1) {
|
|
567
418
|
return this.cpu_price_per_us(sample, ms * 1000);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wharfkit-resources.m.js","sources":["../src/powerup/abstract.ts","../src/powerup/cpu.ts","../src/powerup/net.ts","../src/powerup.ts","../src/ram.ts","../src/rex.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wharfkit-resources.m.js","sources":["../src/powerup/abstract.ts","../src/powerup/cpu.ts","../src/powerup/net.ts","../src/powerup.ts","../src/ram.ts","../src/rex.ts","../src/index.ts"],"sourcesContent":[null,null,null,null,null,null,null],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wharfkit/resources",
|
|
3
3
|
"description": "Library to assist in Antelope-blockchain resource calculations.",
|
|
4
|
-
"version": "1.5.0-
|
|
4
|
+
"version": "1.5.0-rc4",
|
|
5
5
|
"homepage": "https://github.com/wharfkit/resources",
|
|
6
6
|
"license": "BSD-3-Clause",
|
|
7
7
|
"main": "lib/wharfkit-resources.js",
|
package/src/powerup/abstract.ts
CHANGED
|
@@ -10,10 +10,8 @@ import {
|
|
|
10
10
|
UInt8,
|
|
11
11
|
} from '@wharfkit/antelope'
|
|
12
12
|
|
|
13
|
-
import BN from 'bn.js'
|
|
14
|
-
import {PowerUpStateOptions} from './options'
|
|
15
|
-
import bigDecimal from 'js-big-decimal'
|
|
16
13
|
import {intToBigDecimal} from '..'
|
|
14
|
+
import {PowerUpStateOptions} from './options'
|
|
17
15
|
|
|
18
16
|
export abstract class PowerUpStateResource extends Struct {
|
|
19
17
|
@Struct.field('uint8') version!: UInt8
|
|
@@ -38,19 +36,11 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
38
36
|
abstract per_day(options?: PowerUpStateOptions): number
|
|
39
37
|
|
|
40
38
|
// Get the current number of allocated units (shift from REX -> PowerUp)
|
|
41
|
-
public get allocated_legacy() {
|
|
42
|
-
return 1 - Number(this.weight_ratio) / Number(this.target_weight_ratio) / 100
|
|
43
|
-
}
|
|
44
|
-
|
|
45
39
|
public get allocated(): number {
|
|
46
40
|
return 1 - Number(this.weight_ratio.dividing(this.target_weight_ratio)) / 100
|
|
47
41
|
}
|
|
48
42
|
|
|
49
43
|
// Get the current percentage of reserved units
|
|
50
|
-
public get reserved_legacy() {
|
|
51
|
-
return new BN(String(this.utilization)) / new BN(String(this.weight))
|
|
52
|
-
}
|
|
53
|
-
|
|
54
44
|
public get reserved(): Int64 {
|
|
55
45
|
return this.utilization.dividing(this.weight)
|
|
56
46
|
}
|
|
@@ -61,43 +51,14 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
61
51
|
}
|
|
62
52
|
|
|
63
53
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L358
|
|
64
|
-
utilization_increase_legacy(frac) {
|
|
65
|
-
const {weight} = this
|
|
66
|
-
const frac128 = UInt128.from(frac)
|
|
67
|
-
const utilization_increase =
|
|
68
|
-
new BN(weight.value.mul(new BN(frac128.value))) / Math.pow(10, 15)
|
|
69
|
-
return Math.ceil(utilization_increase)
|
|
70
|
-
}
|
|
71
|
-
|
|
72
54
|
utilization_increase(frac: UInt128) {
|
|
73
55
|
const base = intToBigDecimal(frac)
|
|
74
56
|
const weight = intToBigDecimal(this.weight)
|
|
75
57
|
const multiplier = intToBigDecimal(Math.pow(10, 15))
|
|
76
|
-
|
|
77
|
-
console.log('fooo', Number(weight.multiply(base).divide(multiplier).getValue()))
|
|
78
|
-
return frac.multiplying(this.weight).dividing(UInt128.from(Math.pow(10, 15)), 'ceil')
|
|
58
|
+
return UInt128.from(base.multiply(weight).divide(multiplier, 15).ceil().getValue())
|
|
79
59
|
}
|
|
80
60
|
|
|
81
61
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L284-L298
|
|
82
|
-
price_function_legacy(utilization: Int64): number {
|
|
83
|
-
const {exponent, weight} = this
|
|
84
|
-
const max_price: number = this.max_price.value
|
|
85
|
-
const min_price: number = this.min_price.value
|
|
86
|
-
let price = min_price
|
|
87
|
-
const new_exponent = Number(exponent) - 1.0
|
|
88
|
-
if (new_exponent <= 0.0) {
|
|
89
|
-
return max_price
|
|
90
|
-
} else {
|
|
91
|
-
const util_weight = intToBigDecimal(utilization).divide(intToBigDecimal(weight), 18)
|
|
92
|
-
console.log('old', String(util_weight.getValue()))
|
|
93
|
-
const difference = max_price - min_price
|
|
94
|
-
console.log('diff', difference)
|
|
95
|
-
price += difference * Math.pow(Number(util_weight.getValue()), new_exponent)
|
|
96
|
-
}
|
|
97
|
-
console.log('price_function_legacy return', price)
|
|
98
|
-
return price
|
|
99
|
-
}
|
|
100
|
-
|
|
101
62
|
price_function(utilization: Int64): number {
|
|
102
63
|
const {weight} = this
|
|
103
64
|
let price = this.min_price.value
|
|
@@ -107,31 +68,13 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
107
68
|
} else {
|
|
108
69
|
// const util_weight = utilization.dividing(weight)
|
|
109
70
|
const util_weight = intToBigDecimal(utilization).divide(intToBigDecimal(weight), 18)
|
|
110
|
-
console.log('new', String(util_weight.getValue()))
|
|
111
71
|
const difference = this.max_price.value - this.min_price.value
|
|
112
|
-
console.log('diff', String(difference))
|
|
113
72
|
price += difference * Math.pow(Number(util_weight.getValue()), new_exponent)
|
|
114
73
|
}
|
|
115
|
-
console.log('price_function return', price)
|
|
116
74
|
return price
|
|
117
75
|
}
|
|
118
76
|
|
|
119
77
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L274-L280
|
|
120
|
-
price_integral_delta_legacy(start_utilization: Int64, end_utilization: Int64): number {
|
|
121
|
-
const {exponent, weight} = this
|
|
122
|
-
const max_price: number = this.max_price.value
|
|
123
|
-
const min_price: number = this.min_price.value
|
|
124
|
-
const coefficient = (max_price - min_price) / exponent.value
|
|
125
|
-
const start_u = Number(start_utilization.dividing(weight))
|
|
126
|
-
const end_u = Number(end_utilization.dividing(weight))
|
|
127
|
-
const delta =
|
|
128
|
-
min_price * end_u -
|
|
129
|
-
min_price * start_u +
|
|
130
|
-
coefficient * Math.pow(end_u, exponent.value) -
|
|
131
|
-
coefficient * Math.pow(start_u, exponent.value)
|
|
132
|
-
return delta
|
|
133
|
-
}
|
|
134
|
-
|
|
135
78
|
price_integral_delta(start_utilization: Int64, end_utilization: Int64): number {
|
|
136
79
|
const difference = Asset.fromUnits(
|
|
137
80
|
this.max_price.units.subtracting(this.min_price.units),
|
|
@@ -149,33 +92,6 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
149
92
|
}
|
|
150
93
|
|
|
151
94
|
// Mimic: https://github.com/EOSIO/eosio.contracts/blob/d7bc0a5cc8c0c2edd4dc61b0126517d0cb46fd94/contracts/eosio.system/src/powerup.cpp#L262-L315
|
|
152
|
-
fee_legacy(utilization_increase, adjusted_utilization) {
|
|
153
|
-
const {utilization, weight} = this
|
|
154
|
-
|
|
155
|
-
let start_utilization = Int64.from(utilization)
|
|
156
|
-
const end_utilization = start_utilization.adding(utilization_increase)
|
|
157
|
-
|
|
158
|
-
let fee = 0
|
|
159
|
-
if (start_utilization.lt(adjusted_utilization)) {
|
|
160
|
-
const min = Math.min(
|
|
161
|
-
utilization_increase,
|
|
162
|
-
adjusted_utilization.subtracting(start_utilization)
|
|
163
|
-
)
|
|
164
|
-
console.log('min', min)
|
|
165
|
-
fee += Number(
|
|
166
|
-
new bigDecimal(this.price_function_legacy(adjusted_utilization) * min)
|
|
167
|
-
.divide(new bigDecimal(weight.toString()))
|
|
168
|
-
.getValue()
|
|
169
|
-
)
|
|
170
|
-
start_utilization = adjusted_utilization
|
|
171
|
-
}
|
|
172
|
-
if (start_utilization.gt(end_utilization)) {
|
|
173
|
-
fee += this.price_integral_delta(start_utilization, end_utilization)
|
|
174
|
-
}
|
|
175
|
-
console.log('fee_legacy', fee)
|
|
176
|
-
return fee
|
|
177
|
-
}
|
|
178
|
-
|
|
179
95
|
fee(utilization_increase: UInt128, adjusted_utilization: Int64) {
|
|
180
96
|
const {utilization, weight} = this
|
|
181
97
|
|
|
@@ -188,26 +104,6 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
188
104
|
Number(utilization_increase),
|
|
189
105
|
Number(adjusted_utilization.subtracting(start_utilization))
|
|
190
106
|
)
|
|
191
|
-
console.log('min', min)
|
|
192
|
-
|
|
193
|
-
// fee += Number(
|
|
194
|
-
// new bigDecimal(
|
|
195
|
-
// String(
|
|
196
|
-
// (this.price_function(adjusted_utilization) /
|
|
197
|
-
// Math.pow(10, this.symbol.precision)) *
|
|
198
|
-
// min
|
|
199
|
-
// )
|
|
200
|
-
// )
|
|
201
|
-
// .divide(new bigDecimal(weight.toString()))
|
|
202
|
-
// .getValue()
|
|
203
|
-
// )
|
|
204
|
-
|
|
205
|
-
// fee += Number(
|
|
206
|
-
// new bigDecimal(this.price_function_legacy(adjusted_utilization) * min)
|
|
207
|
-
// .divide(new bigDecimal(weight.toString()))
|
|
208
|
-
// .getValue()
|
|
209
|
-
// )
|
|
210
|
-
|
|
211
107
|
fee += Number(
|
|
212
108
|
intToBigDecimal(this.price_function(adjusted_utilization) * min)
|
|
213
109
|
.divide(intToBigDecimal(weight))
|
|
@@ -216,10 +112,9 @@ export abstract class PowerUpStateResource extends Struct {
|
|
|
216
112
|
|
|
217
113
|
start_utilization = adjusted_utilization
|
|
218
114
|
}
|
|
219
|
-
if (start_utilization.
|
|
115
|
+
if (start_utilization.lt(end_utilization)) {
|
|
220
116
|
fee += this.price_integral_delta(start_utilization, end_utilization)
|
|
221
117
|
}
|
|
222
|
-
console.log('fee', fee)
|
|
223
118
|
return fee
|
|
224
119
|
}
|
|
225
120
|
|