@scrabble-solver/scrabble-solver 2.10.3 → 2.10.5

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.
Files changed (194) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +13 -13
  3. package/.next/cache/.tsbuildinfo +1 -1
  4. package/.next/cache/eslint/.cache_8dgz12 +1 -1
  5. package/.next/cache/next-server.js.nft.json +1 -1
  6. package/.next/cache/webpack/client-production/0.pack +0 -0
  7. package/.next/cache/webpack/client-production/index.pack +0 -0
  8. package/.next/cache/webpack/edge-server-production/0.pack +0 -0
  9. package/.next/cache/webpack/edge-server-production/index.pack +0 -0
  10. package/.next/cache/webpack/server-production/0.pack +0 -0
  11. package/.next/cache/webpack/server-production/index.pack +0 -0
  12. package/.next/next-server.js.nft.json +1 -1
  13. package/.next/prerender-manifest.json +1 -1
  14. package/.next/routes-manifest.json +1 -1
  15. package/.next/server/chunks/176.js +1439 -1658
  16. package/.next/server/chunks/579.js +50 -26
  17. package/.next/server/middleware-build-manifest.js +1 -1
  18. package/.next/server/pages/404.html +2 -2
  19. package/.next/server/pages/404.js.nft.json +1 -1
  20. package/.next/server/pages/500.html +2 -2
  21. package/.next/server/pages/_app.js.nft.json +1 -1
  22. package/.next/server/pages/api/solve.js +22 -6
  23. package/.next/server/pages/index.html +2 -2
  24. package/.next/server/pages/index.js +1509 -52
  25. package/.next/server/pages/index.js.nft.json +1 -1
  26. package/.next/server/pages/index.json +1 -1
  27. package/.next/server/pages-manifest.json +2 -2
  28. package/.next/static/WILX-RgqlLTd4ZoPs8C_E/_buildManifest.js +1 -0
  29. package/.next/static/{FJkPF91uL-OCAJKTTpVSP → WILX-RgqlLTd4ZoPs8C_E}/_ssgManifest.js +0 -0
  30. package/.next/static/chunks/144-6768fe9a92865ec8.js +1 -0
  31. package/.next/static/chunks/490-d29992f1c264d70e.js +5 -0
  32. package/.next/static/chunks/pages/{404-24f9617eeb8d6dc1.js → 404-7619583a9e7188b1.js} +1 -1
  33. package/.next/static/chunks/pages/_app-fa0661b072fc6af9.js +24 -0
  34. package/.next/static/chunks/pages/index-1a6bbb880f28606a.js +1 -0
  35. package/.next/static/css/78e42ad01f580f64.css +1 -0
  36. package/.next/static/css/d80ffccf2315791a.css +1 -0
  37. package/.next/static/css/e737d5d7fbed2434.css +1 -0
  38. package/.next/trace +55 -52
  39. package/package.json +11 -9
  40. package/src/components/Badge/Badge.module.scss +4 -5
  41. package/src/components/Board/BoardPure.tsx +5 -5
  42. package/src/components/Board/components/Cell/Cell.module.scss +11 -11
  43. package/src/components/Button/Button.module.scss +34 -40
  44. package/src/components/Button/Button.tsx +28 -8
  45. package/src/components/Button/Link.tsx +44 -0
  46. package/src/components/Dictionary/Dictionary.module.scss +1 -2
  47. package/src/components/Dictionary/Dictionary.tsx +2 -6
  48. package/src/components/DictionaryInput/DictionaryInput.module.scss +1 -3
  49. package/src/components/EmptyState/EmptyState.module.scss +6 -7
  50. package/src/components/EmptyState/EmptyState.tsx +6 -6
  51. package/src/components/Key/Key.module.scss +0 -1
  52. package/src/components/{Splash/Splash.module.scss → LogoSplashScreen/LogoSplashScreen.module.scss} +1 -1
  53. package/src/components/{Splash/Splash.tsx → LogoSplashScreen/LogoSplashScreen.tsx} +7 -7
  54. package/src/components/LogoSplashScreen/index.ts +1 -0
  55. package/src/components/{Sidebar/Sidebar.module.scss → Modal/Modal.module.scss} +25 -20
  56. package/src/components/{Sidebar/Sidebar.tsx → Modal/Modal.tsx} +9 -9
  57. package/src/components/{Sidebar → Modal}/components/Section/Section.module.scss +0 -0
  58. package/src/components/{Sidebar → Modal}/components/Section/Section.tsx +0 -0
  59. package/src/components/{Sidebar → Modal}/components/Section/index.ts +0 -0
  60. package/src/components/{Sidebar → Modal}/components/index.ts +0 -0
  61. package/src/components/Modal/index.ts +1 -0
  62. package/src/components/NavButtons/NavButtons.tsx +22 -3
  63. package/src/components/Progress/Progress.module.scss +9 -0
  64. package/src/components/Progress/Progress.tsx +38 -0
  65. package/src/components/Progress/index.ts +1 -0
  66. package/src/components/Rack/Rack.module.scss +2 -0
  67. package/src/components/Rack/Rack.tsx +3 -1
  68. package/src/components/Rack/RackTile.tsx +3 -2
  69. package/src/components/Radio/Radio.module.scss +2 -2
  70. package/src/components/ResultCandidatePicker/ResultCandidatePicker.module.scss +76 -0
  71. package/src/components/ResultCandidatePicker/ResultCandidatePicker.tsx +38 -0
  72. package/src/components/ResultCandidatePicker/index.ts +1 -0
  73. package/src/components/Results/Result.tsx +64 -43
  74. package/src/components/Results/Results.module.scss +9 -16
  75. package/src/components/Results/Results.tsx +45 -28
  76. package/src/components/Results/SolveButton.tsx +10 -7
  77. package/src/components/Results/{getColumns.ts → getLocaleColumns.ts} +2 -2
  78. package/src/components/Results/types.ts +16 -0
  79. package/src/components/Results/useColumns.ts +44 -0
  80. package/src/components/ResultsInput/ResultsInput.module.scss +1 -3
  81. package/src/components/Sizer/Sizer.module.scss +10 -0
  82. package/src/components/Sizer/Sizer.tsx +10 -0
  83. package/src/components/Sizer/index.ts +1 -0
  84. package/src/components/Solver/Solver.module.scss +83 -27
  85. package/src/components/Solver/Solver.tsx +158 -25
  86. package/src/components/Solver/components/ApplyButton/ApplyButton.module.scss +5 -0
  87. package/src/components/Solver/components/ApplyButton/ApplyButton.tsx +38 -0
  88. package/src/components/Solver/components/ApplyButton/index.ts +1 -0
  89. package/src/components/Solver/components/EmptyState/EmptyState.module.scss +59 -0
  90. package/src/components/Solver/components/EmptyState/EmptyState.tsx +41 -0
  91. package/src/components/Solver/components/EmptyState/index.ts +1 -0
  92. package/src/components/Solver/components/SolveButton/SolveButton.module.scss +4 -0
  93. package/src/components/Solver/components/SolveButton/SolveButton.tsx +43 -0
  94. package/src/components/Solver/components/SolveButton/index.ts +1 -0
  95. package/src/components/Solver/components/index.ts +3 -0
  96. package/src/components/{Screen/Screen.module.scss → SplashScreen/SplashScreen.module.scss} +2 -12
  97. package/src/components/{Screen/Screen.tsx → SplashScreen/SplashScreen.tsx} +4 -4
  98. package/src/components/SplashScreen/index.ts +1 -0
  99. package/src/components/SquareButton/SquareButton.module.scss +3 -3
  100. package/src/components/SquareButton/SquareButton.tsx +2 -2
  101. package/src/components/Tile/Tile.module.scss +39 -30
  102. package/src/components/Tile/Tile.tsx +2 -2
  103. package/src/components/Tile/TilePure.tsx +9 -5
  104. package/src/components/Tooltip/Tooltip.module.scss +5 -6
  105. package/src/components/index.ts +6 -7
  106. package/src/hooks/index.ts +1 -1
  107. package/src/hooks/useMediaQuery.ts +11 -0
  108. package/src/hooks/usePortal.tsx +1 -1
  109. package/src/i18n/de.json +2 -0
  110. package/src/i18n/en.json +2 -0
  111. package/src/i18n/es.json +2 -0
  112. package/src/i18n/fa.json +2 -0
  113. package/src/i18n/fr.json +2 -0
  114. package/src/i18n/pl.json +2 -0
  115. package/src/icons/CardChecklist.svg +5 -0
  116. package/src/icons/Check.svg +2 -2
  117. package/src/icons/ChevronDown.svg +4 -0
  118. package/src/icons/CrossCircleFill.svg +4 -0
  119. package/src/icons/{CrossFill.svg → CrossSquareFill.svg} +0 -0
  120. package/src/icons/ExclamationTriangleFill.svg +4 -0
  121. package/src/icons/InfoCircleFill.svg +4 -0
  122. package/src/icons/List.svg +4 -0
  123. package/src/icons/Search.svg +4 -0
  124. package/src/icons/index.ts +8 -2
  125. package/src/{components/KeyMap/KeyMap.tsx → modals/KeyMapModal/KeyMapModal.tsx} +11 -13
  126. package/src/{components/KeyMap → modals/KeyMapModal}/components/Mapping/Mapping.module.scss +0 -0
  127. package/src/{components/KeyMap → modals/KeyMapModal}/components/Mapping/Mapping.tsx +0 -0
  128. package/src/{components/KeyMap → modals/KeyMapModal}/components/Mapping/index.ts +0 -0
  129. package/src/{components/KeyMap → modals/KeyMapModal}/components/index.ts +0 -0
  130. package/src/modals/KeyMapModal/index.ts +1 -0
  131. package/src/{components/KeyMap → modals/KeyMapModal}/keys.tsx +1 -2
  132. package/src/modals/MenuModal/MenuModal.module.scss +11 -0
  133. package/src/modals/MenuModal/MenuModal.tsx +56 -0
  134. package/src/modals/MenuModal/index.ts +1 -0
  135. package/src/modals/RemainingTilesModal/RemainingTilesModal.module.scss +28 -0
  136. package/src/{components/RemainingTiles/RemainingTiles.tsx → modals/RemainingTilesModal/RemainingTilesModal.tsx} +14 -12
  137. package/src/{components/RemainingTiles → modals/RemainingTilesModal/components/Character}/Character.module.scss +7 -3
  138. package/src/{components/RemainingTiles → modals/RemainingTilesModal/components/Character}/Character.tsx +11 -3
  139. package/src/modals/RemainingTilesModal/components/Character/index.ts +1 -0
  140. package/src/modals/RemainingTilesModal/components/index.ts +1 -0
  141. package/src/modals/RemainingTilesModal/index.ts +1 -0
  142. package/src/modals/ResultsModal/ResultsModal.module.scss +7 -0
  143. package/src/modals/ResultsModal/ResultsModal.tsx +58 -0
  144. package/src/modals/ResultsModal/index.ts +1 -0
  145. package/src/modals/SettingsModal/SettingsModal.tsx +34 -0
  146. package/src/{components/Settings → modals/SettingsModal}/components/AutoGroupTilesSetting/AutoGroupTilesSetting.module.scss +0 -0
  147. package/src/{components/Settings → modals/SettingsModal}/components/AutoGroupTilesSetting/AutoGroupTilesSetting.tsx +1 -2
  148. package/src/{components/Settings → modals/SettingsModal}/components/AutoGroupTilesSetting/constants.ts +0 -0
  149. package/src/{components/Settings → modals/SettingsModal}/components/AutoGroupTilesSetting/index.ts +0 -0
  150. package/src/{components/Settings → modals/SettingsModal}/components/AutoGroupTilesSetting/lib.ts +0 -0
  151. package/src/{components/Settings → modals/SettingsModal}/components/ConfigSetting/ConfigSetting.module.scss +0 -0
  152. package/src/{components/Settings → modals/SettingsModal}/components/ConfigSetting/ConfigSetting.tsx +1 -2
  153. package/src/{components/Settings → modals/SettingsModal}/components/ConfigSetting/index.ts +0 -0
  154. package/src/{components/Settings → modals/SettingsModal}/components/ConfigSetting/options.ts +0 -0
  155. package/src/{components/Settings → modals/SettingsModal}/components/ConfigSetting/types.ts +0 -0
  156. package/src/{components/Settings → modals/SettingsModal}/components/LocaleSetting/LocaleSetting.module.scss +0 -0
  157. package/src/{components/Settings → modals/SettingsModal}/components/LocaleSetting/LocaleSetting.tsx +1 -2
  158. package/src/{components/Settings → modals/SettingsModal}/components/LocaleSetting/index.ts +0 -0
  159. package/src/{components/Settings → modals/SettingsModal}/components/LocaleSetting/options.ts +0 -0
  160. package/src/{components/Settings → modals/SettingsModal}/components/LocaleSetting/types.ts +0 -0
  161. package/src/{components/Settings → modals/SettingsModal}/components/index.ts +0 -0
  162. package/src/modals/SettingsModal/index.ts +1 -0
  163. package/src/{components/Words/Words.module.scss → modals/WordsModal/WordsModal.module.scss} +7 -1
  164. package/src/{components/Words/Words.tsx → modals/WordsModal/WordsModal.tsx} +10 -12
  165. package/src/modals/WordsModal/index.ts +1 -0
  166. package/src/modals/index.ts +6 -0
  167. package/src/pages/index.module.scss +6 -4
  168. package/src/pages/index.tsx +63 -26
  169. package/src/parameters/index.ts +28 -6
  170. package/src/state/createAppStore.ts +7 -4
  171. package/src/styles/mixins.scss +17 -15
  172. package/src/styles/variables.scss +15 -17
  173. package/src/types/index.ts +2 -0
  174. package/tsconfig.json +1 -0
  175. package/.next/cache/webpack/client-development/7.pack_ +0 -0
  176. package/.next/static/FJkPF91uL-OCAJKTTpVSP/_buildManifest.js +0 -1
  177. package/.next/static/chunks/361-d16f336a9752a55a.js +0 -1
  178. package/.next/static/chunks/724-eb48df4d1ba3df8b.js +0 -5
  179. package/.next/static/chunks/pages/_app-959e495f0f221247.js +0 -24
  180. package/.next/static/chunks/pages/index-1e30dafa41bddb80.js +0 -1
  181. package/.next/static/css/aafd07997120f1e4.css +0 -1
  182. package/.next/static/css/cb5b206454513f3c.css +0 -1
  183. package/.next/static/css/eb9d57f7103525ab.css +0 -1
  184. package/src/components/KeyMap/index.ts +0 -1
  185. package/src/components/RemainingTiles/RemainingTiles.module.scss +0 -16
  186. package/src/components/RemainingTiles/index.ts +0 -1
  187. package/src/components/Screen/index.ts +0 -1
  188. package/src/components/Settings/Settings.tsx +0 -35
  189. package/src/components/Settings/index.ts +0 -1
  190. package/src/components/Sidebar/index.ts +0 -1
  191. package/src/components/Splash/index.ts +0 -1
  192. package/src/components/Words/index.ts +0 -1
  193. package/src/hooks/useIsTablet.ts +0 -10
  194. package/src/icons/Play.svg +0 -4
@@ -65,8 +65,10 @@ module.exports = {
65
65
  // Exports
66
66
  module.exports = {
67
67
  "button": "Button_button__PjVhE",
68
- "content": "Button_content__XZA3a",
68
+ "primary": "Button_primary___XGO6",
69
+ "default": "Button_default__NXf3e",
69
70
  "icon": "Button_icon__DJGKY",
71
+ "content": "Button_content__XZA3a",
70
72
  "label": "Button_label__vFl5U"
71
73
  };
72
74
 
@@ -126,31 +128,66 @@ module.exports = {
126
128
 
127
129
  /***/ }),
128
130
 
129
- /***/ 55487:
131
+ /***/ 94095:
130
132
  /***/ ((module) => {
131
133
 
132
134
  // Exports
133
135
  module.exports = {
134
- "mapping": "Mapping_mapping__GQrAe",
135
- "description": "Mapping_description__osefE",
136
- "keys": "Mapping_keys__BBLHM",
137
- "group": "Mapping_group__4H8Aw",
138
- "plus": "Mapping_plus__aoyZw",
139
- "slash": "Mapping_slash__xSLL1"
136
+ "loading": "Loading_loading__RkVCa",
137
+ "dim": "Loading_dim__H3eXg",
138
+ "logo": "Loading_logo__1hwt4",
139
+ "tiles": "Loading_tiles__RNn33"
140
140
  };
141
141
 
142
142
 
143
143
  /***/ }),
144
144
 
