word-games-theme 1.6.4 → 1.6.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3848cb9145829302736878d75aef3c5b152197b1da7ee1aa89dba6c448f70e51
4
- data.tar.gz: 60fc7394cc9b52df1ac3e7e55abc6eb94577e341bbc6b01fe98f71ec714946ec
3
+ metadata.gz: 311deae76947cafdf44ffa19ababd891b997cec42ee7bdb7bcd0a033a6cb081a
4
+ data.tar.gz: '080b33c982a3ffd87b66d3481a6f5d67b098d9a5317f96bc69b885b8458381f0'
5
5
  SHA512:
6
- metadata.gz: ba6fd28aa98df98030332c5cc6aa6a0a615276a8d066b78e2214b7653033352c45e8b53347d8086a61819cd70b6e2b02d63c45413c586cb70b959f63e1994969
7
- data.tar.gz: 7fb9dd04de2f8a61ccc0f63246ce7faf6e12ba5e9a8ad113b68eb35028cb359106361020637526223ffb9f9e861ae1658f0384066b6157acc7074733a6e4ff6d
6
+ metadata.gz: 75c7e7c68534841f2b6961e3c748a36821261e53394153628fe463681d04c3b900811748cfb19f5011ed0db5ba9918303023638f64a31d111cb23aef62f3a942
7
+ data.tar.gz: 218d035bb072da0476fe3d1c91553c8107cf3b0dfec1989987426002f73a5991eef664dd6fcde56e7417990e5baac19afeb128352d9f55771398e6d2e8e217ec
@@ -26,7 +26,7 @@ let dictionary = document.querySelector(".select_dropDown2");
26
26
  var sortValue;
27
27
  var sortBool = false;
28
28
  let sortSelect = document.querySelector("#sort-select");
29
- let serachValue = txtBox.value;
29
+ let serachValue = txtBox.value.toLowerCase();
30
30
  let prefixValue = startsWith.value;
31
31
  let containsValue = mustInclude.value;
32
32
  let suffixValue = endsWith.value;
@@ -185,8 +185,8 @@ function getWords(data) {
185
185
  main.innerHTML = "";
186
186
  tab_container.innerHTML = "";
187
187
 
188
- data = filterRepeatedWords(txtBox.value, data);
189
- data = sortWords(data);
188
+ data = filterRepeatedWords(txtBox.value.toLowerCase(), data);
189
+ // data = sortWords(data);
190
190
  if (data.length === 0) {
191
191
  hideResultPageComponents();
192
192
  errorMsg.innerHTML = "no words found";
@@ -292,6 +292,7 @@ function getWords(data) {
292
292
  main.innerHTML += "";
293
293
  } else {
294
294
  newWordsLength += newdata.length;
295
+ newdata = sortWords(newdata);
295
296
  const result = newdata.map((item) => {
296
297
  // var text1 = serachValue.replace("?", "");
297
298
  // var text2 = item;
@@ -1,371 +1,397 @@
1
1
  /***************
2
2
  SCRABBLER_JS
3
3
  ***************/
4
- const getScript = document.currentScript
5
- let form = document.querySelector('#form')
6
- let wordCount = document.querySelector('.wordCount')
7
- let main = document.querySelector('.main')
4
+ const getScript = document.currentScript;
5
+ let form = document.querySelector("#form");
6
+ let wordCount = document.querySelector(".wordCount");
7
+ let main = document.querySelector(".main");
8
8
  // let loader = document.querySelector(".main-loader")
9
- let errorMsg = document.querySelector('.errorMsg')
10
- let script = document.currentScript
9
+ let errorMsg = document.querySelector(".errorMsg");
10
+ let script = document.currentScript;
11
11
 
12
12
  // getqueryUrl from form
13
- const params = new URLSearchParams(window.location.search)
14
- let serachValue = params.get('search').toLowerCase()
15
- let prefixValue = params.get('prefix')
16
- let containsValue = params.get('contains')
17
- let suffixValue = params.get('suffix')
18
- let exculdeValue = params.get('exculde')
19
- let includeValue = params.get('include')
20
- let lengthValue = params.get('length')
21
- let dictonary = params.get('dictionary')
13
+ const params = new URLSearchParams(window.location.search);
14
+ let serachValue = params.get("search").toLowerCase();
15
+ let prefixValue = params.get("prefix");
16
+ let containsValue = params.get("contains");
17
+ let suffixValue = params.get("suffix");
18
+ let exculdeValue = params.get("exculde");
19
+ let includeValue = params.get("include");
20
+ let lengthValue = params.get("length");
21
+ let dictonary = params.get("dictionary");
22
22
 
23
23
  // advanced filter element grabs
24
- let tick
25
- let startsWith = document.getElementById('startsWith')
26
- let mustInclude = document.getElementById('mustInclude')
27
- let endsWith = document.getElementById('endsWith')
28
- let exculdeWith = document.getElementById('exculdeWith')
29
- let inculdeWith = document.getElementById('inculdeWith')
30
- let wordLength = document.getElementById('wordLength')
31
-
32
- let ok = true
33
-
34
- let tab_container = document.querySelector('.tab_container')
35
- const siteUrl = getScript.dataset.url
36
- var sortValue
37
- var sortBool = false
38
-
39
-
40
- let letterCloseButton = document.querySelector('.letter-close-button-commonPage')
24
+ let tick;
25
+ let startsWith = document.getElementById("startsWith");
26
+ let mustInclude = document.getElementById("mustInclude");
27
+ let endsWith = document.getElementById("endsWith");
28
+ let exculdeWith = document.getElementById("exculdeWith");
29
+ let inculdeWith = document.getElementById("inculdeWith");
30
+ let wordLength = document.getElementById("wordLength");
31
+
32
+ let ok = true;
33
+
34
+ let tab_container = document.querySelector(".tab_container");
35
+ const siteUrl = getScript.dataset.url;
36
+ var sortValue;
37
+ var sortBool = false;
38
+
39
+ let letterCloseButton = document.querySelector(
40
+ ".letter-close-button-commonPage"
41
+ );
41
42
  if (serachValue) {
42
- letterCloseButton.classList.add("ltr-cls-btn-commonPage")
43
+ letterCloseButton.classList.add("ltr-cls-btn-commonPage");
43
44
  }
44
45
  letterCloseButton.addEventListener("click", () => {
45
- txtBox.value = ""
46
- letterCloseButton.classList.remove("ltr-cls-btn-commonPage")
47
- })
46
+ txtBox.value = "";
47
+ letterCloseButton.classList.remove("ltr-cls-btn-commonPage");
48
+ });
48
49
 
50
+ let txtBox = document.querySelector(".txtBox");
51
+ txtBox.focus();
52
+ txtBox.value = serachValue;
49
53
 
50
- let txtBox = document.querySelector('.txtBox')
51
- txtBox.focus()
52
- txtBox.value = serachValue
53
-
54
-
55
- txtBox.addEventListener('input', (e) => {
54
+ txtBox.addEventListener("input", (e) => {
56
55
  if (e.target.value === "") {
57
- letterCloseButton.classList.remove("ltr-cls-btn-commonPage")
56
+ letterCloseButton.classList.remove("ltr-cls-btn-commonPage");
58
57
  } else {
59
- letterCloseButton.classList.add("ltr-cls-btn-commonPage")
58
+ letterCloseButton.classList.add("ltr-cls-btn-commonPage");
60
59
  }
61
- let rangeOfBlankTile = script.dataset.range
62
- e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, '')
63
- if (rangeOfBlankTile === '') {
64
- rangeOfBlankTile = 3
60
+ let rangeOfBlankTile = script.dataset.range;
61
+ e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "");
62
+ if (rangeOfBlankTile === "") {
63
+ rangeOfBlankTile = 3;
65
64
  }
66
- e.target.value = e.target.value.replace(/ /g, '?')
67
- let data = []
68
- data = e.target.value.split('').filter((i) => i === '?')
65
+ e.target.value = e.target.value.replace(/ /g, "?");
66
+ let data = [];
67
+ data = e.target.value.split("").filter((i) => i === "?");
69
68
  if (data.length > rangeOfBlankTile) {
70
- e.target.value = e.target.value.replace(/\?$/, '')
69
+ e.target.value = e.target.value.replace(/\?$/, "");
71
70
  }
72
- })
73
-
71
+ });
74
72
 
75
73
  function mobileScrollTop(x) {
76
74
  if (x.matches) {
77
75
  console.log(x.matches);
78
76
  txtBox.addEventListener("click", () => {
79
- document.documentElement.scrollTop = 350
77
+ document.documentElement.scrollTop = 350;
80
78
  setTimeout(() => {
81
- document.documentElement.scrollTop = 350
79
+ document.documentElement.scrollTop = 350;
82
80
  }, 300);
83
- })
81
+ });
84
82
  } else {
85
83
  console.log("false");
86
84
  }
87
85
  }
