@riosst100/pwa-marketplace 1.8.0 → 1.8.1

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@riosst100/pwa-marketplace",
3
3
  "author": "riosst100@gmail.com",
4
- "version": "1.8.0",
4
+ "version": "1.8.1",
5
5
  "main": "src/index.js",
6
6
  "pwa-studio": {
7
7
  "targets": {
@@ -20,20 +20,14 @@ const LegoSets = props => {
20
20
  const { location } = globalThis;
21
21
 
22
22
  const query = new URLSearchParams(location.search);
23
- const activeParam = query.get('active_tab') || null;
24
23
 
25
24
  const [active, setActive] = useState('all');
26
25
  const [activeTab, setActiveTab] = useState('all');
27
- const [activeFilter, setActiveFilter] = useState('Major Baseball League');
28
26
 
29
27
  const [searchQuery, setSearchQuery] = useState('');
30
-
31
- let availableLeagues = [];
32
- let availableBrands = [];
33
28
 
34
29
  const shopby = query.get('shopby') || null;
35
30
  const setType = query.get('set_type') || null;
36
- const brandsFilter = query.get('sc_brands[filter]') || null;
37
31
 
38
32
  let defaultSort = {
39
33
  sortText: 'All (A-Z)',
@@ -57,25 +51,25 @@ const LegoSets = props => {
57
51
  // Sorting
58
52
  const sortProps = useCustomSort({ sortFromSearch: false, defaultSort: defaultSort});
59
53
  const [currentSort] = sortProps;
60
- const [sortBy, setSortBy] = useState({
61
- sortText: 'All (A-Z)',
62
- value: 'all'
63
- });
64
-
65
- let availableSortBy = [
66
- {
67
- 'label': 'All (A-Z)',
68
- 'value': 'all'
69
- },
70
- {
71
- 'label': 'By Year',
72
- 'value': 'newest'
73
- }
74
- ];
54
+ // const [sortBy, setSortBy] = useState({
55
+ // sortText: 'All (A-Z)',
56
+ // value: 'all'
57
+ // });
58
+
59
+ // let availableSortBy = [
60
+ // {
61
+ // 'label': 'All (A-Z)',
62
+ // 'value': 'all'
63
+ // },
64
+ // {
65
+ // 'label': 'By Year',
66
+ // 'value': 'newest'
67
+ // }
68
+ // ];
75
69
 
76
70
  const classes = useStyle(defaultClasses);
77
71
 
78
- const talonProps = useLegoSets({ searchQuery, setActive, currentSort, shopby, setType, categoryId, activeTab, activeFilter });
72
+ const talonProps = useLegoSets({ searchQuery, setActive, currentSort, shopby, setType, categoryId, activeTab });
79
73
 
80
74
  const { error, loading, legoSets, categoryUrlSuffix, categoryUrlKey, productType, filteredLegoSets, availableGroups, category } = talonProps;
81
75
 
@@ -96,48 +90,11 @@ const LegoSets = props => {
96
90
  legoSets.map((setRelease, index) => {
97
91
  const { group, sets } = setRelease;
98
92
 
99
- // if (sets.length) {
100
- // sets.map((set, index) => {
101
- // // console.log(set)
102
- // if (set.sc_league) {
103
- // if (!availableLeagues.includes(set.sc_league)) {
104
- // availableLeagues.push(set.sc_league)
105
- // }
106
- // }
107
- // })
108
- // }
109
-
110
93
  setsLengthArr[group] = sets.length
111
94
  })
112
95
  }
113
96
  // }, [legoSets])
114
97
 
115
- if (legoSets && legoSets.length) {
116
- legoSets.map((setRelease, index) => {
117
- const { group, sets } = setRelease;
118
- if (active == 'all' || active != "all" && active == group) {
119
- if (sets.length) {
120
- sets.map((set, index) => {
121
- // console.log(set)
122
- if (set.sc_league) {
123
- if (!availableLeagues.includes(set.sc_league)) {
124
- availableLeagues.push(set.sc_league)
125
- }
126
- }
127
-
128
- if (set.sc_brands) {
129
- if (!availableBrands.includes(set.sc_brands)) {
130
- availableBrands.push(set.sc_brands)
131
- }
132
- }
133
-
134
- // availableBrands
135
- })
136
- }
137
- }
138
- })
139
- }
140
-
141
98
  const splitToNChunks = (array, n) => {
142
99
  let result = [];
143
100
  for (let i = n; i > 0; i--) {
@@ -156,7 +113,7 @@ const LegoSets = props => {
156
113
  const { set_name, option_id, release_year } = set;
157
114
 
158
115
  const categoryUrl = resourceUrl(
159
- `/${category?.url_path}${categoryUrlSuffix || ''}?sc_${category?.url_key}_release[filter]=${set_name},${option_id}`
116
+ `/${category?.url_path}${categoryUrlSuffix || ''}?lego_set_name[filter]=${set_name},${option_id}`
160
117
  );
161
118
 
162
119
  setsResult.push(<li className='list-none'>
@@ -196,11 +153,6 @@ const LegoSets = props => {
196
153
  const handleActive = (val) => {
197
154
  setActive(val);
198
155
 
199
- availableLeagues = [];
200
-
201
- setActiveFilter('Major Baseball League')
202
-
203
-
204
156
  setSearchQuery('')
205
157
  }
206
158
 
@@ -209,11 +161,9 @@ const LegoSets = props => {
209
161
 
210
162
  setSearchQuery('')
211
163
  }
212
-
213
- const handleActiveFilter = (val) => {
214
- setActiveFilter(val);
215
-
216
- setSearchQuery('')
164
+ const handleSearchQuery = (val) => {
165
+ setSearchQuery(val)
166
+ setActive('all')
217
167
  }
218
168
 
219
169
  let alpha = ['#', 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z'];
@@ -277,7 +227,7 @@ const LegoSets = props => {
277
227
  <div
278
228
  className={classes.toolbar}
279
229
  >
280
- <div style={{"width":"35%"}}><ArraySearchInput active={active} searchQuery={searchQuery} placeholder="Search sets..." isOpen={true} setSearchQuery={setSearchQuery} /></div>
230
+ <div style={{"width":"35%"}}><ArraySearchInput active={active} searchQuery={searchQuery} placeholder="Search sets..." isOpen={true} setSearchQuery={handleSearchQuery} /></div>
281
231
  {/* <CustomSortBy sortProps={sortProps} availableSortMethods={availableSortBy} /> */}
282
232
  </div>
283
233
  ) : ''}
@@ -324,7 +274,6 @@ const LegoSets = props => {
324
274
  </div>
325
275
  </Fragment>
326
276
  );
327
- return '';
328
277
  }
329
278
 
330
279
  export default LegoSets;
@@ -1,8 +1,8 @@
1
1
  import { gql } from '@apollo/client';
2
2
 
3
3
  export const GET_CUSTOM_FILTERS = gql`
4
- query GetCustomFilters($filters: ProductAttributeFilterInput!) {
5
- customSubFilters(filters: $filters) {
4
+ query GetCustomFilters($categoryUrlKey: String!, $filters: ProductAttributeFilterInput!) {
5
+ customSubFilters(categoryUrlKey: $categoryUrlKey, filters: $filters) {
6
6
  label
7
7
  count
8
8
  attribute_code
@@ -40,6 +40,10 @@ export const useFilterTop = props => {
40
40
  const history = useHistory();
41
41
  const { pathname, search } = useLocation();
42
42
 
43
+ const pathnameArr = pathname.split('/');
44
+
45
+ const categoryUrlKey = pathnameArr[pathnameArr.length - 1].replace('.html','');
46
+
43
47
  const { data: introspectionData } = useQuery(getFilterInputsQuery);
44
48
 
45
49
  const filterTypeMap = useMemo(() => {
@@ -72,7 +76,8 @@ export const useFilterTop = props => {
72
76
 
73
77
  runQuery({
74
78
  variables: {
75
- filters: newFilters
79
+ filters: newFilters,
80
+ categoryUrlKey: categoryUrlKey
76
81
  }
77
82
  });
78
83
  }, [
@@ -12,8 +12,8 @@ export const GET_STORE_CONFIG_DATA = gql`
12
12
  `;
13
13
 
14
14
  export const GET_LEGO_SETS_QUERY = gql`
15
- query getLegoSets($categoryUrlKey: String!, $setType: String, $filters: ProductAttributeFilterInput!) {
16
- legoSets(categoryUrlKey: $categoryUrlKey, setType: $setType, filters: $filters) {
15
+ query getLegoSets($categoryUrlKey: String!, $activeTab: String, $filters: ProductAttributeFilterInput!) {
16
+ legoSets(categoryUrlKey: $categoryUrlKey, activeTab: $activeTab, filters: $filters) {
17
17
  group
18
18
  sets {
19
19
  set_name
@@ -138,44 +138,8 @@ export const useLegoSets = props => {
138
138
  return null;
139
139
  }
140
140
 
141
- const sortbyData = [];
142
- // if (activeTab == 'year') {
143
-
144
- // console.log(legoSets)
145
- if (legoSets) {
146
- legoSets.map((setRelease, index) => {
147
- const { group, sets } = setRelease;
148
- if (sets.length) {
149
- sets.map((set, index) => {
150
- const { release_year, sc_league } = set;
151
- if (sc_league) {
152
- if (!availableLeagues.includes(sc_league)) {
153
- availableLeagues.push(sc_league);
154
- }
155
- }
156
- // if (release_year) {
157
- // // groupingSetsByYear.splice(release_year, 0, set);
158
- // const result = sortbyData.find(item => item.group === release_year);
159
-
160
- // // groupingSetsByYear[release_year] = set;
161
- // if (result) {
162
- // result.sets.push(set)
163
- // } else {
164
- // // if (sortby == "date" || sortby == "newest" && sortbyData.length < 2) {
165
- // sortbyData.push({
166
- // 'group': release_year,
167
- // 'sets': [set]
168
- // })
169
- // // }
170
- // }
171
- // }
172
- })
173
- }
174
- })
175
- }
176
-
177
141
  return legoSets.slice().sort((a, b) =>a.group.toLowerCase().localeCompare(b.group.toLowerCase()));
178
- }, [queryResponse, activeTab]);
142
+ }, [queryResponse]);
179
143
 
180
144
  const availableGroups = legoSets && legoSets.length ? legoSets.map(({ group }) => group) : [];
181
145
 
@@ -192,7 +156,9 @@ export const useLegoSets = props => {
192
156
 
193
157
  if (searchQuery) {
194
158
 
195
- setActive('all')
159
+ // useEffect(() => {
160
+ // setActive('all')
161
+ // }, [active]);
196
162
 
197
163
  legoSets.map(({ group, sets }, index) => {
198
164
  const newSets = sets.filter(function(set) {
@@ -209,24 +175,8 @@ export const useLegoSets = props => {
209
175
  })
210
176
  }
211
177
 
212
- if (activeFilter && activeFilter != "all") {
213
- legoSets.map(({ group, sets }, index) => {
214
- const newSets = sets.filter(function(set) {
215
- return set.sc_league == activeFilter;
216
- // return set.set_name.includes(searchQuery);
217
- });
218
-
219
- if (newSets && newSets.length) {
220
- filteredSets.push({
221
- 'group': group,
222
- 'sets': newSets
223
- })
224
- }
225
- })
226
- }
227
-
228
- return searchQuery || activeFilter ? filteredSets : legoSets;
229
- }, [legoSets, searchQuery, sortby, activeFilter]);
178
+ return searchQuery ? filteredSets : legoSets;
179
+ }, [legoSets, searchQuery]);
230
180
 
231
181
  // useEffect(() => {
232
182
  // setPageLoading(isBackgroundLoading);