word-games-theme 0.7.9 → 0.8.3

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: 63fd87bab912789ed6100949d650aac8dc8ef17665fefdfbc7339b12c22de4b1
4
- data.tar.gz: a10fded5c42a285c7dc1fe64b9a3c481058c9428d2a4d61a53b8409e4ab5ec4d
3
+ metadata.gz: 0ee34c20666ba81ae3fbcee19af3d215cd4f21ddfbee6191aeac0640b0803e96
4
+ data.tar.gz: b1df8727531dbefc545e2cf61c16baeca78ccf20873536ef8e6e94810304e9e8
5
5
  SHA512:
6
- metadata.gz: 9e454229ce820a915871ef22e8a6689b5f875aaec25db6d6908a405b39f7369858603844ef1be52c3daff5c216a36d8033ee958bc8d3901ce933713131a8792e
7
- data.tar.gz: dd7204251ed6f653f4d666b291cec6ef6b0f3108882ba4de82d0ea32459c0d482c9e516f6b3b1f085270f0ff41fa7ad2105e44daaee29298443415979a1248f1
6
+ metadata.gz: a9879e76ae9e72ed2d0733f3f87b16bbf550a425568c08e17f5a04f8e9ecebdcd5fa7761d889129c0202bd7f6724a4a9084632039ba7576102dbab3deb2271b2
7
+ data.tar.gz: 56f8c7b936c16eb7672cbdef2037752edadfc69b2d1c0f2675d52a53b4aeb78c4dd289ba095e4c018bd7caa6a5529abf243d4015e40b34eee60c35e1702f44cf
@@ -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":""}]}
@@ -2,6 +2,6 @@
2
2
  <script type="text/javascript" defer delay="{{site.MonumetricID}}" data-cfasync="false"></script>
3
3
  {% endif %}
4
4
 
5
- <!-- {% if jekyll.environment == 'development' and site.MonumetricID %}
5
+ {% if jekyll.environment == 'development' and site.MonumetricID %}
6
6
  <script type="text/javascript" delay="{{site.MonumetricID}}"></script>
7
- {% endif %} -->
7
+ {% endif %}
@@ -58,38 +58,6 @@
58
58
  <div class="container">
59
59
  <div class="footer-single-col">
60
60
  <div class="row d-flex justify-content-between mt-5 ">
61
- <div class="col-md-12 txt-secondary mb-5">
62
- {%- if dataToShow.logo -%}
63
- <div class="footer-logo-cont">
64
- <img loading="lazy" src="{{dataToShow.logo}}" title="logo" class="footer-logo d-block"
65
- alt="footer logo" width="30px">
66
- <span>
67
- {{dataToShow.heading}}
68
- </span>
69
- <!-- <div class="footer-title">{{dataToShow.heading}}</div> -->
70
- </div>
71
- {%- endif -%}
72
- <hr class="footer_hr">
73
- <div class="footer-social-list mt-4">
74
- <ul class="list-inline">
75
- {% for data in dataToShow.social %}
76
- <li>
77
- <a href="{{data.url}}" target="_blank">
78
- <i class="{{data.icon}}"></i>
79
- </a>
80
- </li>
81
- {% endfor %}
82
- </ul>
83
- </div>
84
- </div>
85
-
86
- <div class="col-md-2 txt-secondary">
87
- <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.companytitle | default:
88
- 'Company' }}</p>
89
- {% for data in dataToShow.company %}
90
- <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
91
- {% endfor %}
92
- </div>
93
61
  <div class="col-md-2 txt-secondary">
94
62
  <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.linksTitle | default:
95
63
  'Links' }}</p>
@@ -97,7 +65,6 @@
97
65
  <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
98
66
  {% endfor %}
99
67
  </div>
100
-
101
68
  <div class="col-md-2 txt-secondary ">
102
69
  <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.producttitle | default:
103
70
  'tools' }}</p>
@@ -112,6 +79,38 @@
112
79
  <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
113
80
  {% endfor %}
114
81
  </div>
