word-games-theme 2.9.1 → 2.9.2

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: d12aff42fce5a9ace893da8a8d15a9e897d679ad30469dd80986c8d772a06140
4
- data.tar.gz: 85aed6186c9aac0afd84ee3235de6f877432e1d14f3bbe4b608d136e23b4bd20
3
+ metadata.gz: e4d43ae91c1161c53a4feda7aa88e9913276f3229eeb5c0298ec6ab40f8f980b
4
+ data.tar.gz: 88ae5ae8fdb7cedf770f5eb22b092fd8c878232155caef6455a3bb8e7486d184
5
5
  SHA512:
6
- metadata.gz: 4326663a588b0c281f247454147775b97d363e826d7e4b19e2406db91af10ef360adbca469249a9ed80aa7fe70f5152641a65b2c943b0e1d71313e28c7ac9436
7
- data.tar.gz: 54761c41503cced1ecab810243e463c9133b8c5b252bf750c2ff72091583d305978b97871f28a2445ff310f6d417f4250e08880d65da50a50140bd4ae50ddb89
6
+ metadata.gz: c75ce8ba4304ae6754fb9cfe5ab7b78f8ac4d537bafa1b446f50abb8bab6e96d115eff73538d7d6b943e817fa7b70974ff70610bf0f624000bab5af09f4f16d4
7
+ data.tar.gz: 8a785b845d0dfb2575994637b71e8dab6ac551bac767ac737638e568cd12887e3affa10fd1552ce6573473c0cb30f4f648da5fd121a1b4a549d5015e0c132b4b
@@ -41,34 +41,313 @@ for (let e = 0; e < greyLetters.length; e++) {
41
41
  })
42
42
  }
43
43
 