145
- /***/ 94095:
145
+ /***/ 55941:
146
146
  /***/ ((module) => {
147
147
 
148
148
  // Exports
149
149
  module.exports = {
150
- "loading": "Loading_loading__RkVCa",
151
- "dim": "Loading_dim__H3eXg",
152
- "logo": "Loading_logo__1hwt4",
153
- "tiles": "Loading_tiles__RNn33"
150
+ "logoSplashScreen": "LogoSplashScreen_logoSplashScreen__pRvmG",
151
+ "animated": "LogoSplashScreen_animated__FLtGf",
152
+ "hide": "LogoSplashScreen_hide__O6VWM",
153
+ "logos": "LogoSplashScreen_logos__x48g1",
154
+ "pulse": "LogoSplashScreen_pulse__xzhLz",
155
+ "logoColor": "LogoSplashScreen_logoColor__yxa6j",
156
+ "progress": "LogoSplashScreen_progress__m0bkB",
157
+ "logoGrayscale": "LogoSplashScreen_logoGrayscale__zDa_H",
158
+ "author": "LogoSplashScreen_author__jDI5k",
159
+ "wave": "LogoSplashScreen_wave__Trjnf"
160
+ };
161
+
162
+
163
+ /***/ }),
164
+
165
+ /***/ 55242:
166
+ /***/ ((module) => {
167
+
168
+ // Exports
169
+ module.exports = {
170
+ "modal": "Modal_modal__w8Blv",
171
+ "closeButton": "Modal_closeButton__066hL",
172
+ "afterOpen": "Modal_afterOpen__e8nXQ",
173
+ "container": "Modal_container__KsTsk",
174
+ "beforeClose": "Modal_beforeClose__3RJlh",
175
+ "overlay": "Modal_overlay__lX1Uv",
176
+ "header": "Modal_header__9Nc2I",
177
+ "title": "Modal_title__p4NB1",
178
+ "content": "Modal_content__RDLjq"
179
+ };
180
+
181
+
182
+ /***/ }),
183
+
184
+ /***/ 5406:
185
+ /***/ ((module) => {
186
+
187
+ // Exports
188
+ module.exports = {
189
+ "section": "Section_section__7MmVe",
190
+ "heading": "Section_heading__9DyRI"
154
191
  };
155
192
 
156
193
 
@@ -201,56 +238,55 @@ module.exports = {
201
238
 
202
239
  /***/ }),
203
240
 
204
- /***/ 30277:
241
+ /***/ 27217:
205
242
  /***/ ((module) => {
206
243
 
207
244
  // Exports
208
245
  module.exports = {
209
- "rack": "Rack_rack__uEE8X",
210
- "tile": "Rack_tile__kMzR_"
246
+ "progress": "Progress_progress__DPtrq"
211
247
  };
212
248
 
213
249
 
214
250
  /***/ }),
215
251
 
216
- /***/ 59758:
252
+ /***/ 30277:
217
253
  /***/ ((module) => {
218
254
 
219
255
  // Exports
220
256
  module.exports = {
221
- "radio": "Radio_radio__06IBr",
222
- "icon": "Radio_icon__ORxR0",
223
- "checked": "Radio_checked__MlqJv",
224
- "input": "Radio_input__PFpGB",
225
- "content": "Radio_content__08chi"
257
+ "rack": "Rack_rack__uEE8X",
258
+ "tile": "Rack_tile__kMzR_"
226
259
  };
227
260
 
228
261
 
229
262
  /***/ }),
230
263
 
231
- /***/ 41415:
264
+ /***/ 59758:
232
265
  /***/ ((module) => {
233
266
 
234
267
  // Exports
235
268
  module.exports = {
236
- "character": "Character_character__FN97z",
237
- "finished": "Character_finished__DsFyj",
238
- "overused": "Character_overused__PEXhw",
239
- "tile": "Character_tile__lqZEb",
240
- "count": "Character_count__SSxGA"
269
+ "radio": "Radio_radio__06IBr",
270
+ "icon": "Radio_icon__ORxR0",
271
+ "checked": "Radio_checked__MlqJv",
272
+ "input": "Radio_input__PFpGB",
273
+ "content": "Radio_content__08chi"
241
274
  };
242
275
 
243
276
 
244
277
  /***/ }),
245
278
 
246
- /***/ 95070:
279
+ /***/ 48425:
247
280
  /***/ ((module) => {
248
281
 
249
282
  // Exports
250
283
  module.exports = {
251
- "title": "RemainingTiles_title__QQYTv",
252
- "content": "RemainingTiles_content__5cnQv",
253
- "badge": "RemainingTiles_badge__lyaBc"
284
+ "resultCandidatePicker": "ResultCandidatePicker_resultCandidatePicker__22U_a",
285
+ "content": "ResultCandidatePicker_content__XbkPX",
286
+ "points": "ResultCandidatePicker_points__y5lnd",
287
+ "word": "ResultCandidatePicker_word__df5mj",
288
+ "iconContainer": "ResultCandidatePicker_iconContainer__R4amp",
289
+ "icon": "ResultCandidatePicker_icon__8p7JP"
254
290
  };
255
291
 
256
292
 
@@ -269,12 +305,13 @@ module.exports = {
269
305
  "headerButton": "Results_headerButton__qNx0w",
270
306
  "headerButtonLabel": "Results_headerButtonLabel__XQiIP",
271
307
  "result": "Results_result__bpPGb",
308
+ "highlighted": "Results_highlighted__5x4Wt",
272
309
  "resultContent": "Results_resultContent__fynvQ",
273
310
  "word": "Results_word__j20u_",
274
311
  "cell": "Results_cell__13BH5",
275
312
  "stat": "Results_stat__EguZM",
276
313
  "points": "Results_points__7BAKE",
277
- "outdatedButton": "Results_outdatedButton__5fzwS",
314
+ "solveButton": "Results_solveButton__jYiEd",
278
315
  "sortIcon": "Results_sortIcon__y02RA",
279
316
  "input": "Results_input__B3K40"
280
317
  };
@@ -294,132 +331,92 @@ module.exports = {
294
331
 
295
332
  /***/ }),
296
333
 
297
- /***/ 65445:
298
- /***/ ((module) => {
299
-
300
- // Exports
301
- module.exports = {
302
- "screen": "Screen_screen__VnMC9",
303
- "closeButton": "Screen_closeButton__0QT6U",
304
- "content": "Screen_content__t2VCW"
305
- };
306
-
307
-
308
- /***/ }),
309
-
310
- /***/ 11130:
311
- /***/ ((module) => {
312
-
313
- // Exports
314
- module.exports = {
315
- "option": "AutoGroupTilesSetting_option__cNX7P",
316
- "label": "AutoGroupTilesSetting_label__njnKi"
317
- };
318
-
319
-
320
- /***/ }),
321
-
322
- /***/ 61909:
334
+ /***/ 23826:
323
335
  /***/ ((module) => {
324
336
 
325
337
  // Exports
326
338
  module.exports = {
327
- "option": "ConfigSetting_option__T_XJr",
328
- "label": "ConfigSetting_label__SKiut"
339
+ "sizer": "Sizer_sizer__6ihcO"
329
340
  };
330
341
 
331
342
 
332
343
  /***/ }),
333
344
 
334
- /***/ 81471:
345
+ /***/ 90375:
335
346
  /***/ ((module) => {
336
347
 
337
348
  // Exports
338
349
  module.exports = {
339
- "option": "LocaleSetting_option__86eJS",
340
- "flag": "LocaleSetting_flag__B1FNp",
341
- "checked": "LocaleSetting_checked__9aDcB",
342
- "label": "LocaleSetting_label__Nl2tL",
343
- "fa": "LocaleSetting_fa__O_Lzh",
344
- "es": "LocaleSetting_es__o6mp8",
345
- "fr": "LocaleSetting_fr__h7FxL",
346
- "gb": "LocaleSetting_gb__qt9o9",
347
- "pl": "LocaleSetting_pl__Xg3Ib",
348
- "us": "LocaleSetting_us__ov8al",
349
- "de": "LocaleSetting_de__73PFW"
350
+ "solver": "Solver_solver__o9miv",
351
+ "container": "Solver_container__ABpqJ",
352
+ "content": "Solver_content__s1fWW",
353
+ "boardContainer": "Solver_boardContainer__GBRcW",
354
+ "board": "Solver_board__d5oBN",
355
+ "column": "Solver_column__0EMSH",
356
+ "dictionary": "Solver_dictionary__09LYB",
357
+ "dictionaryOutput": "Solver_dictionaryOutput__KWOcA",
358
+ "dictionaryInput": "Solver_dictionaryInput__9BLNF",
359
+ "resultsContainer": "Solver_resultsContainer__DruEg",
360
+ "bottomContainer": "Solver_bottomContainer__VLhkh",
361
+ "bottomContent": "Solver_bottomContent__9rVjO",
362
+ "rackContainer": "Solver_rackContainer__2QSoB",
363
+ "rack": "Solver_rack__9DDCR",
364
+ "submitInput": "Solver_submitInput__eic0t",
365
+ "controls": "Solver_controls__2D9Ez",
366
+ "resultCandidatePicker": "Solver_resultCandidatePicker__0mgO7",
367
+ "apply": "Solver_apply__R1cn6",
368
+ "solve": "Solver_solve__MgHc7"
350
369
  };
351
370
 
352
371
 
353
372
  /***/ }),
354
373
 
355
- /***/ 63936:
374
+ /***/ 36456:
356
375
  /***/ ((module) => {
357
376
 
358
377
  // Exports
359
378
  module.exports = {
360
- "modal": "Sidebar_modal__pavmk",
361
- "closeButton": "Sidebar_closeButton__TjUpw",
362
- "afterOpen": "Sidebar_afterOpen__Y7kOz",
363
- "sidebar": "Sidebar_sidebar__pTTPu",
364
- "beforeClose": "Sidebar_beforeClose__vzZNQ",
365
- "overlay": "Sidebar_overlay__fZ2ki",
366
- "header": "Sidebar_header__6FiSo",
367
- "title": "Sidebar_title__pzTL8",
368
- "content": "Sidebar_content__lLjwZ"
379
+ "icon": "ApplyButton_icon__9TqIL"
369
380
  };
370
381
 
371
382
 
372
383
  /***/ }),
373
384
 
374
- /***/ 19812:
385
+ /***/ 74048:
375
386
  /***/ ((module) => {
376
387
 
377
388
  // Exports
378
389
  module.exports = {
379
- "section": "Section_section__Rd7qk",
380
- "heading": "Section_heading___PU_r"
390
+ "emptyState": "EmptyState_emptyState__XRkVh",
391
+ "iconContainer": "EmptyState_iconContainer__muJPY",
392
+ "error": "EmptyState_error__LALvw",
393
+ "warning": "EmptyState_warning__3cgae",
394
+ "info": "EmptyState_info__M93ve",
395
+ "icon": "EmptyState_icon__4Okzd",
396
+ "content": "EmptyState_content__VwtZg"
381
397
  };
382
398
 
383
399
 
384
400
  /***/ }),
385
401
 
386
- /***/ 90375:
402
+ /***/ 61077:
387
403
  /***/ ((module) => {
388
404
 
389
405
  // Exports
390
406
  module.exports = {
391
- "solver": "Solver_solver__o9miv",
392
- "contentWrapper": "Solver_contentWrapper__qtqKN",
393
- "content": "Solver_content__s1fWW",
394
- "boardContainer": "Solver_boardContainer__GBRcW",
395
- "sidebar": "Solver_sidebar__mhxCh",
396
- "dictionary": "Solver_dictionary__09LYB",
397
- "dictionaryOutput": "Solver_dictionaryOutput__KWOcA",
398
- "dictionaryInput": "Solver_dictionaryInput__9BLNF",
399
- "resultsContainer": "Solver_resultsContainer__DruEg",
400
- "rackContainer": "Solver_rackContainer__2QSoB",
401
- "rack": "Solver_rack__9DDCR",
402
- "submitInput": "Solver_submitInput__eic0t"
407
+ "solveButton": "SolveButton_solveButton__mEBOg"
403
408
  };
404
409
 
405
410
 
406
411
  /***/ }),
407
412
 
408
- /***/ 41798:
413
+ /***/ 3713:
409
414
  /***/ ((module) => {
410
415
 
411
416
  // Exports
412
417
  module.exports = {
413
- "splash": "Splash_splash__DJBx_",
414
- "animated": "Splash_animated__p0GNp",
415
- "hide": "Splash_hide__4sfov",
416
- "logos": "Splash_logos__pFer4",
417
- "pulse": "Splash_pulse__bc8xX",
418
- "logoColor": "Splash_logoColor__InOR_",
419
- "progress": "Splash_progress__82M_I",
420
- "logoGrayscale": "Splash_logoGrayscale__qe_QT",
421
- "author": "Splash_author__0gDgp",
422
- "wave": "Splash_wave___xjSZ"
418
+ "splashScreen": "SplashScreen_splashScreen__1t_F7",
419
+ "content": "SplashScreen_content__YuPB1"
423
420
  };
424
421
 
425
422
 
@@ -455,7 +452,6 @@ module.exports = {
455
452
  // Exports
456
453
  module.exports = {
457
454
  "tile": "Tile_tile__14nuL",
458
- "raised": "Tile_raised__WKori",
459
455
  "points1": "Tile_points1__yl4Jl",
460
456
  "points2": "Tile_points2__Xsbcp",
461
457
  "points3": "Tile_points3__lJKOJ",
@@ -466,6 +462,10 @@ module.exports = {
466
462
  "highlighted": "Tile_highlighted__eg00X",
467
463
  "points": "Tile_points__z39vV",
468
464
  "invalid": "Tile_invalid__3bxxF",
465
+ "disabled": "Tile_disabled__aPQkZ",
466
+ "input": "Tile_input__Rol_n",
467
+ "empty": "Tile_empty__DGtO_",
468
+ "raised": "Tile_raised__WKori",
469
469
  "alert": "Tile_alert__0o8j3"
470
470
  };
471
471
 
@@ -500,22 +500,6 @@ module.exports = {
500
500
  };
501
501
 
502
502
 
503
- /***/ }),
504
-
505
- /***/ 23758:
506
- /***/ ((module) => {
507
-
508
- // Exports
509
- module.exports = {
510
- "title": "Words_title__npWWH",
511
- "badge": "Words_badge__h_UnJ",
512
- "word": "Words_word___UPK8",
513
- "invalid": "Words_invalid__MJPnf",
514
- "valid": "Words_valid__MKPTu",
515
- "icon": "Words_icon__Ho1Gk"
516
- };
517
-
518
-
519
503
  /***/ }),
520
504
 
521
505
  /***/ 47743:
@@ -817,7 +801,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
817
801
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
818
802
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
819
803
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
820
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12374);
804
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55210);
821
805
  /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(57243);
822
806
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(15349);
823
807
  /* harmony import */ var _Cell_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(95770);
@@ -1452,6 +1436,62 @@ const getPositionInGrid = (grid, constraint)=>{
1452
1436
  /***/ 81870:
1453
1437
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1454
1438
 
1439
+ "use strict";
1440
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1441
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1442
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
1443
+ /* harmony export */ });
1444
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
1445
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
1446
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
1447
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
1448
+ /* harmony import */ var _Tooltip__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7646);
1449
+ /* harmony import */ var _Button_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(60394);
1450
+ /* harmony import */ var _Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Button_module_scss__WEBPACK_IMPORTED_MODULE_4__);
1451
+ /* harmony import */ var _Link__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16863);
1452
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Tooltip__WEBPACK_IMPORTED_MODULE_2__, _Link__WEBPACK_IMPORTED_MODULE_3__]);
1453
+ ([_Tooltip__WEBPACK_IMPORTED_MODULE_2__, _Link__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1454
+
1455
+
1456
+
1457
+
1458
+
1459
+ const Button = ({ children , className , Icon , iconClassName , tooltip , variant ="default" , ...props })=>{
1460
+ const triggerProps = (0,_Tooltip__WEBPACK_IMPORTED_MODULE_2__/* .useTooltip */ .l)(tooltip, props);
1461
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("button", {
1462
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default().button), className, {
1463
+ [(_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default()["default"])]: variant === "default",
1464
+ [(_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default().primary)]: variant === "primary"
1465
+ }),
1466
+ type: "button",
1467
+ ...props,
1468
+ ...triggerProps,
1469
+ children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
1470
+ className: (_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default().content),
1471
+ children: [
1472
+ Icon && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Icon, {
1473
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default().icon), iconClassName)
1474
+ }),
1475
+ children && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
1476
+ className: (_Button_module_scss__WEBPACK_IMPORTED_MODULE_4___default().label),
1477
+ children: children
1478
+ })
1479
+ ]
1480
+ })
1481
+ });
1482
+ };
1483
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Object.assign(Button, {
1484
+ Link: _Link__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z
1485
+ }));
1486
+
1487
+ __webpack_async_result__();
1488
+ } catch(e) { __webpack_async_result__(e); } });
1489
+
1490
+ /***/ }),
1491
+
1492
+ /***/ 16863:
1493
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
1494
+
1455
1495
  "use strict";
1456
1496
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1457
1497
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
@@ -1470,28 +1510,30 @@ _Tooltip__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (
1470
1510
 
1471
1511
 
1472
1512
 
1473
- const Button = ({ children , className , Icon , tooltip , ...props })=>{
1513
+ const Link = ({ children , className , Icon , iconClassName , tooltip , variant ="default" , ...props })=>{
1474
1514
  const triggerProps = (0,_Tooltip__WEBPACK_IMPORTED_MODULE_2__/* .useTooltip */ .l)(tooltip, props);
1475
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("button", {
1476
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().button), className),
1477
- type: "button",
1515
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("a", {
1516
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().button), className, {
1517
+ [(_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default()["default"])]: variant === "default",
1518
+ [(_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().primary)]: variant === "primary"
1519
+ }),
1478
1520
  ...props,
1479
1521
  ...triggerProps,
1480
1522
  children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
1481
1523
  className: (_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().content),
1482
1524
  children: [
1483
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
1525
+ Icon && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Icon, {
1526
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().icon), iconClassName)
1527
+ }),
1528
+ children && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
1484
1529
  className: (_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().label),
1485
1530
  children: children
1486
- }),
1487
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Icon, {
1488
- className: (_Button_module_scss__WEBPACK_IMPORTED_MODULE_3___default().icon)
1489
1531
  })
1490
1532
  ]
1491
1533
  })
1492
1534
  });
1493
1535
  };
1494
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Button);
1536
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Link);
1495
1537
 
1496
1538
  __webpack_async_result__();
1497
1539
  } catch(e) { __webpack_async_result__(e); } });
@@ -1527,8 +1569,8 @@ __webpack_async_result__();
1527
1569
  var jsx_runtime_ = __webpack_require__(20997);
1528
1570
  // EXTERNAL MODULE: external "classnames"
1529
1571
  var external_classnames_ = __webpack_require__(59003);
1530
- // EXTERNAL MODULE: ./src/icons/index.ts + 29 modules
1531
- var icons = __webpack_require__(12374);
1572
+ // EXTERNAL MODULE: ./src/icons/index.ts + 35 modules
1573
+ var icons = __webpack_require__(55210);
1532
1574
  ;// CONCATENATED MODULE: ./src/components/Checkbox/Checkbox.tsx
1533
1575
 
1534
1576
 
@@ -1605,8 +1647,7 @@ const Dictionary = ({ className })=>{
1605
1647
  }),
1606
1648
  children: [
1607
1649
  typeof error !== "undefined" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1608
- className: (_Dictionary_module_scss__WEBPACK_IMPORTED_MODULE_5___default().emptyState),
1609
- type: "error",
1650
+ variant: "error",
1610
1651
  children: error.message
1611
1652
  }),
1612
1653
  results.map(({ definitions , exists , isAllowed , word })=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
@@ -1616,7 +1657,7 @@ const Dictionary = ({ className })=>{
1616
1657
  }),
1617
1658
  children: [
1618
1659
  typeof word === "undefined" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1619
- type: "info",
1660
+ variant: "info",
1620
1661
  children: translate("dictionary.empty-state.uninitialized")
1621
1662
  }),
1622
1663
  typeof word !== "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
@@ -1801,11 +1842,11 @@ const COLORS_PER_TYPE = {
1801
1842
  success: parameters__WEBPACK_IMPORTED_MODULE_4__/* .COLOR_GREEN */ .F1,
1802
1843
  warning: parameters__WEBPACK_IMPORTED_MODULE_4__/* .COLOR_YELLOW */ .yr
1803
1844
  };
1804
- const EmptyState = ({ className , children , type })=>{
1845
+ const EmptyState = ({ children , className , variant })=>{
1805
1846
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
1806
1847
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectLocale */ .fN);
1807
1848
  const { direction } = i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale];
1808
- const title = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>translate(TITLE_KEY_PER_TYPE[type]), [
1849
+ const title = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>translate(TITLE_KEY_PER_TYPE[variant]), [
1809
1850
  translate
1810
1851
  ]);
1811
1852
  const message = direction === "ltr" ? title : title.split("").reverse().join("");
@@ -1821,7 +1862,7 @@ const EmptyState = ({ className , children , type })=>{
1821
1862
  children: [
1822
1863
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_PlainTiles__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
1823
1864
  className: (_EmptyState_module_scss__WEBPACK_IMPORTED_MODULE_7___default().tiles),
1824
- color: COLORS_PER_TYPE[type],
1865
+ color: COLORS_PER_TYPE[variant],
1825
1866
  content: content
1826
1867
  }),
1827
1868
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
@@ -1890,7 +1931,7 @@ const Key = ({ children , className })=>/*#__PURE__*/ jsx_runtime_.jsx("kbd", {
1890
1931
 
1891
1932
  /***/ }),
1892
1933
 
1893
- /***/ 81434:
1934
+ /***/ 90425:
1894
1935
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
1895
1936
 
1896
1937
  "use strict";
@@ -1900,363 +1941,98 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1900
1941
  /* harmony export */ });
1901
1942
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
1902
1943
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
1903
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64579);
1904
- /* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(41992);
1905
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(81858);
1906
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(63873);
1907
- /* harmony import */ var _keys__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(89167);
1908
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_1__, _Sidebar__WEBPACK_IMPORTED_MODULE_3__]);
1909
- ([state__WEBPACK_IMPORTED_MODULE_1__, _Sidebar__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1944
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
1945
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
1946
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
1947
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
1948
+ /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77586);
1949
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64579);
1950
+ /* harmony import */ var _PlainTiles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31773);
1951
+ /* harmony import */ var _Loading_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(94095);
1952
+ /* harmony import */ var _Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6__);
1953
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_4__, _PlainTiles__WEBPACK_IMPORTED_MODULE_5__]);
1954
+ ([state__WEBPACK_IMPORTED_MODULE_4__, _PlainTiles__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1910
1955
 
1911
1956
 
1912
1957
 
1913
1958
 
1914
1959
 
1915
1960
 
1916
- const KeyMap = ({ className , isOpen , onClose })=>{
1917
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTranslate */ .qM)();
1918
- const config = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectConfig */ .$o);
1919
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Sidebar__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
1920
- className: className,
1921
- isOpen: isOpen,
1922
- title: translate("keyMap"),
1923
- onClose: onClose,
1961
+
1962
+ const prepareContent = (message)=>{
1963
+ const uppercased = message.toLocaleUpperCase();
1964
+ const parts = uppercased.split(" ");
1965
+ return [
1966
+ parts
1967
+ ];
1968
+ };
1969
+ const Loading = ({ className , wave =true })=>{
1970
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTranslate */ .qM)();
1971
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectLocale */ .fN);
1972
+ const { direction } = i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale];
1973
+ const translation = translate("common.loading");
1974
+ const message = direction === "ltr" ? translation : translation.split("").reverse().join("");
1975
+ const content = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>prepareContent(message), [
1976
+ message
1977
+ ]);
1978
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
1979
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().loading), className),
1924
1980
  children: [
1925
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Sidebar__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Section */ .Z.Section, {
1926
- title: translate("keyMap.board-and-rack"),
1927
- children: [
1928
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1929
- description: translate("keyMap.board-and-rack.navigate"),
1930
- mapping: [
1931
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .ARROWS */ .JY
1932
- ]
1933
- }),
1934
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1935
- description: translate("keyMap.board-and-rack.remove-tile"),
1936
- mapping: [
1937
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .DEL */ .fU,
1938
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .BACKSPACE */ .ZH
1939
- ]
1940
- }),
1941
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1942
- description: translate("keyMap.board-and-rack.submit"),
1943
- mapping: [
1944
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .ENTER */ .K5
1945
- ]
1946
- }),
1947
- config.twoCharacterTiles.length > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1948
- description: translate("keyMap.board-and-rack.insert-two-letter-tile"),
1949
- mapping: [
1950
- [
1951
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .CTRL */ .HF,
1952
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
1953
- children: config.twoCharacterTiles.map(([firstLetter])=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
1954
- children: firstLetter.toUpperCase()
1955
- }, firstLetter))
1956
- })
1957
- ]
1958
- ]
1959
- })
1960
- ]
1961
- }),
1962
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Sidebar__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Section */ .Z.Section, {
1963
- title: translate("keyMap.board"),
1964
- children: [
1965
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1966
- description: translate("keyMap.board.toggle-blank"),
1967
- mapping: [
1968
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .SPACE */ .L_,
1969
- [
1970
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .CTRL */ .HF,
1971
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
1972
- children: "B"
1973
- }, "b")
1974
- ]
1975
- ]
1976
- }),
1977
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1978
- description: translate("keyMap.board.toggle-direction"),
1979
- mapping: [
1980
- [
1981
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .CTRL */ .HF,
1982
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .ARROWS */ .JY
1983
- ]
1984
- ]
1985
- })
1986
- ]
1981
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
1982
+ className: (_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().dim)
1987
1983
  }),
1988
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_3__/* ["default"].Section */ .Z.Section, {
1989
- title: translate("keyMap.rack"),
1990
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_4__/* .Mapping */ .v, {
1991
- description: translate("keyMap.rack.insert-blank"),
1992
- mapping: [
1993
- _keys__WEBPACK_IMPORTED_MODULE_5__/* .SPACE */ .L_
1994
- ]
1984
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
1985
+ className: (_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().logo),
1986
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_PlainTiles__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1987
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().tiles)),
1988
+ content: content,
1989
+ dropShadow: true,
1990
+ wave: wave
1995
1991
  })
1996
1992
  })
1997
1993
  ]
1998
1994
  });
1999
1995
  };
2000
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (KeyMap);
1996
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Loading);
1997
+
1998
+ __webpack_async_result__();
1999
+ } catch(e) { __webpack_async_result__(e); } });
2000
+
2001
+ /***/ }),
2002
+
2003
+ /***/ 84198:
2004
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2005
+
2006
+ "use strict";
2007
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2008
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2009
+ /* harmony export */ "Z": () => (/* reexport safe */ _Loading__WEBPACK_IMPORTED_MODULE_0__.Z)
2010
+ /* harmony export */ });
2011
+ /* harmony import */ var _Loading__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(90425);
2012
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Loading__WEBPACK_IMPORTED_MODULE_0__]);
2013
+ _Loading__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2014
+
2001
2015
 
2002
2016
  __webpack_async_result__();
2003
2017
  } catch(e) { __webpack_async_result__(e); } });
2004
2018
 
2005
2019
  /***/ }),
2006
2020
 
2007
- /***/ 63873:
2021
+ /***/ 2622:
2008
2022
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2009
2023
 
2010
2024
  "use strict";
2011
2025
 
2012
2026
  // EXPORTS
2013
2027
  __webpack_require__.d(__webpack_exports__, {
2014
- "v": () => (/* reexport */ Mapping_Mapping)
2028
+ "Z": () => (/* reexport */ Logo)
2015
2029
  });
2016
2030
 
2017
- // EXTERNAL MODULE: external "react/jsx-runtime"
2018
- var jsx_runtime_ = __webpack_require__(20997);
2019
- // EXTERNAL MODULE: external "classnames"
2020
- var external_classnames_ = __webpack_require__(59003);
2021
- var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
2022
2031
  // EXTERNAL MODULE: external "react"
2023
2032
  var external_react_ = __webpack_require__(16689);
2024
- // EXTERNAL MODULE: ./src/components/KeyMap/components/Mapping/Mapping.module.scss
2025
- var Mapping_module = __webpack_require__(55487);
2026
- var Mapping_module_default = /*#__PURE__*/__webpack_require__.n(Mapping_module);
2027
- ;// CONCATENATED MODULE: ./src/components/KeyMap/components/Mapping/Mapping.tsx
2028
-
2029
-
2030
-
2031
-
2032
- const Mapping = ({ className , description , mapping })=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
2033
- className: external_classnames_default()((Mapping_module_default()).mapping, className),
2034
- children: [
2035
- /*#__PURE__*/ jsx_runtime_.jsx("h3", {
2036
- className: (Mapping_module_default()).description,
2037
- children: description
2038
- }),
2039
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
2040
- className: (Mapping_module_default()).keys,
2041
- children: mapping.map((key, index)=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)(external_react_.Fragment, {
2042
- children: [
2043
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
2044
- className: (Mapping_module_default()).group,
2045
- children: Array.isArray(key) ? /*#__PURE__*/ (0,jsx_runtime_.jsxs)(jsx_runtime_.Fragment, {
2046
- children: [
2047
- key[0],
2048
- /*#__PURE__*/ jsx_runtime_.jsx("span", {
2049
- className: (Mapping_module_default()).plus,
2050
- children: "+"
2051
- }),
2052
- key[1]
2053
- ]
2054
- }) : key
2055
- }),
2056
- mapping.length > 1 && index < mapping.length - 1 && /*#__PURE__*/ jsx_runtime_.jsx("span", {
2057
- className: (Mapping_module_default()).slash,
2058
- children: "/"
2059
- })
2060
- ]
2061
- }, index))
2062
- })
2063
- ]
2064
- });
2065
- /* harmony default export */ const Mapping_Mapping = (Mapping);
2066
-
2067
- ;// CONCATENATED MODULE: ./src/components/KeyMap/components/Mapping/index.ts
2068
-
2069
-
2070
- ;// CONCATENATED MODULE: ./src/components/KeyMap/components/index.ts
2071
-
2072
-
2073
-
2074
- /***/ }),
2075
-
2076
- /***/ 72467:
2077
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
2078
-
2079
- "use strict";
2080
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2081
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2082
- /* harmony export */ "Z": () => (/* reexport safe */ _KeyMap__WEBPACK_IMPORTED_MODULE_0__.Z)
2083
- /* harmony export */ });
2084
- /* harmony import */ var _KeyMap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(81434);
2085
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_KeyMap__WEBPACK_IMPORTED_MODULE_0__]);
2086
- _KeyMap__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2087
-
2088
-
2089
- __webpack_async_result__();
2090
- } catch(e) { __webpack_async_result__(e); } });
2091
-
2092
- /***/ }),
2093
-
2094
- /***/ 89167:
2095
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2096
-
2097
- "use strict";
2098
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2099
- /* harmony export */ "HF": () => (/* binding */ CTRL),
2100
- /* harmony export */ "JY": () => (/* binding */ ARROWS),
2101
- /* harmony export */ "K5": () => (/* binding */ ENTER),
2102
- /* harmony export */ "L_": () => (/* binding */ SPACE),
2103
- /* harmony export */ "ZH": () => (/* binding */ BACKSPACE),
2104
- /* harmony export */ "fU": () => (/* binding */ DEL)
2105
- /* harmony export */ });
2106
- /* unused harmony exports ARROW_DOWN, ARROW_LEFT, ARROW_RIGHT, ARROW_UP */
2107
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2108
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2109
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(16689);
2110
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
2111
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12374);
2112
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(95784);
2113
- /* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(41992);
2114
-
2115
-
2116
-
2117
-
2118
-
2119
- const ARROW_DOWN = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2120
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .ArrowLeft */ .Xd, {})
2121
- });
2122
- const ARROW_LEFT = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2123
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .ArrowUp */ .a2, {})
2124
- });
2125
- const ARROW_RIGHT = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2126
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .ArrowRight */ .ol, {})
2127
- });
2128
- const ARROW_UP = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2129
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .ArrowDown */ .K5, {})
2130
- });
2131
- const BACKSPACE = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2132
- children: "← Backspace"
2133
- });
2134
- const CTRL = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2135
- children: (0,lib__WEBPACK_IMPORTED_MODULE_3__/* .isMac */ .V5)() ? "⌘" : "Ctrl"
2136
- });
2137
- const DEL = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2138
- children: "Del"
2139
- });
2140
- const ENTER = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2141
- children: "Enter ⏎"
2142
- });
2143
- const ARROWS = /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
2144
- children: [
2145
- ARROW_DOWN,
2146
- ARROW_LEFT,
2147
- ARROW_RIGHT,
2148
- ARROW_UP
2149
- ]
2150
- });
2151
- const SPACE = /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Key__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2152
- children: "␣"
2153
- });
2154
-
2155
-
2156
- /***/ }),
2157
-
2158
- /***/ 90425:
2159
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
2160
-
2161
- "use strict";
2162
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2163
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2164
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2165
- /* harmony export */ });
2166
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2167
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2168
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2169
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2170
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
2171
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
2172
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77586);
2173
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64579);
2174
- /* harmony import */ var _PlainTiles__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(31773);
2175
- /* harmony import */ var _Loading_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(94095);
2176
- /* harmony import */ var _Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6__);
2177
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_4__, _PlainTiles__WEBPACK_IMPORTED_MODULE_5__]);
2178
- ([state__WEBPACK_IMPORTED_MODULE_4__, _PlainTiles__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2179
-
2180
-
2181
-
2182
-
2183
-
2184
-
2185
-
2186
- const prepareContent = (message)=>{
2187
- const uppercased = message.toLocaleUpperCase();
2188
- const parts = uppercased.split(" ");
2189
- return [
2190
- parts
2191
- ];
2192
- };
2193
- const Loading = ({ className , wave =true })=>{
2194
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTranslate */ .qM)();
2195
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectLocale */ .fN);
2196
- const { direction } = i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale];
2197
- const translation = translate("common.loading");
2198
- const message = direction === "ltr" ? translation : translation.split("").reverse().join("");
2199
- const content = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>prepareContent(message), [
2200
- message
2201
- ]);
2202
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2203
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().loading), className),
2204
- children: [
2205
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2206
- className: (_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().dim)
2207
- }),
2208
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2209
- className: (_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().logo),
2210
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_PlainTiles__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
2211
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Loading_module_scss__WEBPACK_IMPORTED_MODULE_6___default().tiles)),
2212
- content: content,
2213
- dropShadow: true,
2214
- wave: wave
2215
- })
2216
- })
2217
- ]
2218
- });
2219
- };
2220
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Loading);
2221
-
2222
- __webpack_async_result__();
2223
- } catch(e) { __webpack_async_result__(e); } });
2224
-
2225
- /***/ }),
2226
-
2227
- /***/ 84198:
2228
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
2229
-
2230
- "use strict";
2231
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2232
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2233
- /* harmony export */ "Z": () => (/* reexport safe */ _Loading__WEBPACK_IMPORTED_MODULE_0__.Z)
2234
- /* harmony export */ });
2235
- /* harmony import */ var _Loading__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(90425);
2236
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Loading__WEBPACK_IMPORTED_MODULE_0__]);
2237
- _Loading__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2238
-
2239
-
2240
- __webpack_async_result__();
2241
- } catch(e) { __webpack_async_result__(e); } });
2242
-
2243
- /***/ }),
2244
-
2245
- /***/ 2622:
2246
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2247
-
2248
- "use strict";
2249
-
2250
- // EXPORTS
2251
- __webpack_require__.d(__webpack_exports__, {
2252
- "Z": () => (/* reexport */ Logo)
2253
- });
2254
-
2255
- // EXTERNAL MODULE: external "react"
2256
- var external_react_ = __webpack_require__(16689);
2257
- ;// CONCATENATED MODULE: ./src/components/Logo/Logo.svg
2258
- var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16, _path17, _path18, _path19, _path20, _path21, _path22, _path23, _path24, _path25, _path26, _path27, _path28, _path29, _path30;
2259
- function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2033
+ ;// CONCATENATED MODULE: ./src/components/Logo/Logo.svg
2034
+ var _path, _path2, _path3, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11, _path12, _path13, _path14, _path15, _path16, _path17, _path18, _path19, _path20, _path21, _path22, _path23, _path24, _path25, _path26, _path27, _path28, _path29, _path30;
2035
+ function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
2260
2036
 
