@scrabble-solver/scrabble-solver 2.11.7 → 2.11.9

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 (122) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +7 -7
  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/131.js +153 -115
  16. package/.next/server/chunks/277.js +1430 -691
  17. package/.next/server/chunks/44.js +3 -0
  18. package/.next/server/chunks/50.js +20 -78
  19. package/.next/server/chunks/865.js +153 -115
  20. package/.next/server/chunks/911.js +14 -14
  21. package/.next/server/middleware-build-manifest.js +1 -1
  22. package/.next/server/pages/404.html +1 -1
  23. package/.next/server/pages/404.js.nft.json +1 -1
  24. package/.next/server/pages/500.html +1 -1
  25. package/.next/server/pages/_app.js +8 -0
  26. package/.next/server/pages/_app.js.nft.json +1 -1
  27. package/.next/server/pages/api/solve.js +44 -11
  28. package/.next/server/pages/index.html +1 -1
  29. package/.next/server/pages/index.js +169 -15
  30. package/.next/server/pages/index.js.nft.json +1 -1
  31. package/.next/server/pages/index.json +1 -1
  32. package/.next/static/9oRWxnZ1xFLSs55FJtiYi/_buildManifest.js +1 -0
  33. package/.next/static/chunks/pages/{404-ca203fa27afc37d8.js → 404-b4b5ce15153d4825.js} +1 -1
  34. package/.next/static/chunks/pages/_app-b0231bed954dd413.js +28 -0
  35. package/.next/static/chunks/pages/index-4e8566409753e1c3.js +1 -0
  36. package/.next/static/css/60e8258da7362a1a.css +1 -0
  37. package/.next/static/css/fcc46fec97b11afc.css +2 -0
  38. package/.next/trace +52 -50
  39. package/package.json +14 -13
  40. package/src/components/Board/Board.module.scss +18 -4
  41. package/src/components/Board/Board.tsx +145 -76
  42. package/src/components/Board/BoardPure.tsx +32 -40
  43. package/src/components/Board/components/Actions/Actions.module.scss +6 -17
  44. package/src/components/Board/components/Actions/Actions.tsx +36 -18
  45. package/src/components/Board/components/Cell/Cell.module.scss +12 -13
  46. package/src/components/Board/components/Cell/Cell.tsx +53 -3
  47. package/src/components/Board/components/InputPrompt/InputPrompt.module.scss +47 -0
  48. package/src/components/Board/components/InputPrompt/InputPrompt.tsx +81 -0
  49. package/src/components/Board/components/InputPrompt/index.ts +1 -0
  50. package/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.module.scss +21 -0
  51. package/src/components/Board/components/ToggleDirectionButton/ToggleDirectionButton.tsx +34 -0
  52. package/src/components/Board/components/ToggleDirectionButton/index.ts +1 -0
  53. package/src/components/Board/components/index.ts +2 -0
  54. package/src/components/Board/hooks/index.ts +4 -0
  55. package/src/components/Board/hooks/useBackgroundImage.tsx +13 -9
  56. package/src/components/Board/hooks/useBoardStyle.ts +27 -0
  57. package/src/components/Board/hooks/useFloatingActions.ts +22 -0
  58. package/src/components/Board/hooks/useFloatingFocus.ts +10 -0
  59. package/src/components/Board/hooks/useFloatingInputPrompt.ts +19 -0
  60. package/src/components/Board/hooks/useGrid.ts +19 -2
  61. package/src/components/Key/Key.module.scss +7 -11
  62. package/src/components/NavButtons/NavButtons.tsx +2 -2
  63. package/src/components/Rack/Rack.module.scss +6 -6
  64. package/src/components/Rack/Rack.tsx +102 -24
  65. package/src/components/Rack/components/InputPrompt/InputPrompt.module.scss +22 -0
  66. package/src/components/Rack/components/InputPrompt/InputPrompt.tsx +89 -0
  67. package/src/components/Rack/components/InputPrompt/index.ts +1 -0
  68. package/src/components/Rack/components/RackTile/RackTile.module.scss +11 -0
  69. package/src/components/Rack/{RackTile.tsx → components/RackTile/RackTile.tsx} +59 -9
  70. package/src/components/Rack/components/RackTile/index.ts +1 -0
  71. package/src/components/Rack/components/index.ts +2 -0
  72. package/src/components/Radio/Radio.module.scss +0 -8
  73. package/src/components/Solver/Solver.module.scss +0 -20
  74. package/src/components/Solver/Solver.tsx +2 -4
  75. package/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +2 -10
  76. package/src/components/Solver/components/index.ts +0 -1
  77. package/src/components/Tile/Tile.module.scss +5 -0
  78. package/src/components/Tile/Tile.tsx +8 -6
  79. package/src/components/Tile/TilePure.tsx +8 -0
  80. package/src/hooks/useAppLayout.ts +3 -1
  81. package/src/hooks/useLocalStorage.ts +8 -0
  82. package/src/i18n/de.json +6 -1
  83. package/src/i18n/en.json +6 -1
  84. package/src/i18n/es.json +6 -1
  85. package/src/i18n/fa.json +6 -1
  86. package/src/i18n/fr.json +6 -1
  87. package/src/i18n/pl.json +6 -1
  88. package/src/icons/Keyboard.svg +4 -3
  89. package/src/icons/KeyboardFill.svg +4 -0
  90. package/src/icons/index.ts +1 -0
  91. package/src/lib/extractCharacters.test.ts +26 -0
  92. package/src/lib/extractCharacters.ts +11 -9
  93. package/src/lib/extractCharactersByCase.test.ts +31 -0
  94. package/src/lib/extractCharactersByCase.ts +31 -0
  95. package/src/lib/index.ts +4 -1
  96. package/src/lib/isCtrl.ts +7 -0
  97. package/src/lib/isUpperCase.ts +7 -0
  98. package/src/modals/KeyMapModal/KeyMapModal.tsx +20 -4
  99. package/src/modals/KeyMapModal/components/Mapping/Mapping.module.scss +10 -4
  100. package/src/modals/SettingsModal/SettingsModal.tsx +5 -1
  101. package/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss +12 -0
  102. package/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.tsx +55 -0
  103. package/src/modals/SettingsModal/components/InputModeSetting/index.ts +1 -0
  104. package/src/modals/SettingsModal/components/InputModeSetting/lib.ts +13 -0
  105. package/src/modals/SettingsModal/components/InputModeSetting/types.ts +7 -0
  106. package/src/modals/SettingsModal/components/index.ts +1 -0
  107. package/src/state/localStorage.ts +10 -1
  108. package/src/state/selectors.ts +2 -0
  109. package/src/state/slices/settingsInitialState.ts +4 -1
  110. package/src/state/slices/settingsSlice.ts +6 -1
  111. package/src/styles/mixins.scss +1 -0
  112. package/src/styles/variables.scss +2 -0
  113. package/src/types/index.ts +7 -0
  114. package/.next/static/chunks/pages/_app-e89a3c225b87516a.js +0 -28
  115. package/.next/static/chunks/pages/index-58744f49bf6b891f.js +0 -1
  116. package/.next/static/css/34adfcf12a7d9bb6.css +0 -1
  117. package/.next/static/css/edaeaa48321b4cf2.css +0 -2
  118. package/.next/static/uhB6d-q63uRC6RubwepLq/_buildManifest.js +0 -1
  119. package/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.module.scss +0 -7
  120. package/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.tsx +0 -53
  121. package/src/components/Solver/components/FloatingSolveButton/index.ts +0 -1
  122. /package/.next/static/{uhB6d-q63uRC6RubwepLq → 9oRWxnZ1xFLSs55FJtiYi}/_ssgManifest.js +0 -0
@@ -237,13 +237,13 @@ const base = {
237
237
  const literaki = {
238
238
  id: base.id,
239
239
  name: base.name,
240
- [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesDe }),
241
- [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
242
- [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
243
- [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
244
- [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
245
- [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
246
- [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
240
+ [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_GB, tiles: tiles_1.tilesDe }),
241
+ [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.DE_DE, tiles: tiles_1.tilesEn }),
242
+ [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_US, tiles: tiles_1.tilesEn }),
243
+ [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.ES_ES, tiles: tiles_1.tilesEs }),
244
+ [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FA_IR, tiles: tiles_1.tilesFa }),
245
+ [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FR_FR, tiles: tiles_1.tilesFr }),
246
+ [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.PL_PL, tiles: tiles_1.tilesPl }),
247
247
  };
248
248
  exports["default"] = literaki;
249
249
 
@@ -644,13 +644,13 @@ const base = {
644
644
  const scrabble = {
645
645
  id: base.id,
646
646
  name: base.name,
647
- [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
648
- [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesDe }),
649
- [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEn }),
650
- [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesEs }),
651
- [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFa }),
652
- [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesFr }),
653
- [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, tiles: tiles_1.tilesPl }),
647
+ [types_1.Locale.EN_GB]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_GB, tiles: tiles_1.tilesEn }),
648
+ [types_1.Locale.DE_DE]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.DE_DE, tiles: tiles_1.tilesDe }),
649
+ [types_1.Locale.EN_US]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.EN_US, tiles: tiles_1.tilesEn }),
650
+ [types_1.Locale.ES_ES]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.ES_ES, tiles: tiles_1.tilesEs }),
651
+ [types_1.Locale.FA_IR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FA_IR, tiles: tiles_1.tilesFa }),
652
+ [types_1.Locale.FR_FR]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.FR_FR, tiles: tiles_1.tilesFr }),
653
+ [types_1.Locale.PL_PL]: types_1.Config.fromJson({ ...base, locale: types_1.Locale.PL_PL, tiles: tiles_1.tilesPl }),
654
654
  };
655
655
  exports["default"] = scrabble;
656
656
 
@@ -989,10 +989,11 @@ module.exports = {
989
989
  // Exports
990
990
  module.exports = {
991
991
  "board": "Board_board__eA_bB",
992
- "actions": "Board_actions__W2CX9",
993
- "hide": "Board_hide__Fskbc",
994
- "shown": "Board_shown__T9Txa",
992
+ "floating": "Board_floating__CH5ty",
995
993
  "show": "Board_show__1ChIu",
994
+ "focus": "Board_focus__dIJT4",
995
+ "hidden": "Board_hidden__KQoVq",
996
+ "hide": "Board_hide__Fskbc",
996
997
  "rotate": "Board_rotate__ynCR2",
997
998
  "wave": "Board_wave__NDbpN"
998
999
  };
@@ -1006,9 +1007,7 @@ module.exports = {
1006
1007
  // Exports
1007
1008
  module.exports = {
1008
1009
  "actions": "Actions_actions__3ry_t",
1009
- "action": "Actions_action__2tKnh",
1010
- "toggleDirection": "Actions_toggleDirection__GWMbz",
1011
- "right": "Actions_right___DlTx"
1010
+ "action": "Actions_action__2tKnh"
1012
1011
  };
1013
1012
 
1014
1013
 
@@ -1027,6 +1026,34 @@ module.exports = {
1027
1026
  };
1028
1027
 
1029
1028
 
1029
+ /***/ }),
1030
+
1031
+ /***/ 1774:
1032
+ /***/ ((module) => {
1033
+
1034
+ // Exports
1035
+ module.exports = {
1036
+ "inputPrompt": "InputPrompt_inputPrompt__YQ2mh",
1037
+ "toggleDirection": "InputPrompt_toggleDirection__QOGnQ",
1038
+ "input": "InputPrompt_input__OIYI2",
1039
+ "insert": "InputPrompt_insert__AZuml",
1040
+ "insertIcon": "InputPrompt_insertIcon__QYLKU"
1041
+ };
1042
+
1043
+
1044
+ /***/ }),
1045
+
1046
+ /***/ 41264:
1047
+ /***/ ((module) => {
1048
+
1049
+ // Exports
1050
+ module.exports = {
1051
+ "button": "ToggleDirectionButton_button__d4uxB",
1052
+ "icon": "ToggleDirectionButton_icon__86mlv",
1053
+ "right": "ToggleDirectionButton_right__KhG7b"
1054
+ };
1055
+
1056
+
1030
1057
  /***/ }),
1031
1058
 
1032
1059
  /***/ 59363:
@@ -1220,11 +1247,35 @@ module.exports = {
1220
1247
  module.exports = {
1221
1248
  "rack": "Rack_rack__uEE8X",
1222
1249
  "tile": "Rack_tile__kMzR_",
1250
+ "hidden": "Rack_hidden__nukvS",
1223
1251
  "sharpLeft": "Rack_sharpLeft__Sdops",
1224
1252
  "sharpRight": "Rack_sharpRight__9D2pe"
1225
1253
  };
1226
1254
 
1227
1255
 
1256
+ /***/ }),
1257
+
1258
+ /***/ 15098:
1259
+ /***/ ((module) => {
1260
+
1261
+ // Exports
1262
+ module.exports = {
1263
+ "form": "InputPrompt_form__wFpTU",
1264
+ "input": "InputPrompt_input__fYiBj"
1265
+ };
1266
+
1267
+
1268
+ /***/ }),
1269
+
1270
+ /***/ 75382:
1271
+ /***/ ((module) => {
1272
+
1273
+ // Exports
1274
+ module.exports = {
1275
+ "rackTile": "RackTile_rackTile__8ofXd"
1276
+ };
1277
+
1278
+
1228
1279
  /***/ }),
1229
1280
 
1230
1281
  /***/ 57081:
@@ -1233,8 +1284,8 @@ module.exports = {
1233
1284
  // Exports
1234
1285
  module.exports = {
1235
1286
  "radio": "Radio_radio__06IBr",
1236
- "icon": "Radio_icon__ORxR0",
1237
1287
  "checked": "Radio_checked__MlqJv",
1288
+ "icon": "Radio_icon__ORxR0",
1238
1289
  "input": "Radio_input__PFpGB",
1239
1290
  "content": "Radio_content__08chi"
1240
1291
  };
@@ -1303,23 +1354,7 @@ module.exports = {
1303
1354
  "bottomContainer": "Solver_bottomContainer__VLhkh",
1304
1355
  "bottomContent": "Solver_bottomContent__9rVjO",
1305
1356
  "controls": "Solver_controls__2D9Ez",
1306
- "emptyState": "Solver_emptyState__P5fkX",
1307
- "solve": "Solver_solve__MgHc7"
1308
- };
1309
-
1310
-
1311
- /***/ }),
1312
-
1313
- /***/ 10857:
1314
- /***/ ((module) => {
1315
-
1316
- // Exports
1317
- module.exports = {
1318
- "floatingSolveButton": "FloatingSolveButton_floatingSolveButton__ylG5R",
1319
- "hide": "FloatingSolveButton_hide__Xjdvf",
1320
- "show": "FloatingSolveButton_show__hjyNU",
1321
- "rotate": "FloatingSolveButton_rotate__VJaNr",
1322
- "wave": "FloatingSolveButton_wave__Ce4rm"
1357
+ "emptyState": "Solver_emptyState__P5fkX"
1323
1358
  };
1324
1359
 
1325
1360
 
@@ -1443,8 +1478,8 @@ var jsx_runtime_ = __webpack_require__(20997);
1443
1478
  // EXTERNAL MODULE: external "classnames"
1444
1479
  var external_classnames_ = __webpack_require__(59003);
1445
1480
  var external_classnames_default = /*#__PURE__*/__webpack_require__.n(external_classnames_);
1446
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
1447
- var icons = __webpack_require__(58966);
1481
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
1482
+ var icons = __webpack_require__(3186);
1448
1483
  // EXTERNAL MODULE: ./src/components/Alert/Alert.module.scss
1449
1484
  var Alert_module = __webpack_require__(98949);
1450
1485
  var Alert_module_default = /*#__PURE__*/__webpack_require__.n(Alert_module);
@@ -1536,23 +1571,26 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1536
1571
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
1537
1572
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
1538
1573
  /* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21964);
1539
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
1540
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
1541
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
1542
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
1543
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6022);
1544
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
1545
- /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(75704);
1546
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(55238);
1547
- /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(64534);
1548
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(83067);
1549
- /* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(33791);
1550
- /* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(_Board_module_scss__WEBPACK_IMPORTED_MODULE_12__);
1551
- /* harmony import */ var _BoardPure__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(86058);
1552
- /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(94347);
1553
- /* harmony import */ var _hooks__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(48327);
1554
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_5__, state__WEBPACK_IMPORTED_MODULE_8__, _BoardPure__WEBPACK_IMPORTED_MODULE_9__, _components__WEBPACK_IMPORTED_MODULE_10__, _hooks__WEBPACK_IMPORTED_MODULE_11__]);
1555
- ([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_5__, state__WEBPACK_IMPORTED_MODULE_8__, _BoardPure__WEBPACK_IMPORTED_MODULE_9__, _components__WEBPACK_IMPORTED_MODULE_10__, _hooks__WEBPACK_IMPORTED_MODULE_11__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1574
+ /* harmony import */ var _scrabble_solver_constants__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(7618);
1575
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(59003);
1576
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_3__);
1577
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(16689);
1578
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_4__);
1579
+ /* harmony import */ var react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(54620);
1580
+ /* harmony import */ var react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_5__);
1581
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(6022);
1582
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_6__);
1583
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(75704);
1584
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64534);
1585
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(83067);
1586
+ /* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(33791);
1587
+ /* harmony import */ var _Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(_Board_module_scss__WEBPACK_IMPORTED_MODULE_13__);
1588
+ /* harmony import */ var _BoardPure__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(86058);
1589
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(94347);
1590
+ /* harmony import */ var _hooks__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(48327);
1591
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_7__, state__WEBPACK_IMPORTED_MODULE_9__, _BoardPure__WEBPACK_IMPORTED_MODULE_10__, _components__WEBPACK_IMPORTED_MODULE_11__, _hooks__WEBPACK_IMPORTED_MODULE_12__]);
1592
+ ([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_7__, state__WEBPACK_IMPORTED_MODULE_9__, _BoardPure__WEBPACK_IMPORTED_MODULE_10__, _components__WEBPACK_IMPORTED_MODULE_11__, _hooks__WEBPACK_IMPORTED_MODULE_12__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1593
+ /* eslint-disable max-lines, max-statements */
1556
1594
 
1557
1595
 
1558
1596
 
@@ -1567,101 +1605,130 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_flo
1567
1605
 
1568
1606
 
1569
1607
  const Board = ({ className })=>{
1570
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useDispatch)();
1571
- const rows = (0,state__WEBPACK_IMPORTED_MODULE_8__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_8__/* .selectRowsWithCandidate */ .ZA);
1572
- const config = (0,state__WEBPACK_IMPORTED_MODULE_8__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_8__/* .selectConfig */ .$o);
1573
- const { actionsWidth , cellSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useAppLayout */ .Ft)();
1574
- const { tileFontSize } = (0,lib__WEBPACK_IMPORTED_MODULE_6__/* .getTileSizes */ .vc)(cellSize);
1575
- const [{ activeIndex , direction , inputRefs }, { onChange , onDirectionToggle , onFocus , onKeyDown , onPaste }] = (0,_hooks__WEBPACK_IMPORTED_MODULE_11__/* .useGrid */ .N)(rows);
1576
- const backgroundImage = (0,_hooks__WEBPACK_IMPORTED_MODULE_11__/* .useBackgroundImage */ .c)();
1577
- const boardStyle = (0,react__WEBPACK_IMPORTED_MODULE_3__.useMemo)(()=>({
1578
- backgroundImage,
1579
- fontSize: tileFontSize,
1580
- gridTemplateColumns: `repeat(${config.boardWidth}, 1fr)`,
1581
- gridTemplateRows: `repeat(${config.boardHeight}, 1fr)`
1582
- }), [
1583
- backgroundImage,
1584
- config.boardHeight,
1585
- config.boardWidth,
1586
- tileFontSize
1587
- ]);
1588
- const [showActions, setShowActions] = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)(false);
1589
- const [transition, setTransition] = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)(parameters__WEBPACK_IMPORTED_MODULE_7__/* .TRANSITION */ .yz);
1608
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_6__.useDispatch)();
1609
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectLocale */ .fN);
1610
+ const rows = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectRowsWithCandidate */ .ZA);
1611
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectInputMode */ .Ub);
1612
+ const { cellSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_7__/* .useAppLayout */ .Ft)();
1613
+ const [{ activeIndex , direction , inputRefs }, { insertValue , onChange , onDirectionToggle , onFocus , onKeyDown , onPaste }] = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useGrid */ .Nm)(rows);
1614
+ const boardStyle = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useBoardStyle */ .oQ)();
1615
+ const [hasFocus, setHasFocus] = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(false);
1616
+ const [showInputPrompt, setShowInputPrompt] = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(false);
1617
+ const [transition, setTransition] = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(parameters__WEBPACK_IMPORTED_MODULE_8__/* .TRANSITION */ .yz);
1590
1618
  const inputRef = inputRefs[activeIndex.y][activeIndex.x];
1591
1619
  const cell = rows[activeIndex.y][activeIndex.x];
1592
- const { x , y , strategy , refs } = (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.useFloating)({
1593
- middleware: [
1594
- (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.offset)({
1595
- mainAxis: -parameters__WEBPACK_IMPORTED_MODULE_7__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO,
1596
- alignmentAxis: parameters__WEBPACK_IMPORTED_MODULE_7__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO - actionsWidth
1597
- }),
1598
- (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.shift)()
1599
- ],
1600
- placement: "top-end",
1601
- whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.autoUpdate
1602
- });
1603
- const handleBlur = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
1604
- const eventComesFromActions = refs.floating.current?.contains(event.relatedTarget);
1605
- const eventComesFromBoard = event.currentTarget.contains(event.relatedTarget);
1606
- const isLocalEvent = eventComesFromActions || eventComesFromBoard;
1620
+ const floatingActions = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useFloatingActions */ .Fc)();
1621
+ const floatingInputPrompt = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useFloatingInputPrompt */ .gx)();
1622
+ const floatingFocus = (0,_hooks__WEBPACK_IMPORTED_MODULE_12__/* .useFloatingFocus */ .RD)();
1623
+ const handleBlur = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)((event)=>{
1624
+ const comesFromActions = floatingActions.refs.floating.current?.contains(event.relatedTarget);
1625
+ const comesFromBoard = event.currentTarget.contains(event.relatedTarget);
1626
+ const comesFromFocus = floatingFocus.refs.floating.current?.contains(event.relatedTarget);
1627
+ const comesFromInputPrompt = floatingInputPrompt.refs.floating.current?.contains(event.relatedTarget);
1628
+ const isLocalEvent = comesFromActions || comesFromBoard || comesFromFocus || comesFromInputPrompt;
1607
1629
  if (!isLocalEvent) {
1608
- setShowActions(false);
1630
+ setHasFocus(false);
1609
1631
  }
1610
1632
  }, [
1611
- refs.floating
1633
+ floatingActions.refs.floating,
1634
+ floatingFocus.refs.floating,
1635
+ floatingInputPrompt.refs.floating
1612
1636
  ]);
1613
- const handleDirectionToggle = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>{
1614
- inputRef.current?.focus();
1615
- onDirectionToggle();
1637
+ const updateFloatingReference = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)((newReference)=>{
1638
+ floatingActions.refs.setReference(newReference);
1639
+ floatingFocus.refs.setReference(newReference);
1640
+ floatingInputPrompt.refs.setReference(newReference);
1616
1641
  }, [
1617
- inputRef,
1618
- onDirectionToggle
1642
+ floatingActions.refs,
1643
+ floatingFocus.refs,
1644
+ floatingInputPrompt.refs
1619
1645
  ]);
1620
- const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((newX, newY)=>{
1621
- const isFirstFocus = !showActions;
1622
- const originalTransition = refs.floating.current?.style.transition || "";
1646
+ const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)((newX, newY)=>{
1647
+ const isFirstFocus = !hasFocus;
1648
+ const originalTransition = floatingActions.refs.floating.current?.style.transition || "";
1623
1649
  const newInputRef = inputRefs[newY][newX].current;
1624
1650
  const newTileElement = newInputRef?.parentElement || null;
1625
- if (isFirstFocus) {
1626
- setTransition("none");
1627
- }
1628
- refs.setReference(newTileElement);
1651
+ updateFloatingReference(newTileElement);
1629
1652
  onFocus(newX, newY);
1630
- setShowActions(true);
1653
+ setHasFocus(true);
1654
+ setShowInputPrompt(false);
1631
1655
  if (isFirstFocus) {
1632
- setTimeout(()=>{
1656
+ setTransition("none");
1657
+ globalThis.setTimeout(()=>{
1633
1658
  setTransition(originalTransition);
1634
1659
  }, 0);
1635
1660
  }
1636
1661
  }, [
1662
+ floatingActions.refs.floating,
1663
+ hasFocus,
1637
1664
  inputRefs,
1638
1665
  onFocus,
1639
- refs.floating,
1640
- refs.setReference,
1641
- showActions
1666
+ updateFloatingReference
1667
+ ]);
1668
+ const handleEnterWord = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)(()=>{
1669
+ setShowInputPrompt(true);
1670
+ }, []);
1671
+ const handleInsertWord = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)((word)=>{
1672
+ if (word.trim().length === 0) {
1673
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .boardSlice.actions.changeCellValue */ .I8.actions.changeCellValue({
1674
+ ...activeIndex,
1675
+ value: _scrabble_solver_constants__WEBPACK_IMPORTED_MODULE_2__.EMPTY_CELL
1676
+ }));
1677
+ } else {
1678
+ insertValue(activeIndex, word.toLocaleLowerCase(locale));
1679
+ }
1680
+ setShowInputPrompt(false);
1681
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .solveSlice.actions.submit */ .TP.actions.submit());
1682
+ setHasFocus(false);
1683
+ }, [
1684
+ activeIndex,
1685
+ dispatch,
1686
+ locale
1642
1687
  ]);
1643
- const handleToggleBlank = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>{
1644
- inputRef.current?.focus();
1645
- dispatch(state__WEBPACK_IMPORTED_MODULE_8__/* .boardSlice.actions.toggleCellIsBlank */ .I8.actions.toggleCellIsBlank(cell));
1688
+ const handleToggleBlank = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)(()=>{
1689
+ if (inputMode === "keyboard") {
1690
+ inputRef.current?.focus();
1691
+ }
1692
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .boardSlice.actions.toggleCellIsBlank */ .I8.actions.toggleCellIsBlank(cell));
1646
1693
  }, [
1647
1694
  cell,
1648
1695
  dispatch,
1696
+ inputMode,
1649
1697
  inputRef
1650
1698
  ]);
1651
- const handleToggleFilterCell = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>{
1652
- inputRef.current?.focus();
1653
- dispatch(state__WEBPACK_IMPORTED_MODULE_8__/* .cellFilterSlice.actions.toggle */ .mO.actions.toggle(cell));
1699
+ const handleToggleDirection = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)(()=>{
1700
+ if (inputMode === "keyboard") {
1701
+ inputRef.current?.focus();
1702
+ }
1703
+ onDirectionToggle();
1704
+ }, [
1705
+ inputMode,
1706
+ inputRef,
1707
+ onDirectionToggle
1708
+ ]);
1709
+ const handleToggleFilterCell = (0,react__WEBPACK_IMPORTED_MODULE_4__.useCallback)(()=>{
1710
+ if (inputMode === "keyboard") {
1711
+ inputRef.current?.focus();
1712
+ }
1713
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .cellFilterSlice.actions.toggle */ .mO.actions.toggle(cell));
1654
1714
  }, [
1655
1715
  cell,
1656
1716
  dispatch,
1717
+ inputMode,
1657
1718
  inputRef
1658
1719
  ]);
1720
+ const ref = react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_5___default()(()=>setHasFocus(false), {
1721
+ ignoreClass: [
1722
+ (_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().floating)
1723
+ ]
1724
+ });
1659
1725
  return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
1660
1726
  children: [
1661
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BoardPure__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z, {
1727
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_BoardPure__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .Z, {
1662
1728
  className: className,
1663
1729
  cellSize: cellSize,
1664
1730
  inputRefs: inputRefs,
1731
+ ref: ref,
1665
1732
  rows: rows,
1666
1733
  style: boardStyle,
1667
1734
  onBlur: handleBlur,
@@ -1670,29 +1737,56 @@ const Board = ({ className })=>{
1670
1737
  onKeyDown: onKeyDown,
1671
1738
  onPaste: onPaste
1672
1739
  }),
1673
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.FloatingPortal, {
1674
- children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_10__/* .Actions */ .e, {
1675
- cell: cell,
1676
- className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Board_module_scss__WEBPACK_IMPORTED_MODULE_12___default().actions), {
1677
- [(_Board_module_scss__WEBPACK_IMPORTED_MODULE_12___default().shown)]: showActions
1740
+ /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.FloatingPortal, {
1741
+ children: [
1742
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
1743
+ className: classnames__WEBPACK_IMPORTED_MODULE_3___default()((_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().floating), (_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().focus), {
1744
+ [(_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().hidden)]: !hasFocus
1745
+ }),
1746
+ ref: floatingFocus.refs.setFloating,
1747
+ style: {
1748
+ position: floatingFocus.strategy,
1749
+ top: floatingFocus.y ? floatingFocus.y + cellSize : 0,
1750
+ left: floatingFocus.x ?? 0,
1751
+ width: cellSize,
1752
+ height: cellSize,
1753
+ opacity: hasFocus ? 1 : 0,
1754
+ visibility: floatingFocus.x === null || floatingFocus.y === null ? "hidden" : "visible",
1755
+ transition
1756
+ },
1757
+ tabIndex: 0
1678
1758
  }),
1679
- disabled: !showActions,
1680
- direction: direction,
1681
- ref: refs.setFloating,
1682
- style: {
1683
- position: strategy,
1684
- top: y ?? 0,
1685
- left: x ?? 0,
1686
- transition,
1687
- opacity: showActions ? 1 : 0,
1688
- pointerEvents: showActions ? "auto" : "none",
1689
- userSelect: showActions ? "auto" : "none",
1690
- visibility: x === null || y === null ? "hidden" : "visible"
1691
- },
1692
- onDirectionToggle: handleDirectionToggle,
1693
- onToggleBlank: handleToggleBlank,
1694
- onToggleFilterCell: handleToggleFilterCell
1695
- })
1759
+ hasFocus && !showInputPrompt && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_11__/* .Actions */ .eX, {
1760
+ cell: cell,
1761
+ className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().floating),
1762
+ direction: direction,
1763
+ ref: floatingActions.refs.setFloating,
1764
+ style: {
1765
+ position: floatingActions.strategy,
1766
+ top: floatingActions.y ?? 0,
1767
+ left: floatingActions.x ?? 0,
1768
+ transition
1769
+ },
1770
+ onDirectionToggle: handleToggleDirection,
1771
+ onEnterWord: handleEnterWord,
1772
+ onToggleBlank: handleToggleBlank,
1773
+ onToggleFilterCell: handleToggleFilterCell
1774
+ }),
1775
+ hasFocus && showInputPrompt && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_11__/* .InputPrompt */ .zT, {
1776
+ className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_13___default().floating),
1777
+ direction: direction,
1778
+ initialValue: cell.tile.character,
1779
+ ref: floatingInputPrompt.refs.setFloating,
1780
+ style: {
1781
+ position: floatingInputPrompt.strategy,
1782
+ top: floatingInputPrompt.y ?? 0,
1783
+ left: floatingInputPrompt.x ?? 0,
1784
+ transition
1785
+ },
1786
+ onDirectionToggle: handleToggleDirection,
1787
+ onSubmit: handleInsertWord
1788
+ })
1789
+ ]
1696
1790
  })
1697
1791
  ]
1698
1792
  });
@@ -1728,14 +1822,15 @@ _components__WEBPACK_IMPORTED_MODULE_3__ = (__webpack_async_dependencies__.then
1728
1822
 
1729
1823
 
1730
1824
 
1731
- const BoardPure = ({ className , cellSize , inputRefs , rows , style , onBlur , onChange , onFocus , onKeyDown , onPaste })=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
1825
+ const BoardPure = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardRef)(({ className , cellSize , inputRefs , rows , style , onBlur , onChange , onFocus , onKeyDown , onPaste }, ref)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
1732
1826
  className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Board_module_scss__WEBPACK_IMPORTED_MODULE_4___default().board), className),
1827
+ ref: ref,
1733
1828
  style: style,
1734
1829
  onBlur: onBlur,
1735
1830
  onKeyDown: onKeyDown,
1736
1831
  onPaste: onPaste,
1737
1832
  children: rows.map((cells, y)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(react__WEBPACK_IMPORTED_MODULE_2__.Fragment, {
1738
- children: cells.map((cell, x)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_3__/* .Cell */ .b, {
1833
+ children: cells.map((cell, x)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_3__/* .Cell */ .bL, {
1739
1834
  className: (_Board_module_scss__WEBPACK_IMPORTED_MODULE_4___default().cell),
1740
1835
  cell: cell,
1741
1836
  cellBottom: y < rows.length - 1 ? rows[y + 1][x] : undefined,
@@ -1748,7 +1843,7 @@ const BoardPure = ({ className , cellSize , inputRefs , rows , style , onBlur ,
1748
1843
  onFocus: onFocus
1749
1844
  }, x))
1750
1845
  }, y))
1751
- });
1846
+ }));
1752
1847
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_2__.memo)(BoardPure));
1753
1848
 
1754
1849
  __webpack_async_result__();
@@ -1771,14 +1866,15 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
1771
1866
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
1772
1867
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
1773
1868
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
1774
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
1775
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
1869
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
1870
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
1776
1871
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
1777
1872
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83900);
1778
- /* harmony import */ var _Actions_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(79739);
1779
- /* harmony import */ var _Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8__);
1780
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _Button__WEBPACK_IMPORTED_MODULE_7__]);
1781
- ([state__WEBPACK_IMPORTED_MODULE_6__, _Button__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1873
+ /* harmony import */ var _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(8389);
1874
+ /* harmony import */ var _Actions_module_scss__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(79739);
1875
+ /* harmony import */ var _Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9__);
1876
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _Button__WEBPACK_IMPORTED_MODULE_7__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_8__]);
1877
+ ([state__WEBPACK_IMPORTED_MODULE_6__, _Button__WEBPACK_IMPORTED_MODULE_7__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
1782
1878
 
1783
1879
 
1784
1880
 
@@ -1788,8 +1884,10 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
1788
1884
 
1789
1885
 
1790
1886
 
1791
- const Actions = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_3__.forwardRef)(({ cell , className , direction , disabled , onDirectionToggle , onToggleBlank , onToggleFilterCell , ...props }, ref)=>{
1887
+
1888
+ const Actions = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_3__.forwardRef)(({ cell , className , direction , onDirectionToggle , onEnterWord , onToggleBlank , onToggleFilterCell , ...props }, ref)=>{
1792
1889
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
1890
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectInputMode */ .Ub);
1793
1891
  const isFiltered = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCellIsFiltered */ .id)(state, cell));
1794
1892
  const resultCandidateCells = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectResultCandidateCells */ .GL);
1795
1893
  const isBlank = cell.tile.isBlank;
@@ -1797,36 +1895,36 @@ const Actions = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_3__.forwardRef)(
1797
1895
  // On iOS it helps with losing focus too early which makes Actions disappear
1798
1896
  const handleMouseDown = (event)=>event.preventDefault();
1799
1897
  return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
1800
- className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().actions), className),
1898
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default().actions), className),
1801
1899
  ref: ref,
1802
1900
  ...props,
1803
1901
  children: [
1804
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1805
- "aria-label": translate("cell.toggle-direction"),
1806
- className: (_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().action),
1807
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .ArrowDown */ .K5,
1808
- iconClassName: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().toggleDirection), {
1809
- [(_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().right)]: direction === "horizontal"
1810
- }),
1811
- tabIndex: disabled ? -1 : undefined,
1812
- tooltip: translate("cell.toggle-direction"),
1902
+ inputMode === "touchscreen" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1903
+ "aria-label": translate("cell.enter-word"),
1904
+ className: (_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default().action),
1905
+ Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .Keyboard */ .N1,
1906
+ tooltip: translate("cell.enter-word"),
1907
+ onClick: onEnterWord,
1908
+ onMouseDown: handleMouseDown
1909
+ }),
1910
+ inputMode === "keyboard" && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
1911
+ className: (_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default().action),
1912
+ direction: direction,
1813
1913
  onClick: onDirectionToggle,
1814
1914
  onMouseDown: handleMouseDown
1815
1915
  }),
1816
1916
  isEmpty && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1817
1917
  "aria-label": translate("cell.filter-cell"),
1818
- className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().action)),
1918
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default().action)),
1819
1919
  Icon: isFiltered ? icons__WEBPACK_IMPORTED_MODULE_4__/* .Flag */ .WN : icons__WEBPACK_IMPORTED_MODULE_4__/* .FlagFill */ .aR,
1820
- tabIndex: disabled ? -1 : undefined,
1821
1920
  tooltip: translate("cell.filter-cell"),
1822
1921
  onClick: onToggleFilterCell,
1823
1922
  onMouseDown: handleMouseDown
1824
1923
  }),
1825
1924
  !isEmpty && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
1826
1925
  "aria-label": isBlank ? translate("cell.set-not-blank") : translate("cell.set-blank"),
1827
- className: (_Actions_module_scss__WEBPACK_IMPORTED_MODULE_8___default().action),
1926
+ className: (_Actions_module_scss__WEBPACK_IMPORTED_MODULE_9___default().action),
1828
1927
  Icon: isBlank ? icons__WEBPACK_IMPORTED_MODULE_4__/* .SquareFill */ .uX : icons__WEBPACK_IMPORTED_MODULE_4__/* .Square */ .bK,
1829
- tabIndex: disabled ? -1 : undefined,
1830
1928
  tooltip: isBlank ? translate("cell.set-not-blank") : translate("cell.set-blank"),
1831
1929
  onClick: onToggleBlank,
1832
1930
  onMouseDown: handleMouseDown
@@ -1891,13 +1989,43 @@ const Cell = ({ cell , cellBottom , cellLeft , cellRight , cellTop , className ,
1891
1989
  const { tile , x , y } = cell;
1892
1990
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTranslate */ .qM)();
1893
1991
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectLocale */ .fN);
1992
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectInputMode */ .Ub);
1894
1993
  const points = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_4__/* .selectTilePoints */ .Zf)(state, cell.tile));
1895
1994
  const isValid = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_4__/* .selectCellIsValid */ .fZ)(state, cell));
1896
1995
  const isEmpty = tile.character === _scrabble_solver_constants__WEBPACK_IMPORTED_MODULE_1__.EMPTY_CELL;
1897
- const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>onFocus(x, y), [
1996
+ const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
1997
+ if (inputMode === "touchscreen") {
1998
+ event.preventDefault();
1999
+ event.target.blur();
2000
+ }
2001
+ onFocus(x, y);
2002
+ }, [
2003
+ inputMode,
2004
+ onFocus,
1898
2005
  x,
1899
- y,
1900
- onFocus
2006
+ y
2007
+ ]);
2008
+ const handleMouseDown = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
2009
+ if (inputMode === "touchscreen") {
2010
+ event.preventDefault();
2011
+ }
2012
+ onFocus(x, y);
2013
+ }, [
2014
+ inputMode,
2015
+ onFocus,
2016
+ x,
2017
+ y
2018
+ ]);
2019
+ const handleTouchStart = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
2020
+ if (inputMode === "touchscreen") {
2021
+ event.preventDefault();
2022
+ }
2023
+ onFocus(x, y);
2024
+ }, [
2025
+ inputMode,
2026
+ onFocus,
2027
+ x,
2028
+ y
1901
2029
  ]);
1902
2030
  return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
1903
2031
  "aria-label": translate("cell.tile.location", {
@@ -1920,7 +2048,9 @@ const Cell = ({ cell , cellBottom , cellLeft , cellRight , cellTop , className ,
1920
2048
  size: size,
1921
2049
  tabIndex: cell.x === 0 && cell.y === 0 ? undefined : -1,
1922
2050
  onChange: onChange,
1923
- onFocus: handleFocus
2051
+ onFocus: handleFocus,
2052
+ onMouseDown: handleMouseDown,
2053
+ onTouchStart: handleTouchStart
1924
2054
  });
1925
2055
  };
1926
2056
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Cell);
@@ -1943,6 +2073,181 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Cel
1943
2073
  _Cell__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
1944
2074
 
1945
2075
 
2076
+ __webpack_async_result__();
2077
+ } catch(e) { __webpack_async_result__(e); } });
2078
+
2079
+ /***/ }),
2080
+
2081
+ /***/ 58121:
2082
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2083
+
2084
+ "use strict";
2085
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2086
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2087
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2088
+ /* harmony export */ });
2089
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2090
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2091
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2092
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2093
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
2094
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
2095
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
2096
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83067);
2097
+ /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83900);
2098
+ /* harmony import */ var _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(8389);
2099
+ /* harmony import */ var _InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(1774);
2100
+ /* harmony import */ var _InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7__);
2101
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_4__, _Button__WEBPACK_IMPORTED_MODULE_5__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_6__]);
2102
+ ([state__WEBPACK_IMPORTED_MODULE_4__, _Button__WEBPACK_IMPORTED_MODULE_5__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2103
+
2104
+
2105
+
2106
+
2107
+
2108
+
2109
+
2110
+
2111
+ const InputPrompt = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardRef)(({ className , direction , initialValue , onDirectionToggle , onSubmit , ...props }, ref)=>{
2112
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTranslate */ .qM)();
2113
+ const [inputRef, setInputRef] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(null);
2114
+ const [input, setInput] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(initialValue.trim());
2115
+ // On iOS it helps with losing focus too early which makes Actions disappear
2116
+ const handleMouseDown = (event)=>event.preventDefault();
2117
+ const handleSubmit = (event)=>{
2118
+ event.preventDefault();
2119
+ event.stopPropagation();
2120
+ onSubmit(input);
2121
+ };
2122
+ (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
2123
+ if (inputRef) {
2124
+ inputRef.focus();
2125
+ inputRef.select();
2126
+ }
2127
+ }, [
2128
+ inputRef
2129
+ ]);
2130
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("form", {
2131
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().inputPrompt), className),
2132
+ ref: ref,
2133
+ onSubmit: handleSubmit,
2134
+ ...props,
2135
+ children: [
2136
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
2137
+ className: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().toggleDirection),
2138
+ direction: direction,
2139
+ onClick: onDirectionToggle,
2140
+ onMouseDown: handleMouseDown
2141
+ }),
2142
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
2143
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
2144
+ autoCapitalize: "none",
2145
+ autoComplete: "off",
2146
+ autoCorrect: "off",
2147
+ className: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().input),
2148
+ placeholder: translate("rack.placeholder"),
2149
+ spellCheck: false,
2150
+ ref: setInputRef,
2151
+ value: input,
2152
+ onChange: (event)=>setInput(event.target.value)
2153
+ })
2154
+ }),
2155
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
2156
+ "aria-label": translate("results.insert"),
2157
+ className: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().insert),
2158
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .Check */ .Jr,
2159
+ iconClassName: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().insertIcon),
2160
+ tooltip: translate("results.insert"),
2161
+ type: "submit",
2162
+ variant: "primary",
2163
+ onMouseDown: handleMouseDown
2164
+ })
2165
+ ]
2166
+ });
2167
+ });
2168
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (InputPrompt);
2169
+
2170
+ __webpack_async_result__();
2171
+ } catch(e) { __webpack_async_result__(e); } });
2172
+
2173
+ /***/ }),
2174
+
2175
+ /***/ 60150:
2176
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2177
+
2178
+ "use strict";
2179
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2180
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2181
+ /* harmony export */ "Z": () => (/* reexport safe */ _InputPrompt__WEBPACK_IMPORTED_MODULE_0__.Z)
2182
+ /* harmony export */ });
2183
+ /* harmony import */ var _InputPrompt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(58121);
2184
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_InputPrompt__WEBPACK_IMPORTED_MODULE_0__]);
2185
+ _InputPrompt__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2186
+
2187
+
2188
+ __webpack_async_result__();
2189
+ } catch(e) { __webpack_async_result__(e); } });
2190
+
2191
+ /***/ }),
2192
+
2193
+ /***/ 36560:
2194
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2195
+
2196
+ "use strict";
2197
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2198
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2199
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2200
+ /* harmony export */ });
2201
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
2202
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
2203
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
2204
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
2205
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3186);
2206
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83067);
2207
+ /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83900);
2208
+ /* harmony import */ var _ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(41264);
2209
+ /* harmony import */ var _ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5__);
2210
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__]);
2211
+ ([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2212
+
2213
+
2214
+
2215
+
2216
+
2217
+
2218
+ const ToggleDirectionButton = ({ className , direction , ...props })=>{
2219
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTranslate */ .qM)();
2220
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z, {
2221
+ "aria-label": translate("cell.toggle-direction"),
2222
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default().button), className),
2223
+ Icon: icons__WEBPACK_IMPORTED_MODULE_2__/* .ArrowDown */ .K5,
2224
+ iconClassName: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default().icon), {
2225
+ [(_ToggleDirectionButton_module_scss__WEBPACK_IMPORTED_MODULE_5___default().right)]: direction === "horizontal"
2226
+ }),
2227
+ tooltip: translate("cell.toggle-direction"),
2228
+ ...props
2229
+ });
2230
+ };
2231
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ToggleDirectionButton);
2232
+
2233
+ __webpack_async_result__();
2234
+ } catch(e) { __webpack_async_result__(e); } });
2235
+
2236
+ /***/ }),
2237
+
2238
+ /***/ 8389:
2239
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2240
+
2241
+ "use strict";
2242
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2243
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2244
+ /* harmony export */ "Z": () => (/* reexport safe */ _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_0__.Z)
2245
+ /* harmony export */ });
2246
+ /* harmony import */ var _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(36560);
2247
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_0__]);
2248
+ _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2249
+
2250
+
1946
2251
  __webpack_async_result__();
1947
2252
  } catch(e) { __webpack_async_result__(e); } });
1948
2253
 
@@ -1954,13 +2259,18 @@ __webpack_async_result__();
1954
2259
  "use strict";
1955
2260
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1956
2261
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1957
- /* harmony export */ "b": () => (/* reexport safe */ _Cell__WEBPACK_IMPORTED_MODULE_1__.Z),
1958
- /* harmony export */ "e": () => (/* reexport safe */ _Actions__WEBPACK_IMPORTED_MODULE_0__.Z)
2262
+ /* harmony export */ "bL": () => (/* reexport safe */ _Cell__WEBPACK_IMPORTED_MODULE_1__.Z),
2263
+ /* harmony export */ "eX": () => (/* reexport safe */ _Actions__WEBPACK_IMPORTED_MODULE_0__.Z),
2264
+ /* harmony export */ "zT": () => (/* reexport safe */ _InputPrompt__WEBPACK_IMPORTED_MODULE_2__.Z)
1959
2265
  /* harmony export */ });
1960
2266
  /* harmony import */ var _Actions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(38833);
1961
2267
  /* harmony import */ var _Cell__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21533);
1962
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Actions__WEBPACK_IMPORTED_MODULE_0__, _Cell__WEBPACK_IMPORTED_MODULE_1__]);
1963
- ([_Actions__WEBPACK_IMPORTED_MODULE_0__, _Cell__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2268
+ /* harmony import */ var _InputPrompt__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(60150);
2269
+ /* harmony import */ var _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8389);
2270
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_Actions__WEBPACK_IMPORTED_MODULE_0__, _Cell__WEBPACK_IMPORTED_MODULE_1__, _InputPrompt__WEBPACK_IMPORTED_MODULE_2__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_3__]);
2271
+ ([_Actions__WEBPACK_IMPORTED_MODULE_0__, _Cell__WEBPACK_IMPORTED_MODULE_1__, _InputPrompt__WEBPACK_IMPORTED_MODULE_2__, _ToggleDirectionButton__WEBPACK_IMPORTED_MODULE_3__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2272
+
2273
+
1964
2274
 
1965
2275
 
1966
2276
 
@@ -1975,13 +2285,24 @@ __webpack_async_result__();
1975
2285
  "use strict";
1976
2286
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
1977
2287
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
1978
- /* harmony export */ "N": () => (/* reexport safe */ _useGrid__WEBPACK_IMPORTED_MODULE_1__.Z),
1979
- /* harmony export */ "c": () => (/* reexport safe */ _useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__.Z)
2288
+ /* harmony export */ "Fc": () => (/* reexport safe */ _useFloatingActions__WEBPACK_IMPORTED_MODULE_2__.Z),
2289
+ /* harmony export */ "Nm": () => (/* reexport safe */ _useGrid__WEBPACK_IMPORTED_MODULE_5__.Z),
2290
+ /* harmony export */ "RD": () => (/* reexport safe */ _useFloatingFocus__WEBPACK_IMPORTED_MODULE_3__.Z),
2291
+ /* harmony export */ "gx": () => (/* reexport safe */ _useFloatingInputPrompt__WEBPACK_IMPORTED_MODULE_4__.Z),
2292
+ /* harmony export */ "oQ": () => (/* reexport safe */ _useBoardStyle__WEBPACK_IMPORTED_MODULE_1__.Z)
1980
2293
  /* harmony export */ });
1981
2294
  /* harmony import */ var _useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(96589);
1982
- /* harmony import */ var _useGrid__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27070);
1983
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__, _useGrid__WEBPACK_IMPORTED_MODULE_1__]);
1984
- ([_useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__, _useGrid__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2295
+ /* harmony import */ var _useBoardStyle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(8220);
2296
+ /* harmony import */ var _useFloatingActions__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(49998);
2297
+ /* harmony import */ var _useFloatingFocus__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(50353);
2298
+ /* harmony import */ var _useFloatingInputPrompt__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(63714);
2299
+ /* harmony import */ var _useGrid__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(27070);
2300
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__, _useBoardStyle__WEBPACK_IMPORTED_MODULE_1__, _useFloatingActions__WEBPACK_IMPORTED_MODULE_2__, _useFloatingFocus__WEBPACK_IMPORTED_MODULE_3__, _useFloatingInputPrompt__WEBPACK_IMPORTED_MODULE_4__, _useGrid__WEBPACK_IMPORTED_MODULE_5__]);
2301
+ ([_useBackgroundImage__WEBPACK_IMPORTED_MODULE_0__, _useBoardStyle__WEBPACK_IMPORTED_MODULE_1__, _useFloatingActions__WEBPACK_IMPORTED_MODULE_2__, _useFloatingFocus__WEBPACK_IMPORTED_MODULE_3__, _useFloatingInputPrompt__WEBPACK_IMPORTED_MODULE_4__, _useGrid__WEBPACK_IMPORTED_MODULE_5__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2302
+
2303
+
2304
+
2305
+
1985
2306
 
1986
2307
 
1987
2308
 
@@ -2008,8 +2329,8 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2008
2329
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6022);
2009
2330
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
2010
2331
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(75704);
2011
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(58966);
2012
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(55238);
2332
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(3186);
2333
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(18954);
2013
2334
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(64534);
2014
2335
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(83067);
2015
2336
  /* harmony import */ var _lib__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(41051);
@@ -2026,6 +2347,8 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hook
2026
2347
 
2027
2348
 
2028
2349
 
2350
+ const BORDER_RADIUS_XS = 3;
2351
+ const GRID_LINE_SIZE = 1;
2029
2352
  const HORIZONTAL_LINE = "h";
2030
2353
  const VERTICAL_LINE = "v";
2031
2354
  const BONUS = "b";
@@ -2034,6 +2357,8 @@ const BONUS_WORD_3 = "b3";
2034
2357
  const CELL_FILTER = "c";
2035
2358
  const useBackgroundImage = ()=>{
2036
2359
  const { boardSize , cellSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useAppLayout */ .Ft)();
2360
+ const { isLessThanXs } = (0,hooks__WEBPACK_IMPORTED_MODULE_5__/* .useMediaQueries */ .lS)();
2361
+ const borderRadius = isLessThanXs ? BORDER_RADIUS_XS : parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_;
2037
2362
  const config = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectConfig */ .$o);
2038
2363
  const center = {
2039
2364
  x: Math.floor(config.boardWidth / 2),
@@ -2068,7 +2393,7 @@ const useBackgroundImage = ()=>{
2068
2393
  id: HORIZONTAL_LINE,
2069
2394
  children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2070
2395
  fill: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_COLOR_LIGHT */ .uI,
2071
- height: 1,
2396
+ height: GRID_LINE_SIZE,
2072
2397
  width: viewBoxWidth
2073
2398
  })
2074
2399
  }),
@@ -2077,14 +2402,14 @@ const useBackgroundImage = ()=>{
2077
2402
  children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2078
2403
  fill: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_COLOR_LIGHT */ .uI,
2079
2404
  height: viewBoxHeight,
2080
- width: 1
2405
+ width: GRID_LINE_SIZE
2081
2406
  })
2082
2407
  }),
2083
2408
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("symbol", {
2084
2409
  id: BONUS,
2085
2410
  children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2086
2411
  height: bonusSize,
2087
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2412
+ rx: borderRadius,
2088
2413
  width: bonusSize,
2089
2414
  x: bonusOffset,
2090
2415
  y: bonusOffset
@@ -2095,7 +2420,7 @@ const useBackgroundImage = ()=>{
2095
2420
  children: [
2096
2421
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2097
2422
  height: bonusSize,
2098
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2423
+ rx: borderRadius,
2099
2424
  width: bonusSize,
2100
2425
  x: bonusOffset,
2101
2426
  y: bonusOffset
@@ -2118,7 +2443,7 @@ const useBackgroundImage = ()=>{
2118
2443
  children: [
2119
2444
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2120
2445
  height: bonusSize,
2121
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2446
+ rx: borderRadius,
2122
2447
  width: bonusSize,
2123
2448
  x: bonusOffset,
2124
2449
  y: bonusOffset
@@ -2142,7 +2467,7 @@ const useBackgroundImage = ()=>{
2142
2467
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2143
2468
  fill: parameters__WEBPACK_IMPORTED_MODULE_8__/* .COLOR_FILTERED */ .pS,
2144
2469
  height: bonusSize,
2145
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2470
+ rx: borderRadius,
2146
2471
  width: bonusSize,
2147
2472
  x: bonusOffset,
2148
2473
  y: bonusOffset
@@ -2161,7 +2486,7 @@ const useBackgroundImage = ()=>{
2161
2486
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2162
2487
  fill: "white",
2163
2488
  height: viewBoxHeight,
2164
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2489
+ rx: borderRadius,
2165
2490
  width: viewBoxWidth,
2166
2491
  x: "0",
2167
2492
  y: "0"
@@ -2199,7 +2524,7 @@ const useBackgroundImage = ()=>{
2199
2524
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("rect", {
2200
2525
  fill: parameters__WEBPACK_IMPORTED_MODULE_8__/* .COLOR_BONUS_START */ .HC,
2201
2526
  height: bonusSize,
2202
- rx: parameters__WEBPACK_IMPORTED_MODULE_8__/* .BORDER_RADIUS */ .n_,
2527
+ rx: borderRadius,
2203
2528
  width: bonusSize,
2204
2529
  x: getX(center) + bonusOffset,
2205
2530
  y: getY(center) + bonusOffset
@@ -2237,6 +2562,148 @@ __webpack_async_result__();
2237
2562
 
2238
2563
  /***/ }),
2239
2564
 
2565
+ /***/ 8220:
2566
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2567
+
2568
+ "use strict";
2569
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2570
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2571
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2572
+ /* harmony export */ });
2573
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
2574
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
2575
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(75704);
2576
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(18954);
2577
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83067);
2578
+ /* harmony import */ var _useBackgroundImage__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(96589);
2579
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_1__, state__WEBPACK_IMPORTED_MODULE_3__, _useBackgroundImage__WEBPACK_IMPORTED_MODULE_4__]);
2580
+ ([hooks__WEBPACK_IMPORTED_MODULE_1__, state__WEBPACK_IMPORTED_MODULE_3__, _useBackgroundImage__WEBPACK_IMPORTED_MODULE_4__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2581
+
2582
+
2583
+
2584
+
2585
+
2586
+ const useBoardStyle = ()=>{
2587
+ const config = (0,state__WEBPACK_IMPORTED_MODULE_3__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_3__/* .selectConfig */ .$o);
2588
+ const { cellSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_1__/* .useAppLayout */ .Ft)();
2589
+ const { tileFontSize } = (0,lib__WEBPACK_IMPORTED_MODULE_2__/* .getTileSizes */ .vc)(cellSize);
2590
+ const backgroundImage = (0,_useBackgroundImage__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .Z)();
2591
+ const boardStyle = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(()=>({
2592
+ backgroundImage,
2593
+ fontSize: tileFontSize,
2594
+ gridTemplateColumns: `repeat(${config.boardWidth}, 1fr)`,
2595
+ gridTemplateRows: `repeat(${config.boardHeight}, 1fr)`
2596
+ }), [
2597
+ backgroundImage,
2598
+ config.boardHeight,
2599
+ config.boardWidth,
2600
+ tileFontSize
2601
+ ]);
2602
+ return boardStyle;
2603
+ };
2604
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useBoardStyle);
2605
+
2606
+ __webpack_async_result__();
2607
+ } catch(e) { __webpack_async_result__(e); } });
2608
+
2609
+ /***/ }),
2610
+
2611
+ /***/ 49998:
2612
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2613
+
2614
+ "use strict";
2615
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2616
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2617
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2618
+ /* harmony export */ });
2619
+ /* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21964);
2620
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(75704);
2621
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(64534);
2622
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__, hooks__WEBPACK_IMPORTED_MODULE_1__]);
2623
+ ([_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__, hooks__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
2624
+
2625
+
2626
+
2627
+ const useFloatingActions = ()=>{
2628
+ const { actionsWidth } = (0,hooks__WEBPACK_IMPORTED_MODULE_1__/* .useAppLayout */ .Ft)();
2629
+ return (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.useFloating)({
2630
+ middleware: [
2631
+ (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.offset)({
2632
+ mainAxis: -parameters__WEBPACK_IMPORTED_MODULE_2__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO,
2633
+ alignmentAxis: parameters__WEBPACK_IMPORTED_MODULE_2__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO - actionsWidth
2634
+ }),
2635
+ (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.shift)()
2636
+ ],
2637
+ placement: "top-end",
2638
+ whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.autoUpdate
2639
+ });
2640
+ };
2641
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useFloatingActions);
2642
+
2643
+ __webpack_async_result__();
2644
+ } catch(e) { __webpack_async_result__(e); } });
2645
+
2646
+ /***/ }),
2647
+
2648
+ /***/ 50353:
2649
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2650
+
2651
+ "use strict";
2652
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2653
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2654
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2655
+ /* harmony export */ });
2656
+ /* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21964);
2657
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__]);
2658
+ _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2659
+
2660
+ const useFloatingFocus = ()=>{
2661
+ return (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.useFloating)({
2662
+ placement: "top-start",
2663
+ whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.autoUpdate
2664
+ });
2665
+ };
2666
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useFloatingFocus);
2667
+
2668
+ __webpack_async_result__();
2669
+ } catch(e) { __webpack_async_result__(e); } });
2670
+
2671
+ /***/ }),
2672
+
2673
+ /***/ 63714:
2674
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
2675
+
2676
+ "use strict";
2677
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
2678
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
2679
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
2680
+ /* harmony export */ });
2681
+ /* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(21964);
2682
+ /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(64534);
2683
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__]);
2684
+ _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
2685
+
2686
+
2687
+ const useFloatingInputPrompt = ()=>{
2688
+ return (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.useFloating)({
2689
+ middleware: [
2690
+ (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.offset)({
2691
+ mainAxis: -parameters__WEBPACK_IMPORTED_MODULE_1__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO,
2692
+ alignmentAxis: parameters__WEBPACK_IMPORTED_MODULE_1__/* .BOARD_CELL_ACTIONS_OFFSET */ .IO
2693
+ }),
2694
+ (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.shift)()
2695
+ ],
2696
+ placement: "top",
2697
+ whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_0__.autoUpdate
2698
+ });
2699
+ };
2700
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (useFloatingInputPrompt);
2701
+
2702
+ __webpack_async_result__();
2703
+ } catch(e) { __webpack_async_result__(e); } });
2704
+
2705
+ /***/ }),
2706
+
2240
2707
  /***/ 27070:
2241
2708
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
2242
2709
 
@@ -2254,7 +2721,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2254
2721
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
2255
2722
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
2256
2723
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(36743);
2257
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(55238);
2724
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(18954);
2258
2725
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83067);
2259
2726
  /* harmony import */ var _lib__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(41051);
2260
2727
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_7__]);
@@ -2538,6 +3005,23 @@ const useGrid = (rows)=>{
2538
3005
  }
2539
3006
  const { x , y } = position;
2540
3007
  const character = event.key.toLowerCase();
3008
+ const isTogglingBlank = (0,lib__WEBPACK_IMPORTED_MODULE_6__/* .isCtrl */ .yl)(event) && character === "b";
3009
+ const twoCharacterTile = config.getTwoCharacterTileByPrefix(character);
3010
+ if (isTogglingBlank) {
3011
+ event.preventDefault();
3012
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .boardSlice.actions.toggleCellIsBlank */ .I8.actions.toggleCellIsBlank(position));
3013
+ return;
3014
+ }
3015
+ if ((0,lib__WEBPACK_IMPORTED_MODULE_6__/* .isCtrl */ .yl)(event) && twoCharacterTile) {
3016
+ event.preventDefault();
3017
+ dispatch(state__WEBPACK_IMPORTED_MODULE_7__/* .boardSlice.actions.changeCellValue */ .I8.actions.changeCellValue({
3018
+ x,
3019
+ y,
3020
+ value: twoCharacterTile
3021
+ }));
3022
+ moveFocus(1);
3023
+ return;
3024
+ }
2541
3025
  const cell = rows[y][x];
2542
3026
  const twoCharacterCandidate = cell.tile.character + character;
2543
3027
  if (config.twoCharacterTiles.includes(twoCharacterCandidate)) {
@@ -2596,6 +3080,7 @@ const useGrid = (rows)=>{
2596
3080
  inputRefs
2597
3081
  },
2598
3082
  {
3083
+ insertValue,
2599
3084
  onChange,
2600
3085
  onDirectionToggle,
2601
3086
  onFocus,
@@ -2817,8 +3302,8 @@ __webpack_async_result__();
2817
3302
  var jsx_runtime_ = __webpack_require__(20997);
2818
3303
  // EXTERNAL MODULE: external "classnames"
2819
3304
  var external_classnames_ = __webpack_require__(59003);
2820
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
2821
- var icons = __webpack_require__(58966);
3305
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
3306
+ var icons = __webpack_require__(3186);
2822
3307
  ;// CONCATENATED MODULE: ./src/components/Checkbox/Checkbox.tsx
2823
3308
 
2824
3309
 
@@ -3452,7 +3937,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3452
3937
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
3453
3938
  /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19931);
3454
3939
  /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_modal__WEBPACK_IMPORTED_MODULE_3__);
3455
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
3940
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
3456
3941
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64534);
3457
3942
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
3458
3943
  /* harmony import */ var _IconButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(95975);
@@ -3627,7 +4112,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3627
4112
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
3628
4113
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
3629
4114
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75704);
3630
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
4115
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
3631
4116
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64534);
3632
4117
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
3633
4118
  /* harmony import */ var _IconButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(95975);
@@ -3742,7 +4227,7 @@ const NavButtons = ({ onClear , onShowKeyMap , onShowMenu , onShowRemainingTiles
3742
4227
  showKeyMap && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_IconButton__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3743
4228
  "aria-label": translate("keyMap"),
3744
4229
  className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
3745
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .Keyboard */ .N1,
4230
+ Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .KeyboardFill */ .KD,
3746
4231
  tooltip: translate("keyMap"),
3747
4232
  onClick: onShowKeyMap
3748
4233
  }),
@@ -3795,8 +4280,8 @@ __webpack_require__.d(__webpack_exports__, {
3795
4280
 
3796
4281
  // EXTERNAL MODULE: external "react/jsx-runtime"
3797
4282
  var jsx_runtime_ = __webpack_require__(20997);
3798
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
3799
- var icons = __webpack_require__(58966);
4283
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
4284
+ var icons = __webpack_require__(3186);
3800
4285
  // EXTERNAL MODULE: ./src/components/PlainTiles/index.ts + 9 modules
3801
4286
  var PlainTiles = __webpack_require__(83601);
3802
4287
  // EXTERNAL MODULE: ./src/components/NotFound/NotFound.module.scss
@@ -4108,20 +4593,27 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4108
4593
  /* harmony export */ });
4109
4594
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4110
4595
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4111
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4112
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4113
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4114
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4115
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4116
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4117
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(36743);
4118
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
4119
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
4120
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(52404);
4121
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__);
4122
- /* harmony import */ var _RackTile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(92810);
4123
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _RackTile__WEBPACK_IMPORTED_MODULE_7__]);
4124
- ([state__WEBPACK_IMPORTED_MODULE_6__, _RackTile__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4596
+ /* harmony import */ var _floating_ui_react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(21964);
4597
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(59003);
4598
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_2__);
4599
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
4600
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
4601
+ /* harmony import */ var react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(54620);
4602
+ /* harmony import */ var react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_4__);
4603
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(6022);
4604
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_5__);
4605
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(75704);
4606
+ /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(36743);
4607
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(18954);
4608
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(83067);
4609
+ /* harmony import */ var _components__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(30032);
4610
+ /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(52404);
4611
+ /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11__);
4612
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_6__, state__WEBPACK_IMPORTED_MODULE_9__, _components__WEBPACK_IMPORTED_MODULE_10__]);
4613
+ ([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_6__, state__WEBPACK_IMPORTED_MODULE_9__, _components__WEBPACK_IMPORTED_MODULE_10__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4614
+ /* eslint-disable max-lines, max-statements */
4615
+
4616
+
4125
4617
 
4126
4618
 
4127
4619
 
@@ -4132,23 +4624,38 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
4132
4624
 
4133
4625
 
4134
4626
  const Rack = ({ className , tileSize })=>{
4135
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
4136
- const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
4137
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
4138
- const rack = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectRack */ .QB);
4139
- const resultCandidateTiles = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectResultCandidateTiles */ .z$);
4140
- const tiles = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>(0,lib__WEBPACK_IMPORTED_MODULE_5__/* .zipCharactersAndTiles */ .gV)(rack, resultCandidateTiles), [
4627
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_5__.useDispatch)();
4628
+ const config = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectConfig */ .$o);
4629
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectLocale */ .fN);
4630
+ const rack = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectRack */ .QB);
4631
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectInputMode */ .Ub);
4632
+ const { rackHeight } = (0,hooks__WEBPACK_IMPORTED_MODULE_6__/* .useAppLayout */ .Ft)();
4633
+ const resultCandidateTiles = (0,state__WEBPACK_IMPORTED_MODULE_9__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_9__/* .selectResultCandidateTiles */ .z$);
4634
+ const tiles = (0,react__WEBPACK_IMPORTED_MODULE_3__.useMemo)(()=>(0,lib__WEBPACK_IMPORTED_MODULE_8__/* .zipCharactersAndTiles */ .gV)(rack, resultCandidateTiles), [
4141
4635
  rack,
4142
4636
  resultCandidateTiles
4143
4637
  ]);
4144
4638
  const tilesCount = tiles.length;
4145
- const tilesRefs = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>(0,lib__WEBPACK_IMPORTED_MODULE_5__/* .createArray */ .Ri)(tilesCount).map(()=>/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.createRef)()), [
4639
+ const tilesRefs = (0,react__WEBPACK_IMPORTED_MODULE_3__.useMemo)(()=>(0,lib__WEBPACK_IMPORTED_MODULE_8__/* .createArray */ .Ri)(tilesCount).map(()=>/*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_3__.createRef)()), [
4146
4640
  tilesCount
4147
4641
  ]);
4148
- const activeIndexRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();
4149
- const { direction } = i18n__WEBPACK_IMPORTED_MODULE_4__/* .LOCALE_FEATURES */ .q0[locale];
4150
- const { tileFontSize } = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .getTileSizes */ .vc)(tileSize);
4151
- const changeActiveIndex = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((offset)=>{
4642
+ const activeIndexRef = (0,react__WEBPACK_IMPORTED_MODULE_3__.useRef)();
4643
+ const [hasFocus, setHasFocus] = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)(false);
4644
+ const [input, setInput] = (0,react__WEBPACK_IMPORTED_MODULE_3__.useState)("");
4645
+ const { direction } = i18n__WEBPACK_IMPORTED_MODULE_7__/* .LOCALE_FEATURES */ .q0[locale];
4646
+ const { tileFontSize } = (0,lib__WEBPACK_IMPORTED_MODULE_8__/* .getTileSizes */ .vc)(tileSize);
4647
+ const showInputPrompt = inputMode === "touchscreen" && hasFocus;
4648
+ const ref = (0,react__WEBPACK_IMPORTED_MODULE_3__.useRef)(null);
4649
+ react_cool_onclickoutside__WEBPACK_IMPORTED_MODULE_4___default()(()=>setHasFocus(false), {
4650
+ ignoreClass: [
4651
+ _components__WEBPACK_IMPORTED_MODULE_10__/* .InputPrompt.styles.form */ .z.styles.form,
4652
+ _components__WEBPACK_IMPORTED_MODULE_10__/* .InputPrompt.styles.input */ .z.styles.input
4653
+ ],
4654
+ refs: [
4655
+ ref
4656
+ ]
4657
+ });
4658
+ const changeActiveIndex = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((offset)=>{
4152
4659
  const nextActiveIndex = Math.min(Math.max((activeIndexRef.current || 0) + offset, 0), tilesCount - 1);
4153
4660
  const tileRef = tilesRefs[nextActiveIndex].current;
4154
4661
  if (tileRef) {
@@ -4160,24 +4667,24 @@ const Rack = ({ className , tileSize })=>{
4160
4667
  tilesCount,
4161
4668
  tilesRefs
4162
4669
  ]);
4163
- const handleChange = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((event)=>{
4164
- const value = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .extractInputValue */ .WM)(event.target);
4165
- const characters = value ? (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .extractCharacters */ .nK)(config, value) : [];
4670
+ const handleChange = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4671
+ const value = (0,lib__WEBPACK_IMPORTED_MODULE_8__/* .extractInputValue */ .WM)(event.target);
4672
+ const characters = value ? (0,lib__WEBPACK_IMPORTED_MODULE_8__/* .extractCharacters */ .nK)(config, value) : [];
4166
4673
  changeActiveIndex(value ? characters.length : -1);
4167
4674
  }, [
4168
4675
  changeActiveIndex,
4169
4676
  config
4170
4677
  ]);
4171
- const handlePaste = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((event)=>{
4678
+ const handlePaste = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4172
4679
  const index = activeIndexRef.current;
4173
4680
  if (typeof index === "undefined") {
4174
4681
  return;
4175
4682
  }
4176
4683
  event.preventDefault();
4177
4684
  const value = event.clipboardData.getData("text/plain").toLocaleLowerCase();
4178
- const characters = value ? (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .extractCharacters */ .nK)(config, value) : [];
4685
+ const characters = value ? (0,lib__WEBPACK_IMPORTED_MODULE_8__/* .extractCharacters */ .nK)(config, value) : [];
4179
4686
  changeActiveIndex(value ? characters.length : -1);
4180
- dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
4687
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
4181
4688
  characters,
4182
4689
  index
4183
4690
  }));
@@ -4186,8 +4693,20 @@ const Rack = ({ className , tileSize })=>{
4186
4693
  config,
4187
4694
  dispatch
4188
4695
  ]);
4189
- const handleKeyDown = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>{
4190
- return (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .createKeyboardNavigation */ .np)({
4696
+ const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>{
4697
+ setHasFocus(true);
4698
+ floatingInputPrompt.refs.setPositionReference(ref.current);
4699
+ const characters = rack.filter((character)=>character !== null);
4700
+ const uppercasedDigraphs = characters.map((character)=>{
4701
+ return character.length > 1 ? character.toLocaleUpperCase(locale) : character;
4702
+ });
4703
+ setInput(uppercasedDigraphs.join(""));
4704
+ }, [
4705
+ rack,
4706
+ ref
4707
+ ]);
4708
+ const handleKeyDown = (0,react__WEBPACK_IMPORTED_MODULE_3__.useMemo)(()=>{
4709
+ return (0,lib__WEBPACK_IMPORTED_MODULE_8__/* .createKeyboardNavigation */ .np)({
4191
4710
  onArrowLeft: (event)=>{
4192
4711
  event.preventDefault();
4193
4712
  changeActiveIndex(direction === "ltr" ? -1 : 1);
@@ -4206,7 +4725,7 @@ const Rack = ({ className , tileSize })=>{
4206
4725
  return;
4207
4726
  }
4208
4727
  event.preventDefault();
4209
- dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
4728
+ dispatch(state__WEBPACK_IMPORTED_MODULE_9__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
4210
4729
  characters: [
4211
4730
  null
4212
4731
  ],
@@ -4215,7 +4734,9 @@ const Rack = ({ className , tileSize })=>{
4215
4734
  changeActiveIndex(1);
4216
4735
  },
4217
4736
  onKeyDown: (event)=>{
4218
- if (event.currentTarget.value === event.key) {
4737
+ if ((0,lib__WEBPACK_IMPORTED_MODULE_8__/* .isCtrl */ .yl)(event) && config.isTwoCharacterTilePrefix(event.key)) {
4738
+ changeActiveIndex(1);
4739
+ } else if (event.currentTarget.value === event.key) {
4219
4740
  // change event did not fire because the same character was typed over the current one
4220
4741
  // but we still want to move the caret
4221
4742
  event.preventDefault();
@@ -4225,40 +4746,180 @@ const Rack = ({ className , tileSize })=>{
4225
4746
  }
4226
4747
  });
4227
4748
  }, [
4228
- changeActiveIndex,
4749
+ changeActiveIndex,
4750
+ config,
4751
+ direction
4752
+ ]);
4753
+ const floatingInputPrompt = (0,_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.useFloating)({
4754
+ placement: "bottom-start",
4755
+ whileElementsMounted: _floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.autoUpdate
4756
+ });
4757
+ return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
4758
+ children: [
4759
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4760
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default().rack), className, {
4761
+ [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default().hidden)]: showInputPrompt
4762
+ }),
4763
+ ref: ref,
4764
+ style: {
4765
+ fontSize: tileFontSize
4766
+ },
4767
+ onPaste: handlePaste,
4768
+ children: tiles.map(({ character , tile }, index)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_10__/* .RackTile */ .D, {
4769
+ activeIndexRef: activeIndexRef,
4770
+ character: character,
4771
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default().tile), {
4772
+ [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default().sharpLeft)]: index !== 0,
4773
+ [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_11___default().sharpRight)]: index !== tiles.length - 1
4774
+ }),
4775
+ index: index,
4776
+ inputRef: tilesRefs[index],
4777
+ size: tileSize,
4778
+ tile: tile,
4779
+ onChange: handleChange,
4780
+ onKeyDown: handleKeyDown,
4781
+ onFocus: handleFocus
4782
+ }, index))
4783
+ }),
4784
+ showInputPrompt && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__.FloatingPortal, {
4785
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_10__/* .InputPrompt */ .z, {
4786
+ ref: floatingInputPrompt.refs.setFloating,
4787
+ style: {
4788
+ position: floatingInputPrompt.strategy,
4789
+ top: floatingInputPrompt.y ? floatingInputPrompt.y - rackHeight : 0,
4790
+ left: floatingInputPrompt.x ?? 0
4791
+ },
4792
+ value: input,
4793
+ onBlur: ()=>setHasFocus(false),
4794
+ onChange: (event)=>setInput(event.target.value),
4795
+ onSubmit: ()=>setHasFocus(false)
4796
+ })
4797
+ })
4798
+ ]
4799
+ });
4800
+ };
4801
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Rack);
4802
+
4803
+ __webpack_async_result__();
4804
+ } catch(e) { __webpack_async_result__(e); } });
4805
+
4806
+ /***/ }),
4807
+
4808
+ /***/ 88593:
4809
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
4810
+
4811
+ "use strict";
4812
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4813
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4814
+ /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
4815
+ /* harmony export */ });
4816
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4817
+ /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4818
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4819
+ /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4820
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4821
+ /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4822
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4823
+ /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4824
+ /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
4825
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
4826
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
4827
+ /* harmony import */ var _InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(15098);
4828
+ /* harmony import */ var _InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7__);
4829
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_6__]);
4830
+ ([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_6__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4831
+ /* eslint-disable max-lines, max-statements */
4832
+
4833
+
4834
+
4835
+
4836
+
4837
+
4838
+
4839
+ const InputPrompt = /*#__PURE__*/ (0,react__WEBPACK_IMPORTED_MODULE_2__.forwardRef)(({ className , style , value , onBlur , onChange , onSubmit , ...props }, ref)=>{
4840
+ const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
4841
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
4842
+ const { rackHeight , rackWidth } = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useAppLayout */ .Ft)();
4843
+ const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
4844
+ const [inputRef, setInputRef] = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(null);
4845
+ const handleSubmit = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((event)=>{
4846
+ event.preventDefault();
4847
+ const charactersByCase = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .extractCharactersByCase */ .p$)(config, value);
4848
+ const characters = Array.from({
4849
+ length: config.maximumCharactersCount
4850
+ }, (_, index)=>{
4851
+ return typeof charactersByCase[index] === "string" ? charactersByCase[index] : null;
4852
+ });
4853
+ dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacters */ .O_.actions.changeCharacters({
4854
+ characters,
4855
+ index: 0
4856
+ }));
4857
+ onSubmit(event);
4858
+ }, [
4229
4859
  config,
4230
- direction
4860
+ value,
4861
+ onSubmit
4231
4862
  ]);
4232
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4233
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().rack), className),
4863
+ (0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(()=>{
4864
+ if (inputRef) {
4865
+ inputRef.focus();
4866
+ inputRef.select();
4867
+ }
4868
+ }, [
4869
+ inputRef
4870
+ ]);
4871
+ return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("form", {
4872
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().form), className),
4873
+ ref: ref,
4234
4874
  style: {
4235
- fontSize: tileFontSize
4875
+ width: rackWidth,
4876
+ height: rackHeight,
4877
+ ...style
4236
4878
  },
4237
- onPaste: handlePaste,
4238
- children: tiles.map(({ character , tile }, index)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_RackTile__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
4239
- activeIndexRef: activeIndexRef,
4240
- character: character,
4241
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()({
4242
- [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().sharpLeft)]: index !== 0,
4243
- [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().sharpRight)]: index !== tiles.length - 1
4244
- }),
4245
- index: index,
4246
- inputRef: tilesRefs[index],
4247
- size: tileSize,
4248
- tile: tile,
4249
- onChange: handleChange,
4250
- onKeyDown: handleKeyDown
4251
- }, index))
4879
+ onSubmit: handleSubmit,
4880
+ ...props,
4881
+ children: /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("input", {
4882
+ autoCapitalize: "none",
4883
+ autoComplete: "off",
4884
+ autoCorrect: "off",
4885
+ className: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default().input),
4886
+ placeholder: translate("rack.touchscreen.placeholder"),
4887
+ ref: setInputRef,
4888
+ spellCheck: false,
4889
+ value: value,
4890
+ onBlur: onBlur,
4891
+ onChange: onChange
4892
+ })
4252
4893
  });
4253
- };
4254
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Rack);
4894
+ });
4895
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Object.assign(InputPrompt, {
4896
+ styles: (_InputPrompt_module_scss__WEBPACK_IMPORTED_MODULE_7___default())
4897
+ }));
4898
+
4899
+ __webpack_async_result__();
4900
+ } catch(e) { __webpack_async_result__(e); } });
4901
+
4902
+ /***/ }),
4903
+
4904
+ /***/ 61582:
4905
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
4906
+
4907
+ "use strict";
4908
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
4909
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4910
+ /* harmony export */ "Z": () => (/* reexport safe */ _InputPrompt__WEBPACK_IMPORTED_MODULE_0__.Z)
4911
+ /* harmony export */ });
4912
+ /* harmony import */ var _InputPrompt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(88593);
4913
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_InputPrompt__WEBPACK_IMPORTED_MODULE_0__]);
4914
+ _InputPrompt__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
4915
+
4255
4916
 
4256
4917
  __webpack_async_result__();
4257
4918
  } catch(e) { __webpack_async_result__(e); } });
4258
4919
 
4259
4920
  /***/ }),
4260
4921
 
4261
- /***/ 92810:
4922
+ /***/ 78749:
4262
4923
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4263
4924
 
4264
4925
  "use strict";
@@ -4275,11 +4936,11 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4275
4936
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
4276
4937
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6022);
4277
4938
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
4278
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
4939
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
4279
4940
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
4280
4941
  /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(96815);
4281
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(52404);
4282
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__);
4942
+ /* harmony import */ var _RackTile_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(75382);
4943
+ /* harmony import */ var _RackTile_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_RackTile_module_scss__WEBPACK_IMPORTED_MODULE_8__);
4283
4944
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__]);
4284
4945
  ([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4285
4946
 
@@ -4291,17 +4952,26 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
4291
4952
 
4292
4953
 
4293
4954
 
4294
- const RackTile = ({ activeIndexRef , character , className , index , inputRef , size , tile , onChange , onKeyDown })=>{
4955
+ const RackTile = ({ activeIndexRef , character , className , index , inputRef , size , tile , onChange , onKeyDown , onFocus })=>{
4295
4956
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useDispatch)();
4296
4957
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
4297
4958
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
4298
4959
  const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
4960
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectInputMode */ .Ub);
4299
4961
  const points = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterPoints */ .Or)(state, character));
4300
4962
  const isValid = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterIsValid */ .AN)(state, character));
4301
- const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)(()=>{
4963
+ const handleFocus = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4964
+ if (inputMode === "touchscreen") {
4965
+ event.preventDefault();
4966
+ event.target.blur();
4967
+ onFocus();
4968
+ }
4302
4969
  activeIndexRef.current = index;
4303
4970
  }, [
4304
- index
4971
+ activeIndexRef,
4972
+ index,
4973
+ inputMode,
4974
+ onFocus
4305
4975
  ]);
4306
4976
  const handleChange = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4307
4977
  event.preventDefault();
@@ -4329,18 +4999,48 @@ const RackTile = ({ activeIndexRef , character , className , index , inputRef ,
4329
4999
  index
4330
5000
  }));
4331
5001
  },
4332
- onKeyDown
5002
+ onKeyDown: (event)=>{
5003
+ if ((0,lib__WEBPACK_IMPORTED_MODULE_5__/* .isCtrl */ .yl)(event) && config.isTwoCharacterTilePrefix(event.key)) {
5004
+ event.preventDefault();
5005
+ event.stopPropagation();
5006
+ const twoTilesCharacter = config.getTwoCharacterTileByPrefix(event.key);
5007
+ // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
5008
+ dispatch(state__WEBPACK_IMPORTED_MODULE_6__/* .rackSlice.actions.changeCharacter */ .O_.actions.changeCharacter({
5009
+ character: twoTilesCharacter,
5010
+ index
5011
+ }));
5012
+ }
5013
+ onKeyDown(event);
5014
+ }
4333
5015
  });
4334
5016
  }, [
4335
5017
  index,
4336
5018
  onKeyDown
4337
5019
  ]);
5020
+ const handleMouseDown = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
5021
+ if (inputMode === "touchscreen") {
5022
+ event.preventDefault();
5023
+ }
5024
+ onFocus();
5025
+ }, [
5026
+ inputMode,
5027
+ onFocus
5028
+ ]);
5029
+ const handleTouchStart = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
5030
+ if (inputMode === "touchscreen") {
5031
+ event.preventDefault();
5032
+ }
5033
+ onFocus();
5034
+ }, [
5035
+ inputMode,
5036
+ onFocus
5037
+ ]);
4338
5038
  return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
4339
5039
  "aria-label": translate("rack.tile.location", {
4340
5040
  index: (index + 1).toLocaleString(locale)
4341
5041
  }),
4342
- autoFocus: index === 0,
4343
- className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().tile), className),
5042
+ autoFocus: inputMode === "keyboard" && index === 0,
5043
+ className: classnames__WEBPACK_IMPORTED_MODULE_2___default()((_RackTile_module_scss__WEBPACK_IMPORTED_MODULE_8___default().rackTile), className),
4344
5044
  character: character === null ? undefined : character,
4345
5045
  highlighted: tile !== null,
4346
5046
  inputRef: inputRef,
@@ -4353,11 +5053,52 @@ const RackTile = ({ activeIndexRef , character , className , index , inputRef ,
4353
5053
  tabIndex: index === 0 ? undefined : -1,
4354
5054
  onChange: handleChange,
4355
5055
  onFocus: handleFocus,
4356
- onKeyDown: handleKeyDown
5056
+ onKeyDown: handleKeyDown,
5057
+ onMouseDown: handleMouseDown,
5058
+ onTouchStart: handleTouchStart
4357
5059
  }, index);
4358
5060
  };
4359
5061
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RackTile);
4360
5062
 
5063
+ __webpack_async_result__();
5064
+ } catch(e) { __webpack_async_result__(e); } });
5065
+
5066
+ /***/ }),
5067
+
5068
+ /***/ 80139:
5069
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
5070
+
5071
+ "use strict";
5072
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5073
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5074
+ /* harmony export */ "Z": () => (/* reexport safe */ _RackTile__WEBPACK_IMPORTED_MODULE_0__.Z)
5075
+ /* harmony export */ });
5076
+ /* harmony import */ var _RackTile__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(78749);
5077
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_RackTile__WEBPACK_IMPORTED_MODULE_0__]);
5078
+ _RackTile__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
5079
+
5080
+
5081
+ __webpack_async_result__();
5082
+ } catch(e) { __webpack_async_result__(e); } });
5083
+
5084
+ /***/ }),
5085
+
5086
+ /***/ 30032:
5087
+ /***/ ((module, __webpack_exports__, __webpack_require__) => {
5088
+
5089
+ "use strict";
5090
+ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5091
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5092
+ /* harmony export */ "D": () => (/* reexport safe */ _RackTile__WEBPACK_IMPORTED_MODULE_1__.Z),
5093
+ /* harmony export */ "z": () => (/* reexport safe */ _InputPrompt__WEBPACK_IMPORTED_MODULE_0__.Z)
5094
+ /* harmony export */ });
5095
+ /* harmony import */ var _InputPrompt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(61582);
5096
+ /* harmony import */ var _RackTile__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(80139);
5097
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_InputPrompt__WEBPACK_IMPORTED_MODULE_0__, _RackTile__WEBPACK_IMPORTED_MODULE_1__]);
5098
+ ([_InputPrompt__WEBPACK_IMPORTED_MODULE_0__, _RackTile__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5099
+
5100
+
5101
+
4361
5102
  __webpack_async_result__();
4362
5103
  } catch(e) { __webpack_async_result__(e); } });
4363
5104
 
@@ -4491,7 +5232,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4491
5232
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4492
5233
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4493
5234
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4494
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
5235
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
4495
5236
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
4496
5237
  /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1966);
4497
5238
  /* harmony import */ var _Tooltip__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(59004);
@@ -4568,7 +5309,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4568
5309
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4569
5310
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4570
5311
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(36743);
4571
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(55238);
5312
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
4572
5313
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
4573
5314
  /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1966);
4574
5315
  /* harmony import */ var _Cell__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(29287);
@@ -4850,7 +5591,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4850
5591
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4851
5592
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
4852
5593
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
4853
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(58966);
5594
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3186);
4854
5595
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83067);
4855
5596
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83900);
4856
5597
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__]);
@@ -5042,7 +5783,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5042
5783
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
5043
5784
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
5044
5785
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
5045
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(55238);
5786
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
5046
5787
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5047
5788
  /* harmony import */ var _ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(60066);
5048
5789
  /* harmony import */ var _ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6__);
@@ -5187,7 +5928,7 @@ const Solver = ({ className , onShowResults })=>{
5187
5928
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
5188
5929
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5189
5930
  const isTouchDevice = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useIsTouchDevice */ .YQ)();
5190
- const { maxControlsWidth , showCompactControls , showFloatingSolveButton , tileSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useAppLayout */ .Ft)();
5931
+ const { maxControlsWidth , showCompactControls , tileSize } = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useAppLayout */ .Ft)();
5191
5932
  const error = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectSolveError */ .Rn);
5192
5933
  const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5193
5934
  const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectResultCandidate */ .Xk);
@@ -5310,7 +6051,7 @@ const Solver = ({ className , onShowResults })=>{
5310
6051
  maxWidth: maxControlsWidth
5311
6052
  },
5312
6053
  children: [
5313
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_12__/* .ResultCandidatePicker */ .WI, {
6054
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_12__/* .ResultCandidatePicker */ .W, {
5314
6055
  onResultClick: onShowResults
5315
6056
  }),
5316
6057
  error && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Alert__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
@@ -5327,95 +6068,12 @@ const Solver = ({ className , onShowResults })=>{
5327
6068
  })
5328
6069
  ]
5329
6070
  })
5330
- }),
5331
- showFloatingSolveButton && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_12__/* .FloatingSolveButton */ .DY, {
5332
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_13___default().solve),
5333
- onClick: handleSubmit
5334
6071
  })
5335
6072
  ]
5336
6073
  });
5337
6074
  };
5338
6075
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_2__.memo)(Solver));
5339
6076
 
5340
- __webpack_async_result__();
5341
- } catch(e) { __webpack_async_result__(e); } });
5342
-
5343
- /***/ }),
5344
-
5345
- /***/ 90919:
5346
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5347
-
5348
- "use strict";
5349
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5350
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5351
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
5352
- /* harmony export */ });
5353
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
5354
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
5355
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
5356
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5357
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5358
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5359
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
5360
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(55238);
5361
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5362
- /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83900);
5363
- /* harmony import */ var _Spinner__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33538);
5364
- /* harmony import */ var _FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(10857);
5365
- /* harmony import */ var _FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8__);
5366
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__, _Spinner__WEBPACK_IMPORTED_MODULE_7__]);
5367
- ([state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__, _Spinner__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5368
-
5369
-
5370
-
5371
-
5372
-
5373
-
5374
-
5375
-
5376
-
5377
- const FloatingSolveButton = ({ className , onClick =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT })=>{
5378
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
5379
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5380
- const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectIsLoading */ .xU);
5381
- const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5382
- const rack = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectRack */ .QB);
5383
- const hasTiles = rack.some((tile)=>tile !== null);
5384
- const handleClick = (event)=>{
5385
- dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .solveSlice.actions.submit */ .TP.actions.submit());
5386
- onClick(event);
5387
- };
5388
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
5389
- "aria-label": translate("results.solve"),
5390
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8___default().floatingSolveButton), className),
5391
- disabled: isLoading || !isOutdated || !hasTiles,
5392
- Icon: isLoading ? _Spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z : icons__WEBPACK_IMPORTED_MODULE_3__/* .Search */ .HN,
5393
- tooltip: translate("results.solve"),
5394
- type: "submit",
5395
- variant: "primary",
5396
- onClick: handleClick
5397
- });
5398
- };
5399
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FloatingSolveButton);
5400
-
5401
- __webpack_async_result__();
5402
- } catch(e) { __webpack_async_result__(e); } });
5403
-
5404
- /***/ }),
5405
-
5406
- /***/ 71832:
5407
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5408
-
5409
- "use strict";
5410
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5411
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5412
- /* harmony export */ "Z": () => (/* reexport safe */ _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__.Z)
5413
- /* harmony export */ });
5414
- /* harmony import */ var _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(90919);
5415
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__]);
5416
- _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
5417
-
5418
-
5419
6077
  __webpack_async_result__();
5420
6078
  } catch(e) { __webpack_async_result__(e); } });
5421
6079
 
@@ -5435,7 +6093,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5435
6093
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5436
6094
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5437
6095
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5438
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
6096
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
5439
6097
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83067);
5440
6098
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83900);
5441
6099
  /* harmony import */ var _InsertButton_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(21481);
@@ -5509,17 +6167,15 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5509
6167
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5510
6168
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5511
6169
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5512
- /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75704);
5513
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
5514
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5515
- /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83900);
5516
- /* harmony import */ var _Spinner__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33538);
5517
- /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(33776);
5518
- /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(72760);
5519
- /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9__);
5520
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_3__, state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__, _Spinner__WEBPACK_IMPORTED_MODULE_7__, _InsertButton__WEBPACK_IMPORTED_MODULE_8__]);
5521
- ([hooks__WEBPACK_IMPORTED_MODULE_3__, state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__, _Spinner__WEBPACK_IMPORTED_MODULE_7__, _InsertButton__WEBPACK_IMPORTED_MODULE_8__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5522
-
6170
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
6171
+ /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83067);
6172
+ /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83900);
6173
+ /* harmony import */ var _Spinner__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(33538);
6174
+ /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33776);
6175
+ /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(72760);
6176
+ /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8__);
6177
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_4__, _Button__WEBPACK_IMPORTED_MODULE_5__, _Spinner__WEBPACK_IMPORTED_MODULE_6__, _InsertButton__WEBPACK_IMPORTED_MODULE_7__]);
6178
+ ([state__WEBPACK_IMPORTED_MODULE_4__, _Button__WEBPACK_IMPORTED_MODULE_5__, _Spinner__WEBPACK_IMPORTED_MODULE_6__, _InsertButton__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5523
6179
 
5524
6180
 
5525
6181
 
@@ -5531,58 +6187,57 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hook
5531
6187
 
5532
6188
  const ResultCandidatePicker = ({ className , onResultClick , ...props })=>{
5533
6189
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
5534
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5535
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectLocale */ .fN);
5536
- const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectIsLoading */ .xU);
5537
- const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5538
- const results = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectResults */ .x5);
5539
- const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectResultCandidate */ .Xk);
6190
+ const translate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTranslate */ .qM)();
6191
+ const locale = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectLocale */ .fN);
6192
+ const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectIsLoading */ .xU);
6193
+ const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectAreResultsOutdated */ .Mj);
6194
+ const results = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectResults */ .x5);
6195
+ const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_4__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_4__/* .selectResultCandidate */ .Xk);
5540
6196
  const index = resultCandidate && results ? results.findIndex((result)=>result.id === resultCandidate.id) : -1;
5541
6197
  const disabled = isOutdated || !resultCandidate;
5542
6198
  const isPreviousDisabled = !results || index <= 0 || disabled;
5543
6199
  const isNextDisabled = !results || index >= results.length - 1 || disabled;
5544
6200
  const bothEnabled = !isPreviousDisabled && !isNextDisabled;
5545
- const { showFloatingSolveButton } = (0,hooks__WEBPACK_IMPORTED_MODULE_3__/* .useAppLayout */ .Ft)();
5546
6201
  const handleNextClick = ()=>{
5547
6202
  if (!isNextDisabled) {
5548
6203
  const nextResult = results[index + 1];
5549
- dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(nextResult));
6204
+ dispatch(state__WEBPACK_IMPORTED_MODULE_4__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(nextResult));
5550
6205
  }
5551
6206
  };
5552
6207
  const handlePreviousClick = ()=>{
5553
6208
  if (!isPreviousDisabled) {
5554
6209
  const previousResult = results[index - 1];
5555
- dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(previousResult));
6210
+ dispatch(state__WEBPACK_IMPORTED_MODULE_4__/* .resultsSlice.actions.changeResultCandidate */ ._C.actions.changeResultCandidate(previousResult));
5556
6211
  }
5557
6212
  };
5558
6213
  return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5559
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().resultCandidatePicker), className),
6214
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().resultCandidatePicker), className),
5560
6215
  ...props,
5561
6216
  children: [
5562
6217
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5563
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().buttons), {
5564
- [(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().bothEnabled)]: bothEnabled
6218
+ className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().buttons), {
6219
+ [(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().bothEnabled)]: bothEnabled
5565
6220
  }),
5566
6221
  children: [
5567
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
6222
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
5568
6223
  "aria-label": translate("common.previous"),
5569
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().button),
6224
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
5570
6225
  disabled: isPreviousDisabled,
5571
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronLeft */ .s$,
6226
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .ChevronLeft */ .s$,
5572
6227
  onClick: handlePreviousClick
5573
6228
  }),
5574
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
6229
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
5575
6230
  "aria-label": translate("common.next"),
5576
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().button),
6231
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
5577
6232
  disabled: isNextDisabled,
5578
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronRight */ ._Q,
6233
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .ChevronRight */ ._Q,
5579
6234
  onClick: handleNextClick
5580
6235
  })
5581
6236
  ]
5582
6237
  }),
5583
6238
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("button", {
5584
6239
  "aria-label": translate("results"),
5585
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().resultCandidate),
6240
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().resultCandidate),
5586
6241
  disabled: disabled,
5587
6242
  type: "button",
5588
6243
  onClick: onResultClick,
@@ -5590,41 +6245,34 @@ const ResultCandidatePicker = ({ className , onResultClick , ...props })=>{
5590
6245
  resultCandidate && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
5591
6246
  children: [
5592
6247
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5593
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().points),
6248
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().points),
5594
6249
  children: resultCandidate.points.toLocaleString(locale)
5595
6250
  }),
5596
6251
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5597
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().word),
6252
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().word),
5598
6253
  children: resultCandidate.word
5599
6254
  })
5600
6255
  ]
5601
6256
  }),
5602
6257
  !resultCandidate && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5603
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().word),
6258
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().word),
5604
6259
  children: " "
5605
6260
  }),
5606
6261
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5607
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().iconContainer),
6262
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().iconContainer),
5608
6263
  children: [
5609
- showFloatingSolveButton && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronDown */ ._M, {
5610
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().icon)
6264
+ isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Spinner__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
6265
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().loading)
5611
6266
  }),
5612
- !showFloatingSolveButton && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
5613
- children: [
5614
- isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
5615
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().loading)
5616
- }),
5617
- !isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronDown */ ._M, {
5618
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().icon)
5619
- })
5620
- ]
6267
+ !isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_3__/* .ChevronDown */ ._M, {
6268
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().icon)
5621
6269
  })
5622
6270
  ]
5623
6271
  })
5624
6272
  ]
5625
6273
  }),
5626
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_InsertButton__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
5627
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().insert)
6274
+ /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_InsertButton__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
6275
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().insert)
5628
6276
  })
5629
6277
  ]
5630
6278
  });
@@ -5660,15 +6308,12 @@ __webpack_async_result__();
5660
6308
  "use strict";
5661
6309
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5662
6310
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5663
- /* harmony export */ "DY": () => (/* reexport safe */ _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__.Z),
5664
- /* harmony export */ "WI": () => (/* reexport safe */ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__.Z)
6311
+ /* harmony export */ "W": () => (/* reexport safe */ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_1__.Z)
5665
6312
  /* harmony export */ });
5666
- /* harmony import */ var _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71832);
5667
- /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33776);
5668
- /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(45100);
5669
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__, _InsertButton__WEBPACK_IMPORTED_MODULE_1__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__]);
5670
- ([_FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__, _InsertButton__WEBPACK_IMPORTED_MODULE_1__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5671
-
6313
+ /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(33776);
6314
+ /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(45100);
6315
+ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_InsertButton__WEBPACK_IMPORTED_MODULE_0__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_1__]);
6316
+ ([_InsertButton__WEBPACK_IMPORTED_MODULE_0__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_1__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
5672
6317
 
5673
6318
 
5674
6319
 
@@ -5765,7 +6410,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5765
6410
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
5766
6411
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
5767
6412
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
5768
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
6413
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
5769
6414
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64534);
5770
6415
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83067);
5771
6416
  /* harmony import */ var _TilePure__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(83147);
@@ -5780,7 +6425,7 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_flo
5780
6425
 
5781
6426
 
5782
6427
 
5783
- const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character ="" , disabled , highlighted , inputRef , isBlank , isValid , placeholder , points , raised , size , tabIndex , onChange , onFocus =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT , onKeyDown =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT })=>{
6428
+ const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character ="" , disabled , highlighted , inputRef , isBlank , isValid , placeholder , points , raised , size , tabIndex , onChange , onFocus =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT , onKeyDown =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT , onMouseDown =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT , onTouchStart =lib__WEBPACK_IMPORTED_MODULE_5__/* .noop */ .ZT })=>{
5784
6429
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectLocale */ .fN);
5785
6430
  const { animateTile , showTilePoints } = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useAppLayout */ .Ft)();
5786
6431
  const { pointsFontSize , tileSize } = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .getTileSizes */ .vc)(size);
@@ -5811,14 +6456,6 @@ const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character =""
5811
6456
  }, [
5812
6457
  onKeyDown
5813
6458
  ]);
5814
- (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(()=>{
5815
- if (autoFocus && ref.current) {
5816
- ref.current.focus();
5817
- }
5818
- }, [
5819
- autoFocus,
5820
- ref
5821
- ]);
5822
6459
  (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(()=>{
5823
6460
  if (!ref.current?.parentElement || !character || !animateTile) {
5824
6461
  return;
@@ -5852,7 +6489,9 @@ const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character =""
5852
6489
  tabIndex: tabIndex,
5853
6490
  onChange: onChange,
5854
6491
  onFocus: onFocus,
5855
- onKeyDown: handleKeyDown
6492
+ onKeyDown: handleKeyDown,
6493
+ onMouseDown: onMouseDown,
6494
+ onTouchStart: onTouchStart
5856
6495
  });
5857
6496
  };
5858
6497
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Tile);
@@ -5875,7 +6514,7 @@ __webpack_async_result__();
5875
6514
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5876
6515
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
5877
6516
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
5878
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
6517
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
5879
6518
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10312);
5880
6519
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__);
5881
6520
 
@@ -5883,7 +6522,7 @@ __webpack_async_result__();
5883
6522
 
5884
6523
 
5885
6524
 
5886
- const TilePure = ({ "aria-label": ariaLabel , autoFocus , canShowPoints , character , 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", {
6525
+ const TilePure = ({ "aria-label": ariaLabel , autoFocus , canShowPoints , character , className , disabled , highlighted , inputRef , isBlank , isValid , placeholder , points , pointsFormatted , pointsStyle , raised , style , tabIndex , onChange , onFocus , onKeyDown , onMouseDown , onTouchStart })=>/*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5887
6526
  className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().tile), className, {
5888
6527
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().blank)]: isBlank,
5889
6528
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().empty)]: !character,
@@ -5913,7 +6552,9 @@ const TilePure = ({ "aria-label": ariaLabel , autoFocus , canShowPoints , charac
5913
6552
  value: character || "",
5914
6553
  onChange: onChange,
5915
6554
  onFocus: onFocus,
5916
- onKeyDown: onKeyDown
6555
+ onKeyDown: onKeyDown,
6556
+ onMouseDown: onMouseDown,
6557
+ onTouchStart: onTouchStart
5917
6558
  }),
5918
6559
  canShowPoints && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
5919
6560
  className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().points),
@@ -5982,7 +6623,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5982
6623
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
5983
6624
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
5984
6625
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
5985
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
6626
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
5986
6627
  /* harmony import */ var _Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(53229);
5987
6628
  /* harmony import */ var _Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6__);
5988
6629
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_4__]);
@@ -6279,6 +6920,7 @@ const useAppLayout = ()=>{
6279
6920
  const dictionaryHeight = showResultsInModal ? parameters__WEBPACK_IMPORTED_MODULE_0__/* .DICTIONARY_HEIGHT_MOBILE */ .Rh : parameters__WEBPACK_IMPORTED_MODULE_0__/* .DICTIONARY_HEIGHT */ .n6;
6280
6921
  const modalWidth = isLessThanS ? viewportWidth : parameters__WEBPACK_IMPORTED_MODULE_0__/* .MODAL_WIDTH */ .iF;
6281
6922
  const resultsHeight = isLessThanL ? viewportHeight - dictionaryHeight - parameters__WEBPACK_IMPORTED_MODULE_0__/* .BUTTON_HEIGHT */ .FZ - parameters__WEBPACK_IMPORTED_MODULE_0__/* .MODAL_HEADER_HEIGHT */ .PV - 5 * componentsSpacing : boardSize - componentsSpacing - dictionaryHeight;
6923
+ const rackWidth = tileSize * config.maximumCharactersCount;
6282
6924
  return {
6283
6925
  actionsWidth: 2 * parameters__WEBPACK_IMPORTED_MODULE_0__/* .BUTTON_HEIGHT */ .FZ - parameters__WEBPACK_IMPORTED_MODULE_0__/* .BORDER_WIDTH */ .YF,
6284
6926
  animateTile: !isLessThanXs,
@@ -6289,10 +6931,11 @@ const useAppLayout = ()=>{
6289
6931
  logoHeight,
6290
6932
  logoWidth: logoHeight * parameters__WEBPACK_IMPORTED_MODULE_0__/* .LOGO_ASPECT_RATIO */ .pc,
6291
6933
  maxControlsWidth,
6934
+ rackHeight: tileSize,
6935
+ rackWidth,
6292
6936
  resultsHeight,
6293
6937
  resultsWidth: isLessThanL ? modalWidth - 2 * componentsSpacing : parameters__WEBPACK_IMPORTED_MODULE_0__/* .SOLVER_COLUMN_WIDTH */ .pt,
6294
6938
  showCompactControls: !showColumn,
6295
- showFloatingSolveButton: isTouchDevice,
6296
6939
  showKeyMap: !isTouchDevice,
6297
6940
  showResultsInModal,
6298
6941
  showShortNav: isLessThanS,
@@ -6316,7 +6959,7 @@ __webpack_async_result__();
6316
6959
  /* harmony export */ });
6317
6960
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
6318
6961
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6319
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55238);
6962
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18954);
6320
6963
 
6321
6964
 
6322
6965
  const useDirection = (direction)=>{
@@ -6381,7 +7024,7 @@ const useIsTouchDevice = ()=>{
6381
7024
  /* harmony export */ });
6382
7025
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
6383
7026
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6384
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(55238);
7027
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18954);
6385
7028
 
6386
7029
 
6387
7030
  const useLanguage = (language)=>{
@@ -6443,6 +7086,7 @@ const useLocalStorage = ()=>{
6443
7086
  const autoGroupTiles = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectAutoGroupTiles */ .uz);
6444
7087
  const board = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectBoard */ .ZO);
6445
7088
  const configId = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectConfigId */ .md);
7089
+ const inputMode = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectInputMode */ .Ub);
6446
7090
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectLocale */ .fN);
6447
7091
  const rack = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectRack */ .QB);
6448
7092
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
@@ -6466,6 +7110,13 @@ const useLocalStorage = ()=>{
6466
7110
  }, [
6467
7111
  configId
6468
7112
  ]);
