@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.
@@ -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 urlParams = typeof window !== 'undefined' ? new URLSearchParams(window.location.search) : null;
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
- urlParams === null || urlParams === void 0 ? void 0 : urlParams.delete('chain');
20
- var newUrl = "".concat(window.location.pathname, "?").concat(urlParams === null || urlParams === void 0 ? void 0 : urlParams.toString());
21
- window.history.replaceState(null, '', newUrl);
23
+ query.delete('chain');
24
+ window.history.replaceState(null, '', "".concat(pathname, "?").concat(query.toString()));
22
25
  }
23
- }, [urlChain, urlParams]);
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 _c = useState(''), searchQuery = _c[0], setSearchQuery = _c[1];
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 handleChangeFilterOption = useCallback(function (newOption) {
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 _l = useState(false), bondsRendered = _l[0], setBondsRendered = _l[1];
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;
@@ -8,7 +8,7 @@
8
8
 
9
9
  .filters.network {
10
10
  display: flex;
11
- width: 100%;
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
  }
package/package.json CHANGED
@@ -3,7 +3,7 @@
3
3
  "description": "Ape Bond SDK",
4
4
  "author": "Ape Bond",
5
5
  "license": "MIT",
6
- "version": "1.0.531",
6
+ "version": "1.0.533",
7
7
  "main": "dist/index.js",
8
8
  "module": "dist/index.es.js",
9
9
  "types": "dist/index.d.ts",