88
- var x = window.matchMedia("(max-width: 768px)")
89
- mobileScrollTop(x)
90
- x.addListener(mobileScrollTop)
86
+ var x = window.matchMedia("(max-width: 768px)");
87
+ mobileScrollTop(x);
88
+ x.addListener(mobileScrollTop);
91
89
 
92
-
93
- let rangeOfBlankTile = script.dataset.range
94
- let quesMark = "?"
90
+ let rangeOfBlankTile = script.dataset.range;
91
+ let quesMark = "?";
95
92
 
96
93
  if (rangeOfBlankTile) {
97
94
  if (!serachValue.includes("?")) {
98
95
  serachValue = serachValue + quesMark.repeat(rangeOfBlankTile); //
99
- txtBox.value = serachValue
96
+ txtBox.value = serachValue;
100
97
  }
101
98
  }
102
99
 
103
- let theSelect = document.getElementById('select_dropDown')
100
+ let theSelect = document.getElementById("select_dropDown");
104
101
 
105
- const sortup = document.querySelector(".sortup-icon")
106
- let bool = false
102
+ const sortup = document.querySelector(".sortup-icon");
103
+ let bool = false;
107
104
  sortup.addEventListener("click", () => {
108
105
  if (bool) {
109
- theSelect.size = 0
110
- bool = false
111
- theSelect.style.display = "none"
112
- }
113
- else {
114
- bool = true
115
- theSelect.size = 3
116
- theSelect.style.display = "block"
106
+ theSelect.size = 0;
107
+ bool = false;
108
+ theSelect.style.display = "none";
109
+ } else {
110
+ bool = true;
111
+ theSelect.size = 3;
112
+ theSelect.style.display = "block";
117
113
  }
118
- })
119
- document.querySelector('.select_dropDown2').value = dictonary
114
+ });
115
+ document.querySelector(".select_dropDown2").value = dictonary;
120
116
  const getDiff = (text1, text2) => {
121
- var diffRange = []
122
- var currentRange = undefined
117
+ var diffRange = [];
118
+ var currentRange = undefined;
123
119
  for (var i = 0; i < text1.length; i++) {
124
120
  if (text1[i] != text2[i]) {
125
121
  if (currentRange == undefined) {
126
- currentRange = [i]
122
+ currentRange = [i];
127
123
  }
128
124
  }
129
125
  if (currentRange != undefined && text1[i] == text2[i]) {
130
- currentRange.push(i)
131
- diffRange.push(currentRange)
132
- currentRange = undefined
126
+ currentRange.push(i);
127
+ diffRange.push(currentRange);
128
+ currentRange = undefined;
133
129
  }
134
130
  }
135
131
  if (currentRange != undefined) {
136
- currentRange.push(i)
137
- diffRange.push(currentRange)
132
+ currentRange.push(i);
133
+ diffRange.push(currentRange);
138
134
  }
139
- return diffRange
140
- }
141
-
142
-
135
+ return diffRange;
136
+ };
143
137
 
144
138
  // getWords define...
