word-games-theme 0.7.7 → 0.8.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aa172b0b70f3e3c7c55a87ec2c874113541b6c4f40a18b80f71404defac66a2d
4
- data.tar.gz: 8746904faf77e6f6297d83cb112162f00344b2f4fd026924b41a7523d5e0b28d
3
+ metadata.gz: 365f974085302d1308d6b085887b28c5e0eea6802bfb87af6560dbe57c91ae19
4
+ data.tar.gz: fc5713197ce42b4869e1ff9cbfc218cf84413493d04d31de9df16345a3c2d3b4
5
5
  SHA512:
6
- metadata.gz: daf51ff1e665ba3d55eb3f6ed332b441217bd6124d4bb7c36b6e4da8d068412e7573ff67eab297230e02df8a5e974aeacea75cae3256ec55703bf28c11c61aa6
7
- data.tar.gz: 851fde0e607280cc88133d453f706e772326cc40b03eca19ed4e712f97b4f54c2dd48f432ccf9cd59a2c3f1b788441163e2327fde41502f82b7d98e640be7c45
6
+ metadata.gz: fc89d748df6b1a3dfff361dc4c4713cdc2680fbac866757d12304dcfecff5b3a6044e7bddc190cc50a8a793127cff0eeb48ab5f8c1fbb2219813008514e43423
7
+ data.tar.gz: 614d760ab3ef31eccf42e790ce52a3e608d1b8dbac5a3743f0d3b1f7509109d79a7fcdf7963d027c65836bd979fd1a2918e0c83278777bd686f9deee38812aa5
@@ -5,6 +5,10 @@
5
5
  "name": "words",
6
6
  "url": "/test"
7
7
  },