82
+ <div class="col-md-2 txt-secondary">
83
+ <p class=" font-weight-bold txt-primary footer_subheading">{{dataToShow.companytitle | default:
84
+ 'Company' }}</p>
85
+ {% for data in dataToShow.company %}
86
+ <p class="mb-4"><a class="footer-links txt-secondary" href="{{data.url}}">{{data.name}}</a></p>
87
+ {% endfor %}
88
+ </div>
89
+ </div>
90
+
91
+ <div class="col-md-12 txt-secondary mb-5">
92
+ {%- if dataToShow.logo -%}
93
+ <div class="footer-logo-cont">
94
+ <img loading="lazy" src="{{dataToShow.logo}}" title="logo" class="footer-logo d-block"
95
+ alt="footer logo" width="30px">
96
+ <span class="email_heaidng">
97
+ {{dataToShow.heading}}
98
+ </span>
99
+ <!-- <div class="footer-title">{{dataToShow.heading}}</div> -->
100
+ </div>
101
+ {%- endif -%}
102
+ <hr class="footer_hr">
103
+ <div class="footer-social-list mt-4">
104
+ <ul class="list-inline">
105
+ {% for data in dataToShow.social %}
106
+ <li>
107
+ <a href="{{data.url}}" target="_blank">
108
+ <i class="{{data.icon}}"></i>
109
+ </a>
110
+ </li>
111
+ {% endfor %}
112
+ </ul>
113
+ </div>
115
114
  </div>
116
115
  <div class="copyright-text mt-5 txt-secondary text-center">
117
116
  <p>
@@ -14,7 +14,7 @@
14
14
  </div> -->
15
15
  <div class="container" id="containerWd">
16
16
  <section class="sticky_nav">
17
- <div class="pageHeading text-center pt-5">
17
+ <div class="pageHeading text-center">
18
18
  <h1 class="heading m-0 pb-0">
19
19
  {{dataToShow.h1}}</h1>
20
20
  {%- if dataToShow.h2 != "" -%}
@@ -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>
@@ -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,7 +49,7 @@
49
49
 
50
50
  <body>
51
51
 
52
- {%- include header/index.html -%}
52
+ {%- include header/resultHeader.html -%}
53
53
 
54
54
  {%- include section/commonPage.html -%}
55
55
 
@@ -59,6 +59,17 @@
59
59
 
60
60
  <link rel="stylesheet"
61
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>
62
73
  <script data-range="{{page.blanktilerange}}" src="/assets/js/wordScrabble.js"></script>
63
74
  <script defer src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
64
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,11 +45,10 @@
45
45
 
46
46
  <body>
47
47
 
48
- {%- include header/index.html -%}
48
+ {%- include header/resultHeader.html -%}
49
49
 
50
50
  {%- include section/commonPage.html -%}
51
51
 
52
-
53
52
  {%- include share/socialshare.html -%}
54
53
 
55
54
  {%- include footer/index.html -%}
@@ -57,7 +56,18 @@
57
56
 
58
57
  <link rel="stylesheet"
59
58
  href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
60
- <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}"></script>
59
+ <script src="//cdnjs.cloudflare.com/ajax/libs/webfont/1.6.28/webfontloader.js"></script>
60
+ <script>WebFont.load({ google: { families: ['Poppins:400&display=swap'] } })</script>
61
+ <script>
62
+ (function () {
63
+ d = document;
64
+ c = d.createElement('link');
65
+ c.href = '//cdnjs.cloudflare.com/ajax/libs/font-awesome/5.13.0/css/all.min.css';
66
+ c.rel = 'stylesheet';
67
+ d.head.appendChild(c);
68
+ })();
69
+ </script>
70
+ <script src="/assets/js/X-letter.js" data-letter="{{page.letter}}" data-ablank="{{page.ablank}}"></script>
61
71
  <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
62
72
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
63
73
  {% include Monumetric/Monumetric.html %}
@@ -85,7 +85,7 @@
85
85
  </style>
86
86
 
87
87
  <body>
88
- {%- include header/index.html -%}
88
+ {%- include header/resultHeader.html -%}
89
89
 
90
90
  {%- include xyzpages/xyz.html -%}
91
91
 
@@ -137,7 +137,8 @@ a {
137
137
  }
138
138
 
139
139
  .sticky_nav {
140
- top: 50px;
140
+ top: 0px;
141
+ padding-top: 1.5rem;
141
142
  }
142
143
 
143
144
  .Advancedbtn {
@@ -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
  }
@@ -321,4 +321,7 @@ hr {
321
321
  .txt-secondary {
322
322
  text-align: center;
323
323
  }
324
+ .email_heaidng{
325
+ font-size: 1.4rem;
326
+ }
324
327
  }
data/assets/css/home.css CHANGED
@@ -12,6 +12,7 @@
12
12
  }
13
13
  .pageHeading {
14
14
  margin-bottom: 2rem;
15
+ padding-top: 3rem;
15
16
  }
