@lifi/widget 3.25.0-beta.4 → 3.25.0
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/CHANGELOG.md +23 -0
- package/dist/esm/components/Chains/ChainList.d.ts +2 -3
- package/dist/esm/components/Chains/ChainList.js +4 -3
- package/dist/esm/components/Chains/ChainList.js.map +1 -1
- package/dist/esm/components/Chains/ChainList.style.js +10 -3
- package/dist/esm/components/Chains/ChainList.style.js.map +1 -1
- package/dist/esm/components/Chains/ChainListItem.d.ts +4 -1
- package/dist/esm/components/Chains/ChainListItem.js +14 -2
- package/dist/esm/components/Chains/ChainListItem.js.map +1 -1
- package/dist/esm/components/Chains/PinChainButton.d.ts +7 -0
- package/dist/esm/components/Chains/PinChainButton.js +34 -0
- package/dist/esm/components/Chains/PinChainButton.js.map +1 -0
- package/dist/esm/components/Chains/SelectChainContent.js +15 -16
- package/dist/esm/components/Chains/SelectChainContent.js.map +1 -1
- package/dist/esm/components/Chains/VirtualizedChainList.d.ts +2 -1
- package/dist/esm/components/Chains/VirtualizedChainList.js +43 -9
- package/dist/esm/components/Chains/VirtualizedChainList.js.map +1 -1
- package/dist/esm/components/Messages/MinFromAmountUSDMessage.d.ts +6 -0
- package/dist/esm/components/Messages/MinFromAmountUSDMessage.js +15 -0
- package/dist/esm/components/Messages/MinFromAmountUSDMessage.js.map +1 -0
- package/dist/esm/components/Messages/WarningMessages.js +3 -0
- package/dist/esm/components/Messages/WarningMessages.js.map +1 -1
- package/dist/esm/components/Messages/useMessageQueue.js +15 -4
- package/dist/esm/components/Messages/useMessageQueue.js.map +1 -1
- package/dist/esm/components/TokenList/TokenDetailsSheet.js +0 -2
- package/dist/esm/components/TokenList/TokenDetailsSheet.js.map +1 -1
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.js +26 -2
- package/dist/esm/components/TokenList/TokenDetailsSheetContent.js.map +1 -1
- package/dist/esm/components/TokenList/TokenList.js +10 -1
- package/dist/esm/components/TokenList/TokenList.js.map +1 -1
- package/dist/esm/components/TokenList/TokenListItem.js +3 -1
- package/dist/esm/components/TokenList/TokenListItem.js.map +1 -1
- package/dist/esm/config/version.d.ts +1 -1
- package/dist/esm/config/version.js +1 -1
- package/dist/esm/config/version.js.map +1 -1
- package/dist/esm/hooks/useFromAmountThreshold.d.ts +4 -0
- package/dist/esm/hooks/useFromAmountThreshold.js +23 -0
- package/dist/esm/hooks/useFromAmountThreshold.js.map +1 -0
- package/dist/esm/hooks/useLongPress.d.ts +7 -0
- package/dist/esm/hooks/useLongPress.js +41 -0
- package/dist/esm/hooks/useLongPress.js.map +1 -0
- package/dist/esm/hooks/useTokenBalances.d.ts +1 -2
- package/dist/esm/hooks/useTokenBalances.js +2 -3
- package/dist/esm/hooks/useTokenBalances.js.map +1 -1
- package/dist/esm/hooks/useTokenSearch.d.ts +2 -2
- package/dist/esm/hooks/useTokenSearch.js.map +1 -1
- package/dist/esm/hooks/useTokens.d.ts +1 -2
- package/dist/esm/hooks/useTokens.js +1 -10
- package/dist/esm/hooks/useTokens.js.map +1 -1
- package/dist/esm/i18n/bn.json +4 -1
- package/dist/esm/i18n/de.json +4 -1
- package/dist/esm/i18n/en.json +4 -1
- package/dist/esm/i18n/es.json +4 -1
- package/dist/esm/i18n/fr.json +4 -1
- package/dist/esm/i18n/hi.json +4 -1
- package/dist/esm/i18n/id.json +4 -1
- package/dist/esm/i18n/it.json +4 -1
- package/dist/esm/i18n/ja.json +4 -1
- package/dist/esm/i18n/ko.json +4 -1
- package/dist/esm/i18n/pl.json +4 -1
- package/dist/esm/i18n/pt.json +4 -1
- package/dist/esm/i18n/th.json +4 -1
- package/dist/esm/i18n/tr.json +4 -1
- package/dist/esm/i18n/uk.json +4 -1
- package/dist/esm/i18n/vi.json +4 -1
- package/dist/esm/i18n/zh.json +4 -1
- package/dist/esm/stores/chains/ChainOrderStore.js +17 -5
- package/dist/esm/stores/chains/ChainOrderStore.js.map +1 -1
- package/dist/esm/stores/chains/createChainOrderStore.js +19 -1
- package/dist/esm/stores/chains/createChainOrderStore.js.map +1 -1
- package/dist/esm/stores/chains/types.d.ts +2 -0
- package/dist/esm/stores/header/useHeaderStore.js +2 -3
- package/dist/esm/stores/header/useHeaderStore.js.map +1 -1
- package/dist/esm/types/widget.d.ts +1 -0
- package/dist/esm/types/widget.js.map +1 -1
- package/package.json +4 -4
- package/package.json.tmp +3 -3
- package/src/components/Chains/ChainList.style.tsx +10 -2
- package/src/components/Chains/ChainList.tsx +6 -5
- package/src/components/Chains/ChainListItem.tsx +29 -0
- package/src/components/Chains/PinChainButton.tsx +51 -0
- package/src/components/Chains/SelectChainContent.tsx +18 -21
- package/src/components/Chains/VirtualizedChainList.tsx +68 -20
- package/src/components/Messages/MinFromAmountUSDMessage.tsx +35 -0
- package/src/components/Messages/WarningMessages.tsx +8 -0
- package/src/components/Messages/useMessageQueue.ts +16 -4
- package/src/components/TokenList/TokenDetailsSheet.tsx +0 -2
- package/src/components/TokenList/TokenDetailsSheetContent.tsx +49 -1
- package/src/components/TokenList/TokenList.tsx +24 -1
- package/src/components/TokenList/TokenListItem.tsx +6 -0
- package/src/config/version.ts +1 -1
- package/src/hooks/useFromAmountThreshold.ts +31 -0
- package/src/hooks/useLongPress.ts +51 -0
- package/src/hooks/useTokenBalances.ts +3 -10
- package/src/hooks/useTokenSearch.ts +3 -3
- package/src/hooks/useTokens.ts +2 -29
- package/src/i18n/bn.json +4 -1
- package/src/i18n/de.json +4 -1
- package/src/i18n/en.json +4 -1
- package/src/i18n/es.json +4 -1
- package/src/i18n/fr.json +4 -1
- package/src/i18n/hi.json +4 -1
- package/src/i18n/id.json +4 -1
- package/src/i18n/it.json +4 -1
- package/src/i18n/ja.json +4 -1
- package/src/i18n/ko.json +4 -1
- package/src/i18n/pl.json +4 -1
- package/src/i18n/pt.json +4 -1
- package/src/i18n/th.json +4 -1
- package/src/i18n/tr.json +4 -1
- package/src/i18n/uk.json +4 -1
- package/src/i18n/vi.json +4 -1
- package/src/i18n/zh.json +4 -1
- package/src/stores/chains/ChainOrderStore.tsx +23 -5
- package/src/stores/chains/createChainOrderStore.ts +19 -1
- package/src/stores/chains/types.ts +2 -0
- package/src/stores/header/useHeaderStore.tsx +2 -9
- package/src/types/widget.ts +1 -0
package/dist/esm/i18n/pl.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "",
|
|
130
130
|
"insufficientFunds": "",
|
|
131
131
|
"insufficientGas": "",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "",
|
|
133
134
|
"resetSettings": "",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "",
|
|
348
|
-
"contractAddress": ""
|
|
349
|
+
"contractAddress": "",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/pt.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "A quantidade de tokens a serem recebidos é significativamente menor do que os tokens convertidos e os custos da transação.",
|
|
130
130
|
"insufficientFunds": "Você não possui fundos suficientes para completar a conversão.",
|
|
131
131
|
"insufficientGas": "Você não tem gás suficiente para completar a conversão. É necessário adicionar pelo menos:",
|
|
132
|
+
"minFromAmountUSD": "Valor mínimo é {{amount, currencyExt(currency: USD)}}. Por favor, insira um valor maior.",
|
|
132
133
|
"rateChanged": "A taxa de câmbio mudou. Ao continuar a conversão, você aceitará a nova taxa.",
|
|
133
134
|
"resetSettings": "Isto redefinirá sua prioridade de rota, tolerância a derrapagem, preço de gás, pontes e trocas ativadas.",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "Alta tolerância na derrapagem pode resultar em negociação desfavorável causada pelo front-running.",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "Preço atual",
|
|
348
|
-
"contractAddress": "Endereço do Contrato"
|
|
349
|
+
"contractAddress": "Endereço do Contrato",
|
|
350
|
+
"marketCap": "Capitalização de mercado",
|
|
351
|
+
"volume24h": "Volume 24h"
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/th.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "มูลค่าของโทเค็นที่ได้รับนั้นต่ำกว่าโทเค็นที่แลกเปลี่ยนและต้นทุนการทำธุรกรรมอย่างมาก.",
|
|
130
130
|
"insufficientFunds": "คุณมีเงินไม่เพียงพอที่จะดำเนินการแลกเปลี่ยน.",
|
|
131
131
|
"insufficientGas": "คุณมีแก๊สไม่เพียงพอที่จะแลกเปลี่ยนให้เสร็จสมบูรณ์ คุณต้องเพิ่มอย่างน้อย:",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "อัตราแลกเปลี่ยนมีการเปลี่ยนแปลง คุณจะยอมรับอัตราใหม่.",
|
|
133
134
|
"resetSettings": "การดำเนินการนี้จะรีเซ็ตลำดับความสำคัญของเส้นทาง การคลาดเลื่อน ค่าแก็ส บริดจ์ที่เปิดใช้งานและการแลกเปลี่ยน",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "การยอมรับความผิดปกติในการสลิปเพจสูงอาจส่งผลให้เกิดการซื้อขายที่ไม่คุ้มค่า ซึ่งเกิดจากการดำเนินการขายก่อน",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "",
|
|
348
|
-
"contractAddress": ""
|
|
349
|
+
"contractAddress": "",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/tr.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "Elde edilecek varlıkların değeri, takas edilen varlıklardan ve işlem maliyetinden önemli ölçüde düşüktür.",
|
|
130
130
|
"insufficientFunds": "Takas işlemini gerçekleştirmek için yeterli bakiyeniz bulunmamaktadır.",
|
|
131
131
|
"insufficientGas": "En azından şunları eklemelisiniz:",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "Takas oranı değişti. İşleme devam ederek yeni oranı kabul etmiş olursunuz.",
|
|
133
134
|
"resetSettings": "Bu, rota önceliğinizi, slipajı, gaz fiyatını, etkin köprüleri ve takasları sıfırlayacaktır.",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "Yüksek slipaj, ani fiyat hareketleri nedeniyle zarara yol açabilir.",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "",
|
|
348
|
-
"contractAddress": ""
|
|
349
|
+
"contractAddress": "",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/uk.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "Вартість отриманих токенів значно нижча, ніж обмінені токени та вартість транзакції.",
|
|
130
130
|
"insufficientFunds": "У вас недостатньо коштів для здійснення свопу.",
|
|
131
131
|
"insufficientGas": "Для завершення свопа у вас недостатньо газу. Вам необхідно додати хоча б:",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "Курс обміну змінився. Продовжуючи своп, ви приймете новий курс.",
|
|
133
134
|
"resetSettings": "Це скине пріоритет вашого маршруту, прослизання, ціну газу, увімкнені бриджі та обмінники.",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "Високий допуск до прослизання може призвести до несприятливої торгівлі через фронт-біг.",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "Поточна ціна",
|
|
348
|
-
"contractAddress": "Адреса контракту"
|
|
349
|
+
"contractAddress": "Адреса контракту",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/vi.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "Giá trị của token nhận được đang thấp hơn rất nhiều so với token được swap và chi phí giao dịch.",
|
|
130
130
|
"insufficientFunds": "Bạn không có đủ tiền để thực hiện tác vụ này.",
|
|
131
131
|
"insufficientGas": "Bạn không đủ gas để thực hiện swap. Bạn cần thêm ít nhất:",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "Tỉ lệ hoán đổi đã thay đổi. Để tiếp tục Swap, bạn sẽ chấp nhận tỉ lệ mới.",
|
|
133
134
|
"resetSettings": "Thao tác này sẽ đặt lại mức độ ưu tiên của tuyến đường, độ trượt giá, giá gas, bridge và sàn giao dịch.",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "Khả năng trượt giá cao có thể dẫn đến giao dịch không thành công do front-running.",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "",
|
|
348
|
-
"contractAddress": ""
|
|
349
|
+
"contractAddress": "",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
package/dist/esm/i18n/zh.json
CHANGED
|
@@ -129,6 +129,7 @@
|
|
|
129
129
|
"highValueLoss": "收到的代币的价值明显低于要被兑换的代币和交易成本。",
|
|
130
130
|
"insufficientFunds": "你没有足够的资金来完成这笔交易。",
|
|
131
131
|
"insufficientGas": "您没有足够的燃气费来完成此次交易。您至少需要添加:",
|
|
132
|
+
"minFromAmountUSD": "",
|
|
132
133
|
"rateChanged": "兑换比例已经改变,如果继续兑换,您将接受新的兑换比例。",
|
|
133
134
|
"resetSettings": "这将重置您的路由优先级,滑点,燃气费,选中的跨链桥和链上交易所。",
|
|
134
135
|
"slippageOutsideRecommendedLimits": "过高的滑点可能会导致交易被抢跑,造成财产损失",
|
|
@@ -345,6 +346,8 @@
|
|
|
345
346
|
},
|
|
346
347
|
"tokenMetric": {
|
|
347
348
|
"currentPrice": "",
|
|
348
|
-
"contractAddress": ""
|
|
349
|
+
"contractAddress": "",
|
|
350
|
+
"marketCap": "",
|
|
351
|
+
"volume24h": ""
|
|
349
352
|
}
|
|
350
353
|
}
|
|
@@ -12,6 +12,7 @@ export function ChainOrderStoreProvider({ children, ...props }) {
|
|
|
12
12
|
const storeRef = useRef(null);
|
|
13
13
|
const { chains } = useChains();
|
|
14
14
|
const { setFieldValue, getFieldValues } = useFieldActions();
|
|
15
|
+
const { variant, subvariantOptions } = useWidgetConfig();
|
|
15
16
|
const { externalChainTypes, useExternalWalletProvidersOnly } = useExternalWalletProvider();
|
|
16
17
|
if (!storeRef.current) {
|
|
17
18
|
storeRef.current = createChainOrderStore(props);
|
|
@@ -38,11 +39,20 @@ export function ChainOrderStoreProvider({ children, ...props }) {
|
|
|
38
39
|
return passesChainsConfigFilter && passesWalletConfigFilter;
|
|
39
40
|
});
|
|
40
41
|
const chainOrder = storeRef.current?.getState().initializeChains(filteredChains.map((chain) => chain.id), key);
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
const [chainValue] = getFieldValues(`${key}Chain`);
|
|
43
|
+
if (chainValue) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const firstAllowedPinnedChain = storeRef.current
|
|
47
|
+
?.getState()
|
|
48
|
+
.pinnedChains?.find((chainId) => filteredChains.some((chain) => chain.id === chainId));
|
|
49
|
+
if (variant === 'wide' &&
|
|
50
|
+
subvariantOptions?.wide?.enableChainSidebar &&
|
|
51
|
+
firstAllowedPinnedChain) {
|
|
52
|
+
setFieldValue(`${key}Chain`, firstAllowedPinnedChain);
|
|
53
|
+
}
|
|
54
|
+
else if (chainOrder?.length) {
|
|
55
|
+
setFieldValue(`${key}Chain`, chainOrder[0]);
|
|
46
56
|
}
|
|
47
57
|
});
|
|
48
58
|
}
|
|
@@ -53,6 +63,8 @@ export function ChainOrderStoreProvider({ children, ...props }) {
|
|
|
53
63
|
getFieldValues,
|
|
54
64
|
setFieldValue,
|
|
55
65
|
useExternalWalletProvidersOnly,
|
|
66
|
+
variant,
|
|
67
|
+
subvariantOptions?.wide?.enableChainSidebar,
|
|
56
68
|
]);
|
|
57
69
|
return (_jsx(ChainOrderStoreContext.Provider, { value: storeRef.current, children: children }));
|
|
58
70
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/ChainOrderStore.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AAGpE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,EAAE,yBAAyB,EAAE,MAAM,6DAA6D,CAAA;AACvG,OAAO,EAAE,eAAe,EAAE,MAAM,kDAAkD,CAAA;AAClF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAE7E,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAE5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAOlE,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CACjD,IAAI,CACL,CAAA;AAED,MAAM,UAAU,uBAAuB,CAAC,EACtC,QAAQ,EACR,GAAG,KAAK,EACkB;IAC1B,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,eAAe,EAAE,CAAA;IAClD,MAAM,QAAQ,GAAG,MAAM,CAAkB,IAAI,CAAC,CAAA;IAC9C,MAAM,EAAE,MAAM,EAAE,GAAG,SAAS,EAAE,CAAA;IAC9B,MAAM,EAAE,aAAa,EAAE,cAAc,EAAE,GAAG,eAAe,EAAE,CAAA;IAC3D,MAAM,EAAE,kBAAkB,EAAE,8BAA8B,EAAE,GAC1D,yBAAyB,EAAE,CAAA;IAE7B,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED,SAAS,CAAC,GAAG,EAAE;QACb,IAAI,MAAM,EAAE,CAAC;YACX,CAAC;YAAC,CAAC,MAAM,EAAE,IAAI,CAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE;gBAC9C,MAAM,cAAc,GAAG,YAAY,EAAE,CAAC,GAAG,CAAC,CAAA;gBAC1C,MAAM,SAAS,GAAG,GAAG,KAAK,MAAM,CAAA;gBAEhC,iDAAiD;gBACjD,MAAM,iBAAiB,GAAG,iBAAiB,CACzC,cAAc,EACd,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAChC,CAAA;gBACD,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE;oBAC7C,MAAM,wBAAwB,GAAG,iBAAiB;wBAChD,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,EAAE,EAAE,iBAAiB,CAAC;wBACnD,CAAC,CAAC,IAAI,CAAA;oBACR,wGAAwG;oBACxG,qFAAqF;oBACrF,2EAA2E;oBAC3E,MAAM,wBAAwB,GAAG,SAAS;wBACxC,CAAC,CAAC,CAAC,8BAA8B;4BAC/B,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;wBAC9C,CAAC,CAAC,IAAI,CAAA;oBACR,OAAO,wBAAwB,IAAI,wBAAwB,CAAA;gBAC7D,CAAC,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"ChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/ChainOrderStore.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,6 +9,7 @@ const defaultChainState = {
|
|
|
9
9
|
export const createChainOrderStore = ({ namePrefix }) => createWithEqualityFn(persist((set, get) => ({
|
|
10
10
|
chainOrder: defaultChainState,
|
|
11
11
|
availableChains: defaultChainState,
|
|
12
|
+
pinnedChains: [],
|
|
12
13
|
initializeChains: (chainIds, type) => {
|
|
13
14
|
set((state) => {
|
|
14
15
|
const chainOrder = state.chainOrder[type].filter((chainId) => chainIds.includes(chainId));
|
|
@@ -62,9 +63,26 @@ export const createChainOrderStore = ({ namePrefix }) => createWithEqualityFn(pe
|
|
|
62
63
|
};
|
|
63
64
|
});
|
|
64
65
|
},
|
|
66
|
+
setPinnedChain: (chainId) => {
|
|
67
|
+
set((state) => {
|
|
68
|
+
const pinnedChains = [...state.pinnedChains];
|
|
69
|
+
if (pinnedChains.includes(chainId)) {
|
|
70
|
+
return {
|
|
71
|
+
pinnedChains: pinnedChains.filter((id) => id !== chainId),
|
|
72
|
+
};
|
|
73
|
+
}
|
|
74
|
+
pinnedChains.push(chainId);
|
|
75
|
+
return {
|
|
76
|
+
pinnedChains,
|
|
77
|
+
};
|
|
78
|
+
});
|
|
79
|
+
},
|
|
65
80
|
}), {
|
|
66
81
|
name: `${namePrefix || 'li.fi'}-widget-chains-order`,
|
|
67
82
|
version: 2,
|
|
68
|
-
partialize: (state) => ({
|
|
83
|
+
partialize: (state) => ({
|
|
84
|
+
chainOrder: state.chainOrder,
|
|
85
|
+
pinnedChains: state.pinnedChains,
|
|
86
|
+
}),
|
|
69
87
|
}), Object.is);
|
|
70
88
|
//# sourceMappingURL=createChainOrderStore.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/createChainOrderStore.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"createChainOrderStore.js","sourceRoot":"","sources":["../../../../src/stores/chains/createChainOrderStore.ts"],"names":[],"mappings":"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"}
|
|
@@ -8,8 +8,10 @@ export interface ChainOrderProps {
|
|
|
8
8
|
from: number[];
|
|
9
9
|
to: number[];
|
|
10
10
|
};
|
|
11
|
+
pinnedChains: number[];
|
|
11
12
|
}
|
|
12
13
|
export interface ChainOrderState extends ChainOrderProps {
|
|
13
14
|
initializeChains(chainIds: number[], type: FormType): number[];
|
|
14
15
|
setChain(chainId: number, type: FormType): void;
|
|
16
|
+
setPinnedChain(chainId: number): void;
|
|
15
17
|
}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { createContext, useContext, useRef } from 'react';
|
|
3
|
-
import { shallow } from 'zustand/shallow';
|
|
4
3
|
import { createWithEqualityFn } from 'zustand/traditional';
|
|
5
4
|
export const HeaderStoreContext = createContext(null);
|
|
6
5
|
export function HeaderStoreProvider({ children }) {
|
|
@@ -27,13 +26,13 @@ export function useHeaderStore(selector, equalityCheck) {
|
|
|
27
26
|
// To prevent the remaining page content from appearing behind the header we need to
|
|
28
27
|
// pass the headers height so that the position of the page content can be adjusted
|
|
29
28
|
export function useHeaderHeight() {
|
|
30
|
-
const
|
|
29
|
+
const headerHeight = useHeaderStore((state) => state.headerHeight);
|
|
31
30
|
return {
|
|
32
31
|
headerHeight,
|
|
33
32
|
};
|
|
34
33
|
}
|
|
35
34
|
export function useSetHeaderHeight() {
|
|
36
|
-
const
|
|
35
|
+
const setHeaderHeight = useHeaderStore((state) => state.setHeaderHeight);
|
|
37
36
|
return {
|
|
38
37
|
setHeaderHeight,
|
|
39
38
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useHeaderStore.js","sourceRoot":"","sources":["../../../../src/stores/header/useHeaderStore.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"useHeaderStore.js","sourceRoot":"","sources":["../../../../src/stores/header/useHeaderStore.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,OAAO,CAAA;AACzD,OAAO,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAA;AAI1D,MAAM,CAAC,MAAM,kBAAkB,GAAG,aAAa,CAAqB,IAAI,CAAC,CAAA;AAEzE,MAAM,UAAU,mBAAmB,CAAC,EAAE,QAAQ,EAA6B;IACzE,MAAM,QAAQ,GAAG,MAAM,CAAc,IAAI,CAAC,CAAA;IAC1C,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QACtB,QAAQ,CAAC,OAAO,GAAG,iBAAiB,EAAE,CAAA;IACxC,CAAC;IACD,OAAO,CACL,KAAC,kBAAkB,CAAC,QAAQ,IAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,YACjD,QAAQ,GACmB,CAC/B,CAAA;AACH,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,MAAM,QAAQ,GAAG,UAAU,CAAC,kBAAkB,CAAC,CAAA;IAC/C,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,yCAAyC,mBAAmB,CAAC,IAAI,IAAI,CACtE,CAAA;IACH,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,QAAmC,EACnC,aAA6C;IAE7C,MAAM,QAAQ,GAAG,qBAAqB,EAAE,CAAA;IACxC,OAAO,QAAQ,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAA;AAC1C,CAAC;AAED,4EAA4E;AAC5E,sFAAsF;AACtF,wEAAwE;AACxE,oFAAoF;AACpF,mFAAmF;AACnF,MAAM,UAAU,eAAe;IAC7B,MAAM,YAAY,GAAG,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IAElE,OAAO;QACL,YAAY;KACb,CAAA;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB;IAChC,MAAM,eAAe,GAAG,cAAc,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAExE,OAAO;QACL,eAAe;KAChB,CAAA;AACH,CAAC;AAED,MAAM,CAAC,MAAM,iBAAiB,GAAG,GAAG,EAAE,CACpC,oBAAoB,CAClB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC;IACb,YAAY,EAAE,GAAG,EAAE,yBAAyB;IAC5C,SAAS,EAAE,CAAC,OAAO,EAAE,EAAE;QACrB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,OAAO;SACR,CAAC,CAAC,CAAA;QACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAA;IAC3B,CAAC;IACD,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QAClB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,KAAK;SACN,CAAC,CAAC,CAAA;QACH,OAAO,GAAG,EAAE,CAAC,WAAW,CAAA;IAC1B,CAAC;IACD,YAAY,EAAE,GAAG,EAAE;QACjB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,OAAO,EAAE,IAAI;SACd,CAAC,CAAC,CAAA;IACL,CAAC;IACD,WAAW,EAAE,GAAG,EAAE;QAChB,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,KAAK,EAAE,SAAS;SACjB,CAAC,CAAC,CAAA;IACL,CAAC;IACD,eAAe,EAAE,CAAC,YAAY,EAAE,EAAE;QAChC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACT,YAAY;SACb,CAAC,CAAC,CAAA;IACL,CAAC;CACF,CAAC,EACF,MAAM,CAAC,EAAE,CACV,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../src/types/widget.ts"],"names":[],"mappings":"AA2FA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;IACvB,qCAAuB,CAAA;IACvB,iCAAmB,CAAA;AACrB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAGD,MAAM,CAAN,IAAY,QAeX;AAfD,WAAY,QAAQ;IAClB,qCAAyB,CAAA;IACzB,mDAAuC,CAAA;IACvC,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,+BAAmB,CAAA;IACnB,qCAAyB,CAAA;IACzB,2DAA+C,CAAA;IAC/C,uDAA2C,CAAA;IAC3C,2DAA+C,CAAA;IAC/C,uCAA2B,CAAA;IAC3B,+CAAmC,CAAA;IACnC,uEAA2D,CAAA;AAC7D,CAAC,EAfW,QAAQ,KAAR,QAAQ,QAenB;AAGD,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,qCAAuB,CAAA;IACvB,+DAAiD,CAAA;AACnD,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;
|
|
1
|
+
{"version":3,"file":"widget.js","sourceRoot":"","sources":["../../../src/types/widget.ts"],"names":[],"mappings":"AA2FA,MAAM,CAAN,IAAY,UAKX;AALD,WAAY,UAAU;IACpB,uCAAyB,CAAA;IACzB,qCAAuB,CAAA;IACvB,qCAAuB,CAAA;IACvB,iCAAmB,CAAA;AACrB,CAAC,EALW,UAAU,KAAV,UAAU,QAKrB;AAGD,MAAM,CAAN,IAAY,QAeX;AAfD,WAAY,QAAQ;IAClB,qCAAyB,CAAA;IACzB,mDAAuC,CAAA;IACvC,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,mCAAuB,CAAA;IACvB,mCAAuB,CAAA;IACvB,+BAAmB,CAAA;IACnB,qCAAyB,CAAA;IACzB,2DAA+C,CAAA;IAC/C,uDAA2C,CAAA;IAC3C,2DAA+C,CAAA;IAC/C,uCAA2B,CAAA;IAC3B,+CAAmC,CAAA;IACnC,uEAA2D,CAAA;AAC7D,CAAC,EAfW,QAAQ,KAAR,QAAQ,QAenB;AAGD,MAAM,CAAN,IAAY,UAGX;AAHD,WAAY,UAAU;IACpB,qCAAuB,CAAA;IACvB,+DAAiD,CAAA;AACnD,CAAC,EAHW,UAAU,KAAV,UAAU,QAGrB;AA2QD,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,wCAAuB,CAAA;IACvB,oCAAmB,CAAA;AACrB,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lifi/widget",
|
|
3
|
-
"version": "3.25.0
|
|
3
|
+
"version": "3.25.0",
|
|
4
4
|
"description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/esm/index.js",
|
|
@@ -34,11 +34,11 @@
|
|
|
34
34
|
"@bigmi/core": "^0.4.2",
|
|
35
35
|
"@emotion/react": "^11.14.0",
|
|
36
36
|
"@emotion/styled": "^11.14.1",
|
|
37
|
-
"@lifi/sdk": "^3.8.
|
|
37
|
+
"@lifi/sdk": "^3.8.7",
|
|
38
38
|
"@mui/icons-material": "^7.2.0",
|
|
39
39
|
"@mui/material": "^7.2.0",
|
|
40
40
|
"@mui/system": "^7.2.0",
|
|
41
|
-
"@mysten/sui": "^1.36.
|
|
41
|
+
"@mysten/sui": "^1.36.2",
|
|
42
42
|
"@solana/wallet-adapter-base": "^0.9.27",
|
|
43
43
|
"@solana/wallet-adapter-coinbase": "^0.1.23",
|
|
44
44
|
"@solana/web3.js": "^1.98.2",
|
|
@@ -52,7 +52,7 @@
|
|
|
52
52
|
"react-transition-group": "^4.4.5",
|
|
53
53
|
"viem": "^2.33.0",
|
|
54
54
|
"zustand": "^5.0.6",
|
|
55
|
-
"@lifi/wallet-management": "^3.13.0
|
|
55
|
+
"@lifi/wallet-management": "^3.13.0"
|
|
56
56
|
},
|
|
57
57
|
"peerDependencies": {
|
|
58
58
|
"@bigmi/react": ">=0.4.0",
|
package/package.json.tmp
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lifi/widget",
|
|
3
|
-
"version": "3.25.0
|
|
3
|
+
"version": "3.25.0",
|
|
4
4
|
"description": "LI.FI Widget for cross-chain bridging and swapping. It will drive your multi-chain strategy and attract new users from everywhere.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./src/index.ts",
|
|
@@ -53,12 +53,12 @@
|
|
|
53
53
|
"@bigmi/core": "^0.4.2",
|
|
54
54
|
"@emotion/react": "^11.14.0",
|
|
55
55
|
"@emotion/styled": "^11.14.1",
|
|
56
|
-
"@lifi/sdk": "^3.8.
|
|
56
|
+
"@lifi/sdk": "^3.8.7",
|
|
57
57
|
"@lifi/wallet-management": "workspace:^",
|
|
58
58
|
"@mui/icons-material": "^7.2.0",
|
|
59
59
|
"@mui/material": "^7.2.0",
|
|
60
60
|
"@mui/system": "^7.2.0",
|
|
61
|
-
"@mysten/sui": "^1.36.
|
|
61
|
+
"@mysten/sui": "^1.36.2",
|
|
62
62
|
"@solana/wallet-adapter-base": "^0.9.27",
|
|
63
63
|
"@solana/wallet-adapter-coinbase": "^0.1.23",
|
|
64
64
|
"@solana/web3.js": "^1.98.2",
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
ListItem as ListItemBase,
|
|
3
|
+
listItemButtonClasses,
|
|
3
4
|
listItemTextClasses,
|
|
4
5
|
Avatar as MuiAvatar,
|
|
5
6
|
List as MuiList,
|
|
@@ -7,7 +8,7 @@ import {
|
|
|
7
8
|
ListItemText as MuiListItemText,
|
|
8
9
|
styled,
|
|
9
10
|
} from '@mui/material'
|
|
10
|
-
import { ListItemButton as ListItemButtonBase } from '../
|
|
11
|
+
import { ListItemButton as ListItemButtonBase } from '../ListItemButton.js'
|
|
11
12
|
|
|
12
13
|
export const Avatar = styled(MuiAvatar)<{
|
|
13
14
|
size?: 'small' | 'medium'
|
|
@@ -28,6 +29,9 @@ export const ListItemText = styled(MuiListItemText)<{
|
|
|
28
29
|
[`.${listItemTextClasses.primary}`]: {
|
|
29
30
|
fontWeight: 500,
|
|
30
31
|
fontSize: size === 'small' ? '1rem' : '1.125rem',
|
|
32
|
+
textOverflow: 'ellipsis',
|
|
33
|
+
overflow: 'hidden',
|
|
34
|
+
whiteSpace: 'nowrap',
|
|
31
35
|
},
|
|
32
36
|
}))
|
|
33
37
|
|
|
@@ -38,6 +42,7 @@ export const ListItemButton = styled(ListItemButtonBase)<{
|
|
|
38
42
|
borderRadius: theme.vars.shape.borderRadius,
|
|
39
43
|
paddingLeft: size === 'small' ? theme.spacing(1) : theme.spacing(1.5),
|
|
40
44
|
height: size === 'small' ? 44 : 56,
|
|
45
|
+
width: '100%',
|
|
41
46
|
}
|
|
42
47
|
})
|
|
43
48
|
|
|
@@ -52,8 +57,11 @@ export const List = styled(MuiList)(({ theme }) => ({
|
|
|
52
57
|
cursor: 'pointer',
|
|
53
58
|
}))
|
|
54
59
|
|
|
55
|
-
export const ListItem = styled(ListItemBase)(() => ({
|
|
60
|
+
export const ListItem = styled(ListItemBase)(({ theme }) => ({
|
|
56
61
|
position: 'absolute',
|
|
57
62
|
top: 0,
|
|
58
63
|
left: 0,
|
|
64
|
+
[`& .${listItemButtonClasses.root}`]: {
|
|
65
|
+
paddingRight: theme.spacing(1),
|
|
66
|
+
},
|
|
59
67
|
}))
|
|
@@ -17,8 +17,7 @@ interface ChainListProps {
|
|
|
17
17
|
onSelect: (chain: ExtendedChain) => void
|
|
18
18
|
selectedChainId?: number
|
|
19
19
|
isLoading: boolean
|
|
20
|
-
|
|
21
|
-
adjustForStickySearchInput?: boolean
|
|
20
|
+
inExpansion: boolean
|
|
22
21
|
}
|
|
23
22
|
|
|
24
23
|
export const ChainList = ({
|
|
@@ -27,11 +26,12 @@ export const ChainList = ({
|
|
|
27
26
|
onSelect,
|
|
28
27
|
selectedChainId,
|
|
29
28
|
isLoading,
|
|
30
|
-
|
|
31
|
-
adjustForStickySearchInput,
|
|
29
|
+
inExpansion,
|
|
32
30
|
}: ChainListProps) => {
|
|
33
31
|
const { t } = useTranslation()
|
|
34
32
|
|
|
33
|
+
const itemsSize = inExpansion ? 'small' : 'medium'
|
|
34
|
+
|
|
35
35
|
if (isLoading) {
|
|
36
36
|
return (
|
|
37
37
|
<List disablePadding sx={{ cursor: 'default' }}>
|
|
@@ -69,7 +69,7 @@ export const ChainList = ({
|
|
|
69
69
|
return (
|
|
70
70
|
<SearchNotFound
|
|
71
71
|
message={t('info.message.emptyChainList')}
|
|
72
|
-
adjustForStickySearchInput={
|
|
72
|
+
adjustForStickySearchInput={!inExpansion}
|
|
73
73
|
/>
|
|
74
74
|
)
|
|
75
75
|
}
|
|
@@ -81,6 +81,7 @@ export const ChainList = ({
|
|
|
81
81
|
onSelect={onSelect}
|
|
82
82
|
selectedChainId={selectedChainId}
|
|
83
83
|
itemsSize={itemsSize}
|
|
84
|
+
withPinnedChains={inExpansion}
|
|
84
85
|
/>
|
|
85
86
|
)
|
|
86
87
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { ExtendedChain } from '@lifi/sdk'
|
|
2
|
+
import { Box } from '@mui/material'
|
|
2
3
|
import { memo } from 'react'
|
|
3
4
|
import {
|
|
4
5
|
Avatar,
|
|
@@ -7,6 +8,7 @@ import {
|
|
|
7
8
|
ListItemButton,
|
|
8
9
|
ListItemText,
|
|
9
10
|
} from './ChainList.style'
|
|
11
|
+
import { PinChainButton, pinButtonClassName } from './PinChainButton'
|
|
10
12
|
|
|
11
13
|
interface ChainListItemProps {
|
|
12
14
|
chain: ExtendedChain
|
|
@@ -15,6 +17,9 @@ interface ChainListItemProps {
|
|
|
15
17
|
itemsSize: 'small' | 'medium'
|
|
16
18
|
size: number
|
|
17
19
|
start: number
|
|
20
|
+
isPinned: boolean
|
|
21
|
+
onPin: (chainId: number) => void
|
|
22
|
+
withPin: boolean
|
|
18
23
|
}
|
|
19
24
|
|
|
20
25
|
export const ChainListItem = memo(
|
|
@@ -25,6 +30,9 @@ export const ChainListItem = memo(
|
|
|
25
30
|
itemsSize,
|
|
26
31
|
size,
|
|
27
32
|
start,
|
|
33
|
+
isPinned,
|
|
34
|
+
onPin,
|
|
35
|
+
withPin,
|
|
28
36
|
}: ChainListItemProps) => {
|
|
29
37
|
return (
|
|
30
38
|
<ListItem
|
|
@@ -32,6 +40,13 @@ export const ChainListItem = memo(
|
|
|
32
40
|
height: `${size}px`,
|
|
33
41
|
transform: `translateY(${start}px)`,
|
|
34
42
|
padding: 0,
|
|
43
|
+
overflow: 'hidden',
|
|
44
|
+
}}
|
|
45
|
+
sx={{
|
|
46
|
+
[`&:hover .${pinButtonClassName}`]: {
|
|
47
|
+
opacity: 1,
|
|
48
|
+
transform: 'translateY(0)',
|
|
49
|
+
},
|
|
35
50
|
}}
|
|
36
51
|
>
|
|
37
52
|
<ListItemButton
|
|
@@ -45,6 +60,20 @@ export const ChainListItem = memo(
|
|
|
45
60
|
</Avatar>
|
|
46
61
|
</ListItemAvatar>
|
|
47
62
|
<ListItemText primary={chain.name} size={itemsSize} />
|
|
63
|
+
{withPin && (
|
|
64
|
+
<Box
|
|
65
|
+
style={{
|
|
66
|
+
position: 'relative',
|
|
67
|
+
height: 28,
|
|
68
|
+
width: 28,
|
|
69
|
+
}}
|
|
70
|
+
>
|
|
71
|
+
<PinChainButton
|
|
72
|
+
isPinned={isPinned}
|
|
73
|
+
onPin={() => onPin(chain.id)}
|
|
74
|
+
/>
|
|
75
|
+
</Box>
|
|
76
|
+
)}
|
|
48
77
|
</ListItemButton>
|
|
49
78
|
</ListItem>
|
|
50
79
|
)
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import PushPinIcon from '@mui/icons-material/PushPin'
|
|
2
|
+
import PushPinOutlinedIcon from '@mui/icons-material/PushPinOutlined'
|
|
3
|
+
import { IconButton } from '@mui/material'
|
|
4
|
+
|
|
5
|
+
interface PinChainButtonProps {
|
|
6
|
+
isPinned: boolean
|
|
7
|
+
onPin: () => void
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
export const pinButtonClassName = 'pin-button'
|
|
11
|
+
const animationDuration = 225
|
|
12
|
+
|
|
13
|
+
export const PinChainButton = ({ isPinned, onPin }: PinChainButtonProps) => {
|
|
14
|
+
const PinIcon = isPinned ? PushPinIcon : PushPinOutlinedIcon
|
|
15
|
+
return (
|
|
16
|
+
<IconButton
|
|
17
|
+
className={pinButtonClassName}
|
|
18
|
+
edge="end"
|
|
19
|
+
aria-label="pin"
|
|
20
|
+
onClick={(e) => {
|
|
21
|
+
e.stopPropagation()
|
|
22
|
+
onPin()
|
|
23
|
+
}}
|
|
24
|
+
sx={{
|
|
25
|
+
position: 'absolute',
|
|
26
|
+
top: 0,
|
|
27
|
+
left: 0,
|
|
28
|
+
height: 28,
|
|
29
|
+
width: 28,
|
|
30
|
+
transition: `opacity ${animationDuration}ms cubic-bezier(0.4, 0, 0.2, 1), transform ${animationDuration}ms cubic-bezier(0.4, 0, 0.2, 1)`,
|
|
31
|
+
...(isPinned
|
|
32
|
+
? {
|
|
33
|
+
opacity: 1,
|
|
34
|
+
transform: 'translateY(0)',
|
|
35
|
+
}
|
|
36
|
+
: {
|
|
37
|
+
opacity: 0,
|
|
38
|
+
transform: 'translateY(-50%)',
|
|
39
|
+
}),
|
|
40
|
+
}}
|
|
41
|
+
>
|
|
42
|
+
<PinIcon
|
|
43
|
+
sx={{
|
|
44
|
+
height: 20,
|
|
45
|
+
width: 20,
|
|
46
|
+
color: 'text.secondary',
|
|
47
|
+
}}
|
|
48
|
+
/>
|
|
49
|
+
</IconButton>
|
|
50
|
+
)
|
|
51
|
+
}
|
|
@@ -30,31 +30,28 @@ export const SelectChainContent: React.FC<SelectChainContentProps> = memo(
|
|
|
30
30
|
)
|
|
31
31
|
const inputRef = useRef<HTMLInputElement>(null)
|
|
32
32
|
const listRef = useRef<HTMLDivElement>(null)
|
|
33
|
-
const [
|
|
34
|
-
|
|
35
|
-
)
|
|
33
|
+
const [debouncedSearchValue, setDebouncedSearchValue] = useState('')
|
|
34
|
+
|
|
35
|
+
const filteredChains = useMemo(() => {
|
|
36
|
+
const value = debouncedSearchValue.toLowerCase()
|
|
37
|
+
return value
|
|
38
|
+
? (chains?.filter((chain) =>
|
|
39
|
+
chain.name.toLowerCase().includes(value)
|
|
40
|
+
) ?? [])
|
|
41
|
+
: (chains ?? [])
|
|
42
|
+
}, [chains, debouncedSearchValue])
|
|
36
43
|
|
|
37
44
|
const scrollToTop = useCallback(() => {
|
|
38
45
|
// Scroll widget container to top
|
|
39
46
|
if (!inExpansion && scrollableContainer) {
|
|
40
47
|
scrollableContainer.scrollTop = 0
|
|
41
48
|
}
|
|
42
|
-
// Scroll chain list to top
|
|
43
|
-
if (inExpansion && listRef.current) {
|
|
44
|
-
listRef.current.scrollTop = 0
|
|
45
|
-
}
|
|
46
49
|
}, [inExpansion, scrollableContainer])
|
|
47
50
|
|
|
48
51
|
const debouncedFilterChains = useMemo(
|
|
49
52
|
() =>
|
|
50
|
-
debounce((
|
|
51
|
-
|
|
52
|
-
const filtered = value
|
|
53
|
-
? chains?.filter((chain) =>
|
|
54
|
-
chain.name.toLowerCase().includes(value)
|
|
55
|
-
)
|
|
56
|
-
: chains
|
|
57
|
-
setFilteredChains(filtered ?? [])
|
|
53
|
+
debounce((value: string) => {
|
|
54
|
+
setDebouncedSearchValue(value)
|
|
58
55
|
scrollToTop()
|
|
59
56
|
}, 250),
|
|
60
57
|
[scrollToTop]
|
|
@@ -68,13 +65,14 @@ export const SelectChainContent: React.FC<SelectChainContentProps> = memo(
|
|
|
68
65
|
)
|
|
69
66
|
|
|
70
67
|
const onChange = useCallback(() => {
|
|
71
|
-
|
|
72
|
-
|
|
68
|
+
const value = inputRef.current?.value || ''
|
|
69
|
+
debouncedFilterChains(value)
|
|
70
|
+
}, [debouncedFilterChains])
|
|
73
71
|
|
|
74
72
|
const onClear = useCallback(() => {
|
|
75
|
-
|
|
73
|
+
setDebouncedSearchValue('')
|
|
76
74
|
scrollToTop()
|
|
77
|
-
}, [
|
|
75
|
+
}, [scrollToTop])
|
|
78
76
|
|
|
79
77
|
const listContainerHeight = useMemo(() => {
|
|
80
78
|
const fullContainerHeight = getWidgetMaxHeight(theme)
|
|
@@ -106,8 +104,7 @@ export const SelectChainContent: React.FC<SelectChainContentProps> = memo(
|
|
|
106
104
|
isLoading={isLoading}
|
|
107
105
|
onSelect={onSelect ?? onSelectChainFallback}
|
|
108
106
|
selectedChainId={selectedChainId}
|
|
109
|
-
|
|
110
|
-
adjustForStickySearchInput={!inExpansion}
|
|
107
|
+
inExpansion={inExpansion}
|
|
111
108
|
/>
|
|
112
109
|
</Box>
|
|
113
110
|
</FullPageContainer>
|