word-games-theme 0.6.6 → 0.7.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: 13232ee305d69c65341f9374483271004c57887efb4ffe1447b88c48ec99db93
4
- data.tar.gz: 0c437e9bd00a3e49ac7c4135f120ba42652b10c8dd48e299b903e35fdfddb355
3
+ metadata.gz: 32c099f267df49623c527a4deac6d6b271ee0c3cf29bc33a212f7ab85b1d4035
4
+ data.tar.gz: 685ee8d27a6b337b173f123ce895219571333e7fab9962ac486255d6eb5e0244
5
5
  SHA512:
6
- metadata.gz: 1072621d71e289e092ef3f1eb076f4bcdd61ac329d8235164ea402fcc2933dda972edac2d98b250aefe108800f213c6d186f126221f80b72669b18058e5cf3a6
7
- data.tar.gz: cd330401acc19f9b5fa6554038832d0e5c596bc2bd09eb7d2b8ebcde9d2dcb7aac853d225cc6a810037ea416ce72ebe74031777ace95e161d95746beb148511e
6
+ metadata.gz: 2a475bf8de1ba5de38ef58c63132b828b1449e7767a5bcdf843034fe9cfd4d3936871868b1f676acfa199d219a08a6ee70dc239dc66f81ff4aebddf66ab4019e
7
+ data.tar.gz: 2fa02573c17ac59d9ec93f6405c07ace5e27dd46bbeb229781e4bfdd5010381660d2afe7cf7e90bd848ae40f1dca396f188faef24f76d6df6d42b39a8dbfd7b2
@@ -66,7 +66,7 @@
66
66
  {
67
67
  "letters": "curer",
68
68
  "scrablepoints": 7,
69
- "wwfpoints": 9
69
+ "wwfpoints": 7
70
70
  },
71
71
  {
72
72
  "letters": "murre",
@@ -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
+ }
@@ -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>
@@ -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 for="startsWith">Starts With</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">Must Include </label>
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">End With</label>
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 for="wordLength">Word Length </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>
@@ -80,7 +101,6 @@
80
101
  <input type="submit" value="Apply" class="btn-info text-white" style="background: #808080">
81
102
  </div>
82
103
  </div>
83
-
84
104
  </form>
85
105
  </div>
86
106
  </div>
@@ -98,6 +118,8 @@
98
118
  startsWith.value = ''
99
119
  mustInclude.value = ''
100
120
  endsWith.value = ''
121
+ exculdeWith.value = ''
122
+ inculdeWith.value = ''
101
123
  wordLength.value = ''
102
124
  })
103
125
  const fillterWrapper = document.querySelector('.fillterWrapper')
@@ -49,24 +49,41 @@
49
49
 
50
50
  </div>
51
51
  <div class="startsWith">
52
- <label for="startsWith">Starts With</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">Must Include </label>
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">End With</label>
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 for="wordLength">Word Length </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
 
@@ -37,7 +37,6 @@
37
37
  </div>
38
38
 
39
39
  <div class="wrapper_dropDown d-flex justify-content-end mt-5" style="gap:15px">
40
-
41
40
  <div class="advancedFilter" style="position: relative;" onclick="myFunction()">
42
41
  <input type="button" value="Advanced Filter" class="filterButton">
43
42
  <div class="angle-arrow2"></div>
@@ -53,14 +52,24 @@
53
52
  <input type="text" id="startsWith" placeholder="Prefix" value="" name="prefix">
54
53
  </div>
55
54
  <div class="mustInclude">
56
- <label for="mustInclude">Must Include </label>
55
+ <label for="mustInclude">Must Contains </label>
57
56
  <input type="text" id="mustInclude" placeholder="Contains" name="contains">
58
57
 
59
58
  </div>
60
59
  <div class="endsWith">
61
60
  <label for="endsWith">End With</label>
62
61
  <input type="text" id="endsWith" placeholder="Suffix" name="suffix">