145
139
  const getData = async (serachValue) => {
146
140
  try {
147
- errorMsg.innerHTML = ""
148
- wordCount.innerHTML = ""
149
- let selectedDictionary = document.querySelector('.select_dropDown2').value
141
+ errorMsg.innerHTML = "";
142
+ wordCount.innerHTML = "";
143
+ let selectedDictionary = document.querySelector(".select_dropDown2").value;
150
144
  main.innerHTML = `<div class="loader">
151
145
  <img src='/assets/images/loading.gif'>
152
- <div style="font-weight:900;font-size:14px" >Finding words - Powered by ${siteUrl.replace(/^https?:\/\//, '')}</div>
153
- </div>`
146
+ <div style="font-weight:900;font-size:14px" >Finding words - Powered by ${siteUrl.replace(
147
+ /^https?:\/\//,
148
+ ""
149
+ )}</div>
150
+ </div>`;
154
151
  /// loader
155
152
  const response = await fetch(
156
153
  `/.netlify/functions/getWords?name=${serachValue}&selecteddictionary=${selectedDictionary}`
157
- )
158
- const data = await response.json()
159
- main.innerHTML = ''
160
- getWords(data)
154
+ );
155
+ const data = await response.json();
156
+ main.innerHTML = "";
157
+ getWords(data);
161
158
  //getWords calling...
162
159
  } catch (error) {
163
- console.log(error)
160
+ console.log(error);
164
161
  }
165
- }
162
+ };
166
163
  //getData calling...
167
- if (lengthValue === '1') {
168
- errorMsg.innerHTML = 'words length should be more than 1'
164
+ if (lengthValue === "1") {
165
+ errorMsg.innerHTML = "words length should be more than 1";
169
166
  } else {
170
- getData(serachValue.toLowerCase())
167
+ getData(serachValue.toLowerCase());
171
168
  function logSubmit(event) {
172
- const scrollingElement = (document.scrollingElement || document.body);
173
- scrollingElement.scroll({ top: 0, behavior: 'smooth' });
169
+ const scrollingElement = document.scrollingElement || document.body;
170
+ scrollingElement.scroll({ top: 0, behavior: "smooth" });
174
171
  if (rangeOfBlankTile) {
175
172
  if (!txtBox.value.includes("?")) {
176
173
  txtBox.value = txtBox.value + quesMark.repeat(rangeOfBlankTile); //
177
174
  }
178
175
  }
179
176
 
180
- let selectedDictionary = document.querySelector('.select_dropDown2').value
177
+ let selectedDictionary = document.querySelector(".select_dropDown2").value;
181
178
  event.preventDefault();
182
179
  if (history.pushState) {
183
- var newurl = window.location.protocol + "//" + window.location.host +
184
- window.location.pathname + '?' + "search" + "=" + txtBox.value.toLowerCase() + '&' +
185
- 'dictionary' + '=' + selectedDictionary +
186
- '&' + 'prefix' + '=' + startsWith.value + '&' + 'contains' + '=' + mustInclude.value +
187
- '&' + 'suffix' + '=' + endsWith.value + '&' + 'exculde' + '=' + exculdeWith.value +
188
- '&' + 'include' + '=' + inculdeWith.value + '&' + 'length' + '=' + wordLength.value;
189
- window.history.pushState({ path: newurl }, '', newurl);
190
-
191
- const params = new URLSearchParams(window.location.search)
192
- serachValue = params.get('search')
193
- prefixValue = params.get('prefix')
194
- containsValue = params.get('contains')
195
- suffixValue = params.get('suffix')
196
- exculdeValue = params.get('exculde')
197
- includeValue = params.get('include')
198
- lengthValue = params.get('length')
199
- dictonary = params.get('dictionary')
200
-
201
- gtag('event', 'page_view', {
180
+ var newurl =
181
+ window.location.protocol +
182
+ "//" +
183
+ window.location.host +
184
+ window.location.pathname +
185
+ "?" +
186
+ "search" +
187
+ "=" +
188
+ txtBox.value.toLowerCase() +
189
+ "&" +
190
+ "dictionary" +
191
+ "=" +
192
+ selectedDictionary +
193
+ "&" +
194
+ "prefix" +
195
+ "=" +
196
+ startsWith.value +
197
+ "&" +
198
+ "contains" +
199
+ "=" +
200
+ mustInclude.value +
201
+ "&" +
202
+ "suffix" +
203
+ "=" +
204
+ endsWith.value +
205
+ "&" +
206
+ "exculde" +
207
+ "=" +
208
+ exculdeWith.value +
209
+ "&" +
210
+ "include" +
211
+ "=" +
212
+ inculdeWith.value +
213
+ "&" +
214
+ "length" +
215
+ "=" +
216
+ wordLength.value;
217
+ window.history.pushState({ path: newurl }, "", newurl);
218
+
219
+ const params = new URLSearchParams(window.location.search);
220
+ serachValue = params.get("search");
221
+ prefixValue = params.get("prefix");
222
+ containsValue = params.get("contains");
223
+ suffixValue = params.get("suffix");
224
+ exculdeValue = params.get("exculde");
225
+ includeValue = params.get("include");
226
+ lengthValue = params.get("length");
227
+ dictonary = params.get("dictionary");
228
+
229
+ gtag("event", "page_view", {
202
230
  page_location: window.location.pathname + location.search,
203
- })
231
+ });
204
232
  }
205
- getData(txtBox.value.toLowerCase())
206
- addFilterCount()
207
-
233
+ getData(txtBox.value.toLowerCase());
234
+ addFilterCount();
208
235
  }
209
236
 
210
- let selectedDictionary = document.querySelector('.select_dropDown2')
211
- selectedDictionary.addEventListener("change", ((e) => {
212
- logSubmit(e)
213
- }))
214
- applyBtn.addEventListener('submit', logSubmit)
215
- form.addEventListener('submit', logSubmit);
237
+ let selectedDictionary = document.querySelector(".select_dropDown2");
238
+ selectedDictionary.addEventListener("change", (e) => {
239
+ logSubmit(e);
240
+ });
241
+ applyBtn.addEventListener("submit", logSubmit);
242
+ form.addEventListener("submit", logSubmit);
216
243
  }
217
244
 
218
245
  // getWords function define...
219
246
  function getWords(data) {
220
- main.innerHTML = ""
221
- tab_container.innerHTML = ""
222
- if (typeof data === 'string') {
223
- errorMsg.innerHTML = 'no words found'
247
+ main.innerHTML = "";
248
+ tab_container.innerHTML = "";
249
+ if (typeof data === "string") {
250
+ errorMsg.innerHTML = "no words found";
224
251
  wordCount.innerHTML = `<strong>Found 0 words with letters ${serachValue.split(
225
- ''
226
- )}</strong>`
252
+ ""
253
+ )}</strong>`;
227
254
  } else {
228
- let newWordsLength = 0
229
- let dataArr = []
255
+ let newWordsLength = 0;
256
+ let dataArr = [];
230
257
  for (let i = serachValue.length; i >= 1; i--) {
231
- let newdata = data.filter((item) => item.length === i)
258
+ let newdata = data.filter((item) => item.length === i);
232
259
  if (prefixValue) {
233
260
  newdata = newdata.filter((item2) =>
234
261
  item2.startsWith(prefixValue.toLowerCase())
235
- )
236
- startsWith.classList.add('tick')
237
- startsWith.value = prefixValue
262
+ );
263
+ startsWith.classList.add("tick");
264
+ startsWith.value = prefixValue;
238
265
  } else {
239
- startsWith.classList.remove('tick')
266
+ startsWith.classList.remove("tick");
240
267
  }
241
268
  if (containsValue) {
242
269
  newdata = newdata.filter((item) =>
243
270
  item.includes(containsValue.toLowerCase())
244
- )
245
- mustInclude.classList.add('tick')
246
- mustInclude.value = containsValue
247
- }
248
- else {
249
- mustInclude.classList.remove('tick')
271
+ );
272
+ mustInclude.classList.add("tick");
273
+ mustInclude.value = containsValue;
274
+ } else {
275
+ mustInclude.classList.remove("tick");
250
276
  }
251
277
  if (suffixValue) {
252
278
  newdata = newdata.filter((item) =>
253
279
  item.endsWith(suffixValue.toLowerCase())
254
- )
255
- endsWith.classList.add('tick')
256
- endsWith.value = suffixValue
280
+ );
281
+ endsWith.classList.add("tick");
282
+ endsWith.value = suffixValue;
257
283
  } else {
258
- endsWith.classList.remove('tick')
284
+ endsWith.classList.remove("tick");
259
285
  }
260
286
  if (exculdeValue) {
261
- let data = []
287
+ let data = [];
262
288
  newdata.map((item) => {
263
- let check = false
289
+ let check = false;
264
290
  for (let e = 0; e < exculdeValue.length; e++) {
265
- const element = exculdeValue[e].toLowerCase()
291
+ const element = exculdeValue[e].toLowerCase();
266
292
  if (item.includes(element)) {
267
- check = true
268
- break
293
+ check = true;
294
+ break;
269
295
  } else {
270
- check = false
296
+ check = false;
271
297
  }
272
298
  }
273
299
  if (check === false) {
274
- data.push(item)
300
+ data.push(item);
275
301
  }
276
- })
277
- exculdeWith.classList.add('tick')
278
- exculdeWith.value = exculdeValue
279
- newdata = data
302
+ });
303
+ exculdeWith.classList.add("tick");
304
+ exculdeWith.value = exculdeValue;
305
+ newdata = data;
280
306
  } else {
281
- exculdeWith.classList.remove('tick')
307
+ exculdeWith.classList.remove("tick");
282
308
  }
283
309
  if (includeValue) {
284
- let data = []
310
+ let data = [];
285
311
  newdata.map((item) => {
286
- let check = false
312
+ let check = false;
287
313
  for (let e = 0; e < includeValue.length; e++) {
288
- const element = includeValue[e].toLowerCase()
314
+ const element = includeValue[e].toLowerCase();
289
315
  if (!item.includes(element)) {
290
- check = true
291
- break
316
+ check = true;
317
+ break;
292
318
  } else {
293
- check = false
319
+ check = false;
294
320
  }
295
321
  }
296
322
  if (check === false) {
297
- data.push(item)
323
+ data.push(item);
298
324
  }
299
- })
300
- inculdeWith.classList.add('tick')
301
- inculdeWith.value = includeValue
302
- newdata = data
325
+ });
326
+ inculdeWith.classList.add("tick");
327
+ inculdeWith.value = includeValue;
328
+ newdata = data;
303
329
  } else {
304
- inculdeWith.classList.remove('tick')
330
+ inculdeWith.classList.remove("tick");
305
331
  }
306
332
  if (lengthValue) {
307
- newdata = newdata.filter((item) => item.length == lengthValue)
308
- wordLength.classList.add('tick')
309
- wordLength.value = lengthValue
333
+ newdata = newdata.filter((item) => item.length == lengthValue);
334
+ wordLength.classList.add("tick");
335
+ wordLength.value = lengthValue;
310
336
  } else {
311
- wordLength.classList.remove('tick')
337
+ wordLength.classList.remove("tick");
312
338
  }