44
+ let wordleSolverData = document.getElementById('wordleSolverData')
45
+ greenLetters[0].focus()
46
+ let wordleWordCount = document.querySelector('#wordleWordCount')
47
+ let wordleSolvererrorMsg = document.querySelector('#wordleSolvererrorMsg')
48
+ let wordlesolver_submit = document.getElementById('wordlesolver_submit')
49
+ let newWordsLength = 0
50
+
51
+ let errMessage = document.querySelector('.errMessage')
52
+ let wrapper_div = document.querySelector('.wrapper_div')
53
+ const params = new URLSearchParams(window.location.search)
54
+ let spinner = document.querySelector('.spinner')
55
+
56
+ let featureContainer = document.querySelector("#featureContainer")
57
+ let howContainer = document.querySelector("#howContainer")
58
+ let faqsContainer = document.querySelector("#faqsContainer")
59
+ let infographicsContainer = document.querySelector("#infographicsContainer")
60
+ let authorsLists = document.querySelector(".authors-list")
61
+
44
62
  function handleSubmit(e) {
45
63
  e.preventDefault()
64
+
65
+ if (featureContainer) {
66
+ featureContainer.remove()
67
+ }
68
+ if (howContainer) {
69
+ howContainer.remove()
70
+ }
71
+ if (faqsContainer) {
72
+ faqsContainer.remove()
73
+ }
74
+ if (infographicsContainer) {
75
+ infographicsContainer.remove()
76
+ }
77
+ if (authorsLists) {
78
+ authorsLists.remove()
79
+ }
80
+
81
+
82
+
83
+ document.querySelector(".refineSerach").style.display = "block"
84
+ const scrollingElement = (document.scrollingElement || document.body);
85
+ scrollingElement.scroll({ top: 515, behavior: 'smooth' });
86
+
87
+ let greenWithIndex = getIndexs('.greenWithIndex')
88
+
46
89
  let corretLettterArray = []
90
+ let getGreenLetters = []
47
91
  Array.from(greenLetters).map((item) => {
48
92
  if (!item.value) {
49
- corretLettterArray.push(item.value.replace("", "_"))
93
+ corretLettterArray.push(item.value.replace("", "_").toLowerCase())
50
94
  } else {
51
- corretLettterArray.push(item.value)
95
+ getGreenLetters.push(item.value.toLowerCase())
96
+ corretLettterArray.push(item.value.toLowerCase())
52
97
  }
53
98
  })
54
- let includesLettterArray = []
99
+ let includesLettersArray = []
100
+ let getYellowLetters = []
55
101
  Array.from(yellowLetters).map((item) => {
56
102
  if (!item.value) {
57
- includesLettterArray.push(item.value.replace("", "_"))
103
+ includesLettersArray.push(item.value.replace("", "_").toLowerCase())
58
104
  } else {
59
- includesLettterArray.push(item.value)
105
+ getYellowLetters.push(item.value.toLowerCase())
106
+ includesLettersArray.push(item.value.toLowerCase())
60
107
  }
61
108
  })
62
- let exculdesLettterArray = []
109
+ let excludesLettersArray = []
110
+ let getGreyLetters = []
63
111
  Array.from(greyLetters).map((item) => {
64
112
  if (!item.value) {
65
- exculdesLettterArray.push(item.value.replace("", "_"))
113
+ excludesLettersArray.push(item.value.replace("", "_").toLowerCase())
66
114
  } else {
67
- exculdesLettterArray.push(item.value)
115
+ getGreyLetters.push(item.value.toLowerCase())
116
+ excludesLettersArray.push(item.value.toLowerCase())
68
117
  }
69
118
  })
119
+ if (history.pushState) {
120
+ var newurl = window.location.protocol + "//" + window.location.host +
121
+ window.location.pathname + '?' + "correct" + "=" + corretLettterArray.join("")
122
+ + '&includes' + '=' + includesLettersArray.join("") + "&excludes" + '=' + excludesLettersArray.join("")
123
+ window.history.pushState({ path: newurl }, '', newurl);
124
+
125
+ const params = new URLSearchParams(window.location.search)
126
+ let correct = params.get('correct')
127
+ let includes = params.get('includes')
128
+ let excludes = params.get('excludes')
129
+
130
+ gtag('event', 'page_view', {
131
+ page_location: window.location.pathname + location.search,
132
+ })
133
+ }
134
+ wordleSolver(getGreenLetters, getYellowLetters, getGreyLetters, greenWithIndex)
135
+ }
136
+ if (params.size > 0) {
137
+ window.onload = function (e) {
138
+ handleSubmit(e);
139
+ }
140
+ let correct = params.get('correct').toLowerCase()
141
+ let includes = params.get('includes').toLowerCase()
142
+ let excludes = params.get('excludes').toLowerCase()
143
+ for (let g = 0; g < greenLetters.length; g++) {
144
+ const elem = greenLetters[g]
145
+ let values = correct.split("")
146
+ values.map((item, index) => {
147
+ if (Number(elem.dataset.id) === index) {
148
+ elem.value = item.replace("_", "")
149
+ if (elem.value != "") {
150
+ elem.classList.add('ws-fcs')
151
+ }
152
+ }
153
+ })
154
+ elem.addEventListener('input', (e) => {
155
+ e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
156
+ if (e.target.value) {
157
+ e.target.classList.add('ws-fcs')
158
+ } else {
159
+ e.target.classList.remove('ws-fcs')
160
+ }
161
+ })
162
+ }
163
+ for (let y = 0; y < yellowLetters.length; y++) {
164
+ const elem = yellowLetters[y]
165
+ let values = includes.split("")
166
+ values.map((item, index) => {
167
+ if (Number(elem.dataset.id) === index) {
168
+ elem.value = item.replace("_", "")
169
+ if (elem.value != "") {
170
+ elem.classList.add('ws-fcs2')
171
+ }
172
+ }
173
+ })
174
+ elem.addEventListener('input', (e) => {
175
+ e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
176
+ if (e.target.value) {
177
+ e.target.classList.add('ws-fcs2')
178
+ } else {
179
+ e.target.classList.remove('ws-fcs2')
180
+ }
181
+ })
182
+ }
183
+ for (let e = 0; e < greyLetters.length; e++) {
184
+ const elem = greyLetters[e]
185
+ let values = excludes.split("")
186
+ values.map((item, index) => {
187
+ if (Number(elem.dataset.id) === index) {
188
+ elem.value = item.replace("_", "")
189
+ if (elem.value != "") {
190
+ elem.classList.add('ws-fcs3')
191
+ }
192
+ }
193
+ })
194
+
195
+ elem.addEventListener('input', (e) => {
196
+ e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
197
+ if (e.target.value) {
198
+ e.target.classList.add('ws-fcs3')
199
+ } else {
200
+ e.target.classList.remove('ws-fcs3')
201
+ }
202
+ })
203
+ }
70
204
 
71
- window.location = `/${permalink}/result` + '?' + "correct" + "=" + corretLettterArray.join("")
72
- + '&includes' + '=' + includesLettterArray.join("") + "&excludes" + '=' + exculdesLettterArray.join("")
73
205
  }
