sr-npm 3.1.26 → 3.1.27
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,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sr-npm",
|
|
3
|
-
"version": "3.1.
|
|
3
|
+
"version": "3.1.27",
|
|
4
4
|
"description": "",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"@wix/essentials": "^0.1.24",
|
|
23
23
|
"@wix/secrets": "1.0.53",
|
|
24
24
|
"@wix/site-location": "^1.0.0",
|
|
25
|
+
"@wix/site-seo": "^1.21.0",
|
|
25
26
|
"@wix/site-window": "^1.0.0",
|
|
26
27
|
"axios": "^1.11.0",
|
|
27
28
|
"jest": "^30.0.5",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const { COLLECTIONS,CUSTOM_VALUES_COLLECTION_FIELDS,JOBS_COLLECTION_FIELDS } = require('../backend/collectionConsts');
|
|
2
|
-
const { CAREERS_PAGE_SELECTORS, GLOBAL_SECTIONS_SELECTORS } = require('../public/selectors');
|
|
2
|
+
const { CAREERS_PAGE_SELECTORS, GLOBAL_SECTIONS_SELECTORS, SEARCH_RESULTS_SELECTORS, MOBILE_FILTER_BOX_SELECTORS } = require('../public/selectors');
|
|
3
3
|
|
|
4
4
|
const { window } = require('@wix/site-window');
|
|
5
5
|
const { queryParams,onChange} = require('wix-location-frontend');
|
|
@@ -18,7 +18,8 @@ const { groupValuesByField,
|
|
|
18
18
|
getFieldByTitle,
|
|
19
19
|
getCorrectOption,
|
|
20
20
|
getOptionIndexFromCheckBox,
|
|
21
|
-
getAllDatasetItems
|
|
21
|
+
getAllDatasetItems,
|
|
22
|
+
handleSEOTitle
|
|
22
23
|
} = require('./pagesUtils');
|
|
23
24
|
const { handlePrimarySearch, queryPrimarySearchResults } = require('../public/primarySearchUtils');
|
|
24
25
|
|
|
@@ -39,7 +40,6 @@ let secondarySearchIsFilled=false // whether the secondary search is filled with
|
|
|
39
40
|
let keywordAllJobs; // all jobs that are displayed in the jobs repeater when the keyword is filled
|
|
40
41
|
let ActivateURLOnchange=true; // whether to activate the url onchange
|
|
41
42
|
let considerAllJobs=false; // whether to consider all jobs or not
|
|
42
|
-
|
|
43
43
|
const pagination = {
|
|
44
44
|
pageSize: 10,
|
|
45
45
|
currentPage: 1,
|
|
@@ -62,25 +62,61 @@ async function careersMultiBoxesPageOnReady(_$w,urlParams) {
|
|
|
62
62
|
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.CLEAR_ALL_BUTTON_ID).onClick(async () => {
|
|
63
63
|
await clearAll(_$w);
|
|
64
64
|
});
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
65
|
+
|
|
66
|
+
handleFilterButton(_$w);
|
|
67
|
+
|
|
68
|
+
setInterval(async () => {
|
|
69
|
+
const windowinfo=await window.getBoundingRect();
|
|
70
|
+
if(windowinfo.window.width>1000){
|
|
71
|
+
handleWindowResize(_$w,true);
|
|
72
|
+
}
|
|
73
|
+
else{
|
|
74
|
+
handleWindowResize(_$w);
|
|
75
|
+
}
|
|
76
|
+
}, 600);
|
|
77
|
+
|
|
68
78
|
_$w(CAREERS_MULTI_BOXES_PAGE_CONSTS.RESULTS_MULTI_STATE_BOX).changeState("results");
|
|
69
79
|
}
|
|
70
80
|
|
|
81
|
+
async function handleWindowResize(_$w,desktop=false) {
|
|
82
|
+
if(desktop){
|
|
83
|
+
MOBILE_FILTER_BOX_SELECTORS.forEach(selector => {
|
|
84
|
+
_$w(selector).expand();
|
|
85
|
+
});
|
|
86
|
+
SEARCH_RESULTS_SELECTORS.forEach(selector => {
|
|
87
|
+
_$w(selector).expand();
|
|
88
|
+
});
|
|
89
|
+
_$w(CAREERS_PAGE_SELECTORS.FILTER_ICON).collapse();
|
|
90
|
+
_$w(CAREERS_PAGE_SELECTORS.EXIT_BUTTON).collapse();
|
|
91
|
+
_$w(CAREERS_PAGE_SELECTORS.REFINE_SEARCH_BUTTON).collapse();
|
|
92
|
+
}
|
|
93
|
+
else{
|
|
94
|
+
if(_$w(CAREERS_PAGE_SELECTORS.FILTER_ICON).collapsed && _$w(CAREERS_PAGE_SELECTORS.EXIT_BUTTON).collapsed && _$w(CAREERS_PAGE_SELECTORS.REFINE_SEARCH_BUTTON).collapsed){
|
|
95
|
+
_$w(CAREERS_PAGE_SELECTORS.FILTER_ICON).expand();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
}
|
|
71
100
|
async function handleBackAndForth(_$w){
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
ActivateURLOnchange=true;
|
|
101
|
+
if(ActivateURLOnchange) {
|
|
102
|
+
await clearAll(_$w);
|
|
103
|
+
}
|
|
104
|
+
else{
|
|
105
|
+
ActivateURLOnchange=true;
|
|
106
|
+
}
|
|
79
107
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
108
|
+
// if(ActivateURLOnchange) {
|
|
109
|
+
// const newQueryParams=await location.query();
|
|
110
|
+
// console.log("newQueryParams: ", newQueryParams);
|
|
111
|
+
// ActivateURLOnchange=false;
|
|
112
|
+
// await clearAll(_$w,true);
|
|
113
|
+
// await handleUrlParams(_$w,newQueryParams,true);
|
|
114
|
+
// ActivateURLOnchange=true;
|
|
115
|
+
|
|
116
|
+
// }
|
|
117
|
+
// else{
|
|
118
|
+
// ActivateURLOnchange=true;
|
|
119
|
+
// }
|
|
84
120
|
}
|
|
85
121
|
|
|
86
122
|
async function clearAll(_$w,urlOnChange=false) {
|
|
@@ -105,38 +141,24 @@ async function clearAll(_$w,urlOnChange=false) {
|
|
|
105
141
|
|
|
106
142
|
}
|
|
107
143
|
|
|
108
|
-
function
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
CAREERS_PAGE_SELECTORS.PAGINATION_BTN,
|
|
112
|
-
CAREERS_PAGE_SELECTORS.HEAD_BTNS,
|
|
113
|
-
CAREERS_PAGE_SELECTORS.SELECTED_VALUES_REPEATER,
|
|
114
|
-
CAREERS_PAGE_SELECTORS.BUTTOM_TXT,
|
|
115
|
-
CAREERS_PAGE_SELECTORS.SECTION_24,
|
|
116
|
-
CAREERS_PAGE_SELECTORS.SECTION_3,
|
|
117
|
-
CAREERS_PAGE_SELECTORS.LINE_3,
|
|
118
|
-
CAREERS_PAGE_SELECTORS.FILTER_ICON];
|
|
119
|
-
|
|
120
|
-
const mobileFilterBoxSelectors = [
|
|
121
|
-
CAREERS_PAGE_SELECTORS.FILTER_BOX,
|
|
122
|
-
CAREERS_PAGE_SELECTORS.REFINE_SEARCH_BUTTON,
|
|
123
|
-
CAREERS_PAGE_SELECTORS.EXIT_BUTTON,
|
|
124
|
-
];
|
|
144
|
+
async function handleFilterButton(_$w) {
|
|
145
|
+
|
|
146
|
+
|
|
125
147
|
|
|
126
148
|
_$w(CAREERS_PAGE_SELECTORS.FILTER_ICON).onClick(()=>{
|
|
127
|
-
|
|
149
|
+
MOBILE_FILTER_BOX_SELECTORS.forEach(selector => {
|
|
128
150
|
_$w(selector).expand();
|
|
129
151
|
});
|
|
130
|
-
|
|
152
|
+
SEARCH_RESULTS_SELECTORS.forEach(selector => {
|
|
131
153
|
_$w(selector).collapse();
|
|
132
154
|
});
|
|
133
155
|
});
|
|
134
156
|
|
|
135
157
|
const exitFilterBox = () => {
|
|
136
|
-
|
|
158
|
+
MOBILE_FILTER_BOX_SELECTORS.forEach(selector => {
|
|
137
159
|
_$w(selector).collapse();
|
|
138
160
|
});
|
|
139
|
-
|
|
161
|
+
SEARCH_RESULTS_SELECTORS.forEach(selector => {
|
|
140
162
|
_$w(selector).expand();
|
|
141
163
|
});
|
|
142
164
|
}
|
|
@@ -150,11 +172,15 @@ function handleFilterInMobile(_$w) {
|
|
|
150
172
|
});
|
|
151
173
|
|
|
152
174
|
//onmobile we should collapse the filter box and the refine search button by default
|
|
153
|
-
|
|
175
|
+
const formFactor = await window.formFactor();
|
|
176
|
+
if(formFactor === "Mobile" || formFactor === "Tablet") {
|
|
177
|
+
MOBILE_FILTER_BOX_SELECTORS.forEach(selector => {
|
|
154
178
|
_$w(selector).collapse();
|
|
155
179
|
});
|
|
156
180
|
}
|
|
157
181
|
|
|
182
|
+
}
|
|
183
|
+
|
|
158
184
|
|
|
159
185
|
async function handleUrlParams(_$w,urlParams,handleBackAndForth=false) {
|
|
160
186
|
try {
|
|
@@ -169,6 +195,7 @@ async function handleUrlParams(_$w,urlParams,handleBackAndForth=false) {
|
|
|
169
195
|
|
|
170
196
|
currentJobs = items;
|
|
171
197
|
keywordAllJobs = items;
|
|
198
|
+
await handleSEOTitle(`${decodeURIComponent(urlParams.keyword)} Search Results | The Warehouse Group`);
|
|
172
199
|
}
|
|
173
200
|
|
|
174
201
|
for (const url of possibleUrlParams)
|
|
@@ -400,6 +427,7 @@ async function loadJobsRepeater(_$w) {
|
|
|
400
427
|
|
|
401
428
|
_$w(`#${FiltersIds[field.title]}CheckBox`).selectedIndices = []; // start empty
|
|
402
429
|
_$w(`#${FiltersIds[field.title]}CheckBox`).onChange(async (ev) => {
|
|
430
|
+
|
|
403
431
|
dontUpdateThisCheckBox=field._id;
|
|
404
432
|
const selected = ev.target.value; // array of selected value IDs
|
|
405
433
|
let fieldTitle=field.title.toLowerCase().replace(' ', '');
|
package/pages/pagesUtils.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const { items: wixData } = require('@wix/data');
|
|
2
2
|
const { JOBS_COLLECTION_FIELDS,COLLECTIONS } = require('../backend/collectionConsts');
|
|
3
3
|
const { normalizeString } = require('../backend/utils');
|
|
4
|
-
|
|
4
|
+
const { seo } = require('@wix/site-seo');
|
|
5
5
|
function groupValuesByField(values, refKey) {
|
|
6
6
|
const map = new Map();
|
|
7
7
|
for (const v of values) {
|
|
@@ -106,6 +106,11 @@ async function getLatestJobsByValue(Value) {
|
|
|
106
106
|
return latestJobs;
|
|
107
107
|
}
|
|
108
108
|
|
|
109
|
+
async function handleSEOTitle(title) {
|
|
110
|
+
await seo.setTitle(title);
|
|
111
|
+
|
|
112
|
+
}
|
|
113
|
+
|
|
109
114
|
module.exports = {
|
|
110
115
|
groupValuesByField,
|
|
111
116
|
debounce,
|
|
@@ -117,5 +122,6 @@ module.exports = {
|
|
|
117
122
|
getLatestJobsByValue,
|
|
118
123
|
getValueFromValueId,
|
|
119
124
|
getAllRecordsWithoutMultiRef,
|
|
120
|
-
getAllDatasetItems
|
|
125
|
+
getAllDatasetItems,
|
|
126
|
+
handleSEOTitle
|
|
121
127
|
}
|
package/public/selectors.js
CHANGED
|
@@ -50,8 +50,27 @@ const FILTER_FIELDS = {
|
|
|
50
50
|
SEARCH: 'title',
|
|
51
51
|
}
|
|
52
52
|
|
|
53
|
+
|
|
54
|
+
const SEARCH_RESULTS_SELECTORS = [
|
|
55
|
+
CAREERS_PAGE_SELECTORS.RESULT_BOX,
|
|
56
|
+
CAREERS_PAGE_SELECTORS.PAGINATION_BTN,
|
|
57
|
+
CAREERS_PAGE_SELECTORS.HEAD_BTNS,
|
|
58
|
+
CAREERS_PAGE_SELECTORS.SELECTED_VALUES_REPEATER,
|
|
59
|
+
CAREERS_PAGE_SELECTORS.BUTTOM_TXT,
|
|
60
|
+
CAREERS_PAGE_SELECTORS.SECTION_24,
|
|
61
|
+
CAREERS_PAGE_SELECTORS.SECTION_3,
|
|
62
|
+
CAREERS_PAGE_SELECTORS.LINE_3,
|
|
63
|
+
CAREERS_PAGE_SELECTORS.FILTER_ICON];
|
|
64
|
+
|
|
65
|
+
const MOBILE_FILTER_BOX_SELECTORS = [
|
|
66
|
+
CAREERS_PAGE_SELECTORS.FILTER_BOX,
|
|
67
|
+
CAREERS_PAGE_SELECTORS.REFINE_SEARCH_BUTTON,
|
|
68
|
+
CAREERS_PAGE_SELECTORS.EXIT_BUTTON,
|
|
69
|
+
];
|
|
53
70
|
module.exports = {
|
|
54
71
|
CAREERS_PAGE_SELECTORS,
|
|
55
72
|
GLOBAL_SECTIONS_SELECTORS,
|
|
56
73
|
FILTER_FIELDS,
|
|
74
|
+
SEARCH_RESULTS_SELECTORS,
|
|
75
|
+
MOBILE_FILTER_BOX_SELECTORS,
|
|
57
76
|
}
|