313
339
  if (newdata.length === 0) {
314
- main.innerHTML += ''
340
+ main.innerHTML += "";
315
341
  } else {
316
- newWordsLength += newdata.length
342
+ newWordsLength += newdata.length;
317
343
  const result = newdata.map((item) => {
318
- var text1 = serachValue.replace('?', '')
319
- var text2 = item
320
- var text3 = item
321
- let chars = text1.split('')
344
+ var text1 = serachValue.replace("?", "");
345
+ var text2 = item;
346
+ var text3 = item;
347
+ let chars = text1.split("");
322
348
 
323
- let indexs = []
349
+ let indexs = [];
324
350
  chars.map((i) => {
325
- let findIndexes = findIndex(text3, i)
351
+ let findIndexes = findIndex(text3, i);
326
352
  if (findIndexes.length > 0) {
327
- text3 = text3.split('')
328
- text3[findIndexes] = '$'
329
- text3 = text3.join('')
353
+ text3 = text3.split("");
354
+ text3[findIndexes] = "$";
355
+ text3 = text3.join("");
330
356
 
331
- indexs = [...indexs, ...findIndexes]
357
+ indexs = [...indexs, ...findIndexes];
332
358
  }
333
- })
334
- let itemHtml = ''
335
- text2.split('').map((itemValue, index) => {
336
- let check = indexs.find((i) => i === index)
359
+ });
360
+ let itemHtml = "";
361
+ text2.split("").map((itemValue, index) => {
362
+ let check = indexs.find((i) => i === index);
337
363
 
338
364
  if (check !== undefined) {
339
- itemHtml += `${itemValue}`
365
+ itemHtml += `${itemValue}`;
340
366
  } else {
341
- itemHtml += `<span class='highlight'>${itemValue}</span>`
367
+ itemHtml += `<span class='highlight'>${itemValue}</span>`;
342
368
  }
343
- })
369
+ });
344
370
 
345
371
  if (item.length === 1) {
346
- ok = false
347
- newWordsLength = newWordsLength - 1
372
+ ok = false;
373
+ newWordsLength = newWordsLength - 1;
348
374
  } else {
349
- let ScrabbleLetterScore = ScrabbleScore()
350
- sum = 0
351
- item = item.toLowerCase()
375
+ let ScrabbleLetterScore = ScrabbleScore();
376
+ sum = 0;
377
+ item = item.toLowerCase();
352
378
  for (let i = 0; i < item.length; i++) {
353
- sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
379
+ sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
354
380
  }
355
- dataArr.push(item)
381
+ dataArr.push(item);
356
382
  return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
357
383
  <li>${itemHtml}
358
384
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
359
- </li></a>`
385
+ </li></a>`;
360
386
  }
361
- })
387
+ });
362
388
  if (result[0] !== undefined) {
363
389
  tab_container.innerHTML += `
364
390
  <input type="button" id="Tab_${i}" onclick="Filtering(${i})" value="${i} Letter"
365
391
  class="tab_link cursorPointer" />
366
- `
367
- let tabs = document.getElementsByClassName('tab_link')
368
- tabs[0] ? tabs[0].classList.add('active-tab') : ''
392
+ `;
393
+ let tabs = document.getElementsByClassName("tab_link");
394
+ tabs[0] ? tabs[0].classList.add("active-tab") : "";
369
395
  main.innerHTML += `
370
396
  <div class="allGroupWords wordlistContainer" id="alpha_${i}">
371
397
  <div class="wordListHeading">
@@ -373,119 +399,119 @@ function getWords(data) {
373
399
  </div>
374
400
  <div class="wordList">
375
401
  <ul class="ul list-unstyled">
376
- ${result.join('')}
402
+ ${result.join("")}
377
403
  </ul>
378
404
  </div>
379
405
  </div>
380
- `
406
+ `;
381
407
  }
382
408
  }
383
409
  }