2261
2037
  var SvgLogo = function SvgLogo(props) {
2262
2038
  return /*#__PURE__*/external_react_.createElement("svg", _extends({
@@ -2361,7 +2137,66 @@ var SvgLogo = function SvgLogo(props) {
2361
2137
 
2362
2138
  /***/ }),
2363
2139
 
2364
- /***/ 11636:
2140
+ /***/ 78395:
2141
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2142
+
2143
+ "use strict";
2144
+
2145
+ // EXPORTS
2146
+ __webpack_require__.d(__webpack_exports__, {
2147
+ "Z": () => (/* reexport */ LogoSplashScreen_LogoSplashScreen)
2148
+ });
2149
+
2150
+ // EXTERNAL MODULE: external "react/jsx-runtime"
2151
+ var jsx_runtime_ = __webpack_require__(20997);
2152
+ // EXTERNAL MODULE: external "classnames"
2153
+ var external_classnames_ = __webpack_require__(59003);
2154
+ var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
2155
+ // EXTERNAL MODULE: ./src/components/Logo/index.ts + 1 modules
2156
+ var Logo = __webpack_require__(2622);
2157
+ // EXTERNAL MODULE: ./src/components/SplashScreen/index.ts + 1 modules
2158
+ var SplashScreen = __webpack_require__(14676);
2159
+ // EXTERNAL MODULE: ./src/components/LogoSplashScreen/LogoSplashScreen.module.scss
2160
+ var LogoSplashScreen_module = __webpack_require__(55941);
2161
+ var LogoSplashScreen_module_default = /*#__PURE__*/__webpack_require__.n(LogoSplashScreen_module);
2162
+ ;// CONCATENATED MODULE: ./src/components/LogoSplashScreen/LogoSplashScreen.tsx
2163
+
2164
+
2165
+
2166
+
2167
+
2168
+ const LogoSplashScreen = ({ className , forceShow , onAnimationEnd })=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)(SplashScreen/* default */.Z, {
2169
+ className: external_classnames_default()((LogoSplashScreen_module_default()).logoSplashScreen, className, {
2170
+ [(LogoSplashScreen_module_default()).animated]: !forceShow
2171
+ }),
2172
+ onAnimationEnd: onAnimationEnd,
2173
+ children: [
2174
+ /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
2175
+ className: (LogoSplashScreen_module_default()).logos,
2176
+ children: [
2177
+ /*#__PURE__*/ jsx_runtime_.jsx(Logo/* default */.Z, {
2178
+ className: (LogoSplashScreen_module_default()).logoGrayscale
2179
+ }),
2180
+ /*#__PURE__*/ jsx_runtime_.jsx(Logo/* default */.Z, {
2181
+ className: (LogoSplashScreen_module_default()).logoColor
2182
+ })
2183
+ ]
2184
+ }),
2185
+ /*#__PURE__*/ jsx_runtime_.jsx("h1", {
2186
+ className: (LogoSplashScreen_module_default()).author,
2187
+ children: "by Kamil Mielnik"
2188
+ })
2189
+ ]
2190
+ });
2191
+ /* harmony default export */ const LogoSplashScreen_LogoSplashScreen = (LogoSplashScreen);
2192
+
2193
+ ;// CONCATENATED MODULE: ./src/components/LogoSplashScreen/index.ts
2194
+
2195
+
2196
+
2197
+ /***/ }),
2198
+
2199
+ /***/ 85061:
2365
2200
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
2366
2201
 
2367
2202
  "use strict";
@@ -2373,15 +2208,21 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2373
2208
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2374
2209
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2375
2210
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2376
- /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(46230);
2377
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12374);
2378
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(74200);
2379
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
2380
- /* harmony import */ var _SquareButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(86889);
2381
- /* harmony import */ var _NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(25223);
2382
- /* harmony import */ var _NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7__);
2383
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_2__, state__WEBPACK_IMPORTED_MODULE_5__, _SquareButton__WEBPACK_IMPORTED_MODULE_6__]);
2384
- ([hooks__WEBPACK_IMPORTED_MODULE_2__, state__WEBPACK_IMPORTED_MODULE_5__, _SquareButton__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2211
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
2212
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
2213
+ /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19931);
2214
+ /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_modal__WEBPACK_IMPORTED_MODULE_3__);
2215
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(69755);
2216
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_4__);
2217
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55210);
2218
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(74200);
2219
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64579);
2220
+ /* harmony import */ var _SquareButton__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(86889);
2221
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(40265);
2222
+ /* harmony import */ var _Modal_module_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(55242);
2223
+ /* harmony import */ var _Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10__);
2224
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_7__, _SquareButton__WEBPACK_IMPORTED_MODULE_8__]);
2225
+ ([state__WEBPACK_IMPORTED_MODULE_7__, _SquareButton__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2385
2226
 
2386
2227
 
2387
2228
 
@@ -2390,46 +2231,233 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hook
2390
2231
 
2391
2232
 
2392
2233
 
2393
- const NavButtons = ({ onClear , onShowKeyMap , onShowRemainingTiles , onShowSettings , onShowWords })=>{
2394
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
2395
- const hasOverusedTiles = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectHasOverusedTiles */ .En);
2396
- const hasInvalidWords = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectHasInvalidWords */ .bs);
2397
- const isTouchDevice = (0,hooks__WEBPACK_IMPORTED_MODULE_2__/* .useIsTouchDevice */ .YQ)();
2398
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2399
- className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().navButtons),
2400
- children: [
2401
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2402
- className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2403
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2404
- className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button),
2405
- Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Eraser */ .Gs,
2406
- tooltip: translate("common.clear"),
2407
- onClick: onClear
2408
- })
2409
- }),
2410
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2411
- className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().separator)
2412
- }),
2413
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2414
- className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2415
- children: [
2416
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2417
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button), {
2418
- [(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().error)]: hasOverusedTiles
2419
- }),
2420
- Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Sack */ .xy,
2421
- tooltip: translate("remaining-tiles"),
2422
- onClick: onShowRemainingTiles
2423
- }),
2424
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2425
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button), {
2426
- [(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().error)]: hasInvalidWords
2427
- }),
2428
- Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .BookHalf */ .PP,
2429
- tooltip: translate("words"),
2430
- onClick: onShowWords
2431
- })
2432
- ]
2234
+
2235
+
2236
+
2237
+ const Modal = ({ children , className , isOpen , title , onClose })=>{
2238
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTranslate */ .qM)();
2239
+ const [shouldReturnFocusAfterClose, setShouldReturnFocusAfterClose] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(true);
2240
+ (0,react_use__WEBPACK_IMPORTED_MODULE_4__.useKey)("Escape", ()=>{
2241
+ setShouldReturnFocusAfterClose(false);
2242
+ onClose();
2243
+ }, undefined, [
2244
+ onClose
2245
+ ]);
2246
+ (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
2247
+ if (isOpen) {
2248
+ setShouldReturnFocusAfterClose(true);
2249
+ }
2250
+ }, [
2251
+ isOpen
2252
+ ]);
2253
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx((react_modal__WEBPACK_IMPORTED_MODULE_3___default()), {
2254
+ className: {
2255
+ afterOpen: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().afterOpen),
2256
+ base: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().modal),
2257
+ beforeClose: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().beforeClose)
2258
+ },
2259
+ closeTimeoutMS: parameters__WEBPACK_IMPORTED_MODULE_6__/* .TRANSITION_DURATION_LONG */ .MA,
2260
+ contentLabel: title,
2261
+ isOpen: isOpen,
2262
+ overlayClassName: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().overlay),
2263
+ shouldReturnFocusAfterClose: shouldReturnFocusAfterClose,
2264
+ onRequestClose: onClose,
2265
+ children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2266
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().container), className),
2267
+ children: [
2268
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2269
+ className: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().header),
2270
+ children: [
2271
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h1", {
2272
+ className: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().title),
2273
+ children: title
2274
+ }),
2275
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
2276
+ className: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().closeButton),
2277
+ Icon: icons__WEBPACK_IMPORTED_MODULE_5__/* .CrossSquareFill */ .vK,
2278
+ tooltip: translate("common.close"),
2279
+ onClick: onClose
2280
+ })
2281
+ ]
2282
+ }),
2283
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2284
+ className: (_Modal_module_scss__WEBPACK_IMPORTED_MODULE_10___default().content),
2285
+ children: children
2286
+ })
2287
+ ]
2288
+ })
2289
+ });
2290
+ };
2291
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Object.assign(Modal, {
2292
+ Section: _components__WEBPACK_IMPORTED_MODULE_9__/* .Section */ .$
2293
+ }));
2294
+
2295
+ __webpack_async_result__();
2296
+ } catch(e) { __webpack_async_result__(e); } });
2297
+
2298
+ /***/ }),
2299
+
2300
+ /***/ 40265:
2301
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
2302
+
2303
+ "use strict";
2304
+
2305
+ // EXPORTS
2306
+ __webpack_require__.d(__webpack_exports__, {
2307
+ "$": () => (/* reexport */ Section_Section)
2308
+ });
2309
+
2310
+ // EXTERNAL MODULE: external "react/jsx-runtime"
2311
+ var jsx_runtime_ = __webpack_require__(20997);
2312
+ // EXTERNAL MODULE: external "classnames"
2313
+ var external_classnames_ = __webpack_require__(59003);
2314
+ var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
2315
+ // EXTERNAL MODULE: ./src/components/Modal/components/Section/Section.module.scss
2316
+ var Section_module = __webpack_require__(5406);
2317
+ var Section_module_default = /*#__PURE__*/__webpack_require__.n(Section_module);
2318
+ ;// CONCATENATED MODULE: ./src/components/Modal/components/Section/Section.tsx
2319
+
2320
+
2321
+
2322
+ const Section = ({ children , className , title })=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)("section", {
2323
+ className: external_classnames_default()((Section_module_default()).section, className),
2324
+ children: [
2325
+ /*#__PURE__*/ jsx_runtime_.jsx("h2", {
2326
+ className: (Section_module_default()).heading,
2327
+ children: title
2328
+ }),
2329
+ /*#__PURE__*/ jsx_runtime_.jsx("div", {
2330
+ children: children
2331
+ })
2332
+ ]
2333
+ });
2334
+ /* harmony default export */ const Section_Section = (Section);
2335
+
2336
+ ;// CONCATENATED MODULE: ./src/components/Modal/components/Section/index.ts
2337
+
2338
+
2339
+ ;// CONCATENATED MODULE: ./src/components/Modal/components/index.ts
2340
+
2341
+
2342
+
2343
+ /***/ }),
2344
+
2345
+ /***/ 85906:
2346
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2347
+
2348
+ "use strict";
2349
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2350
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2351
+ /* harmony export */ "Z": () => (/* reexport safe */ _Modal__WEBPACK_IMPORTED_MODULE_0__.Z)
2352
+ /* harmony export */ });
2353
+ /* harmony import */ var _Modal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(85061);
2354
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Modal__WEBPACK_IMPORTED_MODULE_0__]);
2355
+ _Modal__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2356
+
2357
+
2358
+ __webpack_async_result__();
2359
+ } catch(e) { __webpack_async_result__(e); } });
2360
+
2361
+ /***/ }),
2362
+
2363
+ /***/ 11636:
2364
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2365
+
2366
+ "use strict";
2367
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2368
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2369
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2370
+ /* harmony export */ });
2371
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2372
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2373
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2374
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2375
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(46230);
2376
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55210);
2377
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(74200);
2378
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
2379
+ /* harmony import */ var _SquareButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(86889);
2380
+ /* harmony import */ var _NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(25223);
2381
+ /* harmony import */ var _NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7__);
2382
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_2__, state__WEBPACK_IMPORTED_MODULE_5__, _SquareButton__WEBPACK_IMPORTED_MODULE_6__]);
2383
+ ([hooks__WEBPACK_IMPORTED_MODULE_2__, state__WEBPACK_IMPORTED_MODULE_5__, _SquareButton__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2384
+
2385
+
2386
+
2387
+
2388
+
2389
+
2390
+
2391
+
2392
+ const NavButtons = ({ onClear , onShowKeyMap , onShowMenu , onShowRemainingTiles , onShowSettings , onShowWords })=>{
2393
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
2394
+ const hasOverusedTiles = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectHasOverusedTiles */ .En);
2395
+ const hasInvalidWords = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectHasInvalidWords */ .bs);
2396
+ const isTouchDevice = (0,hooks__WEBPACK_IMPORTED_MODULE_2__/* .useIsTouchDevice */ .YQ)();
2397
+ const isLessThanS = (0,hooks__WEBPACK_IMPORTED_MODULE_2__/* .useMediaQuery */ .ac)("<s");
2398
+ if (isLessThanS) {
2399
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2400
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().navButtons),
2401
+ children: [
2402
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2403
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2404
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2405
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button),
2406
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Eraser */ .Gs,
2407
+ tooltip: translate("common.clear"),
2408
+ onClick: onClear
2409
+ })
2410
+ }),
2411
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2412
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().separator)
2413
+ }),
2414
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2415
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2416
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2417
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button),
2418
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .List */ .aV,
2419
+ tooltip: translate("menu"),
2420
+ onClick: onShowMenu
2421
+ })
2422
+ })
2423
+ ]
2424
+ });
2425
+ }
2426
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2427
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().navButtons),
2428
+ children: [
2429
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2430
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2431
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2432
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button),
2433
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Eraser */ .Gs,
2434
+ tooltip: translate("common.clear"),
2435
+ onClick: onClear
2436
+ })
2437
+ }),
2438
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2439
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().separator)
2440
+ }),
2441
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
2442
+ className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().group),
2443
+ children: [
2444
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2445
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button), {
2446
+ [(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().error)]: hasOverusedTiles
2447
+ }),
2448
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Sack */ .xy,
2449
+ tooltip: translate("remaining-tiles"),
2450
+ onClick: onShowRemainingTiles
2451
+ }),
2452
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2453
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().button), {
2454
+ [(_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().error)]: hasInvalidWords
2455
+ }),
2456
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .CardChecklist */ .Kz,
2457
+ tooltip: translate("words"),
2458
+ onClick: onShowWords
2459
+ })
2460
+ ]
2433
2461
  }),
2434
2462
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2435
2463
  className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_7___default().separator)
@@ -2505,7 +2533,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2505
2533
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2506
2534
  /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(41664);
2507
2535
  /* harmony import */ var next_link__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(next_link__WEBPACK_IMPORTED_MODULE_1__);
2508
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12374);
2536
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55210);
2509
2537
  /* harmony import */ var _PlainTiles__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(31773);
2510
2538
  /* harmony import */ var _NotFound_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8557);
2511
2539
  /* harmony import */ var _NotFound_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_NotFound_module_scss__WEBPACK_IMPORTED_MODULE_4__);
@@ -2816,6 +2844,72 @@ const getViewbox = (content)=>{
2816
2844
 
2817
2845
 
2818
2846
 
2847
+ /***/ }),
2848
+
2849
+ /***/ 55800:
2850
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2851
+
2852
+ "use strict";
2853
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2854
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2855
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2856
+ /* harmony export */ });
2857
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2858
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2859
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2860
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2861
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(74200);
2862
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
2863
+ /* harmony import */ var _Progress_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(27217);
2864
+ /* harmony import */ var _Progress_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Progress_module_scss__WEBPACK_IMPORTED_MODULE_4__);
2865
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__]);
2866
+ state__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2867
+
2868
+
2869
+
2870
+
2871
+
2872
+ const getGradient = (progress, color, background)=>{
2873
+ const percent = 100 * progress;
2874
+ return `linear-gradient(90deg, ${color} 0%, ${color} ${percent}%, ${background} ${percent}%, ${background} 100%)`;
2875
+ };
2876
+ const Progress = ({ className , max , min =0 , style , value , ...props })=>{
2877
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectLocale */ .fN);
2878
+ const progress = value / (max - min);
2879
+ const percent = Math.round(100 * progress);
2880
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2881
+ ...props,
2882
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Progress_module_scss__WEBPACK_IMPORTED_MODULE_4___default().progress), className),
2883
+ style: {
2884
+ ...style,
2885
+ backgroundImage: getGradient(progress, parameters__WEBPACK_IMPORTED_MODULE_2__/* .PROGRESS_COLOR_VALUE */ .xZ, parameters__WEBPACK_IMPORTED_MODULE_2__/* .PROGRESS_COLOR_BACKGROUND */ .eU)
2886
+ },
2887
+ title: `${percent.toLocaleString(locale)}%`
2888
+ });
2889
+ };
2890
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Progress);
2891
+
2892
+ __webpack_async_result__();
2893
+ } catch(e) { __webpack_async_result__(e); } });
2894
+
2895
+ /***/ }),
2896
+
2897
+ /***/ 6465:
2898
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2899
+
2900
+ "use strict";
2901
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2902
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2903
+ /* harmony export */ "Z": () => (/* reexport safe */ _Progress__WEBPACK_IMPORTED_MODULE_0__.Z)
2904
+ /* harmony export */ });
2905
+ /* harmony import */ var _Progress__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(55800);
2906
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Progress__WEBPACK_IMPORTED_MODULE_0__]);
2907
+ _Progress__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2908
+
2909
+
2910
+ __webpack_async_result__();
2911
+ } catch(e) { __webpack_async_result__(e); } });
2912
+
2819
2913
  /***/ }),
2820
2914
 
2821
2915
  /***/ 34084:
@@ -2851,7 +2945,7 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
2851
2945
 
2852
2946
 
2853
2947
 
2854
- const Rack = ({ className })=>{
2948
+ const Rack = ({ className , tileSize })=>{
2855
2949
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
2856
2950
  const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
2857
2951
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
@@ -2958,6 +3052,7 @@ const Rack = ({ className })=>{
2958
3052
  character: character,
2959
3053
  index: index,
2960
3054
  inputRef: tilesRefs[index],
3055
+ size: tileSize,
2961
3056
  tile: tile,
2962
3057
  onChange: handleChange,
2963
3058
  onKeyDown: handleKeyDown
@@ -2987,14 +3082,12 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2987
3082
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
2988
3083
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
2989
3084
  /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(95784);
2990
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(74200);
2991
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64579);
2992
- /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(57243);
2993
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(30277);
2994
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__);
2995
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__]);
2996
- ([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2997
-
3085
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
3086
+ /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57243);
3087
+ /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(30277);
3088
+ /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_7__);
3089
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Tile__WEBPACK_IMPORTED_MODULE_6__]);
3090
+ ([state__WEBPACK_IMPORTED_MODULE_5__, _Tile__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2998
3091
 
2999
3092
 
3000
3093
 
@@ -3003,12 +3096,12 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
3003
3096
 
3004
3097
 
3005
3098
 
3006
- const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onChange , onKeyDown })=>{
3099
+ const RackTile = ({ activeIndexRef , character , index , inputRef , size , tile , onChange , onKeyDown })=>{
3007
3100
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
3008
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
3009
- const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
3010
- const points = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterPoints */ .Or)(state, character));
3011
- const isValid = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterIsValid */ .AN)(state, character));
3101
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
3102
+ const config = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectConfig */ .$o);
3103
+ const points = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_5__/* .selectCharacterPoints */ .Or)(state, character));
3104
+ const isValid = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_5__/* .selectCharacterIsValid */ .AN)(state, character));
3012
3105
  const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)(()=>{
3013
3106
  activeIndexRef.current = index;
3014
3107
  }, [
@@ -3021,7 +3114,7 @@ const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onCha
3021
3114
  const characters = value ? (0,lib__WEBPACK_IMPORTED_MODULE_4__/* .extractCharacters */ .nK)(config, value) : [
3022
3115
  null
3023
3116
  ];
3024
- dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
3117
+ dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
3025
3118
  characters,
3026
3119
  index
3027
3120
  }));
@@ -3035,7 +3128,7 @@ const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onCha
3035
3128
  return (0,lib__WEBPACK_IMPORTED_MODULE_4__/* .createKeyboardNavigation */ .np)({
3036
3129
  onBackspace: (event)=>{
3037
3130
  event.preventDefault();
3038
- dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacter */ .O_.actions.changeCharacter({
3131
+ dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .rackSlice.actions.changeCharacter */ .O_.actions.changeCharacter({
3039
3132
  character: null,
3040
3133
  index
3041
3134
  }));
@@ -3046,7 +3139,7 @@ const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onCha
3046
3139
  event.stopPropagation();
3047
3140
  const twoTilesCharacter = config.getTwoCharacterTileByPrefix(event.key);
3048
3141
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3049
- dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacter */ .O_.actions.changeCharacter({
3142
+ dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .rackSlice.actions.changeCharacter */ .O_.actions.changeCharacter({
3050
3143
  character: twoTilesCharacter,
3051
3144
  index
3052
3145
  }));
@@ -3058,9 +3151,9 @@ const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onCha
3058
3151
  index,
3059
3152
  onKeyDown
3060
3153
  ]);
3061
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3154
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
3062
3155
  autoFocus: index === 0,
3063
- className: (_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().tile),
3156
+ className: (_Rack_module_scss__WEBPACK_IMPORTED_MODULE_7___default().tile),
3064
3157
  character: character === null ? undefined : character,
3065
3158
  highlighted: tile !== null,
3066
3159
  inputRef: inputRef,
@@ -3069,7 +3162,7 @@ const RackTile = ({ activeIndexRef , character , index , inputRef , tile , onCha
3069
3162
  placeholder: translate("rack.placeholder")[index],
3070
3163
  points: points,
3071
3164
  raised: true,
3072
- size: parameters__WEBPACK_IMPORTED_MODULE_5__/* .TILE_SIZE */ .I_,
3165
+ size: size,
3073
3166
  tabIndex: index === 0 ? undefined : -1,
3074
3167
  onChange: handleChange,
3075
3168
  onFocus: handleFocus,
@@ -3156,7 +3249,7 @@ const Radio = ({ checked , children , className , disabled , id , name , value ,
3156
3249
 
3157
3250
  /***/ }),
3158
3251
 
3159
- /***/ 37070:
3252
+ /***/ 46865:
3160
3253
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
3161
3254
 
3162
3255
  "use strict";
@@ -3166,153 +3259,67 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3166
3259
  /* harmony export */ });
3167
3260
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
3168
3261
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3169
- /* harmony import */ var _scrabble_solver_constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7618);
3170
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
3171
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
3172
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77586);
3173
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(74200);
3174
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
3175
- /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57243);
3176
- /* harmony import */ var _Character_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(41415);
3177
- /* harmony import */ var _Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_Character_module_scss__WEBPACK_IMPORTED_MODULE_7__);
3178
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Tile__WEBPACK_IMPORTED_MODULE_6__]);
3179
- ([state__WEBPACK_IMPORTED_MODULE_5__, _Tile__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3180
-
3181
-
3182
-
3262
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
3263
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
3264
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55210);
3265
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
3266
+ /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(48425);
3267
+ /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4__);
3268
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__]);
3269
+ state__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
3183
3270
 