16
17
  .pageHeading > h1 {
17
18
  font-size: 30px;
@@ -55,6 +56,77 @@ input:-webkit-autofill:active {
55
56
  outline: none;
56
57
  position: relative;
57
58
  }
59
+
60
+ .txtBox~.focus-border:before,
61
+ .txtBox~.focus-border:after {
62
+ content: "";
63
+ position: absolute;
64
+ top: 0;
65
+ right: 0;
66
+ width: 0;
67
+ height: 2px;
68
+ background-color: #000;
69
+ transition: .5s;
70
+ transition-delay: 0.2s;
71
+ z-index: 9;
72
+ }
73
+ .txtBox~.focus-border:after {
74
+ top: auto;
75
+ bottom: 0;
76
+ right: auto;
77
+ left: 0;
78
+ transition-delay: 0.6s;
79
+ }
80
+ .txtBox:focus~.focus-border:before,
81
+ .txtBox:focus~.focus-border:after,
82
+ .has-content.txtBox~.focus-border:before,
83
+ .has-content.txtBox~.focus-border:after {
84
+ width: 100%;
85
+ transition: .5s;
86
+ transition-delay: 0.6s;
87
+ }
88
+
89
+ .txtBox:focus~.focus-border:after,
90
+ .has-content.txtBox~.focus-border:after {
91
+ transition-delay: 0.2s;
92
+ }
93
+
94
+ .txtBox:focus~.focus-border i:before,
95
+ .txtBox:focus~.focus-border i:after,
96
+ .has-content.txtBox~.focus-border i:before,
97
+ .has-content.txtBox~.focus-border i:after {
98
+ height: 100%;
99
+ transition: 0.2s;
100
+ }
101
+
102
+ .txtBox:focus~.focus-border i:after,
103
+ .has-conten.txtBox~.focus-border i:after {
104
+ transition-delay: 0.4s;
105
+ }
106
+ .txtBox~.focus-border i:before,
107
+ .txtBox~.focus-border i:after {
108
+ content: "";
109
+ position: absolute;
110
+ top: 0;
111
+ left: 0;
112
+ width: 2px;
113
+ height: 0;
114
+ background-color: #000;
115
+ transition: .5s;
116
+ }
117
+
118
+ .txtBox~.focus-border i:after {
119
+ left: auto;
120
+ right: 0;
121
+ top: auto;
122
+ bottom: 0;
123
+ transition-delay: 0.4s;
124
+ }
125
+
126
+
127
+
128
+
129
+
58
130
  /* ravi */
59
131
  .txtBox::placeholder {
60
132
  /* Chrome, Firefox, Opera, Safari 10.1+ */
@@ -222,9 +294,20 @@ input:-webkit-autofill:active {
222
294
  padding: 0px;
223
295
  }
224
296
  @media (max-width: 768px) {
297
+ .pageHeaderBg{
298
+ height: 25vh;
299
+ }
300
+ .pageHeading{
301
+ padding:0 !important;
302
+ }
303
+ .pageHeading > h2{
304
+ font-size: 1.4rem;
305
+ }
225
306
  .wrapper_dropDown {
226
307
  align-items: flex-end;
227
308
  flex-direction: column;
309
+ gap: 0 !important;
310
+ margin:0 !important
228
311
  }
229
312
  .txtBox {
230
313
  height: 50px !important;
@@ -251,12 +334,11 @@ input:-webkit-autofill:active {
251
334
  width: 50%;
252
335
  right: 0;
253
336
  border-radius: 0;
254
- padding: 9.5px;
337
+ padding: 7.5px;
255
338
  z-index: 99;
256
339
  }
257
340
  .pageHeading h1 {
258
341
  font-size: 2rem;
259
- padding-top: 3rem;
260
342
  }
261
343
  #containerWd {
262
344
  width: 100% !important;
data/assets/css/style.css CHANGED
@@ -385,6 +385,9 @@ header {
385
385
  padding: 4px 0;
386
386
  }
387
387
  @media (max-width: 768px) {
388
+ #resultHeader{
389
+ display: none;
390
+ }
388
391
  .social-icons {
389
392
  left: 0;
390
393
  bottom: 0 !important;
@@ -54,9 +54,9 @@
54
54
 
55
55
  @media (max-width: 768px) {
56
56
  .wordCount {
57
- font-size: 1.4rem;
57
+ font-size: 1.3rem;
58
58
  }
59
59
  .pad {
60
- padding-top: 50px !important;
60
+ padding-top: 0px !important;
61
61
  }
62
62
  }
@@ -3,12 +3,15 @@
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
 
10
13
  const params = new URLSearchParams(window.location.search)
11
- let serachValue = params.get('search')
14
+ let serachValue = params.get('search').toLowerCase()
12
15
  let prefixValue = params.get('prefix')
13
16
  let containsValue = params.get('contains')
14
17
  let suffixValue = params.get('suffix')
@@ -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>`
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.9
4
+ version: 0.8.3
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-29 00:00:00.000000000 Z
11
+ date: 2022-02-03 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