62
+ </div>
63
+ <div class="exculdeWith">
64
+ <label for="exculdeWith">Exculde</label>
65
+ <br>
66
+ <input type="text" id="exculdeWith" placeholder="Exculde" value="" name="exculde">
67
+ </div>
63
68
 
69
+ <div class="inculdeWith">
70
+ <label for="inculdeWith">Inculde</label>
71
+ <br>
72
+ <input type="text" id="inculdeWith" placeholder="Inculde" value="" name="inculde">
64
73
  </div>
65
74
 
66
75
  <div class="wordLength same">
@@ -76,6 +85,11 @@
76
85
  </div>
77
86
  </div>
78
87
  </form>
88
+ {%- if page.letter == 5 -%}
89
+ <h2 class="m-0 mt-4 text-center" style="font-size:16px">
90
+ <a style="color:#000" href="/wordle-solver">Solve wordle quickly using our wordle solver</a>
91
+ </h2>
92
+ {%- endif -%}
79
93
  </div>
80
94
  </div>
81
95
  </div>
@@ -94,6 +108,7 @@
94
108
  startsWith.value = ''
95
109
  mustInclude.value = ''
96
110
  endsWith.value = ''
111
+ exculdeWith.value = ''
97
112
  wordLength.value = ''
98
113
  })
99
114
  const advancedFilter = document.querySelector('.advancedFilter')