3184
3271
 
3185
3272
 
3186
3273
 
3187
3274
 
3188
- const Character = ({ tile })=>{
3189
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectLocale */ .fN);
3190
- const { direction } = i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale];
3191
- const { character , count , usedCount } = tile;
3192
- const remainingCount = count - usedCount;
3193
- const points = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_5__/* .selectCharacterPoints */ .Or)(state, character));
3194
- const current = direction === "ltr" ? remainingCount : count;
3195
- const total = direction === "ltr" ? count : remainingCount;
3196
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
3197
- className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default().character), {
3198
- [(_Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default().finished)]: remainingCount <= 0,
3199
- [(_Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default().overused)]: remainingCount < 0
3200
- }),
3275
+ const ResultCandidatePicker = ({ className , ...props })=>{
3276
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectLocale */ .fN);
3277
+ const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectAreResultsOutdated */ .Mj);
3278
+ const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectResultCandidate */ .Xk);
3279
+ if (!resultCandidate) {
3280
+ return null;
3281
+ }
3282
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("button", {
3283
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default().resultCandidatePicker), className),
3284
+ disabled: isOutdated,
3285
+ type: "button",
3286
+ ...props,
3201
3287
  children: [
3202
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
3203
- character: character,
3204
- className: (_Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default().tile),
3205
- disabled: true,
3206
- isBlank: character === _scrabble_solver_constants__WEBPACK_IMPORTED_MODULE_1__.BLANK,
3207
- isValid: remainingCount >= 0,
3208
- points: points,
3209
- raised: true,
3210
- size: parameters__WEBPACK_IMPORTED_MODULE_4__/* .REMAINING_TILES_TILE_SIZE */ .mM
3288
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
3289
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default().points),
3290
+ children: resultCandidate.points.toLocaleString(locale)
3211
3291
  }),
3212
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
3213
- className: (_Character_module_scss__WEBPACK_IMPORTED_MODULE_7___default().count),
3214
- children: [
3215
- current.toLocaleString(locale),
3216
- " / ",
3217
- total.toLocaleString(locale)
3218
- ]
3292
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
3293
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default().word),
3294
+ children: resultCandidate.word
3295
+ }),
3296
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
3297
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default().iconContainer),
3298
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .ChevronDown */ ._M, {
3299
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_4___default().icon)
3300
+ })
3219
3301
  })
3220
3302
  ]
3221
- }, character);
3222
- };
3223
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Character);
3224
-
3225
- __webpack_async_result__();
3226
- } catch(e) { __webpack_async_result__(e); } });
3227
-
3228
- /***/ }),
3229
-
3230
- /***/ 33050:
3231
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
3232
-
3233
- "use strict";
3234
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
3235
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3236
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3237
- /* harmony export */ });
3238
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
3239
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3240
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(77586);
3241
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64579);
3242
- /* harmony import */ var _Badge__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(47743);
3243
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(81858);
3244
- /* harmony import */ var _Character__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37070);
3245
- /* harmony import */ var _RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(95070);
3246
- /* harmony import */ var _RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6__);
3247
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_2__, _Sidebar__WEBPACK_IMPORTED_MODULE_4__, _Character__WEBPACK_IMPORTED_MODULE_5__]);
3248
- ([state__WEBPACK_IMPORTED_MODULE_2__, _Sidebar__WEBPACK_IMPORTED_MODULE_4__, _Character__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3249
-
3250
-
3251
-
3252
-
3253
-
3254
-
3255
-
3256
- const RemainingTiles = ({ className , isOpen , onClose })=>{
3257
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTranslate */ .qM)();
3258
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_2__/* .selectLocale */ .fN);
3259
- const groups = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_2__/* .selectRemainingTilesGroups */ .Yj);
3260
- const { direction } = i18n__WEBPACK_IMPORTED_MODULE_1__/* .LOCALE_FEATURES */ .q[locale];
3261
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3262
- className: className,
3263
- isOpen: isOpen,
3264
- title: translate("remaining-tiles"),
3265
- onClose: onClose,
3266
- children: groups.map(({ remainingCount , tiles , translationKey , totalCount })=>{
3267
- const current = direction === "ltr" ? remainingCount : totalCount;
3268
- const total = direction === "ltr" ? totalCount : remainingCount;
3269
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_4__/* ["default"].Section */ .Z.Section, {
3270
- title: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
3271
- className: (_RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6___default().title),
3272
- children: [
3273
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
3274
- children: translate(translationKey)
3275
- }),
3276
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Badge__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
3277
- className: (_RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6___default().badge),
3278
- children: [
3279
- current.toLocaleString(locale),
3280
- " / ",
3281
- total.toLocaleString(locale)
3282
- ]
3283
- })
3284
- ]
3285
- }),
3286
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
3287
- className: (_RemainingTiles_module_scss__WEBPACK_IMPORTED_MODULE_6___default().content),
3288
- children: tiles.map((tile)=>{
3289
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Character__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
3290
- tile: tile
3291
- }, tile.character);
3292
- })
3293
- })
3294
- }, translationKey);
3295
- })
3296
3303
  });
3297
3304
  };
3298
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RemainingTiles);
3305
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ResultCandidatePicker);
3299
3306
 
3300
3307
  __webpack_async_result__();
3301
3308
  } catch(e) { __webpack_async_result__(e); } });
3302
3309
 
3303
3310
  /***/ }),
3304
3311
 
3305
- /***/ 71524:
3312
+ /***/ 14066:
3306
3313
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
3307
3314
 
3308
3315
  "use strict";
3309
3316
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
3310
3317
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3311
- /* harmony export */ "Z": () => (/* reexport safe */ _RemainingTiles__WEBPACK_IMPORTED_MODULE_0__.Z)
3318
+ /* harmony export */ "Z": () => (/* reexport safe */ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_0__.Z)
3312
3319
  /* harmony export */ });
3313
- /* harmony import */ var _RemainingTiles__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33050);
3314
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_RemainingTiles__WEBPACK_IMPORTED_MODULE_0__]);
3315
- _RemainingTiles__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
3320
+ /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46865);
3321
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_0__]);
3322
+ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
3316
3323
 
3317
3324
 
3318
3325
  __webpack_async_result__();
@@ -3375,7 +3382,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3375
3382
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
3376
3383
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
3377
3384
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
3378
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12374);
3385
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55210);
3379
3386
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(64579);
3380
3387
  /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(9033);
3381
3388
  /* harmony import */ var _Tooltip__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(7646);
@@ -3443,46 +3450,52 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3443
3450
  /* harmony export */ });
3444
3451
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
3445
3452
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3446
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
3447
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
3448
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(77586);
3449
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
3450
- /* harmony import */ var _Cell__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(27085);
3451
- /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(54206);
3452
- /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_Results_module_scss__WEBPACK_IMPORTED_MODULE_5__);
3453
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Cell__WEBPACK_IMPORTED_MODULE_4__]);
3454
- ([state__WEBPACK_IMPORTED_MODULE_3__, _Cell__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3453
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
3454
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
3455
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
3456
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
3457
+ /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(77586);
3458
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(95784);
3459
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
3460
+ /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(9033);
3461
+ /* harmony import */ var _Cell__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(27085);
3462
+ /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(54206);
3463
+ /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_Results_module_scss__WEBPACK_IMPORTED_MODULE_9__);
3464
+ /* harmony import */ var _useColumns__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(19970);
3465
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Cell__WEBPACK_IMPORTED_MODULE_7__, _useColumns__WEBPACK_IMPORTED_MODULE_8__]);
3466
+ ([state__WEBPACK_IMPORTED_MODULE_5__, _Cell__WEBPACK_IMPORTED_MODULE_7__, _useColumns__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3455
3467
 
3456
3468
 
3457
3469
 
3458
3470
 
3459
3471
 
3460
3472
 
3461
- const Result = ({ index , style })=>{
3462
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
3463
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectLocale */ .fN);
3464
- const { consonants , vowels } = i18n__WEBPACK_IMPORTED_MODULE_2__/* .LOCALE_FEATURES */ .q[locale];
3465
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
3466
- const results = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectSortedFilteredResults */ .dN);
3473
+
3474
+
3475
+
3476
+
3477
+ const Result = ({ data , index , style })=>{
3478
+ const { highlightedIndex , results , onBlur =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT , onClick =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT , onFocus =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT , onMouseEnter =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT , onMouseLeave =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT } = data;
3479
+ const ref = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)(null);
3480
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectLocale */ .fN);
3481
+ const { consonants , vowels } = i18n__WEBPACK_IMPORTED_MODULE_3__/* .LOCALE_FEATURES */ .q[locale];
3467
3482
  const result = results[index];
3468
3483
  const otherWords = result.words.slice(1).join(" / ").toLocaleUpperCase();
3469
- const handleClick = ()=>{
3470
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.applyResult */ ._C.actions.applyResult(result));
3471
- };
3472
- const handleMouseEnter = ()=>{
3473
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(result));
3474
- };
3475
- const handleMouseLeave = ()=>{
3476
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(null));
3477
- };
3478
- const handleFocus = ()=>{
3479
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(result));
3480
- };
3481
- const handleBlur = ()=>{
3482
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(null));
3483
- };
3484
+ const columns = (0,_useColumns__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z)();
3485
+ const enabledColumns = Object.fromEntries(columns.map((column)=>[
3486
+ column.id,
3487
+ true
3488
+ ]));
3489
+ const handleClick = (event)=>onClick(result, event);
3490
+ const handleMouseEnter = (event)=>onMouseEnter(result, event);
3491
+ const handleMouseLeave = (event)=>onMouseLeave(result, event);
3492
+ const handleBlur = (event)=>onBlur(result, event);
3493
+ const handleFocus = (event)=>onFocus(result, event);
3484
3494
  return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("button", {
3485
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().result),
3495
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().result), {
3496
+ [(_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().highlighted)]: index === highlightedIndex
3497
+ }),
3498
+ ref: ref,
3486
3499
  style: style,
3487
3500
  type: "button",
3488
3501
  onBlur: handleBlur,
@@ -3491,41 +3504,41 @@ const Result = ({ index , style })=>{
3491
3504
  onMouseEnter: handleMouseEnter,
3492
3505
  onMouseLeave: handleMouseLeave,
3493
3506
  children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
3494
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().resultContent),
3507
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().resultContent),
3495
3508
  children: [
3496
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3497
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().word),
3509
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.Word */ .M.Word] && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3510
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().word),
3498
3511
  translationKey: "common.word",
3499
3512
  value: `${result.word.toLocaleUpperCase()}${otherWords.length > 0 ? ` (${otherWords})` : ""}`
3500
3513
  }),
3501
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3502
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().stat),
3514
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.TilesCount */ .M.TilesCount] && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3515
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().stat),
3503
3516
  translationKey: "common.tiles",
3504
3517
  value: result.tilesCount
3505
3518
  }),
3506
- consonants && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3507
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().stat),
3519
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.ConsonantsCount */ .M.ConsonantsCount] && consonants && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3520
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().stat),
3508
3521
  translationKey: "common.consonants",
3509
3522
  value: result.consonantsCount
3510
3523
  }),
3511
- vowels && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3512
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().stat),
3524
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.VowelsCount */ .M.VowelsCount] && vowels && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3525
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().stat),
3513
3526
  translationKey: "common.vowels",
3514
3527
  value: result.vowelsCount
3515
3528
  }),
3516
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3517
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().stat),
3529
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.BlanksCount */ .M.BlanksCount] && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3530
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().stat),
3518
3531
  translationKey: "common.blanks",
3519
3532
  value: result.blanksCount
3520
3533
  }),
3521
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3522
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().stat),
3534
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.WordsCount */ .M.WordsCount] && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3535
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().stat),
3523
3536
  translationKey: "common.words",
3524
3537
  tooltip: `${result.wordsCount} (${result.words.join(" / ").toLocaleUpperCase()})`,
3525
3538
  value: result.wordsCount
3526
3539
  }),
3527
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3528
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().points),
3540
+ enabledColumns[types__WEBPACK_IMPORTED_MODULE_6__/* .ResultColumn.Points */ .M.Points] && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Cell__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3541
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_9___default().points),
3529
3542
  translationKey: "common.points",
3530
3543
  value: result.points
3531
3544
  })
@@ -3562,14 +3575,14 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3562
3575
  /* harmony import */ var _EmptyState__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(18681);
3563
3576
  /* harmony import */ var _Loading__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(84198);
3564
3577
  /* harmony import */ var _ResultsInput__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(92833);
3565
- /* harmony import */ var _getColumns__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(20747);
3566
- /* harmony import */ var _HeaderButton__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(58748);
3567
- /* harmony import */ var _Result__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(73975);
3578
+ /* harmony import */ var _HeaderButton__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(58748);
3579
+ /* harmony import */ var _Result__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(73975);
3568
3580
  /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(54206);
3569
3581
  /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_Results_module_scss__WEBPACK_IMPORTED_MODULE_14__);
3570
- /* harmony import */ var _SolveButton__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(21834);
3571
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _EmptyState__WEBPACK_IMPORTED_MODULE_7__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _ResultsInput__WEBPACK_IMPORTED_MODULE_9__, _HeaderButton__WEBPACK_IMPORTED_MODULE_11__, _Result__WEBPACK_IMPORTED_MODULE_12__, _SolveButton__WEBPACK_IMPORTED_MODULE_13__]);
3572
- ([state__WEBPACK_IMPORTED_MODULE_6__, _EmptyState__WEBPACK_IMPORTED_MODULE_7__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _ResultsInput__WEBPACK_IMPORTED_MODULE_9__, _HeaderButton__WEBPACK_IMPORTED_MODULE_11__, _Result__WEBPACK_IMPORTED_MODULE_12__, _SolveButton__WEBPACK_IMPORTED_MODULE_13__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3582
+ /* harmony import */ var _SolveButton__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(21834);
3583
+ /* harmony import */ var _useColumns__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(19970);
3584
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _EmptyState__WEBPACK_IMPORTED_MODULE_7__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _ResultsInput__WEBPACK_IMPORTED_MODULE_9__, _HeaderButton__WEBPACK_IMPORTED_MODULE_10__, _Result__WEBPACK_IMPORTED_MODULE_11__, _SolveButton__WEBPACK_IMPORTED_MODULE_12__, _useColumns__WEBPACK_IMPORTED_MODULE_13__]);
3585
+ ([state__WEBPACK_IMPORTED_MODULE_6__, _EmptyState__WEBPACK_IMPORTED_MODULE_7__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _ResultsInput__WEBPACK_IMPORTED_MODULE_9__, _HeaderButton__WEBPACK_IMPORTED_MODULE_10__, _Result__WEBPACK_IMPORTED_MODULE_11__, _SolveButton__WEBPACK_IMPORTED_MODULE_12__, _useColumns__WEBPACK_IMPORTED_MODULE_13__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3573
3586
 
3574
3587
 
3575
3588
 
@@ -3585,78 +3598,103 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
3585
3598
 
3586
3599
 
3587
3600
 
3588
- const Results = ({ height , width })=>{
3589
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
3601
+ const Results = ({ callbacks , height , highlightedIndex , width })=>{
3590
3602
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
3603
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
3604
+ const { direction } = i18n__WEBPACK_IMPORTED_MODULE_4__/* .LOCALE_FEATURES */ .q[locale];
3591
3605
  const allResults = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectSortedResults */ .f2);
3592
- const results = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectSortedFilteredResults */ .dN);
3606
+ const filteredResults = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectSortedFilteredResults */ .dN);
3607
+ const results = filteredResults || [];
3593
3608
  const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectIsLoading */ .xU);
3594
3609
  const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectAreResultsOutdated */ .Mj);
3595
3610
  const error = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectSolveError */ .Rn);
3596
- const listRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();
3597
- const columns = (0,_getColumns__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z)(i18n__WEBPACK_IMPORTED_MODULE_4__/* .LOCALE_FEATURES */ .q[locale]);
3598
- (0,react__WEBPACK_IMPORTED_MODULE_2__.useLayoutEffect)(()=>{
3599
- if (listRef.current) {
3600
- listRef.current.scrollTo(0, 0);
3601
- }
3611
+ const itemData = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>({
3612
+ ...callbacks,
3613
+ highlightedIndex,
3614
+ results
3615
+ }), [
3616
+ callbacks,
3617
+ highlightedIndex,
3618
+ results
3619
+ ]);
3620
+ const [listRef, setListRef] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(null);
3621
+ const columns = (0,_useColumns__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z)();
3622
+ const scrollToIndex = typeof highlightedIndex === "number" ? highlightedIndex : 0;
3623
+ (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
3624
+ // without setTimeout, the initial scrolling offset is calculated
3625
+ // incorrectly, as the list is not fully rendered by the browser yet
3626
+ const timeout = globalThis.setTimeout(()=>{
3627
+ if (listRef) {
3628
+ listRef.scrollToItem(scrollToIndex, "center");
3629
+ }
3630
+ }, 0);
3631
+ return ()=>{
3632
+ globalThis.clearTimeout(timeout);
3633
+ };
3602
3634
  }, [
3603
3635
  listRef,
3604
- results
3636
+ scrollToIndex
3605
3637
  ]);
3606
3638
  return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
3607
3639
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().results),
3608
3640
  children: [
3609
3641
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
3610
3642
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().header),
3611
- children: columns.map((column)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_HeaderButton__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
3643
+ children: columns.map((column)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_HeaderButton__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
3612
3644
  column: column
3613
3645
  }, column.id))
3614
3646
  }),
3615
3647
  typeof error !== "undefined" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3616
3648
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().emptyState),
3617
- type: "error",
3649
+ variant: "error",
3618
3650
  children: error.message
3619
3651
  }),
3620
- typeof error === "undefined" && typeof results === "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3652
+ typeof error === "undefined" && typeof filteredResults === "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3621
3653
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().emptyState),
3622
- type: "info",
3654
+ variant: "info",
3623
3655
  children: [
3624
3656
  translate("results.empty-state.uninitialized"),
3625
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SolveButton__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {})
3657
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SolveButton__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {
3658
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().solveButton)
3659
+ })
3626
3660
  ]
3627
3661
  }),
3628
- typeof error === "undefined" && typeof results !== "undefined" && typeof allResults !== "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
3662
+ typeof error === "undefined" && typeof filteredResults !== "undefined" && typeof allResults !== "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
3629
3663
  children: [
3630
3664
  isOutdated && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3631
3665
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().emptyState),
3632
- type: "info",
3666
+ variant: "info",
3633
3667
  children: [
3634
3668
  translate("results.empty-state.outdated"),
3635
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SolveButton__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {})
3669
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SolveButton__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {
3670
+ className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().solveButton)
3671
+ })
3636
3672
  ]
3637
3673
  }),
3638
3674
  !isOutdated && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
3639
3675
  children: [
3640
3676
  allResults.length === 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3641
3677
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().emptyState),
3642
- type: "warning",
3678
+ variant: "warning",
3643
3679
  children: translate("results.empty-state.no-results")
3644
3680
  }),
3645
- allResults.length > 0 && results.length === 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3681
+ allResults.length > 0 && filteredResults.length === 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_EmptyState__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3646
3682
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().emptyState),
3647
- type: "info",
3683
+ variant: "info",
3648
3684
  children: translate("results.empty-state.no-filtered-results")
3649
3685
  }),
3650
- allResults.length > 0 && results.length > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_window__WEBPACK_IMPORTED_MODULE_3__.FixedSizeList, {
3686
+ allResults.length > 0 && filteredResults.length > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react_window__WEBPACK_IMPORTED_MODULE_3__.FixedSizeList, {
3651
3687
  className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().list), {
3652
3688
  [(_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().outdated)]: isOutdated
3653
3689
  }),
3654
- height: height - parameters__WEBPACK_IMPORTED_MODULE_5__/* .RESULTS_HEADER_HEIGHT */ .$L - parameters__WEBPACK_IMPORTED_MODULE_5__/* .RESULTS_INPUT_HEIGHT */ .qp,
3655
- innerRef: listRef,
3656
- itemCount: results.length,
3690
+ direction: direction,
3691
+ height: height - parameters__WEBPACK_IMPORTED_MODULE_5__/* .RESULTS_HEADER_HEIGHT */ .$L - parameters__WEBPACK_IMPORTED_MODULE_5__/* .RESULTS_INPUT_HEIGHT */ .qp - 2 * parameters__WEBPACK_IMPORTED_MODULE_5__/* .BORDER_WIDTH */ .YF,
3692
+ itemCount: filteredResults.length,
3693
+ itemData: itemData,
3657
3694
  itemSize: parameters__WEBPACK_IMPORTED_MODULE_5__/* .RESULTS_ITEM_HEIGHT */ .rx,
3695
+ ref: setListRef,
3658
3696
  width: width,
3659
- children: _Result__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z
3697
+ children: _Result__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z
3660
3698
  }),
3661
3699
  allResults.length > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ResultsInput__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
3662
3700
  className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_14___default().input)
@@ -3688,11 +3726,9 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3688
3726
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3689
3727
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
3690
3728
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
3691
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12374);
3729
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55210);
3692
3730
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
3693
3731
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(96753);
3694
- /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(54206);
3695
- /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_Results_module_scss__WEBPACK_IMPORTED_MODULE_5__);
3696
3732
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__]);
3697
3733
  ([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3698
3734
 
@@ -3700,23 +3736,23 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
3700
3736
 
3701
3737
 
3702
3738
 
3703
-
3704
- const SolveButton = ()=>{
3739
+ const SolveButton = ({ className })=>{
3705
3740
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
3706
3741
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTranslate */ .qM)();
3707
3742
  const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectIsLoading */ .xU);
3708
3743
  const rack = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectRack */ .QB);
3709
3744
  const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectAreResultsOutdated */ .Mj);
3710
3745
  const hasTiles = rack.some((tile)=>tile !== null);
3711
- const handleRefresh = ()=>{
3746
+ const handleClick = ()=>{
3712
3747
  dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .solveSlice.actions.submit */ .TP.actions.submit());
3713
3748
  };
3714
3749
  return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
3715
- className: (_Results_module_scss__WEBPACK_IMPORTED_MODULE_5___default().outdatedButton),
3750
+ className: className,
3716
3751
  disabled: isLoading || !isOutdated || !hasTiles,
3717
- Icon: icons__WEBPACK_IMPORTED_MODULE_2__/* .Play */ .sh,
3752
+ Icon: icons__WEBPACK_IMPORTED_MODULE_2__/* .Search */ .HN,
3718
3753
  type: "submit",
3719
- onClick: handleRefresh,
3754
+ variant: "primary",
3755
+ onClick: handleClick,
3720
3756
  children: translate("results.solve")
3721
3757
  });
3722
3758
  };
@@ -3727,7 +3763,7 @@ __webpack_async_result__();
3727
3763
 
3728
3764
  /***/ }),
3729
3765
 
3730
- /***/ 20747:
3766
+ /***/ 40541:
3731
3767
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3732
3768
 
3733
3769
  "use strict";
@@ -3739,7 +3775,7 @@ __webpack_async_result__();
3739
3775
  /* harmony import */ var _Results_module_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_Results_module_scss__WEBPACK_IMPORTED_MODULE_1__);
3740
3776
 
3741
3777
 
3742
- const getColumns = (options)=>{
3778
+ const getLocaleColumns = (options)=>{
3743
3779
  const { consonants , vowels } = options;
3744
3780
  const columns = [
3745
3781
  {
@@ -3782,7 +3818,7 @@ const getColumns = (options)=>{
3782
3818
  });
3783
3819
  return columns;
3784
3820
  };
3785
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getColumns);
3821
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (getLocaleColumns);
3786
3822
 
3787
3823
 
3788
3824
  /***/ }),
@@ -3800,6 +3836,69 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Res
3800
3836
  _Results__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
3801
3837
 
3802
3838
 
