@ape.swap/bonds-sdk 1.0.531 → 1.0.533
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/components/BondMenu/BondMenu.js +1 -6
- package/dist/components/BondMenu/useChainFilterOption.js +8 -5
- package/dist/components/BondRows/BondRowHeader.d.ts +2 -0
- package/dist/components/BondRows/BondRowHeader.js +2 -4
- package/dist/pages/Bonds/Bonds.js +14 -6
- package/dist/scss/BondMenu.scss +7 -1
- package/package.json +1 -1
|
@@ -23,13 +23,8 @@ var BondMenu = function (_a) {
|
|
|
23
23
|
var handleFilterSelection = useCallback(function (newOption) {
|
|
24
24
|
setChainFilterOption(['All Chains']);
|
|
25
25
|
setFilterOption(newOption);
|
|
26
|
-
// Update the URL without reloading the page
|
|
27
|
-
var urlParams = new URLSearchParams(window.location.search);
|
|
28
|
-
urlParams.set('filter', newOption);
|
|
29
|
-
var newUrl = "".concat(window.location.pathname, "?").concat(urlParams.toString());
|
|
30
|
-
window.history.replaceState(null, '', newUrl);
|
|
31
26
|
}, [setChainFilterOption, setFilterOption]);
|
|
32
|
-
return (_jsxs(Flex, { className: "menu-container filters", children: [_jsx(Flex, { className: "filters desktop-rec", sx: { display: ['none', 'none', 'none', 'flex'], mr: '20px' }, children: _jsx(RecommendationSelector, { options: filterOptions, activeOption: filterOption, setActiveOption: handleFilterSelection }) }), _jsx(Flex, { className: "filtesr mobile-rec", sx: { display: ['flex', 'flex', 'flex', 'none'], width: '100%' }, children: _jsx(MenuSelect, { selectedOption: filterOption, setOption: setFilterOption, options: mappedFilters, sx: { background: 'white2' } }) }), _jsx(Flex, { className: "filters network", sx: { width: ['49%', '49%', '49%', 'unset'], minWidth: '120px' }, children: _jsx(NetworkFilter, { chainFilterOption: chainFilterOption, setChainFilterOption: setChainFilterOption }) }), _jsxs(Flex, { sx: {
|
|
27
|
+
return (_jsxs(Flex, { className: "menu-container filters", children: [_jsx(Flex, { className: "filters desktop-rec", sx: { display: ['none', 'none', 'none', 'flex'], mr: '20px' }, children: _jsx(RecommendationSelector, { options: filterOptions, activeOption: filterOption, setActiveOption: handleFilterSelection }) }), _jsx(Flex, { className: "filtesr mobile-rec", sx: { display: ['flex', 'flex', 'flex', 'none'], width: '100%' }, children: _jsx(MenuSelect, { selectedOption: filterOption, setOption: setFilterOption, options: mappedFilters, sx: { background: 'white2' } }) }), _jsx(Flex, { className: "filters network", sx: { width: ['49%', '49%', '49%', 'unset'], minWidth: '120px' }, children: _jsx(NetworkFilter, { chainFilterOption: chainFilterOption, setChainFilterOption: setChainFilterOption }) }), _jsxs(Flex, { className: "filters clear-all", sx: {
|
|
33
28
|
display: ['none', 'none', 'none', 'flex'],
|
|
34
29
|
color: 'textDisabledButton',
|
|
35
30
|
fontSize: '14px',
|
|
@@ -2,6 +2,7 @@ import { useQuery, useQueryClient } from '@tanstack/react-query';
|
|
|
2
2
|
import { QUERY_KEYS } from '../../config/constants/queryKeys';
|
|
3
3
|
import useCookie from '../../hooks/useCookie';
|
|
4
4
|
import { useCallback } from 'react';
|
|
5
|
+
// import { useRouter } from 'next/router'
|
|
5
6
|
export default function useChainFilterOption() {
|
|
6
7
|
var _a;
|
|
7
8
|
var _b = useCookie(QUERY_KEYS.CHAIN_FILTER_OPTION, ['All Chains']), cookie = _b.cookie, updateCookie = _b.updateCookie;
|
|
@@ -10,17 +11,19 @@ export default function useChainFilterOption() {
|
|
|
10
11
|
queryFn: function () { return cookie; },
|
|
11
12
|
initialData: cookie,
|
|
12
13
|
}).data;
|
|
13
|
-
var
|
|
14
|
+
var asPath = window.location.href;
|
|
15
|
+
var query = new URLSearchParams(window.location.search);
|
|
16
|
+
var pathname = window.location.pathname;
|
|
17
|
+
var urlParams = typeof window !== 'undefined' ? new URLSearchParams(new URL(asPath).search) : null;
|
|
14
18
|
var urlChain = (_a = urlParams === null || urlParams === void 0 ? void 0 : urlParams.get('chain')) !== null && _a !== void 0 ? _a : '';
|
|
15
19
|
var queryClient = useQueryClient();
|
|
16
20
|
var removeURLChain = useCallback(function () {
|
|
17
21
|
if (urlChain) {
|
|
18
22
|
console.log('remove url');
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
window.history.replaceState(null, '', newUrl);
|
|
23
|
+
query.delete('chain');
|
|
24
|
+
window.history.replaceState(null, '', "".concat(pathname, "?").concat(query.toString()));
|
|
22
25
|
}
|
|
23
|
-
}, [urlChain,
|
|
26
|
+
}, [urlChain, pathname, query]);
|
|
24
27
|
var setChainFilterOption = useCallback(function (newValue) {
|
|
25
28
|
updateCookie(newValue);
|
|
26
29
|
queryClient.setQueryData(["".concat(QUERY_KEYS.CHAIN_FILTER_OPTION)], newValue);
|
|
@@ -3,6 +3,8 @@ import React from 'react';
|
|
|
3
3
|
import '../../scss/BondRowHeader.scss';
|
|
4
4
|
interface BondRowHeaderProps {
|
|
5
5
|
inputValue: string;
|
|
6
|
+
setChainFilterOption: (newValue: string[]) => void;
|
|
7
|
+
chainFilterOption: string[];
|
|
6
8
|
filterOptions: string[];
|
|
7
9
|
filterOption: string;
|
|
8
10
|
setFilterOption: (newOption: string) => void;
|
|
@@ -7,23 +7,21 @@ import { Svg, TooltipBubble } from '../uikit-sdk';
|
|
|
7
7
|
import { TooltipText } from '../../enum/tooltips';
|
|
8
8
|
import '../../scss/BondRowHeader.scss';
|
|
9
9
|
import BondMenu from '../BondMenu/BondMenu';
|
|
10
|
-
import useChainFilterOption from '../BondMenu/useChainFilterOption';
|
|
11
10
|
var BondRowHeader = function (_a) {
|
|
12
|
-
var inputValue = _a.inputValue, filterOptions = _a.filterOptions, filterOption = _a.filterOption, setFilterOption = _a.setFilterOption, onInputChange = _a.onInputChange, onSort = _a.onSort;
|
|
11
|
+
var inputValue = _a.inputValue, setChainFilterOption = _a.setChainFilterOption, chainFilterOption = _a.chainFilterOption, filterOptions = _a.filterOptions, filterOption = _a.filterOption, setFilterOption = _a.setFilterOption, onInputChange = _a.onInputChange, onSort = _a.onSort;
|
|
13
12
|
var mappedFilters = filterOptions.map(function (filter) {
|
|
14
13
|
return {
|
|
15
14
|
label: filter.charAt(0).toUpperCase() + filter.slice(1).toLowerCase(),
|
|
16
15
|
value: filter,
|
|
17
16
|
};
|
|
18
17
|
});
|
|
19
|
-
var _b = useChainFilterOption(), chainFilterOption = _b.data, setChainFilterOption = _b.setChainFilterOption;
|
|
20
18
|
var handleChangeFilterOption = useCallback(function (newOption) {
|
|
21
19
|
setFilterOption(newOption);
|
|
22
20
|
}, []);
|
|
23
21
|
var handleChangeChainFilterOption = useCallback(function (newOptions) {
|
|
24
22
|
setChainFilterOption(newOptions);
|
|
25
23
|
}, [setChainFilterOption]);
|
|
26
|
-
var
|
|
24
|
+
var _b = useState(''), searchQuery = _b[0], setSearchQuery = _b[1];
|
|
27
25
|
var handleChangeQuery = useCallback(function (event) {
|
|
28
26
|
setSearchQuery(event.target.value);
|
|
29
27
|
setFilterOption('ALL');
|
|
@@ -58,6 +58,7 @@ import '../../scss/Bonds.scss';
|
|
|
58
58
|
import BondRowHeader from '../../components/BondRows/BondRowHeader';
|
|
59
59
|
import BondRowsByChain from '../../components/BondRows/BondRowsByChain';
|
|
60
60
|
import { useTopTags } from '../../hooks/useTopThreeTags';
|
|
61
|
+
import useChainFilterOption from '../../components/BondMenu/useChainFilterOption';
|
|
61
62
|
var Bonds = function (_a) {
|
|
62
63
|
var account = _a.account, accountChainId = _a.accountChainId, isActive = _a.isActive;
|
|
63
64
|
//const { account, isActive } = useWeb3React();
|
|
@@ -221,9 +222,7 @@ var Bonds = function (_a) {
|
|
|
221
222
|
var topTags = useTopTags(sortedBonds);
|
|
222
223
|
var filterOptions = __spreadArray(__spreadArray(['ALL'], topTags, true), ['SOLD OUT'], false);
|
|
223
224
|
var _k = useState(filterOptions[0]), filterOption = _k[0], setFilterOption = _k[1];
|
|
224
|
-
var
|
|
225
|
-
setFilterOption(newOption);
|
|
226
|
-
}, []);
|
|
225
|
+
var _l = useChainFilterOption(), chainFilterOption = _l.data, setChainFilterOption = _l.setChainFilterOption;
|
|
227
226
|
var billstoRender = useMemo(function () {
|
|
228
227
|
var billsToReturn = sortedBonds !== null && sortedBonds !== void 0 ? sortedBonds : [];
|
|
229
228
|
if (inputValue) {
|
|
@@ -235,19 +234,28 @@ var Bonds = function (_a) {
|
|
|
235
234
|
if (topTags.includes(filterOption)) {
|
|
236
235
|
billsToReturn = billsToReturn === null || billsToReturn === void 0 ? void 0 : billsToReturn.filter(function (bill) { var _a; return (_a = bill === null || bill === void 0 ? void 0 : bill.tags) === null || _a === void 0 ? void 0 : _a.includes(filterOption); });
|
|
237
236
|
}
|
|
237
|
+
if (!(chainFilterOption === null || chainFilterOption === void 0 ? void 0 : chainFilterOption.includes('All Chains'))) {
|
|
238
|
+
billsToReturn = billsToReturn === null || billsToReturn === void 0 ? void 0 : billsToReturn.filter(function (bill) { return chainFilterOption === null || chainFilterOption === void 0 ? void 0 : chainFilterOption.includes(bill.chainId.toString()); });
|
|
239
|
+
}
|
|
238
240
|
// if (filterOption === 'FAVORITES') {
|
|
239
241
|
// billsToReturn = billsToReturn?.filter((bill) => favTokens.includes(bill.payoutTokenName.toLowerCase()))
|
|
240
242
|
// }
|
|
241
243
|
return billsToReturn;
|
|
242
244
|
//return sortBills(billsToReturn, sortOption)
|
|
243
|
-
}, [filterOption, bondData, inputValue, topTags]);
|
|
245
|
+
}, [filterOption, bondData, inputValue, chainFilterOption, topTags]);
|
|
246
|
+
var handleChangeFilterOption = useCallback(function (newOption) {
|
|
247
|
+
setFilterOption(newOption);
|
|
248
|
+
}, []);
|
|
249
|
+
var handleChangeChainFilterOption = useCallback(function (newOptions) {
|
|
250
|
+
setChainFilterOption(newOptions);
|
|
251
|
+
}, [setChainFilterOption]);
|
|
244
252
|
// Page render logic
|
|
245
|
-
var
|
|
253
|
+
var _m = useState(false), bondsRendered = _m[0], setBondsRendered = _m[1];
|
|
246
254
|
useEffect(function () {
|
|
247
255
|
if (billstoRender.length > 0) {
|
|
248
256
|
setBondsRendered(true);
|
|
249
257
|
}
|
|
250
258
|
}, [billstoRender]);
|
|
251
|
-
return (_jsxs(ThemeUIProvider, { theme: defaultTheme, children: [isActive && account && _jsx("p", { children: account }), isActive && account && _jsx("button", { onClick: handleApprove, children: "Approve USDT" }), _jsxs(Flex, { className: "container table-container", children: [_jsx(BondRowHeader, { inputValue: inputValue, filterOptions: filterOptions, filterOption: filterOption, setFilterOption: handleChangeFilterOption, onInputChange: handleInputChange, onSort: handleSort }), bondsRendered && (_jsx(BondRowsByChain, { bonds: billstoRender, hotBonds: hotBonds, hideTitles: inputValue !== '', rowClick: rowClick }))] })] }));
|
|
259
|
+
return (_jsxs(ThemeUIProvider, { theme: defaultTheme, children: [isActive && account && _jsx("p", { children: account }), isActive && account && _jsx("button", { onClick: handleApprove, children: "Approve USDT" }), _jsxs(Flex, { className: "container table-container", children: [_jsx(BondRowHeader, { inputValue: inputValue, setChainFilterOption: handleChangeChainFilterOption, chainFilterOption: chainFilterOption !== null && chainFilterOption !== void 0 ? chainFilterOption : ['All Chains'], filterOptions: filterOptions, filterOption: filterOption, setFilterOption: handleChangeFilterOption, onInputChange: handleInputChange, onSort: handleSort }), bondsRendered && (_jsx(BondRowsByChain, { bonds: billstoRender, hotBonds: hotBonds, hideTitles: inputValue !== '', rowClick: rowClick }))] })] }));
|
|
252
260
|
};
|
|
253
261
|
export default Bonds;
|
package/dist/scss/BondMenu.scss
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
|
|
9
9
|
.filters.network {
|
|
10
10
|
display: flex;
|
|
11
|
-
width:
|
|
11
|
+
width: 20%;
|
|
12
12
|
}
|
|
13
13
|
|
|
14
14
|
.filters.desktop-rec {
|
|
@@ -21,4 +21,10 @@
|
|
|
21
21
|
display: flex;
|
|
22
22
|
width: 100%;
|
|
23
23
|
justify-content: end;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
.filters.clear-all {
|
|
27
|
+
display: flex;
|
|
28
|
+
align-items: center;
|
|
29
|
+
width: 13%;
|
|
24
30
|
}
|