word-games-theme 0.8.0 → 0.8.1

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: 5b383e2d2ca991f0df8c99706aea73184eed922cad3c6207e9144f3795c3a38d
4
- data.tar.gz: b70abbe49809438065ff3f2b8e8e9611633a1ab8cbf292c7f6eae8b344a80f9e
3
+ metadata.gz: 365f974085302d1308d6b085887b28c5e0eea6802bfb87af6560dbe57c91ae19
4
+ data.tar.gz: fc5713197ce42b4869e1ff9cbfc218cf84413493d04d31de9df16345a3c2d3b4
5
5
  SHA512:
6
- metadata.gz: 23a74f922f3fd3a6301aa07618809a0894f7089c0fccce5e2e2e919c909b7d73963ee50527fcada52ced63dc40a0c27f6907dac2b140757f73ec228183f167aa
7
- data.tar.gz: ee7afc262a84181335b87320eb085c2cb65ffba4df67805e590acb0ffc5f8e0a2eae530b3b9f50035297bb1e5de01c443ae7f713d265906d8e7093095da61e3f
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":""}]}
@@ -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>
@@ -57,8 +57,10 @@
57
57
  <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
58
58
  <script>
59
59
  let txtBox = document.querySelector('.txtBox')
60
+ let focusBorder = document.querySelector('.focus-border')
60
61
  txtBox.focus()
61
62
  txtBox.addEventListener('input', (e) => {
63
+ focusBorder.classList.remove("focus-border")
62
64
  e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, "")
63
65
  let rangeOfBlankTile = '{{ page.blanktilerange }}'
64
66
  if (rangeOfBlankTile === "") {
data/_layouts/page.html CHANGED
@@ -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
@@ -57,7 +57,18 @@
57
57
 
58
58
  <link rel="stylesheet"
59
59
  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>
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>
61
72
  <script src="https://code.jquery.com/jquery-3.5.1.slim.min.js"></script>
62
73
  <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
63
74
  {% include Monumetric/Monumetric.html %}
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,6 +3,8 @@
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')
7
9
  let script = document.currentScript
8
10
  let wordCount = document.querySelector('.wordCount')
@@ -24,6 +26,16 @@ tab_link_wrapper.style.display = "none"
24
26
  let txtBox = document.querySelector('.txtBox')
25
27
  txtBox.focus()
26
28
  txtBox.value = serachValue
29
+
30
+
31
+ if(ablank){
32
+ if(!serachValue.includes("?")){
33
+ if(serachValue.length < letterLen){
34
+ serachValue = serachValue + '?'
35
+ }
36
+ }
37
+ }
38
+
27
39
  txtBox.addEventListener('input', (e) => {
28
40
  let rangeOfBlankTile = script.dataset.range
29
41
  e.target.value = e.target.value.replace(/[^a-zA-Z? ]/g, '')
@@ -80,6 +92,7 @@ const getData = async (serachValue) => {
80
92
  getData(serachValue.toLowerCase())
81
93
 
82
94
  function x_with_letters(data) {
95
+ console.log(data);
83
96
  if (typeof data === 'string') {
84
97
  errorMsg.innerHTML = 'No words found'
85
98
  wordCount.innerHTML = `<strong>Found 0 words with letters ${serachValue.split(
@@ -93,7 +106,7 @@ function x_with_letters(data) {
93
106
  if (letterLen) {
94
107
  filterData = data.filter((item) => item.length == letterLen)
95
108
  }
96
-
109
+
97
110
 
98
111
  if (prefixValue) {
99
112
  filterData = filterData.filter((item2) =>
@@ -316,8 +329,42 @@ function sortPointsby(sortValue, data, i) {
316
329
  })
317
330
  })
318
331
  const result = newArray.map((item) => {
319
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.words}">
320
- <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}
321
368
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
322
369
  </li></a>`
323
370
  })
@@ -336,7 +383,6 @@ function sortPointsby(sortValue, data, i) {
336
383
  `
337
384
  }
338
385
  }
339
-
340
386
  // sort by aplhabets
341
387
  function sortby(sortBool, data, i) {
342
388
  if (sortBool) {
@@ -349,8 +395,44 @@ function sortby(sortBool, data, i) {
349
395
  for (let i = 0; i < item.length; i++) {
350
396
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
351
397
  }
352
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
353
- <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}
354
436
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
355
437
  </li></a>`
356
438
  })
@@ -378,8 +460,44 @@ function sortby(sortBool, data, i) {
378
460
  for (let i = 0; i < item.length; i++) {
379
461
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
380
462
  }
381
- return `<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item}">
382
- <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}
383
501
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
384
502
  </li></a>`
385
503
  })
@@ -354,7 +354,7 @@ function sortPointsby(sortValue, data) {
354
354
  itemHtml += `<span class='highlight'>${itemValue}</span>`
355
355
  }
356
356
  })
357
- 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}">
358
358
  <li>${itemHtml}
359
359
  <span class="points" value="${item.points}" style="position:relative; top:4px; font-size:12px"> ${item.points}</span>
360
360
  </li></a>`
@@ -426,7 +426,7 @@ function sortby(sortBool, data) {
426
426
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
427
427
  }
428
428
 
429
- 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()}">
430
430
  <li>${itemHtml}
431
431
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
432
432
  </li></a>`
@@ -489,7 +489,7 @@ function sortby(sortBool, data) {
489
489
  sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
490
490
  }
491
491
 
492
- 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()}">
493
493
  <li>${itemHtml}
494
494
  <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
495
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.8.0
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-02-01 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