3839
+ __webpack_async_result__();
3840
+ } catch(e) { __webpack_async_result__(e); } });
3841
+
3842
+ /***/ }),
3843
+
3844
+ /***/ 19970:
3845
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
3846
+
3847
+ "use strict";
3848
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
3849
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3850
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3851
+ /* harmony export */ });
3852
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(46230);
3853
+ /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(77586);
3854
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64579);
3855
+ /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(9033);
3856
+ /* harmony import */ var _getLocaleColumns__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(40541);
3857
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_0__, state__WEBPACK_IMPORTED_MODULE_2__]);
3858
+ ([hooks__WEBPACK_IMPORTED_MODULE_0__, state__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3859
+
3860
+
3861
+
3862
+
3863
+
3864
+ const COLUMNS_XS = [
3865
+ types__WEBPACK_IMPORTED_MODULE_3__/* .ResultColumn.Word */ .M.Word,
3866
+ types__WEBPACK_IMPORTED_MODULE_3__/* .ResultColumn.Points */ .M.Points
3867
+ ];
3868
+ const COLUMNS_S = [
3869
+ ...COLUMNS_XS,
3870
+ types__WEBPACK_IMPORTED_MODULE_3__/* .ResultColumn.BlanksCount */ .M.BlanksCount,
3871
+ types__WEBPACK_IMPORTED_MODULE_3__/* .ResultColumn.WordsCount */ .M.WordsCount
3872
+ ];
3873
+ const COLUMNS_M = [
3874
+ ...COLUMNS_XS
3875
+ ];
3876
+ const COLUMNS_L = [
3877
+ ...COLUMNS_XS
3878
+ ];
3879
+ const useColumns = ()=>{
3880
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_2__/* .selectLocale */ .fN);
3881
+ const localeColumns = (0,_getLocaleColumns__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)(i18n__WEBPACK_IMPORTED_MODULE_1__/* .LOCALE_FEATURES */ .q[locale]);
3882
+ const isLessThanXs = (0,hooks__WEBPACK_IMPORTED_MODULE_0__/* .useMediaQuery */ .ac)("<xs");
3883
+ const isLessThanS = (0,hooks__WEBPACK_IMPORTED_MODULE_0__/* .useMediaQuery */ .ac)("<s");
3884
+ const isLessThanM = (0,hooks__WEBPACK_IMPORTED_MODULE_0__/* .useMediaQuery */ .ac)("<m");
3885
+ const isLessThanL = (0,hooks__WEBPACK_IMPORTED_MODULE_0__/* .useMediaQuery */ .ac)("<l");
3886
+ if (isLessThanXs) {
3887
+ return localeColumns.filter((column)=>COLUMNS_XS.includes(column.id));
3888
+ }
3889
+ if (isLessThanS) {
3890
+ return localeColumns.filter((column)=>COLUMNS_S.includes(column.id));
3891
+ }
3892
+ if (isLessThanM) {
3893
+ return localeColumns.filter((column)=>COLUMNS_M.includes(column.id));
3894
+ }
3895
+ if (isLessThanL) {
3896
+ return localeColumns.filter((column)=>COLUMNS_L.includes(column.id));
3897
+ }
3898
+ return localeColumns;
3899
+ };
3900
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useColumns);
3901
+
3803
3902
  __webpack_async_result__();
3804
3903
  } catch(e) { __webpack_async_result__(e); } });
3805
3904
 
@@ -3882,14 +3981,14 @@ __webpack_async_result__();
3882
3981
 
3883
3982
  /***/ }),
3884
3983
 
3885
- /***/ 32359:
3984
+ /***/ 77843:
3886
3985
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
3887
3986
 
3888
3987
  "use strict";
3889
3988
 
3890
3989
  // EXPORTS
3891
3990
  __webpack_require__.d(__webpack_exports__, {
3892
- "Z": () => (/* reexport */ Screen_Screen)
3991
+ "Z": () => (/* reexport */ Sizer_Sizer)
3893
3992
  });
3894
3993
 
3895
3994
  // EXTERNAL MODULE: external "react/jsx-runtime"
@@ -3897,85 +3996,30 @@ var jsx_runtime_ = __webpack_require__(20997);
3897
3996
  // EXTERNAL MODULE: external "classnames"
3898
3997
  var external_classnames_ = __webpack_require__(59003);
3899
3998
  var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
3900
- // EXTERNAL MODULE: ./src/components/Screen/Screen.module.scss
3901
- var Screen_module = __webpack_require__(65445);
3902
- var Screen_module_default = /*#__PURE__*/__webpack_require__.n(Screen_module);
3903
- ;// CONCATENATED MODULE: ./src/components/Screen/Screen.tsx
3904
-
3905
-
3906
-
3907
- const Screen = ({ children , className , contentClassName , onAnimationEnd })=>/*#__PURE__*/ jsx_runtime_.jsx("div", {
3908
- className: external_classnames_default()((Screen_module_default()).screen, className),
3909
- onAnimationEnd: onAnimationEnd,
3910
- children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
3911
- className: external_classnames_default()((Screen_module_default()).content, contentClassName),
3912
- children: children
3913
- })
3914
- });
3915
- /* harmony default export */ const Screen_Screen = (Screen);
3916
-
3917
- ;// CONCATENATED MODULE: ./src/components/Screen/index.ts
3918
-
3919
-
3920
-
3921
- /***/ }),
3999
+ // EXTERNAL MODULE: external "react"
4000
+ var external_react_ = __webpack_require__(16689);
4001
+ // EXTERNAL MODULE: ./src/components/Sizer/Sizer.module.scss
4002
+ var Sizer_module = __webpack_require__(23826);
4003
+ var Sizer_module_default = /*#__PURE__*/__webpack_require__.n(Sizer_module);
4004
+ ;// CONCATENATED MODULE: ./src/components/Sizer/Sizer.tsx
3922
4005
 
3923
- /***/ 28300:
3924
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
3925
4006
 
3926
- "use strict";
3927
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
3928
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
3929
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
3930
- /* harmony export */ });
3931
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
3932
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3933
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64579);
3934
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(81858);
3935
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(63840);
3936
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_1__, _Sidebar__WEBPACK_IMPORTED_MODULE_2__, _components__WEBPACK_IMPORTED_MODULE_3__]);
3937
- ([state__WEBPACK_IMPORTED_MODULE_1__, _Sidebar__WEBPACK_IMPORTED_MODULE_2__, _components__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
3938
4007
 
3939
4008
 
4009
+ const Sizer = /*#__PURE__*/ (0,external_react_.forwardRef)(({ className , ...props }, ref)=>/*#__PURE__*/ jsx_runtime_.jsx("div", {
4010
+ className: external_classnames_default()((Sizer_module_default()).sizer, className),
4011
+ ref: ref,
4012
+ ...props
4013
+ }));
4014
+ /* harmony default export */ const Sizer_Sizer = (Sizer);
3940
4015
 
4016
+ ;// CONCATENATED MODULE: ./src/components/Sizer/index.ts
3941
4017
 
3942
- const Settings = ({ className , isOpen , onClose })=>{
3943
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTranslate */ .qM)();
3944
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Sidebar__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
3945
- className: className,
3946
- isOpen: isOpen,
3947
- title: translate("settings"),
3948
- onClose: onClose,
3949
- children: [
3950
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_2__/* ["default"].Section */ .Z.Section, {
3951
- title: translate("settings.game"),
3952
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_3__/* .ConfigSetting */ .DG, {
3953
- disabled: !isOpen
3954
- })
3955
- }),
3956
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_2__/* ["default"].Section */ .Z.Section, {
3957
- title: translate("settings.language"),
3958
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_3__/* .LocaleSetting */ .YR, {
3959
- disabled: !isOpen
3960
- })
3961
- }),
3962
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_2__/* ["default"].Section */ .Z.Section, {
3963
- title: translate("settings.autoGroupTiles"),
3964
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_3__/* .AutoGroupTilesSetting */ .gy, {
3965
- disabled: !isOpen
3966
- })
3967
- })
3968
- ]
3969
- });
3970
- };
3971
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Settings);
3972
4018
 
3973
- __webpack_async_result__();
3974
- } catch(e) { __webpack_async_result__(e); } });
3975
4019
 
3976
4020
  /***/ }),
3977
4021
 
3978
- /***/ 20847:
4022
+ /***/ 82306:
3979
4023
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
3980
4024
 
3981
4025
  "use strict";
@@ -3985,220 +4029,255 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3985
4029
  /* harmony export */ });
3986
4030
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
3987
4031
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
3988
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
3989
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
3990
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64579);
3991
- /* harmony import */ var _Radio__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(84985);
3992
- /* harmony import */ var _AutoGroupTilesSetting_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(11130);
3993
- /* harmony import */ var _AutoGroupTilesSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_AutoGroupTilesSetting_module_scss__WEBPACK_IMPORTED_MODULE_6__);
3994
- /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(92783);
3995
- /* harmony import */ var _lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(85053);
3996
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_2__]);
3997
- state__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
3998
-
3999
-
4000
-
4001
-
4002
-
4003
-
4004
-
4005
- const AutoGroupTilesSetting = ({ className , disabled })=>{
4006
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
4007
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTranslate */ .qM)();
4008
- const value = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_2__/* .selectAutoGroupTiles */ .uz);
4009
- const options = [
4010
- {
4011
- label: translate("settings.autoGroupTiles.left"),
4012
- value: "left"
4013
- },
4014
- {
4015
- label: translate("settings.autoGroupTiles.right"),
4016
- value: "right"
4017
- },
4018
- {
4019
- label: translate("settings.autoGroupTiles.null"),
4020
- value: _constants__WEBPACK_IMPORTED_MODULE_4__/* .NULL_VALUE */ .I
4021
- }
4022
- ];
4023
- const handleChange = (event)=>{
4024
- const autoGroupTiles = (0,_lib__WEBPACK_IMPORTED_MODULE_5__/* .parseValue */ .H)(event.target.value);
4025
- dispatch(state__WEBPACK_IMPORTED_MODULE_2__/* .settingsSlice.actions.changeAutoGroupTiles */ .xj.actions.changeAutoGroupTiles(autoGroupTiles));
4026
- };
4027
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4028
- className: className,
4029
- children: options.map((option)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Radio__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
4030
- checked: value === (0,_lib__WEBPACK_IMPORTED_MODULE_5__/* .parseValue */ .H)(option.value),
4031
- className: (_AutoGroupTilesSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().option),
4032
- disabled: disabled,
4033
- id: "autoGroupTiles",
4034
- name: "autoGroupTiles",
4035
- value: option.value,
4036
- onChange: handleChange,
4037
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4038
- className: (_AutoGroupTilesSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().label),
4039
- children: option.label
4040
- })
4041
- }, option.value))
4042
- });
4043
- };
4044
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (AutoGroupTilesSetting);
4045
-
4046
- __webpack_async_result__();
4047
- } catch(e) { __webpack_async_result__(e); } });
4032
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4033
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4034
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4035
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4036
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4037
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4038
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(69755);
4039
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_4__);
4040
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(46230);
4041
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(74200);
4042
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64579);
4043
+ /* harmony import */ var _Board__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(8511);
4044
+ /* harmony import */ var _Dictionary__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(62166);
4045
+ /* harmony import */ var _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(40105);
4046
+ /* harmony import */ var _Rack__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(30007);
4047
+ /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(14066);
4048
+ /* harmony import */ var _Results__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(21678);
4049
+ /* harmony import */ var _Well__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(34473);
4050
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(51639);
4051
+ /* harmony import */ var _Solver_module_scss__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(90375);
4052
+ /* harmony import */ var _Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default = /*#__PURE__*/__webpack_require__.n(_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16__);
4053
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_5__, state__WEBPACK_IMPORTED_MODULE_7__, _Board__WEBPACK_IMPORTED_MODULE_8__, _Dictionary__WEBPACK_IMPORTED_MODULE_9__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__, _Rack__WEBPACK_IMPORTED_MODULE_11__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_12__, _Results__WEBPACK_IMPORTED_MODULE_13__, _components__WEBPACK_IMPORTED_MODULE_15__]);
4054
+ ([hooks__WEBPACK_IMPORTED_MODULE_5__, state__WEBPACK_IMPORTED_MODULE_7__, _Board__WEBPACK_IMPORTED_MODULE_8__, _Dictionary__WEBPACK_IMPORTED_MODULE_9__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__, _Rack__WEBPACK_IMPORTED_MODULE_11__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_12__, _Results__WEBPACK_IMPORTED_MODULE_13__, _components__WEBPACK_IMPORTED_MODULE_15__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4048
4055
 
4049
- /***/ }),
4050
4056
 
4051
- /***/ 92783:
4052
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4053
4057
 
4054
- "use strict";
4055
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4056
- /* harmony export */ "I": () => (/* binding */ NULL_VALUE)
4057
- /* harmony export */ });
4058
- const NULL_VALUE = "null";
4059
4058
 
4060
4059
 
4061
- /***/ }),
4062
4060
 
4063
- /***/ 33848:
4064
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
4065
4061
 
4066
- "use strict";
4067
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4068
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4069
- /* harmony export */ "Z": () => (/* reexport safe */ _AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__.Z)
4070
- /* harmony export */ });
4071
- /* harmony import */ var _AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20847);
4072
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__]);
4073
- _AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4074
4062
 
4075
4063
 
4076
- __webpack_async_result__();
4077
- } catch(e) { __webpack_async_result__(e); } });
4078
4064
 
4079
- /***/ }),
4080
4065
 
4081
- /***/ 85053:
4082
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4083
4066
 
4084
- "use strict";
4085
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4086
- /* harmony export */ "H": () => (/* binding */ parseValue)
4087
- /* harmony export */ });
4088
- /* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(92783);
4089
4067
 
4090
- const parseValue = (value)=>{
4091
- if (value === "left" || value === "right") {
4092
- return value;
4093
- }
4094
- if (value === _constants__WEBPACK_IMPORTED_MODULE_0__/* .NULL_VALUE */ .I) {
4095
- return null;
4096
- }
4097
- throw new Error(`"${value}" is not valid. Should be "left", "right", or "${_constants__WEBPACK_IMPORTED_MODULE_0__/* .NULL_VALUE */ .I}"`);
4098
- };
4099
4068
 
4100
4069
 
4101
- /***/ }),
4102
4070
 
4103
- /***/ 28635:
4104
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
4105
4071
 
4106
- "use strict";
4107
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4108
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4109
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4110
- /* harmony export */ });
4111
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4112
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4113
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
4114
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
4115
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64579);
4116
- /* harmony import */ var _Radio__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(84985);
4117
- /* harmony import */ var _ConfigSetting_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(61909);
4118
- /* harmony import */ var _ConfigSetting_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_ConfigSetting_module_scss__WEBPACK_IMPORTED_MODULE_5__);
4119
- /* harmony import */ var _options__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(29366);
4120
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_2__]);
4121
- state__WEBPACK_IMPORTED_MODULE_2__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4122
-
4123
-
4124
-
4125
-
4126
-
4127
-
4128
- const ConfigSetting = ({ className , disabled })=>{
4129
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
4130
- const configId = (0,state__WEBPACK_IMPORTED_MODULE_2__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_2__/* .selectConfigId */ .md);
4131
- const handleChange = (event)=>{
4132
- dispatch(state__WEBPACK_IMPORTED_MODULE_2__/* .settingsSlice.actions.changeConfigId */ .xj.actions.changeConfigId(event.target.value));
4072
+ // eslint-disable-next-line max-statements
4073
+ const Solver = ({ className , height , width , onShowResults })=>{
4074
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
4075
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTranslate */ .qM)();
4076
+ const isTouchDevice = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useIsTouchDevice */ .YQ)();
4077
+ const [bottomContainerRef, { height: bottomContainerHeight }] = (0,react_use__WEBPACK_IMPORTED_MODULE_4__.useMeasure)();
4078
+ const [resultsContainerRef, { width: resultsContainerWidth }] = (0,react_use__WEBPACK_IMPORTED_MODULE_4__.useMeasure)();
4079
+ const isLessThanXl = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useMediaQuery */ .ac)("<xl");
4080
+ const isLessThanL = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useMediaQuery */ .ac)("<l");
4081
+ const componentsSpacing = isLessThanXl ? parameters__WEBPACK_IMPORTED_MODULE_6__/* .COMPONENTS_SPACING_SMALL */ .op : parameters__WEBPACK_IMPORTED_MODULE_6__/* .COMPONENTS_SPACING */ .tr;
4082
+ const maxBoardWidth = width - resultsContainerWidth - (isLessThanL ? 0 : componentsSpacing) - 2 * componentsSpacing;
4083
+ const maxBoardHeight = Math.max(height - bottomContainerHeight, isLessThanL ? 0 : parameters__WEBPACK_IMPORTED_MODULE_6__/* .COLUMN_MIN_HEIGHT */ .z);
4084
+ const config = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectConfig */ .$o);
4085
+ const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectResultCandidate */ .Xk);
4086
+ const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectAreResultsOutdated */ .Mj);
4087
+ const allResults = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectSortedResults */ .f2);
4088
+ const error = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectSolveError */ .Rn);
4089
+ const results = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectSortedFilteredResults */ .dN);
4090
+ const [bestResult] = results || [];
4091
+ const cellWidth = (maxBoardWidth - (config.boardWidth + 1) * parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF) / config.boardWidth;
4092
+ const cellHeight = (maxBoardHeight - (config.boardHeight + 1) * parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF) / config.boardHeight;
4093
+ const cellSize = Math.min(cellWidth, cellHeight);
4094
+ const cellSizeSafe = Math.min(Math.max(cellSize, parameters__WEBPACK_IMPORTED_MODULE_6__/* .BOARD_TILE_SIZE_MIN */ .oj), parameters__WEBPACK_IMPORTED_MODULE_6__/* .BOARD_TILE_SIZE_MAX */ .Kw);
4095
+ const tileSize = Math.min((maxBoardWidth - 2 * parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF) / config.maximumCharactersCount, parameters__WEBPACK_IMPORTED_MODULE_6__/* .RACK_TILE_SIZE_MAX */ .$M);
4096
+ const boardSize = (cellSizeSafe + parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF) * Math.max(config.boardWidth, config.boardHeight) + parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF;
4097
+ const resultsHeight = boardSize - parameters__WEBPACK_IMPORTED_MODULE_6__/* .DICTIONARY_HEIGHT */ .n6 - componentsSpacing - 4 * parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF;
4098
+ const maxControlsWidth = tileSize * config.maximumCharactersCount + 2 * parameters__WEBPACK_IMPORTED_MODULE_6__/* .BORDER_WIDTH */ .YF;
4099
+ const touchCallbacks = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>({
4100
+ onClick: (result)=>{
4101
+ const isSelected = result === resultCandidate;
4102
+ if (isSelected) {
4103
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.applyResult */ ._C.actions.applyResult(result));
4104
+ } else {
4105
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(result));
4106
+ }
4107
+ }
4108
+ }), [
4109
+ dispatch,
4110
+ resultCandidate
4111
+ ]);
4112
+ const mouseCallbacks = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>({
4113
+ onBlur: ()=>{
4114
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(null));
4115
+ },
4116
+ onClick: (result)=>{
4117
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.applyResult */ ._C.actions.applyResult(result));
4118
+ },
4119
+ onFocus: (result)=>{
4120
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(result));
4121
+ },
4122
+ onMouseEnter: (result)=>{
4123
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(result));
4124
+ },
4125
+ onMouseLeave: ()=>{
4126
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(null));
4127
+ }
4128
+ }), [
4129
+ dispatch
4130
+ ]);
4131
+ const callbacks = isTouchDevice ? touchCallbacks : mouseCallbacks;
4132
+ const handleSubmit = (event)=>{
4133
+ event.preventDefault();
4134
+ if (isLessThanL) {
4135
+ onShowResults();
4136
+ }
4137
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .solveSlice.actions.submit */ .TP.actions.submit());
4133
4138
  };
4134
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4135
- className: className,
4136
- children: _options__WEBPACK_IMPORTED_MODULE_4__/* ["default"].map */ .Z.map((option)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Radio__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, {
4137
- checked: configId === option.value,
4138
- className: (_ConfigSetting_module_scss__WEBPACK_IMPORTED_MODULE_5___default().option),
4139
- disabled: disabled,
4140
- id: "configId",
4141
- name: "configId",
4142
- value: option.value,
4143
- onChange: handleChange,
4144
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4145
- className: (_ConfigSetting_module_scss__WEBPACK_IMPORTED_MODULE_5___default().label),
4146
- children: option.label
4139
+ (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
4140
+ if (bestResult) {
4141
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(bestResult));
4142
+ }
4143
+ }, [
4144
+ bestResult,
4145
+ dispatch
4146
+ ]);
4147
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4148
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().solver), className),
4149
+ children: [
4150
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4151
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().container),
4152
+ children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4153
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().content),
4154
+ children: [
4155
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("form", {
4156
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().boardContainer),
4157
+ onSubmit: handleSubmit,
4158
+ children: [
4159
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Board__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
4160
+ cellSize: cellSizeSafe,
4161
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().board)
4162
+ }),
4163
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
4164
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().submitInput),
4165
+ tabIndex: -1,
4166
+ type: "submit"
4167
+ })
4168
+ ]
4169
+ }),
4170
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4171
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().column),
4172
+ children: [
4173
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Well__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
4174
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().resultsContainer),
4175
+ ref: resultsContainerRef,
4176
+ children: resultsContainerWidth > 0 && resultsHeight > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Results__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
4177
+ callbacks: callbacks,
4178
+ height: resultsHeight,
4179
+ width: resultsContainerWidth
4180
+ })
4181
+ }),
4182
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Well__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
4183
+ children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4184
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().dictionary),
4185
+ style: {
4186
+ height: parameters__WEBPACK_IMPORTED_MODULE_6__/* .DICTIONARY_HEIGHT */ .n6
4187
+ },
4188
+ children: [
4189
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Dictionary__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
4190
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().dictionaryOutput)
4191
+ }),
4192
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_DictionaryInput__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
4193
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().dictionaryInput)
4194
+ })
4195
+ ]
4196
+ })
4197
+ })
4198
+ ]
4199
+ })
4200
+ ]
4147
4201
  })
4148
- }, option.value))
4202
+ }),
4203
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4204
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().bottomContainer),
4205
+ ref: bottomContainerRef,
4206
+ children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4207
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().bottomContent),
4208
+ children: [
4209
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("form", {
4210
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().rackContainer),
4211
+ onSubmit: handleSubmit,
4212
+ children: [
4213
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Rack__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
4214
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().rack),
4215
+ tileSize: tileSize
4216
+ }),
4217
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
4218
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().submitInput),
4219
+ tabIndex: -1,
4220
+ type: "submit"
4221
+ })
4222
+ ]
4223
+ }),
4224
+ isLessThanL && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4225
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().controls),
4226
+ style: {
4227
+ maxWidth: maxControlsWidth
4228
+ },
4229
+ children: [
4230
+ typeof error !== "undefined" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .EmptyState */ .ub, {
4231
+ variant: "error",
4232
+ onClick: onShowResults,
4233
+ children: error.message
4234
+ }),
4235
+ typeof error === "undefined" && typeof results === "undefined" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .EmptyState */ .ub, {
4236
+ variant: "info",
4237
+ onClick: onShowResults,
4238
+ children: translate("results.empty-state.uninitialized")
4239
+ }),
4240
+ typeof error === "undefined" && typeof results !== "undefined" && typeof allResults !== "undefined" && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
4241
+ children: [
4242
+ (isOutdated || !resultCandidate) && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .EmptyState */ .ub, {
4243
+ variant: "info",
4244
+ onClick: onShowResults,
4245
+ children: translate("results.empty-state.outdated")
4246
+ }),
4247
+ !isOutdated && allResults.length === 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .EmptyState */ .ub, {
4248
+ variant: "warning",
4249
+ onClick: onShowResults,
4250
+ children: translate("results.empty-state.no-results")
4251
+ }),
4252
+ !isOutdated && allResults.length > 0 && resultCandidate && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {
4253
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().resultCandidatePicker),
4254
+ onClick: onShowResults
4255
+ })
4256
+ ]
4257
+ }),
4258
+ allResults && allResults.length > 0 && !isOutdated && resultCandidate && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .ApplyButton */ .VD, {
4259
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().submit), (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().apply))
4260
+ })
4261
+ ]
4262
+ })
4263
+ ]
4264
+ })
4265
+ }),
4266
+ isTouchDevice && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_15__/* .SolveButton */ .ly, {
4267
+ className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_16___default().solve),
4268
+ onClick: handleSubmit
4269
+ })
4270
+ ]
4149
4271
  });
4150
4272
  };
4151
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ConfigSetting);
4273
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Solver);
4152
4274
 
4153
4275
  __webpack_async_result__();
4154
4276
  } catch(e) { __webpack_async_result__(e); } });
4155
4277
 
4156
4278
  /***/ }),
4157
4279
 