@@ -0,0 +1,117 @@
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
+ <form name="verify" class="forms_data">
6
+ <div class="form-group">
7
+
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 greenLetters greenWithIndex form-control px-5" maxlength="1"
14
+ id="greenLetters">
15
+ <input data-id="1" type="text" autocomplete="off" tabIndex="1"
16
+ class="wordleSolver-field greenLetters greenWithIndex form-control px-5" maxlength="1"
17
+ id="greenLetters">
18
+ <input data-id="2" type="text" autocomplete="off" tabIndex="2"
19
+ class="wordleSolver-field greenLetters greenWithIndex form-control px-5" maxlength="1"
20
+ id="greenLetters">
21
+ <input data-id="3" type="text" autocomplete="off" tabIndex="3"
22
+ class="wordleSolver-field greenLetters greenWithIndex form-control px-5" maxlength="1"
23
+ id="greenLetters">
24
+ <input data-id="4" type="text" autocomplete="off" tabIndex="4"
25
+ class="wordleSolver-field greenLetters greenWithIndex form-control px-5" maxlength="1"
26
+ id="greenLetters">
27
+ </div>
28
+ </div>
29
+ </div>
30
+ <div class="form-group">
31
+ <label for="yellowLetters" class="my-1 p-0 wordleSolver-label">Enter letters in yellow below</label>
32
+ <div class="col-md-6 p-0">
33
+ <div class="d-flex">
34
+ <input type="text" autocomplete="off" tabIndex="1"
35
+ class="wordleSolver-field yellowLetters form-control px-5" maxlength="1"
36
+ id="yellowLetters" tabIndex="5">
37
+ <input type="text" autocomplete="off"
38
+ class="wordleSolver-field yellowLetters form-control px-5" maxlength="1"
39
+ id="yellowLetters" tabIndex="6">
40
+ <input type="text" autocomplete="off"
41
+ class="wordleSolver-field yellowLetters form-control px-5" maxlength="1"
42
+ id="yellowLetters" tabIndex="7">
43
+ <input type="text" autocomplete="off"
44
+ class="wordleSolver-field yellowLetters form-control px-5" maxlength="1"
45
+ id="yellowLetters" tabIndex="8">
46
+ <input type="text" autocomplete="off"
47
+ class="wordleSolver-field yellowLetters form-control px-5" maxlength="1"
48
+ id="yellowLetters" tabIndex="9">
49
+ </div>
50
+ </div>
51
+ </div>
52
+ <div class="form-group">
53
+ <label for="greyLetters" class="my-1 p-0 wordleSolver-label">Enter letters in grey below</label>
54
+ <div class="col-md-6 p-0 wrapper">
55
+ <div class="d-flex">
56
+ <input type="text" class="wordleSolver-field greyLetters form-control px-5" maxlength="1"
57
+ id="greyLetters" value="" autocomplete="off" tabIndex="10">
58
+ <input type="text" class="wordleSolver-field greyLetters form-control px-5" maxlength="1"
59
+ id="greyLetters" value="" autocomplete="off" tabIndex="11">
60
+ <input type="text" class="wordleSolver-field greyLetters form-control px-5" maxlength="1"
61
+ id="greyLetters" value="" autocomplete="off" tabIndex="12">
62
+ <input type="text" class="wordleSolver-field greyLetters form-control px-5" maxlength="1"
63
+ id="greyLetters" value="" autocomplete="off" tabIndex="13">
64
+ <input type="text" class="wordleSolver-field greyLetters form-control px-5" maxlength="1"
65
+ id="greyLetters" value="" autocomplete="off" tabIndex="14">
66
+ </div>
67
+ <div class="d-flex mt-2">
68
+ <input type="text" autocomplete="off" tabIndex="15"
69
+ class="wordleSolver-field greyLetters form-control px-5" maxlength="1" id="greyLetters">
70
+ <input type="text" autocomplete="off" tabIndex="16"
71
+ class="wordleSolver-field greyLetters form-control px-5" maxlength="1" id="greyLetters">
72
+ <input type="text" autocomplete="off" tabIndex="17"
73
+ class="wordleSolver-field greyLetters form-control px-5" maxlength="1" id="greyLetters">
74
+ <input type="text" autocomplete="off" tabIndex="18"
75
+ class="wordleSolver-field greyLetters form-control px-5" maxlength="1" id="greyLetters">
76
+ <input type="text" autocomplete="off" tabIndex="19"
77
+ class="wordleSolver-field greyLetters form-control px-5" maxlength="1" id="greyLetters">
78
+ </div>
79
+ </div>
80
+
81
+
82
+ </div>
83
+ <button type="button" data-toggle="tooltip" data-placement="top" title="Add more greyletters fields"
84
+ id="addMore"><i class="bi bi-plus"></i>
85
+ </button>
86
+ <div class="form-group text-right">
87
+ <div class="col-md-4 p-0" style="margin: 0 0 0 auto;">
88
+ <button type="submit" id="wordlesolver_submit" class="btn wordlesolver-btn mt-3">Update</button>
89
+ </div>
90
+ </div>
91
+ </form>
92
+ </div>
93
+
94
+ <div class="col-md-10 mx-auto p-0 mt-3">
95
+ <div id="wordleWordCount"></div>
96
+ <div id="wordleSolverData"></div>
97
+ <div class="alert" role="alert" id="wordleSolvererrorMsg" style="font-size: 15px; padding:15px"></div>
98
+ </div>
99
+ </div>
100
+ </div>
101
+
102
+
103
+ <script src="https://code.jquery.com/jquery-3.6.0.min.js"
104
+ integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script>
105
+ <script>
106
+ $(document).on('keypress', 'input', function (e) {
107
+ if (e.which === 32) {
108
+ e.preventDefault();
109
+ var $next = $('[tabIndex=' + (+this.tabIndex + 1) + ']');
110
+
111
+ if (!$next.length) {
112
+ $next = $('[tabIndex=1]');
113
+ }
114
+ $next.focus().click();
115
+ }
116
+ });
117
+ </script>
@@ -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,49 @@
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
+ <link rel="stylesheet" href="{{ '../assets/css/wordleSolver.css' | relative_url }}">
13
+ {%- include header/index.html -%}
14
+
15
+
16
+ {%- if homeData.h1 or homeData.h2 -%}
17
+ <div class="wordleSolver_headings">
18
+ <div class="container">
19
+ <div class="pageHeading text-center">
20
+ <h1 class="heading pb-0 m-0">{{homeData.h1}}</h1>
21
+ <h2>{{homeData.h2}}</h2>
22
+ </div>
23
+ </div>
24
+ </div>
25
+ {%- endif -%}
26
+
27
+ <div class="wordleSolver-feature">
28
+ {{content}}
29
+ </div>
30
+
31
+ {% include section/feature.html %}
32
+
33
+ {%- if dataToShow.faqList -%}
34
+ {%- if dataToShow.faqList.first.Question !='' -%}
35
+ {% include section/news.html %}
36
+ {% endif %}
37
+ {% endif %}
38
+
39
+
40
+ {%- include footer/index.html -%}
41
+ <link rel="stylesheet"
42
+ href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-icons/1.5.0/font/bootstrap-icons.min.css" />
43
+
44
+ <script defer src="../assets/js/wordleSolver.js"></script>
45
+ <script defer src="https://cdn.jsdelivr.net/npm/bootstrap@4.5.3/dist/js/bootstrap.min.js"></script>
46
+ {% include Monumetric/Monumetric.html %}
47
+ </body>
48
+
49
+ </html>
@@ -0,0 +1,103 @@
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
+ .errMessage {
10
+ display: none;
11
+ }
12
+ .forms_data {
13
+ border: 1px solid rgba(0, 0, 0, 0.1);
14
+ padding: 25px;
15
+ }
16
+ .wordleSolver_headings {
17
+ margin-top: 110px;
18
+ margin-bottom: 20px;
19
+ }
20
+ .wordleSolver-field {
21
+ border-radius: 5px;
22
+ margin: 0 5px 0 0 !important;
23
+ font-size: 30px;
24
+ text-transform: uppercase;
25
+ text-align: center;
26
+ width: 55px;
27
+ height: 55px;
28
+ line-height: 55px;
29
+ font-weight: bold;
30
+ border: 1px solid rgba(0, 0, 0, 0.1);
31
+ background: #fff;
32
+ padding: 0 !important;
33
+ outline: none !important;
34
+ }
35
+
36
+ .wordleSolver-field:focus {
37
+ box-shadow: unset !important;
38
+ border-color: #ced4da !important;
39
+ }
40
+ #addMore {
41
+ font-size: 25px;
42
+ background-color: transparent;
43
+ border: none;
44
+ width: 100%;
45
+ text-align: right;
46
+ padding-right: 2px;
47
+ }
48
+
49
+ .wordlesolver-btn {
50
+ padding: 8px 25px;
51
+ font-size: 15px;
52
+ background-color: #6aaa64;
53
+ border-color: #6aaa64;
54
+ color: #fff;
55
+ border-radius: 5px;
56
+ font-weight: 900;
57
+ }
58
+ .wordlesolver-btn:focus {
59
+ outline: none;
60
+ box-shadow: unset !important;
61
+ }
62
+ .wordlesolver-btn:hover {
63
+ color: #fff;
64
+ }
65
+
66
+ .wordleSolver-label {
67
+ font-size: 14px;
68
+ font-weight: 600;
69
+ }
70
+
71
+ .allfiveletterswords {
72
+ background-color: white !important;
73
+ width: auto;
74
+ height: auto;
75
+ box-shadow: 0 0 2px rgb(0 0 0 / 20%);
76
+ margin: 10px 0;
77
+ border-radius: 15px;
78
+ }
79
+ .allfiveletterswords > .wordListHeading {
80
+ background: gray;
81
+ padding: 10px 0px 5px 25px;
82
+ color: #fff;
83
+ border-top-right-radius: 15px;
84
+ border-top-left-radius: 15px;
85
+ }
86
+
87
+ #wordleWordCount {
88
+ font-size: 18px;
89
+ }
90
+
91
+ .ws-fcs {
92
+ color: #fff !important;
93
+ background-color: #6aaa64 !important;
94
+ }
95
+ .ws-fcs2 {
96
+ color: #fff !important;
97
+ background-color: #c9b458 !important;
98
+ }
99
+
100
+ .ws-fcs3 {
101
+ color: #fff !important;
102
+ background-color: #787c7e !important;
103
+ }
@@ -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 = lengthValue
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 < 4; i++) {
209
+ for (var i = 0; i <= 4; i++) {
160
210
  if (filter_val[i].value != '') {
161
211
  filter_count += 1
162
212
  }
@@ -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 = lengthValue
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 < 4; 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,230 @@
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
+ let wrapper = document.querySelector('.wrapper')
17
+ let addMore = document.querySelector('#addMore')
18
+
19
+ addMore.addEventListener('click', (e) => {
20
+ e.preventDefault()
21
+ let div = document.createElement('div')
22
+ div.classList.add('d-flex')
23
+ div.classList.add('mt-2')
24
+
25
+ for (let i = 20; i <= 24; i++) {
26
+ let input = document.createElement('input')
27
+ input.type = 'text'
28
+ input.setAttribute('maxlength', '1')
29
+ input.setAttribute('autocomplete', 'off')
30
+ if (i <= 24) {
31
+ input.setAttribute('tabIndex', i)
32
+ }
33
+ let classes = ['wordleSolver-field', 'greyLetters', 'form-control', 'px-5']
34
+ input.classList.add(...classes)
35
+ input.id = 'greyLetters'
36
+ div.append(input)
37
+ wrapper.append(div)
38
+ }
39
+ })
40
+
41
+ const wordleSolver = async (value, value2, value3, greenWithIndex) => {
42
+ try {
43
+ let result = ''
44
+ wordleWordCount.innerHTML = 'Searching for best possible letters...'
45
+ let response = await fetch('/.netlify/functions/wordleSolver', {
46
+ method: 'POST',
47
+ body: JSON.stringify({
48
+ greenLetters: value,
49
+ yellowLetters: value2,
50
+ greyLetters: value3,
51
+ greenWithIndex: greenWithIndex,
52
+ }),
53
+ })
54
+ const data = await response.json()
55
+
56
+ let ok = true
57
+ if (data.length === 0) {
58
+ newWordsLength = ''
59
+ wordleSolverData.innerHTML = ''
60
+ wordleSolvererrorMsg.classList.add('alert-danger')
61
+ wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
62
+ } else {
63
+ wordleSolvererrorMsg.classList.remove('alert-danger')
64
+ wordleSolvererrorMsg.innerHTML = ''
65
+ wordleSolverData.innerHTML = ''
66
+ newWordsLength = ''
67
+ newWordsLength += data.length
68
+ result = data.map((item) => {
69
+ if (item.length === 1) {
70
+ ok = false
71
+ newWordsLength = newWordsLength - 1
72
+ } else {
73
+ let ScrabbleLetterScore = ScrabbleScore()
74
+ sum = 0
75
+ item = item.toLowerCase()
76
+ for (let i = 0; i < item.length; i++) {
77
+ sum += ScrabbleLetterScore[item[i]] || 0 // for unknown characters
78
+ }
79
+ return `
80
+ <a class="anchor__style" title="Lookup python in Dictionary" target="_blank" href="/word-meaning?search=${item.toLowerCase()}">
81
+ <li>
82
+ ${item.toLowerCase()}
83
+ <span class="points" value="${sum}" style="position:relative; top:4px; font-size:12px"> ${sum}</span>
84
+ </li>
85
+ </a>
86
+ `
87
+ }
88
+ })
89
+ if (ok) {
90
+ wordleSolverData.innerHTML += `
91
+ <div class="allfiveletterswords wordlistContainer">
92
+ <div class="wordListHeading">
93
+ <h3 class="lead">All 5 Letter Words</h3>
94
+ </div>
95
+ <div class="wordList">
96
+ <ul class="ul list-unstyled">
97
+ ${result.join('')}
98
+ </ul>
99
+ </div>
100
+ </div>
101
+ `
102
+ }
103
+ }
104
+ if (newWordsLength === 0) {
105
+ wordleSolvererrorMsg.classList.add('alert-danger')
106
+ wordleSolvererrorMsg.innerHTML = 'Sorry!! No words found'
107
+ } else {
108
+ wordleWordCount.innerHTML = `<strong>${newWordsLength} Results</strong>`
109
+ }
110
+ } catch (error) {
111
+ console.log(error)
112
+ }
113
+ }
114
+
115
+ for (let g = 0; g < greenLetters.length; g++) {
116
+ const elem = greenLetters[g]
117
+ elem.addEventListener('input', (e) => {
118
+ if (e.target.value) {
119
+ e.target.classList.add('ws-fcs')
120
+ } else {
121
+ e.target.classList.remove('ws-fcs')
122
+ }
123
+ })
124
+ }
125
+ for (let y = 0; y < yellowLetters.length; y++) {
126
+ const elem = yellowLetters[y]
127
+ elem.addEventListener('input', (e) => {
128
+ if (e.target.value) {
129
+ e.target.classList.add('ws-fcs2')
130
+ } else {
131
+ e.target.classList.remove('ws-fcs2')
132
+ }
133
+ })
134
+ }
135
+ for (let e = 0; e < greyLetters.length; e++) {
136
+ const elem = greyLetters[e]
137
+ elem.addEventListener('input', (e) => {
138
+ if (e.target.value) {
139
+ e.target.classList.add('ws-fcs3')
140
+ } else {
141
+ e.target.classList.remove('ws-fcs3')
142
+ }
143
+ })
144
+ }
145
+
146
+ const getLetters = (object) => {
147
+ let letters = []
148
+ if (typeof object === 'string') {
149
+ object = document.querySelectorAll(object)
150
+ }
151
+ for (let item of object) {
152
+ if (item.value.trim().length === 1) {
153
+ letters.push(item.value.toLowerCase())
154
+ }
155
+ }
156
+ return letters
157
+ }
158
+ const getIndexs = (object) => {
159
+ let index = []
160
+ if (typeof object === 'string') {
161
+ object = document.querySelectorAll(object)
162
+ }
163
+ for (let item of object) {
164
+ if (item.value.trim().length === 1) {
165
+ index.push({
166
+ value: item.value.toLowerCase(),
167
+ index: item.dataset.id,
168
+ })
169
+ }
170
+ }
171
+ return index
172
+ }
173
+
174
+ function handleSubmit(e) {
175
+ e.preventDefault()
176
+ let greenLetter = getLetters('.greenLetters')
177
+ let yellowLetters = getLetters('.yellowLetters')
178
+ let greyLetters = getLetters('.greyLetters')
179
+ let greenWithIndex = getIndexs('.greenWithIndex')
180
+ if (
181
+ greenLetters[0].value !== '' ||
182
+ greenLetters[1].value !== '' ||
183
+ greenLetters[2].value !== '' ||
184
+ greenLetters[3].value !== '' ||
185
+ greenLetters[4].value !== ''
186
+ ) {
187
+ errMessage.innerHTML = ''
188
+ errMessage.classList.remove('alert-danger')
189
+ errMessage.style.display = 'none'
190
+ wordleSolver(greenLetter, yellowLetters, greyLetters, greenWithIndex)
191
+ } else {
192
+ errMessage.innerHTML = 'You must enter at least 1 green letter'
193
+ errMessage.classList.add('alert-danger')
194
+ errMessage.style.display = 'block'
195
+ }
196
+ }
197
+ form.addEventListener('submit', handleSubmit)
198
+
199
+ // Scrabble Point Array
200
+ const ScrabbleScore = () => {
201
+ let twl06_sowpods = {
202
+ a: 1,
203
+ e: 1,
204
+ i: 1,
205
+ o: 1,
206
+ u: 1,
207
+ l: 1,
208
+ n: 1,
209
+ r: 1,
210
+ s: 1,
211
+ t: 1,
212
+ d: 2,
213
+ g: 2,
214
+ b: 3,
215
+ c: 3,
216
+ m: 3,
217
+ p: 3,
218
+ f: 4,
219
+ h: 4,
220
+ v: 4,
221
+ w: 4,
222
+ y: 4,
223
+ k: 5,
224
+ j: 8,
225
+ x: 8,
226
+ q: 10,
227
+ z: 10,
228
+ }
229
+ return twl06_sowpods
230
+ }
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.6
4
+ version: 0.7.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: 2021-12-30 00:00:00.000000000 Z
11
+ date: 2022-01-18 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: