sr-npm 1.7.891 → 1.7.893
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
|
@@ -56,6 +56,14 @@ async function handleUrlParams(_$w,urlParams) {
|
|
|
56
56
|
try {
|
|
57
57
|
let applyFiltering=false;
|
|
58
58
|
let keyword=false
|
|
59
|
+
|
|
60
|
+
if(urlParams.keyword) {
|
|
61
|
+
applyFiltering=await primarySearch(_$w, decodeURIComponent(urlParams.keyword), alljobs);
|
|
62
|
+
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value=decodeURIComponent(urlParams.keyword);
|
|
63
|
+
keyword=true;
|
|
64
|
+
currentJobs=_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data;
|
|
65
|
+
}
|
|
66
|
+
|
|
59
67
|
if(urlParams.brand) {
|
|
60
68
|
applyFiltering=await handleParams(_$w,"brand",urlParams.brand)
|
|
61
69
|
}
|
|
@@ -65,17 +73,8 @@ async function handleUrlParams(_$w,urlParams) {
|
|
|
65
73
|
if(urlParams.category) {
|
|
66
74
|
applyFiltering=await handleParams(_$w,"category",urlParams.category)
|
|
67
75
|
}
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_INPUT).value=decodeURIComponent(urlParams.keyword);
|
|
71
|
-
keyword=true;
|
|
72
|
-
if(applyFiltering)
|
|
73
|
-
{
|
|
74
|
-
currentJobs=_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
}
|
|
78
|
-
if(applyFiltering) {
|
|
76
|
+
|
|
77
|
+
if(applyFiltering || keyword) {
|
|
79
78
|
await updateJobsAndNumbersAndFilters(_$w,false,keyword);
|
|
80
79
|
}
|
|
81
80
|
if(urlParams.page) {
|
|
@@ -297,7 +296,16 @@ async function loadJobsRepeater(_$w) {
|
|
|
297
296
|
|
|
298
297
|
function updateOptionsUI(_$w,fieldTitle, fieldId, searchQuery,clearAll=false) {
|
|
299
298
|
let base = optionsByFieldId.get(fieldId) || [];
|
|
299
|
+
console.log("base: ",base)
|
|
300
|
+
console.log("optionsByFieldId : ",optionsByFieldId)
|
|
301
|
+
console.log("countsByFieldId : ",countsByFieldId)
|
|
300
302
|
const countsMap = countsByFieldId.get(fieldId) || new Map();
|
|
303
|
+
console.log("countsMap: ",countsMap)
|
|
304
|
+
console.log("fieldTitle: ",fieldTitle)
|
|
305
|
+
console.log("fieldId: ",fieldId)
|
|
306
|
+
console.log("searchQuery: ",searchQuery)
|
|
307
|
+
console.log("clearAll: ",clearAll)
|
|
308
|
+
|
|
301
309
|
if(dontUpdateThisCheckBox===fieldId && !clearAll)
|
|
302
310
|
{
|
|
303
311
|
dontUpdateThisCheckBox=null;
|
|
@@ -311,6 +319,7 @@ async function loadJobsRepeater(_$w) {
|
|
|
311
319
|
filteredbase.push(element)
|
|
312
320
|
}
|
|
313
321
|
}
|
|
322
|
+
console.log("filteredbase: ",filteredbase)
|
|
314
323
|
// Build display options with counts
|
|
315
324
|
const withCounts = filteredbase.map(o => {
|
|
316
325
|
const count = countsMap.get(o.value)
|
|
@@ -320,6 +329,7 @@ async function loadJobsRepeater(_$w) {
|
|
|
320
329
|
};
|
|
321
330
|
});
|
|
322
331
|
// Apply search
|
|
332
|
+
console.log("withCounts: ",withCounts)
|
|
323
333
|
const filtered = searchQuery
|
|
324
334
|
? withCounts.filter(o => (o.label || '').toLowerCase().includes(searchQuery))
|
|
325
335
|
: withCounts;
|
|
@@ -328,7 +338,9 @@ async function loadJobsRepeater(_$w) {
|
|
|
328
338
|
let prevSelected=[]
|
|
329
339
|
clearAll? prevSelected=[]:prevSelected= _$w(`#${FiltersIds[fieldTitle]}CheckBox`).value;
|
|
330
340
|
const visibleSet = new Set(filtered.map(o => o.value));
|
|
341
|
+
console.log("visibleSet: ",visibleSet)
|
|
331
342
|
const preserved = prevSelected.filter(v => visibleSet.has(v));
|
|
343
|
+
console.log("preserved: ",preserved)
|
|
332
344
|
_$w(`#${FiltersIds[fieldTitle]}CheckBox`).options = filtered;
|
|
333
345
|
_$w(`#${FiltersIds[fieldTitle]}CheckBox`).value = preserved;
|
|
334
346
|
}
|
package/pages/pagesUtils.js
CHANGED
|
@@ -155,21 +155,20 @@ async function primarySearch(_$w,query,alljobs) {
|
|
|
155
155
|
let filteredJobs=alljobs.filter(job=>job.title.toLowerCase().includes(query));
|
|
156
156
|
if(filteredJobs.length>0) {
|
|
157
157
|
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
|
|
158
|
-
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = filteredJobs
|
|
159
|
-
return true;
|
|
160
158
|
}
|
|
161
159
|
else {
|
|
162
160
|
console.log("searching by location")
|
|
163
|
-
//search by location
|
|
164
161
|
filteredJobs=alljobs.filter(job=>job.location.fullLocation.toLowerCase().includes(query));
|
|
165
162
|
if(filteredJobs.length>0) {
|
|
166
163
|
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("jobResults");
|
|
167
|
-
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = filteredJobs
|
|
168
|
-
return true;
|
|
169
164
|
}
|
|
165
|
+
else{
|
|
170
166
|
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.PRIMARY_SEARCH_MULTI_BOX).changeState("noResults");
|
|
171
|
-
|
|
167
|
+
}
|
|
172
168
|
}
|
|
169
|
+
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.JOB_RESULTS_REPEATER).data = filteredJobs
|
|
170
|
+
return filteredJobs.length>0;
|
|
171
|
+
|
|
173
172
|
}
|
|
174
173
|
|
|
175
174
|
async function getValueFromValueId(valueId) {
|
|
@@ -160,7 +160,7 @@ describe('primarySearch function tests', () => {
|
|
|
160
160
|
|
|
161
161
|
|
|
162
162
|
expect(mockprimarySearchMultiBox.changeState).toHaveBeenCalledWith('noResults');
|
|
163
|
-
expect(mockprimarySearcJobResult.data).
|
|
163
|
+
expect(mockprimarySearcJobResult.data.length).toBe(0);
|
|
164
164
|
});
|
|
165
165
|
|
|
166
166
|
it('should fill category repeater when clicking on empty primary search input', async () => {
|