4158
- /***/ 53733:
4159
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
4160
-
4161
- "use strict";
4162
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4163
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4164
- /* harmony export */ "Z": () => (/* reexport safe */ _ConfigSetting__WEBPACK_IMPORTED_MODULE_0__.Z)
4165
- /* harmony export */ });
4166
- /* harmony import */ var _ConfigSetting__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(28635);
4167
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ConfigSetting__WEBPACK_IMPORTED_MODULE_0__]);
4168
- _ConfigSetting__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4169
-
4170
-
4171
- __webpack_async_result__();
4172
- } catch(e) { __webpack_async_result__(e); } });
4173
-
4174
- /***/ }),
4175
-
4176
- /***/ 29366:
4177
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4178
-
4179
- "use strict";
4180
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4181
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4182
- /* harmony export */ });
4183
- /* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(89418);
4184
- /* harmony import */ var _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__);
4185
-
4186
- const options = [
4187
- {
4188
- label: _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.scrabble.name,
4189
- value: _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.scrabble.id
4190
- },
4191
- {
4192
- label: _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.literaki.name,
4193
- value: _scrabble_solver_configs__WEBPACK_IMPORTED_MODULE_0__.literaki.id
4194
- }
4195
- ];
4196
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (options);
4197
-
4198
-
4199
- /***/ }),
4200
-
4201
- /***/ 65209:
4280
+ /***/ 43004:
4202
4281
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4203
4282
 
4204
4283
  "use strict";
@@ -4208,75 +4287,57 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4208
4287
  /* harmony export */ });
4209
4288
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4210
4289
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4211
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4212
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4213
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
4214
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
4290
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
4291
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
4292
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(55210);
4215
4293
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
4216
- /* harmony import */ var _Radio__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(84985);
4217
- /* harmony import */ var _LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(81471);
4218
- /* harmony import */ var _LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6__);
4219
- /* harmony import */ var _options__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(81691);
4220
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__]);
4221
- state__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4222
-
4294
+ /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(96753);
4295
+ /* harmony import */ var _ApplyButton_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(36456);
4296
+ /* harmony import */ var _ApplyButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_ApplyButton_module_scss__WEBPACK_IMPORTED_MODULE_5__);
4297
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__]);
4298
+ ([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4223
4299
 
4224
4300
 
4225
4301
 
4226
4302
 
4227
4303
 
4228
4304
 
4229
- const LocaleSetting = ({ className , disabled })=>{
4230
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
4231
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectLocale */ .fN);
4232
- const handleChange = (event)=>{
4233
- const newLocale = event.target.value;
4234
- dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .settingsSlice.actions.changeLocale */ .xj.actions.changeLocale(newLocale));
4305
+ const ApplyButton = ({ className })=>{
4306
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_1__.useDispatch)();
4307
+ const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectResultCandidate */ .Xk);
4308
+ const handleClick = ()=>{
4309
+ if (resultCandidate) {
4310
+ dispatch(state__WEBPACK_IMPORTED_MODULE_3__/* .resultsSlice.actions.applyResult */ ._C.actions.applyResult(resultCandidate));
4311
+ }
4235
4312
  };
4236
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4313
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
4237
4314
  className: className,
4238
- children: _options__WEBPACK_IMPORTED_MODULE_5__/* ["default"].map */ .Z.map(({ Icon , ...option })=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Radio__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
4239
- checked: locale === option.value,
4240
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().option), className, {
4241
- [(_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().checked)]: locale === option.value
4242
- }),
4243
- disabled: disabled,
4244
- id: "locale",
4245
- name: "locale",
4246
- value: option.value,
4247
- onChange: handleChange,
4248
- children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
4249
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().label), option.className),
4250
- children: [
4251
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(Icon, {
4252
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_6___default().flag), option.className)
4253
- }),
4254
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
4255
- children: option.label
4256
- })
4257
- ]
4258
- })
4259
- }, option.value))
4315
+ disabled: !resultCandidate,
4316
+ Icon: icons__WEBPACK_IMPORTED_MODULE_2__/* .Check */ .Jr,
4317
+ iconClassName: (_ApplyButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default().icon),
4318
+ type: "submit",
4319
+ variant: "primary",
4320
+ onClick: handleClick
4260
4321
  });
4261
4322
  };
4262
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (LocaleSetting);
4323
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ApplyButton);
4263
4324
 
4264
4325
  __webpack_async_result__();
4265
4326
  } catch(e) { __webpack_async_result__(e); } });
4266
4327
 
4267
4328
  /***/ }),
4268
4329
 
4269
- /***/ 51476:
4330
+ /***/ 13326:
4270
4331
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4271
4332
 
4272
4333
  "use strict";
4273
4334
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4274
4335
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4275
- /* harmony export */ "Z": () => (/* reexport safe */ _LocaleSetting__WEBPACK_IMPORTED_MODULE_0__.Z)
4336
+ /* harmony export */ "Z": () => (/* reexport safe */ _ApplyButton__WEBPACK_IMPORTED_MODULE_0__.Z)
4276
4337
  /* harmony export */ });
4277
- /* harmony import */ var _LocaleSetting__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(65209);
4278
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_LocaleSetting__WEBPACK_IMPORTED_MODULE_0__]);
4279
- _LocaleSetting__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4338
+ /* harmony import */ var _ApplyButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(43004);
4339
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ApplyButton__WEBPACK_IMPORTED_MODULE_0__]);
4340
+ _ApplyButton__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4280
4341
 
4281
4342
 
4282
4343
  __webpack_async_result__();
@@ -4284,120 +4345,68 @@ __webpack_async_result__();
4284
4345
 
4285
4346
  /***/ }),
4286
4347
 
4287
- /***/ 81691:
4348
+ /***/ 43939:
4288
4349
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4289
4350
 
4290
4351
  "use strict";
4291
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4292
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4293
- /* harmony export */ });
4294
- /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(34046);
4295
- /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__);
4296
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12374);
4297
- /* harmony import */ var _LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(81471);
4298
- /* harmony import */ var _LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2__);
4299
-
4300
-
4301
-
4302
- const options = [
4303
- {
4304
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().gb),
4305
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagGb */ .eP,
4306
- label: "English (GB)",
4307
- name: "English (GB)",
4308
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.EN_GB
4309
- },
4310
- {
4311
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().us),
4312
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagUs */ .YK,
4313
- label: "English (US)",
4314
- name: "English (US)",
4315
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.EN_US
4316
- },
4317
- {
4318
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().fa),
4319
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagFa */ .$M,
4320
- label: "فارسی",
4321
- name: "Persian",
4322
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.FA_IR
4323
- },
4324
- {
4325
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().fr),
4326
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagFr */ .OV,
4327
- label: "Fran\xe7ais",
4328
- name: "French",
4329
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.FR_FR
4330
- },
4331
- {
4332
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().de),
4333
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagDe */ .rV,
4334
- label: "Deutsch",
4335
- name: "German",
4336
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.DE_DE
4337
- },
4338
- {
4339
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().pl),
4340
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagPl */ .fd,
4341
- label: "Polski",
4342
- name: "Polish",
4343
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.PL_PL
4344
- },
4345
- {
4346
- className: (_LocaleSetting_module_scss__WEBPACK_IMPORTED_MODULE_2___default().es),
4347
- Icon: icons__WEBPACK_IMPORTED_MODULE_1__/* .FlagEs */ .d,
4348
- label: "Espa\xf1ol",
4349
- name: "Spanish",
4350
- value: _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_0__.Locale.ES_ES
4351
- }
4352
- ].sort((a, b)=>a.name.localeCompare(b.name));
4353
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (options);
4354
-
4355
-
4356
- /***/ }),
4357
-
4358
- /***/ 63840:
4359
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
4360
-
4361
- "use strict";
4362
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4363
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4364
- /* harmony export */ "DG": () => (/* reexport safe */ _ConfigSetting__WEBPACK_IMPORTED_MODULE_1__.Z),
4365
- /* harmony export */ "YR": () => (/* reexport safe */ _LocaleSetting__WEBPACK_IMPORTED_MODULE_2__.Z),
4366
- /* harmony export */ "gy": () => (/* reexport safe */ _AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__.Z)
4367
- /* harmony export */ });
4368
- /* harmony import */ var _AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33848);
4369
- /* harmony import */ var _ConfigSetting__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(53733);
4370
- /* harmony import */ var _LocaleSetting__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(51476);
4371
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__, _ConfigSetting__WEBPACK_IMPORTED_MODULE_1__, _LocaleSetting__WEBPACK_IMPORTED_MODULE_2__]);
4372
- ([_AutoGroupTilesSetting__WEBPACK_IMPORTED_MODULE_0__, _ConfigSetting__WEBPACK_IMPORTED_MODULE_1__, _LocaleSetting__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4373
4352
 
4353
+ // EXPORTS
4354
+ __webpack_require__.d(__webpack_exports__, {
4355
+ "Z": () => (/* reexport */ EmptyState_EmptyState)
4356
+ });
4374
4357
 
4358
+ // EXTERNAL MODULE: external "react/jsx-runtime"
4359
+ var jsx_runtime_ = __webpack_require__(20997);
4360
+ // EXTERNAL MODULE: external "classnames"
4361
+ var external_classnames_ = __webpack_require__(59003);
4362
+ var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
4363
+ // EXTERNAL MODULE: ./src/icons/index.ts + 35 modules
4364
+ var icons = __webpack_require__(55210);
4365
+ // EXTERNAL MODULE: ./src/components/Solver/components/EmptyState/EmptyState.module.scss
4366
+ var EmptyState_module = __webpack_require__(74048);
4367
+ var EmptyState_module_default = /*#__PURE__*/__webpack_require__.n(EmptyState_module);
4368
+ ;// CONCATENATED MODULE: ./src/components/Solver/components/EmptyState/EmptyState.tsx
4375
4369
 
4376
4370
 
4377
- __webpack_async_result__();
4378
- } catch(e) { __webpack_async_result__(e); } });
4379
4371
 
4380
- /***/ }),
4381
4372
 
4382
- /***/ 10831:
4383
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
4373
+ const ICON_PER_TYPE = {
4374
+ error: icons/* CrossCircleFill */.Gw,
4375
+ info: icons/* InfoCircleFill */.UT,
4376
+ warning: icons/* ExclamationTriangleFill */.x_
4377
+ };
4378
+ const EmptyState = ({ children , className , variant , ...props })=>{
4379
+ const Icon = ICON_PER_TYPE[variant];
4380
+ return /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
4381
+ className: external_classnames_default()((EmptyState_module_default()).emptyState, className, {
4382
+ [(EmptyState_module_default()).error]: variant === "error",
4383
+ [(EmptyState_module_default()).info]: variant === "info",
4384
+ [(EmptyState_module_default()).warning]: variant === "warning"
4385
+ }),
4386
+ ...props,
4387
+ children: [
4388
+ /*#__PURE__*/ jsx_runtime_.jsx("div", {
4389
+ className: (EmptyState_module_default()).iconContainer,
4390
+ children: /*#__PURE__*/ jsx_runtime_.jsx(Icon, {
4391
+ className: (EmptyState_module_default()).icon
4392
+ })
4393
+ }),
4394
+ /*#__PURE__*/ jsx_runtime_.jsx("div", {
4395
+ className: (EmptyState_module_default()).content,
4396
+ children: children
4397
+ })
4398
+ ]
4399
+ });
4400
+ };
4401
+ /* harmony default export */ const EmptyState_EmptyState = (EmptyState);
4384
4402
 
4385
- "use strict";
4386
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4387
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4388
- /* harmony export */ "Z": () => (/* reexport safe */ _Settings__WEBPACK_IMPORTED_MODULE_0__.Z)
4389
- /* harmony export */ });
4390
- /* harmony import */ var _Settings__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(28300);
4391
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Settings__WEBPACK_IMPORTED_MODULE_0__]);
4392
- _Settings__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4403
+ ;// CONCATENATED MODULE: ./src/components/Solver/components/EmptyState/index.ts
4393
4404
 
4394
4405
 
4395
- __webpack_async_result__();
4396
- } catch(e) { __webpack_async_result__(e); } });
4397
4406
 
4398
4407
  /***/ }),
4399
4408
 
4400
- /***/ 29080:
4409
+ /***/ 96662:
4401
4410
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4402
4411
 
4403
4412
  "use strict";
@@ -4409,151 +4418,62 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4409
4418
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4410
4419
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4411
4420
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4412
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4413
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4414
- /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19931);
4415
- /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_modal__WEBPACK_IMPORTED_MODULE_3__);
4416
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(69755);
4417
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_4__);
4418
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(12374);
4419
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(74200);
4420
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64579);
4421
- /* harmony import */ var _SquareButton__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(86889);
4422
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(99935);
4423
- /* harmony import */ var _Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(63936);
4424
- /* harmony import */ var _Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10__);
4425
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_7__, _SquareButton__WEBPACK_IMPORTED_MODULE_8__]);
4426
- ([state__WEBPACK_IMPORTED_MODULE_7__, _SquareButton__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4427
-
4428
-
4429
-
4430
-
4431
-
4432
-
4433
-
4434
-
4435
-
4436
-
4437
-
4438
- const Sidebar = ({ children , className , isOpen , title , onClose })=>{
4439
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTranslate */ .qM)();
4440
- const [shouldReturnFocusAfterClose, setShouldReturnFocusAfterClose] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(true);
4441
- (0,react_use__WEBPACK_IMPORTED_MODULE_4__.useKey)("Escape", ()=>{
4442
- setShouldReturnFocusAfterClose(false);
4443
- onClose();
4444
- }, undefined, [
4445
- onClose
4446
- ]);
4447
- (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
4448
- if (isOpen) {
4449
- setShouldReturnFocusAfterClose(true);
4450
- }
4451
- }, [
4452
- isOpen
4453
- ]);
4454
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx((react_modal__WEBPACK_IMPORTED_MODULE_3___default()), {
4455
- className: {
4456
- afterOpen: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().afterOpen),
4457
- base: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().modal),
4458
- beforeClose: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().beforeClose)
4459
- },
4460
- closeTimeoutMS: parameters__WEBPACK_IMPORTED_MODULE_6__/* .TRANSITION_DURATION_LONG */ .MA,
4461
- contentLabel: title,
4462
- isOpen: isOpen,
4463
- overlayClassName: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().overlay),
4464
- shouldReturnFocusAfterClose: shouldReturnFocusAfterClose,
4465
- onRequestClose: onClose,
4466
- children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4467
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().sidebar), className),
4468
- children: [
4469
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4470
- className: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().header),
4471
- children: [
4472
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("h1", {
4473
- className: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().title),
4474
- children: title
4475
- }),
4476
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_SquareButton__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
4477
- className: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().closeButton),
4478
- Icon: icons__WEBPACK_IMPORTED_MODULE_5__/* .CrossFill */ .ME,
4479
- tooltip: translate("common.close"),
4480
- onClick: onClose
4481
- })
4482
- ]
4483
- }),
4484
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4485
- className: (_Sidebar_module_scss__WEBPACK_IMPORTED_MODULE_10___default().content),
4486
- children: children
4487
- })
4488
- ]
4489
- })
4490
- });
4491
- };
4492
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Object.assign(Sidebar, {
4493
- Section: _components__WEBPACK_IMPORTED_MODULE_9__/* .Section */ .$
4494
- }));
4421
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
4422
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
4423
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55210);
4424
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(95784);
4425
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64579);
4426
+ /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(96753);
4427
+ /* harmony import */ var _SolveButton_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(61077);
4428
+ /* harmony import */ var _SolveButton_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_SolveButton_module_scss__WEBPACK_IMPORTED_MODULE_7__);
4429
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__]);
4430
+ ([state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4495
4431
 
4496
- __webpack_async_result__();
4497
- } catch(e) { __webpack_async_result__(e); } });
4498
4432
 
4499
- /***/ }),
4500
4433
 
4501
- /***/ 99935:
4502
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4503
4434
 
4504
- "use strict";
4505
4435
 
4506
- // EXPORTS
4507
- __webpack_require__.d(__webpack_exports__, {
4508
- "$": () => (/* reexport */ Section_Section)
4509
- });
4510
4436
 
4511
- // EXTERNAL MODULE: external "react/jsx-runtime"
4512
- var jsx_runtime_ = __webpack_require__(20997);
4513
- // EXTERNAL MODULE: external "classnames"
4514
- var external_classnames_ = __webpack_require__(59003);
4515
- var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
4516
- // EXTERNAL MODULE: ./src/components/Sidebar/components/Section/Section.module.scss
4517
- var Section_module = __webpack_require__(19812);
4518
- var Section_module_default = /*#__PURE__*/__webpack_require__.n(Section_module);
4519
- ;// CONCATENATED MODULE: ./src/components/Sidebar/components/Section/Section.tsx
4520
4437
 
4521
4438
 
4522
-
4523
- const Section = ({ children , className , title })=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)("section", {
4524
- className: external_classnames_default()((Section_module_default()).section, className),
4525
- children: [
4526
- /*#__PURE__*/ jsx_runtime_.jsx("h2", {
4527
- className: (Section_module_default()).heading,
4528
- children: title
4529
- }),
4530
- /*#__PURE__*/ jsx_runtime_.jsx("div", {
4531
- children: children
4532
- })
4533
- ]
4439
+ const SolveButton = ({ className , onClick =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT })=>{
4440
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
4441
+ const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectIsLoading */ .xU);
4442
+ const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
4443
+ const rack = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectRack */ .QB);
4444
+ const hasTiles = rack.some((tile)=>tile !== null);
4445
+ const handleClick = (event)=>{
4446
+ dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .solveSlice.actions.submit */ .TP.actions.submit());
4447
+ onClick(event);
4448
+ };
4449
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
4450
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_SolveButton_module_scss__WEBPACK_IMPORTED_MODULE_7___default().solveButton), className),
4451
+ disabled: isLoading || !isOutdated || !hasTiles,
4452
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Search */ .HN,
4453
+ iconClassName: (_SolveButton_module_scss__WEBPACK_IMPORTED_MODULE_7___default().icon),
4454
+ type: "submit",
4455
+ variant: "primary",
4456
+ onClick: handleClick
4534
4457
  });
4535
- /* harmony default export */ const Section_Section = (Section);
4536
-
4537
- ;// CONCATENATED MODULE: ./src/components/Sidebar/components/Section/index.ts
4538
-
4539
-
4540
- ;// CONCATENATED MODULE: ./src/components/Sidebar/components/index.ts
4541
-
4458
+ };
4459
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (SolveButton);
4542
4460
 
4461
+ __webpack_async_result__();
4462
+ } catch(e) { __webpack_async_result__(e); } });
4543
4463
 
4544
4464
  /***/ }),
4545
4465
 
4546
- /***/ 81858:
4466
+ /***/ 89797:
4547
4467
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4548
4468
 
4549
4469
  "use strict";
4550
4470
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4551
4471
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4552
- /* harmony export */ "Z": () => (/* reexport safe */ _Sidebar__WEBPACK_IMPORTED_MODULE_0__.Z)
4472
+ /* harmony export */ "Z": () => (/* reexport safe */ _SolveButton__WEBPACK_IMPORTED_MODULE_0__.Z)
4553
4473
  /* harmony export */ });
4554
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29080);
4555
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Sidebar__WEBPACK_IMPORTED_MODULE_0__]);
4556
- _Sidebar__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4474
+ /* harmony import */ var _SolveButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(96662);
4475
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_SolveButton__WEBPACK_IMPORTED_MODULE_0__]);
4476
+ _SolveButton__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4557
4477
 
4558
4478
 
4559
4479
  __webpack_async_result__();
@@ -4561,143 +4481,25 @@ __webpack_async_result__();
4561
4481
 
4562
4482
  /***/ }),
4563
4483
 
4564
- /***/ 82306:
4484
+ /***/ 51639:
4565
4485
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4566
4486
 
4567
4487
  "use strict";
4568
4488
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4569
4489
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4570
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4490
+ /* harmony export */ "VD": () => (/* reexport safe */ _ApplyButton__WEBPACK_IMPORTED_MODULE_0__.Z),
4491
+ /* harmony export */ "ly": () => (/* reexport safe */ _SolveButton__WEBPACK_IMPORTED_MODULE_2__.Z),
4492
+ /* harmony export */ "ub": () => (/* reexport safe */ _EmptyState__WEBPACK_IMPORTED_MODULE_1__.Z)
4571
4493
  /* harmony export */ });
4572
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4573
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4574
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4575
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4576
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
4577
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
4578
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(69755);
4579
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_3__);
4580
- /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(46230);
4581
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(95784);
4582
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(74200);
4583
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64579);
4584
- /* harmony import */ var _Board__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(8511);
4585
- /* harmony import */ var _Dictionary__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(62166);
4586
- /* harmony import */ var _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(40105);
4587
- /* harmony import */ var _Rack__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(30007);
4588
- /* harmony import */ var _Results__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(21678);
4589
- /* harmony import */ var _Well__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(34473);
4590
- /* harmony import */ var _Solver_module_scss__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(90375);
4591
- /* harmony import */ var _Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default = /*#__PURE__*/__webpack_require__.n(_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14__);
4592
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_7__, _Board__WEBPACK_IMPORTED_MODULE_8__, _Dictionary__WEBPACK_IMPORTED_MODULE_9__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__, _Rack__WEBPACK_IMPORTED_MODULE_11__, _Results__WEBPACK_IMPORTED_MODULE_12__]);
4593
- ([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_7__, _Board__WEBPACK_IMPORTED_MODULE_8__, _Dictionary__WEBPACK_IMPORTED_MODULE_9__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_10__, _Rack__WEBPACK_IMPORTED_MODULE_11__, _Results__WEBPACK_IMPORTED_MODULE_12__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4594
-
4595
-
4596
-
4597
-
4598
-
4599
-
4600
-
4601
-
4494
+ /* harmony import */ var _ApplyButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(13326);
4495
+ /* harmony import */ var _EmptyState__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(43939);
4496
+ /* harmony import */ var _SolveButton__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(89797);
4497
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ApplyButton__WEBPACK_IMPORTED_MODULE_0__, _SolveButton__WEBPACK_IMPORTED_MODULE_2__]);
4498
+ ([_ApplyButton__WEBPACK_IMPORTED_MODULE_0__, _SolveButton__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4602
4499
 
4603
4500
 
4604
4501
 
4605
4502
 
4606
-
4607
-
4608
-
4609
- const Solver = ({ className })=>{
4610
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
4611
- const isTablet = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useIsTablet */ .Av)();
4612
- const [boardRef, { height: boardHeight }] = (0,react_use__WEBPACK_IMPORTED_MODULE_3__.useMeasure)();
4613
- const [contentRef, { height: contentHeight , width: contentWidth }] = (0,react_use__WEBPACK_IMPORTED_MODULE_3__.useMeasure)();
4614
- const [resultsContainerRef, { height: resultsContainerHeight , width: resultsContainerWidth }] = (0,react_use__WEBPACK_IMPORTED_MODULE_3__.useMeasure)();
4615
- const config = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectConfig */ .$o);
4616
- const cellSize = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .getCellSize */ .Dz)(config, contentWidth - resultsContainerWidth, contentHeight);
4617
- const componentsSpacing = isTablet ? parameters__WEBPACK_IMPORTED_MODULE_6__/* .COMPONENTS_SPACING_MOBILE */ .Sg : parameters__WEBPACK_IMPORTED_MODULE_6__/* .COMPONENTS_SPACING */ .tr;
4618
- const resultsHeight = boardHeight - parameters__WEBPACK_IMPORTED_MODULE_6__/* .DICTIONARY_HEIGHT */ .n6 - componentsSpacing;
4619
- const handleSubmit = (event)=>{
4620
- event.preventDefault();
4621
- dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .solveSlice.actions.submit */ .TP.actions.submit());
4622
- };
4623
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4624
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().solver), className),
4625
- children: [
4626
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4627
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().contentWrapper),
4628
- children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4629
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().content),
4630
- ref: contentRef,
4631
- children: [
4632
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("form", {
4633
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().boardContainer),
4634
- onSubmit: handleSubmit,
4635
- children: [
4636
- contentWidth > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Board__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
4637
- cellSize: cellSize,
4638
- innerRef: boardRef
4639
- }),
4640
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
4641
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().submitInput),
4642
- tabIndex: -1,
4643
- type: "submit"
4644
- })
4645
- ]
4646
- }),
4647
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4648
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().sidebar),
4649
- style: {
4650
- height: boardHeight + 1
4651
- },
4652
- children: [
4653
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Well__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
4654
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().resultsContainer),
4655
- ref: resultsContainerRef,
4656
- children: resultsContainerWidth > 0 && resultsContainerHeight > 0 && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Results__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z, {
4657
- height: resultsHeight,
4658
- width: resultsContainerWidth
4659
- })
4660
- }),
4661
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Well__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
4662
- children: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4663
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().dictionary),
4664
- style: {
4665
- height: parameters__WEBPACK_IMPORTED_MODULE_6__/* .DICTIONARY_HEIGHT */ .n6
4666
- },
4667
- children: [
4668
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Dictionary__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
4669
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().dictionaryOutput)
4670
- }),
4671
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_DictionaryInput__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
4672
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().dictionaryInput)
4673
- })
4674
- ]
4675
- })
4676
- })
4677
- ]
4678
- })
4679
- ]
4680
- })
4681
- }),
4682
- /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("form", {
4683
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().rackContainer),
4684
- onSubmit: handleSubmit,
4685
- children: [
4686
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Rack__WEBPACK_IMPORTED_MODULE_11__/* ["default"] */ .Z, {
4687
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().rack)
4688
- }),
4689
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
4690
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_14___default().submitInput),
4691
- tabIndex: -1,
4692
- type: "submit"
4693
- })
4694
- ]
4695
- })
4696
- ]
4697
- });
4698
- };
4699
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Solver);
4700
-
4701
4503
  __webpack_async_result__();