384
- theSelect.addEventListener('change', () => {
385
- sortValue = theSelect[theSelect.selectedIndex].text
386
- if (sortValue == 'Z-A') {
387
- sortBool = true
388
- sortby(sortBool, dataArr)
410
+ theSelect.addEventListener("change", () => {
411
+ sortValue = theSelect[theSelect.selectedIndex].text;
412
+ if (sortValue == "Z-A") {
413
+ sortBool = true;
414
+ sortby(sortBool, dataArr);
389
415
  } else {
390
- sortBool = false
391
- sortby(sortBool, dataArr)
416
+ sortBool = false;
417
+ sortby(sortBool, dataArr);
392
418
  }
393
- if (sortValue == 'Points') {
394
- sortBool = true
395
- sortPointsby(sortBool, dataArr)
419
+ if (sortValue == "Points") {
420
+ sortBool = true;
421
+ sortPointsby(sortBool, dataArr);
396
422
  }
397
- })
398
- sortValue = theSelect[theSelect.selectedIndex].text
399
- if (sortValue == 'Z-A') {
400
- sortby(sortBool, dataArr)
423
+ });
424
+ sortValue = theSelect[theSelect.selectedIndex].text;
425
+ if (sortValue == "Z-A") {
426
+ sortby(sortBool, dataArr);
401
427
  }
402
- if (sortValue == 'Points') {
403
- sortPointsby(sortBool, dataArr)
428
+ if (sortValue == "Points") {
429
+ sortPointsby(sortBool, dataArr);
404
430
  }
405
431
  if (newWordsLength === 0) {
406
- errorMsg.innerHTML = 'no words found'
432
+ errorMsg.innerHTML = "no words found";
407
433
  } else {
408
434
  wordCount.innerHTML = `<strong>Found ${newWordsLength} words with letters with ${serachValue.split(
409
- ''
410
- )}</strong>`
435
+ ""
436
+ )}</strong>`;
411
437
  }
412
438
  }
413
439
  }
414
440
 
415
441
  // sorting by points
416
442
  function sortPointsby(sortValue, data) {
417
- main.innerHTML = ''
443
+ main.innerHTML = "";
418
444
  if (sortValue) {
419
- let newWordsLength = 0
445
+ let newWordsLength = 0;
420
446
  for (let i = serachValue.length; i >= 1; i--) {
421
- var newdata = data.filter((item) => item.length === i)
447
+ var newdata = data.filter((item) => item.length === i);
422
448
  if (newdata.length === 0) {
423
- main.innerHTML += ''
449
+ main.innerHTML += "";
424
450
  } else {
425
- newWordsLength += newdata.length
426
- var newArray = []
451
+ newWordsLength += newdata.length;
452
+ var newArray = [];
427
453
  newdata.map((item) => {
428
454
  if (item.length === 1) {
429
- ok = false
430
- newWordsLength = newWordsLength - 1
455
+ ok = false;
456
+ newWordsLength = newWordsLength - 1;
431
457
  } else {
432
- let ScrabbleLetterScore = ScrabbleScore()
433
- let points = 0
434
- item = item.toLowerCase()
458
+ let ScrabbleLetterScore = ScrabbleScore();
459
+ let points = 0;
460
+ item = item.toLowerCase();
435
461
  for (let i = 0; i < item.length; i++) {
436
- points += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
462
+ points += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
437
463
  }
438
464
  const value = {
439
465
  words: item,
440
466
  points: points,
441
- }
442
- newArray.push(value)
467
+ };
468
+ newArray.push(value);
443
469
  }
444
- })
470
+ });
445
471
 
446
472
  newArray.sort(function (a, b) {
447
- return b.points - a.points
448
- })
473
+ return b.points - a.points;
474
+ });
449
475
  const result = newArray.map((item) => {
450
- var text1 = serachValue.replace('?', '')
451
- var text2 = item.words
452
- var text3 = item.words
476
+ var text1 = serachValue.replace("?", "");
477
+ var text2 = item.words;
478
+ var text3 = item.words;
453
479
  function findIndex(str, char) {
454
- const strLength = str.length
455
- const indexes = []
456
- let newStr = str
480
+ const strLength = str.length;
481
+ const indexes = [];
482
+ let newStr = str;
457
483
  while (newStr && newStr.indexOf(char) > -1) {
458
- indexes.push(newStr.indexOf(char) + strLength - newStr.length)
459
- newStr = newStr.substring(newStr.indexOf(char) + 1)
460
- newStr = newStr.substring(newStr.indexOf(char) + 1)
484
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length);
485
+ newStr = newStr.substring(newStr.indexOf(char) + 1);
486
+ newStr = newStr.substring(newStr.indexOf(char) + 1);
461
487
  }
462
- return indexes
488
+ return indexes;
463
489
  }
464
- let chars = text1.split('')
465
- let indexs = []
490
+ let chars = text1.split("");
491
+ let indexs = [];
466
492
  chars.map((i) => {
467
- let findIndexes = findIndex(text3, i)
493
+ let findIndexes = findIndex(text3, i);
468
494
  if (findIndexes.length > 0) {
469
- text3 = text3.split('')
470
- text3[findIndexes] = '$'
471
- text3 = text3.join('')
472
- indexs = [...indexs, ...findIndexes]
495
+ text3 = text3.split("");
496
+ text3[findIndexes] = "$";
497
+ text3 = text3.join("");
498
+ indexs = [...indexs, ...findIndexes];
473
499
  }
474
- })
475
- let itemHtml = ''
476
- text2.split('').map((itemValue, index) => {
477
- let check = indexs.find((i) => i === index)
500
+ });
501
+ let itemHtml = "";
502
+ text2.split("").map((itemValue, index) => {
503
+ let check = indexs.find((i) => i === index);
478
504
  if (check !== undefined) {
479
- itemHtml += `${itemValue}`
505
+ itemHtml += `${itemValue}`;
480
506
  } else {
481
- itemHtml += `<span class='highlight'>${itemValue}</span>`
507
+ itemHtml += `<span class='highlight'>${itemValue}</span>`;
482
508
  }
483
- })
509
+ });
484
510
  return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
485
511
  <li>${itemHtml}
486
512
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
487
- </li></a>`
488
- })
513
+ </li></a>`;
514
+ });
489
515
 
490
516
  main.innerHTML += `
491
517
  <div class="allGroupWords wordlistContainer" id="alpha_${i}">
@@ -494,11 +520,11 @@ function sortPointsby(sortValue, data) {
494
520
  </div>
495
521
  <div class="wordList">
496
522
  <ul class="ul list-unstyled">
497
- ${result.join('')}
523
+ ${result.join("")}
498
524
  </ul>
499
525
  </div>
500
526
  </div>
501
- `
527
+ `;
502
528
  }
503
529
  }
504
530
  }