7113
+ (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
7114
+ if (inputMode) {
7115
+ state__WEBPACK_IMPORTED_MODULE_1__/* .localStorage.setInputMode */ .Xb.setInputMode(inputMode);
7116
+ }
7117
+ }, [
7118
+ inputMode
7119
+ ]);
6469
7120
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
6470
7121
  if (locale) {
6471
7122
  state__WEBPACK_IMPORTED_MODULE_1__/* .localStorage.setLocale */ .Xb.setLocale(locale);
@@ -6620,7 +7271,7 @@ const useOnWindowResize = (onResize)=>{
6620
7271
  /* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom_client__WEBPACK_IMPORTED_MODULE_2__);
6621
7272
  /* harmony import */ var react_portal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(63938);
6622
7273
  /* harmony import */ var react_portal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_portal__WEBPACK_IMPORTED_MODULE_3__);
6623
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(55238);
7274
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
6624
7275
 
6625
7276
 
6626
7277
 
@@ -6714,8 +7365,8 @@ __webpack_require__.d(__webpack_exports__, {
6714
7365
  var build = __webpack_require__(7618);
6715
7366
  // EXTERNAL MODULE: ../types/build/index.js
6716
7367
  var types_build = __webpack_require__(34046);
6717
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
6718
- var icons = __webpack_require__(58966);
7368
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
7369
+ var icons = __webpack_require__(3186);
6719
7370
  // EXTERNAL MODULE: ./src/i18n/i18n.module.scss
6720
7371
  var i18n_module = __webpack_require__(43070);
6721
7372
  var i18n_module_default = /*#__PURE__*/__webpack_require__.n(i18n_module);
@@ -6828,17 +7479,17 @@ const LOCALE_FLAGS = {
6828
7479
  };
6829
7480
 
6830
7481
  ;// CONCATENATED MODULE: ./src/i18n/de.json
6831
- const de_namespaceObject = JSON.parse('{"cell.filter-cell":"Zielort","cell.set-blank":"Als Blanko markieren","cell.set-not-blank":"Nicht als Blanko markieren","cell.tile.location":"Brett: Stein ({{x}}, {{y}})","cell.toggle-direction":"Schreibrichtung","common.blanks":"Blankos","common.clear":"Löschen","common.close":"Schließen","common.consonants":"Konsonanten","common.loading":"Laden","common.next":"Weiter","common.points":"Punkte","common.previous":"Zurück","common.tiles":"Steine","common.two-letter-tiles":"Zwei-Buchstaben","common.vowels":"Vokale","common.word":"Wort","common.words":"Wörter","dictionary":"Wörterbuch","dictionary.empty-state.no-definitions":"Wort existiert im Wörterbuch aber hat keine Definition.","dictionary.empty-state.no-results":"Wort kann nicht im Wörterbuch gefunden werden.","dictionary.empty-state.not-allowed":"Dieses Wort ist nicht erlaubt.","dictionary.empty-state.uninitialized":"Die Wörterbuchdéfinition wird hier angezeigt.","dictionary.input.placeholder":"Durchsuche Wörterbuch...","dictionary.input.title":"Durch Kommas getrennte Wörter","empty-state.error":"Fehler","empty-state.info":"Info","empty-state.success":"Juhuu!","empty-state.warning":"Oje!","github":"Schau dieses Projekt auf GitHub an","keyMap":"Tastaturkürzel","keyMap.board":"Brett","keyMap.board.toggle-blank":"Als Blanko markieren / aufheben","keyMap.board.toggle-direction":"Schreibrichtung umschalten","keyMap.board-and-rack":"Brett & Ablage","keyMap.board-and-rack.insert-two-letter-tile":"Zwei-Buchstaben Stein hinzufügen","keyMap.board-and-rack.navigate":"Navigieren","keyMap.board-and-rack.remove-tile":"Stein entfernen","keyMap.board-and-rack.submit":"Lösen starten","keyMap.rack":"Ablage","keyMap.rack.insert-blank":"Blanko hinzufügen (Leertaste)","menu":"Menü","rack.placeholder":"Steine…","rack.tile.location":"Ablage: Stein ({{index}})","remaining-tiles":"Restliche Steine","results":"Ergebnisse","results.empty-state.no-results":"Keine Ergebnisse - kein Wort konnte generiert werden.","results.empty-state.outdated":"Ergebnisse sind alt.","results.empty-state.uninitialized":"Wörter die aus deinen Buchstaben generiert wurden erscheinen hier.","results.input.placeholder":"Suchergebnisse... (RegExp)","results.insert":"Hinzufügen","results.preview":"Vorschau","results.solve":"Lösen","settings":"Einstellungen","settings.autoGroupTiles":"Restliche Steine gruppieren","settings.autoGroupTiles.left":"Linke Seite","settings.autoGroupTiles.right":"Rechte Seite","settings.autoGroupTiles.null":"Nicht gruppieren","settings.game":"Spiel","settings.language":"Sprache","words":"Gebildete Wörter","words.invalid":"Falsch","words.valid":"Korrekt"}');
7482
+ const de_namespaceObject = JSON.parse('{"cell.enter-word":"Wort eingeben","cell.filter-cell":"Zielort","cell.set-blank":"Als Blanko markieren","cell.set-not-blank":"Nicht als Blanko markieren","cell.tile.location":"Brett: Stein ({{x}}, {{y}})","cell.toggle-direction":"Schreibrichtung","common.blanks":"Blankos","common.clear":"Löschen","common.close":"Schließen","common.consonants":"Konsonanten","common.loading":"Laden","common.next":"Weiter","common.points":"Punkte","common.previous":"Zurück","common.tiles":"Steine","common.two-letter-tiles":"Zwei-Buchstaben","common.vowels":"Vokale","common.word":"Wort","common.words":"Wörter","dictionary":"Wörterbuch","dictionary.empty-state.no-definitions":"Wort existiert im Wörterbuch aber hat keine Definition.","dictionary.empty-state.no-results":"Wort kann nicht im Wörterbuch gefunden werden.","dictionary.empty-state.not-allowed":"Dieses Wort ist nicht erlaubt.","dictionary.empty-state.uninitialized":"Die Wörterbuchdéfinition wird hier angezeigt.","dictionary.input.placeholder":"Durchsuche Wörterbuch","dictionary.input.title":"Durch Kommas getrennte Wörter","empty-state.error":"Fehler","empty-state.info":"Info","empty-state.success":"Juhuu!","empty-state.warning":"Oje!","github":"Schau dieses Projekt auf GitHub an","keyMap":"Tastaturkürzel","keyMap.board":"Brett","keyMap.board.toggle-blank":"Als Blanko markieren / aufheben","keyMap.board.toggle-direction":"Schreibrichtung umschalten","keyMap.board-and-rack":"Brett & Ablage","keyMap.board-and-rack.insert-two-letter-tile":"Zwei-Buchstaben Stein hinzufügen","keyMap.board-and-rack.navigate":"Navigieren","keyMap.board-and-rack.remove-tile":"Stein entfernen","keyMap.board-and-rack.submit":"Lösen starten","keyMap.rack":"Ablage","keyMap.rack.insert-blank":"Blanko hinzufügen (Leertaste)","menu":"Menü","rack.placeholder":"Steine…","rack.tile.location":"Ablage: Stein ({{index}})","rack.touchscreen.placeholder":"Steine…","remaining-tiles":"Restliche Steine","results":"Ergebnisse","results.empty-state.no-results":"Keine Ergebnisse - kein Wort konnte generiert werden.","results.empty-state.outdated":"Ergebnisse sind alt.","results.empty-state.uninitialized":"Wörter die aus deinen Buchstaben generiert wurden erscheinen hier.","results.input.placeholder":"Suchergebnisse... (RegExp)","results.insert":"Hinzufügen","results.preview":"Vorschau","results.solve":"Lösen","settings":"Einstellungen","settings.autoGroupTiles":"Restliche Steine gruppieren","settings.autoGroupTiles.left":"Linke Seite","settings.autoGroupTiles.right":"Rechte Seite","settings.autoGroupTiles.null":"Nicht gruppieren","settings.game":"Spiel","settings.inputMode":"Eingabemodus","settings.inputMode.keyboard":"Tastatur","settings.inputMode.touchscreen":"Touchscreen","settings.language":"Sprache","words":"Gebildete Wörter","words.invalid":"Falsch","words.valid":"Korrekt"}');
6832
7483
  ;// CONCATENATED MODULE: ./src/i18n/en.json
6833
- const en_namespaceObject = JSON.parse('{"cell.filter-cell":"Target destination","cell.set-blank":"Mark it a blank","cell.set-not-blank":"Mark it not a blank","cell.tile.location":"Board: tile ({{x}}, {{y}})","cell.toggle-direction":"Typing direction","common.blanks":"Blanks","common.clear":"Clear","common.close":"Close","common.consonants":"Consonants","common.loading":"Loading","common.next":"Next","common.points":"Points","common.previous":"Previous","common.tiles":"Tiles","common.two-letter-tiles":"Two-letter","common.vowels":"Vowels","common.word":"Word","common.words":"Words","dictionary":"Dictionary","dictionary.empty-state.no-definitions":"Word exists in the dictionary but it does not have a definition.","dictionary.empty-state.no-results":"Unable to find word definition in the dictionary.","dictionary.empty-state.not-allowed":"This word is not allowed.","dictionary.empty-state.uninitialized":"Word definition will be shown here.","dictionary.input.placeholder":"Search dictionary...","dictionary.input.title":"Comma-separated words","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Yeah!","empty-state.warning":"Oops!","github":"See this project on GitHub","keyMap":"Keyboard shortcuts","keyMap.board":"Board","keyMap.board.toggle-blank":"Mark/unmark tile as a blank","keyMap.board.toggle-direction":"Toggle typing direction","keyMap.board-and-rack":"Board & rack","keyMap.board-and-rack.insert-two-letter-tile":"Insert two-letter tile","keyMap.board-and-rack.navigate":"Navigate","keyMap.board-and-rack.remove-tile":"Remove tile","keyMap.board-and-rack.submit":"Start solving","keyMap.rack":"Rack","keyMap.rack.insert-blank":"Insert blank (spacebar)","menu":"Menu","rack.placeholder":"Letters","rack.tile.location":"Rack: tile ({{index}})","remaining-tiles":"Remaining tiles","results":"Results","results.empty-state.no-results":"No results - unable to generate any words.","results.empty-state.outdated":"Results are outdated.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Search results... (RegExp)","results.insert":"Insert","results.preview":"Preview","results.solve":"Solve","settings":"Settings","settings.autoGroupTiles":"Group remaining tiles","settings.autoGroupTiles.left":"On the left","settings.autoGroupTiles.right":"On the right","settings.autoGroupTiles.null":"Do not group","settings.game":"Game","settings.language":"Language","words":"Created words","words.invalid":"Invalid","words.valid":"Valid"}');
7484
+ const en_namespaceObject = JSON.parse('{"cell.enter-word":"Enter word","cell.filter-cell":"Target destination","cell.set-blank":"Mark it a blank","cell.set-not-blank":"Mark it not a blank","cell.tile.location":"Board: tile ({{x}}, {{y}})","cell.toggle-direction":"Typing direction","common.blanks":"Blanks","common.clear":"Clear","common.close":"Close","common.consonants":"Consonants","common.loading":"Loading","common.next":"Next","common.points":"Points","common.previous":"Previous","common.tiles":"Tiles","common.two-letter-tiles":"Two-letter","common.vowels":"Vowels","common.word":"Word","common.words":"Words","dictionary":"Dictionary","dictionary.empty-state.no-definitions":"Word exists in the dictionary but it does not have a definition.","dictionary.empty-state.no-results":"Unable to find word definition in the dictionary.","dictionary.empty-state.not-allowed":"This word is not allowed.","dictionary.empty-state.uninitialized":"Word definition will be shown here.","dictionary.input.placeholder":"Search dictionary","dictionary.input.title":"Comma-separated words","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Yeah!","empty-state.warning":"Oops!","github":"See this project on GitHub","keyMap":"Keyboard shortcuts","keyMap.board":"Board","keyMap.board.toggle-blank":"Mark/unmark tile as a blank","keyMap.board.toggle-direction":"Toggle typing direction","keyMap.board-and-rack":"Board & rack","keyMap.board-and-rack.insert-two-letter-tile":"Insert two-letter tile","keyMap.board-and-rack.navigate":"Navigate","keyMap.board-and-rack.remove-tile":"Remove tile","keyMap.board-and-rack.submit":"Start solving","keyMap.rack":"Rack","keyMap.rack.insert-blank":"Insert blank (spacebar)","menu":"Menu","rack.placeholder":"Letters","rack.tile.location":"Rack: tile ({{index}})","rack.touchscreen.placeholder":"Letters…","remaining-tiles":"Remaining tiles","results":"Results","results.empty-state.no-results":"No results - unable to generate any words.","results.empty-state.outdated":"Results are outdated.","results.empty-state.uninitialized":"Words generated from your letters will be shown here.","results.input.placeholder":"Search results... (RegExp)","results.insert":"Insert","results.preview":"Preview","results.solve":"Solve","settings":"Settings","settings.autoGroupTiles":"Group remaining tiles","settings.autoGroupTiles.left":"On the left","settings.autoGroupTiles.right":"On the right","settings.autoGroupTiles.null":"Do not group","settings.game":"Game","settings.inputMode":"Input mode","settings.inputMode.keyboard":"Keyboard","settings.inputMode.touchscreen":"Touchscreen","settings.language":"Language","words":"Created words","words.invalid":"Invalid","words.valid":"Valid"}');
6834
7485
  ;// CONCATENATED MODULE: ./src/i18n/es.json
6835
- const es_namespaceObject = JSON.parse('{"cell.filter-cell":"Destino objetivo","cell.set-blank":"Marcar como en blanco","cell.set-not-blank":"Marcar como no en blanco","cell.tile.location":"Tablero: espacio ({{x}}, {{y}})","cell.toggle-direction":"Dirección de escritura","common.blanks":"Blancos","common.clear":"Borrar","common.close":"Cerrar","common.consonants":"Consonantes","common.loading":"Cargando","common.next":"Siguiente","common.points":"Puntos","common.previous":"Anterior","common.tiles":"Longitud","common.two-letter-tiles":"Dos letras","common.vowels":"Vocales","common.word":"Palabra","common.words":"Palabras","dictionary":"Diccionario","dictionary.empty-state.no-definitions":"La palabra existe en el diccionario pero no tiene una definición.","dictionary.empty-state.no-results":"No se puede encontrar la definición de palabra en el diccionario.","dictionary.empty-state.not-allowed":"Esta palabra no es aceptable.","dictionary.empty-state.uninitialized":"Aquí se mostrará la definición del diccionario.","dictionary.input.placeholder":"Busca el diccionario...","dictionary.input.title":"Palabras separadas por comas","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Sí!","empty-state.warning":"Vaya!","github":"Ver este proyecto en GitHub","keyMap":"Atajos de teclado","keyMap.board":"Tablero","keyMap.board.toggle-blank":"Marcar / desmarcar un espacio en blanco","keyMap.board.toggle-direction":"Alternar dirección de escritura","keyMap.board-and-rack":"Tablero y estante","keyMap.board-and-rack.insert-two-letter-tile":"Insertar mosaico de dos letras","keyMap.board-and-rack.navigate":"Navegar","keyMap.board-and-rack.remove-tile":"Quitar Letra","keyMap.board-and-rack.submit":"Empezar a resolver","keyMap.rack":"Estante","keyMap.rack.insert-blank":"Insertar espacio en blanco (barra espaciadora)","menu":"Menú","rack.placeholder":"Letras…","rack.tile.location":"Estante: espacio ({{index}})","remaining-tiles":"Casillas restantes","results":"Resultados","results.empty-state.no-results":"No hay resultados; no se pueden generar palabras","results.empty-state.outdated":"Los resultados están desactualizados.","results.empty-state.uninitialized":"Aquí se mostrarán las palabras generadas a partir de sus letras.","results.input.placeholder":"Busque una solución... (RegExp)","results.insert":"Insertar","results.preview":"Vista previa","results.solve":"Resolver","settings":"Configuración","settings.autoGroupTiles":"Agrupar casillas restantes","settings.autoGroupTiles.left":"A la izquierda","settings.autoGroupTiles.right":"A la derecha","settings.autoGroupTiles.null":"No agrupar","settings.game":"Juego","settings.language":"Idioma","words":"Palabras creadas","words.invalid":"Incorrecto","words.valid":"Correcto"}');
7486
+ const es_namespaceObject = JSON.parse('{"cell.enter-word":"Ingresar palabra","cell.filter-cell":"Destino objetivo","cell.set-blank":"Marcar como en blanco","cell.set-not-blank":"Marcar como no en blanco","cell.tile.location":"Tablero: espacio ({{x}}, {{y}})","cell.toggle-direction":"Dirección de escritura","common.blanks":"Blancos","common.clear":"Borrar","common.close":"Cerrar","common.consonants":"Consonantes","common.loading":"Cargando","common.next":"Siguiente","common.points":"Puntos","common.previous":"Anterior","common.tiles":"Longitud","common.two-letter-tiles":"Dos letras","common.vowels":"Vocales","common.word":"Palabra","common.words":"Palabras","dictionary":"Diccionario","dictionary.empty-state.no-definitions":"La palabra existe en el diccionario pero no tiene una definición.","dictionary.empty-state.no-results":"No se puede encontrar la definición de palabra en el diccionario.","dictionary.empty-state.not-allowed":"Esta palabra no es aceptable.","dictionary.empty-state.uninitialized":"Aquí se mostrará la definición del diccionario.","dictionary.input.placeholder":"Busca el diccionario","dictionary.input.title":"Palabras separadas por comas","empty-state.error":"Error","empty-state.info":"Info","empty-state.success":"Sí!","empty-state.warning":"Vaya!","github":"Ver este proyecto en GitHub","keyMap":"Atajos de teclado","keyMap.board":"Tablero","keyMap.board.toggle-blank":"Marcar / desmarcar un espacio en blanco","keyMap.board.toggle-direction":"Alternar dirección de escritura","keyMap.board-and-rack":"Tablero y estante","keyMap.board-and-rack.insert-two-letter-tile":"Insertar mosaico de dos letras","keyMap.board-and-rack.navigate":"Navegar","keyMap.board-and-rack.remove-tile":"Quitar Letra","keyMap.board-and-rack.submit":"Empezar a resolver","keyMap.rack":"Estante","keyMap.rack.insert-blank":"Insertar espacio en blanco (barra espaciadora)","menu":"Menú","rack.placeholder":"Letras…","rack.tile.location":"Estante: espacio ({{index}})","rack.touchscreen.placeholder":"Letras… (p.ej. LLabcCHhRR)","remaining-tiles":"Casillas restantes","results":"Resultados","results.empty-state.no-results":"No hay resultados; no se pueden generar palabras","results.empty-state.outdated":"Los resultados están desactualizados.","results.empty-state.uninitialized":"Aquí se mostrarán las palabras generadas a partir de sus letras.","results.input.placeholder":"Busque una solución... (RegExp)","results.insert":"Insertar","results.preview":"Vista previa","results.solve":"Resolver","settings":"Configuración","settings.autoGroupTiles":"Agrupar casillas restantes","settings.autoGroupTiles.left":"A la izquierda","settings.autoGroupTiles.right":"A la derecha","settings.autoGroupTiles.null":"No agrupar","settings.game":"Juego","settings.inputMode":"Modo de entrada","settings.inputMode.keyboard":"Teclado","settings.inputMode.touchscreen":"Pantalla táctil","settings.language":"Idioma","words":"Palabras creadas","words.invalid":"Incorrecto","words.valid":"Correcto"}');
6836
7487
  ;// CONCATENATED MODULE: ./src/i18n/fa.json
6837
- const fa_namespaceObject = JSON.parse('{"cell.filter-cell":"مقصد","cell.set-blank":"علامت گذاری به عنوان خالی","cell.set-not-blank":"علامت گذاری به عنوان غیر خالی","cell.tile.location":"({{x}}، {{y}}) کاشی: صفحه","cell.toggle-direction":"جهت تایپ","common.blanks":"خالی","common.clear":"پاک کردن","common.close":"بستن","common.consonants":"حروف صامت","common.loading":"در حال بارگزاری","common.next":"بعدی","common.points":"امتیازات","common.previous":"قبلی","common.tiles":"کاشی ها","common.two-letter-tiles":"دو حرفی","common.vowels":"حروف مصوت","common.word":"کلمه","common.words":"کلمات","dictionary":"فرهنگ لغت","dictionary.empty-state.no-definitions":"کلمه در فرهنگ لغت وجود دارد، ولی معنایی برای آن ثبت نشده است.","dictionary.empty-state.no-results":"کلمه در فرهنگ لغت یافت نشد.","dictionary.empty-state.not-allowed":"این کلمه مجاز نیست.","dictionary.empty-state.uninitialized":"معنی لغت اینجا نمایش داده خواهد شد.","dictionary.input.placeholder":"جستجو در فرهنگ لغت ...","dictionary.input.title":"کلمات جدا شده با کاما","empty-state.error":"خطا","empty-state.info":"اطلاعات","empty-state.success":"حله!","empty-state.warning":"اوووخ!","github":"به این پروژه در گیتهاب سر بزنید","keyMap":"میانبر های کیبورد","keyMap.board":"صفحه","keyMap.board.toggle-blank":"علامت/عدم علامت گذاری کاشی به عنوان خالی","keyMap.board.toggle-direction":"تغییر جهت تایپ","keyMap.board-and-rack":"صفحه و طاقچه","keyMap.board-and-rack.insert-two-letter-tile":"وارد کردن کاشی دو حرفی","keyMap.board-and-rack.navigate":"حرکت","keyMap.board-and-rack.remove-tile":"حذف کاشی","keyMap.board-and-rack.submit":"حل کردن","keyMap.rack":"طاقچه","keyMap.rack.insert-blank":"وارد کردن کاشی خالی (دکمه اسپیس)","menu":"منو","rack.placeholder":"لیستحرف","rack.tile.location":"({{index}}) کاشی: طاقچه","remaining-tiles":"کاشی های باقی مانده","results":"نتایج","results.empty-state.no-results":"کلمه قابل استفاده پیدا نشد.","results.empty-state.outdated":"نتایج به روز نیستند، برای بروز.","results.empty-state.uninitialized":"کلمات تولید شده از حروف شما اینجا نمایش داده خواهد شد.","results.input.placeholder":"جستجو در نتایج (RegExp)","results.insert":"وارد کردن","results.preview":"پیش نمایش","results.solve":"حل کن","settings":"تنظیمات","settings.autoGroupTiles":"کاشی های باقی مانده ی طاقچه را کنار هم قرار بده","settings.autoGroupTiles.left":"در سمت چپ","settings.autoGroupTiles.right":"در سمت راست","settings.autoGroupTiles.null":"کنار هم قرار نده","settings.game":"بازی","settings.language":"زبان","words":"کلمات ساخته شده","words.invalid":"نا معتبر","words.valid":"معتبر"}');
7488
+ const fa_namespaceObject = JSON.parse('{"cell.enter-word":"کلمه را وارد کنید","cell.filter-cell":"مقصد","cell.set-blank":"علامت گذاری به عنوان خالی","cell.set-not-blank":"علامت گذاری به عنوان غیر خالی","cell.tile.location":"({{x}}، {{y}}) کاشی: صفحه","cell.toggle-direction":"جهت تایپ","common.blanks":"خالی","common.clear":"پاک کردن","common.close":"بستن","common.consonants":"حروف صامت","common.loading":"در حال بارگزاری","common.next":"بعدی","common.points":"امتیازات","common.previous":"قبلی","common.tiles":"کاشی ها","common.two-letter-tiles":"دو حرفی","common.vowels":"حروف مصوت","common.word":"کلمه","common.words":"کلمات","dictionary":"فرهنگ لغت","dictionary.empty-state.no-definitions":"کلمه در فرهنگ لغت وجود دارد، ولی معنایی برای آن ثبت نشده است.","dictionary.empty-state.no-results":"کلمه در فرهنگ لغت یافت نشد.","dictionary.empty-state.not-allowed":"این کلمه مجاز نیست.","dictionary.empty-state.uninitialized":"معنی لغت اینجا نمایش داده خواهد شد.","dictionary.input.placeholder":"جستجو در فرهنگ لغت ","dictionary.input.title":"کلمات جدا شده با کاما","empty-state.error":"خطا","empty-state.info":"اطلاعات","empty-state.success":"حله!","empty-state.warning":"اوووخ!","github":"به این پروژه در گیتهاب سر بزنید","keyMap":"میانبر های کیبورد","keyMap.board":"صفحه","keyMap.board.toggle-blank":"علامت/عدم علامت گذاری کاشی به عنوان خالی","keyMap.board.toggle-direction":"تغییر جهت تایپ","keyMap.board-and-rack":"صفحه و طاقچه","keyMap.board-and-rack.insert-two-letter-tile":"وارد کردن کاشی دو حرفی","keyMap.board-and-rack.navigate":"حرکت","keyMap.board-and-rack.remove-tile":"حذف کاشی","keyMap.board-and-rack.submit":"حل کردن","keyMap.rack":"طاقچه","keyMap.rack.insert-blank":"وارد کردن کاشی خالی (دکمه اسپیس)","menu":"منو","rack.placeholder":"لیستحرف","rack.tile.location":"({{index}}) کاشی: طاقچه","rack.touchscreen.placeholder":"لیستحرف…","remaining-tiles":"کاشی های باقی مانده","results":"نتایج","results.empty-state.no-results":"کلمه قابل استفاده پیدا نشد.","results.empty-state.outdated":"نتایج به روز نیستند، برای بروز.","results.empty-state.uninitialized":"کلمات تولید شده از حروف شما اینجا نمایش داده خواهد شد.","results.input.placeholder":"جستجو در نتایج (RegExp)","results.insert":"وارد کردن","results.preview":"پیش نمایش","results.solve":"حل کن","settings":"تنظیمات","settings.autoGroupTiles":"کاشی های باقی مانده ی طاقچه را کنار هم قرار بده","settings.autoGroupTiles.left":"در سمت چپ","settings.autoGroupTiles.right":"در سمت راست","settings.autoGroupTiles.null":"کنار هم قرار نده","settings.game":"بازی","settings.inputMode":"حالت ورودی","settings.inputMode.keyboard":"صفحه کلید","settings.inputMode.touchscreen":"صفحه لمسی","settings.language":"زبان","words":"کلمات ساخته شده","words.invalid":"نا معتبر","words.valid":"معتبر"}');
6838
7489
  ;// CONCATENATED MODULE: ./src/i18n/fr.json
6839
- const fr_namespaceObject = JSON.parse('{"cell.filter-cell":"Destination cible","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.tile.location":"Plateau: la case ({{x}}, {{y}})","cell.toggle-direction":"Direction d\'écriture","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.next":"Suivant","common.points":"Points","common.previous":"Précédent","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary":"Dictionnaire","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de définition.","dictionary.empty-state.no-results":"Impossible de trouver une définition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La définition dictionaire sera affichée ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire...","dictionary.input.title":"Mots séparées par des virgules","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap":"Raccourcis clavier","keyMap.board":"Plateau","keyMap.board.toggle-blank":"Marqué/Démarqué la case en tant que vide","keyMap.board.toggle-direction":"Faire basculer la direction d\'écriture","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board-and-rack.insert-two-letter-tile":"Insérer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"Commencer la résolution","keyMap.rack":"Chevalet","keyMap.rack.insert-blank":"Inserer une case vide (spacebar)","menu":"Menu","rack.placeholder":"Lettres","rack.tile.location":"Chevalet: la case ({{index}})","remaining-tiles":"Cases restantes","results":"Résultats","results.empty-state.no-results":"Pas de résultats - impossible de générer des mots.","results.empty-state.outdated":"Les résultats sont dépassé.","results.empty-state.uninitialized":"Les mots générés à partir de vos lettres seront affichés ici.","results.input.placeholder":"Rechercher les résultats... (RegExp)","results.insert":"Inserer","results.preview":"Prévisualisation","results.solve":"Résoudre","settings":"Options","settings.autoGroupTiles":"Grouper les cases restantes","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles.null":"Ne pas grouper","settings.game":"Jeu","settings.language":"Langue","words":"Mots créés","words.invalid":"Incorrect","words.valid":"Corriger"}');
7490
+ const fr_namespaceObject = JSON.parse('{"cell.enter-word":"Entrez un mot","cell.filter-cell":"Destination cible","cell.set-blank":"Marquer comme vide","cell.set-not-blank":"Marquer comme non vide","cell.tile.location":"Plateau: la case ({{x}}, {{y}})","cell.toggle-direction":"Direction d\'écriture","common.blanks":"Cases vides","common.clear":"Effacer","common.close":"Fermer","common.consonants":"Consonnes","common.loading":"Chargement","common.next":"Suivant","common.points":"Points","common.previous":"Précédent","common.tiles":"Cases","common.two-letter-tiles":"Deux lettres","common.vowels":"Voyelles","common.word":"Mot","common.words":"Mots","dictionary":"Dictionnaire","dictionary.empty-state.no-definitions":"Le mot existe dans le dictionary mais n\'a pas de définition.","dictionary.empty-state.no-results":"Impossible de trouver une définition pour ce mot dans le dictionaire.","dictionary.empty-state.not-allowed":"Ce mot n\'est pas pas acceptable.","dictionary.empty-state.uninitialized":"La définition dictionaire sera affichée ici.","dictionary.input.placeholder":"Rechercher dans le dictionnaire","dictionary.input.title":"Mots séparées par des virgules","empty-state.error":"Erreur","empty-state.info":"Info","empty-state.success":"Ouais!","empty-state.warning":"Oups!","github":"Voir ce projet sur GitHub","keyMap":"Raccourcis clavier","keyMap.board":"Plateau","keyMap.board.toggle-blank":"Marqué/Démarqué la case en tant que vide","keyMap.board.toggle-direction":"Faire basculer la direction d\'écriture","keyMap.board-and-rack":"Plateau & chevalet","keyMap.board-and-rack.insert-two-letter-tile":"Insérer une tuile de deux lettres","keyMap.board-and-rack.navigate":"Naviguer","keyMap.board-and-rack.remove-tile":"Supprimer une case","keyMap.board-and-rack.submit":"Commencer la résolution","keyMap.rack":"Chevalet","keyMap.rack.insert-blank":"Inserer une case vide (spacebar)","menu":"Menu","rack.placeholder":"Lettres","rack.tile.location":"Chevalet: la case ({{index}})","rack.touchscreen.placeholder":"Lettres…","remaining-tiles":"Cases restantes","results":"Résultats","results.empty-state.no-results":"Pas de résultats - impossible de générer des mots.","results.empty-state.outdated":"Les résultats sont dépassé.","results.empty-state.uninitialized":"Les mots générés à partir de vos lettres seront affichés ici.","results.input.placeholder":"Rechercher les résultats... (RegExp)","results.insert":"Inserer","results.preview":"Prévisualisation","results.solve":"Résoudre","settings":"Options","settings.autoGroupTiles":"Grouper les cases restantes","settings.autoGroupTiles.left":"Vers la droite","settings.autoGroupTiles.right":"Vers la gauche","settings.autoGroupTiles.null":"Ne pas grouper","settings.game":"Jeu","settings.inputMode":"Mode de saisie","settings.inputMode.keyboard":"Clavier","settings.inputMode.touchscreen":"Écran tactile","settings.language":"Langue","words":"Mots créés","words.invalid":"Incorrect","words.valid":"Corriger"}');
6840
7491
  ;// CONCATENATED MODULE: ./src/i18n/pl.json
6841
- const pl_namespaceObject = JSON.parse('{"cell.filter-cell":"Miejsce docelowe","cell.set-blank":"Oznacz jako blank","cell.set-not-blank":"Oznacz jako nie blank","cell.tile.location":"Plansza: płytka ({{x}}, {{y}})","cell.toggle-direction":"Kierunek wpisywania","common.blanks":"Blanki","common.clear":"Wyczyść","common.close":"Zamknij","common.consonants":"Spółgłoski","common.loading":"Ładowanie","common.next":"Następne","common.points":"Punkty","common.previous":"Poprzednie","common.tiles":"Płytki","common.two-letter-tiles":"Dwuliterowe","common.vowels":"Samogłoski","common.word":"Słowo","common.words":"Słowa","dictionary":"Słownik","dictionary.empty-state.no-definitions":"Słowo istnieje w słowniku ale nie posiada definicji.","dictionary.empty-state.no-results":"Nie udało się znaleźć definicji słowa w słowniku.","dictionary.empty-state.not-allowed":"To słowo nie jest dopuszczalne w grach.","dictionary.empty-state.uninitialized":"Tu zostanie wyświetlona definicja słowa.","dictionary.input.placeholder":"Szukaj w słowniku...","dictionary.input.title":"Słowa rozdzielone przecinkiem","empty-state.error":"Błąd","empty-state.info":"Info","empty-state.success":"Hurra!","empty-state.warning":"Ups!","github":"Zobacz ten projekt na GitHubie","keyMap":"Skróty klawiszowe","keyMap.board":"Plansza","keyMap.board.toggle-blank":"Oznacz/odznacz płytkę jako blank","keyMap.board.toggle-direction":"Zmień kierunek wpisywania","keyMap.board-and-rack":"Plansza i stojak","keyMap.board-and-rack.insert-two-letter-tile":"Wstaw dwuliterową płytkę","keyMap.board-and-rack.navigate":"Nawigacja","keyMap.board-and-rack.remove-tile":"Zdejmij płytkę","keyMap.board-and-rack.submit":"Rozpocznij wyszukiwanie","keyMap.rack":"Stojak","keyMap.rack.insert-blank":"Wstaw blanka (spacja)","menu":"Menu","rack.placeholder":"Literki","rack.tile.location":"Stojak: płytka ({{index}})","remaining-tiles":"Pozostałe płytki","results":"Wyniki","results.empty-state.no-results":"Brak wyników - nie można wygenerować żadnego słowa.","results.empty-state.outdated":"Wyniki są nieaktualne.","results.empty-state.uninitialized":"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.","results.input.placeholder":"Szukaj rozwiązania... (RegExp)","results.insert":"Wstaw","results.preview":"Podgląd","results.solve":"Rozwiąż","settings":"Opcje","settings.autoGroupTiles":"Grupuj pozostałe płytki","settings.autoGroupTiles.left":"Po lewej","settings.autoGroupTiles.right":"Po prawej","settings.autoGroupTiles.null":"Nie grupuj","settings.game":"Gra","settings.language":"Język","words":"Utworzone słowa","words.invalid":"Niepoprawne","words.valid":"Poprawne"}');
7492
+ const pl_namespaceObject = JSON.parse('{"cell.enter-word":"Wprowadź słowo","cell.filter-cell":"Miejsce docelowe","cell.set-blank":"Oznacz jako blank","cell.set-not-blank":"Oznacz jako nie blank","cell.tile.location":"Plansza: płytka ({{x}}, {{y}})","cell.toggle-direction":"Kierunek wpisywania","common.blanks":"Blanki","common.clear":"Wyczyść","common.close":"Zamknij","common.consonants":"Spółgłoski","common.loading":"Ładowanie","common.next":"Następne","common.points":"Punkty","common.previous":"Poprzednie","common.tiles":"Płytki","common.two-letter-tiles":"Dwuliterowe","common.vowels":"Samogłoski","common.word":"Słowo","common.words":"Słowa","dictionary":"Słownik","dictionary.empty-state.no-definitions":"Słowo istnieje w słowniku ale nie posiada definicji.","dictionary.empty-state.no-results":"Nie udało się znaleźć definicji słowa w słowniku.","dictionary.empty-state.not-allowed":"To słowo nie jest dopuszczalne w grach.","dictionary.empty-state.uninitialized":"Tu zostanie wyświetlona definicja słowa.","dictionary.input.placeholder":"Szukaj w słowniku","dictionary.input.title":"Słowa rozdzielone przecinkiem","empty-state.error":"Błąd","empty-state.info":"Info","empty-state.success":"Hurra!","empty-state.warning":"Ups!","github":"Zobacz ten projekt na GitHubie","keyMap":"Skróty klawiszowe","keyMap.board":"Plansza","keyMap.board.toggle-blank":"Oznacz/odznacz płytkę jako blank","keyMap.board.toggle-direction":"Zmień kierunek wpisywania","keyMap.board-and-rack":"Plansza i stojak","keyMap.board-and-rack.insert-two-letter-tile":"Wstaw dwuliterową płytkę","keyMap.board-and-rack.navigate":"Nawigacja","keyMap.board-and-rack.remove-tile":"Zdejmij płytkę","keyMap.board-and-rack.submit":"Rozpocznij wyszukiwanie","keyMap.rack":"Stojak","keyMap.rack.insert-blank":"Wstaw blanka (spacja)","menu":"Menu","rack.placeholder":"Literki","rack.tile.location":"Stojak: płytka ({{index}})","rack.touchscreen.placeholder":"Literki…","remaining-tiles":"Pozostałe płytki","results":"Wyniki","results.empty-state.no-results":"Brak wyników - nie można wygenerować żadnego słowa.","results.empty-state.outdated":"Wyniki są nieaktualne.","results.empty-state.uninitialized":"Tu zostaną wyświetlone słowa wygenerowane z Twoich liter.","results.input.placeholder":"Szukaj rozwiązania... (RegExp)","results.insert":"Wstaw","results.preview":"Podgląd","results.solve":"Rozwiąż","settings":"Opcje","settings.autoGroupTiles":"Grupuj pozostałe płytki","settings.autoGroupTiles.left":"Po lewej","settings.autoGroupTiles.right":"Po prawej","settings.autoGroupTiles.null":"Nie grupuj","settings.game":"Gra","settings.inputMode":"Tryb wpisywania","settings.inputMode.keyboard":"Klawiatura","settings.inputMode.touchscreen":"Ekran dotykowy","settings.language":"Język","words":"Utworzone słowa","words.invalid":"Niepoprawne","words.valid":"Poprawne"}');
6842
7493
  ;// CONCATENATED MODULE: ./src/i18n/i18n.ts
6843
7494
 
6844
7495
 
@@ -6865,7 +7516,7 @@ const i18n = {
6865
7516
 
6866
7517
  /***/ }),
6867
7518
 
6868
- /***/ 58966:
7519
+ /***/ 3186:
6869
7520
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6870
7521
 
6871
7522
  "use strict";
@@ -6903,6 +7554,7 @@ __webpack_require__.d(__webpack_exports__, {
6903
7554
  "Ey": () => (/* reexport */ Github),
6904
7555
  "UT": () => (/* reexport */ InfoCircleFill),
6905
7556
  "N1": () => (/* reexport */ Keyboard),
7557
+ "KD": () => (/* reexport */ KeyboardFill),
6906
7558
  "aV": () => (/* reexport */ List),
6907
7559
  "xy": () => (/* reexport */ Sack),
6908
7560
  "HN": () => (/* reexport */ Search),
@@ -6923,11 +7575,11 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
6923
7575
 
6924
7576
  var SvgArrowDown = function SvgArrowDown(props) {
6925
7577
  return /*#__PURE__*/external_react_.createElement("svg", _extends({
6926
- viewBox: "0 0 16 16",
6927
- xmlns: "http://www.w3.org/2000/svg"
7578
+ xmlns: "http://www.w3.org/2000/svg",
7579
+ viewBox: "0 0 16 16"
6928
7580
  }, props), _path || (_path = /*#__PURE__*/external_react_.createElement("path", {
6929
- d: "M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z",
6930
- fill: "currentColor"
7581
+ fill: "currentColor",
7582
+ d: "M8 1a.5.5 0 0 1 .5.5v11.793l3.146-3.147a.5.5 0 0 1 .708.708l-4 4a.5.5 0 0 1-.708 0l-4-4a.5.5 0 0 1 .708-.708L7.5 13.293V1.5A.5.5 0 0 1 8 1z"
6931
7583
  })));
6932
7584
  };
6933
7585
  /* harmony default export */ const ArrowDown = (SvgArrowDown);
@@ -6937,11 +7589,11 @@ function ArrowLeft_extends() { ArrowLeft_extends = Object.assign ? Object.assign
6937
7589
 
6938
7590
  var SvgArrowLeft = function SvgArrowLeft(props) {
6939
7591
  return /*#__PURE__*/external_react_.createElement("svg", ArrowLeft_extends({
6940
- viewBox: "0 0 16 16",
6941
- xmlns: "http://www.w3.org/2000/svg"
7592
+ xmlns: "http://www.w3.org/2000/svg",
7593
+ viewBox: "0 0 16 16"
6942
7594
  }, props), ArrowLeft_path || (ArrowLeft_path = /*#__PURE__*/external_react_.createElement("path", {
6943
- d: "M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z",
6944
- fill: "currentColor"
7595
+ fill: "currentColor",
7596
+ d: "M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z"
6945
7597
  })));
6946
7598
  };
6947
7599
  /* harmony default export */ const ArrowLeft = (SvgArrowLeft);
@@ -6951,11 +7603,11 @@ function ArrowRight_extends() { ArrowRight_extends = Object.assign ? Object.assi
6951
7603
 
6952
7604
  var SvgArrowRight = function SvgArrowRight(props) {
6953
7605
  return /*#__PURE__*/external_react_.createElement("svg", ArrowRight_extends({
6954
- viewBox: "0 0 16 16",
6955
- xmlns: "http://www.w3.org/2000/svg"
7606
+ xmlns: "http://www.w3.org/2000/svg",
7607
+ viewBox: "0 0 16 16"
6956
7608
  }, props), ArrowRight_path || (ArrowRight_path = /*#__PURE__*/external_react_.createElement("path", {
6957
- d: "M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z",
6958
- fill: "currentColor"
7609
+ fill: "currentColor",
7610
+ d: "M1 8a.5.5 0 0 1 .5-.5h11.793l-3.147-3.146a.5.5 0 0 1 .708-.708l4 4a.5.5 0 0 1 0 .708l-4 4a.5.5 0 0 1-.708-.708L13.293 8.5H1.5A.5.5 0 0 1 1 8z"
6959
7611
  })));
6960
7612
  };
6961
7613
  /* harmony default export */ const ArrowRight = (SvgArrowRight);
@@ -6965,11 +7617,11 @@ function ArrowUp_extends() { ArrowUp_extends = Object.assign ? Object.assign.bin
6965
7617
 
6966
7618
  var SvgArrowUp = function SvgArrowUp(props) {
6967
7619
  return /*#__PURE__*/external_react_.createElement("svg", ArrowUp_extends({
6968
- viewBox: "0 0 16 16",
6969
- xmlns: "http://www.w3.org/2000/svg"
7620
+ xmlns: "http://www.w3.org/2000/svg",
7621
+ viewBox: "0 0 16 16"
6970
7622
  }, props), ArrowUp_path || (ArrowUp_path = /*#__PURE__*/external_react_.createElement("path", {
6971
- d: "M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z",
6972
- fill: "currentColor"
7623
+ fill: "currentColor",
7624
+ d: "M8 15a.5.5 0 0 0 .5-.5V2.707l3.146 3.147a.5.5 0 0 0 .708-.708l-4-4a.5.5 0 0 0-.708 0l-4 4a.5.5 0 1 0 .708.708L7.5 2.707V14.5a.5.5 0 0 0 .5.5z"
6973
7625
  })));
6974
7626
  };
6975
7627
  /* harmony default export */ const ArrowUp = (SvgArrowUp);
@@ -6979,11 +7631,11 @@ function BookHalf_extends() { BookHalf_extends = Object.assign ? Object.assign.b
6979
7631
 
6980
7632
  var SvgBookHalf = function SvgBookHalf(props) {
6981
7633
  return /*#__PURE__*/external_react_.createElement("svg", BookHalf_extends({
6982
- viewBox: "0 0 16 16",
6983
- xmlns: "http://www.w3.org/2000/svg"
7634
+ xmlns: "http://www.w3.org/2000/svg",
7635
+ viewBox: "0 0 16 16"
6984
7636
  }, props), BookHalf_path || (BookHalf_path = /*#__PURE__*/external_react_.createElement("path", {
6985
- 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",
6986
- fill: "currentColor"
7637
+ fill: "currentColor",
7638
+ 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"
6987
7639
  })));
6988
7640
  };
6989
7641
  /* harmony default export */ const BookHalf = (SvgBookHalf);
@@ -6993,14 +7645,14 @@ function CardChecklist_extends() { CardChecklist_extends = Object.assign ? Objec
6993
7645
 
6994
7646
  var SvgCardChecklist = function SvgCardChecklist(props) {
6995
7647
  return /*#__PURE__*/external_react_.createElement("svg", CardChecklist_extends({
6996
- viewBox: "0 0 16 16",
6997
- xmlns: "http://www.w3.org/2000/svg"
7648
+ xmlns: "http://www.w3.org/2000/svg",
7649
+ viewBox: "0 0 16 16"
6998
7650
  }, props), CardChecklist_path || (CardChecklist_path = /*#__PURE__*/external_react_.createElement("path", {
6999
- 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",
7000
- fill: "currentColor"
7651
+ fill: "currentColor",
7652
+ 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"
7001
7653
  })), _path2 || (_path2 = /*#__PURE__*/external_react_.createElement("path", {
7002
- 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",
7003
- fill: "currentColor"
7654
+ fill: "currentColor",
7655
+ 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"
7004
7656
  })));
7005
7657
  };
7006
7658
  /* harmony default export */ const CardChecklist = (SvgCardChecklist);
@@ -7010,11 +7662,11 @@ function Check_extends() { Check_extends = Object.assign ? Object.assign.bind()
7010
7662
 
7011
7663
  var SvgCheck = function SvgCheck(props) {
7012
7664
  return /*#__PURE__*/external_react_.createElement("svg", Check_extends({
7013
- viewBox: "0 0 16 16",
7014
- xmlns: "http://www.w3.org/2000/svg"
7665
+ xmlns: "http://www.w3.org/2000/svg",
7666
+ viewBox: "0 0 16 16"
7015
7667
  }, props), Check_path || (Check_path = /*#__PURE__*/external_react_.createElement("path", {
7016
- 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",
7017
- fill: "currentColor"
7668
+ fill: "currentColor",
7669
+ 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"
7018
7670
  })));
7019
7671
  };
7020
7672
  /* harmony default export */ const Check = (SvgCheck);
@@ -7024,11 +7676,11 @@ function CheckboxChecked_extends() { CheckboxChecked_extends = Object.assign ? O
7024
7676
 
7025
7677
  var SvgCheckboxChecked = function SvgCheckboxChecked(props) {
7026
7678
  return /*#__PURE__*/React.createElement("svg", CheckboxChecked_extends({
7027
- viewBox: "0 0 16 16",
7028
- xmlns: "http://www.w3.org/2000/svg"
7679
+ xmlns: "http://www.w3.org/2000/svg",
7680
+ viewBox: "0 0 16 16"
7029
7681
  }, props), CheckboxChecked_path || (CheckboxChecked_path = /*#__PURE__*/React.createElement("path", {
7030
- 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-2H2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 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.75.75 0 0 1 1.08-.022z",
7031
- fill: "currentColor"
7682
+ fill: "currentColor",
7683
+ 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-2H2zm10.03 4.97a.75.75 0 0 1 .011 1.05l-3.992 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.75.75 0 0 1 1.08-.022z"
7032
7684
  })));
7033
7685
  };
7034
7686
  /* harmony default export */ const CheckboxChecked = ((/* unused pure expression or super */ null && (SvgCheckboxChecked)));
@@ -7038,11 +7690,11 @@ function CheckboxEmpty_extends() { CheckboxEmpty_extends = Object.assign ? Objec
7038
7690
 
7039
7691
  var SvgCheckboxEmpty = function SvgCheckboxEmpty(props) {
7040
7692
  return /*#__PURE__*/React.createElement("svg", CheckboxEmpty_extends({
7041
- viewBox: "0 0 16 16",
7042
- xmlns: "http://www.w3.org/2000/svg"
7693
+ xmlns: "http://www.w3.org/2000/svg",
7694
+ viewBox: "0 0 16 16"
7043
7695
  }, props), CheckboxEmpty_path || (CheckboxEmpty_path = /*#__PURE__*/React.createElement("path", {
7044
- d: "M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z",
7045
- fill: "currentColor"
7696
+ fill: "currentColor",
7697
+ d: "M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"
7046
7698
  })));
7047
7699
  };
7048
7700
  /* harmony default export */ const CheckboxEmpty = ((/* unused pure expression or super */ null && (SvgCheckboxEmpty)));
@@ -7052,11 +7704,11 @@ function ChevronDown_extends() { ChevronDown_extends = Object.assign ? Object.as
7052
7704
 
7053
7705
  var SvgChevronDown = function SvgChevronDown(props) {
7054
7706
  return /*#__PURE__*/external_react_.createElement("svg", ChevronDown_extends({
7055
- viewBox: "0 0 16 16",
7056
- xmlns: "http://www.w3.org/2000/svg"
7707
+ xmlns: "http://www.w3.org/2000/svg",
7708
+ viewBox: "0 0 16 16"
7057
7709
  }, props), ChevronDown_path || (ChevronDown_path = /*#__PURE__*/external_react_.createElement("path", {
7058
- 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",
7059
- fill: "currentColor"
7710
+ fill: "currentColor",
7711
+ 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"
7060
7712
  })));
7061
7713
  };
7062
7714
  /* harmony default export */ const ChevronDown = (SvgChevronDown);
@@ -7066,11 +7718,11 @@ function ChevronLeft_extends() { ChevronLeft_extends = Object.assign ? Object.as
7066
7718
 
7067
7719
  var SvgChevronLeft = function SvgChevronLeft(props) {
7068
7720
  return /*#__PURE__*/external_react_.createElement("svg", ChevronLeft_extends({
7069
- viewBox: "0 0 16 16",
7070
- xmlns: "http://www.w3.org/2000/svg"
7721
+ xmlns: "http://www.w3.org/2000/svg",
7722
+ viewBox: "0 0 16 16"
7071
7723
  }, props), ChevronLeft_path || (ChevronLeft_path = /*#__PURE__*/external_react_.createElement("path", {
7072
- d: "M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z",
7073
- fill: "currentColor"
7724
+ fill: "currentColor",
7725
+ d: "M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"
7074
7726
  })));
7075
7727
  };
7076
7728
  /* harmony default export */ const ChevronLeft = (SvgChevronLeft);
@@ -7080,11 +7732,11 @@ function ChevronRight_extends() { ChevronRight_extends = Object.assign ? Object.
7080
7732
 
7081
7733
  var SvgChevronRight = function SvgChevronRight(props) {
7082
7734
  return /*#__PURE__*/external_react_.createElement("svg", ChevronRight_extends({
7083
- viewBox: "0 0 16 16",
7084
- xmlns: "http://www.w3.org/2000/svg"
7735
+ xmlns: "http://www.w3.org/2000/svg",
7736
+ viewBox: "0 0 16 16"
7085
7737
  }, props), ChevronRight_path || (ChevronRight_path = /*#__PURE__*/external_react_.createElement("path", {
7086
- d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z",
7087
- fill: "currentColor"
7738
+ fill: "currentColor",
7739
+ d: "M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"
7088
7740
  })));
7089
7741
  };
7090
7742
  /* harmony default export */ const ChevronRight = (SvgChevronRight);
@@ -7094,11 +7746,11 @@ function Cog_extends() { Cog_extends = Object.assign ? Object.assign.bind() : fu
7094
7746
 
7095
7747
  var SvgCog = function SvgCog(props) {
7096
7748
  return /*#__PURE__*/external_react_.createElement("svg", Cog_extends({
7097
- viewBox: "0 0 16 16",
7098
- xmlns: "http://www.w3.org/2000/svg"
7749
+ xmlns: "http://www.w3.org/2000/svg",
7750
+ viewBox: "0 0 16 16"
7099
7751
  }, props), Cog_path || (Cog_path = /*#__PURE__*/external_react_.createElement("path", {
7100
- d: "M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z",
7101
- fill: "currentColor"
7752
+ fill: "currentColor",
7753
+ d: "M9.405 1.05c-.413-1.4-2.397-1.4-2.81 0l-.1.34a1.464 1.464 0 0 1-2.105.872l-.31-.17c-1.283-.698-2.686.705-1.987 1.987l.169.311c.446.82.023 1.841-.872 2.105l-.34.1c-1.4.413-1.4 2.397 0 2.81l.34.1a1.464 1.464 0 0 1 .872 2.105l-.17.31c-.698 1.283.705 2.686 1.987 1.987l.311-.169a1.464 1.464 0 0 1 2.105.872l.1.34c.413 1.4 2.397 1.4 2.81 0l.1-.34a1.464 1.464 0 0 1 2.105-.872l.31.17c1.283.698 2.686-.705 1.987-1.987l-.169-.311a1.464 1.464 0 0 1 .872-2.105l.34-.1c1.4-.413 1.4-2.397 0-2.81l-.34-.1a1.464 1.464 0 0 1-.872-2.105l.17-.31c.698-1.283-.705-2.686-1.987-1.987l-.311.169a1.464 1.464 0 0 1-2.105-.872l-.1-.34zM8 10.93a2.929 2.929 0 1 1 0-5.86 2.929 2.929 0 0 1 0 5.858z"
7102
7754
  })));
7103
7755
  };
7104
7756
  /* harmony default export */ const Cog = (SvgCog);
@@ -7108,11 +7760,11 @@ function Cross_extends() { Cross_extends = Object.assign ? Object.assign.bind()
7108
7760
 
7109
7761
  var SvgCross = function SvgCross(props) {
7110
7762
  return /*#__PURE__*/external_react_.createElement("svg", Cross_extends({
7111
- viewBox: "0 0 16 16",
7112
- xmlns: "http://www.w3.org/2000/svg"
7763
+ xmlns: "http://www.w3.org/2000/svg",
7764
+ viewBox: "0 0 16 16"
7113
7765
  }, props), Cross_path || (Cross_path = /*#__PURE__*/external_react_.createElement("path", {
7114
- d: "M4.646 4.646a.5.5 0 0 1 .708 0L8 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 0 1 0-.708z",
7115
- fill: "currentColor"
7766
+ fill: "currentColor",
7767
+ d: "M4.646 4.646a.5.5 0 0 1 .708 0L8 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 0 1 0-.708z"
7116
7768
  })));
7117
7769
  };
7118
7770
  /* harmony default export */ const Cross = (SvgCross);
@@ -7122,11 +7774,11 @@ function CrossCircleFill_extends() { CrossCircleFill_extends = Object.assign ? O
7122
7774
 
7123
7775
  var SvgCrossCircleFill = function SvgCrossCircleFill(props) {
7124
7776
  return /*#__PURE__*/external_react_.createElement("svg", CrossCircleFill_extends({
7125
- viewBox: "0 0 16 16",
7126
- xmlns: "http://www.w3.org/2000/svg"
7777
+ xmlns: "http://www.w3.org/2000/svg",
7778
+ viewBox: "0 0 16 16"
7127
7779
  }, props), CrossCircleFill_path || (CrossCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7128
- 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",
7129
- fill: "currentColor"
7780
+ fill: "currentColor",
7781
+ 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"
7130
7782
  })));
7131
7783
  };
7132
7784
  /* harmony default export */ const CrossCircleFill = (SvgCrossCircleFill);
@@ -7136,11 +7788,11 @@ function CrossSquareFill_extends() { CrossSquareFill_extends = Object.assign ? O
7136
7788
 
7137
7789
  var SvgCrossSquareFill = function SvgCrossSquareFill(props) {
7138
7790
  return /*#__PURE__*/external_react_.createElement("svg", CrossSquareFill_extends({
7139
- viewBox: "0 0 16 16",
7140
- xmlns: "http://www.w3.org/2000/svg"
7791
+ xmlns: "http://www.w3.org/2000/svg",
7792
+ viewBox: "0 0 16 16"
7141
7793
  }, props), CrossSquareFill_path || (CrossSquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7142
- 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",
7143
- fill: "currentColor"
7794
+ fill: "currentColor",
7795
+ 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"
7144
7796
  })));
7145
7797
  };
7146
7798
  /* harmony default export */ const CrossSquareFill = (SvgCrossSquareFill);
@@ -7150,11 +7802,11 @@ function DashCircleFill_extends() { DashCircleFill_extends = Object.assign ? Obj
7150
7802
 
7151
7803
  var SvgDashCircleFill = function SvgDashCircleFill(props) {
7152
7804
  return /*#__PURE__*/external_react_.createElement("svg", DashCircleFill_extends({
7153
- viewBox: "0 0 16 16",
7154
- xmlns: "http://www.w3.org/2000/svg"
7805
+ xmlns: "http://www.w3.org/2000/svg",
7806
+ viewBox: "0 0 16 16"
7155
7807
  }, props), DashCircleFill_path || (DashCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7156
- d: "M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z",
7157
- fill: "currentColor"
7808
+ fill: "currentColor",
7809
+ d: "M16 8A8 8 0 1 1 0 8a8 8 0 0 1 16 0zM4.5 7.5a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-7z"
7158
7810
  })));
7159
7811
  };
7160
7812
  /* harmony default export */ const DashCircleFill = (SvgDashCircleFill);
@@ -7164,11 +7816,11 @@ function Eraser_extends() { Eraser_extends = Object.assign ? Object.assign.bind(
7164
7816
 
7165
7817
  var SvgEraser = function SvgEraser(props) {
7166
7818
  return /*#__PURE__*/external_react_.createElement("svg", Eraser_extends({
7167
- viewBox: "0 0 16 16",
7168
- xmlns: "http://www.w3.org/2000/svg"
7819
+ xmlns: "http://www.w3.org/2000/svg",
7820
+ viewBox: "0 0 16 16"
7169
7821
  }, props), Eraser_path || (Eraser_path = /*#__PURE__*/external_react_.createElement("path", {
7170
- d: "M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z",
7171
- fill: "currentColor"
7822
+ fill: "currentColor",
7823
+ d: "M8.086 2.207a2 2 0 0 1 2.828 0l3.879 3.879a2 2 0 0 1 0 2.828l-5.5 5.5A2 2 0 0 1 7.879 15H5.12a2 2 0 0 1-1.414-.586l-2.5-2.5a2 2 0 0 1 0-2.828l6.879-6.879zm.66 11.34L3.453 8.254 1.914 9.793a1 1 0 0 0 0 1.414l2.5 2.5a1 1 0 0 0 .707.293H7.88a1 1 0 0 0 .707-.293l.16-.16z"
7172
7824
  })));
7173
7825
  };
7174
7826
  /* harmony default export */ const Eraser = (SvgEraser);
@@ -7178,11 +7830,11 @@ function ExclamationSquareFill_extends() { ExclamationSquareFill_extends = Objec
7178
7830
 
7179
7831
  var SvgExclamationSquareFill = function SvgExclamationSquareFill(props) {
7180
7832
  return /*#__PURE__*/external_react_.createElement("svg", ExclamationSquareFill_extends({
7181
- viewBox: "0 0 16 16",
7182
- xmlns: "http://www.w3.org/2000/svg"
7833
+ xmlns: "http://www.w3.org/2000/svg",
7834
+ viewBox: "0 0 16 16"
7183
7835
  }, props), ExclamationSquareFill_path || (ExclamationSquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7184
- 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-2H2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z",
7185
- fill: "currentColor"
7836
+ fill: "currentColor",
7837
+ 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-2H2zm6 4c.535 0 .954.462.9.995l-.35 3.507a.552.552 0 0 1-1.1 0L7.1 4.995A.905.905 0 0 1 8 4zm.002 6a1 1 0 1 1 0 2 1 1 0 0 1 0-2z"
7186
7838
  })));
7187
7839
  };
7188
7840
  /* harmony default export */ const ExclamationSquareFill = (SvgExclamationSquareFill);
@@ -7192,11 +7844,11 @@ function ExclamationTriangleFill_extends() { ExclamationTriangleFill_extends = O
7192
7844
 
7193
7845
  var SvgExclamationTriangleFill = function SvgExclamationTriangleFill(props) {
7194
7846
  return /*#__PURE__*/external_react_.createElement("svg", ExclamationTriangleFill_extends({
7195
- viewBox: "0 0 16 16",
7196
- xmlns: "http://www.w3.org/2000/svg"
7847
+ xmlns: "http://www.w3.org/2000/svg",
7848
+ viewBox: "0 0 16 16"
7197
7849
  }, props), ExclamationTriangleFill_path || (ExclamationTriangleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7198
- 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",
7199
- fill: "currentColor"
7850
+ fill: "currentColor",
7851
+ 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"
7200
7852
  })));
7201
7853
  };
7202
7854
  /* harmony default export */ const ExclamationTriangleFill = (SvgExclamationTriangleFill);
@@ -7206,14 +7858,14 @@ function EyeFill_extends() { EyeFill_extends = Object.assign ? Object.assign.bin
7206
7858
 
7207
7859
  var SvgEyeFill = function SvgEyeFill(props) {
7208
7860
  return /*#__PURE__*/external_react_.createElement("svg", EyeFill_extends({
7209
- viewBox: "0 0 16 16",
7210
- xmlns: "http://www.w3.org/2000/svg"
7861
+ xmlns: "http://www.w3.org/2000/svg",
7862
+ viewBox: "0 0 16 16"
7211
7863
  }, props), EyeFill_path || (EyeFill_path = /*#__PURE__*/external_react_.createElement("path", {
7212
- d: "M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z",
7213
- fill: "currentColor"
7864
+ fill: "currentColor",
7865
+ d: "M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z"
7214
7866
  })), EyeFill_path2 || (EyeFill_path2 = /*#__PURE__*/external_react_.createElement("path", {
7215
- d: "M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z",
7216
- fill: "currentColor"
7867
+ fill: "currentColor",
7868
+ d: "M0 8s3-5.5 8-5.5S16 8 16 8s-3 5.5-8 5.5S0 8 0 8zm8 3.5a3.5 3.5 0 1 0 0-7 3.5 3.5 0 0 0 0 7z"
7217
7869
  })));
7218
7870
  };
7219
7871
  /* harmony default export */ const EyeFill = (SvgEyeFill);
@@ -7223,11 +7875,11 @@ function Flag_extends() { Flag_extends = Object.assign ? Object.assign.bind() :
7223
7875
 
7224
7876
  var SvgFlag = function SvgFlag(props) {
7225
7877
  return /*#__PURE__*/external_react_.createElement("svg", Flag_extends({
7226
- viewBox: "0 0 16 16",
7227
- xmlns: "http://www.w3.org/2000/svg"
7878
+ xmlns: "http://www.w3.org/2000/svg",
7879
+ viewBox: "0 0 16 16"
7228
7880
  }, props), Flag_path || (Flag_path = /*#__PURE__*/external_react_.createElement("path", {
7229
- d: "M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21.294 21.294 0 0 0 3 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21.317 21.317 0 0 0 14 7.655V1.222z",
7230
- fill: "currentColor"
7881
+ fill: "currentColor",
7882
+ d: "M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001M14 1.221c-.22.078-.48.167-.766.255-.81.252-1.872.523-2.734.523-.886 0-1.592-.286-2.203-.534l-.008-.003C7.662 1.21 7.139 1 6.5 1c-.669 0-1.606.229-2.415.478A21.294 21.294 0 0 0 3 1.845v6.433c.22-.078.48-.167.766-.255C4.576 7.77 5.638 7.5 6.5 7.5c.847 0 1.548.28 2.158.525l.028.01C9.32 8.29 9.86 8.5 10.5 8.5c.668 0 1.606-.229 2.415-.478A21.317 21.317 0 0 0 14 7.655V1.222z"
7231
7883
  })));
7232
7884
  };
7233
7885
  /* harmony default export */ const Flag = (SvgFlag);
@@ -7237,8 +7889,8 @@ function FlagDe_extends() { FlagDe_extends = Object.assign ? Object.assign.bind(
7237
7889
 
7238
7890
  var SvgFlagDe = function SvgFlagDe(props) {
7239
7891
  return /*#__PURE__*/external_react_.createElement("svg", FlagDe_extends({
7240
- viewBox: "0 0 20 12",
7241
- xmlns: "http://www.w3.org/2000/svg"
7892
+ xmlns: "http://www.w3.org/2000/svg",
7893
+ viewBox: "0 0 20 12"
7242
7894
  }, props), FlagDe_path || (FlagDe_path = /*#__PURE__*/external_react_.createElement("path", {
7243
7895
  d: "M0 0h20v4H0z"
7244
7896
  })), FlagDe_path2 || (FlagDe_path2 = /*#__PURE__*/external_react_.createElement("path", {
@@ -7276,30 +7928,30 @@ var SvgFlagFa = function SvgFlagFa(props) {
7276
7928
  xmlns: "http://www.w3.org/2000/svg",
7277
7929
  viewBox: "0 0 630 360"
7278
7930
  }, props), /*#__PURE__*/external_react_.createElement("path", {
7931
+ d: "M0 0h630v360H0Z",
7279
7932
  style: {
7280
7933
  fill: "#da0000"
7281
- },
7282
- d: "M0 0h630v360H0Z"
7934
+ }
7283
7935
  }), /*#__PURE__*/external_react_.createElement("path", {
7936
+ d: "M0 0h630v240H0Z",
7284
7937
  style: {
7285
7938
  fill: "#fff"
7286
- },
7287
- d: "M0 0h630v240H0Z"
7939
+ }
7288
7940
  }), /*#__PURE__*/external_react_.createElement("path", {
7941
+ d: "M0 0h630v120H0Z",
7289
7942
  style: {
7290
7943
  fill: "#239f40"
7291
- },
7292
- d: "M0 0h630v120H0Z"
7944
+ }
7293
7945
  }), /*#__PURE__*/external_react_.createElement("g", {
7294
7946
  fill: "none",
7295
7947
  stroke: "#fff",
7296
7948
  strokeWidth: 2
7297
7949
  }, FlagFa_path || (FlagFa_path = /*#__PURE__*/external_react_.createElement("path", {
7298
- d: "M8.4 101.8h36.4m-35 12.6v-7H21v5.6h11.2v-5.6h-7M14 113h2.8m28 0h-7v-5.6H49m0-7V113h11.2v-12.6m-5.6 0V113",
7299
- strokeWidth: 2.8
7950
+ strokeWidth: 2.8,
7951
+ d: "M8.4 101.8h36.4m-35 12.6v-7H21v5.6h11.2v-5.6h-7M14 113h2.8m28 0h-7v-5.6H49m0-7V113h11.2v-12.6m-5.6 0V113"
7300
7952
  })), FlagFa_path2 || (FlagFa_path2 = /*#__PURE__*/external_react_.createElement("path", {
7301
- d: "M8.4 120h25.2m2.8 0h25.2",
7302
- strokeWidth: 5.6
7953
+ strokeWidth: 5.6,
7954
+ d: "M8.4 120h25.2m2.8 0h25.2"
7303
7955
  })), /*#__PURE__*/external_react_.createElement("path", {
7304
7956
  d: "M0 139.6h25.2m2.8 0h25.2",
7305
7957
  style: {
@@ -7313,11 +7965,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7313
7965
  },
7314
7966
  transform: "translate(8.4 100.4)"
7315
7967
  }), FlagFa_path3 || (FlagFa_path3 = /*#__PURE__*/external_react_.createElement("path", {
7316
- d: "M64.4 101.8h36.4m-35 12.6v-7H77v5.6h11.2v-5.6h-7M70 113h2.8m28 0h-7v-5.6H105m0-7V113h11.2v-12.6m-5.6 0V113",
7317
- strokeWidth: 2.8
7968
+ strokeWidth: 2.8,
7969
+ d: "M64.4 101.8h36.4m-35 12.6v-7H77v5.6h11.2v-5.6h-7M70 113h2.8m28 0h-7v-5.6H105m0-7V113h11.2v-12.6m-5.6 0V113"
7318
7970
  })), _path4 || (_path4 = /*#__PURE__*/external_react_.createElement("path", {
7319
- d: "M64.4 120h25.2m2.8 0h25.2",
7320
- strokeWidth: 5.6
7971
+ strokeWidth: 5.6,
7972
+ d: "M64.4 120h25.2m2.8 0h25.2"
7321
7973
  })), /*#__PURE__*/external_react_.createElement("path", {
7322
7974
  d: "M0 139.6h25.2m2.8 0h25.2",
7323
7975
  style: {
@@ -7331,11 +7983,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7331
7983
  },
7332
7984
  transform: "translate(64.4 100.4)"
7333
7985
  }), _path5 || (_path5 = /*#__PURE__*/external_react_.createElement("path", {
7334
- d: "M120.4 101.8h36.4m-35 12.6v-7H133v5.6h11.2v-5.6h-7M126 113h2.8m28 0h-7v-5.6H161m0-7V113h11.2v-12.6m-5.6 0V113",
7335
- strokeWidth: 2.8
7986
+ strokeWidth: 2.8,
7987
+ d: "M120.4 101.8h36.4m-35 12.6v-7H133v5.6h11.2v-5.6h-7M126 113h2.8m28 0h-7v-5.6H161m0-7V113h11.2v-12.6m-5.6 0V113"
7336
7988
  })), _path6 || (_path6 = /*#__PURE__*/external_react_.createElement("path", {
7337
- d: "M120.4 120h25.2m2.8 0h25.2",
7338
- strokeWidth: 5.6
7989
+ strokeWidth: 5.6,
7990
+ d: "M120.4 120h25.2m2.8 0h25.2"
7339
7991
  })), /*#__PURE__*/external_react_.createElement("path", {
7340
7992
  d: "M0 139.6h25.2m2.8 0h25.2",
7341
7993
  style: {
@@ -7349,11 +8001,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7349
8001
  },
7350
8002
  transform: "translate(120.4 100.4)"
7351
8003
  }), _path7 || (_path7 = /*#__PURE__*/external_react_.createElement("path", {
7352
- d: "M176.4 101.8h36.4m-35 12.6v-7H189v5.6h11.2v-5.6h-7M182 113h2.8m28 0h-7v-5.6H217m0-7V113h11.2v-12.6m-5.6 0V113",
7353
- strokeWidth: 2.8
8004
+ strokeWidth: 2.8,
8005
+ d: "M176.4 101.8h36.4m-35 12.6v-7H189v5.6h11.2v-5.6h-7M182 113h2.8m28 0h-7v-5.6H217m0-7V113h11.2v-12.6m-5.6 0V113"
7354
8006
  })), _path8 || (_path8 = /*#__PURE__*/external_react_.createElement("path", {
7355
- d: "M176.4 120h25.2m2.8 0h25.2",
7356
- strokeWidth: 5.6
8007
+ strokeWidth: 5.6,
8008
+ d: "M176.4 120h25.2m2.8 0h25.2"
7357
8009
  })), /*#__PURE__*/external_react_.createElement("path", {
7358
8010
  d: "M0 139.6h25.2m2.8 0h25.2",
7359
8011
  style: {
@@ -7367,11 +8019,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7367
8019
  },
7368
8020
  transform: "translate(176.4 100.4)"
7369
8021
  }), _path9 || (_path9 = /*#__PURE__*/external_react_.createElement("path", {
7370
- d: "M232.4 101.8h36.4m-35 12.6v-7H245v5.6h11.2v-5.6h-7M238 113h2.8m28 0h-7v-5.6H273m0-7V113h11.2v-12.6m-5.6 0V113",
7371
- strokeWidth: 2.8
8022
+ strokeWidth: 2.8,
8023
+ d: "M232.4 101.8h36.4m-35 12.6v-7H245v5.6h11.2v-5.6h-7M238 113h2.8m28 0h-7v-5.6H273m0-7V113h11.2v-12.6m-5.6 0V113"
7372
8024
  })), _path10 || (_path10 = /*#__PURE__*/external_react_.createElement("path", {
7373
- d: "M232.4 120h25.2m2.8 0h25.2",
7374
- strokeWidth: 5.6
8025
+ strokeWidth: 5.6,
8026
+ d: "M232.4 120h25.2m2.8 0h25.2"
7375
8027
  })), /*#__PURE__*/external_react_.createElement("path", {
7376
8028
  d: "M0 139.6h25.2m2.8 0h25.2",
7377
8029
  style: {
@@ -7385,11 +8037,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7385
8037
  },
7386
8038
  transform: "translate(232.4 100.4)"
7387
8039
  }), _path11 || (_path11 = /*#__PURE__*/external_react_.createElement("path", {
7388
- d: "M288.4 101.8h36.4m-35 12.6v-7H301v5.6h11.2v-5.6h-7M294 113h2.8m28 0h-7v-5.6H329m0-7V113h11.2v-12.6m-5.6 0V113",
7389
- strokeWidth: 2.8
8040
+ strokeWidth: 2.8,
8041
+ d: "M288.4 101.8h36.4m-35 12.6v-7H301v5.6h11.2v-5.6h-7M294 113h2.8m28 0h-7v-5.6H329m0-7V113h11.2v-12.6m-5.6 0V113"
7390
8042
  })), _path12 || (_path12 = /*#__PURE__*/external_react_.createElement("path", {
7391
- d: "M288.4 120h25.2m2.8 0h25.2",
7392
- strokeWidth: 5.6
8043
+ strokeWidth: 5.6,
8044
+ d: "M288.4 120h25.2m2.8 0h25.2"
7393
8045
  })), /*#__PURE__*/external_react_.createElement("path", {
7394
8046
  d: "M0 139.6h25.2m2.8 0h25.2",
7395
8047
  style: {
@@ -7403,11 +8055,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7403
8055
  },
7404
8056
  transform: "translate(288.4 100.4)"
7405
8057
  }), _path13 || (_path13 = /*#__PURE__*/external_react_.createElement("path", {
7406
- d: "M344.4 101.8h36.4m-35 12.6v-7H357v5.6h11.2v-5.6h-7M350 113h2.8m28 0h-7v-5.6H385m0-7V113h11.2v-12.6m-5.6 0V113",
7407
- strokeWidth: 2.8
8058
+ strokeWidth: 2.8,
8059
+ d: "M344.4 101.8h36.4m-35 12.6v-7H357v5.6h11.2v-5.6h-7M350 113h2.8m28 0h-7v-5.6H385m0-7V113h11.2v-12.6m-5.6 0V113"
7408
8060
  })), _path14 || (_path14 = /*#__PURE__*/external_react_.createElement("path", {
7409
- d: "M344.4 120h25.2m2.8 0h25.2",
7410
- strokeWidth: 5.6
8061
+ strokeWidth: 5.6,
8062
+ d: "M344.4 120h25.2m2.8 0h25.2"
7411
8063
  })), /*#__PURE__*/external_react_.createElement("path", {
7412
8064
  d: "M0 139.6h25.2m2.8 0h25.2",
7413
8065
  style: {
@@ -7421,11 +8073,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7421
8073
  },
7422
8074
  transform: "translate(344.4 100.4)"
7423
8075
  }), _path15 || (_path15 = /*#__PURE__*/external_react_.createElement("path", {
7424
- d: "M400.4 101.8h36.4m-35 12.6v-7H413v5.6h11.2v-5.6h-7M406 113h2.8m28 0h-7v-5.6H441m0-7V113h11.2v-12.6m-5.6 0V113",
7425
- strokeWidth: 2.8
8076
+ strokeWidth: 2.8,
8077
+ d: "M400.4 101.8h36.4m-35 12.6v-7H413v5.6h11.2v-5.6h-7M406 113h2.8m28 0h-7v-5.6H441m0-7V113h11.2v-12.6m-5.6 0V113"
7426
8078
  })), _path16 || (_path16 = /*#__PURE__*/external_react_.createElement("path", {
7427
- d: "M400.4 120h25.2m2.8 0h25.2",
7428
- strokeWidth: 5.6
8079
+ strokeWidth: 5.6,
8080
+ d: "M400.4 120h25.2m2.8 0h25.2"
7429
8081
  })), /*#__PURE__*/external_react_.createElement("path", {
7430
8082
  d: "M0 139.6h25.2m2.8 0h25.2",
7431
8083
  style: {
@@ -7439,11 +8091,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7439
8091
  },
7440
8092
  transform: "translate(400.4 100.4)"
7441
8093
  }), _path17 || (_path17 = /*#__PURE__*/external_react_.createElement("path", {
7442
- d: "M456.4 101.8h36.4m-35 12.6v-7H469v5.6h11.2v-5.6h-7M462 113h2.8m28 0h-7v-5.6H497m0-7V113h11.2v-12.6m-5.6 0V113",
7443
- strokeWidth: 2.8
8094
+ strokeWidth: 2.8,
8095
+ d: "M456.4 101.8h36.4m-35 12.6v-7H469v5.6h11.2v-5.6h-7M462 113h2.8m28 0h-7v-5.6H497m0-7V113h11.2v-12.6m-5.6 0V113"
7444
8096
  })), _path18 || (_path18 = /*#__PURE__*/external_react_.createElement("path", {
7445
- d: "M456.4 120h25.2m2.8 0h25.2",
7446
- strokeWidth: 5.6
8097
+ strokeWidth: 5.6,
8098
+ d: "M456.4 120h25.2m2.8 0h25.2"
7447
8099
  })), /*#__PURE__*/external_react_.createElement("path", {
7448
8100
  d: "M0 139.6h25.2m2.8 0h25.2",
7449
8101
  style: {
@@ -7457,11 +8109,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7457
8109
  },
7458
8110
  transform: "translate(456.4 100.4)"
7459
8111
  }), _path19 || (_path19 = /*#__PURE__*/external_react_.createElement("path", {
7460
- d: "M512.4 101.8h36.4m-35 12.6v-7H525v5.6h11.2v-5.6h-7M518 113h2.8m28 0h-7v-5.6H553m0-7V113h11.2v-12.6m-5.6 0V113",
7461
- strokeWidth: 2.8
8112
+ strokeWidth: 2.8,
8113
+ d: "M512.4 101.8h36.4m-35 12.6v-7H525v5.6h11.2v-5.6h-7M518 113h2.8m28 0h-7v-5.6H553m0-7V113h11.2v-12.6m-5.6 0V113"
7462
8114
  })), _path20 || (_path20 = /*#__PURE__*/external_react_.createElement("path", {
7463
- d: "M512.4 120h25.2m2.8 0h25.2",
7464
- strokeWidth: 5.6
8115
+ strokeWidth: 5.6,
8116
+ d: "M512.4 120h25.2m2.8 0h25.2"
7465
8117
  })), /*#__PURE__*/external_react_.createElement("path", {
7466
8118
  d: "M0 139.6h25.2m2.8 0h25.2",
7467
8119
  style: {
@@ -7475,11 +8127,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7475
8127
  },
7476
8128
  transform: "translate(512.4 100.4)"
7477
8129
  }), _path21 || (_path21 = /*#__PURE__*/external_react_.createElement("path", {
7478
- d: "M568.4 101.8h36.4m-35 12.6v-7H581v5.6h11.2v-5.6h-7M574 113h2.8m28 0h-7v-5.6H609m0-7V113h11.2v-12.6m-5.6 0V113",
7479
- strokeWidth: 2.8
8130
+ strokeWidth: 2.8,
8131
+ d: "M568.4 101.8h36.4m-35 12.6v-7H581v5.6h11.2v-5.6h-7M574 113h2.8m28 0h-7v-5.6H609m0-7V113h11.2v-12.6m-5.6 0V113"
7480
8132
  })), _path22 || (_path22 = /*#__PURE__*/external_react_.createElement("path", {
7481
- d: "M568.4 120h25.2m2.8 0h25.2",
7482
- strokeWidth: 5.6
8133
+ strokeWidth: 5.6,
8134
+ d: "M568.4 120h25.2m2.8 0h25.2"
7483
8135
  })), /*#__PURE__*/external_react_.createElement("path", {
7484
8136
  d: "M0 139.6h25.2m2.8 0h25.2",
7485
8137
  style: {
@@ -7511,11 +8163,11 @@ function FlagFill_extends() { FlagFill_extends = Object.assign ? Object.assign.b
7511
8163
 
7512
8164
  var SvgFlagFill = function SvgFlagFill(props) {
7513
8165
  return /*#__PURE__*/external_react_.createElement("svg", FlagFill_extends({
7514
- viewBox: "0 0 16 16",
7515
- xmlns: "http://www.w3.org/2000/svg"
8166
+ xmlns: "http://www.w3.org/2000/svg",
8167
+ viewBox: "0 0 16 16"
7516
8168
  }, props), FlagFill_path || (FlagFill_path = /*#__PURE__*/external_react_.createElement("path", {
7517
- d: "M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001",
7518
- fill: "currentColor"
8169
+ fill: "currentColor",
8170
+ d: "M14.778.085A.5.5 0 0 1 15 .5V8a.5.5 0 0 1-.314.464L14.5 8l.186.464-.003.001-.006.003-.023.009a12.435 12.435 0 0 1-.397.15c-.264.095-.631.223-1.047.35-.816.252-1.879.523-2.71.523-.847 0-1.548-.28-2.158-.525l-.028-.01C7.68 8.71 7.14 8.5 6.5 8.5c-.7 0-1.638.23-2.437.477A19.626 19.626 0 0 0 3 9.342V15.5a.5.5 0 0 1-1 0V.5a.5.5 0 0 1 1 0v.282c.226-.079.496-.17.79-.26C4.606.272 5.67 0 6.5 0c.84 0 1.524.277 2.121.519l.043.018C9.286.788 9.828 1 10.5 1c.7 0 1.638-.23 2.437-.477a19.587 19.587 0 0 0 1.349-.476l.019-.007.004-.002h.001"
7519
8171
  })));
7520
8172
  };
7521
8173
  /* harmony default export */ const FlagFill = (SvgFlagFill);
@@ -7525,8 +8177,8 @@ function FlagFr_extends() { FlagFr_extends = Object.assign ? Object.assign.bind(
7525
8177
 
7526
8178
  var SvgFlagFr = function SvgFlagFr(props) {
7527
8179
  return /*#__PURE__*/external_react_.createElement("svg", FlagFr_extends({
7528
- viewBox: "0 0 24 15",
7529
- xmlns: "http://www.w3.org/2000/svg"
8180
+ xmlns: "http://www.w3.org/2000/svg",
8181
+ viewBox: "0 0 24 15"
7530
8182
  }, props), FlagFr_path || (FlagFr_path = /*#__PURE__*/external_react_.createElement("path", {
7531
8183
  fill: "#002395",
7532
8184
  d: "M0 0h8v15H0z"
@@ -7545,27 +8197,27 @@ function FlagGb_extends() { FlagGb_extends = Object.assign ? Object.assign.bind(
7545
8197
 
7546
8198
  var SvgFlagGb = function SvgFlagGb(props) {
7547
8199
  return /*#__PURE__*/external_react_.createElement("svg", FlagGb_extends({
7548
- viewBox: "0 0 60 30",
7549
- xmlns: "http://www.w3.org/2000/svg"
8200
+ xmlns: "http://www.w3.org/2000/svg",
8201
+ viewBox: "0 0 60 30"
7550
8202
  }, props), FlagGb_path || (FlagGb_path = /*#__PURE__*/external_react_.createElement("path", {
7551
- d: "M0 0v30h60V0z",
7552
- fill: "#00247d"
8203
+ fill: "#00247d",
8204
+ d: "M0 0v30h60V0z"
7553
8205
  })), FlagGb_path2 || (FlagGb_path2 = /*#__PURE__*/external_react_.createElement("path", {
7554
- d: "m0 0 60 30m0-30L0 30",
7555
8206
  stroke: "#fff",
7556
- strokeWidth: 6
8207
+ strokeWidth: 6,
8208
+ d: "m0 0 60 30m0-30L0 30"
7557
8209
  })), FlagGb_path3 || (FlagGb_path3 = /*#__PURE__*/external_react_.createElement("path", {
7558
- d: "m0 0 60 30m0-30L0 30",
7559
8210
  stroke: "#cf142b",
7560
- strokeWidth: 4
8211
+ strokeWidth: 4,
8212
+ d: "m0 0 60 30m0-30L0 30"
7561
8213
  })), FlagGb_path4 || (FlagGb_path4 = /*#__PURE__*/external_react_.createElement("path", {
7562
- d: "M30 0v30M0 15h60",
7563
8214
  stroke: "#fff",
7564
- strokeWidth: 10
8215
+ strokeWidth: 10,
8216
+ d: "M30 0v30M0 15h60"
7565
8217
  })), FlagGb_path5 || (FlagGb_path5 = /*#__PURE__*/external_react_.createElement("path", {
7566
- d: "M30 0v30M0 15h60",
7567
8218
  stroke: "#cf142b",
7568
- strokeWidth: 6
8219
+ strokeWidth: 6,
8220
+ d: "M30 0v30M0 15h60"
7569
8221
  })));
7570
8222
  };
7571
8223
  /* harmony default export */ const FlagGb = (SvgFlagGb);
@@ -7575,8 +8227,8 @@ function FlagPl_extends() { FlagPl_extends = Object.assign ? Object.assign.bind(
7575
8227
 
7576
8228
  var SvgFlagPl = function SvgFlagPl(props) {
7577
8229
  return /*#__PURE__*/external_react_.createElement("svg", FlagPl_extends({
7578
- viewBox: "0 0 16 10",
7579
- xmlns: "http://www.w3.org/2000/svg"
8230
+ xmlns: "http://www.w3.org/2000/svg",
8231
+ viewBox: "0 0 16 10"
7580
8232
  }, props), FlagPl_path || (FlagPl_path = /*#__PURE__*/external_react_.createElement("path", {
7581
8233
  fill: "#fff",
7582
8234
  d: "M0 0h16v10H0z"
@@ -7592,15 +8244,15 @@ function FlagUs_extends() { FlagUs_extends = Object.assign ? Object.assign.bind(
7592
8244
 
7593
8245
  var SvgFlagUs = function SvgFlagUs(props) {
7594
8246
  return /*#__PURE__*/external_react_.createElement("svg", FlagUs_extends({
7595
- viewBox: "0 0 7410 3900",
7596
- xmlns: "http://www.w3.org/2000/svg"
8247
+ xmlns: "http://www.w3.org/2000/svg",
8248
+ viewBox: "0 0 7410 3900"
7597
8249
  }, props), FlagUs_path || (FlagUs_path = /*#__PURE__*/external_react_.createElement("path", {
7598
8250
  fill: "#b22234",
7599
8251
  d: "M0 0h7410v3900H0z"
7600
8252
  })), FlagUs_path2 || (FlagUs_path2 = /*#__PURE__*/external_react_.createElement("path", {
7601
- d: "M0 450h7410m0 600H0m0 600h7410m0 600H0m0 600h7410m0 600H0",
7602
8253
  stroke: "#fff",
7603
- strokeWidth: 300
8254
+ strokeWidth: 300,
8255
+ d: "M0 450h7410m0 600H0m0 600h7410m0 600H0m0 600h7410m0 600H0"
7604
8256
  })), FlagUs_path3 || (FlagUs_path3 = /*#__PURE__*/external_react_.createElement("path", {
7605
8257
  fill: "#3c3b6e",
7606
8258
  d: "M0 0h2964v2100H0z"
@@ -7618,52 +8270,52 @@ var SvgFlagUs = function SvgFlagUs(props) {
7618
8270
  id: "FlagUs_svg__a",
7619
8271
  d: "m247 90 70.534 217.082-184.66-134.164h228.253L176.466 307.082z"
7620
8272
  }), /*#__PURE__*/external_react_.createElement("use", {
7621
- href: "#FlagUs_svg__a",
7622
- y: 420
8273
+ y: 420,
8274
+ href: "#FlagUs_svg__a"
7623
8275
  }), /*#__PURE__*/external_react_.createElement("use", {
7624
- href: "#FlagUs_svg__a",
7625
- y: 840
8276
+ y: 840,
8277
+ href: "#FlagUs_svg__a"
7626
8278
  }), /*#__PURE__*/external_react_.createElement("use", {
7627
- href: "#FlagUs_svg__a",
7628
- y: 1260
8279
+ y: 1260,
8280
+ href: "#FlagUs_svg__a"
7629
8281
  })), /*#__PURE__*/external_react_.createElement("use", {
7630
- href: "#FlagUs_svg__a",
7631
- y: 1680
8282
+ y: 1680,
8283
+ href: "#FlagUs_svg__a"
7632
8284
  })), /*#__PURE__*/external_react_.createElement("use", {
7633
- href: "#FlagUs_svg__b",
7634
8285
  x: 247,
7635
- y: 210
8286
+ y: 210,
8287
+ href: "#FlagUs_svg__b"
7636
8288
  })), /*#__PURE__*/external_react_.createElement("use", {
7637
- href: "#FlagUs_svg__c",
7638
- x: 494
8289
+ x: 494,
8290
+ href: "#FlagUs_svg__c"
7639
8291
  })), /*#__PURE__*/external_react_.createElement("use", {
7640
- href: "#FlagUs_svg__d",
7641
- x: 988
8292
+ x: 988,
8293
+ href: "#FlagUs_svg__d"
7642
8294
  }), /*#__PURE__*/external_react_.createElement("use", {
7643
- href: "#FlagUs_svg__c",
7644
- x: 1976
8295
+ x: 1976,
8296
+ href: "#FlagUs_svg__c"
7645
8297
  }), /*#__PURE__*/external_react_.createElement("use", {
7646
- href: "#FlagUs_svg__e",
7647
- x: 2470
8298
+ x: 2470,
8299
+ href: "#FlagUs_svg__e"
7648
8300
  }))), FlagUs_path4 || (FlagUs_path4 = /*#__PURE__*/external_react_.createElement("path", {
7649
- d: "M0 0v30h60V0z",
7650
- fill: "#00247d"
8301
+ fill: "#00247d",
8302
+ d: "M0 0v30h60V0z"
7651
8303
  })), FlagUs_path5 || (FlagUs_path5 = /*#__PURE__*/external_react_.createElement("path", {
7652
- d: "m0 0 60 30m0-30L0 30",
7653
8304
  stroke: "#fff",
7654
- strokeWidth: 6
8305
+ strokeWidth: 6,
8306
+ d: "m0 0 60 30m0-30L0 30"
7655
8307
  })), FlagUs_path6 || (FlagUs_path6 = /*#__PURE__*/external_react_.createElement("path", {
7656
- d: "m0 0 60 30m0-30L0 30",
7657
8308
  stroke: "#cf142b",
7658
- strokeWidth: 4
8309
+ strokeWidth: 4,
8310
+ d: "m0 0 60 30m0-30L0 30"
7659
8311
  })), FlagUs_path7 || (FlagUs_path7 = /*#__PURE__*/external_react_.createElement("path", {
7660
- d: "M30 0v30M0 15h60",
7661
8312
  stroke: "#fff",
7662
- strokeWidth: 10
8313
+ strokeWidth: 10,
8314
+ d: "M30 0v30M0 15h60"
7663
8315
  })), FlagUs_path8 || (FlagUs_path8 = /*#__PURE__*/external_react_.createElement("path", {
7664
- d: "M30 0v30M0 15h60",
7665
8316
  stroke: "#cf142b",
7666
- strokeWidth: 6
8317
+ strokeWidth: 6,
8318
+ d: "M30 0v30M0 15h60"
7667
8319
  })));
7668
8320
  };
7669
8321
  /* harmony default export */ const FlagUs = (SvgFlagUs);
@@ -7673,11 +8325,11 @@ function Github_extends() { Github_extends = Object.assign ? Object.assign.bind(
7673
8325
 
7674
8326
  var SvgGithub = function SvgGithub(props) {
7675
8327
  return /*#__PURE__*/external_react_.createElement("svg", Github_extends({
7676
- viewBox: "0 0 16 16",
7677
- xmlns: "http://www.w3.org/2000/svg"
8328
+ xmlns: "http://www.w3.org/2000/svg",
8329
+ viewBox: "0 0 16 16"
7678
8330
  }, props), Github_path || (Github_path = /*#__PURE__*/external_react_.createElement("path", {
7679
- d: "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z",
7680
- fill: "currentColor"
8331
+ fill: "currentColor",
8332
+ d: "M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.012 8.012 0 0 0 16 8c0-4.42-3.58-8-8-8z"
7681
8333
  })));
7682
8334
  };
7683
8335
  /* harmony default export */ const Github = (SvgGithub);
@@ -7687,39 +8339,55 @@ function InfoCircleFill_extends() { InfoCircleFill_extends = Object.assign ? Obj
7687
8339
 
7688
8340
  var SvgInfoCircleFill = function SvgInfoCircleFill(props) {
7689
8341
  return /*#__PURE__*/external_react_.createElement("svg", InfoCircleFill_extends({
7690
- viewBox: "0 0 16 16",
7691
- xmlns: "http://www.w3.org/2000/svg"
8342
+ xmlns: "http://www.w3.org/2000/svg",
8343
+ viewBox: "0 0 16 16"
7692
8344
  }, props), InfoCircleFill_path || (InfoCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7693
- 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",
7694
- fill: "currentColor"
8345
+ fill: "currentColor",
8346
+ 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"
7695
8347
  })));
7696
8348
  };
7697
8349
  /* harmony default export */ const InfoCircleFill = (SvgInfoCircleFill);
7698
8350
  ;// CONCATENATED MODULE: ./src/icons/Keyboard.svg
7699
- var Keyboard_path;
8351
+ var Keyboard_path, Keyboard_path2;
7700
8352
  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); }
7701
8353
 
7702
8354
  var SvgKeyboard = function SvgKeyboard(props) {
7703
8355
  return /*#__PURE__*/external_react_.createElement("svg", Keyboard_extends({
7704
- viewBox: "0 0 16 16",
7705
- xmlns: "http://www.w3.org/2000/svg"
8356
+ xmlns: "http://www.w3.org/2000/svg",
8357
+ fill: "currentColor",
8358
+ viewBox: "0 0 16 16"
7706
8359
  }, props), Keyboard_path || (Keyboard_path = /*#__PURE__*/external_react_.createElement("path", {
7707
- d: "M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z",
7708
- fill: "currentColor"
8360
+ d: "M14 5a1 1 0 0 1 1 1v5a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h12zM2 4a2 2 0 0 0-2 2v5a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2z"
8361
+ })), Keyboard_path2 || (Keyboard_path2 = /*#__PURE__*/external_react_.createElement("path", {
8362
+ d: "M13 10.25a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm0-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-5 0A.25.25 0 0 1 8.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 8 8.75v-.5zm2 0a.25.25 0 0 1 .25-.25h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5a.25.25 0 0 1-.25-.25v-.5zm1 2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-5-2A.25.25 0 0 1 6.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 6 8.75v-.5zm-2 0A.25.25 0 0 1 4.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 4 8.75v-.5zm-2 0A.25.25 0 0 1 2.25 8h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 2 8.75v-.5zm11-2a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-2 0a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm-2 0A.25.25 0 0 1 9.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 9 6.75v-.5zm-2 0A.25.25 0 0 1 7.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 7 6.75v-.5zm-2 0A.25.25 0 0 1 5.25 6h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5A.25.25 0 0 1 5 6.75v-.5zm-3 0A.25.25 0 0 1 2.25 6h1.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-1.5A.25.25 0 0 1 2 6.75v-.5zm0 4a.25.25 0 0 1 .25-.25h.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-.5a.25.25 0 0 1-.25-.25v-.5zm2 0a.25.25 0 0 1 .25-.25h5.5a.25.25 0 0 1 .25.25v.5a.25.25 0 0 1-.25.25h-5.5a.25.25 0 0 1-.25-.25v-.5z"
7709
8363
  })));
7710
8364
  };
7711
8365
  /* harmony default export */ const Keyboard = (SvgKeyboard);
8366
+ ;// CONCATENATED MODULE: ./src/icons/KeyboardFill.svg
8367
+ var KeyboardFill_path;
8368
+ function KeyboardFill_extends() { KeyboardFill_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 KeyboardFill_extends.apply(this, arguments); }
8369
+
8370
+ var SvgKeyboardFill = function SvgKeyboardFill(props) {
8371
+ return /*#__PURE__*/external_react_.createElement("svg", KeyboardFill_extends({
8372
+ xmlns: "http://www.w3.org/2000/svg",
8373
+ fill: "currentColor",
8374
+ viewBox: "0 0 16 16"
8375
+ }, props), KeyboardFill_path || (KeyboardFill_path = /*#__PURE__*/external_react_.createElement("path", {
8376
+ d: "M0 6a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V6zm13 .25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM2.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 3 8.75v-.5A.25.25 0 0 0 2.75 8h-.5zM4 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 5 8.75v-.5A.25.25 0 0 0 4.75 8h-.5a.25.25 0 0 0-.25.25zM6.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 7 8.75v-.5A.25.25 0 0 0 6.75 8h-.5zM8 8.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 9 8.75v-.5A.25.25 0 0 0 8.75 8h-.5a.25.25 0 0 0-.25.25zM13.25 8a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm0 2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zm-3-2a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-1.5zm.75 2.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM11.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5zM9 6.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5A.25.25 0 0 0 9.75 6h-.5a.25.25 0 0 0-.25.25zM7.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 8 6.75v-.5A.25.25 0 0 0 7.75 6h-.5zM5 6.25v.5c0 .138.112.25.25.25h.5A.25.25 0 0 0 6 6.75v-.5A.25.25 0 0 0 5.75 6h-.5a.25.25 0 0 0-.25.25zM2.25 6a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h1.5A.25.25 0 0 0 4 6.75v-.5A.25.25 0 0 0 3.75 6h-1.5zM2 10.25v.5c0 .138.112.25.25.25h.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-.5a.25.25 0 0 0-.25.25zM4.25 10a.25.25 0 0 0-.25.25v.5c0 .138.112.25.25.25h5.5a.25.25 0 0 0 .25-.25v-.5a.25.25 0 0 0-.25-.25h-5.5z"
8377
+ })));
8378
+ };
8379
+ /* harmony default export */ const KeyboardFill = (SvgKeyboardFill);
7712
8380
  ;// CONCATENATED MODULE: ./src/icons/List.svg
7713
8381
  var List_path;
7714
8382
  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); }
7715
8383
 
7716
8384
  var SvgList = function SvgList(props) {
7717
8385
  return /*#__PURE__*/external_react_.createElement("svg", List_extends({
7718
- viewBox: "0 0 16 16",
7719
- xmlns: "http://www.w3.org/2000/svg"
8386
+ xmlns: "http://www.w3.org/2000/svg",
8387
+ viewBox: "0 0 16 16"
7720
8388
  }, props), List_path || (List_path = /*#__PURE__*/external_react_.createElement("path", {
7721
- 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",
7722
- fill: "currentColor"
8389
+ fill: "currentColor",
8390
+ 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"
7723
8391
  })));
7724
8392
  };
7725
8393
  /* harmony default export */ const List = (SvgList);
@@ -7729,11 +8397,11 @@ function Sack_extends() { Sack_extends = Object.assign ? Object.assign.bind() :
7729
8397
 
7730
8398
  var SvgSack = function SvgSack(props) {
7731
8399
  return /*#__PURE__*/external_react_.createElement("svg", Sack_extends({
7732
- viewBox: "0 0 24 24",
7733
- xmlns: "http://www.w3.org/2000/svg"
8400
+ xmlns: "http://www.w3.org/2000/svg",
8401
+ viewBox: "0 0 24 24"
7734
8402
  }, props), Sack_path || (Sack_path = /*#__PURE__*/external_react_.createElement("path", {
7735
- d: "M16 9c4 2 5 9 5 9s1 4-5 4H8c-6 0-5-4-5-4s1-7 5-9m6-5-2-2-2 2-4-2 2 5h8l2-5-4 2Z",
7736
- fill: "currentColor"
8403
+ fill: "currentColor",
8404
+ d: "M16 9c4 2 5 9 5 9s1 4-5 4H8c-6 0-5-4-5-4s1-7 5-9m6-5-2-2-2 2-4-2 2 5h8l2-5-4 2Z"
7737
8405
  })));
7738
8406
  };
7739
8407
  /* harmony default export */ const Sack = (SvgSack);
@@ -7743,11 +8411,11 @@ function Search_extends() { Search_extends = Object.assign ? Object.assign.bind(
7743
8411
 
7744
8412
  var SvgSearch = function SvgSearch(props) {
7745
8413
  return /*#__PURE__*/external_react_.createElement("svg", Search_extends({
7746
- viewBox: "0 0 16 16",
7747
- xmlns: "http://www.w3.org/2000/svg"
8414
+ xmlns: "http://www.w3.org/2000/svg",
8415
+ viewBox: "0 0 16 16"
7748
8416
  }, props), Search_path || (Search_path = /*#__PURE__*/external_react_.createElement("path", {
7749
- 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",
7750
- fill: "currentColor"
8417
+ fill: "currentColor",
8418
+ 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"
7751
8419
  })));
7752
8420
  };
7753
8421
  /* harmony default export */ const Search = (SvgSearch);
@@ -7757,11 +8425,11 @@ function SortDown_extends() { SortDown_extends = Object.assign ? Object.assign.b
7757
8425
 
7758
8426
  var SvgSortDown = function SvgSortDown(props) {
7759
8427
  return /*#__PURE__*/external_react_.createElement("svg", SortDown_extends({
7760
- viewBox: "0 0 16 16",
7761
- xmlns: "http://www.w3.org/2000/svg"
8428
+ xmlns: "http://www.w3.org/2000/svg",
8429
+ viewBox: "0 0 16 16"
7762
8430
  }, props), SortDown_path || (SortDown_path = /*#__PURE__*/external_react_.createElement("path", {
7763
- d: "M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z",
7764
- fill: "currentColor"
8431
+ fill: "currentColor",
8432
+ d: "M3.5 2.5a.5.5 0 0 0-1 0v8.793l-1.146-1.147a.5.5 0 0 0-.708.708l2 1.999.007.007a.497.497 0 0 0 .7-.006l2-2a.5.5 0 0 0-.707-.708L3.5 11.293V2.5zm3.5 1a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"
7765
8433
  })));
7766
8434
  };
7767
8435
  /* harmony default export */ const SortDown = (SvgSortDown);
@@ -7771,11 +8439,11 @@ function SortUp_extends() { SortUp_extends = Object.assign ? Object.assign.bind(
7771
8439
 
7772
8440
  var SvgSortUp = function SvgSortUp(props) {
7773
8441
  return /*#__PURE__*/external_react_.createElement("svg", SortUp_extends({
7774
- viewBox: "0 0 16 16",
7775
- xmlns: "http://www.w3.org/2000/svg"
8442
+ xmlns: "http://www.w3.org/2000/svg",
8443
+ viewBox: "0 0 16 16"
7776
8444
  }, props), SortUp_path || (SortUp_path = /*#__PURE__*/external_react_.createElement("path", {
7777
- d: "M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z",
7778
- fill: "currentColor"
8445
+ fill: "currentColor",
8446
+ d: "M3.5 12.5a.5.5 0 0 1-1 0V3.707L1.354 4.854a.5.5 0 1 1-.708-.708l2-1.999.007-.007a.498.498 0 0 1 .7.006l2 2a.5.5 0 1 1-.707.708L3.5 3.707V12.5zm3.5-9a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7a.5.5 0 0 1-.5-.5zM7.5 6a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zm0 3a.5.5 0 0 0 0 1h3a.5.5 0 0 0 0-1h-3zm0 3a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1z"
7779
8447
  })));
7780
8448
  };
7781
8449
  /* harmony default export */ const SortUp = (SvgSortUp);
@@ -7785,11 +8453,11 @@ function Square_extends() { Square_extends = Object.assign ? Object.assign.bind(
7785
8453
 
7786
8454
  var SvgSquare = function SvgSquare(props) {
7787
8455
  return /*#__PURE__*/external_react_.createElement("svg", Square_extends({
7788
- viewBox: "0 0 16 16",
7789
- xmlns: "http://www.w3.org/2000/svg"
8456
+ xmlns: "http://www.w3.org/2000/svg",
8457
+ viewBox: "0 0 16 16"
7790
8458
  }, props), Square_path || (Square_path = /*#__PURE__*/external_react_.createElement("path", {
7791
- d: "M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z",
7792
- fill: "currentColor"
8459
+ fill: "currentColor",
8460
+ d: "M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z"
7793
8461
  })));
7794
8462
  };
7795
8463
  /* harmony default export */ const Square = (SvgSquare);
@@ -7799,11 +8467,11 @@ function SquareFill_extends() { SquareFill_extends = Object.assign ? Object.assi
7799
8467
 
7800
8468
  var SvgSquareFill = function SvgSquareFill(props) {
7801
8469
  return /*#__PURE__*/external_react_.createElement("svg", SquareFill_extends({
7802
- viewBox: "0 0 16 16",
7803
- xmlns: "http://www.w3.org/2000/svg"
8470
+ xmlns: "http://www.w3.org/2000/svg",
8471
+ viewBox: "0 0 16 16"
7804
8472
  }, props), SquareFill_path || (SquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7805
- d: "M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2z",
7806
- fill: "currentColor"
8473
+ fill: "currentColor",
8474
+ d: "M0 2a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v12a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V2z"
7807
8475
  })));
7808
8476
  };
7809
8477
  /* harmony default export */ const SquareFill = (SvgSquareFill);
@@ -7813,11 +8481,11 @@ function Star_extends() { Star_extends = Object.assign ? Object.assign.bind() :
7813
8481
 
7814
8482
  var SvgStar = function SvgStar(props) {
7815
8483
  return /*#__PURE__*/external_react_.createElement("svg", Star_extends({
7816
- viewBox: "0 0 16 16",
7817
- xmlns: "http://www.w3.org/2000/svg"
8484
+ xmlns: "http://www.w3.org/2000/svg",
8485
+ viewBox: "0 0 16 16"
7818
8486
  }, props), Star_path || (Star_path = /*#__PURE__*/external_react_.createElement("path", {
7819
- d: "M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z",
7820
- fill: "currentColor"
8487
+ fill: "currentColor",
8488
+ d: "M3.612 15.443c-.386.198-.824-.149-.746-.592l.83-4.73L.173 6.765c-.329-.314-.158-.888.283-.95l4.898-.696L7.538.792c.197-.39.73-.39.927 0l2.184 4.327 4.898.696c.441.062.612.636.282.95l-3.522 3.356.83 4.73c.078.443-.36.79-.746.592L8 13.187l-4.389 2.256z"
7821
8489
  })));
7822
8490
  };
7823
8491
  /* harmony default export */ const Star = (SvgStar);
@@ -7863,11 +8531,12 @@ var SvgStar = function SvgStar(props) {
7863
8531
 
7864
8532
 
7865
8533
 
8534
+
7866
8535
 
7867
8536
 
7868
8537
  /***/ }),
7869
8538
 
7870
- /***/ 55238:
8539
+ /***/ 18954:
7871
8540
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7872
8541
 
7873
8542
  "use strict";
@@ -7883,6 +8552,7 @@ __webpack_require__.d(__webpack_exports__, {
7883
8552
  "GF": () => (/* reexport */ lib_createRegExp),
7884
8553
  "kD": () => (/* reexport */ lib_dataUrlToBlob),
7885
8554
  "nK": () => (/* reexport */ lib_extractCharacters),
8555
+ "p$": () => (/* reexport */ lib_extractCharactersByCase),
7886
8556
  "WM": () => (/* reexport */ lib_extractInputValue),
7887
8557
  "Jp": () => (/* reexport */ lib_findCell),
7888
8558
  "ZM": () => (/* reexport */ lib_getRemainingTiles),
@@ -7891,6 +8561,7 @@ __webpack_require__.d(__webpack_exports__, {
7891
8561
  "CU": () => (/* reexport */ lib_groupResults),
7892
8562
  "sf": () => (/* reexport */ lib_guessLocale),
7893
8563
  "Mf": () => (/* reexport */ lib_inverseDirection),
8564
+ "yl": () => (/* reexport */ lib_isCtrl),
7894
8565
  "V5": () => (/* reexport */ lib_isMac),
7895
8566
  "Kj": () => (/* reexport */ lib_isRegExp),
7896
8567
  "HP": () => (/* reexport */ lib_memoize),
@@ -7900,7 +8571,7 @@ __webpack_require__.d(__webpack_exports__, {
7900
8571
  "gV": () => (/* reexport */ lib_zipCharactersAndTiles)
7901
8572
  });
7902
8573
 
7903
- // UNUSED EXPORTS: createComparator, createKeyComparator, createStringComparator, detectLocale, getCellSize, getRemainingTilesCount, getTotalRemainingTilesCount, isStringArray, numberComparator, reverseComparator
8574
+ // UNUSED EXPORTS: createComparator, createKeyComparator, createStringComparator, detectLocale, getCellSize, getRemainingTilesCount, getTotalRemainingTilesCount, isStringArray, isUpperCase, numberComparator, reverseComparator
7904
8575
 
7905
8576
  ;// CONCATENATED MODULE: ./src/lib/arrayEquals.ts
7906
8577
  const arrayEquals = (array1, array2)=>{
@@ -8032,23 +8703,58 @@ var constants_build = __webpack_require__(7618);
8032
8703
  ;// CONCATENATED MODULE: ./src/lib/extractCharacters.ts
8033
8704
 
8034
8705
  const extractCharacters = (config, value)=>{
8706
+ let index = 0;
8707
+ const characters = [];
8708
+ const valueLowercase = value.toLocaleLowerCase(config.locale);
8709
+ while(index < valueLowercase.length){
8710
+ const character = valueLowercase[index];
8711
+ const nextCharacter = valueLowercase[index + 1];
8712
+ const digraph = `${character}${nextCharacter}`;
8713
+ if (config.twoCharacterTiles.includes(digraph)) {
8714
+ characters.push(digraph);
8715
+ index += digraph.length;
8716
+ } else if (config.hasCharacter(character) || character === constants_build.BLANK) {
8717
+ characters.push(character);
8718
+ ++index;
8719
+ } else {
8720
+ ++index;
8721
+ }
8722
+ }
8723
+ return characters;
8724
+ };
8725
+ /* harmony default export */ const lib_extractCharacters = (extractCharacters);
8726
+
8727
+ ;// CONCATENATED MODULE: ./src/lib/isUpperCase.ts
8728
+ const isUpperCase = (locale, value)=>{
8729
+ return value === value.toLocaleUpperCase(locale);
8730
+ };
8731
+ /* harmony default export */ const lib_isUpperCase = (isUpperCase);
8732
+
8733
+ ;// CONCATENATED MODULE: ./src/lib/extractCharactersByCase.ts
8734
+
8735
+
8736
+ const extractCharactersByCase = (config, value)=>{
8035
8737
  let index = 0;
8036
8738
  const characters = [];
8037
8739
  while(index < value.length){
8038
8740
  const character = value[index];
8741
+ const characterLowercase = value[index].toLocaleLowerCase(config.locale);
8039
8742
  const nextCharacter = value[index + 1];
8040
- const twoCharacterTileCandidate = `${character}${nextCharacter}`;
8041
- if (config.twoCharacterTiles.includes(twoCharacterTileCandidate)) {
8042
- characters.push(twoCharacterTileCandidate);
8743
+ const digraph = `${character}${nextCharacter}`;
8744
+ const digraphLowercase = digraph.toLocaleLowerCase(config.locale);
8745
+ if (lib_isUpperCase(config.locale, digraph) && config.twoCharacterTiles.includes(digraphLowercase)) {
8746
+ characters.push(digraphLowercase);
8747
+ index += digraphLowercase.length;
8748
+ } else if (config.hasCharacter(characterLowercase) || characterLowercase === constants_build.BLANK) {
8749
+ characters.push(characterLowercase);
8750
+ ++index;
8751
+ } else {
8043
8752
  ++index;
8044
- } else if (config.hasCharacter(character) || character === constants_build.BLANK) {
8045
- characters.push(character);
8046
8753
  }
8047
- ++index;
8048
8754
  }
8049
8755
  return characters;
8050
8756
  };
8051
- /* harmony default export */ const lib_extractCharacters = (extractCharacters);
8757
+ /* harmony default export */ const lib_extractCharactersByCase = (extractCharactersByCase);
8052
8758
 
8053
8759
  ;// CONCATENATED MODULE: ./src/lib/extractInputValue.ts
8054
8760
  const extractInputValue = (input)=>{
@@ -8276,6 +8982,12 @@ const inverseDirection = (direction)=>{
8276
8982
  };
8277
8983
  /* harmony default export */ const lib_inverseDirection = (inverseDirection);
8278
8984
 
8985
+ ;// CONCATENATED MODULE: ./src/lib/isCtrl.ts
8986
+ const isCtrl = (event)=>{
8987
+ return event.ctrlKey || event.metaKey;
8988
+ };
8989
+ /* harmony default export */ const lib_isCtrl = (isCtrl);
8990
+
8279
8991
  ;// CONCATENATED MODULE: ./src/lib/isMac.ts
8280
8992
  const isMac = ()=>{
8281
8993
  if (!globalThis.navigator) {
@@ -8471,6 +9183,9 @@ const zipCharactersAndTiles = (characters, tiles)=>{
8471
9183
 
8472
9184
 
8473
9185
 
9186
+
9187
+
9188
+
8474
9189
 
8475
9190
 
8476
9191
 
@@ -8694,6 +9409,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
8694
9409
  /* harmony export */ "R": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.R),
8695
9410
  /* harmony export */ "Rn": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Rn),
8696
9411
  /* harmony export */ "TP": () => (/* reexport safe */ _slices__WEBPACK_IMPORTED_MODULE_3__.TP),
9412
+ /* harmony export */ "Ub": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Ub),
8697
9413
  /* harmony export */ "Xb": () => (/* reexport safe */ _localStorage__WEBPACK_IMPORTED_MODULE_1__.Z),
8698
9414
  /* harmony export */ "Xk": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Xk),
8699
9415
  /* harmony export */ "Yj": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Yj),
@@ -8760,6 +9476,7 @@ __webpack_async_result__();
8760
9476
  const AUTO_GROUP_TILES = "auto-group-tiles";
8761
9477
  const BOARD = "board";
8762
9478
  const CONFIG_ID = "config-id";
9479
+ const INPUT_MODE = "input-mode";
8763
9480
  const LOCALE = "locale";
8764
9481
  const RACK = "rack";
8765
9482
  const store = store2__WEBPACK_IMPORTED_MODULE_1___default().namespace("scrabble-solver");
@@ -8784,6 +9501,12 @@ const localStorage = {
8784
9501
  setConfigId (configId) {
8785
9502
  store.set(CONFIG_ID, configId, true);
8786
9503
  },
9504
+ getInputMode () {
9505
+ return store.get(INPUT_MODE);
9506
+ },
9507
+ setInputMode (inputMode) {
9508
+ store.set(INPUT_MODE, inputMode, true);
9509
+ },
8787
9510
  getLocale () {
8788
9511
  return store.get(LOCALE);
8789
9512
  },
@@ -8816,8 +9539,8 @@ __webpack_require__.d(__webpack_exports__, {
8816
9539
  var effects_ = __webpack_require__(56477);
8817
9540
  // EXTERNAL MODULE: ./src/i18n/index.ts + 8 modules
8818
9541
  var i18n = __webpack_require__(36743);
8819
- // EXTERNAL MODULE: ./src/lib/index.ts + 33 modules
8820
- var lib = __webpack_require__(55238);
9542
+ // EXTERNAL MODULE: ./src/lib/index.ts + 36 modules
9543
+ var lib = __webpack_require__(18954);
8821
9544
  // EXTERNAL MODULE: ../types/build/index.js
8822
9545
  var build = __webpack_require__(34046);
8823
9546
  ;// CONCATENATED MODULE: ./src/sdk/fetch.ts
@@ -9114,6 +9837,7 @@ function* ensureProperTilesCount() {
9114
9837
  /* harmony export */ "QL": () => (/* binding */ selectResultsQuery),
9115
9838
  /* harmony export */ "R": () => (/* binding */ selectResultsSort),
9116
9839
  /* harmony export */ "Rn": () => (/* binding */ selectSolveError),
9840
+ /* harmony export */ "Ub": () => (/* binding */ selectInputMode),
9117
9841
  /* harmony export */ "Xk": () => (/* binding */ selectResultCandidate),
9118
9842
  /* harmony export */ "Yj": () => (/* binding */ selectRemainingTilesGroups),
9119
9843
  /* harmony export */ "ZA": () => (/* binding */ selectRowsWithCandidate),
@@ -9144,7 +9868,7 @@ function* ensureProperTilesCount() {
9144
9868
  /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34046);
9145
9869
  /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__);
9146
9870
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(36743);
9147
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(55238);
9871
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
9148
9872
  /* eslint-disable max-lines */
9149
9873
 
9150
9874
 
@@ -9186,6 +9910,9 @@ const selectLocaleAutoGroupTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_
9186
9910
  return settings.autoGroupTiles === "left" ? "right" : "left";
9187
9911
  });
9188
9912
  const selectBoard = selectBoardRoot;
9913
+ const selectInputMode = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
9914
+ selectSettingsRoot
9915
+ ], (settings)=>settings.inputMode);
9189
9916
  const selectConfigId = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
9190
9917
  selectSettingsRoot
9191
9918
  ], (settings)=>settings.configId);
@@ -9388,16 +10115,18 @@ var build = __webpack_require__(89418);
9388
10115
  var types_build = __webpack_require__(34046);
9389
10116
  // EXTERNAL MODULE: ./src/state/localStorage.ts
9390
10117
  var localStorage = __webpack_require__(79579);
9391
- // EXTERNAL MODULE: ./src/lib/index.ts + 33 modules
9392
- var lib = __webpack_require__(55238);
10118
+ // EXTERNAL MODULE: ./src/lib/index.ts + 36 modules
10119
+ var lib = __webpack_require__(18954);
9393
10120
  ;// CONCATENATED MODULE: ./src/state/slices/settingsInitialState.ts
9394
10121
 
9395
10122
 
9396
10123
 
9397
10124
  const localStorageAutoGroupTiles = localStorage/* default.getAutoGroupTiles */.Z.getAutoGroupTiles();
10125
+ const isTouchScreen = typeof globalThis.matchMedia !== "undefined" && globalThis.matchMedia("(hover: none)").matches;
9398
10126
  const settingsInitialState = {
9399
10127
  autoGroupTiles: typeof localStorageAutoGroupTiles === "undefined" ? "left" : localStorageAutoGroupTiles,
9400
10128
  configId: localStorage/* default.getConfigId */.Z.getConfigId() || build.scrabble.id,
10129
+ inputMode: localStorage/* default.getInputMode */.Z.getInputMode() || (isTouchScreen ? "touchscreen" : "keyboard"),
9401
10130
  locale: localStorage/* default.getLocale */.Z.getLocale() || (0,lib/* guessLocale */.sf)()
9402
10131
  };
9403
10132
  /* harmony default export */ const slices_settingsInitialState = (settingsInitialState);
@@ -9746,6 +10475,13 @@ const settingsSlice = (0,toolkit_.createSlice)({
9746
10475
  configId
9747
10476
  };
9748
10477
  },
10478
+ changeInputMode: (state, action)=>{
10479
+ const inputMode = action.payload;
10480
+ return {
10481
+ ...state,
10482
+ inputMode
10483
+ };
10484
+ },
9749
10485
  changeLocale: (state, action)=>{
9750
10486
  const locale = action.payload;
9751
10487
  return {
@@ -10352,6 +11088,9 @@ class Config {
10352
11088
  get boardWidth() {
10353
11089
  return this.config.boardWidth;
10354
11090
  }
11091
+ get locale() {
11092
+ return this.config.locale;
11093
+ }
10355
11094
  get twoCharacterTiles() {
10356
11095
  return this.config.tiles.filter((tile) => tile.character.length === 2).map((tile) => tile.character);
10357
11096
  }