4702
4504
  } catch(e) { __webpack_async_result__(e); } });
4703
4505
 
@@ -4721,14 +4523,14 @@ __webpack_async_result__();
4721
4523
 
4722
4524
  /***/ }),
4723
4525
 
4724
- /***/ 83790:
4526
+ /***/ 14676:
4725
4527
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
4726
4528
 
4727
4529
  "use strict";
4728
4530
 
4729
4531
  // EXPORTS
4730
4532
  __webpack_require__.d(__webpack_exports__, {
4731
- "Z": () => (/* reexport */ Splash_Splash)
4533
+ "Z": () => (/* reexport */ SplashScreen_SplashScreen)
4732
4534
  });
4733
4535
 
4734
4536
  // EXTERNAL MODULE: external "react/jsx-runtime"
@@ -4736,45 +4538,24 @@ var jsx_runtime_ = __webpack_require__(20997);
4736
4538
  // EXTERNAL MODULE: external "classnames"
4737
4539
  var external_classnames_ = __webpack_require__(59003);
4738
4540
  var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
4739
- // EXTERNAL MODULE: ./src/components/Logo/index.ts + 1 modules
4740
- var Logo = __webpack_require__(2622);
4741
- // EXTERNAL MODULE: ./src/components/Screen/index.ts + 1 modules
4742
- var Screen = __webpack_require__(32359);
4743
- // EXTERNAL MODULE: ./src/components/Splash/Splash.module.scss
4744
- var Splash_module = __webpack_require__(41798);
4745
- var Splash_module_default = /*#__PURE__*/__webpack_require__.n(Splash_module);
4746
- ;// CONCATENATED MODULE: ./src/components/Splash/Splash.tsx
4747
-
4748
-
4541
+ // EXTERNAL MODULE: ./src/components/SplashScreen/SplashScreen.module.scss
4542
+ var SplashScreen_module = __webpack_require__(3713);
4543
+ var SplashScreen_module_default = /*#__PURE__*/__webpack_require__.n(SplashScreen_module);
4544
+ ;// CONCATENATED MODULE: ./src/components/SplashScreen/SplashScreen.tsx
4749
4545
 
4750
4546
 
4751
4547
 
4752
- const Splash = ({ className , forceShow , onAnimationEnd })=>/*#__PURE__*/ (0,jsx_runtime_.jsxs)(Screen/* default */.Z, {
4753
- className: external_classnames_default()((Splash_module_default()).splash, className, {
4754
- [(Splash_module_default()).animated]: !forceShow
4755
- }),
4548
+ const SplashScreen = ({ children , className , contentClassName , onAnimationEnd })=>/*#__PURE__*/ jsx_runtime_.jsx("div", {
4549
+ className: external_classnames_default()((SplashScreen_module_default()).splashScreen, className),
4756
4550
  onAnimationEnd: onAnimationEnd,
4757
- children: [
4758
- /*#__PURE__*/ (0,jsx_runtime_.jsxs)("div", {
4759
- className: (Splash_module_default()).logos,
4760
- children: [
4761
- /*#__PURE__*/ jsx_runtime_.jsx(Logo/* default */.Z, {
4762
- className: (Splash_module_default()).logoGrayscale
4763
- }),
4764
- /*#__PURE__*/ jsx_runtime_.jsx(Logo/* default */.Z, {
4765
- className: (Splash_module_default()).logoColor
4766
- })
4767
- ]
4768
- }),
4769
- /*#__PURE__*/ jsx_runtime_.jsx("h1", {
4770
- className: (Splash_module_default()).author,
4771
- children: "by Kamil Mielnik"
4772
- })
4773
- ]
4551
+ children: /*#__PURE__*/ jsx_runtime_.jsx("div", {
4552
+ className: external_classnames_default()((SplashScreen_module_default()).content, contentClassName),
4553
+ children: children
4554
+ })
4774
4555
  });
4775
- /* harmony default export */ const Splash_Splash = (Splash);
4556
+ /* harmony default export */ const SplashScreen_SplashScreen = (SplashScreen);
4776
4557
 
4777
- ;// CONCATENATED MODULE: ./src/components/Splash/index.ts
4558
+ ;// CONCATENATED MODULE: ./src/components/SplashScreen/index.ts
4778
4559
 
4779
4560
 
4780
4561
 
@@ -5004,7 +4785,7 @@ const Tile = ({ autoFocus , className , character ="" , disabled , highlighted ,
5004
4785
  }), [
5005
4786
  tileSize
5006
4787
  ]);
5007
- const inputStyle = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>({
4788
+ const characterStyle = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>({
5008
4789
  fontSize: tileFontSize
5009
4790
  }), [
5010
4791
  tileFontSize
@@ -5036,11 +4817,11 @@ const Tile = ({ autoFocus , className , character ="" , disabled , highlighted ,
5036
4817
  autoFocus: autoFocus,
5037
4818
  canShowPoints: canShowPoints,
5038
4819
  character: character,
4820
+ characterStyle: characterStyle,
5039
4821
  className: className,
5040
4822
  disabled: disabled,
5041
4823
  highlighted: highlighted,
5042
4824
  inputRef: inputRef,
5043
- inputStyle: inputStyle,
5044
4825
  isBlank: isBlank,
5045
4826
  isValid: isValid,
5046
4827
  placeholder: placeholder,
@@ -5075,7 +4856,7 @@ __webpack_async_result__();
5075
4856
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5076
4857
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
5077
4858
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
5078
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(12374);
4859
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(55210);
5079
4860
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(68716);
5080
4861
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__);
5081
4862
 
@@ -5083,9 +4864,11 @@ __webpack_async_result__();
5083
4864
 
5084
4865
 
5085
4866
 
5086
- const TilePure = ({ autoFocus , canShowPoints , character , className , disabled , highlighted , inputRef , inputStyle , isBlank , isValid , placeholder , points , pointsFormatted , pointsStyle , raised , style , tabIndex , onChange , onFocus , onKeyDown })=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
4867
+ const TilePure = ({ autoFocus , canShowPoints , character , characterStyle , className , disabled , highlighted , inputRef , isBlank , isValid , placeholder , points , pointsFormatted , pointsStyle , raised , style , tabIndex , onChange , onFocus , onKeyDown })=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5087
4868
  className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().tile), className, {
5088
4869
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().blank)]: isBlank,
4870
+ [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().disabled)]: disabled,
4871
+ [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().empty)]: !character,
5089
4872
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().highlighted)]: highlighted,
5090
4873
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().invalid)]: !isValid,
5091
4874
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().raised)]: raised,
@@ -5102,18 +4885,22 @@ const TilePure = ({ autoFocus , canShowPoints , character , className , disabled
5102
4885
  autoComplete: "off",
5103
4886
  autoCorrect: "off",
5104
4887
  autoFocus: autoFocus,
5105
- className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().character),
4888
+ className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().input),
5106
4889
  disabled: disabled,
5107
- placeholder: placeholder,
5108
4890
  ref: inputRef,
5109
4891
  spellCheck: false,
5110
- style: inputStyle,
5111
4892
  tabIndex: tabIndex,
5112
4893
  value: character || "",
5113
4894
  onChange: onChange,
5114
4895
  onFocus: onFocus,
5115
4896
  onKeyDown: onKeyDown
5116
4897
  }),
4898
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4899
+ className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().character),
4900
+ style: characterStyle,
4901
+ tabIndex: -1,
4902
+ children: character || placeholder
4903
+ }),
5117
4904
  canShowPoints && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
5118
4905
  className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().points),
5119
4906
  style: pointsStyle,
@@ -5380,119 +5167,6 @@ const Well = /*#__PURE__*/ (0,external_react_.forwardRef)(({ children , classNam
5380
5167
 
5381
5168
 
5382
5169
 
5383
- /***/ }),
5384
-
5385
- /***/ 62047:
5386
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5387
-
5388
- "use strict";
5389
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5390
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5391
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
5392
- /* harmony export */ });
5393
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
5394
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
5395
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
5396
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5397
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12374);
5398
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(64579);
5399
- /* harmony import */ var _Badge__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(47743);
5400
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(81858);
5401
- /* harmony import */ var _Words_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(23758);
5402
- /* harmony import */ var _Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Words_module_scss__WEBPACK_IMPORTED_MODULE_6__);
5403
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Sidebar__WEBPACK_IMPORTED_MODULE_5__]);
5404
- ([state__WEBPACK_IMPORTED_MODULE_3__, _Sidebar__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5405
-
5406
-
5407
-
5408
-
5409
-
5410
-
5411
-
5412
- const Words = ({ className , isOpen , onClose })=>{
5413
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTranslate */ .qM)();
5414
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectLocale */ .fN);
5415
- const { invalidWords , validWords } = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectVerify */ .HM);
5416
- return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_Sidebar__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
5417
- className: className,
5418
- isOpen: isOpen,
5419
- title: translate("words"),
5420
- onClose: onClose,
5421
- children: [
5422
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_5__/* ["default"].Section */ .Z.Section, {
5423
- title: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
5424
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().title),
5425
- children: [
5426
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
5427
- children: translate("words.invalid")
5428
- }),
5429
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Badge__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
5430
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().badge),
5431
- children: invalidWords.length.toLocaleString(locale)
5432
- })
5433
- ]
5434
- }),
5435
- children: invalidWords.map((word, index)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5436
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().word),
5437
- children: [
5438
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .Cross */ .X1, {
5439
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().icon), (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().invalid))
5440
- }),
5441
- " ",
5442
- word
5443
- ]
5444
- }, index))
5445
- }),
5446
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Sidebar__WEBPACK_IMPORTED_MODULE_5__/* ["default"].Section */ .Z.Section, {
5447
- title: /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("span", {
5448
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().title),
5449
- children: [
5450
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
5451
- children: translate("words.valid")
5452
- }),
5453
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Badge__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
5454
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().badge),
5455
- children: validWords.length.toLocaleString(locale)
5456
- })
5457
- ]
5458
- }),
5459
- children: validWords.map((word, index)=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5460
- className: (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().word),
5461
- children: [
5462
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_2__/* .Check */ .Jr, {
5463
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().icon), (_Words_module_scss__WEBPACK_IMPORTED_MODULE_6___default().valid))
5464
- }),
5465
- " ",
5466
- word
5467
- ]
5468
- }, index))
5469
- })
5470
- ]
5471
- });
5472
- };
5473
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Words);
5474
-
5475
- __webpack_async_result__();
5476
- } catch(e) { __webpack_async_result__(e); } });
5477
-
5478
- /***/ }),
5479
-
5480
- /***/ 96872:
5481
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5482
-
5483
- "use strict";
5484
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5485
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5486
- /* harmony export */ "Z": () => (/* reexport safe */ _Words__WEBPACK_IMPORTED_MODULE_0__.Z)
5487
- /* harmony export */ });
5488
- /* harmony import */ var _Words__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(62047);
5489
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Words__WEBPACK_IMPORTED_MODULE_0__]);
5490
- _Words__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
5491
-
5492
-
5493
- __webpack_async_result__();
5494
- } catch(e) { __webpack_async_result__(e); } });
5495
-
5496
5170
  /***/ }),
5497
5171
 
5498
5172
  /***/ 19176:
@@ -5501,16 +5175,22 @@ __webpack_async_result__();
5501
5175
  "use strict";
5502
5176
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5503
5177
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5178
+ /* harmony export */ "Ct": () => (/* reexport safe */ _Badge__WEBPACK_IMPORTED_MODULE_0__.Z),
5179
+ /* harmony export */ "Ex": () => (/* reexport safe */ _Progress__WEBPACK_IMPORTED_MODULE_15__.Z),
5504
5180
  /* harmony export */ "ME": () => (/* reexport safe */ _Solver__WEBPACK_IMPORTED_MODULE_22__.Z),
5505
- /* harmony export */ "Nq": () => (/* reexport safe */ _Words__WEBPACK_IMPORTED_MODULE_30__.Z),
5506
- /* harmony export */ "TR": () => (/* reexport safe */ _Logo__WEBPACK_IMPORTED_MODULE_10__.Z),
5507
- /* harmony export */ "TX": () => (/* reexport safe */ _NotFound__WEBPACK_IMPORTED_MODULE_12__.Z),
5508
- /* harmony export */ "Zr": () => (/* reexport safe */ _Settings__WEBPACK_IMPORTED_MODULE_20__.Z),
5509
- /* harmony export */ "_m": () => (/* reexport safe */ _NavButtons__WEBPACK_IMPORTED_MODULE_11__.Z),
5510
- /* harmony export */ "d4": () => (/* reexport safe */ _KeyMap__WEBPACK_IMPORTED_MODULE_8__.Z),
5511
- /* harmony export */ "fs": () => (/* reexport safe */ _RemainingTiles__WEBPACK_IMPORTED_MODULE_16__.Z),
5512
- /* harmony export */ "hX": () => (/* reexport safe */ _Splash__WEBPACK_IMPORTED_MODULE_23__.Z),
5513
- /* harmony export */ "uz": () => (/* reexport safe */ _SvgFontFix__WEBPACK_IMPORTED_MODULE_26__.Z)
5181
+ /* harmony export */ "TR": () => (/* reexport safe */ _Logo__WEBPACK_IMPORTED_MODULE_9__.Z),
5182
+ /* harmony export */ "TX": () => (/* reexport safe */ _NotFound__WEBPACK_IMPORTED_MODULE_13__.Z),
5183
+ /* harmony export */ "Y8": () => (/* reexport safe */ _Radio__WEBPACK_IMPORTED_MODULE_17__.Z),
5184
+ /* harmony export */ "_m": () => (/* reexport safe */ _NavButtons__WEBPACK_IMPORTED_MODULE_12__.Z),
5185
+ /* harmony export */ "hL": () => (/* reexport safe */ _LogoSplashScreen__WEBPACK_IMPORTED_MODULE_10__.Z),
5186
+ /* harmony export */ "n9": () => (/* reexport safe */ _Tile__WEBPACK_IMPORTED_MODULE_27__.Z),
5187
+ /* harmony export */ "ne": () => (/* reexport safe */ _Sizer__WEBPACK_IMPORTED_MODULE_21__.Z),
5188
+ /* harmony export */ "sr": () => (/* reexport safe */ _Key__WEBPACK_IMPORTED_MODULE_7__.Z),
5189
+ /* harmony export */ "tW": () => (/* reexport safe */ _Well__WEBPACK_IMPORTED_MODULE_29__.Z),
5190
+ /* harmony export */ "u9": () => (/* reexport safe */ _Results__WEBPACK_IMPORTED_MODULE_19__.Z),
5191
+ /* harmony export */ "u_": () => (/* reexport safe */ _Modal__WEBPACK_IMPORTED_MODULE_11__.Z),
5192
+ /* harmony export */ "uz": () => (/* reexport safe */ _SvgFontFix__WEBPACK_IMPORTED_MODULE_26__.Z),
5193
+ /* harmony export */ "zx": () => (/* reexport safe */ _Button__WEBPACK_IMPORTED_MODULE_2__.Z)
5514
5194
  /* harmony export */ });
5515
5195
  /* harmony import */ var _Badge__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(47743);
5516
5196
  /* harmony import */ var _Board__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8511);
@@ -5520,32 +5200,30 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5520
5200
  /* harmony import */ var _DictionaryInput__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(40105);
5521
5201
  /* harmony import */ var _EmptyState__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(18681);
5522
5202
  /* harmony import */ var _Key__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(41992);
5523
- /* harmony import */ var _KeyMap__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(72467);
5524
- /* harmony import */ var _Loading__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(84198);
5525
- /* harmony import */ var _Logo__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(2622);
5526
- /* harmony import */ var _NavButtons__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(54723);
5527
- /* harmony import */ var _NotFound__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(9527);
5528
- /* harmony import */ var _PlainTiles__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(31773);
5529
- /* harmony import */ var _Rack__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(30007);
5530
- /* harmony import */ var _Radio__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(84985);
5531
- /* harmony import */ var _RemainingTiles__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(71524);
5532
- /* harmony import */ var _Results__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(21678);
5533
- /* harmony import */ var _ResultsInput__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(92833);
5534
- /* harmony import */ var _Screen__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(32359);
5535
- /* harmony import */ var _Settings__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(10831);
5536
- /* harmony import */ var _Sidebar__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(81858);
5203
+ /* harmony import */ var _Loading__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(84198);
5204
+ /* harmony import */ var _Logo__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(2622);
5205
+ /* harmony import */ var _LogoSplashScreen__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(78395);
5206
+ /* harmony import */ var _Modal__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(85906);
5207
+ /* harmony import */ var _NavButtons__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(54723);
5208
+ /* harmony import */ var _NotFound__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(9527);
5209
+ /* harmony import */ var _PlainTiles__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(31773);
5210
+ /* harmony import */ var _Progress__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(6465);
5211
+ /* harmony import */ var _Rack__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(30007);
5212
+ /* harmony import */ var _Radio__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(84985);
5213
+ /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(14066);
5214
+ /* harmony import */ var _Results__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(21678);
5215
+ /* harmony import */ var _ResultsInput__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(92833);
5216
+ /* harmony import */ var _Sizer__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(77843);
5537
5217
  /* harmony import */ var _Solver__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(89058);
5538
- /* harmony import */ var _Splash__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(83790);
5218
+ /* harmony import */ var _SplashScreen__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(14676);
5539
5219
  /* harmony import */ var _SquareButton__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(86889);
5540
5220
  /* harmony import */ var _SvgFontCss__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(28887);
5541
5221
  /* harmony import */ var _SvgFontFix__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(33435);
5542
5222
  /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(57243);
5543
5223
  /* harmony import */ var _Tooltip__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(7646);
5544
5224
  /* harmony import */ var _Well__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(34473);
5545
- /* harmony import */ var _Words__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(96872);
5546
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Board__WEBPACK_IMPORTED_MODULE_1__, _Button__WEBPACK_IMPORTED_MODULE_2__, _Dictionary__WEBPACK_IMPORTED_MODULE_4__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_5__, _EmptyState__WEBPACK_IMPORTED_MODULE_6__, _KeyMap__WEBPACK_IMPORTED_MODULE_8__, _Loading__WEBPACK_IMPORTED_MODULE_9__, _NavButtons__WEBPACK_IMPORTED_MODULE_11__, _NotFound__WEBPACK_IMPORTED_MODULE_12__, _PlainTiles__WEBPACK_IMPORTED_MODULE_13__, _Rack__WEBPACK_IMPORTED_MODULE_14__, _RemainingTiles__WEBPACK_IMPORTED_MODULE_16__, _Results__WEBPACK_IMPORTED_MODULE_17__, _ResultsInput__WEBPACK_IMPORTED_MODULE_18__, _Settings__WEBPACK_IMPORTED_MODULE_20__, _Sidebar__WEBPACK_IMPORTED_MODULE_21__, _Solver__WEBPACK_IMPORTED_MODULE_22__, _SquareButton__WEBPACK_IMPORTED_MODULE_24__, _Tile__WEBPACK_IMPORTED_MODULE_27__, _Tooltip__WEBPACK_IMPORTED_MODULE_28__, _Words__WEBPACK_IMPORTED_MODULE_30__]);
5547
- ([_Board__WEBPACK_IMPORTED_MODULE_1__, _Button__WEBPACK_IMPORTED_MODULE_2__, _Dictionary__WEBPACK_IMPORTED_MODULE_4__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_5__, _EmptyState__WEBPACK_IMPORTED_MODULE_6__, _KeyMap__WEBPACK_IMPORTED_MODULE_8__, _Loading__WEBPACK_IMPORTED_MODULE_9__, _NavButtons__WEBPACK_IMPORTED_MODULE_11__, _NotFound__WEBPACK_IMPORTED_MODULE_12__, _PlainTiles__WEBPACK_IMPORTED_MODULE_13__, _Rack__WEBPACK_IMPORTED_MODULE_14__, _RemainingTiles__WEBPACK_IMPORTED_MODULE_16__, _Results__WEBPACK_IMPORTED_MODULE_17__, _ResultsInput__WEBPACK_IMPORTED_MODULE_18__, _Settings__WEBPACK_IMPORTED_MODULE_20__, _Sidebar__WEBPACK_IMPORTED_MODULE_21__, _Solver__WEBPACK_IMPORTED_MODULE_22__, _SquareButton__WEBPACK_IMPORTED_MODULE_24__, _Tile__WEBPACK_IMPORTED_MODULE_27__, _Tooltip__WEBPACK_IMPORTED_MODULE_28__, _Words__WEBPACK_IMPORTED_MODULE_30__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5548
-
5225
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Board__WEBPACK_IMPORTED_MODULE_1__, _Button__WEBPACK_IMPORTED_MODULE_2__, _Dictionary__WEBPACK_IMPORTED_MODULE_4__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_5__, _EmptyState__WEBPACK_IMPORTED_MODULE_6__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _Modal__WEBPACK_IMPORTED_MODULE_11__, _NavButtons__WEBPACK_IMPORTED_MODULE_12__, _NotFound__WEBPACK_IMPORTED_MODULE_13__, _PlainTiles__WEBPACK_IMPORTED_MODULE_14__, _Progress__WEBPACK_IMPORTED_MODULE_15__, _Rack__WEBPACK_IMPORTED_MODULE_16__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_18__, _Results__WEBPACK_IMPORTED_MODULE_19__, _ResultsInput__WEBPACK_IMPORTED_MODULE_20__, _Solver__WEBPACK_IMPORTED_MODULE_22__, _SquareButton__WEBPACK_IMPORTED_MODULE_24__, _Tile__WEBPACK_IMPORTED_MODULE_27__, _Tooltip__WEBPACK_IMPORTED_MODULE_28__]);
5226
+ ([_Board__WEBPACK_IMPORTED_MODULE_1__, _Button__WEBPACK_IMPORTED_MODULE_2__, _Dictionary__WEBPACK_IMPORTED_MODULE_4__, _DictionaryInput__WEBPACK_IMPORTED_MODULE_5__, _EmptyState__WEBPACK_IMPORTED_MODULE_6__, _Loading__WEBPACK_IMPORTED_MODULE_8__, _Modal__WEBPACK_IMPORTED_MODULE_11__, _NavButtons__WEBPACK_IMPORTED_MODULE_12__, _NotFound__WEBPACK_IMPORTED_MODULE_13__, _PlainTiles__WEBPACK_IMPORTED_MODULE_14__, _Progress__WEBPACK_IMPORTED_MODULE_15__, _Rack__WEBPACK_IMPORTED_MODULE_16__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_18__, _Results__WEBPACK_IMPORTED_MODULE_19__, _ResultsInput__WEBPACK_IMPORTED_MODULE_20__, _Solver__WEBPACK_IMPORTED_MODULE_22__, _SquareButton__WEBPACK_IMPORTED_MODULE_24__, _Tile__WEBPACK_IMPORTED_MODULE_27__, _Tooltip__WEBPACK_IMPORTED_MODULE_28__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5549
5227
 
5550
5228
 
5551
5229
 
@@ -5588,23 +5266,23 @@ __webpack_async_result__();
5588
5266
  "use strict";
5589
5267
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5590
5268
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5591
- /* harmony export */ "Av": () => (/* reexport safe */ _useIsTablet__WEBPACK_IMPORTED_MODULE_1__.Z),
5592
5269
  /* harmony export */ "Ld": () => (/* reexport safe */ _useUniqueId__WEBPACK_IMPORTED_MODULE_6__.Z),
5593
- /* harmony export */ "YQ": () => (/* reexport safe */ _useIsTouchDevice__WEBPACK_IMPORTED_MODULE_2__.Z),
5594
- /* harmony export */ "ZK": () => (/* reexport safe */ _useLanguage__WEBPACK_IMPORTED_MODULE_3__.Z),
5595
- /* harmony export */ "_": () => (/* reexport safe */ _useLocalStorage__WEBPACK_IMPORTED_MODULE_4__.Z),
5270
+ /* harmony export */ "YQ": () => (/* reexport safe */ _useIsTouchDevice__WEBPACK_IMPORTED_MODULE_1__.Z),
5271
+ /* harmony export */ "ZK": () => (/* reexport safe */ _useLanguage__WEBPACK_IMPORTED_MODULE_2__.Z),
5272
+ /* harmony export */ "_": () => (/* reexport safe */ _useLocalStorage__WEBPACK_IMPORTED_MODULE_3__.Z),
5273
+ /* harmony export */ "ac": () => (/* reexport safe */ _useMediaQuery__WEBPACK_IMPORTED_MODULE_4__.Z),
5596
5274
  /* harmony export */ "gm": () => (/* reexport safe */ _useDirection__WEBPACK_IMPORTED_MODULE_0__.Z),
5597
5275
  /* harmony export */ "vI": () => (/* reexport safe */ _usePortal__WEBPACK_IMPORTED_MODULE_5__.Z)
5598
5276
  /* harmony export */ });
