@rainlanguage/ui-components 0.0.1-alpha.24 → 0.0.1-alpha.241
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/README.md +14 -6
- package/dist/__fixtures__/settings.yaml +123 -0
- package/dist/__mocks__/CodeMirrorRainlang.svelte +4 -0
- package/dist/__mocks__/CodeMirrorRainlang.svelte.d.ts +18 -0
- package/dist/__mocks__/MockCodeMirrorEditor.svelte +17 -0
- package/dist/__mocks__/MockCodeMirrorEditor.svelte.d.ts +21 -0
- package/dist/__mocks__/MockComponent.js +1 -1
- package/dist/__mocks__/MockComponent.svelte +10 -2
- package/dist/__mocks__/MockComponent.svelte.d.ts +4 -1
- package/dist/__mocks__/mockWeb3Config.d.ts +1 -1
- package/dist/__mocks__/mockWeb3Config.js +10 -7
- package/dist/__mocks__/queries.js +9 -9
- package/dist/__mocks__/stores.d.ts +55 -45
- package/dist/__mocks__/stores.js +85 -68
- package/dist/app.css +3 -3
- package/dist/components/ButtonDarkMode.svelte +7 -1
- package/dist/components/ButtonLoading.svelte +1 -1
- package/dist/components/ButtonScrub.svelte +22 -0
- package/dist/components/ButtonScrub.svelte.d.ts +25 -0
- package/dist/components/ButtonVaultLink.svelte +12 -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/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 +20 -12
- package/dist/components/CodeMirrorRainlang.svelte.d.ts +3 -2
- package/dist/components/EditableSpan.svelte +3 -14
- package/dist/components/EditableSpan.svelte.d.ts +0 -1
- package/dist/components/Hash.svelte +6 -5
- package/dist/components/License.svelte +5 -4
- package/dist/components/ListViewRaindexFilters.svelte +64 -0
- package/dist/components/ListViewRaindexFilters.svelte.d.ts +32 -0
- package/dist/components/LocalDbStatusBadge.svelte +27 -0
- package/dist/components/LocalDbStatusBadge.svelte.d.ts +19 -0
- package/dist/components/LocalDbStatusCard.svelte +43 -0
- package/dist/components/LocalDbStatusCard.svelte.d.ts +20 -0
- package/dist/components/LocalDbStatusModal.svelte +105 -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/Sensitive.svelte +16 -0
- package/dist/components/Sensitive.svelte.d.ts +28 -0
- package/dist/components/TanstackAppTable.svelte +270 -60
- package/dist/components/TanstackAppTable.svelte.d.ts +15 -9
- 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 +319 -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 +3 -2
- package/dist/components/deployment/ComposedRainlangModal.svelte.d.ts +1 -4
- package/dist/components/deployment/DeploymentSectionHeader.svelte +7 -4
- package/dist/components/deployment/DeploymentSteps.svelte +196 -221
- 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 +10 -11
- package/dist/components/deployment/DepositInput.svelte.d.ts +2 -3
- package/dist/components/deployment/DisclaimerModal.svelte +6 -7
- package/dist/components/deployment/FieldDefinitionInput.svelte +10 -14
- package/dist/components/deployment/FieldDefinitionInput.svelte.d.ts +2 -3
- 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 +127 -50
- package/dist/components/deployment/SelectToken.svelte.d.ts +5 -4
- package/dist/components/deployment/TokenBalance.svelte +19 -0
- package/dist/components/deployment/TokenBalance.svelte.d.ts +19 -0
- package/dist/components/deployment/TokenIOInput.svelte +27 -17
- 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 +220 -82
- package/dist/components/detail/OrderDetail.svelte.d.ts +21 -15
- package/dist/components/detail/TanstackOrderQuote.svelte +114 -46
- package/dist/components/detail/TanstackOrderQuote.svelte.d.ts +14 -16
- package/dist/components/detail/VaultDetail.svelte +82 -79
- 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/DropdownRaindexesFilter.svelte +172 -0
- package/dist/components/dropdown/DropdownRaindexesFilter.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 +4 -2
- package/dist/components/icon/Refresh.svelte.d.ts +2 -0
- package/dist/components/input/InputOrderHash.svelte +1 -1
- package/dist/components/input/InputOrderHash.svelte.d.ts +3 -3
- package/dist/components/input/InputOwnerFilter.svelte +48 -0
- package/dist/components/input/InputOwnerFilter.svelte.d.ts +19 -0
- package/dist/components/input/InputRegistryUrl.svelte +36 -14
- package/dist/components/input/InputToken.svelte +2 -2
- package/dist/components/input/InputTokenAmount.svelte +30 -20
- 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 +132 -124
- 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 +206 -115
- package/dist/components/tables/OrdersListTable.svelte.d.ts +18 -23
- package/dist/components/tables/VaultBalanceChangesTable.svelte +83 -43
- package/dist/components/tables/VaultBalanceChangesTable.svelte.d.ts +13 -11
- package/dist/components/tables/VaultsListTable.svelte +275 -150
- package/dist/components/tables/VaultsListTable.svelte.d.ts +24 -33
- package/dist/components/transactions/FixedBottomTransaction.svelte +64 -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 +11 -5
- package/dist/errors/DeploymentStepsError.js +13 -7
- package/dist/errors/index.d.ts +1 -1
- package/dist/errors/index.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/hooks/useRaindexOrderBuilder.d.ts +3 -0
- package/dist/hooks/useRaindexOrderBuilder.js +11 -0
- package/dist/index.d.ts +122 -91
- package/dist/index.js +118 -87
- package/dist/models/Transaction.d.ts +75 -0
- package/dist/models/Transaction.js +100 -0
- 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/RaindexOrderBuilderProvider.svelte +8 -0
- package/dist/providers/RaindexOrderBuilderProvider.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 +43 -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 +134 -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 +234 -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 +10 -9
- package/dist/queries/queryClient.d.ts +2 -2
- package/dist/queries/queryClient.js +16 -11
- package/dist/services/awaitTransactionIndexing.d.ts +107 -0
- package/dist/services/awaitTransactionIndexing.js +60 -0
- package/dist/services/getExplorerLink.d.ts +1 -1
- package/dist/services/getExplorerLink.js +3 -5
- package/dist/services/handleShareChoices.d.ts +2 -2
- package/dist/services/handleShareChoices.js +6 -5
- package/dist/services/historicalOrderCharts.d.ts +3 -3
- package/dist/services/historicalOrderCharts.js +364 -371
- package/dist/services/index.d.ts +5 -2
- package/dist/services/index.js +3 -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 +194 -0
- package/dist/services/registry.d.ts +5 -5
- package/dist/services/registry.js +17 -217
- package/dist/services/time.d.ts +12 -0
- package/dist/services/time.js +88 -6
- package/dist/services/validateAmount.d.ts +30 -0
- package/dist/services/validateAmount.js +53 -0
- package/dist/storesGeneric/cachedWritableStore.d.ts +57 -0
- package/dist/storesGeneric/cachedWritableStore.js +93 -0
- package/dist/storesGeneric/scrub.d.ts +14 -0
- package/dist/storesGeneric/scrub.js +22 -0
- package/dist/test/matchers.d.ts +2 -2
- package/dist/test/matchers.js +2 -2
- package/dist/types/account.d.ts +3 -0
- package/dist/types/appStores.d.ts +9 -16
- package/dist/types/modal.d.ts +26 -14
- package/dist/types/order.d.ts +10 -0
- 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 +67 -22
- package/dist/types/transaction.js +31 -1
- package/dist/utils/breadcrumbs.js +2 -2
- package/dist/utils/codeMirrorThemes.js +80 -74
- 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 +117 -0
- package/dist/utils/getNetworkName.d.ts +1 -0
- package/dist/utils/getNetworkName.js +13 -0
- package/dist/utils/hex.js +1 -1
- package/dist/utils/lightweightChartsThemes.d.ts +1 -1
- package/dist/utils/lightweightChartsThemes.js +11 -11
- package/dist/utils/localDbStatus.d.ts +26 -0
- package/dist/utils/localDbStatus.js +22 -0
- package/dist/utils/number.d.ts +0 -7
- package/dist/utils/number.js +5 -30
- package/dist/utils/stripTrailingWhitespace.d.ts +16 -0
- package/dist/utils/stripTrailingWhitespace.js +22 -0
- 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 +89 -84
- 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/CheckboxMyItemsOnly.svelte +0 -23
- package/dist/components/CheckboxMyItemsOnly.svelte.d.ts +0 -21
- package/dist/components/ListViewOrderbookFilters.svelte +0 -58
- package/dist/components/ListViewOrderbookFilters.svelte.d.ts +0 -28
- 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/DropdownOrderListAccounts.svelte +0 -15
- package/dist/components/dropdown/DropdownOrderListAccounts.svelte.d.ts +0 -20
- package/dist/components/dropdown/DropdownOrderStatus.svelte +0 -31
- package/dist/components/dropdown/DropdownOrderStatus.svelte.d.ts +0 -19
- package/dist/hooks/useGui.d.ts +0 -3
- package/dist/hooks/useGui.js +0 -11
- package/dist/providers/GuiProvider.svelte +0 -8
- package/dist/providers/GuiProvider.svelte.d.ts +0 -21
- package/dist/stores/transactionStore.d.ts +0 -98
- package/dist/stores/transactionStore.js +0 -303
- package/dist/types/strategy.d.ts +0 -10
- 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
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
<script>import { useRaindexClient } from "../hooks/useRaindexClient";
|
|
2
|
+
import DropdownActiveNetworks from "./dropdown/DropdownActiveNetworks.svelte";
|
|
3
|
+
import { page } from "$app/stores";
|
|
4
|
+
import { isEmpty } from "lodash";
|
|
5
|
+
import { Alert } from "flowbite-svelte";
|
|
6
|
+
import CheckboxActiveOrders from "./checkbox/CheckboxActiveOrders.svelte";
|
|
7
|
+
import DropdownTokensFilter from "./dropdown/DropdownTokensFilter.svelte";
|
|
8
|
+
import DropdownRaindexesFilter from "./dropdown/DropdownRaindexesFilter.svelte";
|
|
9
|
+
import InputOrderHash from "./input/InputOrderHash.svelte";
|
|
10
|
+
import InputOwnerFilter from "./input/InputOwnerFilter.svelte";
|
|
11
|
+
import CheckboxZeroBalanceVault from "./CheckboxZeroBalanceVault.svelte";
|
|
12
|
+
import CheckboxInactiveOrdersVault from "./CheckboxInactiveOrdersVault.svelte";
|
|
13
|
+
export let hideZeroBalanceVaults;
|
|
14
|
+
export let hideInactiveOrdersVaults;
|
|
15
|
+
export let selectedChainIds;
|
|
16
|
+
export let showInactiveOrders;
|
|
17
|
+
export let orderHash;
|
|
18
|
+
export let activeTokens;
|
|
19
|
+
export let selectedTokens;
|
|
20
|
+
export let tokensQuery;
|
|
21
|
+
export let activeRaindexAddresses;
|
|
22
|
+
export let selectedRaindexAddresses;
|
|
23
|
+
export let ownerFilter;
|
|
24
|
+
$: isVaultsPage = $page.url.pathname === "/vaults";
|
|
25
|
+
$: isOrdersPage = $page.url.pathname === "/orders";
|
|
26
|
+
const raindexClient = useRaindexClient();
|
|
27
|
+
$: networks = raindexClient.getAllNetworks();
|
|
28
|
+
</script>
|
|
29
|
+
|
|
30
|
+
<div
|
|
31
|
+
class="grid w-full items-center gap-4 md:flex md:justify-end lg:min-w-[600px]"
|
|
32
|
+
style="grid-template-columns: repeat(2, minmax(0, 1fr));"
|
|
33
|
+
>
|
|
34
|
+
{#if networks.error || isEmpty(networks.value)}
|
|
35
|
+
<Alert color="gray" data-testid="no-networks-alert" class="w-full">
|
|
36
|
+
No networks added to <a class="underline" href="/settings">settings</a>
|
|
37
|
+
</Alert>
|
|
38
|
+
{:else}
|
|
39
|
+
{#if isVaultsPage}
|
|
40
|
+
<div class="mt-4 w-full lg:w-auto">
|
|
41
|
+
<CheckboxZeroBalanceVault {hideZeroBalanceVaults} />
|
|
42
|
+
</div>
|
|
43
|
+
<div class="mt-4 w-full lg:w-auto">
|
|
44
|
+
<CheckboxInactiveOrdersVault {hideInactiveOrdersVaults} />
|
|
45
|
+
</div>
|
|
46
|
+
{/if}
|
|
47
|
+
|
|
48
|
+
{#if isOrdersPage}
|
|
49
|
+
<InputOrderHash {orderHash} />
|
|
50
|
+
<div class="mt-4">
|
|
51
|
+
<CheckboxActiveOrders {showInactiveOrders} />
|
|
52
|
+
</div>
|
|
53
|
+
{/if}
|
|
54
|
+
<InputOwnerFilter {ownerFilter} />
|
|
55
|
+
<DropdownTokensFilter {tokensQuery} {activeTokens} {selectedTokens} label="Tokens" />
|
|
56
|
+
<DropdownRaindexesFilter
|
|
57
|
+
{activeRaindexAddresses}
|
|
58
|
+
{selectedRaindexAddresses}
|
|
59
|
+
selectedChainIds={$selectedChainIds}
|
|
60
|
+
label="Raindexes"
|
|
61
|
+
/>
|
|
62
|
+
<DropdownActiveNetworks {selectedChainIds} />
|
|
63
|
+
{/if}
|
|
64
|
+
</div>
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { QueryObserverResult } from '@tanstack/svelte-query';
|
|
3
|
+
import type { Readable } from 'svelte/store';
|
|
4
|
+
import type { Address, RaindexVaultToken } from '@rainlanguage/raindex';
|
|
5
|
+
import type { AppStoresInterface } from '../types/appStores';
|
|
6
|
+
declare const __propDef: {
|
|
7
|
+
props: {
|
|
8
|
+
hideZeroBalanceVaults: AppStoresInterface["hideZeroBalanceVaults"];
|
|
9
|
+
hideInactiveOrdersVaults: AppStoresInterface["hideInactiveOrdersVaults"];
|
|
10
|
+
selectedChainIds: AppStoresInterface["selectedChainIds"];
|
|
11
|
+
showInactiveOrders: AppStoresInterface["showInactiveOrders"];
|
|
12
|
+
orderHash: AppStoresInterface["orderHash"];
|
|
13
|
+
activeTokens: AppStoresInterface["activeTokens"];
|
|
14
|
+
selectedTokens: Address[];
|
|
15
|
+
tokensQuery: Readable<QueryObserverResult<RaindexVaultToken[], Error>>;
|
|
16
|
+
activeRaindexAddresses: AppStoresInterface["activeRaindexAddresses"];
|
|
17
|
+
selectedRaindexAddresses: Address[];
|
|
18
|
+
ownerFilter: AppStoresInterface["ownerFilter"];
|
|
19
|
+
};
|
|
20
|
+
events: {
|
|
21
|
+
[evt: string]: CustomEvent<any>;
|
|
22
|
+
};
|
|
23
|
+
slots: {};
|
|
24
|
+
exports?: {} | undefined;
|
|
25
|
+
bindings?: string | undefined;
|
|
26
|
+
};
|
|
27
|
+
export type ListViewRaindexFiltersProps = typeof __propDef.props;
|
|
28
|
+
export type ListViewRaindexFiltersEvents = typeof __propDef.events;
|
|
29
|
+
export type ListViewRaindexFiltersSlots = typeof __propDef.slots;
|
|
30
|
+
export default class ListViewRaindexFilters extends SvelteComponent<ListViewRaindexFiltersProps, ListViewRaindexFiltersEvents, ListViewRaindexFiltersSlots> {
|
|
31
|
+
}
|
|
32
|
+
export {};
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<script>const STATUS_LABELS = {
|
|
2
|
+
active: "Active",
|
|
3
|
+
syncing: "Syncing",
|
|
4
|
+
failure: "Failure"
|
|
5
|
+
};
|
|
6
|
+
const DOT_CLASSES = {
|
|
7
|
+
active: "bg-emerald-400",
|
|
8
|
+
syncing: "bg-sky-400",
|
|
9
|
+
failure: "bg-red-500"
|
|
10
|
+
};
|
|
11
|
+
const TEXT_CLASSES = {
|
|
12
|
+
active: "text-emerald-400",
|
|
13
|
+
syncing: "text-sky-400",
|
|
14
|
+
failure: "text-red-400"
|
|
15
|
+
};
|
|
16
|
+
export let status = "active";
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<span
|
|
20
|
+
class="inline-flex items-center gap-2 rounded-full border border-gray-200 bg-gray-100 px-3 py-1 text-xs font-semibold uppercase tracking-wide text-gray-600 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-300"
|
|
21
|
+
data-testid="local-db-status"
|
|
22
|
+
>
|
|
23
|
+
<span class={`h-2 w-2 rounded-full ${DOT_CLASSES[status]}`} aria-hidden="true" />
|
|
24
|
+
<span class={TEXT_CLASSES[status]}>
|
|
25
|
+
{STATUS_LABELS[status]}
|
|
26
|
+
</span>
|
|
27
|
+
</span>
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { LocalDbStatus } from '@rainlanguage/raindex';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
status?: LocalDbStatus;
|
|
6
|
+
};
|
|
7
|
+
events: {
|
|
8
|
+
[evt: string]: CustomEvent<any>;
|
|
9
|
+
};
|
|
10
|
+
slots: {};
|
|
11
|
+
exports?: {} | undefined;
|
|
12
|
+
bindings?: string | undefined;
|
|
13
|
+
};
|
|
14
|
+
export type LocalDbStatusBadgeProps = typeof __propDef.props;
|
|
15
|
+
export type LocalDbStatusBadgeEvents = typeof __propDef.events;
|
|
16
|
+
export type LocalDbStatusBadgeSlots = typeof __propDef.slots;
|
|
17
|
+
export default class LocalDbStatusBadge extends SvelteComponent<LocalDbStatusBadgeProps, LocalDbStatusBadgeEvents, LocalDbStatusBadgeSlots> {
|
|
18
|
+
}
|
|
19
|
+
export {};
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
<script>import LocalDbStatusBadge from "./LocalDbStatusBadge.svelte";
|
|
2
|
+
import LocalDbStatusModal from "./LocalDbStatusModal.svelte";
|
|
3
|
+
import { aggregateLocalDbStatus } from "../utils/localDbStatus";
|
|
4
|
+
import { ChevronRightOutline } from "flowbite-svelte-icons";
|
|
5
|
+
export let networkStatuses = /* @__PURE__ */ new Map();
|
|
6
|
+
export let raindexStatuses = /* @__PURE__ */ new Map();
|
|
7
|
+
let modalOpen = false;
|
|
8
|
+
$: networkList = Array.from(networkStatuses.values());
|
|
9
|
+
$: hasNetworks = networkList.length > 0;
|
|
10
|
+
$: displayStatus = aggregateLocalDbStatus([
|
|
11
|
+
...networkList,
|
|
12
|
+
...Array.from(raindexStatuses.values())
|
|
13
|
+
]).status;
|
|
14
|
+
function openModal() {
|
|
15
|
+
modalOpen = true;
|
|
16
|
+
}
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<div
|
|
20
|
+
class="rounded-lg border border-gray-200 bg-white dark:border-gray-700 dark:bg-gray-900"
|
|
21
|
+
data-testid="local-db-status-card"
|
|
22
|
+
>
|
|
23
|
+
<button
|
|
24
|
+
type="button"
|
|
25
|
+
class="flex w-full items-center justify-between px-3 py-3 text-left transition hover:bg-gray-50 dark:hover:bg-gray-800"
|
|
26
|
+
on:click={openModal}
|
|
27
|
+
data-testid="local-db-status-header"
|
|
28
|
+
>
|
|
29
|
+
<div class="flex items-center gap-2">
|
|
30
|
+
<span class="text-xs font-semibold uppercase tracking-wide text-gray-500 dark:text-gray-400"
|
|
31
|
+
>LocalDB</span
|
|
32
|
+
>
|
|
33
|
+
</div>
|
|
34
|
+
<div class="flex items-center gap-2">
|
|
35
|
+
<LocalDbStatusBadge status={displayStatus} />
|
|
36
|
+
{#if hasNetworks}
|
|
37
|
+
<ChevronRightOutline class="h-3 w-3 shrink-0" />
|
|
38
|
+
{/if}
|
|
39
|
+
</div>
|
|
40
|
+
</button>
|
|
41
|
+
</div>
|
|
42
|
+
|
|
43
|
+
<LocalDbStatusModal bind:open={modalOpen} {networkStatuses} {raindexStatuses} />
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { NetworkSyncStatus, RaindexSyncStatus } from '@rainlanguage/raindex';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
networkStatuses?: Map<number, NetworkSyncStatus>;
|
|
6
|
+
raindexStatuses?: Map<string, RaindexSyncStatus>;
|
|
7
|
+
};
|
|
8
|
+
events: {
|
|
9
|
+
[evt: string]: CustomEvent<any>;
|
|
10
|
+
};
|
|
11
|
+
slots: {};
|
|
12
|
+
exports?: {} | undefined;
|
|
13
|
+
bindings?: string | undefined;
|
|
14
|
+
};
|
|
15
|
+
export type LocalDbStatusCardProps = typeof __propDef.props;
|
|
16
|
+
export type LocalDbStatusCardEvents = typeof __propDef.events;
|
|
17
|
+
export type LocalDbStatusCardSlots = typeof __propDef.slots;
|
|
18
|
+
export default class LocalDbStatusCard extends SvelteComponent<LocalDbStatusCardProps, LocalDbStatusCardEvents, LocalDbStatusCardSlots> {
|
|
19
|
+
}
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
<script>import { Modal } from "flowbite-svelte";
|
|
2
|
+
import LocalDbStatusBadge from "./LocalDbStatusBadge.svelte";
|
|
3
|
+
import { getNetworkName } from "../utils/getNetworkName";
|
|
4
|
+
export let open = false;
|
|
5
|
+
export let networkStatuses = /* @__PURE__ */ new Map();
|
|
6
|
+
export let raindexStatuses = /* @__PURE__ */ new Map();
|
|
7
|
+
$: networkList = Array.from(networkStatuses.values());
|
|
8
|
+
$: raindexList = Array.from(raindexStatuses.values());
|
|
9
|
+
$: networkGroups = buildNetworkGroups(networkList, raindexList);
|
|
10
|
+
function buildNetworkGroups(networks, raindexes) {
|
|
11
|
+
const groups = [];
|
|
12
|
+
for (const network of networks) {
|
|
13
|
+
const networkRaindexes = raindexes.filter(
|
|
14
|
+
(raindex) => raindex.raindexId.chainId === network.chainId
|
|
15
|
+
);
|
|
16
|
+
groups.push({
|
|
17
|
+
chainId: network.chainId,
|
|
18
|
+
networkName: getNetworkName(network.chainId) ?? `Chain ${network.chainId}`,
|
|
19
|
+
status: network,
|
|
20
|
+
raindexes: networkRaindexes
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
return groups;
|
|
24
|
+
}
|
|
25
|
+
</script>
|
|
26
|
+
|
|
27
|
+
<Modal
|
|
28
|
+
bind:open
|
|
29
|
+
size="lg"
|
|
30
|
+
class="dark:border dark:border-gray-700 dark:bg-gray-900"
|
|
31
|
+
dialogClass="fixed top-0 start-0 end-1 h-modal md:inset-0 md:h-full z-50 w-full p-4 flex justify-center items-center h-full"
|
|
32
|
+
data-testid="local-db-status-modal"
|
|
33
|
+
>
|
|
34
|
+
<div class="flex flex-col gap-4" slot="header">
|
|
35
|
+
<h3 class="text-lg font-semibold text-gray-900 dark:text-white">Database Sync Status</h3>
|
|
36
|
+
</div>
|
|
37
|
+
|
|
38
|
+
<div class="max-h-[60vh] overflow-y-auto">
|
|
39
|
+
{#if networkList.length === 0}
|
|
40
|
+
<p class="text-sm text-gray-500 dark:text-gray-400">No networks are being synced.</p>
|
|
41
|
+
{:else}
|
|
42
|
+
<div class="space-y-4">
|
|
43
|
+
{#each networkGroups as group (group.chainId)}
|
|
44
|
+
<div
|
|
45
|
+
class="rounded-lg border border-gray-200 dark:border-gray-700"
|
|
46
|
+
data-testid="network-group-{group.chainId}"
|
|
47
|
+
>
|
|
48
|
+
<div
|
|
49
|
+
class="flex items-center justify-between border-b border-gray-200 bg-gray-50 px-4 py-3 dark:border-gray-700 dark:bg-gray-800"
|
|
50
|
+
>
|
|
51
|
+
<div class="flex items-center gap-2">
|
|
52
|
+
<span class="font-medium text-gray-900 dark:text-white">{group.networkName}</span>
|
|
53
|
+
{#if group.status.schedulerState === 'notLeader'}
|
|
54
|
+
<span
|
|
55
|
+
class="rounded bg-amber-100 px-1.5 py-0.5 text-[10px] font-medium uppercase text-amber-700 dark:bg-amber-900/30 dark:text-amber-400"
|
|
56
|
+
>
|
|
57
|
+
Observing
|
|
58
|
+
</span>
|
|
59
|
+
{/if}
|
|
60
|
+
</div>
|
|
61
|
+
<LocalDbStatusBadge status={group.status.status} />
|
|
62
|
+
</div>
|
|
63
|
+
|
|
64
|
+
{#if group.raindexes.length > 0}
|
|
65
|
+
<ul class="divide-y divide-gray-100 dark:divide-gray-800">
|
|
66
|
+
{#each group.raindexes as raindexStatus (raindexStatus.raindexId.raindexAddress)}
|
|
67
|
+
<li class="px-4 py-3">
|
|
68
|
+
<div class="flex items-start justify-between gap-4">
|
|
69
|
+
<div class="min-w-0 flex-1">
|
|
70
|
+
<span
|
|
71
|
+
class="font-mono text-sm text-gray-700 dark:text-gray-300"
|
|
72
|
+
title={raindexStatus.raindexId.raindexAddress}
|
|
73
|
+
>
|
|
74
|
+
{raindexStatus.raindexId.raindexAddress}
|
|
75
|
+
</span>
|
|
76
|
+
{#if raindexStatus.status === 'syncing' && raindexStatus.phaseMessage && raindexStatus.schedulerState !== 'notLeader'}
|
|
77
|
+
<div class="mt-2 text-sm text-sky-600 dark:text-sky-400">
|
|
78
|
+
{raindexStatus.phaseMessage}
|
|
79
|
+
</div>
|
|
80
|
+
{/if}
|
|
81
|
+
{#if raindexStatus.status === 'failure' && raindexStatus.error}
|
|
82
|
+
<div class="mt-2 text-sm text-red-600 dark:text-red-400">
|
|
83
|
+
{raindexStatus.error}
|
|
84
|
+
</div>
|
|
85
|
+
{/if}
|
|
86
|
+
</div>
|
|
87
|
+
</div>
|
|
88
|
+
</li>
|
|
89
|
+
{/each}
|
|
90
|
+
</ul>
|
|
91
|
+
{/if}
|
|
92
|
+
|
|
93
|
+
{#if group.status.status === 'failure' && group.status.error}
|
|
94
|
+
<div class="border-t border-gray-200 px-4 py-3 dark:border-gray-700">
|
|
95
|
+
<div class="text-sm text-red-600 dark:text-red-400">
|
|
96
|
+
{group.status.error}
|
|
97
|
+
</div>
|
|
98
|
+
</div>
|
|
99
|
+
{/if}
|
|
100
|
+
</div>
|
|
101
|
+
{/each}
|
|
102
|
+
</div>
|
|
103
|
+
{/if}
|
|
104
|
+
</div>
|
|
105
|
+
</Modal>
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { NetworkSyncStatus, RaindexSyncStatus } from '@rainlanguage/raindex';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
open?: boolean;
|
|
6
|
+
networkStatuses?: Map<number, NetworkSyncStatus>;
|
|
7
|
+
raindexStatuses?: Map<string, RaindexSyncStatus>;
|
|
8
|
+
};
|
|
9
|
+
events: {
|
|
10
|
+
[evt: string]: CustomEvent<any>;
|
|
11
|
+
};
|
|
12
|
+
slots: {};
|
|
13
|
+
exports?: {} | undefined;
|
|
14
|
+
bindings?: string | undefined;
|
|
15
|
+
};
|
|
16
|
+
export type LocalDbStatusModalProps = typeof __propDef.props;
|
|
17
|
+
export type LocalDbStatusModalEvents = typeof __propDef.events;
|
|
18
|
+
export type LocalDbStatusModalSlots = typeof __propDef.slots;
|
|
19
|
+
export default class LocalDbStatusModal extends SvelteComponent<LocalDbStatusModalProps, LocalDbStatusModalEvents, LocalDbStatusModalSlots> {
|
|
20
|
+
}
|
|
21
|
+
export {};
|
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
<script>import { Button } from "flowbite-svelte";
|
|
2
2
|
import Hash, { HashType } from "./Hash.svelte";
|
|
3
|
+
import {
|
|
4
|
+
constructHashLink,
|
|
5
|
+
isOrderOrVaultActive,
|
|
6
|
+
extractHash
|
|
7
|
+
} from "../utils/constructHashLink";
|
|
3
8
|
export let orderOrVault;
|
|
4
9
|
export let type;
|
|
5
|
-
export let
|
|
6
|
-
export let
|
|
7
|
-
|
|
8
|
-
$:
|
|
9
|
-
$:
|
|
10
|
-
$: hash = isOrder ? orderOrVault.orderHash : orderOrVault?.id || "";
|
|
11
|
-
$: isActive = isOrder ? orderOrVault.active : false;
|
|
10
|
+
export let chainId;
|
|
11
|
+
export let raindexAddress;
|
|
12
|
+
$: hash = extractHash(orderOrVault);
|
|
13
|
+
$: isActive = isOrderOrVaultActive(orderOrVault);
|
|
14
|
+
$: linkPath = constructHashLink(orderOrVault, type, chainId, raindexAddress);
|
|
12
15
|
</script>
|
|
13
16
|
|
|
14
|
-
<a href={
|
|
17
|
+
<a data-testid="order-or-vault-hash" href={linkPath}>
|
|
15
18
|
<Button
|
|
16
19
|
class="mr-1 mt-1 px-2 py-1 text-sm"
|
|
17
20
|
color={isActive ? 'green' : 'yellow'}
|
|
18
21
|
data-testid="vault-order-input"
|
|
19
|
-
data-id={
|
|
20
|
-
on:click={() => {
|
|
21
|
-
updateActiveNetworkAndOrderbook(network);
|
|
22
|
-
}}><Hash type={HashType.Identifier} value={hash} copyOnClick={false} /></Button
|
|
22
|
+
data-id={hash}><Hash type={HashType.Identifier} value={hash} copyOnClick={false} /></Button
|
|
23
23
|
>
|
|
24
24
|
</a>
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { SvelteComponent } from "svelte";
|
|
2
|
-
import type {
|
|
2
|
+
import type { Address, RaindexOrder, RaindexOrderAsIO, RaindexVault } from '@rainlanguage/raindex';
|
|
3
3
|
declare const __propDef: {
|
|
4
4
|
props: {
|
|
5
|
-
orderOrVault:
|
|
5
|
+
orderOrVault: RaindexVault | RaindexOrder | RaindexOrderAsIO;
|
|
6
6
|
type: "orders" | "vaults";
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
chainId: number;
|
|
8
|
+
raindexAddress: Address;
|
|
9
9
|
};
|
|
10
10
|
events: {
|
|
11
11
|
[evt: string]: CustomEvent<any>;
|
|
@@ -5,7 +5,7 @@ export let pathname;
|
|
|
5
5
|
$: breadcrumbs = generateBreadcrumbs(pathname);
|
|
6
6
|
</script>
|
|
7
7
|
|
|
8
|
-
<div class="mb-4 flex w-full items-center justify-between">
|
|
8
|
+
<div class="mb-4 flex w-full items-center justify-between" data-testid="page-header">
|
|
9
9
|
<Breadcrumb
|
|
10
10
|
olClass="inline-flex items-center rtl:space-x-reverse"
|
|
11
11
|
aria-label="Default breadcrumb example"
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<script>import { scrub as scrubStore } from "../storesGeneric/scrub";
|
|
2
|
+
export let scrub = scrubStore;
|
|
3
|
+
</script>
|
|
4
|
+
|
|
5
|
+
<span class="relative inline-block align-bottom" data-testid="sensitive">
|
|
6
|
+
<span class:invisible={$scrub} data-testid="sensitive-content">
|
|
7
|
+
<slot />
|
|
8
|
+
</span>
|
|
9
|
+
{#if $scrub}
|
|
10
|
+
<span
|
|
11
|
+
class="absolute inset-0 rounded bg-gray-400 dark:bg-gray-600"
|
|
12
|
+
data-testid="sensitive-mask"
|
|
13
|
+
aria-hidden="true"
|
|
14
|
+
></span>
|
|
15
|
+
{/if}
|
|
16
|
+
</span>
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { SvelteComponent } from "svelte";
|
|
2
|
+
import type { Writable } from 'svelte/store';
|
|
3
|
+
declare const __propDef: {
|
|
4
|
+
props: {
|
|
5
|
+
/**
|
|
6
|
+
* Wrap any content that may reveal an address or transaction hash. When the
|
|
7
|
+
* global `scrub` toggle is on, an opaque grey box is laid over the slotted
|
|
8
|
+
* content so it can't be read in a screenshot. Purely presentational - the
|
|
9
|
+
* underlying value is untouched.
|
|
10
|
+
*
|
|
11
|
+
* The store is injectable for testing; it defaults to the global scrub store.
|
|
12
|
+
*/ scrub?: Writable<boolean>;
|
|
13
|
+
};
|
|
14
|
+
events: {
|
|
15
|
+
[evt: string]: CustomEvent<any>;
|
|
16
|
+
};
|
|
17
|
+
slots: {
|
|
18
|
+
default: {};
|
|
19
|
+
};
|
|
20
|
+
exports?: {} | undefined;
|
|
21
|
+
bindings?: string | undefined;
|
|
22
|
+
};
|
|
23
|
+
export type SensitiveProps = typeof __propDef.props;
|
|
24
|
+
export type SensitiveEvents = typeof __propDef.events;
|
|
25
|
+
export type SensitiveSlots = typeof __propDef.slots;
|
|
26
|
+
export default class Sensitive extends SvelteComponent<SensitiveProps, SensitiveEvents, SensitiveSlots> {
|
|
27
|
+
}
|
|
28
|
+
export {};
|