@@ -506,58 +532,58 @@ function sortPointsby(sortValue, data) {
506
532
  // sort by aplhabets
507
533
  function sortby(sortBool, data) {
508
534
  if (sortBool) {
509
- main.innerHTML = ''
510
- data.reverse()
511
- let newWordsLength = 0
535
+ main.innerHTML = "";
536
+ data.reverse();
537
+ let newWordsLength = 0;
512
538
  for (let i = serachValue.length; i >= 1; i--) {
513
- var newdata = data.filter((item) => item.length === i)
539
+ var newdata = data.filter((item) => item.length === i);
514
540
 
515
541
  if (newdata.length === 0) {
516
- main.innerHTML += ''
542
+ main.innerHTML += "";
517
543
  } else {
518
- newWordsLength += newdata.length
544
+ newWordsLength += newdata.length;
519
545
 
520
546
  const result = newdata.map((item) => {
521
- var text1 = serachValue.replace('?', '')
522
- var text2 = item
523
- var text3 = item
524
- let chars = text1.split('')
525
- let indexs = []
547
+ var text1 = serachValue.replace("?", "");
548
+ var text2 = item;
549
+ var text3 = item;
550
+ let chars = text1.split("");
551
+ let indexs = [];
526
552
  chars.map((i) => {
527
- let findIndexes = findIndex(text3, i)
553
+ let findIndexes = findIndex(text3, i);
528
554
  if (findIndexes.length > 0) {
529
- text3 = text3.split('')
530
- text3[findIndexes] = '$'
531
- text3 = text3.join('')
532
- indexs = [...indexs, ...findIndexes]
555
+ text3 = text3.split("");
556
+ text3[findIndexes] = "$";
557
+ text3 = text3.join("");
558
+ indexs = [...indexs, ...findIndexes];
533
559
  }
534
- })
535
- let itemHtml = ''
536
- text2.split('').map((itemValue, index) => {
537
- let check = indexs.find((i) => i === index)
560
+ });
561
+ let itemHtml = "";
562
+ text2.split("").map((itemValue, index) => {
563
+ let check = indexs.find((i) => i === index);
538
564
  if (check !== undefined) {
539
- itemHtml += `${itemValue}`
565
+ itemHtml += `${itemValue}`;
540
566
  } else {
541
- itemHtml += `<span class='highlight'>${itemValue}</span>`
567
+ itemHtml += `<span class='highlight'>${itemValue}</span>`;
542
568
  }
543
- })
569
+ });
544
570
  if (item.length === 1) {
545
- ok = false
546
- newWordsLength = newWordsLength - 1
571
+ ok = false;
572
+ newWordsLength = newWordsLength - 1;
547
573
  } else {
548
- let ScrabbleLetterScore = ScrabbleScore()
549
- let sum = 0
550
- item = item.toLowerCase()
574
+ let ScrabbleLetterScore = ScrabbleScore();
575
+ let sum = 0;
576
+ item = item.toLowerCase();
551
577
  for (let i = 0; i < item.length; i++) {
552
- sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
578
+ sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
553
579
  }
554
580
 
555
581
  return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
556
582
  <li>${itemHtml}
557
583
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
558
- </li></a>`
584
+ </li></a>`;
559
585
  }
560
- })
586
+ });
561
587
 
562
588
  main.innerHTML += `
563
589
  <div class="allGroupWords wordlistContainer" id="alpha_${i}">
@@ -566,61 +592,61 @@ function sortby(sortBool, data) {
566
592
  </div>
567
593
  <div class="wordList">
568
594
  <ul class="ul list-unstyled">
569
- ${result.join('')}
595
+ ${result.join("")}
570
596
  </ul>
571
597
  </div>
572
598
  </div>
573
- `
599
+ `;
574
600
  }
575
601
  }
576
602
  } else {
577
- main.innerHTML = ''
578
- data.sort()
603
+ main.innerHTML = "";
604
+ data.sort();
579
605
  for (let i = serachValue.length; i >= 1; i--) {
580
- var newdata = data.filter((item) => item.length === i)
606
+ var newdata = data.filter((item) => item.length === i);
581
607
  if (newdata.length === 0) {
582
- main.innerHTML += ''
608
+ main.innerHTML += "";
583
609
  } else {
584
610
  const result = newdata.map((item) => {
585
- var text1 = serachValue.replace('?', '')
586
- var text2 = item
587
- var text3 = item
588
- let chars = text1.split('')
589
- let indexs = []
611
+ var text1 = serachValue.replace("?", "");
612
+ var text2 = item;
613
+ var text3 = item;
614
+ let chars = text1.split("");
615
+ let indexs = [];
590
616
  chars.map((i) => {
591
- let findIndexes = findIndex(text3, i)
617
+ let findIndexes = findIndex(text3, i);
592
618
  if (findIndexes.length > 0) {
593
- text3 = text3.split('')
594
- text3[findIndexes] = '$'
595
- text3 = text3.join('')
596
- indexs = [...indexs, ...findIndexes]
619
+ text3 = text3.split("");
620
+ text3[findIndexes] = "$";
621
+ text3 = text3.join("");
622
+ indexs = [...indexs, ...findIndexes];
597
623
  }
598
- })
599
- let itemHtml = ''
600
- text2.split('').map((itemValue, index) => {
601
- let check = indexs.find((i) => i === index)
624
+ });
625
+ let itemHtml = "";
626
+ text2.split("").map((itemValue, index) => {
627
+ let check = indexs.find((i) => i === index);
602
628
  if (check !== undefined) {
603
- itemHtml += `${itemValue}`
629
+ itemHtml += `${itemValue}`;
604
630
  } else {
605
- itemHtml += `<span class='highlight'>${itemValue}</span>`
631
+ itemHtml += `<span class='highlight'>${itemValue}</span>`;
606
632
  }
607
- })
633
+ });
608
634
  if (item.length === 1) {
609
- ok = false
635
+ ok = false;
610
636
  } else {
611
- let ScrabbleLetterScore = ScrabbleScore()
612
- let sum = 0
613
- item = item.toLowerCase()
637
+ let ScrabbleLetterScore = ScrabbleScore();
638
+ let sum = 0;
639
+ item = item.toLowerCase();
614
640
  for (let i = 0; i < item.length; i++) {
615
- sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
641
+ sum += ScrabbleLetterScore[item[i]] || 0; // for unknown characters
616
642
  }
617
643
 
618
644
  return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
619
645
  <li>${itemHtml}
620
646
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
621
- </li></a>`
647
+ </li></a>`;
622
648
  }
623
- })
649
+ });
624
650
  main.innerHTML += `
625
651
  <div class="allGroupWords wordlistContainer" id="alpha_${i}">
626
652
  <div class="wordListHeading">
@@ -628,11 +654,11 @@ function sortby(sortBool, data) {
628
654
  </div>
629
655
  <div class="wordList">
630
656
  <ul class="ul list-unstyled">
631
- ${result.join('')}
657
+ ${result.join("")}
632
658
  </ul>
633
659
  </div>
634
660
  </div>
635
- `
661
+ `;
636
662
  }
637
663
  }
638
664
  }
@@ -667,7 +693,7 @@ const ScrabbleScore = () => {
667
693
  x: 8,
668
694
  q: 10,
669
695
  z: 10,
670
- }
696
+ };
671
697
 
672
698
  let wwfScore = {
673
699
  a: 1,
@@ -696,70 +722,69 @@ const ScrabbleScore = () => {
696
722
  x: 8,
697
723
  y: 3,
698
724
  z: 10,
699
- }
725
+ };
700
726
 
701
- if (dictonary === 'wwf') {
702
- return wwfScore
727
+ if (dictonary === "wwf") {
728
+ return wwfScore;
703
729
  } else {
704
- return twl06_sowpods
730
+ return twl06_sowpods;
705
731
  }
706
- }
732
+ };
707
733
  //Handling of filter counter in advanced filter
