word-games-theme 0.6.6 → 0.6.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/_data/wordfinderstrategy/en/how-to-use-5-letter-word-finder-to-score-high-in-scrabble-words-with-friends.json +1 -1
- data/_data/wordleSolver/en/data.json +46 -0
- data/_includes/custom-head.html +2 -0
- data/_includes/head/index.html +3 -1
- data/_includes/section/commonPage.html +35 -4
- data/_includes/section/home.html +25 -7
- data/_includes/section/home2.html +13 -1
- data/_includes/wordle-solver/wordle-solver.html +102 -0
- data/_layouts/wordMeaning.html +2 -1
- data/_layouts/wordleSolver.html +48 -0
- data/assets/css/wordleSolver.css +88 -0
- data/assets/js/X-letter.js +52 -2
- data/assets/js/wordScrabble.js +52 -3
- data/assets/js/wordleSolver.js +184 -0
- metadata +7 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '0729dfba8dc6c5335074239cae6a6c006c932587cde285e27f600fa81edacf6d'
|
4
|
+
data.tar.gz: b3ff4ff1d467d768cc01e3eae8510599612b99a3cf12517239b03525104aed98
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 607c150da62f35009b0f2dd6272e23e8f9c5165211eb5c0e7db9b2df55c97f339dec12e86d1b257df704eb137a16b20f6983f9e86159768ccba50f0a1e46fc80
|
7
|
+
data.tar.gz: 6c439e00f208679d5324c531c42a25b46f9f3928747354707743438d1963937638e54fba9c46c1d39713a006910b3043fab08ddc8aca4120a146d8e8c5ee84b2
|
@@ -0,0 +1,46 @@
|
|
1
|
+
{
|
2
|
+
"title": "Solve wordle easily in minimum guesses",
|
3
|
+
"h1": "Solve todays wordle by entering letters used so far",
|
4
|
+
"h2": "Enters letters in gray, yellow, and green to see potential words",
|
5
|
+
"meta": "Input letters in grey, yellow and green, and get list of matching 5 letter words to solve todays wordle in mimimum attempts, and impress your friends",
|
6
|
+
"featureNo": "02",
|
7
|
+
"feature_title": "Features",
|
8
|
+
"featureList": [
|
9
|
+
{
|
10
|
+
"feature_heading": "",
|
11
|
+
"feature_text": "",
|
12
|
+
"fa_class": "../assets/images/star.svg"
|
13
|
+
},
|
14
|
+
{
|
15
|
+
"feature_heading": "",
|
16
|
+
"feature_text": "",
|
17
|
+
"fa_class": "../assets/images/star.svg"
|
18
|
+
},
|
19
|
+
{
|
20
|
+
"feature_heading": "",
|
21
|
+
"feature_text": "",
|
22
|
+
"fa_class": "../assets/images/star.svg"
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"feature_heading": "",
|
26
|
+
"feature_text": "",
|
27
|
+
"fa_class": "../assets/images/star.svg"
|
28
|
+
},
|
29
|
+
{
|
30
|
+
"feature_heading": "",
|
31
|
+
"feature_text": "",
|
32
|
+
"fa_class": "../assets/images/star.svg"
|
33
|
+
},
|
34
|
+
{
|
35
|
+
"feature_heading": "",
|
36
|
+
"feature_text": "",
|
37
|
+
"fa_class": "../assets/images/star.svg"
|
38
|
+
}
|
39
|
+
],
|
40
|
+
"faqList": [
|
41
|
+
{
|
42
|
+
"Question": "",
|
43
|
+
"Answer": ""
|
44
|
+
}
|
45
|
+
]
|
46
|
+
}
|
data/_includes/custom-head.html
CHANGED
@@ -28,6 +28,7 @@
|
|
28
28
|
|
29
29
|
{%- include google-analytics.html -%}
|
30
30
|
<!-- {% include adsense/adsense.html %} -->
|
31
|
+
{%- if site.MonumetricID -%}
|
31
32
|
<script>
|
32
33
|
const autoLoadDuration = 5; //In Seconds
|
33
34
|
const eventList = ["keydown", "mousemove", "wheel", "touchmove", "touchstart", "touchend"];
|
@@ -55,5 +56,6 @@
|
|
55
56
|
});
|
56
57
|
}
|
57
58
|
</script>
|
59
|
+
{%- endif -%}
|
58
60
|
{% include Monumetric/Monumetric.html %}
|
59
61
|
</head>
|
data/_includes/head/index.html
CHANGED
@@ -103,7 +103,7 @@
|
|
103
103
|
{%- include google-analytics.html -%}
|
104
104
|
|
105
105
|
|
106
|
-
|
106
|
+
{%- if site.MonumetricID -%}
|
107
107
|
<script>
|
108
108
|
const autoLoadDuration = 5; //In Seconds
|
109
109
|
const eventList = ["keydown", "mousemove", "wheel", "touchmove", "touchstart", "touchend"];
|
@@ -128,4 +128,6 @@
|
|
128
128
|
});
|
129
129
|
}
|
130
130
|
</script>
|
131
|
+
{%- endif -%}
|
132
|
+
|
131
133
|
</head>
|
@@ -54,22 +54,43 @@
|
|
54
54
|
|
55
55
|
</div>
|
56
56
|
<div class="startsWith same">
|
57
|
-
<label
|
57
|
+
<label data-toggle="tooltip" data-placement="top"
|
58
|
+
title="Filter for words that starts with these letters" for="startsWith">Starts
|
59
|
+
With</label>
|
58
60
|
<input type="text" class="filter_val" id="startsWith" placeholder="Prefix" value=""
|
59
61
|
name="prefix">
|
60
62
|
</div>
|
61
63
|
<div class="mustInclude same">
|
62
|
-
<label for="mustInclude"
|
64
|
+
<label for="mustInclude" data-toggle="tooltip" data-placement="top"
|
65
|
+
title=" Words that contain letters in this order(ab)">Must Contains </label>
|
63
66
|
<input type="text" class="filter_val" id="mustInclude" placeholder="Contains"
|
64
67
|
name="contains" value="">
|
65
68
|
</div>
|
66
69
|
<div class="endsWith same">
|
67
|
-
<label for="endsWith"
|
70
|
+
<label for="endsWith" data-toggle="tooltip" data-placement="top"
|
71
|
+
title="Filter for words that ends with these letters">End With</label>
|
68
72
|
<input type="text" class="filter_val" id="endsWith" placeholder="Suffix" name="suffix"
|
69
73
|
value="">
|
70
74
|
</div>
|
75
|
+
<div class="exculdeWith same">
|
76
|
+
<label data-toggle="tooltip" data-placement="top"
|
77
|
+
title="Only words that not contain the letters you enter here"
|
78
|
+
for="exculdeWith">Exculde</label>
|
79
|
+
<br>
|
80
|
+
<input type="text" class="filter_val" id="exculdeWith" placeholder="Exculde" value=""
|
81
|
+
name="exculde">
|
82
|
+
</div>
|
83
|
+
<div class="inculdeWith same">
|
84
|
+
<label data-toggle="tooltip" data-placement="top"
|
85
|
+
title="Only words that contain the letters you enter here"
|
86
|
+
for="inculdeWith">Include</label>
|
87
|
+
<br>
|
88
|
+
<input type="text" class="filter_val" id="inculdeWith" placeholder="Include" value=""
|
89
|
+
name="include">
|
90
|
+
</div>
|
71
91
|
<div class="wordLength same">
|
72
|
-
<label
|
92
|
+
<label data-toggle="tooltip" data-placement="top" title="Filter for words with this length"
|
93
|
+
for="wordLength">Word Length </label>
|
73
94
|
<input type="text" class="filter_val" id="wordLength" placeholder="Length" name="length"
|
74
95
|
value="">
|
75
96
|
</div>
|
@@ -79,6 +100,14 @@
|
|
79
100
|
style="background-color:#808080;">
|
80
101
|
<input type="submit" value="Apply" class="btn-info text-white" style="background: #808080">
|
81
102
|
</div>
|
103
|
+
{% if page.layout == 'page2' %}
|
104
|
+
|
105
|
+
|
106
|
+
<p class="m-0" style="font-size: 13px;">Solve wordle quickly using our wordle solver</p>
|
107
|
+
|
108
|
+
{% endif %}
|
109
|
+
|
110
|
+
|
82
111
|
</div>
|
83
112
|
|
84
113
|
</form>
|
@@ -98,6 +127,8 @@
|
|
98
127
|
startsWith.value = ''
|
99
128
|
mustInclude.value = ''
|
100
129
|
endsWith.value = ''
|
130
|
+
exculdeWith.value = ''
|
131
|
+
inculdeWith.value = ''
|
101
132
|
wordLength.value = ''
|
102
133
|
})
|
103
134
|
const fillterWrapper = document.querySelector('.fillterWrapper')
|
data/_includes/section/home.html
CHANGED
@@ -49,24 +49,41 @@
|
|
49
49
|
|
50
50
|
</div>
|
51
51
|
<div class="startsWith">
|
52
|
-
<label
|
52
|
+
<label data-toggle="tooltip" data-placement="top"
|
53
|
+
title="Filter for words that starts with these letters" for="startsWith">Starts
|
54
|
+
With</label>
|
53
55
|
<br>
|
54
56
|
<input type="text" id="startsWith" placeholder="Prefix" value="" name="prefix">
|
55
57
|
</div>
|
56
58
|
<div class="mustInclude">
|
57
|
-
<label for="mustInclude"
|
59
|
+
<label for="mustInclude" data-toggle="tooltip" data-placement="top"
|
60
|
+
title=" Words that contain letters in this order(ab)">Must Contains </label>
|
58
61
|
<br>
|
59
62
|
<input type="text" id="mustInclude" placeholder="Contains" name="contains">
|
60
|
-
|
61
63
|
</div>
|
62
64
|
<div class="endsWith">
|
63
|
-
<label for="endsWith"
|
65
|
+
<label for="endsWith" data-toggle="tooltip" data-placement="top"
|
66
|
+
title="Filter for words that ends with these letters">End With</label>
|
64
67
|
<br>
|
65
68
|
<input type="text" id="endsWith" placeholder="Suffix" name="suffix">
|
66
|
-
|
69
|
+
</div>
|
70
|
+
<div class="exculdeWith">
|
71
|
+
<label data-toggle="tooltip" data-placement="top"
|
72
|
+
title="Only words that not contain the letters you enter here"
|
73
|
+
for="exculdeWith">Exculde</label>
|
74
|
+
<br>
|
75
|
+
<input type="text" id="exculdeWith" placeholder="Exculde" value="" name="exculde">
|
76
|
+
</div>
|
77
|
+
<div class="inculdeWith">
|
78
|
+
<label data-toggle="tooltip" data-placement="top"
|
79
|
+
title="Only words that contain the letters you enter here"
|
80
|
+
for="inculdeWith">Include</label>
|
81
|
+
<br>
|
82
|
+
<input type="text" id="inculdeWith" placeholder="Include" value="" name="include">
|
67
83
|
</div>
|
68
84
|
<div class="wordLength">
|
69
|
-
<label
|
85
|
+
<label data-toggle="tooltip" data-placement="top" title="Filter for words with this length"
|
86
|
+
for="wordLength">Word Length </label>
|
70
87
|
<br>
|
71
88
|
<input type="text" id="wordLength" placeholder="Length" name="length">
|
72
89
|
<div style="margin-top: 1.2rem; gap:5px" class="d-flex w-100">
|
@@ -77,7 +94,6 @@
|
|
77
94
|
|
78
95
|
</div>
|
79
96
|
</div>
|
80
|
-
|
81
97
|
</div>
|
82
98
|
</form>
|
83
99
|
</div>
|
@@ -98,6 +114,8 @@
|
|
98
114
|
startsWith.value = ""
|
99
115
|
mustInclude.value = ""
|
100
116
|
endsWith.value = ""
|
117
|
+
exculdeWith.value = ""
|
118
|
+
inculdeWith.value = ''
|
101
119
|
wordLength.value = ""
|
102
120
|
}))
|
103
121
|
|
@@ -53,14 +53,24 @@
|
|
53
53
|
<input type="text" id="startsWith" placeholder="Prefix" value="" name="prefix">
|
54
54
|
</div>
|
55
55
|
<div class="mustInclude">
|
56
|
-
<label for="mustInclude">Must
|
56
|
+
<label for="mustInclude">Must Contains </label>
|
57
57
|
<input type="text" id="mustInclude" placeholder="Contains" name="contains">
|
58
58
|
|
59
59
|
</div>
|
60
60
|
<div class="endsWith">
|
61
61
|
<label for="endsWith">End With</label>
|
62
62
|
<input type="text" id="endsWith" placeholder="Suffix" name="suffix">
|
63
|
+
</div>
|
64
|
+
<div class="exculdeWith">
|
65
|
+
<label for="exculdeWith">Exculde</label>
|
66
|
+
<br>
|
67
|
+
<input type="text" id="exculdeWith" placeholder="Exculde" value="" name="exculde">
|
68
|
+
</div>
|
63
69
|
|
70
|
+
<div class="inculdeWith">
|
71
|
+
<label for="inculdeWith">Inculde</label>
|
72
|
+
<br>
|
73
|
+
<input type="text" id="inculdeWith" placeholder="Inculde" value="" name="inculde">
|
64
74
|
</div>
|
65
75
|
|
66
76
|
<div class="wordLength same">
|
@@ -74,6 +84,7 @@
|
|
74
84
|
<input type="submit" value="Apply" class="btn-info text-white"
|
75
85
|
style="background-color: {{CustomColor.inputButtonBg}};">
|
76
86
|
</div>
|
87
|
+
<p class="m-0" style="font-size:13px">Solve wordle quickly using our wordle solver</p>
|
77
88
|
</div>
|
78
89
|
</form>
|
79
90
|
</div>
|
@@ -94,6 +105,7 @@
|
|
94
105
|
startsWith.value = ''
|
95
106
|
mustInclude.value = ''
|
96
107
|
endsWith.value = ''
|
108
|
+
exculdeWith.value = ''
|
97
109
|
wordLength.value = ''
|
98
110
|
})
|
99
111
|
const advancedFilter = document.querySelector('.advancedFilter')
|
@@ -0,0 +1,102 @@
|
|
1
|
+
<div class="container wordleSolver-container">
|
2
|
+
<div class="row">
|
3
|
+
<div class="col-md-10 mx-auto ws">
|
4
|
+
<div style="font-size: 15px;" class="alert errMessage" role="alert"></div>
|
5
|
+
|
6
|
+
<form name="verify">
|
7
|
+
<div class="form-group">
|
8
|
+
<label for="greenLetters" class="my-1 p-0 wordleSolver-label">Enter green letters at correct
|
9
|
+
position</label>
|
10
|
+
<div class="col-md-6 p-0">
|
11
|
+
<div class="d-flex">
|
12
|
+
<input data-id="0" type="text" autocomplete="off" tabIndex="0"
|
13
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greenLetters">
|
14
|
+
<input data-id="1" type="text" autocomplete="off" tabIndex="1"
|
15
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greenLetters">
|
16
|
+
<input data-id="2" type="text" autocomplete="off" tabIndex="2"
|
17
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greenLetters">
|
18
|
+
<input data-id="3" type="text" autocomplete="off" tabIndex="3"
|
19
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greenLetters">
|
20
|
+
<input data-id="4" type="text" autocomplete="off" tabIndex="4"
|
21
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greenLetters">
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
</div>
|
25
|
+
<div class="form-group">
|
26
|
+
<label for="yellowLetters" class="my-1 p-0 wordleSolver-label">Enter letters in yellow below</label>
|
27
|
+
<div class="col-md-6 p-0">
|
28
|
+
<div class="d-flex">
|
29
|
+
<input type="text" autocomplete="off" tabIndex="1"
|
30
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="yellowLetters"
|
31
|
+
tabIndex="5">
|
32
|
+
<input type="text" autocomplete="off" class="wordleSolver-field form-control px-5"
|
33
|
+
maxlength="1" id="yellowLetters" tabIndex="6">
|
34
|
+
<input type="text" autocomplete="off" class="wordleSolver-field form-control px-5"
|
35
|
+
maxlength="1" id="yellowLetters" tabIndex="7">
|
36
|
+
<input type="text" autocomplete="off" class="wordleSolver-field form-control px-5"
|
37
|
+
maxlength="1" id="yellowLetters" tabIndex="8">
|
38
|
+
<input type="text" autocomplete="off" class="wordleSolver-field form-control px-5"
|
39
|
+
maxlength="1" id="yellowLetters" tabIndex="9">
|
40
|
+
</div>
|
41
|
+
</div>
|
42
|
+
</div>
|
43
|
+
<div class="form-group">
|
44
|
+
<label for="greyLetters" class="my-1 p-0 wordleSolver-label">Enter letters in grey below</label>
|
45
|
+
<div class="col-md-6 p-0">
|
46
|
+
<div class="d-flex">
|
47
|
+
<input type="text" class="wordleSolver-field form-control px-5" maxlength="1"
|
48
|
+
id="greyLetters" value="" autocomplete="off" tabIndex="10">
|
49
|
+
<input type="text" class="wordleSolver-field form-control px-5" maxlength="1"
|
50
|
+
id="greyLetters" value="" autocomplete="off" tabIndex="11">
|
51
|
+
<input type="text" class="wordleSolver-field form-control px-5" maxlength="1"
|
52
|
+
id="greyLetters" value="" autocomplete="off" tabIndex="12">
|
53
|
+
<input type="text" class="wordleSolver-field form-control px-5" maxlength="1"
|
54
|
+
id="greyLetters" value="" autocomplete="off" tabIndex="13">
|
55
|
+
<input type="text" class="wordleSolver-field form-control px-5" maxlength="1"
|
56
|
+
id="greyLetters" value="" autocomplete="off" tabIndex="14">
|
57
|
+
</div>
|
58
|
+
<div class="d-flex mt-2">
|
59
|
+
<input type="text" autocomplete="off" tabIndex="15"
|
60
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greyLetters">
|
61
|
+
<input type="text" autocomplete="off" tabIndex="16"
|
62
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greyLetters">
|
63
|
+
<input type="text" autocomplete="off" tabIndex="17"
|
64
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greyLetters">
|
65
|
+
<input type="text" autocomplete="off" tabIndex="18"
|
66
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greyLetters">
|
67
|
+
<input type="text" autocomplete="off" tabIndex="19"
|
68
|
+
class="wordleSolver-field form-control px-5" maxlength="1" id="greyLetters">
|
69
|
+
</div>
|
70
|
+
</div>
|
71
|
+
</div>
|
72
|
+
<div class="form-group text-right">
|
73
|
+
<div class="col-md-4 p-0" style="margin: 0 0 0 auto;">
|
74
|
+
<button type="submit" id="wordlesolver_submit" class="btn wordlesolver-btn mt-3">Update</button>
|
75
|
+
</div>
|
76
|
+
</div>
|
77
|
+
</form>
|
78
|
+
</div>
|
79
|
+
|
80
|
+
<div class="col-md-10 mx-auto p-0 mt-3">
|
81
|
+
<div id="wordleWordCount"></div>
|
82
|
+
<div id="wordleSolverData"></div>
|
83
|
+
<div class="alert" role="alert" id="wordleSolvererrorMsg" style="font-size: 15px; padding:15px"></div>
|
84
|
+
</div>
|
85
|
+
</div>
|
86
|
+
</div>
|
87
|
+
|
88
|
+
<script src="https://code.jquery.com/jquery-3.6.0.min.js"
|
89
|
+
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
|
90
|
+
<script>
|
91
|
+
$(document).on('keypress', 'input', function (e) {
|
92
|
+
if (e.which === 8 || e.which === 9 || (e.which >= 65 && e.which <= 90) || e.which === 32) {
|
93
|
+
e.preventDefault();
|
94
|
+
var $next = $('[tabIndex=' + (+this.tabIndex + 1) + ']');
|
95
|
+
|
96
|
+
if (!$next.length) {
|
97
|
+
$next = $('[tabIndex=1]');
|
98
|
+
}
|
99
|
+
$next.focus().click();
|
100
|
+
}
|
101
|
+
});
|
102
|
+
</script>
|
data/_layouts/wordMeaning.html
CHANGED
@@ -43,6 +43,7 @@
|
|
43
43
|
background-color: #F8F9FA !important;
|
44
44
|
}
|
45
45
|
</style>
|
46
|
+
{%- if site.MonumetricID -%}
|
46
47
|
<script>
|
47
48
|
const autoLoadDuration = 5; //In Seconds
|
48
49
|
const eventList = ["keydown", "mousemove", "wheel", "touchmove", "touchstart", "touchend"];
|
@@ -70,7 +71,7 @@
|
|
70
71
|
});
|
71
72
|
}
|
72
73
|
</script>
|
73
|
-
|
74
|
+
{%- endif -%}
|
74
75
|
</head>
|
75
76
|
|
76
77
|
<body>
|
@@ -0,0 +1,48 @@
|
|
1
|
+
{% assign file = page.fileName %}
|
2
|
+
{% assign lang = page.lang %}
|
3
|
+
{% assign folder = page.folderName %}
|
4
|
+
{% assign homeData= site.data[folder][lang][file] %}
|
5
|
+
|
6
|
+
<!DOCTYPE html>
|
7
|
+
<html lang="en">
|
8
|
+
|
9
|
+
{%- include head/index.html -%}
|
10
|
+
|
11
|
+
<body>
|
12
|
+
{%- include header/index.html -%}
|
13
|
+
|
14
|
+
|
15
|
+
{%- if homeData.h1 or homeData.h2 -%}
|
16
|
+
<div class="wordleSolver_headings">
|
17
|
+
<div class="container">
|
18
|
+
<div class="pageHeading text-center">
|
19
|
+
<h1 class="heading pb-0 m-0">{{homeData.h1}}</h1>
|
20
|
+
<h2>{{homeData.h2}}</h2>
|
21
|
+
</div>
|
22
|
+
</div>
|
23
|
+
</div>
|
24
|
+
{%- endif -%}
|
25
|
+
|
26
|
+
<div class="wordleSolver-feature my-5">
|
27
|
+
{{content}}
|
28
|
+
</div>
|
29
|
+
|
30
|
+
{% include section/feature.html %}
|
31
|
+
|
32
|
+
{%- if dataToShow.faqList -%}
|
33
|
+
{%- if dataToShow.faqList.first.Question !='' -%}
|
34
|
+
{% include section/news.html %}
|
35
|
+
{% endif %}
|
36
|
+
{% endif %}
|
37
|
+
|
38
|
+
|
39
|
+
{%- include footer/index.html -%}
|
40
|
+
<link rel="stylesheet"
|
41
|
+
href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
|
42
|
+
<link rel="stylesheet" href="{{ '../assets/css/wordleSolver.css' | relative_url }}">
|
43
|
+
<script defer src="../assets/js/wordleSolver.js"></script>
|
44
|
+
<script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
|
45
|
+
{% include Monumetric/Monumetric.html %}
|
46
|
+
</body>
|
47
|
+
|
48
|
+
</html>
|
@@ -0,0 +1,88 @@
|
|
1
|
+
.ws {
|
2
|
+
display: flex;
|
3
|
+
flex-direction: column;
|
4
|
+
justify-content: center;
|
5
|
+
align-items: center;
|
6
|
+
background: rgba(0, 0, 0, 0.1);
|
7
|
+
padding: 15px 0px !important;
|
8
|
+
}
|
9
|
+
.wordleSolver_headings {
|
10
|
+
margin-top: 110px;
|
11
|
+
margin-bottom: 20px;
|
12
|
+
}
|
13
|
+
.wordleSolver-field {
|
14
|
+
border-radius: 5px;
|
15
|
+
margin: 0 5px 0 0 !important;
|
16
|
+
font-size: 30px;
|
17
|
+
text-transform: uppercase;
|
18
|
+
text-align: center;
|
19
|
+
width: 55px;
|
20
|
+
height: 55px;
|
21
|
+
line-height: 55px;
|
22
|
+
font-weight: bold;
|
23
|
+
border: 1px solid rgba(0, 0, 0, 0.1);
|
24
|
+
background: #fff;
|
25
|
+
padding: 0 !important;
|
26
|
+
outline: none !important;
|
27
|
+
}
|
28
|
+
|
29
|
+
.wordleSolver-field:focus {
|
30
|
+
box-shadow: unset !important;
|
31
|
+
border-color: #ced4da !important;
|
32
|
+
}
|
33
|
+
|
34
|
+
.wordlesolver-btn {
|
35
|
+
padding: 8px 25px;
|
36
|
+
font-size: 15px;
|
37
|
+
background-color: #6aaa64;
|
38
|
+
border-color: #6aaa64;
|
39
|
+
color: #fff;
|
40
|
+
border-radius: 5px;
|
41
|
+
font-weight: 900;
|
42
|
+
}
|
43
|
+
.wordlesolver-btn:focus {
|
44
|
+
outline: none;
|
45
|
+
box-shadow: unset !important;
|
46
|
+
}
|
47
|
+
.wordlesolver-btn:hover {
|
48
|
+
color: #fff;
|
49
|
+
}
|
50
|
+
|
51
|
+
.wordleSolver-label {
|
52
|
+
font-size: 14px;
|
53
|
+
font-weight: 600;
|
54
|
+
}
|
55
|
+
|
56
|
+
.allfiveletterswords {
|
57
|
+
background-color: white !important;
|
58
|
+
width: auto;
|
59
|
+
height: auto;
|
60
|
+
box-shadow: 0 0 2px rgb(0 0 0 / 20%);
|
61
|
+
margin: 10px 0;
|
62
|
+
border-radius: 15px;
|
63
|
+
}
|
64
|
+
.allfiveletterswords > .wordListHeading {
|
65
|
+
background: gray;
|
66
|
+
padding: 10px 0px 5px 25px;
|
67
|
+
color: #fff;
|
68
|
+
border-top-right-radius: 15px;
|
69
|
+
border-top-left-radius: 15px;
|
70
|
+
}
|
71
|
+
|
72
|
+
#wordleWordCount {
|
73
|
+
font-size: 18px;
|
74
|
+
}
|
75
|
+
|
76
|
+
.ws-fcs {
|
77
|
+
color: #fff !important;
|
78
|
+
background-color: #6aaa64 !important;
|
79
|
+
}
|
80
|
+
.ws-fcs2 {
|
81
|
+
color: #fff !important;
|
82
|
+
background-color: #c9b458 !important;
|
83
|
+
}
|
84
|
+
|
85
|
+
.ws-fcs3 {
|
86
|
+
color: #fff !important;
|
87
|
+
background-color: #787c7e !important;
|
88
|
+
}
|
data/assets/js/X-letter.js
CHANGED
@@ -12,6 +12,8 @@ let serachValue = params.get('search')
|
|
12
12
|
let prefixValue = params.get('prefix')
|
13
13
|
let containsValue = params.get('contains')
|
14
14
|
let suffixValue = params.get('suffix')
|
15
|
+
let exculdeValue = params.get('exculde')
|
16
|
+
let includeValue = params.get('include')
|
15
17
|
let lengthValue = params.get('length')
|
16
18
|
let dictonary = params.get('dictionary')
|
17
19
|
|
@@ -79,6 +81,52 @@ function x_with_letters(data) {
|
|
79
81
|
endsWith.value = suffixValue
|
80
82
|
}
|
81
83
|
|
84
|
+
if (exculdeValue) {
|
85
|
+
let data = []
|
86
|
+
filterData.map((item) => {
|
87
|
+
let check = false
|
88
|
+
for (let e = 0; e < exculdeValue.length; e++) {
|
89
|
+
const element = exculdeValue[e]
|
90
|
+
if (item.includes(element)) {
|
91
|
+
check = true
|
92
|
+
break
|
93
|
+
} else {
|
94
|
+
check = false
|
95
|
+
}
|
96
|
+
}
|
97
|
+
if (check === false) {
|
98
|
+
data.push(item)
|
99
|
+
}
|
100
|
+
})
|
101
|
+
exculdeWith.classList.add('tick')
|
102
|
+
exculdeWith.value = exculdeValue
|
103
|
+
filterData = data
|
104
|
+
}
|
105
|
+
|
106
|
+
if (includeValue) {
|
107
|
+
let data = []
|
108
|
+
filterData.map((item) => {
|
109
|
+
let check = false
|
110
|
+
for (let e = 0; e < includeValue.length; e++) {
|
111
|
+
const element = includeValue[e]
|
112
|
+
if (!item.includes(element)) {
|
113
|
+
check = true
|
114
|
+
break
|
115
|
+
} else {
|
116
|
+
check = false
|
117
|
+
}
|
118
|
+
}
|
119
|
+
if (check === false) {
|
120
|
+
data.push(item)
|
121
|
+
}
|
122
|
+
})
|
123
|
+
inculdeWith.classList.add('tick')
|
124
|
+
inculdeWith.value = includeValue
|
125
|
+
filterData = data
|
126
|
+
}
|
127
|
+
|
128
|
+
|
129
|
+
|
82
130
|
if (filterData.length === 0) {
|
83
131
|
main.innerHTML += ''
|
84
132
|
errorMsg.innerHTML = 'No words Found with this length'
|
@@ -154,9 +202,11 @@ function addFilterCount() {
|
|
154
202
|
filter_val[0].value = prefixValue
|
155
203
|
filter_val[1].value = containsValue
|
156
204
|
filter_val[2].value = suffixValue
|
157
|
-
filter_val[3].value =
|
205
|
+
filter_val[3].value = exculdeValue
|
206
|
+
filter_val[4].value = includeValue
|
207
|
+
filter_val[5].value = lengthValue
|
158
208
|
|
159
|
-
for (var i = 0; i
|
209
|
+
for (var i = 0; i <= 4; i++) {
|
160
210
|
if (filter_val[i].value != '') {
|
161
211
|
filter_count += 1
|
162
212
|
}
|
data/assets/js/wordScrabble.js
CHANGED
@@ -15,6 +15,8 @@ let serachValue = params.get('search').toLowerCase()
|
|
15
15
|
let prefixValue = params.get('prefix')
|
16
16
|
let containsValue = params.get('contains')
|
17
17
|
let suffixValue = params.get('suffix')
|
18
|
+
let exculdeValue = params.get('exculde')
|
19
|
+
let includeValue = params.get('include')
|
18
20
|
let lengthValue = params.get('length')
|
19
21
|
let dictonary = params.get('dictionary')
|
20
22
|
|
@@ -23,6 +25,8 @@ let tick
|
|
23
25
|
let startsWith = document.getElementById('startsWith')
|
24
26
|
let mustInclude = document.getElementById('mustInclude')
|
25
27
|
let endsWith = document.getElementById('endsWith')
|
28
|
+
let exculdeWith = document.getElementById('exculdeWith')
|
29
|
+
let inculdeWith = document.getElementById('inculdeWith')
|
26
30
|
let wordLength = document.getElementById('wordLength')
|
27
31
|
|
28
32
|
let ok = true
|
@@ -133,7 +137,6 @@ function getWords(data) {
|
|
133
137
|
startsWith.classList.add('tick')
|
134
138
|
startsWith.value = prefixValue
|
135
139
|
}
|
136
|
-
|
137
140
|
if (containsValue) {
|
138
141
|
newdata = newdata.filter((item) =>
|
139
142
|
item.includes(containsValue.toLowerCase())
|
@@ -148,6 +151,50 @@ function getWords(data) {
|
|
148
151
|
endsWith.classList.add('tick')
|
149
152
|
endsWith.value = suffixValue
|
150
153
|
}
|
154
|
+
|
155
|
+
if (exculdeValue) {
|
156
|
+
let data = []
|
157
|
+
newdata.map((item) => {
|
158
|
+
let check = false
|
159
|
+
for (let e = 0; e < exculdeValue.length; e++) {
|
160
|
+
const element = exculdeValue[e]
|
161
|
+
if (item.includes(element)) {
|
162
|
+
check = true
|
163
|
+
break
|
164
|
+
} else {
|
165
|
+
check = false
|
166
|
+
}
|
167
|
+
}
|
168
|
+
if (check === false) {
|
169
|
+
data.push(item)
|
170
|
+
}
|
171
|
+
})
|
172
|
+
exculdeWith.classList.add('tick')
|
173
|
+
exculdeWith.value = exculdeValue
|
174
|
+
newdata = data
|
175
|
+
}
|
176
|
+
if (includeValue) {
|
177
|
+
let data = []
|
178
|
+
newdata.map((item) => {
|
179
|
+
let check = false
|
180
|
+
for (let e = 0; e < includeValue.length; e++) {
|
181
|
+
const element = includeValue[e]
|
182
|
+
if (!item.includes(element)) {
|
183
|
+
check = true
|
184
|
+
break
|
185
|
+
} else {
|
186
|
+
check = false
|
187
|
+
}
|
188
|
+
}
|
189
|
+
if (check === false) {
|
190
|
+
data.push(item)
|
191
|
+
}
|
192
|
+
})
|
193
|
+
inculdeWith.classList.add('tick')
|
194
|
+
inculdeWith.value = includeValue
|
195
|
+
newdata = data
|
196
|
+
}
|
197
|
+
|
151
198
|
if (lengthValue) {
|
152
199
|
newdata = newdata.filter((item) => item.length == lengthValue)
|
153
200
|
wordLength.classList.add('tick')
|
@@ -538,9 +585,11 @@ function addFilterCount() {
|
|
538
585
|
filter_val[0].value = prefixValue
|
539
586
|
filter_val[1].value = containsValue
|
540
587
|
filter_val[2].value = suffixValue
|
541
|
-
filter_val[3].value =
|
588
|
+
filter_val[3].value = exculdeValue
|
589
|
+
filter_val[4].value = includeValue
|
590
|
+
filter_val[5].value = lengthValue
|
542
591
|
|
543
|
-
for (var i = 0; i
|
592
|
+
for (var i = 0; i <= 4; i++) {
|
544
593
|
if (filter_val[i].value != '') {
|
545
594
|
filter_count += 1
|
546
595
|
}
|
@@ -0,0 +1,184 @@
|
|
1
|
+
console.log('wordle solver ...')
|
2
|
+
|
3
|
+
let form = document.querySelector('[name=verify')
|
4
|
+
|
5
|
+
let greenLetters = document.querySelectorAll('#greenLetters')
|
6
|
+
let yellowLetters = document.querySelectorAll('#yellowLetters')
|
7
|
+
let greyLetters = document.querySelectorAll('#greyLetters')
|
8
|
+
let wordleSolverData = document.getElementById('wordleSolverData')
|
9
|
+
|
10
|
+
let wordleWordCount = document.querySelector('#wordleWordCount')
|
11
|
+
let wordleSolvererrorMsg = document.querySelector('#wordleSolvererrorMsg')
|
12
|
+
let wordlesolver_submit = document.getElementById('wordlesolver_submit')
|
13
|
+
let newWordsLength = 0
|
14
|
+
|
15
|
+
let errMessage = document.querySelector('.errMessage')
|
16
|
+
|
17
|
+
const wordleSolver = async (value, value2, value3, greenWithIndex) => {
|
18
|
+
try {
|
19
|
+
let result = ''
|
20
|
+
wordleWordCount.innerHTML = 'Searching for best possible letters...'
|
21
|
+
let response = await fetch('/.netlify/functions/wordleSolver', {
|
22
|
+
method: 'POST',
|
23
|
+
body: JSON.stringify({
|
24
|
+
greenLetters: value,
|
25
|
+
yellowLetters: value2,
|
26
|
+
greyLetters: value3,
|
27
|
+
greenWithIndex: greenWithIndex,
|
28
|
+
}),
|
29
|
+
})
|
30
|
+
const data = await response.json()
|
31
|
+
|
32
|
+
let ok = true
|
33
|
+
if (data.length === 0) {
|
34
|
+
newWordsLength = ''
|
35
|
+
wordleSolverData.innerHTML = ''
|
36
|
+
wordleSolvererrorMsg.classList.add('alert-danger')
|
37
|
+
wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
|
38
|
+
} else {
|
39
|
+
wordleSolverData.innerHTML = ''
|
40
|
+
newWordsLength = ''
|
41
|
+
newWordsLength += data.length
|
42
|
+
result = data.map((item) => {
|
43
|
+
if (item.length === 1) {
|
44
|
+
ok = false
|
45
|
+
newWordsLength = newWordsLength - 1
|
46
|
+
} else {
|
47
|
+
let ScrabbleLetterScore = ScrabbleScore()
|
48
|
+
sum = 0
|
49
|
+
item = item.toLowerCase()
|
50
|
+
for (let i = 0; i < item.length; i++) {
|
51
|
+
sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
|
52
|
+
}
|
53
|
+
return `
|
54
|
+
<a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
|
55
|
+
<li>
|
56
|
+
${item.toLowerCase()}
|
57
|
+
<span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
|
58
|
+
</li>
|
59
|
+
</a>
|
60
|
+
`
|
61
|
+
}
|
62
|
+
})
|
63
|
+
if (ok) {
|
64
|
+
wordleSolverData.innerHTML += `
|
65
|
+
<div class="allfiveletterswords wordlistContainer">
|
66
|
+
<div class="wordListHeading">
|
67
|
+
<h3 class="lead">All 5 Letter Words</h3>
|
68
|
+
</div>
|
69
|
+
<div class="wordList">
|
70
|
+
<ul class="ul list-unstyled">
|
71
|
+
${result.join('')}
|
72
|
+
</ul>
|
73
|
+
</div>
|
74
|
+
</div>
|
75
|
+
`
|
76
|
+
}
|
77
|
+
}
|
78
|
+
if (newWordsLength === 0) {
|
79
|
+
wordleSolvererrorMsg.classList.add('alert-danger')
|
80
|
+
wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
|
81
|
+
} else {
|
82
|
+
wordleWordCount.innerHTML = `<strong>${newWordsLength} Results</strong>`
|
83
|
+
}
|
84
|
+
} catch (error) {
|
85
|
+
console.log(error)
|
86
|
+
}
|
87
|
+
}
|
88
|
+
|
89
|
+
let arr = []
|
90
|
+
let greenWithIndex = []
|
91
|
+
for (let g = 0; g < greenLetters.length; g++) {
|
92
|
+
const elem = greenLetters[g]
|
93
|
+
elem.addEventListener('input', (e) => {
|
94
|
+
if (e.target.value) {
|
95
|
+
e.target.classList.add('ws-fcs')
|
96
|
+
arr.push(e.target.value)
|
97
|
+
greenWithIndex.push({
|
98
|
+
value: e.target.value,
|
99
|
+
index: e.target.dataset.id,
|
100
|
+
})
|
101
|
+
} else {
|
102
|
+
e.target.classList.remove('ws-fcs')
|
103
|
+
}
|
104
|
+
})
|
105
|
+
}
|
106
|
+
|
107
|
+
let arr2 = []
|
108
|
+
for (let y = 0; y < yellowLetters.length; y++) {
|
109
|
+
const elem = yellowLetters[y]
|
110
|
+
elem.addEventListener('input', (e) => {
|
111
|
+
if (e.target.value) {
|
112
|
+
e.target.classList.add('ws-fcs2')
|
113
|
+
arr2.push(e.target.value)
|
114
|
+
} else {
|
115
|
+
e.target.classList.remove('ws-fcs2')
|
116
|
+
}
|
117
|
+
})
|
118
|
+
}
|
119
|
+
|
120
|
+
let arr3 = []
|
121
|
+
for (let e = 0; e < greyLetters.length; e++) {
|
122
|
+
const elem = greyLetters[e]
|
123
|
+
elem.addEventListener('input', (e) => {
|
124
|
+
if (e.target.value) {
|
125
|
+
e.target.classList.add('ws-fcs3')
|
126
|
+
arr3.push(e.target.value)
|
127
|
+
} else {
|
128
|
+
e.target.classList.remove('ws-fcs3')
|
129
|
+
}
|
130
|
+
})
|
131
|
+
}
|
132
|
+
|
133
|
+
function handleSubmit(e) {
|
134
|
+
e.preventDefault()
|
135
|
+
if (
|
136
|
+
greenLetters[0].value !== '' ||
|
137
|
+
greenLetters[1].value !== '' ||
|
138
|
+
greenLetters[2].value !== '' ||
|
139
|
+
greenLetters[3].value !== '' ||
|
140
|
+
greenLetters[4].value !== ''
|
141
|
+
) {
|
142
|
+
errMessage.innerHTML = ''
|
143
|
+
errMessage.classList.remove('alert-danger')
|
144
|
+
wordleSolver(arr, arr2, arr3, greenWithIndex)
|
145
|
+
} else {
|
146
|
+
errMessage.innerHTML = 'You must enter at least 1 green letter'
|
147
|
+
errMessage.classList.add('alert-danger')
|
148
|
+
}
|
149
|
+
}
|
150
|
+
|
151
|
+
form.addEventListener('submit', handleSubmit)
|
152
|
+
|
153
|
+
// Scrabble Point Array
|
154
|
+
const ScrabbleScore = () => {
|
155
|
+
let twl06_sowpods = {
|
156
|
+
a: 1,
|
157
|
+
e: 1,
|
158
|
+
i: 1,
|
159
|
+
o: 1,
|
160
|
+
u: 1,
|
161
|
+
l: 1,
|
162
|
+
n: 1,
|
163
|
+
r: 1,
|
164
|
+
s: 1,
|
165
|
+
t: 1,
|
166
|
+
d: 2,
|
167
|
+
g: 2,
|
168
|
+
b: 3,
|
169
|
+
c: 3,
|
170
|
+
m: 3,
|
171
|
+
p: 3,
|
172
|
+
f: 4,
|
173
|
+
h: 4,
|
174
|
+
v: 4,
|
175
|
+
w: 4,
|
176
|
+
y: 4,
|
177
|
+
k: 5,
|
178
|
+
j: 8,
|
179
|
+
x: 8,
|
180
|
+
q: 10,
|
181
|
+
z: 10,
|
182
|
+
}
|
183
|
+
return twl06_sowpods
|
184
|
+
}
|
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.6.
|
4
|
+
version: 0.6.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- manpreet-appscms
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2022-01-16 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: jekyll
|
@@ -97,6 +97,7 @@ files:
|
|
97
97
|
- _data/wordgames/en/unscramble_letters_to_make_words.json
|
98
98
|
- _data/wordgames/en/unscramble_words_and_jumble_solver.json
|
99
99
|
- _data/wordgames/en/words_with_friends_word_finder.json
|
100
|
+
- _data/wordleSolver/en/data.json
|
100
101
|
- _data/xyzPagesData/en/unscramble-letters-jumble.json
|
101
102
|
- _data/xyzPagesData/en/words-with-letters-cheat.json
|
102
103
|
- _includes/Monumetric/Monumetric.html
|
@@ -137,6 +138,7 @@ files:
|
|
137
138
|
- _includes/seo.html
|
138
139
|
- _includes/share/socialshare.html
|
139
140
|
- _includes/wordfinderstrategy/content.html
|
141
|
+
- _includes/wordle-solver/wordle-solver.html
|
140
142
|
- _includes/xyzpages/xyz.html
|
141
143
|
- _includes/xyzpages/xyzFooter.html
|
142
144
|
- _layouts/allpages.html
|
@@ -151,6 +153,7 @@ files:
|
|
151
153
|
- _layouts/privacyPolicy.html
|
152
154
|
- _layouts/termAndCondition.html
|
153
155
|
- _layouts/wordMeaning.html
|
156
|
+
- _layouts/wordleSolver.html
|
154
157
|
- _layouts/xyzpages.html
|
155
158
|
- assets/css/HomePageblog.css
|
156
159
|
- assets/css/about.css
|
@@ -164,6 +167,7 @@ files:
|
|
164
167
|
- assets/css/news.css
|
165
168
|
- assets/css/style.css
|
166
169
|
- assets/css/wordGroup.css
|
170
|
+
- assets/css/wordleSolver.css
|
167
171
|
- assets/images/Ankita.webp
|
168
172
|
- assets/images/Anushka.webp
|
169
173
|
- assets/images/Arjyahi.webp
|
@@ -219,6 +223,7 @@ files:
|
|
219
223
|
- assets/js/advancedFilter3.js
|
220
224
|
- assets/js/scrabbleDictonary.js
|
221
225
|
- assets/js/wordScrabble.js
|
226
|
+
- assets/js/wordleSolver.js
|
222
227
|
- assets/js/xyz.js
|
223
228
|
homepage: https://github.com/Contenttool/word-games-theme
|
224
229
|
licenses:
|