8
+ {
9
+ "name": "4 letter words with these letters and a blank",
10
+ "url": "/4-letter-words-with-these-letters-and-a-blank"
11
+ },
8
12
  {
9
13
  "name": "unscramble-letters",
10
14
  "url": "/unscramble-letters-to-make-words"
@@ -0,0 +1 @@
1
+ {"filewords":{"name":"","data":[{"word":"","x":"","gameName":""}]},"filepath":{},"title":"4 letter words with these letters and a blank- The most useful word finder tool ","h1":"Here's the full list of 4 letter words with these letters and a blank","h2":"Find all 4 letter words with these letters and a blank","meta":"Find words using a combination of letters and blanks words using a combination of letters and blanks without any constrain. Use our advanced word search tool and get your desired result.","featureNo":"02","feature_title":"Features","blogNo":"03","blog_title":"Blog","FaqNo":"04","Faq_title":"FAQ","aboutNo":"05","about_title":"About","featureList":[{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"},{"feature_heading":"","feature_text":"","fa_class":"../assets/images/star.svg"}],"faqList":[{"Question":"","Answer":""}]}
@@ -5,16 +5,16 @@
5
5
  {%- assign CustomColor = site.data.theme.colors -%}
6
6
  <!-- start commonPage as LandingPage -->
7
7
 
8
- <div class="container py-3 result_header">
8
+ <!-- <div class="container py-3 result_header">
9
9
  <nav class="navbar result_page_navbar">
10
10
  <a class="navbar-brand result_header_logo" href="/" title="words with letters">
11
11
  <img src="{{ site.favicon | relative_url }}" alt="{{site.name}}-logo" style="width:35px; height:35px;">
12
12
  </a>
13
13
  </nav>
14
- </div>
14
+ </div> -->
15
15
  <div class="container" id="containerWd">
16
16
  <section class="sticky_nav">
17
- <div class="pageHeading text-center">
17
+ <div class="pageHeading text-center pt-5">
18
18
  <h1 class="heading m-0 pb-0">
19
19
  {{dataToShow.h1}}</h1>
20
20
  {%- if dataToShow.h2 != "" -%}
@@ -27,7 +27,7 @@
27
27
  <form action="" id='form'>
28
28
  <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
29
29
  placeholder="Enter up to 15 letters?" class="txtBox resultPageTxtBox" value='' name="search"
30
- maxlength="15" value required>
30
+ maxlength="15" value required autocomplete="off">
31
31
  <input
32
32
  style="border-radius: {{CustomColor.inputFieldBorder}}; background-color: {{CustomColor.inputButtonBg}};"
33
33
  type="submit" class="serachBtn resultPageSearchBtn" id="serach" value>
@@ -20,10 +20,14 @@
20
20
  <div class="serachSection">
21
21
  <div class="position-relative serachBox">
22
22
  <form action="/result" id='form' method="GET">
23
-
24
- <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
25
- placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
26
- required autocomplete="off">
23
+ <div style="position: relative;">
24
+ <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
25
+ placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
26
+ required autocomplete="off">
27
+ <span class="focus-border">
28
+ <i></i>
29
+ </span>
30
+ </div>
27
31
  <input style="border-radius: {{CustomColor.inputFieldBorder}};
28
32
  background-color: {{CustomColor.inputButtonBg}};" type="submit" class="serachBtn" id="serach"
29
33
  value>
@@ -19,9 +19,15 @@
19
19
  <div class="serachSection">
20
20
  <div class="position-relative serachBox">
21
21
  <form action="{{page.url}}/result" id='form' method="GET">
22
- <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
23
- placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
24
- required autocomplete="off">
22
+ <div style="position: relative;">
23
+ <input style="border-radius: {{CustomColor.inputFieldBorder}}" type="text"
24
+ placeholder="Enter up to 15 letters?" class="txtBox" value='' name="search" maxlength="15"
25
+ required autocomplete="off">
26
+ <span class="focus-border">
27
+ <i></i>
28
+ </span>
29
+ </div>
30
+
25
31
  <input
26
32
  style="border-radius: {{CustomColor.inputFieldBorder}}; background-color: {{CustomColor.inputButtonBg}};"
27
33
  type="submit" class="serachBtn" id="serach" value>
@@ -85,7 +91,7 @@
85
91
  </div>
86
92
  </div>
87
93
  </form>
88
- {%- if page.letter == 5 -%}
94
+ {%- if page.wordle == 'solver' -%}
89
95
  <h2 class="m-0 mt-4 text-center" style="font-size:16px">
90
96
  <a style="color:#000" href="/wordle-solver">Solve wordle quickly using our wordle solver</a>
91
97
  </h2>
@@ -1,4 +1,4 @@
1
- <div class="row pad" style="padding:0px .2rem 5rem .2rem">
1
+ <div class="row pad" style="padding:60px .2rem 5rem .2rem">
2
2
  <div class="col-md-12">
3
3
  <div class="wordCount"></div>
4
4
  <div class="main"></div>
@@ -8,7 +8,7 @@
8
8
  box-shadow: 0 1px 0 rgb(0 0 0 / 10%);
9
9
  }
10
10
  </style>
11
- <div class="row pad" style="padding:0px .2rem 5rem .2rem">
11
+ <div class="row pad" style="padding:60px .2rem 5rem .2rem">
12
12
  <div class=" col-md-12">
13
13
  <div class="wordCount">
14
14
  <strong>
@@ -5,7 +5,7 @@
5
5
  {%- assign CustomColor = site.data.theme.colors -%}
6
6
  <!-- start commonPage as LandingPage -->
7
7
  <div class="container" id="containerWd">
8
- <section class="sticky_nav" style="top:60px">
8
+ <section class="sticky_nav">
9
9
  <div class="pageHeading text-center pt-5">
10
10
  <h1 class="heading m-0 pb-0">
11
11
  {{dataToShow.h1}}</h1>
@@ -10,7 +10,7 @@
10
10
 
11
11
  <link rel="stylesheet"
12
12
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
13
- <script defer src=" https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
13
+ <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
14
14
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
15
15
  {% include Monumetric/Monumetric.html %}
16
16
  </body>
@@ -56,13 +56,11 @@
56
56
  <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
57
57
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
58
58
  <script>
59
-
60
59
  let txtBox = document.querySelector('.txtBox')
61
60
  let focusBorder = document.querySelector('.focus-border')
62
-
63
61
  txtBox.focus()
64
62
  txtBox.addEventListener('input', (e) => {
65
- focusBorder.classList.remove('focus-border')
63
+ focusBorder.classList.remove("focus-border")
66
64
  e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
67
65
  let rangeOfBlankTile = '{{ page.blanktilerange }}'
68
66
  if (rangeOfBlankTile === "") {
data/_layouts/page.html CHANGED
@@ -49,6 +49,8 @@
49
49
 
50
50
  <body>
51
51
 
52
+ {%- include header/index.html -%}
53
+
52
54
  {%- include section/commonPage.html -%}
53
55
 
54
56
  {%- include share/socialshare.html -%}
@@ -57,6 +59,17 @@
57
59
 
58
60
  <link rel="stylesheet"
59
61
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
62
+ <script src="//cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js"></script>
63
+ <script>WebFont.load({ google: { families: ['Poppins:400&display=swap'] } })</script>
64
+ <script>
65
+ (function () {
66
+ d = document;
67
+ c = d.createElement('link');
68
+ c.href = '//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css';
69
+ c.rel = 'stylesheet';
70
+ d.head.appendChild(c);
71
+ })();
72
+ </script>
60
73
  <script data-range="{{page.blanktilerange}}" src="/assets/js/wordScrabble.js"></script>
61
74
  <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
62
75
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
data/_layouts/page2.html CHANGED
@@ -45,6 +45,8 @@
45
45
 
46
46
  <body>
47
47
 
48
+ {%- include header/index.html -%}
49
+
48
50
  {%- include section/commonPage.html -%}
49
51
 
50
52
 
@@ -55,7 +57,18 @@
55
57
 
56
58
  <link rel="stylesheet"
57
59
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
58
- <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}"></script>
60
+ <script src="//cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js"></script>
61
+ <script>WebFont.load({ google: { families: ['Poppins:400&display=swap'] } })</script>
62
+ <script>
63
+ (function () {
64
+ d = document;
65
+ c = d.createElement('link');
66
+ c.href = '//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css';
67
+ c.rel = 'stylesheet';
68
+ d.head.appendChild(c);
69
+ })();
70
+ </script>
71
+ <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}" data-ablank="{{page.ablank}}"></script>
59
72
  <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
60
73
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
61
74
  {% include Monumetric/Monumetric.html %}
@@ -95,7 +95,7 @@
95
95
 
96
96
  <link rel="stylesheet"
97
97
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
98
- <script defer src=" https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
98
+ <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
99
99
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
100
100
  {% include Monumetric/Monumetric.html %}
101
101
 
@@ -41,7 +41,7 @@
41
41
  background: #fff;
42
42
  position: absolute;
43
43
  z-index: 999;
44
- top: 140px;
44
+ top: 100px;
45
45
  right: 150px;
46
46
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
47
47
  padding: 30px 15px;
@@ -68,7 +68,7 @@
68
68
  .sticky_nav {
69
69
  position: sticky;
70
70
  width: inherit;
71
- top: 0px;
71
+ top: 58px;
72
72
  background-color: #fff;
73
73
  z-index: 99;
74
74
  }
@@ -272,7 +272,7 @@ hr {
272
272
  }
273
273
 
274
274
  .footer-section {
275
- padding: 5px 0px;
275
+ padding: 50px 0px;
276
276
  background-color: #f8f9fa;
277
277
  margin-top: 3rem;
278
278
  }
data/assets/css/home.css CHANGED
@@ -55,6 +55,77 @@ input:-webkit-autofill:active {
55
55
  outline: none;
56
56
  position: relative;
57
57
  }
58
+
59
+ .txtBox~.focus-border:before,
60
+ .txtBox~.focus-border:after {
61
+ content: "";
62
+ position: absolute;
63
+ top: 0;
64
+ right: 0;
65
+ width: 0;
66
+ height: 2px;
67
+ background-color: #000;
68
+ transition: .5s;
69
+ transition-delay: 0.2s;
70
+ z-index: 9;
71
+ }
72
+ .txtBox~.focus-border:after {
73
+ top: auto;
74
+ bottom: 0;
75
+ right: auto;
76
+ left: 0;
77
+ transition-delay: 0.6s;
78
+ }
79
+ .txtBox:focus~.focus-border:before,
80
+ .txtBox:focus~.focus-border:after,
81
+ .has-content.txtBox~.focus-border:before,
82
+ .has-content.txtBox~.focus-border:after {
83
+ width: 100%;
84
+ transition: .5s;
85
+ transition-delay: 0.6s;
86
+ }
87
+
88
+ .txtBox:focus~.focus-border:after,
89
+ .has-content.txtBox~.focus-border:after {
90
+ transition-delay: 0.2s;
91
+ }
92
+
93
+ .txtBox:focus~.focus-border i:before,
94
+ .txtBox:focus~.focus-border i:after,
95
+ .has-content.txtBox~.focus-border i:before,
96
+ .has-content.txtBox~.focus-border i:after {
97
+ height: 100%;
98
+ transition: 0.2s;
99
+ }
100
+
101
+ .txtBox:focus~.focus-border i:after,
102
+ .has-conten.txtBox~.focus-border i:after {
103
+ transition-delay: 0.4s;
104
+ }
105
+ .txtBox~.focus-border i:before,
106
+ .txtBox~.focus-border i:after {
107
+ content: "";
108
+ position: absolute;
109
+ top: 0;
110
+ left: 0;
111
+ width: 2px;
112
+ height: 0;
113
+ background-color: #000;
114
+ transition: .5s;
115
+ }
116
+
117
+ .txtBox~.focus-border i:after {
118
+ left: auto;
119
+ right: 0;
120
+ top: auto;
121
+ bottom: 0;
122
+ transition-delay: 0.4s;
123
+ }
124
+
125
+
126
+
127
+
128
+
58
129
  /* ravi */
59
130
  .txtBox::placeholder {
60
131
  /* Chrome, Firefox, Opera, Safari 10.1+ */
@@ -3,7 +3,10 @@
3
3
  const getScript=document.currentScript
4
4
  const letterLen = getScript.dataset.letter
5
5
 
6
+ const ablank = getScript.dataset.ablank
7
+
6
8
  let errorMsg = document.querySelector('.errorMsg')
9
+ let script = document.currentScript
7
10
  let wordCount = document.querySelector('.wordCount')
8
11
  let main = document.querySelector('.main')
9
12
 
@@ -24,9 +27,52 @@ let txtBox = document.querySelector('.txtBox')
24
27
  txtBox.focus()
25
28
  txtBox.value = serachValue
26
29
 
30
+
31
+ if(ablank){
32
+ if(!serachValue.includes("?")){
33
+ if(serachValue.length < letterLen){
34
+ serachValue = serachValue + '?'
35
+ }
36
+ }
37
+ }
38
+
39
+ txtBox.addEventListener('input', (e) => {
40
+ let rangeOfBlankTile = script.dataset.range
41
+ e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, '')
42
+ if (rangeOfBlankTile === '') {
43
+ rangeOfBlankTile = 5
44
+ }
45
+ e.target.value = e.target.value.replace(/ /g, '?')
46
+ let data = []
47
+ data = e.target.value.split('').filter((i) => i === '?')
48
+ if (data.length > rangeOfBlankTile) {
49
+ e.target.value = e.target.value.replace(/\?$/, '')
50
+ }
51
+ })
52
+
27
53
  var theSelect = document.getElementById('select_dropDown')
28
54
  document.querySelector('.select_dropDown2').value = dictonary
29
-
55
+ const getDiff = (text1, text2) => {
56
+ var diffRange = []
57
+ var currentRange = undefined
58
+ for (var i = 0; i < text1.length; i++) {
59
+ if (text1[i] != text2[i]) {
60
+ if (currentRange == undefined) {
61
+ currentRange = [i]
62
+ }
63
+ }
64
+ if (currentRange != undefined && text1[i] == text2[i]) {
65
+ currentRange.push(i)
66
+ diffRange.push(currentRange)
67
+ currentRange = undefined
68
+ }
69
+ }
70
+ if (currentRange != undefined) {
71
+ currentRange.push(i)
72
+ diffRange.push(currentRange)
73
+ }
74
+ return diffRange
75
+ }
30
76
  const getData = async (serachValue) => {
31
77
  try {
32
78
  main.innerHTML = `<div class="loader">
@@ -46,6 +92,7 @@ const getData = async (serachValue) => {
46
92
  getData(serachValue.toLowerCase())
47
93
 
48
94
  function x_with_letters(data) {
95
+ console.log(data);
49
96
  if (typeof data === 'string') {
50
97
  errorMsg.innerHTML = 'No words found'
51
98
  wordCount.innerHTML = `<strong>Found 0 words with letters ${serachValue.split(
@@ -59,7 +106,7 @@ function x_with_letters(data) {
59
106
  if (letterLen) {
60
107
  filterData = data.filter((item) => item.length == letterLen)
61
108
  }
62
-
109
+
63
110
 
64
111
  if (prefixValue) {
65
112
  filterData = filterData.filter((item2) =>
@@ -160,8 +207,45 @@ function x_with_letters(data) {
160
207
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
161
208
  }
162
209
  wordLength.value = itemLength
210
+
211
+ var text1 = serachValue.replace('?', '')
212
+ var text2 = item
213
+ var text3 = item
214
+ function findIndex(str, char) {
215
+ const strLength = str.length
216
+ const indexes = []
217
+ let newStr = str
218
+ while (newStr && newStr.indexOf(char) > -1) {
219
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
220
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
221
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
222
+ }
223
+ return indexes
224
+ }
225
+ let chars = text1.split('')
226
+ let indexs = []
227
+ chars.map((i) => {
228
+ let findIndexes = findIndex(text3, i)
229
+ if (findIndexes.length > 0) {
230
+ text3 = text3.split('')
231
+ text3[findIndexes] = '$'
232
+ text3 = text3.join('')
233
+ indexs = [...indexs, ...findIndexes]
234
+ }
235
+ })
236
+ let itemHtml = ''
237
+ text2.split('').map((itemValue, index) => {
238
+ let check = indexs.find((i) => i === index)
239
+ if (check !== undefined) {
240
+ itemHtml += `${itemValue}`
241
+ } else {
242
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
243
+ }
244
+ })
245
+
246
+
163
247
  return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item}">
164
- <li>${item}
248
+ <li>${itemHtml}
165
249
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
166
250
  </li></a>`
167
251
  })
@@ -245,8 +329,42 @@ function sortPointsby(sortValue, data, i) {
245
329
  })
246
330
  })
247
331
  const result = newArray.map((item) => {
248
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
249
- <li>${item.words}
332
+ var text1 = serachValue.replace('?', '')
333
+ var text2 = item.words
334
+ var text3 = item.words
335
+ function findIndex(str, char) {
336
+ const strLength = str.length
337
+ const indexes = []
338
+ let newStr = str
339
+ while (newStr && newStr.indexOf(char) > -1) {
340
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
341
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
342
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
343
+ }
344
+ return indexes
345
+ }
346
+ let chars = text1.split('')
347
+ let indexs = []
348
+ chars.map((i) => {
349
+ let findIndexes = findIndex(text3, i)
350
+ if (findIndexes.length > 0) {
351
+ text3 = text3.split('')
352
+ text3[findIndexes] = '$'
353
+ text3 = text3.join('')
354
+ indexs = [...indexs, ...findIndexes]
355
+ }
356
+ })
357
+ let itemHtml = ''
358
+ text2.split('').map((itemValue, index) => {
359
+ let check = indexs.find((i) => i === index)
360
+ if (check !== undefined) {
361
+ itemHtml += `${itemValue}`
362
+ } else {
363
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
364
+ }
365
+ })
366
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
367
+ <li>${itemHtml}
250
368
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
251
369
  </li></a>`
252
370
  })
@@ -265,7 +383,6 @@ function sortPointsby(sortValue, data, i) {
265
383
  `
266
384
  }
267
385
  }
268
-
269
386
  // sort by aplhabets
270
387
  function sortby(sortBool, data, i) {
271
388
  if (sortBool) {
@@ -278,8 +395,44 @@ function sortby(sortBool, data, i) {
278
395
  for (let i = 0; i < item.length; i++) {
279
396
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
280
397
  }
281
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
282
- <li>${item}
398
+
399
+ var text1 = serachValue.replace('?', '')
400
+ var text2 = item
401
+ var text3 = item
402
+ function findIndex(str, char) {
403
+ const strLength = str.length
404
+ const indexes = []
405
+ let newStr = str
406
+ while (newStr && newStr.indexOf(char) > -1) {
407
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
408
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
409
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
410
+ }
411
+ return indexes
412
+ }
413
+ let chars = text1.split('')
414
+ let indexs = []
415
+ chars.map((i) => {
416
+ let findIndexes = findIndex(text3, i)
417
+ if (findIndexes.length > 0) {
418
+ text3 = text3.split('')
419
+ text3[findIndexes] = '$'
420
+ text3 = text3.join('')
421
+ indexs = [...indexs, ...findIndexes]
422
+ }
423
+ })
424
+ let itemHtml = ''
425
+ text2.split('').map((itemValue, index) => {
426
+ let check = indexs.find((i) => i === index)
427
+ if (check !== undefined) {
428
+ itemHtml += `${itemValue}`
429
+ } else {
430
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
431
+ }
432
+ })
433
+
434
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item}">
435
+ <li>${itemHtml}
283
436
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
284
437
  </li></a>`
285
438
  })
@@ -307,8 +460,44 @@ function sortby(sortBool, data, i) {
307
460
  for (let i = 0; i < item.length; i++) {
308
461
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
309
462
  }
310
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
311
- <li>${item}
463
+
464
+ var text1 = serachValue.replace('?', '')
465
+ var text2 = item
466
+ var text3 = item
467
+ function findIndex(str, char) {
468
+ const strLength = str.length
469
+ const indexes = []
470
+ let newStr = str
471
+ while (newStr && newStr.indexOf(char) > -1) {
472
+ indexes.push(newStr.indexOf(char) + strLength - newStr.length)
473
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
474
+ newStr = newStr.substring(newStr.indexOf(char) + 1)
475
+ }
476
+ return indexes
477
+ }
478
+ let chars = text1.split('')
479
+ let indexs = []
480
+ chars.map((i) => {
481
+ let findIndexes = findIndex(text3, i)
482
+ if (findIndexes.length > 0) {
483
+ text3 = text3.split('')
484
+ text3[findIndexes] = '$'
485
+ text3 = text3.join('')
486
+ indexs = [...indexs, ...findIndexes]
487
+ }
488
+ })
489
+ let itemHtml = ''
490
+ text2.split('').map((itemValue, index) => {
491
+ let check = indexs.find((i) => i === index)
492
+ if (check !== undefined) {
493
+ itemHtml += `${itemValue}`
494
+ } else {
495
+ itemHtml += `<span class='highlight'>${itemValue}</span>`
496
+ }
497
+ })
498
+
499
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item}">
500
+ <li>${itemHtml}
312
501
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
313
502
  </li></a>`
314
503
  })
@@ -321,6 +321,8 @@ function sortPointsby(sortValue, data) {
321
321
  var text1 = serachValue.replace('?', '')
322
322
  var text2 = item.words
323
323
  var text3 = item.words
324
+
325
+
324
326
  function findIndex(str, char) {
325
327
  const strLength = str.length
326
328
  const indexes = []
@@ -352,7 +354,7 @@ function sortPointsby(sortValue, data) {
352
354
  itemHtml += `<span class='highlight'>${itemValue}</span>`
353
355
  }
354
356
  })
355
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
357
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
356
358
  <li>${itemHtml}
357
359
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
358
360
  </li></a>`
@@ -424,7 +426,7 @@ function sortby(sortBool, data) {
424
426
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
425
427
  }
426
428
 
427
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
429
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
428
430
  <li>${itemHtml}
429
431
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
430
432
  </li></a>`
@@ -487,7 +489,7 @@ function sortby(sortBool, data) {
487
489
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
488
490
  }
489
491
 
490
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
492
+ return `<a class="anchor__style" title="Lookup ${item} in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
491
493
  <li>${itemHtml}
492
494
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
493
495
  </li></a>`
@@ -55,7 +55,7 @@ const wordleSolver = async (value, value2, value3, greenWithIndex) => {
55
55
  }),
56
56
  })
57
57
  const data = await response.json()
58
- document.querySelector('#updateTxt').innerHTML = 'Update'
58
+ document.querySelector('#updateTxt').innerHTML = 'Solve'
59
59
  spinner.classList.remove('spinner-border')
60
60
 
61
61
  let ok = true
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: 0.7.7
4
+ version: 0.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - manpreet-appscms
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-28 00:00:00.000000000 Z
11
+ date: 2022-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -76,6 +76,7 @@ files:
76
76
  - _data/header/en/data.json
77
77
  - _data/theme/colors.json
78
78
  - _data/wordfinderstrategy/en/how-to-use-5-letter-word-finder-to-score-high-in-scrabble-words-with-friends.json
79
+ - _data/wordgames/en/4_letter_words_with_these_letters_and_a_blank.json
79
80
  - _data/wordgames/en/anagram_word_finder.json
80
81
  - _data/wordgames/en/eight_letter_word_finder.json
81
82
  - _data/wordgames/en/eleven_letter_word_finder.json