@liberfi.io/react-predict 0.1.51 → 0.1.53
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/index.d.mts +7 -3
- package/dist/index.d.ts +7 -3
- package/dist/index.js +71 -5
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +70 -6
- package/dist/index.mjs.map +1 -1
- package/dist/{server-eKqIns8z.d.mts → server-DUc4MoLH.d.mts} +79 -19
- package/dist/{server-eKqIns8z.d.ts → server-DUc4MoLH.d.ts} +79 -19
- package/dist/server.d.mts +1 -1
- package/dist/server.d.ts +1 -1
- package/dist/server.js +53 -5
- package/dist/server.js.map +1 -1
- package/dist/server.mjs +53 -5
- package/dist/server.mjs.map +1 -1
- package/package.json +3 -3
package/dist/index.mjs
CHANGED
|
@@ -346,6 +346,12 @@ var PredictClient = class {
|
|
|
346
346
|
const url = `${this.endpoint}/api/v1/trades${query}`;
|
|
347
347
|
return await httpGet(url);
|
|
348
348
|
}
|
|
349
|
+
/** Maps to `GET /api/v1/trades?kalshi_user=...&polymarket_user=...`. */
|
|
350
|
+
async listTradesMulti(params) {
|
|
351
|
+
const query = buildQuery(params);
|
|
352
|
+
const url = `${this.endpoint}/api/v1/trades${query}`;
|
|
353
|
+
return await httpGet(url);
|
|
354
|
+
}
|
|
349
355
|
// -------------------------------------------------------------------------
|
|
350
356
|
// Withdraw
|
|
351
357
|
// -------------------------------------------------------------------------
|
|
@@ -1497,6 +1503,19 @@ function useInfiniteTrades(params) {
|
|
|
1497
1503
|
enabled: Boolean(params.wallet)
|
|
1498
1504
|
});
|
|
1499
1505
|
}
|
|
1506
|
+
function infiniteTradesMultiQueryKey(params) {
|
|
1507
|
+
return ["predict", "trades-by-wallet", "infinite-multi", params];
|
|
1508
|
+
}
|
|
1509
|
+
function useInfiniteTradesMulti(params) {
|
|
1510
|
+
const client = usePredictClient();
|
|
1511
|
+
return useInfiniteQuery({
|
|
1512
|
+
queryKey: infiniteTradesMultiQueryKey(params),
|
|
1513
|
+
queryFn: ({ pageParam }) => client.listTradesMulti({ ...params, cursor: pageParam }),
|
|
1514
|
+
initialPageParam: void 0,
|
|
1515
|
+
getNextPageParam: (lastPage) => lastPage.has_more ? lastPage.next_cursor : void 0,
|
|
1516
|
+
enabled: Boolean(params.kalshi_user || params.polymarket_user)
|
|
1517
|
+
});
|
|
1518
|
+
}
|
|
1500
1519
|
function dflowQuoteQueryKey(params) {
|
|
1501
1520
|
return ["predict", "dflow-quote", params];
|
|
1502
1521
|
}
|
|
@@ -1987,6 +2006,16 @@ function floorDecimalPlaces(n, d) {
|
|
|
1987
2006
|
const factor = 10 ** d;
|
|
1988
2007
|
return Math.floor(n * factor) / factor;
|
|
1989
2008
|
}
|
|
2009
|
+
function ceilDecimalPlaces(n, d) {
|
|
2010
|
+
const factor = 10 ** d;
|
|
2011
|
+
return Math.ceil(n * factor) / factor;
|
|
2012
|
+
}
|
|
2013
|
+
function countDecimalPlaces(n) {
|
|
2014
|
+
const s = n.toString();
|
|
2015
|
+
const dot = s.indexOf(".");
|
|
2016
|
+
if (dot === -1) return 0;
|
|
2017
|
+
return s.length - dot - 1;
|
|
2018
|
+
}
|
|
1990
2019
|
function toMicroUsdc(amount) {
|
|
1991
2020
|
return BigInt(Math.round(amount * 1e6));
|
|
1992
2021
|
}
|
|
@@ -1996,16 +2025,48 @@ function normalizeTokenId(tokenId) {
|
|
|
1996
2025
|
}
|
|
1997
2026
|
return tokenId;
|
|
1998
2027
|
}
|
|
1999
|
-
|
|
2000
|
-
|
|
2001
|
-
|
|
2002
|
-
const rawPrice = decimalPlaces(
|
|
2003
|
-
const
|
|
2028
|
+
var MARKET_MAKER_MAX_DECIMALS = 2;
|
|
2029
|
+
var MARKET_TAKER_MAX_DECIMALS = 4;
|
|
2030
|
+
function getMarketOrderAmounts(side, size, price, rc) {
|
|
2031
|
+
const rawPrice = decimalPlaces(price, rc.price);
|
|
2032
|
+
const makerDecimals = Math.min(rc.size, MARKET_MAKER_MAX_DECIMALS);
|
|
2033
|
+
const takerDecimals = Math.min(rc.amount, MARKET_TAKER_MAX_DECIMALS);
|
|
2034
|
+
if (side === SIDE.BUY) {
|
|
2035
|
+
const rawMakerAmt2 = floorDecimalPlaces(size, makerDecimals);
|
|
2036
|
+
let rawTakerAmt2 = rawMakerAmt2 / rawPrice;
|
|
2037
|
+
if (countDecimalPlaces(rawTakerAmt2) > takerDecimals) {
|
|
2038
|
+
rawTakerAmt2 = floorDecimalPlaces(rawTakerAmt2, takerDecimals);
|
|
2039
|
+
}
|
|
2040
|
+
return {
|
|
2041
|
+
makerAmount: toMicroUsdc(rawMakerAmt2).toString(),
|
|
2042
|
+
takerAmount: toMicroUsdc(rawTakerAmt2).toString()
|
|
2043
|
+
};
|
|
2044
|
+
}
|
|
2045
|
+
const rawMakerAmt = floorDecimalPlaces(size, makerDecimals);
|
|
2046
|
+
let rawTakerAmt = rawMakerAmt * rawPrice;
|
|
2047
|
+
if (countDecimalPlaces(rawTakerAmt) > takerDecimals) {
|
|
2048
|
+
rawTakerAmt = ceilDecimalPlaces(rawTakerAmt, takerDecimals);
|
|
2049
|
+
}
|
|
2050
|
+
return {
|
|
2051
|
+
makerAmount: toMicroUsdc(rawMakerAmt).toString(),
|
|
2052
|
+
takerAmount: toMicroUsdc(rawTakerAmt).toString()
|
|
2053
|
+
};
|
|
2054
|
+
}
|
|
2055
|
+
function getLimitOrderAmounts(side, size, price, rc) {
|
|
2056
|
+
const rawPrice = decimalPlaces(price, rc.price);
|
|
2057
|
+
const rawSize = side === SIDE.SELL ? floorDecimalPlaces(size, rc.size) : decimalPlaces(size, rc.size);
|
|
2004
2058
|
const sizeInMicro = toMicroUsdc(rawSize);
|
|
2005
2059
|
const rawAmount = decimalPlaces(rawSize * rawPrice, rc.amount);
|
|
2006
2060
|
const amountInMicro = toMicroUsdc(rawAmount);
|
|
2007
2061
|
const makerAmount = side === SIDE.BUY ? amountInMicro.toString() : sizeInMicro.toString();
|
|
2008
2062
|
const takerAmount = side === SIDE.BUY ? sizeInMicro.toString() : amountInMicro.toString();
|
|
2063
|
+
return { makerAmount, takerAmount };
|
|
2064
|
+
}
|
|
2065
|
+
function buildOrderMessage(input) {
|
|
2066
|
+
const side = input.side === "BUY" ? SIDE.BUY : SIDE.SELL;
|
|
2067
|
+
const rc = ROUNDING_CONFIG[input.tickSize] ?? DEFAULT_ROUNDING;
|
|
2068
|
+
const isMarketOrder = input.orderType === "FOK" || input.orderType === "FAK";
|
|
2069
|
+
const { makerAmount, takerAmount } = isMarketOrder ? getMarketOrderAmounts(side, input.size, input.price, rc) : getLimitOrderAmounts(side, input.size, input.price, rc);
|
|
2009
2070
|
const maker = input.funderAddress ?? input.signerAddress;
|
|
2010
2071
|
return {
|
|
2011
2072
|
salt: Math.floor(Math.random() * 1e15).toString(),
|
|
@@ -2120,6 +2181,9 @@ function useCreatePolymarketOrder(mutationOptions = {}) {
|
|
|
2120
2181
|
}
|
|
2121
2182
|
function computeOrderCost(input) {
|
|
2122
2183
|
if (input.side === "SELL") return "0";
|
|
2184
|
+
if (input.orderType === "FOK" || input.orderType === "FAK") {
|
|
2185
|
+
return input.size.toFixed(6);
|
|
2186
|
+
}
|
|
2123
2187
|
return (input.price * input.size).toFixed(6);
|
|
2124
2188
|
}
|
|
2125
2189
|
async function pollTxConfirmed(fetchStatus, txHash) {
|
|
@@ -2136,6 +2200,6 @@ async function pollTxConfirmed(fetchStatus, txHash) {
|
|
|
2136
2200
|
);
|
|
2137
2201
|
}
|
|
2138
2202
|
|
|
2139
|
-
export { CLOB_AUTH_DOMAIN, CLOB_AUTH_TYPES, CTF_EXCHANGE_ADDRESS, CTF_ORDER_TYPES, ChartRange, NEG_RISK_CTF_EXCHANGE_ADDRESS, ORDER_TYPE, POLYGON_CHAIN_ID, PolymarketContext, PolymarketProvider, PredictClient, PredictContext, PredictProvider, PredictWsClient, SIDE, USDC_ADDRESS, availableSharesQueryKey, balanceQueryKey, buildClobAuthMessage, buildClobPayload, buildCtfExchangeDomain, buildOrderMessage, buildPolymarketL2Headers, buildSignedOrder, candlesticksQueryKey, createPredictClient, createPredictWsClient, derivePolymarketApiKey, dflowKYCQueryKey, dflowQuoteQueryKey, eventQueryKey, eventStatsQueryKey, eventsQueryKey, fetchEvent, fetchEvents, fetchEventsPage, fetchMarket, fetchMatchMarketsPage, fetchMatchesPage, hmacSha256Base64, infiniteEventsQueryKey, infiniteOrdersQueryKey, infiniteTradesQueryKey, marketQueryKey, marketTradesQueryKey, matchMarketsQueryKey, matchQueryKey, matchesQueryKey, orderQueryKey, orderbookQueryKey, ordersMultiQueryKey, ordersQueryKey, polymarketDepositAddressesQueryKey, polymarketSetupQueryKey, positionsMultiQueryKey, positionsQueryKey, priceHistoryQueryKey, resolveEventsParams, resolveTagSlug, similarEventsQueryKey, tickSizeQueryKey, tradesQueryKey, useAvailableShares, useBalance, useCancelOrder, useCandlesticks, useCreatePolymarketOrder, useDFlowKYC, useDFlowQuote, useDFlowSubmit, useEvent, useEventStats, useEvents, useInfiniteEvents, useInfiniteMatchMarkets, useInfiniteMatches, useInfiniteOrders, useInfiniteTrades, useMarket, useMarketHistory, useMarketTrades, useMatch, useOrder, useOrderbook, useOrderbookSubscription, useOrders, useOrdersMulti, usePolymarket, usePolymarketDeposit, usePolymarketDepositAddresses, usePolymarketSetup, usePolymarketWithdraw, usePositions, usePositionsMulti, usePredictClient, usePredictWsClient, usePriceHistory, usePricesSubscription, useRealtimeOrderbook, useRealtimePrices, useRealtimeTrades, useRunPolymarketSetup, useSearchEvents, useSimilarEvents, useTickSize, useTrades, useTradesSubscription, useWithdrawBuildMutation, useWithdrawStatusQuery, useWithdrawSubmitMutation, withdrawStatusQueryKey };
|
|
2203
|
+
export { CLOB_AUTH_DOMAIN, CLOB_AUTH_TYPES, CTF_EXCHANGE_ADDRESS, CTF_ORDER_TYPES, ChartRange, NEG_RISK_CTF_EXCHANGE_ADDRESS, ORDER_TYPE, POLYGON_CHAIN_ID, PolymarketContext, PolymarketProvider, PredictClient, PredictContext, PredictProvider, PredictWsClient, SIDE, USDC_ADDRESS, availableSharesQueryKey, balanceQueryKey, buildClobAuthMessage, buildClobPayload, buildCtfExchangeDomain, buildOrderMessage, buildPolymarketL2Headers, buildSignedOrder, candlesticksQueryKey, createPredictClient, createPredictWsClient, derivePolymarketApiKey, dflowKYCQueryKey, dflowQuoteQueryKey, eventQueryKey, eventStatsQueryKey, eventsQueryKey, fetchEvent, fetchEvents, fetchEventsPage, fetchMarket, fetchMatchMarketsPage, fetchMatchesPage, hmacSha256Base64, infiniteEventsQueryKey, infiniteOrdersQueryKey, infiniteTradesMultiQueryKey, infiniteTradesQueryKey, marketQueryKey, marketTradesQueryKey, matchMarketsQueryKey, matchQueryKey, matchesQueryKey, orderQueryKey, orderbookQueryKey, ordersMultiQueryKey, ordersQueryKey, polymarketDepositAddressesQueryKey, polymarketSetupQueryKey, positionsMultiQueryKey, positionsQueryKey, priceHistoryQueryKey, resolveEventsParams, resolveTagSlug, similarEventsQueryKey, tickSizeQueryKey, tradesQueryKey, useAvailableShares, useBalance, useCancelOrder, useCandlesticks, useCreatePolymarketOrder, useDFlowKYC, useDFlowQuote, useDFlowSubmit, useEvent, useEventStats, useEvents, useInfiniteEvents, useInfiniteMatchMarkets, useInfiniteMatches, useInfiniteOrders, useInfiniteTrades, useInfiniteTradesMulti, useMarket, useMarketHistory, useMarketTrades, useMatch, useOrder, useOrderbook, useOrderbookSubscription, useOrders, useOrdersMulti, usePolymarket, usePolymarketDeposit, usePolymarketDepositAddresses, usePolymarketSetup, usePolymarketWithdraw, usePositions, usePositionsMulti, usePredictClient, usePredictWsClient, usePriceHistory, usePricesSubscription, useRealtimeOrderbook, useRealtimePrices, useRealtimeTrades, useRunPolymarketSetup, useSearchEvents, useSimilarEvents, useTickSize, useTrades, useTradesSubscription, useWithdrawBuildMutation, useWithdrawStatusQuery, useWithdrawSubmitMutation, withdrawStatusQueryKey };
|
|
2140
2204
|
//# sourceMappingURL=index.mjs.map
|
|
2141
2205
|
//# sourceMappingURL=index.mjs.map
|