@1stdex/first-sdk 1.0.92-beta.2 → 1.0.92-beta.3
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/dist/cjs/entities/book/apis/index.js +2 -2
- package/dist/cjs/entities/book/apis/index.js.map +1 -1
- package/dist/cjs/entities/book/apis/position.js +7 -24
- package/dist/cjs/entities/book/apis/position.js.map +1 -1
- package/dist/cjs/views/book.js +4 -4
- package/dist/cjs/views/book.js.map +1 -1
- package/dist/cjs/views/index.js +2 -2
- package/dist/cjs/views/index.js.map +1 -1
- package/dist/esm/entities/book/apis/index.js +1 -1
- package/dist/esm/entities/book/apis/index.js.map +1 -1
- package/dist/esm/entities/book/apis/position.js +7 -36
- package/dist/esm/entities/book/apis/position.js.map +1 -1
- package/dist/esm/views/book.js +13 -13
- package/dist/esm/views/book.js.map +1 -1
- package/dist/esm/views/index.js +1 -1
- package/dist/esm/views/index.js.map +1 -1
- package/dist/tsconfig.build.tsbuildinfo +1 -1
- package/dist/types/entities/book/apis/index.d.ts +1 -1
- package/dist/types/entities/book/apis/index.d.ts.map +1 -1
- package/dist/types/entities/book/apis/position.d.ts +3 -3
- package/dist/types/entities/book/apis/position.d.ts.map +1 -1
- package/dist/types/views/book.d.ts +13 -13
- package/dist/types/views/book.d.ts.map +1 -1
- package/dist/types/views/index.d.ts +1 -1
- package/dist/types/views/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.fetchBook = exports.fetchBookTokens = exports.
|
|
3
|
+
exports.fetchBook = exports.fetchBookTokens = exports.fetchBaseFromQuoteAmount = exports.fetchBookPositionValue = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const unit_size_1 = require("../../../utils/unit-size");
|
|
6
6
|
const addresses_1 = require("../../../constants/chain-configs/addresses");
|
|
@@ -10,7 +10,7 @@ const book_id_1 = require("../utils/book-id");
|
|
|
10
10
|
const model_1 = require("../model");
|
|
11
11
|
var position_1 = require("./position");
|
|
12
12
|
Object.defineProperty(exports, "fetchBookPositionValue", { enumerable: true, get: function () { return position_1.fetchBookPositionValue; } });
|
|
13
|
-
Object.defineProperty(exports, "
|
|
13
|
+
Object.defineProperty(exports, "fetchBaseFromQuoteAmount", { enumerable: true, get: function () { return position_1.fetchBaseFromQuoteAmount; } });
|
|
14
14
|
const MAX_DEPTH = 20n;
|
|
15
15
|
const fetchBookTokens = async ({ chainId, bookId, }) => {
|
|
16
16
|
const { data: { book }, } = await subgraph_1.Subgraph.get(chainId, 'getBookTokens', 'query getBookTokens($bookId: ID!) { book(id: $bookId) { id base { id name symbol decimals } quote { id name symbol decimals } } }', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":";;;AAAA,+BAAgD;AAIhD,wDAA6D;AAC7D,0EAAgF;AAChF,kFAA+E;AAC/E,wEAAqE;AACrE,8CAA4C;AAC5C,oCAAqC;AAErC,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.fetchBaseFromQuoteAmount = exports.fetchBookPositionValue = void 0;
|
|
4
4
|
const viem_1 = require("viem");
|
|
5
5
|
const bignumber_js_1 = require("bignumber.js");
|
|
6
6
|
const subgraph_1 = require("../../../constants/chain-configs/subgraph");
|
|
@@ -45,7 +45,7 @@ const fetchBookPositionValue = async ({ chainId, bookId, tick, units, }) => {
|
|
|
45
45
|
};
|
|
46
46
|
};
|
|
47
47
|
exports.fetchBookPositionValue = fetchBookPositionValue;
|
|
48
|
-
const
|
|
48
|
+
const fetchBaseFromQuoteAmount = async ({ chainId, bookId, tick, quoteAmount, }) => {
|
|
49
49
|
const { data: { book }, } = await subgraph_1.Subgraph.get(chainId, 'getBookForPositionValue', 'query getBookForPositionValue($bookId: ID!) { book(id: $bookId) { id unitSize base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } } }', {
|
|
50
50
|
bookId: bookId.toString(),
|
|
51
51
|
});
|
|
@@ -54,35 +54,18 @@ const fetchBookUnitsFromUsdValue = async ({ chainId, bookId, tick, usdValue, })
|
|
|
54
54
|
}
|
|
55
55
|
const baseAddress = (0, viem_1.getAddress)(book.base.id);
|
|
56
56
|
const quoteAddress = (0, viem_1.getAddress)(book.quote.id);
|
|
57
|
-
const unitSize = BigInt(book.unitSize);
|
|
58
57
|
const { quoteTokenAddress: marketQuoteAddress } = (0, market_id_1.getMarketId)(chainId, [
|
|
59
58
|
baseAddress,
|
|
60
59
|
quoteAddress,
|
|
61
60
|
]);
|
|
62
61
|
const isBidBook = (0, viem_1.isAddressEqual)(quoteAddress, marketQuoteAddress);
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
const baseAmount = new bignumber_js_1.default(usdValue).div(book.base.priceUSD);
|
|
67
|
-
const totalBaseAmount = baseAmount
|
|
68
|
-
.times(new bignumber_js_1.default(10).pow(Number(book.base.decimals)))
|
|
69
|
-
.integerValue(bignumber_js_1.default.ROUND_DOWN);
|
|
70
|
-
const totalQuoteAmount = (0, utils_1.baseToQuote)(tick, BigInt(totalBaseAmount.toFixed()), false);
|
|
71
|
-
units = totalQuoteAmount / unitSize;
|
|
72
|
-
bookType = 'bids';
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
const baseAmount = new bignumber_js_1.default(usdValue).div(book.quote.priceUSD);
|
|
76
|
-
const totalBaseAmount = baseAmount
|
|
77
|
-
.times(new bignumber_js_1.default(10).pow(Number(book.quote.decimals)))
|
|
78
|
-
.integerValue(bignumber_js_1.default.ROUND_DOWN);
|
|
79
|
-
units = BigInt(totalBaseAmount.toFixed()) / unitSize;
|
|
80
|
-
bookType = 'asks';
|
|
81
|
-
}
|
|
62
|
+
const bookType = isBidBook ? 'bids' : 'asks';
|
|
63
|
+
const totalQuoteAmount = BigInt(quoteAmount) * BigInt(book.unitSize);
|
|
64
|
+
const baseAmount = (0, utils_1.quoteToBase)(tick, totalQuoteAmount, false);
|
|
82
65
|
return {
|
|
83
66
|
bookType,
|
|
84
|
-
|
|
67
|
+
baseAmount,
|
|
85
68
|
};
|
|
86
69
|
};
|
|
87
|
-
exports.
|
|
70
|
+
exports.fetchBaseFromQuoteAmount = fetchBaseFromQuoteAmount;
|
|
88
71
|
//# sourceMappingURL=position.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/position.ts"],"names":[],"mappings":";;;AAAA,+BAAkD;AAClD,+CAAqC;AAGrC,wEAAqE;AACrE,
|
|
1
|
+
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/position.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/views/book.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getBookTokens = exports.
|
|
3
|
+
exports.getBookTokens = exports.getBaseFromQuoteAmount = exports.getBookPositionValue = void 0;
|
|
4
4
|
const apis_1 = require("../entities/book/apis");
|
|
5
5
|
const getBookPositionValue = async ({ chainId, bookId, tick, units, }) => {
|
|
6
6
|
return (0, apis_1.fetchBookPositionValue)({ chainId, bookId, tick, units });
|
|
7
7
|
};
|
|
8
8
|
exports.getBookPositionValue = getBookPositionValue;
|
|
9
|
-
const
|
|
10
|
-
return (0, apis_1.
|
|
9
|
+
const getBaseFromQuoteAmount = async ({ chainId, bookId, tick, quoteAmount, }) => {
|
|
10
|
+
return (0, apis_1.fetchBaseFromQuoteAmount)({ chainId, bookId, tick, quoteAmount });
|
|
11
11
|
};
|
|
12
|
-
exports.
|
|
12
|
+
exports.getBaseFromQuoteAmount = getBaseFromQuoteAmount;
|
|
13
13
|
const getBookTokens = async ({ chainId, bookId, }) => {
|
|
14
14
|
return (0, apis_1.fetchBookTokens)({ chainId, bookId });
|
|
15
15
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"book.js","sourceRoot":"","sources":["../../../src/views/book.ts"],"names":[],"mappings":";;;AACA,gDAI+B;AA0BxB,MAAM,oBAAoB,GAAG,KAAK,EAAE,EACzC,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,GAMN,EAA4D,EAAE;IAC7D,OAAO,IAAA,6BAAsB,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AAZW,QAAA,oBAAoB,wBAY/B;AAyBK,MAAM,
|
|
1
|
+
{"version":3,"file":"book.js","sourceRoot":"","sources":["../../../src/views/book.ts"],"names":[],"mappings":";;;AACA,gDAI+B;AA0BxB,MAAM,oBAAoB,GAAG,KAAK,EAAE,EACzC,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,GAMN,EAA4D,EAAE;IAC7D,OAAO,IAAA,6BAAsB,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AAZW,QAAA,oBAAoB,wBAY/B;AAyBK,MAAM,sBAAsB,GAAG,KAAK,EAAE,EAC3C,OAAO,EACP,MAAM,EACN,IAAI,EACJ,WAAW,GAMZ,EAA8D,EAAE;IAC/D,OAAO,IAAA,+BAAwB,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAZW,QAAA,sBAAsB,0BAYjC;AAqBK,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,OAAO,EACP,MAAM,GAIP,EAAgD,EAAE;IACjD,OAAO,IAAA,sBAAe,EAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9C,CAAC,CAAC;AARW,QAAA,aAAa,iBAQxB"}
|
package/dist/cjs/views/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getCrossChainLZWithdrawalStatus = exports.getUserVolumeUSD = exports.getTradeHistory = exports.getOrderPositionValue = exports.getOrder = exports.getBookTokens = exports.
|
|
3
|
+
exports.getCrossChainLZWithdrawalStatus = exports.getUserVolumeUSD = exports.getTradeHistory = exports.getOrderPositionValue = exports.getOrder = exports.getBookTokens = exports.getBaseFromQuoteAmount = exports.getBookPositionValue = exports.getOrderSetupStatus = exports.needsVaultDeposit = exports.checkTokenAllowances = exports.getRealTokenBalance = exports.getAllBalances = exports.getPortfolioBalance = exports.getTradingBalance = exports.getVault = exports.getReferralSummary = exports.getUserNativeVolume = exports.getTopUsersByNativeVolume = exports.getUserDailyVolumes = exports.getProtocolAnalytics = exports.getLatestPrice = exports.getDailyClosePriceMap = exports.getLatestPriceMap = exports.getStableCurrencies = exports.getCurrencies = exports.getContractAddresses = exports.getSubgraphBlock = exports.getSubgraphBlockNumber = exports.getSubgraphEndpoint = exports.getClaimableOrders = exports.getCancelableOrders = exports.getOpenOrders = exports.getOpenOrder = exports.getPriceNeighborhood = exports.getMakeOrderResult = exports.getLimitOrderResult = exports.parseMakeOrderIdsFromReceipt = exports.getQuoteToken = exports.getMarketSnapshot = exports.getMarketSnapshots = exports.getExpectedInput = exports.getExpectedOutput = exports.getLatestChartLog = exports.getChartLogs = exports.getMarket = void 0;
|
|
4
4
|
var market_1 = require("./market");
|
|
5
5
|
Object.defineProperty(exports, "getMarket", { enumerable: true, get: function () { return market_1.getMarket; } });
|
|
6
6
|
Object.defineProperty(exports, "getChartLogs", { enumerable: true, get: function () { return market_1.getChartLogs; } });
|
|
@@ -51,7 +51,7 @@ Object.defineProperty(exports, "needsVaultDeposit", { enumerable: true, get: fun
|
|
|
51
51
|
Object.defineProperty(exports, "getOrderSetupStatus", { enumerable: true, get: function () { return setup_1.getOrderSetupStatus; } });
|
|
52
52
|
var book_1 = require("./book");
|
|
53
53
|
Object.defineProperty(exports, "getBookPositionValue", { enumerable: true, get: function () { return book_1.getBookPositionValue; } });
|
|
54
|
-
Object.defineProperty(exports, "
|
|
54
|
+
Object.defineProperty(exports, "getBaseFromQuoteAmount", { enumerable: true, get: function () { return book_1.getBaseFromQuoteAmount; } });
|
|
55
55
|
Object.defineProperty(exports, "getBookTokens", { enumerable: true, get: function () { return book_1.getBookTokens; } });
|
|
56
56
|
var order_1 = require("./order");
|
|
57
57
|
Object.defineProperty(exports, "getOrder", { enumerable: true, get: function () { return order_1.getOrder; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,mCAYkB;AAXhB,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,uGAAA,aAAa,OAAA;AACb,sHAAA,4BAA4B,OAAA;AAC5B,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAGpB,+BAA8C;AAArC,4GAAA,oBAAoB,OAAA;AAC7B,2CAKsB;AAJpB,0GAAA,YAAY,OAAA;AACZ,2GAAA,aAAa,OAAA;AACb,iHAAA,mBAAmB,OAAA;AACnB,gHAAA,kBAAkB,OAAA;AAEpB,uCAIoB;AAHlB,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,4GAAA,gBAAgB,OAAA;AAElB,qCAAiD;AAAxC,+GAAA,oBAAoB,OAAA;AAC7B,uCAMoB;AALlB,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,6GAAA,iBAAiB,OAAA;AACjB,iHAAA,qBAAqB,OAAA;AACrB,0GAAA,cAAc,OAAA;AAEhB,yCAMqB;AALnB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,sHAAA,yBAAyB,OAAA;AACzB,gHAAA,mBAAmB,OAAA;AACnB,+GAAA,kBAAkB,OAAA;AAEpB,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AACjB,qCAKmB;AAJjB,4GAAA,iBAAiB,OAAA;AACjB,8GAAA,mBAAmB,OAAA;AACnB,yGAAA,cAAc,OAAA;AACd,8GAAA,mBAAmB,OAAA;AAErB,iCAIiB;AAHf,6GAAA,oBAAoB,OAAA;AACpB,0GAAA,iBAAiB,OAAA;AACjB,4GAAA,mBAAmB,OAAA;AAErB,+BAIgB;AAHd,4GAAA,oBAAoB,OAAA;AACpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":";;;AAAA,mCAYkB;AAXhB,mGAAA,SAAS,OAAA;AACT,sGAAA,YAAY,OAAA;AACZ,2GAAA,iBAAiB,OAAA;AACjB,2GAAA,iBAAiB,OAAA;AACjB,0GAAA,gBAAgB,OAAA;AAChB,4GAAA,kBAAkB,OAAA;AAClB,2GAAA,iBAAiB,OAAA;AACjB,uGAAA,aAAa,OAAA;AACb,sHAAA,4BAA4B,OAAA;AAC5B,6GAAA,mBAAmB,OAAA;AACnB,4GAAA,kBAAkB,OAAA;AAGpB,+BAA8C;AAArC,4GAAA,oBAAoB,OAAA;AAC7B,2CAKsB;AAJpB,0GAAA,YAAY,OAAA;AACZ,2GAAA,aAAa,OAAA;AACb,iHAAA,mBAAmB,OAAA;AACnB,gHAAA,kBAAkB,OAAA;AAEpB,uCAIoB;AAHlB,+GAAA,mBAAmB,OAAA;AACnB,kHAAA,sBAAsB,OAAA;AACtB,4GAAA,gBAAgB,OAAA;AAElB,qCAAiD;AAAxC,+GAAA,oBAAoB,OAAA;AAC7B,uCAMoB;AALlB,yGAAA,aAAa,OAAA;AACb,+GAAA,mBAAmB,OAAA;AACnB,6GAAA,iBAAiB,OAAA;AACjB,iHAAA,qBAAqB,OAAA;AACrB,0GAAA,cAAc,OAAA;AAEhB,yCAMqB;AALnB,iHAAA,oBAAoB,OAAA;AACpB,gHAAA,mBAAmB,OAAA;AACnB,sHAAA,yBAAyB,OAAA;AACzB,gHAAA,mBAAmB,OAAA;AACnB,+GAAA,kBAAkB,OAAA;AAEpB,iCAAmC;AAA1B,iGAAA,QAAQ,OAAA;AACjB,qCAKmB;AAJjB,4GAAA,iBAAiB,OAAA;AACjB,8GAAA,mBAAmB,OAAA;AACnB,yGAAA,cAAc,OAAA;AACd,8GAAA,mBAAmB,OAAA;AAErB,iCAIiB;AAHf,6GAAA,oBAAoB,OAAA;AACpB,0GAAA,iBAAiB,OAAA;AACjB,4GAAA,mBAAmB,OAAA;AAErB,+BAIgB;AAHd,4GAAA,oBAAoB,OAAA;AACpB,8GAAA,sBAAsB,OAAA;AACtB,qGAAA,aAAa,OAAA;AAEf,iCAA0D;AAAjD,iGAAA,QAAQ,OAAA;AAAE,8GAAA,qBAAqB,OAAA;AACxC,iDAAkD;AAAzC,gHAAA,eAAe,OAAA;AACxB,6CAAiD;AAAxC,+GAAA,gBAAgB,OAAA;AACzB,2CAA+D;AAAtD,6HAAA,+BAA+B,OAAA"}
|
|
@@ -5,7 +5,7 @@ import { BOOK_VIEWER_ABI } from '../../../constants/abis/core/book-viewer-abi';
|
|
|
5
5
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
6
6
|
import { toBookId } from '../utils/book-id';
|
|
7
7
|
import { BookModel } from '../model';
|
|
8
|
-
export { fetchBookPositionValue,
|
|
8
|
+
export { fetchBookPositionValue, fetchBaseFromQuoteAmount } from './position';
|
|
9
9
|
const MAX_DEPTH = 20n; // if the depth is too large, it may cause revert errors in the contract call
|
|
10
10
|
export const fetchBookTokens = async ({ chainId, bookId, }) => {
|
|
11
11
|
const { data: { book }, } = await Subgraph.get(chainId, 'getBookTokens', 'query getBookTokens($bookId: ID!) { book(id: $bookId) { id base { id name symbol decimals } quote { id name symbol decimals } } }', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAgB,MAAM,MAAM,CAAC;AAIhD,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,EAAE,eAAe,EAAE,MAAM,8CAA8C,CAAC;AAC/E,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAErC,OAAO,EAAE,sBAAsB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { getAddress, isAddressEqual } from 'viem';
|
|
2
2
|
import BigNumber from 'bignumber.js';
|
|
3
3
|
import { Subgraph } from '../../../constants/chain-configs/subgraph';
|
|
4
|
-
import { quoteToBase
|
|
4
|
+
import { quoteToBase } from '../../../utils';
|
|
5
5
|
import { getMarketId } from '../../market/utils/market-id';
|
|
6
6
|
BigNumber.config({
|
|
7
7
|
DECIMAL_PLACES: 100,
|
|
@@ -55,7 +55,7 @@ export const fetchBookPositionValue = async ({ chainId, bookId, tick, units, })
|
|
|
55
55
|
usdValue,
|
|
56
56
|
};
|
|
57
57
|
};
|
|
58
|
-
export const
|
|
58
|
+
export const fetchBaseFromQuoteAmount = async ({ chainId, bookId, tick, quoteAmount, }) => {
|
|
59
59
|
// Fetch book data from subgraph
|
|
60
60
|
const { data: { book }, } = await Subgraph.get(chainId, 'getBookForPositionValue', 'query getBookForPositionValue($bookId: ID!) { book(id: $bookId) { id unitSize base { id name symbol decimals priceUSD } quote { id name symbol decimals priceUSD } } }', {
|
|
61
61
|
bookId: bookId.toString(),
|
|
@@ -65,7 +65,6 @@ export const fetchBookUnitsFromUsdValue = async ({ chainId, bookId, tick, usdVal
|
|
|
65
65
|
}
|
|
66
66
|
const baseAddress = getAddress(book.base.id);
|
|
67
67
|
const quoteAddress = getAddress(book.quote.id);
|
|
68
|
-
const unitSize = BigInt(book.unitSize);
|
|
69
68
|
// Determine market quote token
|
|
70
69
|
const { quoteTokenAddress: marketQuoteAddress } = getMarketId(chainId, [
|
|
71
70
|
baseAddress,
|
|
@@ -73,41 +72,13 @@ export const fetchBookUnitsFromUsdValue = async ({ chainId, bookId, tick, usdVal
|
|
|
73
72
|
]);
|
|
74
73
|
// Check if this is a bid book (book.quote == marketQuote) or ask book (book.base == marketQuote)
|
|
75
74
|
const isBidBook = isAddressEqual(quoteAddress, marketQuoteAddress);
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
// book.quote = market.quote, book.base = market.base
|
|
81
|
-
// Reverse: USD value -> base amount -> quote amount -> units
|
|
82
|
-
// USD value -> base amount
|
|
83
|
-
const baseAmount = new BigNumber(usdValue).div(book.base.priceUSD);
|
|
84
|
-
// Convert to raw base amount
|
|
85
|
-
const totalBaseAmount = baseAmount
|
|
86
|
-
.times(new BigNumber(10).pow(Number(book.base.decimals)))
|
|
87
|
-
.integerValue(BigNumber.ROUND_DOWN);
|
|
88
|
-
// Convert base to quote using the tick price
|
|
89
|
-
const totalQuoteAmount = baseToQuote(tick, BigInt(totalBaseAmount.toFixed()), false);
|
|
90
|
-
// Divide by unitSize to get units
|
|
91
|
-
units = totalQuoteAmount / unitSize;
|
|
92
|
-
bookType = 'bids';
|
|
93
|
-
}
|
|
94
|
-
else {
|
|
95
|
-
// Ask book: selling base for quote
|
|
96
|
-
// book.quote = market.base, book.base = market.quote (swapped!)
|
|
97
|
-
// Reverse: USD value -> base amount (book.quote is market.base) -> units
|
|
98
|
-
// USD value -> base amount (book.quote is market.base)
|
|
99
|
-
const baseAmount = new BigNumber(usdValue).div(book.quote.priceUSD);
|
|
100
|
-
// Convert to raw base amount (book.quote is market.base)
|
|
101
|
-
const totalBaseAmount = baseAmount
|
|
102
|
-
.times(new BigNumber(10).pow(Number(book.quote.decimals)))
|
|
103
|
-
.integerValue(BigNumber.ROUND_DOWN);
|
|
104
|
-
// Divide by unitSize to get units
|
|
105
|
-
units = BigInt(totalBaseAmount.toFixed()) / unitSize;
|
|
106
|
-
bookType = 'asks';
|
|
107
|
-
}
|
|
75
|
+
const bookType = isBidBook ? 'bids' : 'asks';
|
|
76
|
+
const totalQuoteAmount = BigInt(quoteAmount) * BigInt(book.unitSize);
|
|
77
|
+
// For ask books, invert the tick first (same as market display logic)
|
|
78
|
+
const baseAmount = quoteToBase(tick, totalQuoteAmount, false);
|
|
108
79
|
return {
|
|
109
80
|
bookType,
|
|
110
|
-
|
|
81
|
+
baseAmount,
|
|
111
82
|
};
|
|
112
83
|
};
|
|
113
84
|
//# sourceMappingURL=position.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/position.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,MAAM,CAAC;AAClD,OAAO,SAAS,MAAM,cAAc,CAAC;AAGrC,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"position.js","sourceRoot":"","sources":["../../../../../src/entities/book/apis/position.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/views/book.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { fetchBookPositionValue,
|
|
1
|
+
import { fetchBookPositionValue, fetchBaseFromQuoteAmount, fetchBookTokens, } from '../entities/book/apis';
|
|
2
2
|
/**
|
|
3
3
|
* Gets the USD value for a book position at a specific tick with given units.
|
|
4
4
|
*
|
|
@@ -26,30 +26,30 @@ export const getBookPositionValue = async ({ chainId, bookId, tick, units, }) =>
|
|
|
26
26
|
return fetchBookPositionValue({ chainId, bookId, tick, units });
|
|
27
27
|
};
|
|
28
28
|
/**
|
|
29
|
-
*
|
|
29
|
+
* Converts base token amount to quote token amount at a specific tick price.
|
|
30
30
|
*
|
|
31
31
|
* @param {CHAIN_IDS} chainId - chain id from {@link CHAIN_IDS}
|
|
32
32
|
* @param {string} bookId - The book ID as a string
|
|
33
|
-
* @param {bigint} tick - The tick for the
|
|
34
|
-
* @param {string}
|
|
33
|
+
* @param {bigint} tick - The tick for the conversion
|
|
34
|
+
* @param {string} baseAmount - The base token amount (raw) as a string
|
|
35
35
|
*
|
|
36
|
-
* @returns {Promise<{ bookType: 'bids' | 'asks';
|
|
36
|
+
* @returns {Promise<{ bookType: 'bids' | 'asks'; quoteAmount: bigint }>} An object containing:
|
|
37
37
|
* - bookType: 'bids' for bid books, 'asks' for ask books
|
|
38
|
-
* -
|
|
38
|
+
* - quoteAmount: The quote token amount at the given tick price
|
|
39
39
|
*
|
|
40
40
|
* @example
|
|
41
|
-
* import {
|
|
41
|
+
* import { getQuoteFromBaseAmount } from '@1stdex/first-sdk'
|
|
42
42
|
*
|
|
43
|
-
* const result = await
|
|
43
|
+
* const result = await getQuoteFromBaseAmount({
|
|
44
44
|
* chainId: 421614,
|
|
45
45
|
* bookId: '123456789',
|
|
46
|
-
* tick:
|
|
47
|
-
*
|
|
46
|
+
* tick: -283255n,
|
|
47
|
+
* baseAmount: '970871980108393703474280',
|
|
48
48
|
* })
|
|
49
|
-
* // returns { bookType: 'bids',
|
|
49
|
+
* // returns { bookType: 'bids', quoteAmount: 485477000000n }
|
|
50
50
|
*/
|
|
51
|
-
export const
|
|
52
|
-
return
|
|
51
|
+
export const getBaseFromQuoteAmount = async ({ chainId, bookId, tick, quoteAmount, }) => {
|
|
52
|
+
return fetchBaseFromQuoteAmount({ chainId, bookId, tick, quoteAmount });
|
|
53
53
|
};
|
|
54
54
|
/**
|
|
55
55
|
* Gets the quote and base tokens for a book.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"book.js","sourceRoot":"","sources":["../../../src/views/book.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"book.js","sourceRoot":"","sources":["../../../src/views/book.ts"],"names":[],"mappings":"AACA,OAAO,EACL,sBAAsB,EACtB,wBAAwB,EACxB,eAAe,GAChB,MAAM,uBAAuB,CAAC;AAG/B;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,KAAK,EAAE,EACzC,OAAO,EACP,MAAM,EACN,IAAI,EACJ,KAAK,GAMN,EAA4D,EAAE;IAC7D,OAAO,sBAAsB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAClE,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,EAC3C,OAAO,EACP,MAAM,EACN,IAAI,EACJ,WAAW,GAMZ,EAA8D,EAAE;IAC/D,OAAO,wBAAwB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC,CAAC;AAC1E,CAAC,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,OAAO,EACP,MAAM,GAIP,EAAgD,EAAE;IACjD,OAAO,eAAe,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;AAC9C,CAAC,CAAC"}
|
package/dist/esm/views/index.js
CHANGED
|
@@ -8,7 +8,7 @@ export { getProtocolAnalytics, getUserDailyVolumes, getTopUsersByNativeVolume, g
|
|
|
8
8
|
export { getVault } from './vault';
|
|
9
9
|
export { getTradingBalance, getPortfolioBalance, getAllBalances, getRealTokenBalance, } from './balance';
|
|
10
10
|
export { checkTokenAllowances, needsVaultDeposit, getOrderSetupStatus, } from './setup';
|
|
11
|
-
export { getBookPositionValue,
|
|
11
|
+
export { getBookPositionValue, getBaseFromQuoteAmount, getBookTokens, } from './book';
|
|
12
12
|
export { getOrder, getOrderPositionValue } from './order';
|
|
13
13
|
export { getTradeHistory } from './trade-history';
|
|
14
14
|
export { getUserVolumeUSD } from './user-volume';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,oBAAoB,EACpB,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/views/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,YAAY,EACZ,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,kBAAkB,EAClB,iBAAiB,EACjB,aAAa,EACb,4BAA4B,EAC5B,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,UAAU,CAAC;AAElB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,YAAY,EACZ,aAAa,EACb,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,cAAc,CAAC;AACtB,OAAO,EACL,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,GACjB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EACL,aAAa,EACb,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,cAAc,GACf,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,oBAAoB,EACpB,mBAAmB,EACnB,yBAAyB,EACzB,mBAAmB,EACnB,kBAAkB,GACnB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AACnC,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,cAAc,EACd,mBAAmB,GACpB,MAAM,WAAW,CAAC;AACnB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,SAAS,CAAC;AACjB,OAAO,EACL,oBAAoB,EACpB,sBAAsB,EACtB,aAAa,GACd,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAC1D,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AACjD,OAAO,EAAE,+BAA+B,EAAE,MAAM,cAAc,CAAC"}
|