5599
5277
  /* harmony import */ var _useDirection__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(11685);
5600
- /* harmony import */ var _useIsTablet__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(41546);
5601
- /* harmony import */ var _useIsTouchDevice__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(19447);
5602
- /* harmony import */ var _useLanguage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(17163);
5603
- /* harmony import */ var _useLocalStorage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(56739);
5278
+ /* harmony import */ var _useIsTouchDevice__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(19447);
5279
+ /* harmony import */ var _useLanguage__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(17163);
5280
+ /* harmony import */ var _useLocalStorage__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(56739);
5281
+ /* harmony import */ var _useMediaQuery__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(13756);
5604
5282
  /* harmony import */ var _usePortal__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(25953);
5605
5283
  /* harmony import */ var _useUniqueId__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(59794);
5606
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__, _useUniqueId__WEBPACK_IMPORTED_MODULE_6__]);
5607
- ([_useLocalStorage__WEBPACK_IMPORTED_MODULE_4__, _useUniqueId__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5284
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useLocalStorage__WEBPACK_IMPORTED_MODULE_3__, _useUniqueId__WEBPACK_IMPORTED_MODULE_6__]);
5285
+ ([_useLocalStorage__WEBPACK_IMPORTED_MODULE_3__, _useUniqueId__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5608
5286
 
5609
5287
 
5610
5288
 
@@ -5648,27 +5326,6 @@ const useDirection = (direction)=>{
5648
5326
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useDirection);
5649
5327
 
5650
5328
 
5651
- /***/ }),
5652
-
5653
- /***/ 41546:
5654
- /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
5655
-
5656
- "use strict";
5657
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5658
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
5659
- /* harmony export */ });
5660
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(69755);
5661
- /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_0__);
5662
-
5663
- const useIsTablet = ()=>{
5664
- const isTabletHeight = (0,react_use__WEBPACK_IMPORTED_MODULE_0__.useMedia)("(max-height: 800px)", false);
5665
- const isTabletWidth = (0,react_use__WEBPACK_IMPORTED_MODULE_0__.useMedia)("(max-width: 1024px)", false);
5666
- const isTablet = isTabletHeight || isTabletWidth;
5667
- return isTablet;
5668
- };
5669
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useIsTablet);
5670
-
5671
-
5672
5329
  /***/ }),
5673
5330
 
5674
5331
  /***/ 19447:
@@ -5958,6 +5615,30 @@ const useLocalStorageRack = ()=>{
5958
5615
  __webpack_async_result__();
5959
5616
  } catch(e) { __webpack_async_result__(e); } });
5960
5617
 
5618
+ /***/ }),
5619
+
5620
+ /***/ 13756:
5621
+ /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
5622
+
5623
+ "use strict";
5624
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5625
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
5626
+ /* harmony export */ });
5627
+ /* harmony import */ var include_media_query_builder__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9744);
5628
+ /* harmony import */ var include_media_query_builder__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(include_media_query_builder__WEBPACK_IMPORTED_MODULE_0__);
5629
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(69755);
5630
+ /* harmony import */ var react_use__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_use__WEBPACK_IMPORTED_MODULE_1__);
5631
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(74200);
5632
+
5633
+
5634
+
5635
+ const useMediaQuery = (query, defaultState)=>{
5636
+ const mediaQuery = (0,include_media_query_builder__WEBPACK_IMPORTED_MODULE_0__.buildMediaQuery)(parameters__WEBPACK_IMPORTED_MODULE_2__/* .BREAKPOINTS */ .j$, query);
5637
+ return (0,react_use__WEBPACK_IMPORTED_MODULE_1__.useMedia)(mediaQuery, defaultState);
5638
+ };
5639
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useMediaQuery);
5640
+
5641
+
5961
5642
  /***/ }),
5962
5643
 
5963
5644
  /***/ 25953:
@@ -5996,7 +5677,7 @@ const usePortal = (children, { disabled =false , tagName ="div" } = {})=>{
5996
5677
  // "Attempted to synchronously unmount a root while React was already
5997
5678
  // rendering. React cannot finish unmounting the root until the current
5998
5679
  // render has completed, which may lead to a race condition.""
5999
- setTimeout(()=>{
5680
+ globalThis.setTimeout(()=>{
6000
5681
  rootRef.current = null;
6001
5682
  root.unmount();
6002
5683
  element.remove();
@@ -6049,7 +5730,7 @@ __webpack_async_result__();
6049
5730
 
6050
5731
  /***/ }),
6051
5732
 
6052
- /***/ 12374:
5733
+ /***/ 55210:
6053
5734
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6054
5735
 
6055
5736
  "use strict";
@@ -6060,14 +5741,17 @@ __webpack_require__.d(__webpack_exports__, {
6060
5741
  "Xd": () => (/* reexport */ ArrowLeft),
6061
5742
  "ol": () => (/* reexport */ ArrowRight),
6062
5743
  "a2": () => (/* reexport */ ArrowUp),
6063
- "PP": () => (/* reexport */ BookHalf),
5744
+ "Kz": () => (/* reexport */ CardChecklist),
6064
5745
  "Jr": () => (/* reexport */ Check),
5746
+ "_M": () => (/* reexport */ ChevronDown),
6065
5747
  "Oz": () => (/* reexport */ Cog),
6066
5748
  "X1": () => (/* reexport */ Cross),
6067
- "ME": () => (/* reexport */ CrossFill),
5749
+ "Gw": () => (/* reexport */ CrossCircleFill),
5750
+ "vK": () => (/* reexport */ CrossSquareFill),
6068
5751
  "XK": () => (/* reexport */ DashCircleFill),
6069
5752
  "Gs": () => (/* reexport */ Eraser),
6070
5753
  "yT": () => (/* reexport */ ExclamationSquareFill),
5754
+ "x_": () => (/* reexport */ ExclamationTriangleFill),
6071
5755
  "WN": () => (/* reexport */ Flag),
6072
5756
  "rV": () => (/* reexport */ FlagDe),
6073
5757
  "d": () => (/* reexport */ FlagEs),
@@ -6077,15 +5761,17 @@ __webpack_require__.d(__webpack_exports__, {
6077
5761
  "fd": () => (/* reexport */ FlagPl),
6078
5762
  "YK": () => (/* reexport */ FlagUs),
6079
5763
  "Ey": () => (/* reexport */ Github),
5764
+ "UT": () => (/* reexport */ InfoCircleFill),
6080
5765
  "N1": () => (/* reexport */ Keyboard),
6081
- "sh": () => (/* reexport */ Play),
5766
+ "aV": () => (/* reexport */ List),
6082
5767
  "xy": () => (/* reexport */ Sack),
5768
+ "HN": () => (/* reexport */ Search),
6083
5769
  "l": () => (/* reexport */ SortDown),
6084
5770
  "Nc": () => (/* reexport */ SortUp),
6085
5771
  "Ux": () => (/* reexport */ Star)
6086
5772
  });
6087
5773
 
6088
- // UNUSED EXPORTS: CheckboxChecked, CheckboxEmpty
5774
+ // UNUSED EXPORTS: BookHalf, CheckboxChecked, CheckboxEmpty
6089
5775
 
6090
5776
  // EXTERNAL MODULE: external "react"
6091
5777
  var external_react_ = __webpack_require__(16689);
@@ -6154,15 +5840,32 @@ var BookHalf_path;
6154
5840
  function BookHalf_extends() { BookHalf_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return BookHalf_extends.apply(this, arguments); }
6155
5841
 
6156
5842
  var SvgBookHalf = function SvgBookHalf(props) {
6157
- return /*#__PURE__*/external_react_.createElement("svg", BookHalf_extends({
5843
+ return /*#__PURE__*/React.createElement("svg", BookHalf_extends({
6158
5844
  viewBox: "0 0 16 16",
6159
5845
  xmlns: "http://www.w3.org/2000/svg"
6160
- }, props), BookHalf_path || (BookHalf_path = /*#__PURE__*/external_react_.createElement("path", {
5846
+ }, props), BookHalf_path || (BookHalf_path = /*#__PURE__*/React.createElement("path", {
6161
5847
  d: "M8.5 2.687c.654-.689 1.782-.886 3.112-.752 1.234.124 2.503.523 3.388.893v9.923c-.918-.35-2.107-.692-3.287-.81-1.094-.111-2.278-.039-3.213.492V2.687zM8 1.783C7.015.936 5.587.81 4.287.94c-1.514.153-3.042.672-3.994 1.105A.5.5 0 0 0 0 2.5v11a.5.5 0 0 0 .707.455c.882-.4 2.303-.881 3.68-1.02 1.409-.142 2.59.087 3.223.877a.5.5 0 0 0 .78 0c.633-.79 1.814-1.019 3.222-.877 1.378.139 2.8.62 3.681 1.02A.5.5 0 0 0 16 13.5v-11a.5.5 0 0 0-.293-.455c-.952-.433-2.48-.952-3.994-1.105C10.413.809 8.985.936 8 1.783z",
6162
5848
  fill: "currentColor"
6163
5849
  })));
6164
5850
  };
6165
- /* harmony default export */ const BookHalf = (SvgBookHalf);
5851
+ /* harmony default export */ const BookHalf = ((/* unused pure expression or super */ null && (SvgBookHalf)));
5852
+ ;// CONCATENATED MODULE: ./src/icons/CardChecklist.svg
5853
+ var CardChecklist_path, _path2;
5854
+ function CardChecklist_extends() { CardChecklist_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return CardChecklist_extends.apply(this, arguments); }
5855
+
5856
+ var SvgCardChecklist = function SvgCardChecklist(props) {
5857
+ return /*#__PURE__*/external_react_.createElement("svg", CardChecklist_extends({
5858
+ viewBox: "0 0 16 16",
5859
+ xmlns: "http://www.w3.org/2000/svg"
5860
+ }, props), CardChecklist_path || (CardChecklist_path = /*#__PURE__*/external_react_.createElement("path", {
5861
+ d: "M14.5 3a.5.5 0 0 1 .5.5v9a.5.5 0 0 1-.5.5h-13a.5.5 0 0 1-.5-.5v-9a.5.5 0 0 1 .5-.5h13zm-13-1A1.5 1.5 0 0 0 0 3.5v9A1.5 1.5 0 0 0 1.5 14h13a1.5 1.5 0 0 0 1.5-1.5v-9A1.5 1.5 0 0 0 14.5 2h-13z",
5862
+ fill: "currentColor"
5863
+ })), _path2 || (_path2 = /*#__PURE__*/external_react_.createElement("path", {
5864
+ d: "M7 5.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 1 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0zM7 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm-1.496-.854a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0l-.5-.5a.5.5 0 0 1 .708-.708l.146.147 1.146-1.147a.5.5 0 0 1 .708 0z",
5865
+ fill: "currentColor"
5866
+ })));
5867
+ };
5868
+ /* harmony default export */ const CardChecklist = (SvgCardChecklist);
6166
5869
  ;// CONCATENATED MODULE: ./src/icons/Check.svg
6167
5870
  var Check_path;
6168
5871
  function Check_extends() { Check_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Check_extends.apply(this, arguments); }
@@ -6172,7 +5875,7 @@ var SvgCheck = function SvgCheck(props) {
6172
5875
  viewBox: "0 0 16 16",
6173
5876
  xmlns: "http://www.w3.org/2000/svg"
6174
5877
  }, props), Check_path || (Check_path = /*#__PURE__*/external_react_.createElement("path", {
6175
- d: "M10.97 4.97a.75.75 0 0 1 1.07 1.05l-3.99 4.99a.75.75 0 0 1-1.08.02L4.324 8.384a.75.75 0 1 1 1.06-1.06l2.094 2.093 3.473-4.425a.267.267 0 0 1 .02-.022z",
5878
+ d: "M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z",
6176
5879
  fill: "currentColor"
6177
5880
  })));
6178
5881
  };
@@ -6205,6 +5908,21 @@ var SvgCheckboxEmpty = function SvgCheckboxEmpty(props) {
6205
5908
  })));
6206
5909
  };
6207
5910
  /* harmony default export */ const CheckboxEmpty = ((/* unused pure expression or super */ null && (SvgCheckboxEmpty)));
5911
+ ;// CONCATENATED MODULE: ./src/icons/ChevronDown.svg
5912
+ var ChevronDown_path;
5913
+ function ChevronDown_extends() { ChevronDown_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return ChevronDown_extends.apply(this, arguments); }
5914
+
5915
+ var SvgChevronDown = function SvgChevronDown(props) {
5916
+ return /*#__PURE__*/external_react_.createElement("svg", ChevronDown_extends({
5917
+ viewBox: "0 0 16 16",
5918
+ xmlns: "http://www.w3.org/2000/svg"
5919
+ }, props), ChevronDown_path || (ChevronDown_path = /*#__PURE__*/external_react_.createElement("path", {
5920
+ fillRule: "evenodd",
5921
+ d: "M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z",
5922
+ fill: "currentColor"
5923
+ })));
5924
+ };
5925
+ /* harmony default export */ const ChevronDown = (SvgChevronDown);
6208
5926
  ;// CONCATENATED MODULE: ./src/icons/Cog.svg
6209
5927
  var Cog_path;
6210
5928
  function Cog_extends() { Cog_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Cog_extends.apply(this, arguments); }
@@ -6233,20 +5951,34 @@ var SvgCross = function SvgCross(props) {
6233
5951
  })));
6234
5952
  };
6235
5953
  /* harmony default export */ const Cross = (SvgCross);
6236
- ;// CONCATENATED MODULE: ./src/icons/CrossFill.svg
6237
- var CrossFill_path;
6238
- function CrossFill_extends() { CrossFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return CrossFill_extends.apply(this, arguments); }
5954
+ ;// CONCATENATED MODULE: ./src/icons/CrossCircleFill.svg
5955
+ var CrossCircleFill_path;
5956
+ function CrossCircleFill_extends() { CrossCircleFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return CrossCircleFill_extends.apply(this, arguments); }
5957
+
5958
+ var SvgCrossCircleFill = function SvgCrossCircleFill(props) {
5959
+ return /*#__PURE__*/external_react_.createElement("svg", CrossCircleFill_extends({
5960
+ viewBox: "0 0 16 16",
5961
+ xmlns: "http://www.w3.org/2000/svg"
5962
+ }, props), CrossCircleFill_path || (CrossCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
5963
+ d: "M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM5.354 4.646a.5.5 0 1 0-.708.708L7.293 8l-2.647 2.646a.5.5 0 0 0 .708.708L8 8.707l2.646 2.647a.5.5 0 0 0 .708-.708L8.707 8l2.647-2.646a.5.5 0 0 0-.708-.708L8 7.293 5.354 4.646z",
5964
+ fill: "currentColor"
5965
+ })));
5966
+ };
5967
+ /* harmony default export */ const CrossCircleFill = (SvgCrossCircleFill);
5968
+ ;// CONCATENATED MODULE: ./src/icons/CrossSquareFill.svg
5969
+ var CrossSquareFill_path;
5970
+ function CrossSquareFill_extends() { CrossSquareFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return CrossSquareFill_extends.apply(this, arguments); }
6239
5971
 
6240
- var SvgCrossFill = function SvgCrossFill(props) {
6241
- return /*#__PURE__*/external_react_.createElement("svg", CrossFill_extends({
5972
+ var SvgCrossSquareFill = function SvgCrossSquareFill(props) {
5973
+ return /*#__PURE__*/external_react_.createElement("svg", CrossSquareFill_extends({
6242
5974
  viewBox: "0 0 16 16",
6243
5975
  xmlns: "http://www.w3.org/2000/svg"
6244
- }, props), CrossFill_path || (CrossFill_path = /*#__PURE__*/external_react_.createElement("path", {
5976
+ }, props), CrossSquareFill_path || (CrossSquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
6245
5977
  d: "M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm3.354 4.646L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 1 1 .708-.708z",
6246
5978
  fill: "currentColor"
6247
5979
  })));
6248
5980
  };
6249
- /* harmony default export */ const CrossFill = (SvgCrossFill);
5981
+ /* harmony default export */ const CrossSquareFill = (SvgCrossSquareFill);
6250
5982
  ;// CONCATENATED MODULE: ./src/icons/DashCircleFill.svg
6251
5983
  var DashCircleFill_path;
6252
5984
  function DashCircleFill_extends() { DashCircleFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return DashCircleFill_extends.apply(this, arguments); }
@@ -6289,6 +6021,20 @@ var SvgExclamationSquareFill = function SvgExclamationSquareFill(props) {
6289
6021
  })));
6290
6022
  };
6291
6023
  /* harmony default export */ const ExclamationSquareFill = (SvgExclamationSquareFill);
6024
+ ;// CONCATENATED MODULE: ./src/icons/ExclamationTriangleFill.svg
6025
+ var ExclamationTriangleFill_path;
6026
+ function ExclamationTriangleFill_extends() { ExclamationTriangleFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return ExclamationTriangleFill_extends.apply(this, arguments); }
6027
+
6028
+ var SvgExclamationTriangleFill = function SvgExclamationTriangleFill(props) {
6029
+ return /*#__PURE__*/external_react_.createElement("svg", ExclamationTriangleFill_extends({
6030
+ viewBox: "0 0 16 16",
6031
+ xmlns: "http://www.w3.org/2000/svg"
6032
+ }, props), ExclamationTriangleFill_path || (ExclamationTriangleFill_path = /*#__PURE__*/external_react_.createElement("path", {
6033
+ d: "M8.982 1.566a1.13 1.13 0 0 0-1.96 0L.165 13.233c-.457.778.091 1.767.98 1.767h13.713c.889 0 1.438-.99.98-1.767L8.982 1.566zM8 5c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 5.995A.905.905 0 0 1 8 5zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z",
6034
+ fill: "currentColor"
6035
+ })));
6036
+ };
6037
+ /* harmony default export */ const ExclamationTriangleFill = (SvgExclamationTriangleFill);
6292
6038
  ;// CONCATENATED MODULE: ./src/icons/Flag.svg
6293
6039
  var Flag_path;
6294
6040
  function Flag_extends() { Flag_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Flag_extends.apply(this, arguments); }
@@ -6304,7 +6050,7 @@ var SvgFlag = function SvgFlag(props) {
6304
6050
  };
6305
6051
  /* harmony default export */ const Flag = (SvgFlag);
6306
6052
  ;// CONCATENATED MODULE: ./src/icons/FlagEs.svg
6307
- var FlagEs_path, _path2;
6053
+ var FlagEs_path, FlagEs_path2;
6308
6054
  function FlagEs_extends() { FlagEs_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return FlagEs_extends.apply(this, arguments); }
6309
6055
 
6310
6056
  var SvgFlagEs = function SvgFlagEs(props) {
@@ -6314,7 +6060,7 @@ var SvgFlagEs = function SvgFlagEs(props) {
6314
6060
  }, props), FlagEs_path || (FlagEs_path = /*#__PURE__*/external_react_.createElement("path", {
6315
6061
  fill: "#c60b1e",
6316
6062
  d: "M0 0h750v500H0z"
6317
- })), _path2 || (_path2 = /*#__PURE__*/external_react_.createElement("path", {
6063
+ })), FlagEs_path2 || (FlagEs_path2 = /*#__PURE__*/external_react_.createElement("path", {
6318
6064
  fill: "#ffc400",
6319
6065
  d: "M0 125h750v250H0z"
6320
6066
  })));
@@ -6739,6 +6485,20 @@ var SvgGithub = function SvgGithub(props) {
6739
6485
  })));
6740
6486
  };
6741
6487
  /* harmony default export */ const Github = (SvgGithub);
6488
+ ;// CONCATENATED MODULE: ./src/icons/InfoCircleFill.svg
6489
+ var InfoCircleFill_path;
6490
+ function InfoCircleFill_extends() { InfoCircleFill_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return InfoCircleFill_extends.apply(this, arguments); }
6491
+
6492
+ var SvgInfoCircleFill = function SvgInfoCircleFill(props) {
6493
+ return /*#__PURE__*/external_react_.createElement("svg", InfoCircleFill_extends({
6494
+ viewBox: "0 0 16 16",
6495
+ xmlns: "http://www.w3.org/2000/svg"
6496
+ }, props), InfoCircleFill_path || (InfoCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
6497
+ d: "M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16zm.93-9.412-1 4.705c-.07.34.029.533.304.533.194 0 .487-.07.686-.246l-.088.416c-.287.346-.92.598-1.465.598-.703 0-1.002-.422-.808-1.319l.738-3.468c.064-.293.006-.399-.287-.47l-.451-.081.082-.381 2.29-.287zM8 5.5a1 1 0 1 1 0-2 1 1 0 0 1 0 2z",
6498
+ fill: "currentColor"
6499
+ })));
6500
+ };
6501
+ /* harmony default export */ const InfoCircleFill = (SvgInfoCircleFill);
6742
6502
  ;// CONCATENATED MODULE: ./src/icons/Keyboard.svg
6743
6503
  var Keyboard_path;
6744
6504
  function Keyboard_extends() { Keyboard_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Keyboard_extends.apply(this, arguments); }
@@ -6753,20 +6513,21 @@ var SvgKeyboard = function SvgKeyboard(props) {
6753
6513
  })));
6754
6514
  };
6755
6515
  /* harmony default export */ const Keyboard = (SvgKeyboard);
6756
- ;// CONCATENATED MODULE: ./src/icons/Play.svg
6757
- var Play_path;
6758
- function Play_extends() { Play_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Play_extends.apply(this, arguments); }
6516
+ ;// CONCATENATED MODULE: ./src/icons/List.svg
6517
+ var List_path;
6518
+ function List_extends() { List_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return List_extends.apply(this, arguments); }
6759
6519
 
6760
- var SvgPlay = function SvgPlay(props) {
6761
- return /*#__PURE__*/external_react_.createElement("svg", Play_extends({
6520
+ var SvgList = function SvgList(props) {
6521
+ return /*#__PURE__*/external_react_.createElement("svg", List_extends({
6762
6522
  viewBox: "0 0 16 16",
6763
6523
  xmlns: "http://www.w3.org/2000/svg"
6764
- }, props), Play_path || (Play_path = /*#__PURE__*/external_react_.createElement("path", {
6765
- d: "m11.596 8.697-6.363 3.692c-.54.313-1.233-.066-1.233-.697V4.308c0-.63.692-1.01 1.233-.696l6.363 3.692a.802.802 0 0 1 0 1.393z",
6524
+ }, props), List_path || (List_path = /*#__PURE__*/external_react_.createElement("path", {
6525
+ fillRule: "evenodd",
6526
+ d: "M2.5 12a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm0-4a.5.5 0 0 1 .5-.5h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5z",
6766
6527
  fill: "currentColor"
6767
6528
  })));
6768
6529
  };
6769
- /* harmony default export */ const Play = (SvgPlay);
6530
+ /* harmony default export */ const List = (SvgList);
6770
6531
  ;// CONCATENATED MODULE: ./src/icons/Sack.svg
6771
6532
  var Sack_path;
6772
6533
  function Sack_extends() { Sack_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Sack_extends.apply(this, arguments); }
@@ -6781,6 +6542,20 @@ var SvgSack = function SvgSack(props) {
6781
6542
  })));
6782
6543
  };
6783
6544
  /* harmony default export */ const Sack = (SvgSack);
6545
+ ;// CONCATENATED MODULE: ./src/icons/Search.svg
6546
+ var Search_path;
6547
+ function Search_extends() { Search_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return Search_extends.apply(this, arguments); }
6548
+
6549
+ var SvgSearch = function SvgSearch(props) {
6550
+ return /*#__PURE__*/external_react_.createElement("svg", Search_extends({
6551
+ viewBox: "0 0 16 16",
6552
+ xmlns: "http://www.w3.org/2000/svg"
6553
+ }, props), Search_path || (Search_path = /*#__PURE__*/external_react_.createElement("path", {
6554
+ d: "M11.742 10.344a6.5 6.5 0 1 0-1.397 1.398h-.001c.03.04.062.078.098.115l3.85 3.85a1 1 0 0 0 1.415-1.414l-3.85-3.85a1.007 1.007 0 0 0-.115-.1zM12 6.5a5.5 5.5 0 1 1-11 0 5.5 5.5 0 0 1 11 0z",
6555
+ fill: "currentColor"
6556
+ })));
6557
+ };
6558
+ /* harmony default export */ const Search = (SvgSearch);
6784
6559
  ;// CONCATENATED MODULE: ./src/icons/SortDown.svg
6785
6560
  var SortDown_path;
6786
6561
  function SortDown_extends() { SortDown_extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return SortDown_extends.apply(this, arguments); }
@@ -6848,6 +6623,12 @@ var SvgStar = function SvgStar(props) {
6848
6623
 
6849
6624
 
6850
6625
 
6626
+
6627
+
6628
+
6629
+
6630
+
6631
+
6851
6632
 
6852
6633
 
6853
6634