@rainlanguage/ui-components 0.0.1-alpha.21 → 0.0.1-alpha.210
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/__fixtures__/settings.yaml +125 -0
- package/dist/__mocks__/CodeMirrorRainlang.svelte +4 -0
- package/dist/__mocks__/CodeMirrorRainlang.svelte.d.ts +18 -0
- package/dist/__mocks__/MockComponent.svelte +4 -0
- package/dist/__mocks__/MockComponent.svelte.d.ts +3 -1
- package/dist/__mocks__/stores.d.ts +47 -33
- package/dist/__mocks__/stores.js +61 -38
- package/dist/components/ButtonLoading.svelte +1 -1
- package/dist/components/ButtonVaultLink.svelte +11 -11
- package/dist/components/ButtonVaultLink.svelte.d.ts +4 -3
- package/dist/components/CheckboxInactiveOrdersVault.svelte +20 -0
- package/dist/components/CheckboxInactiveOrdersVault.svelte.d.ts +19 -0
- package/dist/components/CheckboxMyItemsOnly.svelte +3 -2
- package/dist/components/CheckboxMyItemsOnly.svelte.d.ts +2 -3
- package/dist/components/CheckboxZeroBalanceVault.svelte.d.ts +2 -2
- package/dist/components/CodeMirrorDotrain.svelte +4 -0
- package/dist/components/CodeMirrorDotrain.svelte.d.ts +1 -0
- package/dist/components/CodeMirrorRainlang.svelte +3 -12
- package/dist/components/CodeMirrorRainlang.svelte.d.ts +2 -2
- package/dist/components/EditableSpan.svelte +3 -14
- package/dist/components/EditableSpan.svelte.d.ts +0 -1
- package/dist/components/Hash.svelte +3 -3
- package/dist/components/License.svelte +5 -4
- package/dist/components/ListViewOrderbookFilters.svelte +45 -23
- package/dist/components/ListViewOrderbookFilters.svelte.d.ts +27 -22
- package/dist/components/LocalDbStatusBadge.svelte +27 -0
- package/dist/components/LocalDbStatusBadge.svelte.d.ts +19 -0
- package/dist/components/LocalDbStatusCard.svelte +40 -0
- package/dist/components/LocalDbStatusCard.svelte.d.ts +20 -0
- package/dist/components/LocalDbStatusModal.svelte +103 -0
- package/dist/components/LocalDbStatusModal.svelte.d.ts +21 -0
- package/dist/components/OrderOrVaultHash.svelte +12 -12
- package/dist/components/OrderOrVaultHash.svelte.d.ts +4 -4
- package/dist/components/PageHeader.svelte +1 -1
- package/dist/components/TanstackAppTable.svelte +179 -28
- package/dist/components/TanstackAppTable.svelte.d.ts +14 -8
- package/dist/components/ToastDetail.svelte +42 -0
- package/dist/components/ToastDetail.svelte.d.ts +20 -0
- package/dist/components/Tooltip.svelte +8 -0
- package/dist/components/Tooltip.svelte.d.ts +21 -0
- package/dist/components/VaultBalanceChangeTypeFilter.svelte +23 -0
- package/dist/components/VaultBalanceChangeTypeFilter.svelte.d.ts +19 -0
- package/dist/components/VaultCard.svelte +18 -0
- package/dist/components/VaultCard.svelte.d.ts +19 -0
- package/dist/components/charts/LightweightChart.svelte +1 -1
- package/dist/components/charts/LightweightChart.svelte.d.ts +5 -5
- package/dist/components/charts/OrderTradesChart.svelte +300 -28
- package/dist/components/charts/OrderTradesChart.svelte.d.ts +4 -4
- package/dist/components/charts/TanstackLightweightChartLine.svelte +5 -9
- package/dist/components/charts/VaultBalanceChart.svelte +8 -26
- package/dist/components/charts/VaultBalanceChart.svelte.d.ts +1 -7
- package/dist/components/charts/transformAndSortData.d.ts +24 -0
- package/dist/components/charts/transformAndSortData.js +111 -0
- package/dist/components/checkbox/CheckboxActiveOrders.svelte +11 -0
- package/dist/components/checkbox/CheckboxActiveOrders.svelte.d.ts +19 -0
- package/dist/components/deployment/ButtonSelectOption.svelte +2 -0
- package/dist/components/deployment/ButtonSelectOption.svelte.d.ts +1 -0
- package/dist/components/deployment/ComposedRainlangModal.svelte +2 -1
- package/dist/components/deployment/ComposedRainlangModal.svelte.d.ts +1 -4
- package/dist/components/deployment/DeploymentSectionHeader.svelte +7 -4
- package/dist/components/deployment/DeploymentSteps.svelte +209 -216
- package/dist/components/deployment/DeploymentSteps.svelte.d.ts +6 -12
- package/dist/components/deployment/DeploymentTile.svelte +2 -2
- package/dist/components/deployment/DeploymentTile.svelte.d.ts +1 -1
- package/dist/components/deployment/DeploymentsSection.svelte +15 -22
- package/dist/components/deployment/DeploymentsSection.svelte.d.ts +3 -2
- package/dist/components/deployment/DepositInput.svelte +8 -10
- package/dist/components/deployment/DepositInput.svelte.d.ts +1 -2
- package/dist/components/deployment/DisclaimerModal.svelte +6 -7
- package/dist/components/deployment/FieldDefinitionInput.svelte +7 -11
- package/dist/components/deployment/FieldDefinitionInput.svelte.d.ts +1 -2
- package/dist/components/deployment/InvalidOrdersSection.svelte +17 -0
- package/dist/components/deployment/InvalidOrdersSection.svelte.d.ts +19 -0
- package/dist/components/deployment/{StrategyPage.svelte → OrderPage.svelte} +15 -24
- package/dist/components/deployment/OrderPage.svelte.d.ts +21 -0
- package/dist/components/deployment/SelectToken.svelte +125 -48
- package/dist/components/deployment/SelectToken.svelte.d.ts +4 -3
- package/dist/components/deployment/TokenBalance.svelte +19 -0
- package/dist/components/deployment/TokenBalance.svelte.d.ts +19 -0
- package/dist/components/deployment/TokenIOInput.svelte +25 -15
- package/dist/components/deployment/TokenIOInput.svelte.d.ts +3 -3
- package/dist/components/deployment/TokenSelectionModal.svelte +148 -0
- package/dist/components/deployment/TokenSelectionModal.svelte.d.ts +20 -0
- package/dist/components/deployment/{ValidStrategiesSection.svelte → ValidOrdersSection.svelte} +7 -7
- package/dist/components/deployment/ValidOrdersSection.svelte.d.ts +19 -0
- package/dist/components/deployment/VaultIdInformation.svelte +17 -0
- package/dist/components/deployment/VaultIdInformation.svelte.d.ts +21 -0
- package/dist/components/detail/OrderDetail.svelte +184 -80
- package/dist/components/detail/OrderDetail.svelte.d.ts +21 -15
- package/dist/components/detail/TanstackOrderQuote.svelte +92 -46
- package/dist/components/detail/TanstackOrderQuote.svelte.d.ts +14 -16
- package/dist/components/detail/VaultDetail.svelte +78 -77
- package/dist/components/detail/VaultDetail.svelte.d.ts +12 -18
- package/dist/components/dropdown/DropdownActiveNetworks.svelte +44 -0
- package/dist/components/dropdown/DropdownActiveNetworks.svelte.d.ts +19 -0
- package/dist/components/dropdown/DropdownCheckbox.svelte +4 -4
- package/dist/components/dropdown/DropdownOrderListAccounts.svelte +5 -2
- package/dist/components/dropdown/DropdownOrderListAccounts.svelte.d.ts +2 -3
- package/dist/components/dropdown/DropdownOrderbooksFilter.svelte +172 -0
- package/dist/components/dropdown/DropdownOrderbooksFilter.svelte.d.ts +25 -0
- package/dist/components/dropdown/DropdownTokensFilter.svelte +152 -0
- package/dist/components/dropdown/DropdownTokensFilter.svelte.d.ts +28 -0
- package/dist/components/icon/Refresh.svelte +2 -1
- package/dist/components/icon/Refresh.svelte.d.ts +1 -0
- package/dist/components/input/InputOrderHash.svelte +1 -1
- package/dist/components/input/InputOrderHash.svelte.d.ts +3 -3
- package/dist/components/input/InputRegistryUrl.svelte +36 -14
- package/dist/components/input/InputToken.svelte +2 -2
- package/dist/components/input/InputTokenAmount.svelte +16 -21
- package/dist/components/input/InputTokenAmount.svelte.d.ts +3 -3
- package/dist/components/tables/OrderAPY.svelte +6 -33
- package/dist/components/tables/OrderAPY.svelte.d.ts +1 -4
- package/dist/components/tables/OrderTradesListTable.svelte +84 -81
- package/dist/components/tables/OrderTradesListTable.svelte.d.ts +4 -4
- package/dist/components/tables/OrderVaultsVolTable.svelte +17 -22
- package/dist/components/tables/OrderVaultsVolTable.svelte.d.ts +2 -2
- package/dist/components/tables/OrdersListTable.svelte +200 -108
- package/dist/components/tables/OrdersListTable.svelte.d.ts +17 -21
- package/dist/components/tables/VaultBalanceChangesTable.svelte +83 -43
- package/dist/components/tables/VaultBalanceChangesTable.svelte.d.ts +13 -11
- package/dist/components/tables/VaultsListTable.svelte +268 -145
- package/dist/components/tables/VaultsListTable.svelte.d.ts +24 -32
- package/dist/components/transactions/FixedBottomTransaction.svelte +63 -0
- package/dist/components/transactions/FixedBottomTransaction.svelte.d.ts +16 -0
- package/dist/components/transactions/TransactionDetail.svelte +31 -0
- package/dist/components/transactions/TransactionDetail.svelte.d.ts +20 -0
- package/dist/components/transactions/TransactionList.svelte +17 -0
- package/dist/components/transactions/TransactionList.svelte.d.ts +16 -0
- package/dist/components/transactions/getStatusEmoji.d.ts +2 -0
- package/dist/components/transactions/getStatusEmoji.js +20 -0
- package/dist/components/wallet/WalletConnect.svelte +5 -4
- package/dist/components/wallet/WalletConnect.svelte.d.ts +0 -1
- package/dist/consts.d.ts +1 -0
- package/dist/consts.js +1 -0
- package/dist/errors/DeploymentStepsError.d.ts +8 -2
- package/dist/errors/DeploymentStepsError.js +7 -1
- package/dist/hooks/useGui.d.ts +1 -1
- package/dist/hooks/useGui.js +1 -1
- package/dist/hooks/useLocalDb.d.ts +3 -0
- package/dist/hooks/useLocalDb.js +10 -0
- package/dist/hooks/useRaindexClient.d.ts +3 -0
- package/dist/hooks/useRaindexClient.js +11 -0
- package/dist/index.d.ts +42 -19
- package/dist/index.js +41 -16
- package/dist/models/Transaction.d.ts +75 -0
- package/dist/models/Transaction.js +100 -0
- package/dist/providers/GuiProvider.svelte +1 -1
- package/dist/providers/GuiProvider.svelte.d.ts +1 -1
- package/dist/providers/LocalDbProvider.svelte +8 -0
- package/dist/providers/LocalDbProvider.svelte.d.ts +21 -0
- package/dist/providers/RaindexClientProvider.svelte +8 -0
- package/dist/providers/RaindexClientProvider.svelte.d.ts +21 -0
- package/dist/providers/dotrainRegistry/DotrainRegistryProvider.svelte +8 -0
- package/dist/providers/dotrainRegistry/DotrainRegistryProvider.svelte.d.ts +24 -0
- package/dist/providers/dotrainRegistry/context.d.ts +9 -0
- package/dist/providers/dotrainRegistry/context.js +40 -0
- package/dist/providers/dotrainRegistry/useDotrainRegistry.d.ts +5 -0
- package/dist/providers/dotrainRegistry/useDotrainRegistry.js +35 -0
- package/dist/providers/registry/RegistryManager.d.ts +65 -0
- package/dist/providers/registry/RegistryManager.js +133 -0
- package/dist/providers/registry/RegistryProvider.svelte +6 -0
- package/dist/providers/registry/RegistryProvider.svelte.d.ts +21 -0
- package/dist/providers/registry/context.d.ts +10 -0
- package/dist/providers/registry/context.js +46 -0
- package/dist/providers/registry/useRegistry.d.ts +7 -0
- package/dist/providers/registry/useRegistry.js +29 -0
- package/dist/providers/toasts/ToastProvider.svelte +17 -0
- package/dist/providers/toasts/ToastProvider.svelte.d.ts +18 -0
- package/dist/providers/toasts/context.d.ts +14 -0
- package/dist/providers/toasts/context.js +22 -0
- package/dist/providers/toasts/useToasts.d.ts +16 -0
- package/dist/providers/toasts/useToasts.js +63 -0
- package/dist/providers/transactions/TransactionManager.d.ts +235 -0
- package/dist/providers/transactions/TransactionManager.js +509 -0
- package/dist/providers/transactions/TransactionProvider.svelte +11 -0
- package/dist/providers/transactions/TransactionProvider.svelte.d.ts +24 -0
- package/dist/providers/transactions/context.d.ts +19 -0
- package/dist/providers/transactions/context.js +28 -0
- package/dist/providers/transactions/useTransactions.d.ts +13 -0
- package/dist/providers/transactions/useTransactions.js +18 -0
- package/dist/providers/wallet/WalletProvider.svelte +7 -0
- package/dist/providers/wallet/WalletProvider.svelte.d.ts +21 -0
- package/dist/providers/wallet/context.d.ts +10 -0
- package/dist/providers/wallet/context.js +47 -0
- package/dist/providers/wallet/useAccount.d.ts +8 -0
- package/dist/providers/wallet/useAccount.js +148 -0
- package/dist/queries/keys.d.ts +1 -0
- package/dist/queries/keys.js +1 -0
- package/dist/queries/queryClient.d.ts +1 -1
- package/dist/queries/queryClient.js +11 -6
- package/dist/services/awaitTransactionIndexing.d.ts +107 -0
- package/dist/services/awaitTransactionIndexing.js +58 -0
- package/dist/services/getExplorerLink.d.ts +1 -1
- package/dist/services/getExplorerLink.js +2 -4
- package/dist/services/handleShareChoices.d.ts +2 -2
- package/dist/services/handleShareChoices.js +7 -2
- package/dist/services/historicalOrderCharts.d.ts +2 -2
- package/dist/services/historicalOrderCharts.js +267 -333
- package/dist/services/index.d.ts +2 -1
- package/dist/services/index.js +2 -1
- package/dist/services/loadRegistryUrl.d.ts +2 -0
- package/dist/services/loadRegistryUrl.js +22 -0
- package/dist/services/pairTradesChartData.d.ts +47 -0
- package/dist/services/pairTradesChartData.js +190 -0
- package/dist/services/registry.d.ts +5 -5
- package/dist/services/registry.js +8 -208
- package/dist/services/time.d.ts +12 -0
- package/dist/services/time.js +88 -6
- package/dist/storesGeneric/cachedWritableStore.d.ts +57 -0
- package/dist/storesGeneric/cachedWritableStore.js +93 -0
- package/dist/types/account.d.ts +3 -0
- package/dist/types/appStores.d.ts +9 -14
- package/dist/types/modal.d.ts +26 -14
- package/dist/types/{strategy.d.ts → order.d.ts} +3 -3
- package/dist/types/order.js +1 -0
- package/dist/types/toast.d.ts +11 -0
- package/dist/types/toast.js +1 -0
- package/dist/types/tokenBalance.d.ts +6 -0
- package/dist/types/tokenBalance.js +1 -0
- package/dist/types/transaction.d.ts +66 -21
- package/dist/types/transaction.js +31 -1
- package/dist/utils/configHelpers.d.ts +4 -0
- package/dist/utils/configHelpers.js +21 -0
- package/dist/utils/constructHashLink.d.ts +24 -0
- package/dist/utils/constructHashLink.js +115 -0
- package/dist/utils/getNetworkName.d.ts +1 -0
- package/dist/utils/getNetworkName.js +13 -0
- package/dist/utils/number.d.ts +0 -7
- package/dist/utils/number.js +0 -27
- package/dist/utils/tokens.d.ts +2 -0
- package/dist/utils/tokens.js +3 -0
- package/dist/utils/vaultBalanceChangeLabels.d.ts +4 -0
- package/dist/utils/vaultBalanceChangeLabels.js +18 -0
- package/package.json +39 -34
- package/dist/__fixtures__/orderDetail.d.ts +0 -99
- package/dist/__fixtures__/orderDetail.js +0 -204
- package/dist/__fixtures__/settings-12-11-24.json +0 -160
- package/dist/__mocks__/mockTransactionStore.d.ts +0 -22
- package/dist/__mocks__/mockTransactionStore.js +0 -56
- package/dist/__mocks__/settings.d.ts +0 -3
- package/dist/__mocks__/settings.js +0 -37
- package/dist/components/deployment/InvalidStrategiesSection.svelte +0 -19
- package/dist/components/deployment/InvalidStrategiesSection.svelte.d.ts +0 -19
- package/dist/components/deployment/StrategyPage.svelte.d.ts +0 -19
- package/dist/components/deployment/ValidStrategiesSection.svelte.d.ts +0 -19
- package/dist/components/deployment/getDeploymentTransactionArgs.d.ts +0 -17
- package/dist/components/deployment/getDeploymentTransactionArgs.js +0 -28
- package/dist/components/detail/DepositOrWithdrawButtons.svelte +0 -44
- package/dist/components/detail/DepositOrWithdrawButtons.svelte.d.ts +0 -26
- package/dist/components/dropdown/DropdownActiveSubgraphs.svelte +0 -38
- package/dist/components/dropdown/DropdownActiveSubgraphs.svelte.d.ts +0 -21
- package/dist/components/dropdown/DropdownOrderStatus.svelte +0 -31
- package/dist/components/dropdown/DropdownOrderStatus.svelte.d.ts +0 -19
- package/dist/stores/transactionStore.d.ts +0 -98
- package/dist/stores/transactionStore.js +0 -303
- package/dist/utils/time.d.ts +0 -12
- package/dist/utils/time.js +0 -27
- package/dist/utils/vault.d.ts +0 -2
- package/dist/utils/vault.js +0 -29
- /package/dist/types/{strategy.js → account.js} +0 -0
|
@@ -1,39 +1,10 @@
|
|
|
1
|
-
<script>
|
|
2
|
-
import TanstackAppTable from "../TanstackAppTable.svelte";
|
|
3
|
-
import { QKEY_ORDER_APY } from "../../queries/keys";
|
|
4
|
-
import { getOrderPerformance } from "@rainlanguage/orderbook/js_api";
|
|
5
|
-
import { TableBodyCell, TableHeadCell } from "flowbite-svelte";
|
|
6
|
-
import ApyTimeFilters from "../charts/APYTimeFilters.svelte";
|
|
7
|
-
import { bigintStringToPercentage } from "../../utils/number";
|
|
8
|
-
export let id;
|
|
9
|
-
export let subgraphUrl;
|
|
10
|
-
let startTimestamp;
|
|
11
|
-
let endTimestamp;
|
|
12
|
-
$: queryStartTime = startTimestamp ? BigInt(startTimestamp) : void 0;
|
|
13
|
-
$: queryEndTime = endTimestamp ? BigInt(endTimestamp) : void 0;
|
|
14
|
-
$: orderPerformance = createInfiniteQuery({
|
|
15
|
-
queryKey: [id, QKEY_ORDER_APY + id],
|
|
16
|
-
queryFn: async () => {
|
|
17
|
-
return [
|
|
18
|
-
await getOrderPerformance(
|
|
19
|
-
subgraphUrl || "",
|
|
20
|
-
id,
|
|
21
|
-
queryStartTime,
|
|
22
|
-
queryEndTime
|
|
23
|
-
)
|
|
24
|
-
];
|
|
25
|
-
},
|
|
26
|
-
initialPageParam: 0,
|
|
27
|
-
getNextPageParam: () => void 0,
|
|
28
|
-
enabled: !!subgraphUrl
|
|
29
|
-
});
|
|
30
|
-
</script>
|
|
1
|
+
<script></script>
|
|
31
2
|
|
|
32
|
-
<TanstackAppTable
|
|
3
|
+
<!-- <TanstackAppTable
|
|
33
4
|
query={orderPerformance}
|
|
34
5
|
emptyMessage="APY Unavailable"
|
|
35
6
|
rowHoverable={false}
|
|
36
|
-
queryKey={id}
|
|
7
|
+
queryKey={order.id}
|
|
37
8
|
>
|
|
38
9
|
<svelte:fragment slot="timeFilter">
|
|
39
10
|
<ApyTimeFilters bind:startTimestamp bind:endTimestamp />
|
|
@@ -54,4 +25,6 @@ $: orderPerformance = createInfiniteQuery({
|
|
|
54
25
|
: 'Unavailable APY'}
|
|
55
26
|
</TableBodyCell>
|
|
56
27
|
</svelte:fragment>
|
|
57
|
-
</TanstackAppTable>
|
|
28
|
+
</TanstackAppTable> -->
|
|
29
|
+
|
|
30
|
+
<div>TODO: Issue #1989</div>
|
|
@@ -1,40 +1,38 @@
|
|
|
1
1
|
<script>import { createInfiniteQuery } from "@tanstack/svelte-query";
|
|
2
2
|
import TanstackAppTable from "../TanstackAppTable.svelte";
|
|
3
3
|
import { QKEY_ORDER_TRADES_LIST } from "../../queries/keys";
|
|
4
|
-
import { getOrderTradesList, getOrderTradesCount } from "@rainlanguage/orderbook/js_api";
|
|
5
4
|
import { DEFAULT_PAGE_SIZE } from "../../queries/constants";
|
|
6
5
|
import { TableBodyCell, TableHeadCell } from "flowbite-svelte";
|
|
7
|
-
import { formatTimestampSecondsAsLocal } from "../../
|
|
6
|
+
import { formatTimestampSecondsAsLocal } from "../../services/time";
|
|
8
7
|
import Hash, { HashType } from "../Hash.svelte";
|
|
9
|
-
import { formatUnits } from "viem";
|
|
10
8
|
import { BugOutline } from "flowbite-svelte-icons";
|
|
11
9
|
import TableTimeFilters from "../charts/TableTimeFilters.svelte";
|
|
12
|
-
|
|
13
|
-
export let
|
|
14
|
-
export let
|
|
10
|
+
import Tooltip from "../Tooltip.svelte";
|
|
11
|
+
export let order;
|
|
12
|
+
export let rpcs = void 0;
|
|
15
13
|
export let handleDebugTradeModal = void 0;
|
|
16
14
|
let startTimestamp;
|
|
17
15
|
let endTimestamp;
|
|
18
16
|
let tradesCount;
|
|
19
17
|
$: orderTradesQuery = createInfiniteQuery({
|
|
20
|
-
queryKey: [id, QKEY_ORDER_TRADES_LIST + id],
|
|
18
|
+
queryKey: [order.id, QKEY_ORDER_TRADES_LIST + order.id],
|
|
21
19
|
queryFn: async ({ pageParam }) => {
|
|
22
20
|
tradesCount = void 0;
|
|
23
|
-
const [
|
|
24
|
-
|
|
25
|
-
subgraphUrl || "",
|
|
26
|
-
id,
|
|
21
|
+
const [countResult, tradesResult] = await Promise.all([
|
|
22
|
+
order.getTradeCount(
|
|
27
23
|
startTimestamp ? BigInt(startTimestamp) : void 0,
|
|
28
24
|
endTimestamp ? BigInt(endTimestamp) : void 0
|
|
29
25
|
),
|
|
30
|
-
|
|
31
|
-
subgraphUrl || "",
|
|
32
|
-
id,
|
|
33
|
-
{ page: pageParam + 1, pageSize: DEFAULT_PAGE_SIZE },
|
|
26
|
+
order.getTradesList(
|
|
34
27
|
startTimestamp ? BigInt(startTimestamp) : void 0,
|
|
35
|
-
endTimestamp ? BigInt(endTimestamp) : void 0
|
|
28
|
+
endTimestamp ? BigInt(endTimestamp) : void 0,
|
|
29
|
+
pageParam + 1
|
|
36
30
|
)
|
|
37
31
|
]);
|
|
32
|
+
if (countResult.error) throw new Error(countResult.error.readableMsg);
|
|
33
|
+
if (tradesResult.error) throw new Error(tradesResult.error.readableMsg);
|
|
34
|
+
const count = countResult.value;
|
|
35
|
+
const trades = tradesResult.value;
|
|
38
36
|
if (typeof count === "number") {
|
|
39
37
|
tradesCount = count;
|
|
40
38
|
}
|
|
@@ -43,16 +41,16 @@ $: orderTradesQuery = createInfiniteQuery({
|
|
|
43
41
|
initialPageParam: 0,
|
|
44
42
|
getNextPageParam: (lastPage, _allPages, lastPageParam) => {
|
|
45
43
|
return lastPage.length === DEFAULT_PAGE_SIZE ? lastPageParam + 1 : void 0;
|
|
46
|
-
}
|
|
47
|
-
enabled: !!subgraphUrl
|
|
44
|
+
}
|
|
48
45
|
});
|
|
46
|
+
const AppTable = TanstackAppTable;
|
|
49
47
|
</script>
|
|
50
48
|
|
|
51
|
-
<
|
|
49
|
+
<AppTable
|
|
52
50
|
query={orderTradesQuery}
|
|
53
51
|
emptyMessage="No trades found"
|
|
54
52
|
rowHoverable={false}
|
|
55
|
-
queryKey={id}
|
|
53
|
+
queryKey={order.id}
|
|
56
54
|
>
|
|
57
55
|
<svelte:fragment slot="info">
|
|
58
56
|
{#if tradesCount !== undefined}
|
|
@@ -63,83 +61,88 @@ $: orderTradesQuery = createInfiniteQuery({
|
|
|
63
61
|
<TableTimeFilters bind:startTimestamp bind:endTimestamp />
|
|
64
62
|
</svelte:fragment>
|
|
65
63
|
<svelte:fragment slot="head">
|
|
66
|
-
<TableHeadCell padding="p-4">Date</TableHeadCell>
|
|
67
|
-
<TableHeadCell padding="p-
|
|
68
|
-
<TableHeadCell padding="p-
|
|
69
|
-
<TableHeadCell padding="p-
|
|
70
|
-
<TableHeadCell padding="p-
|
|
71
|
-
<TableHeadCell padding="p-0">
|
|
72
|
-
<TableHeadCell padding="p-0"></TableHeadCell>
|
|
64
|
+
<TableHeadCell padding="p-4" class="w-[15%]">Date</TableHeadCell>
|
|
65
|
+
<TableHeadCell padding="p-4" class="w-[20%]">Transaction</TableHeadCell>
|
|
66
|
+
<TableHeadCell padding="p-2" class="w-[18%]">Input</TableHeadCell>
|
|
67
|
+
<TableHeadCell padding="p-2" class="w-[18%]">Output</TableHeadCell>
|
|
68
|
+
<TableHeadCell padding="p-2" class="w-[25%]">IO Ratio</TableHeadCell>
|
|
69
|
+
<TableHeadCell padding="p-0" class="w-[4%]"><span class="sr-only">Actions</span></TableHeadCell>
|
|
73
70
|
</svelte:fragment>
|
|
74
71
|
|
|
75
72
|
<svelte:fragment slot="bodyRow" let:item>
|
|
73
|
+
{@const inputAmt = Number(item.inputVaultBalanceChange.formattedAmount)}
|
|
74
|
+
{@const outputAmt = Number(item.outputVaultBalanceChange.formattedAmount)}
|
|
75
|
+
{@const ioRatio = Math.abs(inputAmt / outputAmt)}
|
|
76
|
+
{@const oiRatio = Math.abs(outputAmt / inputAmt)}
|
|
77
|
+
{@const validRatio = Number.isFinite(ioRatio) && Number.isFinite(oiRatio)}
|
|
76
78
|
<TableBodyCell tdClass="px-4 py-2">
|
|
77
79
|
{formatTimestampSecondsAsLocal(BigInt(item.timestamp))}
|
|
78
80
|
</TableBodyCell>
|
|
79
|
-
<TableBodyCell tdClass="
|
|
80
|
-
<
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
81
|
+
<TableBodyCell tdClass="px-4 py-2">
|
|
82
|
+
<div class="flex flex-col gap-1 text-sm">
|
|
83
|
+
<div class="flex items-center gap-1">
|
|
84
|
+
<span class="text-gray-500 dark:text-gray-400">Sender:</span>
|
|
85
|
+
<Hash type={HashType.Wallet} value={item.transaction.from} />
|
|
86
|
+
</div>
|
|
87
|
+
<div class="flex items-center gap-1">
|
|
88
|
+
<span class="text-gray-500 dark:text-gray-400">Tx:</span>
|
|
89
|
+
<Hash type={HashType.Transaction} value={item.transaction.id} />
|
|
90
|
+
</div>
|
|
91
|
+
</div>
|
|
84
92
|
</TableBodyCell>
|
|
85
|
-
<TableBodyCell tdClass="
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
93
|
+
<TableBodyCell tdClass="p-2" data-testid="input">
|
|
94
|
+
<div class="flex flex-col overflow-hidden">
|
|
95
|
+
<span class="truncate font-medium">{item.inputVaultBalanceChange.token.symbol}</span>
|
|
96
|
+
<span id={`input-${item.id}`} class="truncate text-sm text-gray-500 dark:text-gray-400"
|
|
97
|
+
>{item.inputVaultBalanceChange.formattedAmount}</span
|
|
98
|
+
>
|
|
99
|
+
<Tooltip triggeredBy={`#input-${item.id}`}>
|
|
100
|
+
{item.inputVaultBalanceChange.formattedAmount}
|
|
101
|
+
{item.inputVaultBalanceChange.token.symbol}
|
|
102
|
+
</Tooltip>
|
|
103
|
+
</div>
|
|
91
104
|
</TableBodyCell>
|
|
92
|
-
<TableBodyCell tdClass="
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
105
|
+
<TableBodyCell tdClass="p-2" data-testid="output">
|
|
106
|
+
<div class="flex flex-col overflow-hidden">
|
|
107
|
+
<span class="truncate font-medium">{item.outputVaultBalanceChange.token.symbol}</span>
|
|
108
|
+
<span id={`output-${item.id}`} class="truncate text-sm text-gray-500 dark:text-gray-400"
|
|
109
|
+
>{item.outputVaultBalanceChange.formattedAmount}</span
|
|
110
|
+
>
|
|
111
|
+
<Tooltip triggeredBy={`#output-${item.id}`}>
|
|
112
|
+
{item.outputVaultBalanceChange.formattedAmount}
|
|
113
|
+
{item.outputVaultBalanceChange.token.symbol}
|
|
114
|
+
</Tooltip>
|
|
115
|
+
</div>
|
|
98
116
|
</TableBodyCell>
|
|
99
|
-
<TableBodyCell tdClass="
|
|
100
|
-
{
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
({Math.abs(
|
|
116
|
-
Number(
|
|
117
|
-
formatUnits(
|
|
118
|
-
BigInt(item.outputVaultBalanceChange.amount),
|
|
119
|
-
Number(item.outputVaultBalanceChange.vault.token.decimals ?? 0)
|
|
120
|
-
)
|
|
121
|
-
) /
|
|
122
|
-
Number(
|
|
123
|
-
formatUnits(
|
|
124
|
-
BigInt(item.inputVaultBalanceChange.amount),
|
|
125
|
-
Number(item.inputVaultBalanceChange.vault.token.decimals ?? 0)
|
|
126
|
-
)
|
|
127
|
-
)
|
|
128
|
-
)})
|
|
129
|
-
</span>
|
|
117
|
+
<TableBodyCell tdClass="p-2" data-testid="io-ratio">
|
|
118
|
+
<div id={`io-ratio-${item.id}`} class="truncate">
|
|
119
|
+
{#if validRatio}
|
|
120
|
+
{ioRatio}
|
|
121
|
+
<span class="text-gray-400">({oiRatio})</span>
|
|
122
|
+
{:else}
|
|
123
|
+
-
|
|
124
|
+
{/if}
|
|
125
|
+
</div>
|
|
126
|
+
<Tooltip triggeredBy={`#io-ratio-${item.id}`}>
|
|
127
|
+
{#if validRatio}
|
|
128
|
+
{ioRatio} ({oiRatio})
|
|
129
|
+
{:else}
|
|
130
|
+
-
|
|
131
|
+
{/if}
|
|
132
|
+
</Tooltip>
|
|
130
133
|
</TableBodyCell>
|
|
131
|
-
|
|
132
|
-
|
|
134
|
+
<TableBodyCell tdClass="py-2">
|
|
135
|
+
{#if rpcs && handleDebugTradeModal}
|
|
133
136
|
<button
|
|
134
137
|
data-testid="debug-trade-button"
|
|
135
138
|
class="text-gray-500 hover:text-gray-700"
|
|
136
139
|
on:click={() => {
|
|
137
|
-
if (
|
|
140
|
+
if (rpcs) handleDebugTradeModal(item.transaction.id, rpcs);
|
|
138
141
|
}}
|
|
139
142
|
>
|
|
140
143
|
<BugOutline size="xs" />
|
|
141
144
|
</button>
|
|
142
|
-
|
|
143
|
-
|
|
145
|
+
{/if}
|
|
146
|
+
</TableBodyCell>
|
|
144
147
|
</svelte:fragment>
|
|
145
|
-
</
|
|
148
|
+
</AppTable>
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { RaindexOrder } from '@rainlanguage/orderbook';
|
|
2
3
|
declare const __propDef: {
|
|
3
4
|
props: {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
handleDebugTradeModal?: ((hash: string, rpcUrl: string) => void) | undefined;
|
|
5
|
+
order: RaindexOrder;
|
|
6
|
+
rpcs?: string[] | undefined;
|
|
7
|
+
handleDebugTradeModal?: ((hash: string, rpcs: string[]) => void) | undefined;
|
|
8
8
|
};
|
|
9
9
|
events: {
|
|
10
10
|
[evt: string]: CustomEvent<any>;
|
|
@@ -1,33 +1,29 @@
|
|
|
1
1
|
<script>import { createInfiniteQuery } from "@tanstack/svelte-query";
|
|
2
2
|
import TanstackAppTable from "../TanstackAppTable.svelte";
|
|
3
3
|
import { QKEY_VAULTS_VOL_LIST } from "../../queries/keys";
|
|
4
|
-
import {
|
|
4
|
+
import {} from "@rainlanguage/orderbook";
|
|
5
5
|
import { TableBodyCell, TableHeadCell } from "flowbite-svelte";
|
|
6
6
|
import Hash, { HashType } from "../Hash.svelte";
|
|
7
|
-
import { formatUnits } from "viem";
|
|
8
7
|
import TableTimeFilters from "../charts/TableTimeFilters.svelte";
|
|
9
|
-
|
|
10
|
-
export let id;
|
|
11
|
-
export let subgraphUrl;
|
|
8
|
+
export let order;
|
|
12
9
|
let startTimestamp;
|
|
13
10
|
let endTimestamp;
|
|
14
11
|
$: queryStartTime = startTimestamp ? BigInt(startTimestamp) : void 0;
|
|
15
12
|
$: queryEndTime = endTimestamp ? BigInt(endTimestamp) : void 0;
|
|
16
13
|
$: vaultsVol = createInfiniteQuery({
|
|
17
|
-
queryKey: [id, QKEY_VAULTS_VOL_LIST + id],
|
|
18
|
-
queryFn: () =>
|
|
14
|
+
queryKey: [order.id, QKEY_VAULTS_VOL_LIST + order.id],
|
|
15
|
+
queryFn: async () => {
|
|
16
|
+
const result = await order.getVaultsVolume(queryStartTime, queryEndTime);
|
|
17
|
+
if (result.error) throw new Error(result.error.readableMsg);
|
|
18
|
+
return result.value;
|
|
19
|
+
},
|
|
19
20
|
initialPageParam: 0,
|
|
20
|
-
getNextPageParam: () => void 0
|
|
21
|
-
enabled: !!subgraphUrl
|
|
21
|
+
getNextPageParam: () => void 0
|
|
22
22
|
});
|
|
23
|
+
const AppTable = TanstackAppTable;
|
|
23
24
|
</script>
|
|
24
25
|
|
|
25
|
-
<
|
|
26
|
-
query={vaultsVol}
|
|
27
|
-
emptyMessage="No trades found"
|
|
28
|
-
rowHoverable={false}
|
|
29
|
-
queryKey={id}
|
|
30
|
-
>
|
|
26
|
+
<AppTable query={vaultsVol} emptyMessage="No trades found" rowHoverable={false} queryKey={order.id}>
|
|
31
27
|
<svelte:fragment slot="timeFilter">
|
|
32
28
|
<TableTimeFilters bind:startTimestamp bind:endTimestamp />
|
|
33
29
|
</svelte:fragment>
|
|
@@ -42,7 +38,7 @@ $: vaultsVol = createInfiniteQuery({
|
|
|
42
38
|
|
|
43
39
|
<svelte:fragment slot="bodyRow" let:item>
|
|
44
40
|
<TableBodyCell tdClass="px-4 py-2">
|
|
45
|
-
<Hash type={HashType.Identifier} shorten value={
|
|
41
|
+
<Hash type={HashType.Identifier} shorten value={item.id.toString()} />
|
|
46
42
|
</TableBodyCell>
|
|
47
43
|
<TableBodyCell tdClass="break-all py-2 min-w-32">
|
|
48
44
|
<div class="flex gap-x-3">
|
|
@@ -51,17 +47,16 @@ $: vaultsVol = createInfiniteQuery({
|
|
|
51
47
|
</div>
|
|
52
48
|
</TableBodyCell>
|
|
53
49
|
<TableBodyCell tdClass="break-all py-2 min-w-32" data-testid="total-in">
|
|
54
|
-
{
|
|
50
|
+
{item.details.formattedTotalIn}
|
|
55
51
|
</TableBodyCell>
|
|
56
52
|
<TableBodyCell tdClass="break-all py-2" data-testid="total-out">
|
|
57
|
-
{
|
|
53
|
+
{item.details.formattedTotalOut}
|
|
58
54
|
</TableBodyCell>
|
|
59
55
|
<TableBodyCell tdClass="break-all py-2" data-testid="net-vol">
|
|
60
|
-
{
|
|
61
|
-
formatUnits(BigInt(item.volDetails.netVol), Number(item.token.decimals ?? 0))}
|
|
56
|
+
{item.details.formattedNetVol}
|
|
62
57
|
</TableBodyCell>
|
|
63
58
|
<TableBodyCell tdClass="break-all py-2" data-testid="total-vol">
|
|
64
|
-
{
|
|
59
|
+
{item.details.formattedTotalVol}
|
|
65
60
|
</TableBodyCell>
|
|
66
61
|
</svelte:fragment>
|
|
67
|
-
</
|
|
62
|
+
</AppTable>
|