@openocean.finance/widget 1.0.43 → 1.0.45
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/esm/App.js.map +1 -1
- package/dist/esm/AppDrawer.style.d.ts +1 -1
- package/dist/esm/components/ActiveTransactions/ActiveTransactions.style.d.ts +2 -2
- package/dist/esm/components/AmountInput/AmountInput.style.d.ts +1 -1
- package/dist/esm/components/AmountInput/AmountInputAdornment.style.d.ts +1 -1
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js +37 -33
- package/dist/esm/components/AmountInput/AmountInputEndAdornment.js.map +1 -1
- package/dist/esm/components/Avatar/Avatar.style.d.ts +1 -1
- package/dist/esm/components/Avatar/SmallAvatar.d.ts +1 -1
- package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js +1 -1
- package/dist/esm/components/BaseTransactionButton/BaseTransactionButton.js.map +1 -1
- package/dist/esm/components/ButtonTertiary.d.ts +1 -1
- package/dist/esm/components/Card/CardHeader.d.ts +1 -1
- package/dist/esm/components/Card/CardIconButton.d.ts +1 -1
- package/dist/esm/components/Card/InputCard.d.ts +1 -1
- package/dist/esm/components/ContractComponent/NFT/NFT.style.d.ts +1 -1
- package/dist/esm/components/Header/Header.style.d.ts +2 -2
- package/dist/esm/components/Header/SettingsButton.style.d.ts +2 -2
- package/dist/esm/components/Header/WalletHeader.js +4 -4
- package/dist/esm/components/Header/WalletHeader.js.map +1 -1
- package/dist/esm/components/ListItem/ListItem.d.ts +1 -1
- package/dist/esm/components/Messages/WarningMessages.js +1 -0
- package/dist/esm/components/Messages/WarningMessages.js.map +1 -1
- package/dist/esm/components/Messages/useMessageQueue.js +1 -1
- package/dist/esm/components/Messages/useMessageQueue.js.map +1 -1
- package/dist/esm/components/Search/SearchInput.style.d.ts +1 -1
- package/dist/esm/components/SelectTokenButton/SelectTokenButton.style.d.ts +1 -1
- package/dist/esm/components/SendToWallet/SendToWallet.style.d.ts +1 -1
- package/dist/esm/components/Skeleton/WidgetSkeleton.style.d.ts +3 -3
- package/dist/esm/components/StepActions/StepActions.style.d.ts +1 -1
- package/dist/esm/components/Tabs/Tabs.style.d.ts +2 -2
- package/dist/esm/components/TokenList/TokenList.style.d.ts +2 -2
- package/dist/esm/components/TransactionDetails.js +4 -1
- package/dist/esm/components/TransactionDetails.js.map +1 -1
- package/dist/esm/config/defaultChainIds.js +3 -0
- package/dist/esm/config/defaultChainIds.js.map +1 -1
- package/dist/esm/config/version.d.ts +1 -1
- package/dist/esm/config/version.js +1 -1
- package/dist/esm/cross/adapters/AcrossAdapter.js +21 -22
- package/dist/esm/cross/adapters/AcrossAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/BaseSwapAdapter.d.ts +17 -9
- package/dist/esm/cross/adapters/BaseSwapAdapter.js +15 -4
- package/dist/esm/cross/adapters/BaseSwapAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/DebridgeAdapter.js +8 -7
- package/dist/esm/cross/adapters/DebridgeAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/LifiAdapter.js +7 -6
- package/dist/esm/cross/adapters/LifiAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/MayanAdapter.js +1 -2
- package/dist/esm/cross/adapters/MayanAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/NearIntentsAdapter.d.ts +13 -6
- package/dist/esm/cross/adapters/NearIntentsAdapter.js +252 -75
- package/dist/esm/cross/adapters/NearIntentsAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/OptimexAdapter.js +2 -1
- package/dist/esm/cross/adapters/OptimexAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/OrbiterAdapter.js +9 -8
- package/dist/esm/cross/adapters/OrbiterAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/RelayAdapter.js +40 -15
- package/dist/esm/cross/adapters/RelayAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/SymbiosisAdapter.js +13 -14
- package/dist/esm/cross/adapters/SymbiosisAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/XYFinanceAdapter.js +13 -17
- package/dist/esm/cross/adapters/XYFinanceAdapter.js.map +1 -1
- package/dist/esm/cross/adapters/index.d.ts +2 -0
- package/dist/esm/cross/adapters/index.js +2 -1
- package/dist/esm/cross/adapters/index.js.map +1 -1
- package/dist/esm/cross/constants/index.d.ts +3 -1
- package/dist/esm/cross/constants/index.js +2 -0
- package/dist/esm/cross/constants/index.js.map +1 -1
- package/dist/esm/cross/crossChainQuote.d.ts +1 -1
- package/dist/esm/cross/crossChainQuote.js +75 -12
- package/dist/esm/cross/crossChainQuote.js.map +1 -1
- package/dist/esm/cross/factory.d.ts +3 -1
- package/dist/esm/cross/factory.js +10 -12
- package/dist/esm/cross/factory.js.map +1 -1
- package/dist/esm/cross/registry.d.ts +1 -1
- package/dist/esm/hooks/useAvailableChains.js +47 -40
- package/dist/esm/hooks/useAvailableChains.js.map +1 -1
- package/dist/esm/hooks/useChains.js.map +1 -1
- package/dist/esm/hooks/useRoutes.js +11 -3
- package/dist/esm/hooks/useRoutes.js.map +1 -1
- package/dist/esm/hooks/useSwapOnly.js +8 -2
- package/dist/esm/hooks/useSwapOnly.js.map +1 -1
- package/dist/esm/hooks/useTokenAddressBalance.js.map +1 -1
- package/dist/esm/hooks/useTokens.d.ts +1 -0
- package/dist/esm/hooks/useTokens.js +14 -0
- package/dist/esm/hooks/useTokens.js.map +1 -1
- package/dist/esm/i18n/en.json +2 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/pages/MainPage/MainWarningMessages.js.map +1 -1
- package/dist/esm/pages/SendToWallet/BookmarksPage.js +1 -1
- package/dist/esm/pages/SendToWallet/BookmarksPage.js.map +1 -1
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js +2 -2
- package/dist/esm/pages/SendToWallet/RecentWalletsPage.js.map +1 -1
- package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js +2 -2
- package/dist/esm/pages/SendToWallet/SendToConfiguredWalletPage.js.map +1 -1
- package/dist/esm/pages/SendToWallet/SendToWalletPage.style.d.ts +5 -5
- package/dist/esm/pages/SettingsPage/SettingsCard/SettingCard.style.d.ts +1 -1
- package/dist/esm/providers/WidgetProvider/WidgetProvider.js.map +1 -1
- package/dist/esm/services/ExecuteRoute.d.ts +1 -0
- package/dist/esm/services/ExecuteRoute.js +292 -9
- package/dist/esm/services/ExecuteRoute.js.map +1 -1
- package/dist/esm/services/OpenOceanService.js +30 -4
- package/dist/esm/services/OpenOceanService.js.map +1 -1
- package/dist/esm/stores/bookmarks/createBookmarkStore.js.map +1 -1
- package/dist/esm/types/widget.d.ts +1 -1
- package/dist/esm/types/widget.js.map +1 -1
- package/dist/esm/utils/chainType.d.ts +1 -0
- package/dist/esm/utils/chainType.js +15 -0
- package/dist/esm/utils/chainType.js.map +1 -1
- package/dist/esm/utils/getPriceImpact.js +3 -3
- package/dist/esm/utils/getPriceImpact.js.map +1 -1
- package/package.json +19 -7
- package/src/App.tsx +0 -1
- package/src/components/AmountInput/AmountInputEndAdornment.tsx +39 -34
- package/src/components/BaseTransactionButton/BaseTransactionButton.tsx +3 -2
- package/src/components/Header/WalletHeader.tsx +4 -4
- package/src/components/Messages/WarningMessages.tsx +1 -0
- package/src/components/Messages/useMessageQueue.ts +1 -1
- package/src/components/TransactionDetails.tsx +8 -4
- package/src/config/defaultChainIds.ts +3 -0
- package/src/config/version.ts +1 -1
- package/src/cross/adapters/AcrossAdapter.ts +21 -22
- package/src/cross/adapters/BaseSwapAdapter.ts +24 -8
- package/src/cross/adapters/DebridgeAdapter.ts +11 -11
- package/src/cross/adapters/LifiAdapter.ts +11 -10
- package/src/cross/adapters/MayanAdapter.ts +1 -2
- package/src/cross/adapters/NearIntentsAdapter.ts +303 -129
- package/src/cross/adapters/OptimexAdapter.ts +12 -11
- package/src/cross/adapters/OrbiterAdapter.ts +17 -16
- package/src/cross/adapters/RelayAdapter.ts +42 -17
- package/src/cross/adapters/SymbiosisAdapter.ts +13 -14
- package/src/cross/adapters/XYFinanceAdapter.ts +15 -19
- package/src/cross/adapters/index.ts +2 -1
- package/src/cross/constants/index.ts +4 -0
- package/src/cross/crossChainQuote.ts +79 -21
- package/src/cross/factory.ts +12 -12
- package/src/cross/registry.ts +1 -1
- package/src/hooks/useAvailableChains.ts +50 -43
- package/src/hooks/useChains.ts +0 -1
- package/src/hooks/useExplorer.ts +6 -6
- package/src/hooks/useRoutes.ts +12 -4
- package/src/hooks/useSwapOnly.ts +9 -2
- package/src/hooks/useTokenAddressBalance.ts +1 -1
- package/src/hooks/useTokens.ts +20 -5
- package/src/i18n/en.json +2 -2
- package/src/index.ts +0 -1
- package/src/pages/MainPage/MainWarningMessages.tsx +0 -1
- package/src/pages/SendToWallet/BookmarksPage.tsx +1 -1
- package/src/pages/SendToWallet/RecentWalletsPage.tsx +2 -2
- package/src/pages/SendToWallet/SendToConfiguredWalletPage.tsx +2 -2
- package/src/providers/WidgetProvider/WidgetProvider.tsx +0 -1
- package/src/services/ExecuteRoute.ts +426 -64
- package/src/services/OpenOceanService.ts +31 -7
- package/src/stores/bookmarks/createBookmarkStore.ts +15 -15
- package/src/types/widget.ts +2 -1
- package/src/utils/chainType.ts +25 -1
- package/src/utils/getPriceImpact.ts +3 -3
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -20,40 +20,40 @@ export const createBookmarksStore = ({
|
|
|
20
20
|
selectedBookmark: toAddress,
|
|
21
21
|
bookmarks: [],
|
|
22
22
|
recentWallets: [],
|
|
23
|
-
getBookmark: (address) =>
|
|
24
|
-
(get() as any).bookmarks.find((bookmark) => bookmark.address === address),
|
|
25
|
-
addBookmark: (bookmark) => {
|
|
26
|
-
set((state) => ({
|
|
23
|
+
getBookmark: (address: string) =>
|
|
24
|
+
(get() as any).bookmarks.find((bookmark: any) => bookmark.address === address),
|
|
25
|
+
addBookmark: (bookmark: any) => {
|
|
26
|
+
set((state: any) => ({
|
|
27
27
|
bookmarks: [bookmark, ...state.bookmarks],
|
|
28
28
|
}))
|
|
29
29
|
},
|
|
30
|
-
removeBookmark: (address) => {
|
|
31
|
-
set((state) => ({
|
|
30
|
+
removeBookmark: (address: string) => {
|
|
31
|
+
set((state: any) => ({
|
|
32
32
|
bookmarks: state.bookmarks.filter(
|
|
33
|
-
(storedBookmark) => storedBookmark.address !== address
|
|
33
|
+
(storedBookmark: any) => storedBookmark.address !== address
|
|
34
34
|
),
|
|
35
35
|
}))
|
|
36
36
|
},
|
|
37
37
|
getSelectedBookmark: () => (get() as any).selectedBookmark,
|
|
38
|
-
setSelectedBookmark: (bookmark) => {
|
|
39
|
-
set((_state) => ({
|
|
38
|
+
setSelectedBookmark: (bookmark: any) => {
|
|
39
|
+
set((_state: any) => ({
|
|
40
40
|
selectedBookmark: bookmark,
|
|
41
41
|
}))
|
|
42
42
|
},
|
|
43
|
-
addRecentWallet: (bookmark) => {
|
|
44
|
-
set((state) => ({
|
|
43
|
+
addRecentWallet: (bookmark: any) => {
|
|
44
|
+
set((state: any) => ({
|
|
45
45
|
recentWallets: [
|
|
46
46
|
bookmark,
|
|
47
47
|
...state.recentWallets.filter(
|
|
48
|
-
(recentWallet) => recentWallet.address !== bookmark.address
|
|
48
|
+
(recentWallet: any) => recentWallet.address !== bookmark.address
|
|
49
49
|
),
|
|
50
50
|
].slice(0, recentWalletsLimit),
|
|
51
51
|
}))
|
|
52
52
|
},
|
|
53
|
-
removeRecentWallet: (address) => {
|
|
54
|
-
set((state) => ({
|
|
53
|
+
removeRecentWallet: (address: string) => {
|
|
54
|
+
set((state: any) => ({
|
|
55
55
|
recentWallets: state.recentWallets.filter(
|
|
56
|
-
(storedRecent) => storedRecent.address !== address
|
|
56
|
+
(storedRecent: any) => storedRecent.address !== address
|
|
57
57
|
),
|
|
58
58
|
}))
|
|
59
59
|
},
|
package/src/types/widget.ts
CHANGED
|
@@ -37,6 +37,7 @@ import type { DefaultFieldValues } from '../stores/form/types.js'
|
|
|
37
37
|
export type WidgetVariant = 'compact' | 'wide' | 'drawer'
|
|
38
38
|
export type WidgetSubvariant =
|
|
39
39
|
| 'default'
|
|
40
|
+
| 'swap'
|
|
40
41
|
| 'bridge'
|
|
41
42
|
| 'split'
|
|
42
43
|
| 'custom'
|
|
@@ -276,7 +277,7 @@ export interface WidgetConfig {
|
|
|
276
277
|
languages?: WidgetLanguages
|
|
277
278
|
languageResources?: LanguageResources
|
|
278
279
|
explorerUrls?: Record<number, string[]> &
|
|
279
|
-
|
|
280
|
+
Partial<Record<'internal', string[]>>
|
|
280
281
|
poweredBy?: PoweredByType
|
|
281
282
|
isDefaultValueEnabled?: boolean
|
|
282
283
|
/**
|
package/src/utils/chainType.ts
CHANGED
|
@@ -2,11 +2,34 @@ import { isUTXOAddress } from '@bigmi/core'
|
|
|
2
2
|
import { ChainId, ChainType, isSVMAddress } from '@openocean.finance/widget-sdk'
|
|
3
3
|
import { isAddress as isEVMAddress } from 'viem'
|
|
4
4
|
|
|
5
|
-
const
|
|
5
|
+
const isNearAddress = (address: string) => {
|
|
6
|
+
if (!address) {
|
|
7
|
+
return false
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
// Implicit accounts are 64-char hex strings
|
|
11
|
+
const isImplicitAccount = /^[0-9a-f]{64}$/i.test(address)
|
|
12
|
+
if (isImplicitAccount) {
|
|
13
|
+
return true
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
// Named accounts must be lowercase and end with a TLD (e.g. .near, .testnet, custom subdomain)
|
|
17
|
+
const isNamedAccount =
|
|
18
|
+
/^[a-z0-9_-]+(\.[a-z0-9_-]+)*(\.near|\.testnet|\.chain|\.btc)?$/.test(
|
|
19
|
+
address
|
|
20
|
+
)
|
|
21
|
+
return isNamedAccount
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
const chainTypeAddressValidation: Record<
|
|
25
|
+
ChainType,
|
|
26
|
+
(address: string) => boolean
|
|
27
|
+
> = {
|
|
6
28
|
[ChainType.EVM]: isEVMAddress,
|
|
7
29
|
[ChainType.SVM]: isSVMAddress,
|
|
8
30
|
[ChainType.UTXO]: isUTXOAddress,
|
|
9
31
|
[ChainType.MVM]: () => false,
|
|
32
|
+
[ChainType.NVM]: isNearAddress,
|
|
10
33
|
}
|
|
11
34
|
|
|
12
35
|
export const getChainTypeFromAddress = (
|
|
@@ -26,4 +49,5 @@ export const defaultChainIdsByType = {
|
|
|
26
49
|
[ChainType.SVM]: ChainId.SOL,
|
|
27
50
|
[ChainType.UTXO]: ChainId.BTC,
|
|
28
51
|
[ChainType.MVM]: ChainId.SUI,
|
|
52
|
+
[ChainType.NVM]: ChainId.NEAR,
|
|
29
53
|
}
|
|
@@ -28,9 +28,9 @@ export const getPriceImpact = ({
|
|
|
28
28
|
if (!fromTokenPrice || !toTokenPrice) {
|
|
29
29
|
return 0
|
|
30
30
|
}
|
|
31
|
-
console.log('fromTokenPrice', fromTokenPrice)
|
|
32
|
-
console.log('toTokenPrice', toTokenPrice)
|
|
33
|
-
console.log('fromTokenPrice / toTokenPrice', fromTokenPrice / toTokenPrice)
|
|
31
|
+
// console.log('fromTokenPrice', fromTokenPrice)
|
|
32
|
+
// console.log('toTokenPrice', toTokenPrice)
|
|
33
|
+
// console.log('fromTokenPrice / toTokenPrice', fromTokenPrice / toTokenPrice)
|
|
34
34
|
const priceImpact = toTokenPrice / fromTokenPrice - 1
|
|
35
35
|
|
|
36
36
|
return priceImpact
|