708
734
  function addFilterCount() {
709
- let filter_val = document.getElementsByClassName('filter_val')
710
- let filter = document.querySelector('.filter_count')
711
- let filter_count = 0
735
+ let filter_val = document.getElementsByClassName("filter_val");
736
+ let filter = document.querySelector(".filter_count");
737
+ let filter_count = 0;
712
738
 
713
- filter_val[0].value = prefixValue
714
- filter_val[1].value = containsValue
715
- filter_val[2].value = suffixValue
716
- filter_val[3].value = exculdeValue
717
- filter_val[4].value = includeValue
718
- filter_val[5].value = lengthValue
739
+ filter_val[0].value = prefixValue;
740
+ filter_val[1].value = containsValue;
741
+ filter_val[2].value = suffixValue;
742
+ filter_val[3].value = exculdeValue;
743
+ filter_val[4].value = includeValue;
744
+ filter_val[5].value = lengthValue;
719
745
 
720
746
  for (var i = 0; i <= 5; i++) {
721
- if (filter_val[i].value != '') {
722
- filter_count += 1
747
+ if (filter_val[i].value != "") {
748
+ filter_count += 1;
723
749
  }
724
750
  if (filter_count === 0) {
725
- filter.style.display = 'none'
751
+ filter.style.display = "none";
726
752
  } else {
727
- filter.style.display = 'inline-block'
753
+ filter.style.display = "inline-block";
728
754
  }
729
755
 
730
- filter.innerHTML = filter_count
756
+ filter.innerHTML = filter_count;
731
757
  }
732
758
  }
733
- addFilterCount()
759
+ addFilterCount();
734
760
 
735
761
  // handling of filter on scroll
736
762
  window.onscroll = function () {
737
- var section = document.querySelectorAll('.wordlistContainer')
738
- let new_sections = {}
763
+ var section = document.querySelectorAll(".wordlistContainer");
764
+ let new_sections = {};
739
765
  Array.prototype.forEach.call(section, function (e) {
740
766
  if (document.body.clientWidth > 991) {
741
- new_sections[e.id] = e.offsetTop - 10
767
+ new_sections[e.id] = e.offsetTop - 10;
742
768
  } else {
743
- new_sections[e.id] = e.offsetTop - 10
769
+ new_sections[e.id] = e.offsetTop - 10;
744
770
  }
745
- })
771
+ });
746
772
  var scrollPosition =
747
- document.documentElement.scrollTop || document.body.scrollTop
773
+ document.documentElement.scrollTop || document.body.scrollTop;
748
774
  for (i in new_sections) {
749
- let sort_val = document.querySelector('.sort-select').value
775
+ let sort_val = document.querySelector(".sort-select").value;
750
776
  if (
751
- i.split('_')[0] == sort_val &&
777
+ i.split("_")[0] == sort_val &&
752
778
  new_sections[i] &&
753
779
  new_sections[i] <= scrollPosition
754
780
  ) {
755
- document.querySelector('.active-tab').classList.remove('active-tab')
756
- var active_now = document.querySelector('#Tab_' + i.split('_')[1])
757
- active_now.classList.add('active-tab')
758
- active_now.scrollIntoView({ block: 'nearest' })
781
+ document.querySelector(".active-tab").classList.remove("active-tab");
782
+ var active_now = document.querySelector("#Tab_" + i.split("_")[1]);
783
+ active_now.classList.add("active-tab");
784
+ active_now.scrollIntoView({ block: "nearest" });
759
785
  }
760
786
  }
761
- }
762
-
787
+ };
763
788
 
764
789
  // Add Filtering
765
790
  let sections = {};
@@ -791,51 +816,51 @@ function Filtering(id) {
791
816
  }
792
817
 
793
818
  // next && previous functionality
794
- let prev = document.getElementById('prev')
795
- let next = document.getElementById('next')
819
+ let prev = document.getElementById("prev");
820
+ let next = document.getElementById("next");
796
821
 
797
822
  if (prev) {
798
- prev.onclick = scroll_Right
823
+ prev.onclick = scroll_Right;
799
824
  }
800
825
  if (next) {
801
- next.onclick = scroll_Left
826
+ next.onclick = scroll_Left;
802
827
  }
803
- window.addEventListener('resize', function () {
804
- scroll_visible()
805
- })
806
- window.addEventListener('scroll', function () {
807
- scroll_visible()
808
- })
828
+ window.addEventListener("resize", function () {
829
+ scroll_visible();
830
+ });
831
+ window.addEventListener("scroll", function () {
832
+ scroll_visible();
833
+ });
809
834
  function scroll_visible() {
810
- let tab_container = document.querySelector('#tab-container')
835
+ let tab_container = document.querySelector("#tab-container");
811
836
  if (tab_container) {
812
837
  if (tab_container.clientWidth === tab_container.scrollWidth) {
813
- prev.style.display = 'none'
814
- next.style.display = 'none'
838
+ prev.style.display = "none";
839
+ next.style.display = "none";
815
840
  } else {
816
- prev.style.display = 'block'
817
- next.style.display = 'block'
841
+ prev.style.display = "block";
842
+ next.style.display = "block";
818
843
  }
819
844
  }
820
845
  }
821
- scroll_visible()
846
+ scroll_visible();
822
847
 
823
848
  function scroll_Left() {
824
- tab_container.scrollLeft += 130
849
+ tab_container.scrollLeft += 130;
825
850
  }
826
851
  function scroll_Right() {
827
- tab_container.scrollLeft -= 130
852
+ tab_container.scrollLeft -= 130;
828
853
  }
829
854
  function findIndex(str, char) {
830
- const strLength = str.length
831
- const indexes = []
832
- let newStr = str
855
+ const strLength = str.length;
856
+ const indexes = [];
857
+ let newStr = str;
833
858
 
834
859
  while (newStr && newStr.indexOf(char) > -1) {
835
- indexes.push(newStr.indexOf(char) + strLength - newStr.length)
836
- newStr = newStr.substring(newStr.indexOf(char) + 5)
837
- newStr = newStr.substring(newStr.indexOf(char) + 5)
860
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length);
861
+ newStr = newStr.substring(newStr.indexOf(char) + 5);
862
+ newStr = newStr.substring(newStr.indexOf(char) + 5);
838
863
  }
839
864
 
840
- return indexes
841
- }
865
+ return indexes;
866
+ }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: word-games-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.4
4
+ version: 1.6.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - manpreet-appscms