@0xtorch/core 0.0.58 → 0.0.60
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/_cjs/actions/logic/setActionPrices.js +3 -36
- package/_cjs/actions/logic/setActionPrices.js.map +1 -1
- package/_cjs/assets/index.js +1 -2
- package/_cjs/assets/index.js.map +1 -1
- package/_cjs/assets/schemas/index.js +1 -3
- package/_cjs/assets/schemas/index.js.map +1 -1
- package/_cjs/index.js.map +1 -1
- package/_esm/actions/logic/setActionPrices.js +3 -36
- package/_esm/actions/logic/setActionPrices.js.map +1 -1
- package/_esm/assets/index.js +1 -1
- package/_esm/assets/index.js.map +1 -1
- package/_esm/assets/schemas/index.js +0 -1
- package/_esm/assets/schemas/index.js.map +1 -1
- package/_esm/index.js.map +1 -1
- package/_types/actions/action.d.ts +6 -6
- package/_types/actions/logic/setActionPrices.d.ts.map +1 -1
- package/_types/actions/transfer.d.ts +2 -2
- package/_types/assets/index.d.ts +2 -2
- package/_types/assets/index.d.ts.map +1 -1
- package/_types/assets/schemas/index.d.ts +0 -1
- package/_types/assets/schemas/index.d.ts.map +1 -1
- package/_types/assets/types/dataSource.d.ts +2 -2
- package/_types/assets/types/dataSource.d.ts.map +1 -1
- package/_types/assets/types/index.d.ts +0 -1
- package/_types/assets/types/index.d.ts.map +1 -1
- package/_types/index.d.ts +1 -1
- package/_types/index.d.ts.map +1 -1
- package/actions/logic/setActionPrices.ts +5 -52
- package/assets/index.ts +0 -2
- package/assets/schemas/index.ts +0 -1
- package/assets/types/dataSource.ts +2 -2
- package/assets/types/index.ts +0 -1
- package/index.ts +0 -1
- package/package.json +2 -2
- package/_cjs/assets/schemas/cryptoCurrencyPrice.js +0 -12
- package/_cjs/assets/schemas/cryptoCurrencyPrice.js.map +0 -1
- package/_cjs/assets/types/cryptoCurrencyPrice.js +0 -3
- package/_cjs/assets/types/cryptoCurrencyPrice.js.map +0 -1
- package/_esm/assets/schemas/cryptoCurrencyPrice.js +0 -9
- package/_esm/assets/schemas/cryptoCurrencyPrice.js.map +0 -1
- package/_esm/assets/types/cryptoCurrencyPrice.js +0 -2
- package/_esm/assets/types/cryptoCurrencyPrice.js.map +0 -1
- package/_types/assets/schemas/cryptoCurrencyPrice.d.ts +0 -33
- package/_types/assets/schemas/cryptoCurrencyPrice.d.ts.map +0 -1
- package/_types/assets/types/cryptoCurrencyPrice.d.ts +0 -4
- package/_types/assets/types/cryptoCurrencyPrice.d.ts.map +0 -1
- package/assets/schemas/cryptoCurrencyPrice.ts +0 -9
- package/assets/types/cryptoCurrencyPrice.ts +0 -4
|
@@ -4,14 +4,14 @@ exports.setActionPrices = void 0;
|
|
|
4
4
|
const big_decimal_1 = require("@0xtorch/big-decimal");
|
|
5
5
|
const setActionPrices = async ({ dataSource, actions, fiat, }) => {
|
|
6
6
|
const targets = getCryptoCurrencyTargets(actions);
|
|
7
|
-
const
|
|
7
|
+
const targetPrices = await Promise.all(targets.map(({ currency, timestampList }) => dataSource.getHistoricalPrices({
|
|
8
8
|
targetCurrency: currency,
|
|
9
9
|
vsCurrency: fiat,
|
|
10
10
|
timestampList,
|
|
11
11
|
})));
|
|
12
12
|
const prices = new Map();
|
|
13
13
|
for (const [index, { currency }] of targets.entries()) {
|
|
14
|
-
prices.set(currency.id,
|
|
14
|
+
prices.set(currency.id, targetPrices[index]);
|
|
15
15
|
}
|
|
16
16
|
return actions.map((action) => setPrices(action, prices, fiat));
|
|
17
17
|
};
|
|
@@ -53,7 +53,7 @@ const setPrices = (action, prices, fiat) => ({
|
|
|
53
53
|
}
|
|
54
54
|
switch (transfer.asset.type) {
|
|
55
55
|
case 'CryptoCurrency': {
|
|
56
|
-
transfer.price =
|
|
56
|
+
transfer.price = prices.get(transfer.asset.id)?.get(action.timestamp);
|
|
57
57
|
return transfer;
|
|
58
58
|
}
|
|
59
59
|
case 'FiatCurrency': {
|
|
@@ -68,37 +68,4 @@ const setPrices = (action, prices, fiat) => ({
|
|
|
68
68
|
}
|
|
69
69
|
}),
|
|
70
70
|
});
|
|
71
|
-
const getPrice = (prices, timestamp) => {
|
|
72
|
-
const oneHourInMs = 1000 * 60 * 60;
|
|
73
|
-
const minTimestamp = timestamp - oneHourInMs;
|
|
74
|
-
const maxTimestamp = timestamp + oneHourInMs;
|
|
75
|
-
let left = 0;
|
|
76
|
-
let right = prices.length - 1;
|
|
77
|
-
let closestIndex = -1;
|
|
78
|
-
let minDifference = Number.POSITIVE_INFINITY;
|
|
79
|
-
while (left <= right) {
|
|
80
|
-
const mid = Math.floor((left + right) / 2);
|
|
81
|
-
const midTimestamp = prices[mid].timestamp;
|
|
82
|
-
if (midTimestamp < minTimestamp) {
|
|
83
|
-
left = mid + 1;
|
|
84
|
-
}
|
|
85
|
-
else if (midTimestamp > maxTimestamp) {
|
|
86
|
-
right = mid - 1;
|
|
87
|
-
}
|
|
88
|
-
else {
|
|
89
|
-
const difference = Math.abs(midTimestamp - timestamp);
|
|
90
|
-
if (difference < minDifference) {
|
|
91
|
-
minDifference = difference;
|
|
92
|
-
closestIndex = mid;
|
|
93
|
-
}
|
|
94
|
-
if (midTimestamp < timestamp) {
|
|
95
|
-
left = mid + 1;
|
|
96
|
-
}
|
|
97
|
-
else {
|
|
98
|
-
right = mid - 1;
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
}
|
|
102
|
-
return closestIndex !== -1 ? prices[closestIndex].price : undefined;
|
|
103
|
-
};
|
|
104
71
|
//# sourceMappingURL=setActionPrices.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setActionPrices.js","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":";;;AAAA,sDAAwE;
|
|
1
|
+
{"version":3,"file":"setActionPrices.js","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":"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"}
|
package/_cjs/assets/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.nftSchema = exports.fiatCurrencySchema = exports.cryptoCurrencySchema = exports.
|
|
3
|
+
exports.nftSchema = exports.fiatCurrencySchema = exports.cryptoCurrencySchema = exports.assetSchema = exports.usdc = exports.usd = exports.solana = exports.ronin = exports.pol = exports.oasys = exports.moonriver = exports.moonbeam = exports.metis = exports.maticNetwork = exports.mantle = exports.kava = exports.jpy = exports.fantom = exports.eur = exports.ethereum = exports.doge = exports.bnb = exports.avalanche = exports.astar = exports.createFiatCurrency = exports.createCryptoCurrency = exports.fiatCurrencyDecimals = void 0;
|
|
4
4
|
var constants_1 = require("./constants");
|
|
5
5
|
Object.defineProperty(exports, "fiatCurrencyDecimals", { enumerable: true, get: function () { return constants_1.fiatCurrencyDecimals; } });
|
|
6
6
|
var createCryptoCurrency_1 = require("./creates/createCryptoCurrency");
|
|
@@ -49,7 +49,6 @@ var usdc_1 = require("./definitions/usdc");
|
|
|
49
49
|
Object.defineProperty(exports, "usdc", { enumerable: true, get: function () { return usdc_1.usdc; } });
|
|
50
50
|
var schemas_1 = require("./schemas");
|
|
51
51
|
Object.defineProperty(exports, "assetSchema", { enumerable: true, get: function () { return schemas_1.assetSchema; } });
|
|
52
|
-
Object.defineProperty(exports, "cryptoCurrencyPriceSchema", { enumerable: true, get: function () { return schemas_1.cryptoCurrencyPriceSchema; } });
|
|
53
52
|
Object.defineProperty(exports, "cryptoCurrencySchema", { enumerable: true, get: function () { return schemas_1.cryptoCurrencySchema; } });
|
|
54
53
|
Object.defineProperty(exports, "fiatCurrencySchema", { enumerable: true, get: function () { return schemas_1.fiatCurrencySchema; } });
|
|
55
54
|
Object.defineProperty(exports, "nftSchema", { enumerable: true, get: function () { return schemas_1.nftSchema; } });
|
package/_cjs/assets/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAAzC,iHAAA,oBAAoB,OAAA;AAC7B,uEAAqE;AAA5D,4HAAA,oBAAoB,OAAA;AAC7B,mEAAiE;AAAxD,wHAAA,kBAAkB,OAAA;AAC3B,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,qDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,2DAAyD;AAAhD,4GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,qDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":";;;AAAA,yCAAkD;AAAzC,iHAAA,oBAAoB,OAAA;AAC7B,uEAAqE;AAA5D,4HAAA,oBAAoB,OAAA;AAC7B,mEAAiE;AAAxD,wHAAA,kBAAkB,OAAA;AAC3B,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,qDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,2DAAyD;AAAhD,4GAAA,YAAY,OAAA;AACrB,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,mDAAiD;AAAxC,oGAAA,QAAQ,OAAA;AACjB,qDAAmD;AAA1C,sGAAA,SAAS,OAAA;AAClB,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,6CAA2C;AAAlC,8FAAA,KAAK,OAAA;AACd,+CAA6C;AAApC,gGAAA,MAAM,OAAA;AACf,yCAAuC;AAA9B,0FAAA,GAAG,OAAA;AACZ,2CAAyC;AAAhC,4FAAA,IAAI,OAAA;AACb,qCAKkB;AAJhB,sGAAA,WAAW,OAAA;AACX,+GAAA,oBAAoB,OAAA;AACpB,6GAAA,kBAAkB,OAAA;AAClB,oGAAA,SAAS,OAAA"}
|
|
@@ -1,12 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.nftSchema = exports.fiatCurrencySchema = exports.fiatCurrencyIdUnionSchema = exports.
|
|
3
|
+
exports.nftSchema = exports.fiatCurrencySchema = exports.fiatCurrencyIdUnionSchema = exports.cryptoCurrencySchema = exports.assetSchema = void 0;
|
|
4
4
|
var asset_1 = require("./asset");
|
|
5
5
|
Object.defineProperty(exports, "assetSchema", { enumerable: true, get: function () { return asset_1.assetSchema; } });
|
|
6
6
|
var cryptoCurrency_1 = require("./cryptoCurrency");
|
|
7
7
|
Object.defineProperty(exports, "cryptoCurrencySchema", { enumerable: true, get: function () { return cryptoCurrency_1.cryptoCurrencySchema; } });
|
|
8
|
-
var cryptoCurrencyPrice_1 = require("./cryptoCurrencyPrice");
|
|
9
|
-
Object.defineProperty(exports, "cryptoCurrencyPriceSchema", { enumerable: true, get: function () { return cryptoCurrencyPrice_1.cryptoCurrencyPriceSchema; } });
|
|
10
8
|
var fiatCurrency_1 = require("./fiatCurrency");
|
|
11
9
|
Object.defineProperty(exports, "fiatCurrencyIdUnionSchema", { enumerable: true, get: function () { return fiatCurrency_1.fiatCurrencyIdUnionSchema; } });
|
|
12
10
|
Object.defineProperty(exports, "fiatCurrencySchema", { enumerable: true, get: function () { return fiatCurrency_1.fiatCurrencySchema; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":";;;AAAA,iCAAqC;AAA5B,oGAAA,WAAW,OAAA;AACpB,mDAAuD;AAA9C,sHAAA,oBAAoB,OAAA;AAC7B
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":";;;AAAA,iCAAqC;AAA5B,oGAAA,WAAW,OAAA;AACpB,mDAAuD;AAA9C,sHAAA,oBAAoB,OAAA;AAC7B,+CAA8E;AAArE,yHAAA,yBAAyB,OAAA;AAAE,kHAAA,kBAAkB,OAAA;AACtD,6BAAiC;AAAxB,gGAAA,SAAS,OAAA"}
|
package/_cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,qCAckB;AAbhB,sGAAA,WAAW,OAAA;AACX,uGAAA,YAAY,OAAA;AACZ,qHAAA,0BAA0B,OAAA;AAC1B,gHAAA,qBAAqB,OAAA;AACrB,2GAAA,gBAAgB,OAAA;AAChB,0GAAA,eAAe,OAAA;AACf,4GAAA,iBAAiB,OAAA;AACjB,iHAAA,sBAAsB,OAAA;AACtB,yGAAA,cAAc,OAAA;AACd,gHAAA,qBAAqB,OAAA;AACrB,0HAAA,+BAA+B,OAAA;AAC/B,qHAAA,0BAA0B,OAAA;AAC1B,0GAAA,eAAe,OAAA;AAWjB,+BAAsC;AAA7B,qGAAA,aAAa,OAAA;AAEtB,mCA2BiB;AA1Bf,qGAAA,WAAW,OAAA;AACX,+FAAA,KAAK,OAAA;AACL,mGAAA,SAAS,OAAA;AACT,6FAAA,GAAG,OAAA;AACH,8GAAA,oBAAoB,OAAA;AACpB,8GAAA,oBAAoB,OAAA;AACpB,8FAAA,IAAI,OAAA;AACJ,kGAAA,QAAQ,OAAA;AACR,6FAAA,GAAG,OAAA;AACH,gGAAA,MAAM,OAAA;AACN,8GAAA,oBAAoB,OAAA;AACpB,4GAAA,kBAAkB,OAAA;AAClB,6FAAA,GAAG,OAAA;AACH,8FAAA,IAAI,OAAA;AACJ,gGAAA,MAAM,OAAA;AACN,sGAAA,YAAY,OAAA;AACZ,+FAAA,KAAK,OAAA;AACL,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,+FAAA,KAAK,OAAA;AACL,+FAAA,KAAK,OAAA;AACL,6FAAA,GAAG,OAAA;AACH,gGAAA,MAAM,OAAA;AACN,6FAAA,GAAG,OAAA;AACH,8FAAA,IAAI,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;AAAA,qCAckB;AAbhB,sGAAA,WAAW,OAAA;AACX,uGAAA,YAAY,OAAA;AACZ,qHAAA,0BAA0B,OAAA;AAC1B,gHAAA,qBAAqB,OAAA;AACrB,2GAAA,gBAAgB,OAAA;AAChB,0GAAA,eAAe,OAAA;AACf,4GAAA,iBAAiB,OAAA;AACjB,iHAAA,sBAAsB,OAAA;AACtB,yGAAA,cAAc,OAAA;AACd,gHAAA,qBAAqB,OAAA;AACrB,0HAAA,+BAA+B,OAAA;AAC/B,qHAAA,0BAA0B,OAAA;AAC1B,0GAAA,eAAe,OAAA;AAWjB,+BAAsC;AAA7B,qGAAA,aAAa,OAAA;AAEtB,mCA2BiB;AA1Bf,qGAAA,WAAW,OAAA;AACX,+FAAA,KAAK,OAAA;AACL,mGAAA,SAAS,OAAA;AACT,6FAAA,GAAG,OAAA;AACH,8GAAA,oBAAoB,OAAA;AACpB,8GAAA,oBAAoB,OAAA;AACpB,8FAAA,IAAI,OAAA;AACJ,kGAAA,QAAQ,OAAA;AACR,6FAAA,GAAG,OAAA;AACH,gGAAA,MAAM,OAAA;AACN,8GAAA,oBAAoB,OAAA;AACpB,4GAAA,kBAAkB,OAAA;AAClB,6FAAA,GAAG,OAAA;AACH,8FAAA,IAAI,OAAA;AACJ,gGAAA,MAAM,OAAA;AACN,sGAAA,YAAY,OAAA;AACZ,+FAAA,KAAK,OAAA;AACL,kGAAA,QAAQ,OAAA;AACR,mGAAA,SAAS,OAAA;AACT,mGAAA,SAAS,OAAA;AACT,+FAAA,KAAK,OAAA;AACL,+FAAA,KAAK,OAAA;AACL,6FAAA,GAAG,OAAA;AACH,gGAAA,MAAM,OAAA;AACN,6FAAA,GAAG,OAAA;AACH,8FAAA,IAAI,OAAA;AAQN,iCAAyC;AAAhC,6FAAA,IAAI,OAAA;AAAE,kGAAA,SAAS,OAAA"}
|
|
@@ -3,14 +3,14 @@ export const setActionPrices = async ({ dataSource, actions, fiat, }) => {
|
|
|
3
3
|
// crypto currency 毎の取得期間を作成
|
|
4
4
|
const targets = getCryptoCurrencyTargets(actions);
|
|
5
5
|
// 取得期間をもとに価格を取得
|
|
6
|
-
const
|
|
6
|
+
const targetPrices = await Promise.all(targets.map(({ currency, timestampList }) => dataSource.getHistoricalPrices({
|
|
7
7
|
targetCurrency: currency,
|
|
8
8
|
vsCurrency: fiat,
|
|
9
9
|
timestampList,
|
|
10
10
|
})));
|
|
11
11
|
const prices = new Map();
|
|
12
12
|
for (const [index, { currency }] of targets.entries()) {
|
|
13
|
-
prices.set(currency.id,
|
|
13
|
+
prices.set(currency.id, targetPrices[index]);
|
|
14
14
|
}
|
|
15
15
|
// 価格を設定して返す
|
|
16
16
|
return actions.map((action) => setPrices(action, prices, fiat));
|
|
@@ -52,7 +52,7 @@ const setPrices = (action, prices, fiat) => ({
|
|
|
52
52
|
}
|
|
53
53
|
switch (transfer.asset.type) {
|
|
54
54
|
case 'CryptoCurrency': {
|
|
55
|
-
transfer.price =
|
|
55
|
+
transfer.price = prices.get(transfer.asset.id)?.get(action.timestamp);
|
|
56
56
|
return transfer;
|
|
57
57
|
}
|
|
58
58
|
case 'FiatCurrency': {
|
|
@@ -67,37 +67,4 @@ const setPrices = (action, prices, fiat) => ({
|
|
|
67
67
|
}
|
|
68
68
|
}),
|
|
69
69
|
});
|
|
70
|
-
const getPrice = (prices, timestamp) => {
|
|
71
|
-
const oneHourInMs = 1000 * 60 * 60;
|
|
72
|
-
const minTimestamp = timestamp - oneHourInMs;
|
|
73
|
-
const maxTimestamp = timestamp + oneHourInMs;
|
|
74
|
-
let left = 0;
|
|
75
|
-
let right = prices.length - 1;
|
|
76
|
-
let closestIndex = -1;
|
|
77
|
-
let minDifference = Number.POSITIVE_INFINITY;
|
|
78
|
-
while (left <= right) {
|
|
79
|
-
const mid = Math.floor((left + right) / 2);
|
|
80
|
-
const midTimestamp = prices[mid].timestamp;
|
|
81
|
-
if (midTimestamp < minTimestamp) {
|
|
82
|
-
left = mid + 1;
|
|
83
|
-
}
|
|
84
|
-
else if (midTimestamp > maxTimestamp) {
|
|
85
|
-
right = mid - 1;
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
const difference = Math.abs(midTimestamp - timestamp);
|
|
89
|
-
if (difference < minDifference) {
|
|
90
|
-
minDifference = difference;
|
|
91
|
-
closestIndex = mid;
|
|
92
|
-
}
|
|
93
|
-
if (midTimestamp < timestamp) {
|
|
94
|
-
left = mid + 1;
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
right = mid - 1;
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
return closestIndex !== -1 ? prices[closestIndex].price : undefined;
|
|
102
|
-
};
|
|
103
70
|
//# sourceMappingURL=setActionPrices.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setActionPrices.js","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"setActionPrices.js","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":"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"}
|
package/_esm/assets/index.js
CHANGED
|
@@ -21,5 +21,5 @@ export { ronin } from './definitions/ronin';
|
|
|
21
21
|
export { solana } from './definitions/solana';
|
|
22
22
|
export { usd } from './definitions/usd';
|
|
23
23
|
export { usdc } from './definitions/usdc';
|
|
24
|
-
export { assetSchema,
|
|
24
|
+
export { assetSchema, cryptoCurrencySchema, fiatCurrencySchema, nftSchema, } from './schemas';
|
|
25
25
|
//# sourceMappingURL=index.js.map
|
package/_esm/assets/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,GACV,MAAM,WAAW,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { assetSchema } from './asset';
|
|
2
2
|
export { cryptoCurrencySchema } from './cryptoCurrency';
|
|
3
|
-
export { cryptoCurrencyPriceSchema } from './cryptoCurrencyPrice';
|
|
4
3
|
export { fiatCurrencyIdUnionSchema, fiatCurrencySchema } from './fiatCurrency';
|
|
5
4
|
export { nftSchema } from './nft';
|
|
6
5
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,yBAAyB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
|
package/_esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,WAAW,CAAA;AAUlB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,GAAG,EACH,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,MAAM,EACN,oBAAoB,EACpB,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,GAAG,EACH,MAAM,EACN,GAAG,EACH,IAAI,GACL,MAAM,UAAU,CAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,WAAW,CAAA;AAUlB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AAEtC,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,GAAG,EACH,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,MAAM,EACN,oBAAoB,EACpB,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,GAAG,EACH,MAAM,EACN,GAAG,EACH,IAAI,GACL,MAAM,UAAU,CAAA;AAOjB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -136,9 +136,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
136
136
|
metadata?: string | undefined;
|
|
137
137
|
};
|
|
138
138
|
amount: import("@0xtorch/big-decimal").BigDecimal;
|
|
139
|
-
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
140
139
|
from?: string | undefined;
|
|
141
140
|
to?: string | undefined;
|
|
141
|
+
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
142
142
|
}, {
|
|
143
143
|
direction: "in" | "out" | "none";
|
|
144
144
|
asset: {
|
|
@@ -168,9 +168,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
168
168
|
metadata?: string | undefined;
|
|
169
169
|
};
|
|
170
170
|
amount: string;
|
|
171
|
-
price?: string | undefined;
|
|
172
171
|
from?: string | undefined;
|
|
173
172
|
to?: string | undefined;
|
|
173
|
+
price?: string | undefined;
|
|
174
174
|
}>, "many">;
|
|
175
175
|
crossId: z.ZodOptional<z.ZodString>;
|
|
176
176
|
crossType: z.ZodOptional<z.ZodUnion<[z.ZodLiteral<"start">, z.ZodLiteral<"middle">, z.ZodLiteral<"end">]>>;
|
|
@@ -199,9 +199,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
199
199
|
}>>;
|
|
200
200
|
}, "strip", z.ZodTypeAny, {
|
|
201
201
|
type: "replace" | "borrow" | "bridge-from" | "bridge-to" | "cross-replace" | "cross-trade" | "add-liquidity" | "deposit" | "deposit-with-bond" | "stake" | "burn" | "derivative-fee" | "fee" | "interest-fee" | "pay" | "realize-loss" | "stolen" | "transaction-fee" | "approve" | "fail-tx" | "ignore" | "move" | "receive-from-cex" | "revoke" | "send-to-cex" | "spam" | "airdrop" | "cash-back" | "derivative-profit" | "free-mint" | "game-reward" | "gift" | "hardfork" | "income" | "interest" | "mining" | "nft-royalty" | "realize-profit" | "staking-reward" | "liquidation" | "repayment" | "swap-nft" | "unwrap" | "wrap" | "atomic-arbitrage" | "buy-crypto" | "buy-nft" | "mint-nft" | "sell-crypto" | "sell-nft" | "trade" | "transfer" | "value-down" | "value-up" | "remove-liquidity" | "unstake" | "withdraw" | "withdraw-with-bond";
|
|
202
|
-
timestamp: number;
|
|
203
202
|
source: string;
|
|
204
203
|
order: number;
|
|
204
|
+
timestamp: number;
|
|
205
205
|
evidence: "none" | "contract" | "system-rule" | "user-rule" | "manual-check";
|
|
206
206
|
transfers: {
|
|
207
207
|
direction: "in" | "out" | "none";
|
|
@@ -232,9 +232,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
232
232
|
metadata?: string | undefined;
|
|
233
233
|
};
|
|
234
234
|
amount: import("@0xtorch/big-decimal").BigDecimal;
|
|
235
|
-
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
236
235
|
from?: string | undefined;
|
|
237
236
|
to?: string | undefined;
|
|
237
|
+
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
238
238
|
}[];
|
|
239
239
|
comment?: string | undefined;
|
|
240
240
|
app?: string | undefined;
|
|
@@ -251,9 +251,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
251
251
|
} | undefined;
|
|
252
252
|
}, {
|
|
253
253
|
type: "replace" | "borrow" | "bridge-from" | "bridge-to" | "cross-replace" | "cross-trade" | "add-liquidity" | "deposit" | "deposit-with-bond" | "stake" | "burn" | "derivative-fee" | "fee" | "interest-fee" | "pay" | "realize-loss" | "stolen" | "transaction-fee" | "approve" | "fail-tx" | "ignore" | "move" | "receive-from-cex" | "revoke" | "send-to-cex" | "spam" | "airdrop" | "cash-back" | "derivative-profit" | "free-mint" | "game-reward" | "gift" | "hardfork" | "income" | "interest" | "mining" | "nft-royalty" | "realize-profit" | "staking-reward" | "liquidation" | "repayment" | "swap-nft" | "unwrap" | "wrap" | "atomic-arbitrage" | "buy-crypto" | "buy-nft" | "mint-nft" | "sell-crypto" | "sell-nft" | "trade" | "transfer" | "value-down" | "value-up" | "remove-liquidity" | "unstake" | "withdraw" | "withdraw-with-bond";
|
|
254
|
-
timestamp: number;
|
|
255
254
|
source: string;
|
|
256
255
|
order: number;
|
|
256
|
+
timestamp: number;
|
|
257
257
|
evidence: "none" | "contract" | "system-rule" | "user-rule" | "manual-check";
|
|
258
258
|
transfers: {
|
|
259
259
|
direction: "in" | "out" | "none";
|
|
@@ -284,9 +284,9 @@ export declare const actionSchema: z.ZodObject<{
|
|
|
284
284
|
metadata?: string | undefined;
|
|
285
285
|
};
|
|
286
286
|
amount: string;
|
|
287
|
-
price?: string | undefined;
|
|
288
287
|
from?: string | undefined;
|
|
289
288
|
to?: string | undefined;
|
|
289
|
+
price?: string | undefined;
|
|
290
290
|
}[];
|
|
291
291
|
comment?: string | undefined;
|
|
292
292
|
app?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setActionPrices.d.ts","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,wBAAwB,
|
|
1
|
+
{"version":3,"file":"setActionPrices.d.ts","sourceRoot":"","sources":["../../../actions/logic/setActionPrices.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAEV,wBAAwB,EACxB,YAAY,EACb,MAAM,cAAc,CAAA;AACrB,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAEvC,KAAK,yBAAyB,GAAG;IAC/B,QAAQ,CAAC,UAAU,EAAE,wBAAwB,CAAA;IAC7C,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAA;IACnC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAA;CAC5B,CAAA;AAED,eAAO,MAAM,eAAe,mCAIzB,yBAAyB,KAAG,OAAO,CAAC,SAAS,MAAM,EAAE,CAqBvD,CAAA"}
|
|
@@ -119,9 +119,9 @@ export declare const transferSchema: z.ZodObject<{
|
|
|
119
119
|
metadata?: string | undefined;
|
|
120
120
|
};
|
|
121
121
|
amount: import("@0xtorch/big-decimal").BigDecimal;
|
|
122
|
-
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
123
122
|
from?: string | undefined;
|
|
124
123
|
to?: string | undefined;
|
|
124
|
+
price?: import("@0xtorch/big-decimal").BigDecimal | undefined;
|
|
125
125
|
}, {
|
|
126
126
|
direction: "in" | "out" | "none";
|
|
127
127
|
asset: {
|
|
@@ -151,9 +151,9 @@ export declare const transferSchema: z.ZodObject<{
|
|
|
151
151
|
metadata?: string | undefined;
|
|
152
152
|
};
|
|
153
153
|
amount: string;
|
|
154
|
-
price?: string | undefined;
|
|
155
154
|
from?: string | undefined;
|
|
156
155
|
to?: string | undefined;
|
|
156
|
+
price?: string | undefined;
|
|
157
157
|
}>;
|
|
158
158
|
export type Transfer = z.infer<typeof transferSchema>;
|
|
159
159
|
export {};
|
package/_types/assets/index.d.ts
CHANGED
|
@@ -21,6 +21,6 @@ export { ronin } from './definitions/ronin';
|
|
|
21
21
|
export { solana } from './definitions/solana';
|
|
22
22
|
export { usd } from './definitions/usd';
|
|
23
23
|
export { usdc } from './definitions/usdc';
|
|
24
|
-
export { assetSchema,
|
|
25
|
-
export type { CryptoCurrency, CryptoCurrencyDataSource,
|
|
24
|
+
export { assetSchema, cryptoCurrencySchema, fiatCurrencySchema, nftSchema, } from './schemas';
|
|
25
|
+
export type { CryptoCurrency, CryptoCurrencyDataSource, FiatCurrency, Nft, } from './types';
|
|
26
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,WAAW,EACX,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../assets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gCAAgC,CAAA;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAA;AACjE,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAA;AACzD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAA;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAA;AAC3C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAA;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAA;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAA;AACzC,OAAO,EACL,WAAW,EACX,oBAAoB,EACpB,kBAAkB,EAClB,SAAS,GACV,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,GAAG,GACJ,MAAM,SAAS,CAAA"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
export { assetSchema } from './asset';
|
|
2
2
|
export { cryptoCurrencySchema } from './cryptoCurrency';
|
|
3
|
-
export { cryptoCurrencyPriceSchema } from './cryptoCurrencyPrice';
|
|
4
3
|
export { fiatCurrencyIdUnionSchema, fiatCurrencySchema } from './fiatCurrency';
|
|
5
4
|
export { nftSchema } from './nft';
|
|
6
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,yBAAyB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../assets/schemas/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrC,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AACvD,OAAO,EAAE,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAA;AAC9E,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { BigDecimal } from '@0xtorch/big-decimal';
|
|
1
2
|
import type { Config } from '../../types';
|
|
2
3
|
import type { CryptoCurrency } from './cryptoCurrency';
|
|
3
|
-
import type { CryptoCurrencyPrice } from './cryptoCurrencyPrice';
|
|
4
4
|
import type { FiatCurrency } from './fiatCurrency';
|
|
5
5
|
export type GetHistoricalPricesParameters = {
|
|
6
6
|
readonly targetCurrency: CryptoCurrency;
|
|
@@ -8,6 +8,6 @@ export type GetHistoricalPricesParameters = {
|
|
|
8
8
|
readonly timestampList: readonly number[];
|
|
9
9
|
};
|
|
10
10
|
export type CryptoCurrencyDataSource = {
|
|
11
|
-
readonly getHistoricalPrices: (parameters: GetHistoricalPricesParameters, config?: Config) => Promise<
|
|
11
|
+
readonly getHistoricalPrices: (parameters: GetHistoricalPricesParameters, config?: Config) => Promise<Map<number, BigDecimal>>;
|
|
12
12
|
};
|
|
13
13
|
//# sourceMappingURL=dataSource.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataSource.d.ts","sourceRoot":"","sources":["../../../assets/types/dataSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"dataSource.d.ts","sourceRoot":"","sources":["../../../assets/types/dataSource.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AACtD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACzC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,MAAM,6BAA6B,GAAG;IAC1C,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAA;IACvC,QAAQ,CAAC,UAAU,EAAE,YAAY,CAAA;IACjC,QAAQ,CAAC,aAAa,EAAE,SAAS,MAAM,EAAE,CAAA;CAC1C,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG;IACrC,QAAQ,CAAC,mBAAmB,EAAE,CAC5B,UAAU,EAAE,6BAA6B,EACzC,MAAM,CAAC,EAAE,MAAM,KACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAA;CACtC,CAAA"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export type { CryptoCurrency } from './cryptoCurrency';
|
|
2
|
-
export type { CryptoCurrencyPrice } from './cryptoCurrencyPrice';
|
|
3
2
|
export type { CryptoCurrencyDataSource, GetHistoricalPricesParameters, } from './dataSource';
|
|
4
3
|
export type { FiatCurrency, FiatCurrencyId } from './fiatCurrency';
|
|
5
4
|
export type { Nft } from './nft';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../assets/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../assets/types/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAA;AACtD,YAAY,EACV,wBAAwB,EACxB,6BAA6B,GAC9B,MAAM,cAAc,CAAA;AACrB,YAAY,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAClE,YAAY,EAAE,GAAG,EAAE,MAAM,OAAO,CAAA"}
|
package/_types/index.d.ts
CHANGED
|
@@ -3,7 +3,7 @@ export type { ActionType, ActionEvidence, ActionCrossType, Action, ActionTransfe
|
|
|
3
3
|
export { appCategories } from './apps';
|
|
4
4
|
export type { App, AppCategory } from './apps';
|
|
5
5
|
export { assetSchema, astar, avalanche, bnb, createCryptoCurrency, cryptoCurrencySchema, doge, ethereum, eur, fantom, fiatCurrencyDecimals, fiatCurrencySchema, jpy, kava, mantle, maticNetwork, metis, moonbeam, moonriver, nftSchema, oasys, ronin, pol, solana, usd, usdc, } from './assets';
|
|
6
|
-
export type { CryptoCurrency, CryptoCurrencyDataSource,
|
|
6
|
+
export type { CryptoCurrency, CryptoCurrencyDataSource, FiatCurrency, Nft, } from './assets';
|
|
7
7
|
export { rest, stringify } from './utils';
|
|
8
8
|
export type { Schema } from './utils';
|
|
9
9
|
//# sourceMappingURL=index.d.ts.map
|
package/_types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,MAAM,EACN,0BAA0B,EAC1B,QAAQ,EACR,iBAAiB,GAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,GAAG,EACH,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,MAAM,EACN,oBAAoB,EACpB,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,GAAG,EACH,MAAM,EACN,GAAG,EACH,IAAI,GACL,MAAM,UAAU,CAAA;AACjB,YAAY,EACV,cAAc,EACd,wBAAwB,EACxB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EACX,YAAY,EACZ,0BAA0B,EAC1B,qBAAqB,EACrB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,sBAAsB,EACtB,cAAc,EACd,qBAAqB,EACrB,+BAA+B,EAC/B,0BAA0B,EAC1B,eAAe,GAChB,MAAM,WAAW,CAAA;AAClB,YAAY,EACV,UAAU,EACV,cAAc,EACd,eAAe,EACf,MAAM,EACN,0BAA0B,EAC1B,QAAQ,EACR,iBAAiB,GAClB,MAAM,WAAW,CAAA;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,QAAQ,CAAA;AACtC,YAAY,EAAE,GAAG,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAA;AAC9C,OAAO,EACL,WAAW,EACX,KAAK,EACL,SAAS,EACT,GAAG,EACH,oBAAoB,EACpB,oBAAoB,EACpB,IAAI,EACJ,QAAQ,EACR,GAAG,EACH,MAAM,EACN,oBAAoB,EACpB,kBAAkB,EAClB,GAAG,EACH,IAAI,EACJ,MAAM,EACN,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,SAAS,EACT,SAAS,EACT,KAAK,EACL,KAAK,EACL,GAAG,EACH,MAAM,EACN,GAAG,EACH,IAAI,GACL,MAAM,UAAU,CAAA;AACjB,YAAY,EACV,cAAc,EACd,wBAAwB,EACxB,YAAY,EACZ,GAAG,GACJ,MAAM,UAAU,CAAA;AACjB,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AACzC,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA"}
|
|
@@ -2,7 +2,6 @@ import { type BigDecimal, createBigDecimal } from '@0xtorch/big-decimal'
|
|
|
2
2
|
import type {
|
|
3
3
|
CryptoCurrency,
|
|
4
4
|
CryptoCurrencyDataSource,
|
|
5
|
-
CryptoCurrencyPrice,
|
|
6
5
|
FiatCurrency,
|
|
7
6
|
} from '../../assets'
|
|
8
7
|
import type { Action } from '../action'
|
|
@@ -22,7 +21,7 @@ export const setActionPrices = async ({
|
|
|
22
21
|
const targets = getCryptoCurrencyTargets(actions)
|
|
23
22
|
|
|
24
23
|
// 取得期間をもとに価格を取得
|
|
25
|
-
const
|
|
24
|
+
const targetPrices = await Promise.all(
|
|
26
25
|
targets.map(({ currency, timestampList }) =>
|
|
27
26
|
dataSource.getHistoricalPrices({
|
|
28
27
|
targetCurrency: currency,
|
|
@@ -31,14 +30,9 @@ export const setActionPrices = async ({
|
|
|
31
30
|
}),
|
|
32
31
|
),
|
|
33
32
|
)
|
|
34
|
-
const prices = new Map<string,
|
|
33
|
+
const prices = new Map<string, Map<number, BigDecimal>>()
|
|
35
34
|
for (const [index, { currency }] of targets.entries()) {
|
|
36
|
-
prices.set(
|
|
37
|
-
currency.id,
|
|
38
|
-
cryptoCurrencyPricesOfTarget[index].toSorted(
|
|
39
|
-
(a, b) => a.timestamp - b.timestamp,
|
|
40
|
-
),
|
|
41
|
-
)
|
|
35
|
+
prices.set(currency.id, targetPrices[index])
|
|
42
36
|
}
|
|
43
37
|
|
|
44
38
|
// 価格を設定して返す
|
|
@@ -86,7 +80,7 @@ const getCryptoCurrencyTargets = (
|
|
|
86
80
|
|
|
87
81
|
const setPrices = (
|
|
88
82
|
action: Action,
|
|
89
|
-
prices: Map<string,
|
|
83
|
+
prices: Map<string, Map<number, BigDecimal>>,
|
|
90
84
|
fiat: FiatCurrency,
|
|
91
85
|
): Action => ({
|
|
92
86
|
...action,
|
|
@@ -96,10 +90,7 @@ const setPrices = (
|
|
|
96
90
|
}
|
|
97
91
|
switch (transfer.asset.type) {
|
|
98
92
|
case 'CryptoCurrency': {
|
|
99
|
-
transfer.price =
|
|
100
|
-
prices.get(transfer.asset.id) ?? [],
|
|
101
|
-
action.timestamp,
|
|
102
|
-
)
|
|
93
|
+
transfer.price = prices.get(transfer.asset.id)?.get(action.timestamp)
|
|
103
94
|
return transfer
|
|
104
95
|
}
|
|
105
96
|
case 'FiatCurrency': {
|
|
@@ -114,41 +105,3 @@ const setPrices = (
|
|
|
114
105
|
}
|
|
115
106
|
}),
|
|
116
107
|
})
|
|
117
|
-
|
|
118
|
-
const getPrice = (
|
|
119
|
-
prices: readonly CryptoCurrencyPrice[],
|
|
120
|
-
timestamp: number,
|
|
121
|
-
): BigDecimal | undefined => {
|
|
122
|
-
const oneHourInMs = 1000 * 60 * 60
|
|
123
|
-
const minTimestamp = timestamp - oneHourInMs
|
|
124
|
-
const maxTimestamp = timestamp + oneHourInMs
|
|
125
|
-
|
|
126
|
-
let left = 0
|
|
127
|
-
let right = prices.length - 1
|
|
128
|
-
let closestIndex = -1
|
|
129
|
-
let minDifference = Number.POSITIVE_INFINITY
|
|
130
|
-
|
|
131
|
-
while (left <= right) {
|
|
132
|
-
const mid = Math.floor((left + right) / 2)
|
|
133
|
-
const midTimestamp = prices[mid].timestamp
|
|
134
|
-
|
|
135
|
-
if (midTimestamp < minTimestamp) {
|
|
136
|
-
left = mid + 1
|
|
137
|
-
} else if (midTimestamp > maxTimestamp) {
|
|
138
|
-
right = mid - 1
|
|
139
|
-
} else {
|
|
140
|
-
const difference = Math.abs(midTimestamp - timestamp)
|
|
141
|
-
if (difference < minDifference) {
|
|
142
|
-
minDifference = difference
|
|
143
|
-
closestIndex = mid
|
|
144
|
-
}
|
|
145
|
-
if (midTimestamp < timestamp) {
|
|
146
|
-
left = mid + 1
|
|
147
|
-
} else {
|
|
148
|
-
right = mid - 1
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
return closestIndex !== -1 ? prices[closestIndex].price : undefined
|
|
154
|
-
}
|
package/assets/index.ts
CHANGED
|
@@ -23,7 +23,6 @@ export { usd } from './definitions/usd'
|
|
|
23
23
|
export { usdc } from './definitions/usdc'
|
|
24
24
|
export {
|
|
25
25
|
assetSchema,
|
|
26
|
-
cryptoCurrencyPriceSchema,
|
|
27
26
|
cryptoCurrencySchema,
|
|
28
27
|
fiatCurrencySchema,
|
|
29
28
|
nftSchema,
|
|
@@ -31,7 +30,6 @@ export {
|
|
|
31
30
|
export type {
|
|
32
31
|
CryptoCurrency,
|
|
33
32
|
CryptoCurrencyDataSource,
|
|
34
|
-
CryptoCurrencyPrice,
|
|
35
33
|
FiatCurrency,
|
|
36
34
|
Nft,
|
|
37
35
|
} from './types'
|
package/assets/schemas/index.ts
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
export { assetSchema } from './asset'
|
|
2
2
|
export { cryptoCurrencySchema } from './cryptoCurrency'
|
|
3
|
-
export { cryptoCurrencyPriceSchema } from './cryptoCurrencyPrice'
|
|
4
3
|
export { fiatCurrencyIdUnionSchema, fiatCurrencySchema } from './fiatCurrency'
|
|
5
4
|
export { nftSchema } from './nft'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import type { BigDecimal } from '@0xtorch/big-decimal'
|
|
1
2
|
import type { Config } from '../../types'
|
|
2
3
|
import type { CryptoCurrency } from './cryptoCurrency'
|
|
3
|
-
import type { CryptoCurrencyPrice } from './cryptoCurrencyPrice'
|
|
4
4
|
import type { FiatCurrency } from './fiatCurrency'
|
|
5
5
|
|
|
6
6
|
export type GetHistoricalPricesParameters = {
|
|
@@ -13,5 +13,5 @@ export type CryptoCurrencyDataSource = {
|
|
|
13
13
|
readonly getHistoricalPrices: (
|
|
14
14
|
parameters: GetHistoricalPricesParameters,
|
|
15
15
|
config?: Config,
|
|
16
|
-
) => Promise<
|
|
16
|
+
) => Promise<Map<number, BigDecimal>>
|
|
17
17
|
}
|
package/assets/types/index.ts
CHANGED
package/index.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@0xtorch/core",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.60",
|
|
4
4
|
"description": "Cryptorch | TypeScript Analyze Interface for Crypto Data.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"cryptorch",
|
|
@@ -36,6 +36,6 @@
|
|
|
36
36
|
],
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@0xtorch/big-decimal": "^0.0.13",
|
|
39
|
-
"zod": "
|
|
39
|
+
"zod": "3.23.8"
|
|
40
40
|
}
|
|
41
41
|
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.cryptoCurrencyPriceSchema = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
const utils_1 = require("../../utils");
|
|
6
|
-
exports.cryptoCurrencyPriceSchema = zod_1.z.object({
|
|
7
|
-
cryptoCurrencyId: zod_1.z.string(),
|
|
8
|
-
fiatCurrencyId: zod_1.z.string(),
|
|
9
|
-
price: utils_1.bigDecimalSchema,
|
|
10
|
-
timestamp: zod_1.z.number().int(),
|
|
11
|
-
});
|
|
12
|
-
//# sourceMappingURL=cryptoCurrencyPrice.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.js","sourceRoot":"","sources":["../../../assets/schemas/cryptoCurrencyPrice.ts"],"names":[],"mappings":";;;AAAA,6BAAuB;AACvB,uCAA8C;AAEjC,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,gBAAgB,EAAE,OAAC,CAAC,MAAM,EAAE;IAC5B,cAAc,EAAE,OAAC,CAAC,MAAM,EAAE;IAC1B,KAAK,EAAE,wBAAgB;IACvB,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC5B,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.js","sourceRoot":"","sources":["../../../assets/types/cryptoCurrencyPrice.ts"],"names":[],"mappings":""}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { bigDecimalSchema } from '../../utils';
|
|
3
|
-
export const cryptoCurrencyPriceSchema = z.object({
|
|
4
|
-
cryptoCurrencyId: z.string(),
|
|
5
|
-
fiatCurrencyId: z.string(),
|
|
6
|
-
price: bigDecimalSchema,
|
|
7
|
-
timestamp: z.number().int(),
|
|
8
|
-
});
|
|
9
|
-
//# sourceMappingURL=cryptoCurrencyPrice.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.js","sourceRoot":"","sources":["../../../assets/schemas/cryptoCurrencyPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAE9C,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChD,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,KAAK,EAAE,gBAAgB;IACvB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE;CAC5B,CAAC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.js","sourceRoot":"","sources":["../../../assets/types/cryptoCurrencyPrice.ts"],"names":[],"mappings":""}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
export declare const cryptoCurrencyPriceSchema: z.ZodObject<{
|
|
3
|
-
cryptoCurrencyId: z.ZodString;
|
|
4
|
-
fiatCurrencyId: z.ZodString;
|
|
5
|
-
price: z.ZodObject<{
|
|
6
|
-
value: z.ZodBigInt;
|
|
7
|
-
decimals: z.ZodNumber;
|
|
8
|
-
}, "strip", z.ZodTypeAny, {
|
|
9
|
-
value: bigint;
|
|
10
|
-
decimals: number;
|
|
11
|
-
}, {
|
|
12
|
-
value: bigint;
|
|
13
|
-
decimals: number;
|
|
14
|
-
}>;
|
|
15
|
-
timestamp: z.ZodNumber;
|
|
16
|
-
}, "strip", z.ZodTypeAny, {
|
|
17
|
-
cryptoCurrencyId: string;
|
|
18
|
-
fiatCurrencyId: string;
|
|
19
|
-
price: {
|
|
20
|
-
value: bigint;
|
|
21
|
-
decimals: number;
|
|
22
|
-
};
|
|
23
|
-
timestamp: number;
|
|
24
|
-
}, {
|
|
25
|
-
cryptoCurrencyId: string;
|
|
26
|
-
fiatCurrencyId: string;
|
|
27
|
-
price: {
|
|
28
|
-
value: bigint;
|
|
29
|
-
decimals: number;
|
|
30
|
-
};
|
|
31
|
-
timestamp: number;
|
|
32
|
-
}>;
|
|
33
|
-
//# sourceMappingURL=cryptoCurrencyPrice.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.d.ts","sourceRoot":"","sources":["../../../assets/schemas/cryptoCurrencyPrice.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAKpC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"cryptoCurrencyPrice.d.ts","sourceRoot":"","sources":["../../../assets/types/cryptoCurrencyPrice.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAC5B,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,YAAY,CAAA;AAE3D,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAA"}
|