74
- form.addEventListener('submit', handleSubmit)
206
+ form.addEventListener('submit', handleSubmit)
207
+
208
+ const wordleSolver = async (value, value2, value3, greenWithIndex) => {
209
+ try {
210
+ let result = ''
211
+ document.querySelector('#updateTxt').innerHTML = ''
212
+ spinner.classList.add('spinner-border')
213
+ wordleWordCount.innerHTML = 'Searching for best possible letters...'
214
+ let response = await fetch('/.netlify/functions/wordleSolver', {
215
+ method: 'POST',
216
+ body: JSON.stringify({
217
+ greenLetters: value,
218
+ yellowLetters: value2,
219
+ greyLetters: value3,
220
+ greenWithIndex: greenWithIndex,
221
+ }),
222
+ })
223
+ let data = await response.json()
224
+ data = data.slice(0, 1000)
225
+ document.querySelector('#updateTxt').innerHTML = 'Solve'
226
+ spinner.classList.remove('spinner-border')
227
+
228
+ let ok = true
229
+ if (data.length === 0) {
230
+ newWordsLength = ''
231
+ wordleSolverData.innerHTML = ''
232
+ wordleSolvererrorMsg.classList.add('alert-danger')
233
+ wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
234
+ wordleWordCount.style.display = 'none'
235
+ // console.log(wordleWordCount)
236
+ } else {
237
+ wordleWordCount.style.display = 'block'
238
+ wordleSolverData.innerHTML = ''
239
+ wordleSolvererrorMsg.classList.remove('alert-danger')
240
+ wordleSolvererrorMsg.innerHTML = ''
241
+ newWordsLength = ''
242
+ newWordsLength += data.length
243
+ result = data.map((item) => {
244
+ if (item.length === 1) {
245
+ ok = false
246
+ newWordsLength = newWordsLength - 1
247
+ } else {
248
+ // console.log(newWordsLength);
249
+ let ScrabbleLetterScore = ScrabbleScore()
250
+ sum = 0
251
+ item = item.toLowerCase()
252
+ for (let i = 0; i < item.length; i++) {
253
+ sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
254
+ }
255
+ return `
256
+ <a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
257
+ <li>
258
+ ${item.toLowerCase()}
259
+ <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
260
+ </li>
261
+ </a>
262
+ `
263
+ }
264
+ })
265
+ if (ok) {
266
+ wordleSolverData.innerHTML += `
267
+ <div class="allfiveletterswords wordlistContainer">
268
+ <div class="wordListHeading">
269
+ <h3 class="lead">Solve wordle with these words</h3>
270
+ </div>
271
+ <div class="wordList">
272
+ <ul class="ul list-unstyled">
273
+ ${result.join('')}
274
+ </ul>
275
+ </div>
276
+ </div>
277
+ `
278
+ }
279
+ }
280
+
281
+ if (newWordsLength === 0) {
282
+ console.log(true)
283
+ wordleSolvererrorMsg.classList.add('alert-danger')
284
+ wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
285
+ } else {
286
+ wordleWordCount.innerHTML = `<strong>Found <span style="color:#20a815">${newWordsLength}</span> matching words for wordle</strong>`
287
+ }
288
+ } catch (error) {
289
+ console.log(error)
290
+ }
291
+ }
292
+ const getLetters = (object) => {
293
+ let letters = []
294
+ if (typeof object === 'string') {
295
+ object = document.querySelectorAll(object)
296
+ }
297
+ for (let item of object) {
298
+ if (item.value.trim().length === 1) {
299
+ letters.push(item.value.toLowerCase())
300
+ }
301
+ }
302
+ return letters
303
+ }
304
+ const getIndexs = (object) => {
305
+ let index = []
306
+ if (typeof object === 'string') {
307
+ object = document.querySelectorAll(object)
308
+ }
309
+ for (let item of object) {
310
+ if (item.value.trim().length === 1) {
311
+ index.push({
312
+ value: item.value.toLowerCase(),
313
+ index: item.dataset.id,
314
+ })
315
+ }
316
+ }
317
+ return index
318
+ }
319
+ document.querySelector(".refineSerach").addEventListener("click", () => {
320
+ const scrollingElement = (document.scrollingElement || document.body);
321
+ scrollingElement.scroll({ top: 0, behavior: 'smooth' });
322
+ })
323
+ const ScrabbleScore = () => {
324
+ let twl06_sowpods = {
325
+ a: 1,
326
+ e: 1,
327
+ i: 1,
328
+ o: 1,
329
+ u: 1,
330
+ l: 1,
331
+ n: 1,
332
+ r: 1,
333
+ s: 1,
334
+ t: 1,
335
+ d: 2,
336
+ g: 2,
337
+ b: 3,
338
+ c: 3,
339
+ m: 3,
340
+ p: 3,
341
+ f: 4,
342
+ h: 4,
343
+ v: 4,
344
+ w: 4,
345
+ y: 4,
346
+ k: 5,
347
+ j: 8,
348
+ x: 8,
349
+ q: 10,
350
+ z: 10,
351
+ }
352
+ return twl06_sowpods
353
+ }
@@ -19,29 +19,6 @@ let includes = params.get('includes').toLowerCase()
19
19
  let excludes = params.get('excludes').toLowerCase()
20
20
 
21
21
 
22
- // let addMore = document.querySelector('#addMore')
23
-
24
- // addMore.addEventListener('click', (e) => {
25
- // e.preventDefault()
26
- // let div = document.createElement('div')
27
- // div.classList.add('d-flex')
28
- // div.classList.add('mt-2')
29
-
30
- // for (let i = 20; i <= 24; i++) {
31
- // let input = document.createElement('input')
32
- // input.type = 'text'
33
- // input.setAttribute('maxlength', '1')
34
- // input.setAttribute('autocomplete', 'off')
35
- // if (i <= 24) {
36
- // input.setAttribute('tabIndex', i)
37
- // }
38
- // let classes = ['wordleSolver-field', 'greyLetters', 'form-control', 'px-5']
39
- // input.classList.add(...classes)
40
- // input.id = 'greyLetters'
41
- // div.append(input)
42
- // wrapper_div.append(div)
43
- // }
44
- // })
45
22
 
46
23
  let spinner = document.querySelector('.spinner')
47
24
  const wordleSolver = async (value, value2, value3, greenWithIndex) => {
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: word-games-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.9.1
4
+ version: 2.9.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - manpreet-appscms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-06-20 00:00:00.000000000 Z
11
+ date: 2024-06-24 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll