@scrabble-solver/scrabble-solver 2.11.8 → 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 (115) 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 +1378 -682
  17. package/.next/server/chunks/44.js +3 -0
  18. package/.next/server/chunks/50.js +20 -78
  19. package/.next/server/chunks/911.js +14 -14
  20. package/.next/server/middleware-build-manifest.js +1 -1
  21. package/.next/server/pages/404.html +1 -1
  22. package/.next/server/pages/404.js.nft.json +1 -1
  23. package/.next/server/pages/500.html +1 -1
  24. package/.next/server/pages/_app.js +8 -0
  25. package/.next/server/pages/_app.js.nft.json +1 -1
  26. package/.next/server/pages/api/solve.js +43 -11
  27. package/.next/server/pages/index.html +1 -1
  28. package/.next/server/pages/index.js +144 -11
  29. package/.next/server/pages/index.js.nft.json +1 -1
  30. package/.next/server/pages/index.json +1 -1
  31. package/.next/server/pages-manifest.json +2 -2
  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/{c6e0e01f44fc0425.css → 60e8258da7362a1a.css} +1 -1
  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/useBoardStyle.ts +27 -0
  56. package/src/components/Board/hooks/useFloatingActions.ts +22 -0
  57. package/src/components/Board/hooks/useFloatingFocus.ts +10 -0
  58. package/src/components/Board/hooks/useFloatingInputPrompt.ts +19 -0
  59. package/src/components/Board/hooks/useGrid.ts +2 -1
  60. package/src/components/NavButtons/NavButtons.tsx +2 -2
  61. package/src/components/Rack/Rack.module.scss +6 -6
  62. package/src/components/Rack/Rack.tsx +98 -23
  63. package/src/components/Rack/components/InputPrompt/InputPrompt.module.scss +22 -0
  64. package/src/components/Rack/components/InputPrompt/InputPrompt.tsx +89 -0
  65. package/src/components/Rack/components/InputPrompt/index.ts +1 -0
  66. package/src/components/Rack/components/RackTile/RackTile.module.scss +11 -0
  67. package/src/components/Rack/{RackTile.tsx → components/RackTile/RackTile.tsx} +47 -7
  68. package/src/components/Rack/components/RackTile/index.ts +1 -0
  69. package/src/components/Rack/components/index.ts +2 -0
  70. package/src/components/Radio/Radio.module.scss +0 -8
  71. package/src/components/Solver/Solver.module.scss +0 -20
  72. package/src/components/Solver/Solver.tsx +2 -4
  73. package/src/components/Solver/components/ResultCandidatePicker/ResultCandidatePicker.tsx +2 -10
  74. package/src/components/Solver/components/index.ts +0 -1
  75. package/src/components/Tile/Tile.module.scss +1 -0
  76. package/src/components/Tile/Tile.tsx +8 -6
  77. package/src/components/Tile/TilePure.tsx +8 -0
  78. package/src/hooks/useAppLayout.ts +3 -1
  79. package/src/hooks/useLocalStorage.ts +8 -0
  80. package/src/i18n/de.json +6 -1
  81. package/src/i18n/en.json +6 -1
  82. package/src/i18n/es.json +6 -1
  83. package/src/i18n/fa.json +6 -1
  84. package/src/i18n/fr.json +6 -1
  85. package/src/i18n/pl.json +6 -1
  86. package/src/icons/Keyboard.svg +4 -3
  87. package/src/icons/KeyboardFill.svg +4 -0
  88. package/src/icons/index.ts +1 -0
  89. package/src/lib/extractCharacters.test.ts +26 -0
  90. package/src/lib/extractCharacters.ts +11 -9
  91. package/src/lib/extractCharactersByCase.test.ts +31 -0
  92. package/src/lib/extractCharactersByCase.ts +31 -0
  93. package/src/lib/index.ts +3 -1
  94. package/src/lib/isUpperCase.ts +7 -0
  95. package/src/modals/SettingsModal/SettingsModal.tsx +5 -1
  96. package/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.module.scss +12 -0
  97. package/src/modals/SettingsModal/components/InputModeSetting/InputModeSetting.tsx +55 -0
  98. package/src/modals/SettingsModal/components/InputModeSetting/index.ts +1 -0
  99. package/src/modals/SettingsModal/components/InputModeSetting/lib.ts +13 -0
  100. package/src/modals/SettingsModal/components/InputModeSetting/types.ts +7 -0
  101. package/src/modals/SettingsModal/components/index.ts +1 -0
  102. package/src/state/localStorage.ts +10 -1
  103. package/src/state/selectors.ts +2 -0
  104. package/src/state/slices/settingsInitialState.ts +4 -1
  105. package/src/state/slices/settingsSlice.ts +6 -1
  106. package/src/styles/mixins.scss +1 -0
  107. package/src/types/index.ts +7 -0
  108. package/.next/static/5ttGCAW8jcIKxpR8om9fK/_buildManifest.js +0 -1
  109. package/.next/static/chunks/pages/_app-76a8840b6244d5a2.js +0 -28
  110. package/.next/static/chunks/pages/index-6894f40e6cac9243.js +0 -1
  111. package/.next/static/css/af871fef886ef5b7.css +0 -2
  112. package/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.module.scss +0 -7
  113. package/src/components/Solver/components/FloatingSolveButton/FloatingSolveButton.tsx +0 -53
  114. package/src/components/Solver/components/FloatingSolveButton/index.ts +0 -1
  115. /package/.next/static/{5ttGCAW8jcIKxpR8om9fK → 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__(20208);
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
1642
1667
  ]);
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));
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
1687
+ ]);
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__(20208);
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__(20208);
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);
@@ -2241,6 +2562,148 @@ __webpack_async_result__();
2241
2562
 
2242
2563
  /***/ }),
2243
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
+
2244
2707
  /***/ 27070:
2245
2708
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
2246
2709
 
@@ -2258,7 +2721,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
2258
2721
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
2259
2722
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
2260
2723
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(36743);
2261
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(20208);
2724
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(18954);
2262
2725
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83067);
2263
2726
  /* harmony import */ var _lib__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(41051);
2264
2727
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hooks__WEBPACK_IMPORTED_MODULE_4__, state__WEBPACK_IMPORTED_MODULE_7__]);
@@ -2617,6 +3080,7 @@ const useGrid = (rows)=>{
2617
3080
  inputRefs
2618
3081
  },
2619
3082
  {
3083
+ insertValue,
2620
3084
  onChange,
2621
3085
  onDirectionToggle,
2622
3086
  onFocus,
@@ -2838,8 +3302,8 @@ __webpack_async_result__();
2838
3302
  var jsx_runtime_ = __webpack_require__(20997);
2839
3303
  // EXTERNAL MODULE: external "classnames"
2840
3304
  var external_classnames_ = __webpack_require__(59003);
2841
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
2842
- var icons = __webpack_require__(58966);
3305
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
3306
+ var icons = __webpack_require__(3186);
2843
3307
  ;// CONCATENATED MODULE: ./src/components/Checkbox/Checkbox.tsx
2844
3308
 
2845
3309
 
@@ -3473,7 +3937,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3473
3937
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
3474
3938
  /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(19931);
3475
3939
  /* harmony import */ var react_modal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_modal__WEBPACK_IMPORTED_MODULE_3__);
3476
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
3940
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
3477
3941
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64534);
3478
3942
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
3479
3943
  /* harmony import */ var _IconButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(95975);
@@ -3648,7 +4112,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
3648
4112
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
3649
4113
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
3650
4114
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75704);
3651
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
4115
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
3652
4116
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(64534);
3653
4117
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
3654
4118
  /* harmony import */ var _IconButton__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(95975);
@@ -3763,7 +4227,7 @@ const NavButtons = ({ onClear , onShowKeyMap , onShowMenu , onShowRemainingTiles
3763
4227
  showKeyMap && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_IconButton__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
3764
4228
  "aria-label": translate("keyMap"),
3765
4229
  className: (_NavButtons_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
3766
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .Keyboard */ .N1,
4230
+ Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .KeyboardFill */ .KD,
3767
4231
  tooltip: translate("keyMap"),
3768
4232
  onClick: onShowKeyMap
3769
4233
  }),
@@ -3816,8 +4280,8 @@ __webpack_require__.d(__webpack_exports__, {
3816
4280
 
3817
4281
  // EXTERNAL MODULE: external "react/jsx-runtime"
3818
4282
  var jsx_runtime_ = __webpack_require__(20997);
3819
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
3820
- var icons = __webpack_require__(58966);
4283
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
4284
+ var icons = __webpack_require__(3186);
3821
4285
  // EXTERNAL MODULE: ./src/components/PlainTiles/index.ts + 9 modules
3822
4286
  var PlainTiles = __webpack_require__(83601);
3823
4287
  // EXTERNAL MODULE: ./src/components/NotFound/NotFound.module.scss
@@ -4129,20 +4593,27 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4129
4593
  /* harmony export */ });
4130
4594
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
4131
4595
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4132
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
4133
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
4134
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4135
- /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4136
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4137
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4138
- /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(36743);
4139
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20208);
4140
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
4141
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(52404);
4142
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__);
4143
- /* harmony import */ var _RackTile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(92810);
4144
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _RackTile__WEBPACK_IMPORTED_MODULE_7__]);
4145
- ([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
+
4146
4617
 
4147
4618
 
4148
4619
 
@@ -4153,23 +4624,38 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
4153
4624
 
4154
4625
 
4155
4626
  const Rack = ({ className , tileSize })=>{
4156
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
4157
- const config = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectConfig */ .$o);
4158
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
4159
- const rack = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectRack */ .QB);
4160
- const resultCandidateTiles = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectResultCandidateTiles */ .z$);
4161
- 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), [
4162
4635
  rack,
4163
4636
  resultCandidateTiles
4164
4637
  ]);
4165
4638
  const tilesCount = tiles.length;
4166
- 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)()), [
4167
4640
  tilesCount
4168
4641
  ]);
4169
- const activeIndexRef = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();
4170
- const { direction } = i18n__WEBPACK_IMPORTED_MODULE_4__/* .LOCALE_FEATURES */ .q0[locale];
4171
- const { tileFontSize } = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .getTileSizes */ .vc)(tileSize);
4172
- 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)=>{
4173
4659
  const nextActiveIndex = Math.min(Math.max((activeIndexRef.current || 0) + offset, 0), tilesCount - 1);
4174
4660
  const tileRef = tilesRefs[nextActiveIndex].current;
4175
4661
  if (tileRef) {
@@ -4181,24 +4667,24 @@ const Rack = ({ className , tileSize })=>{
4181
4667
  tilesCount,
4182
4668
  tilesRefs
4183
4669
  ]);
4184
- const handleChange = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((event)=>{
4185
- const value = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .extractInputValue */ .WM)(event.target);
4186
- 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) : [];
4187
4673
  changeActiveIndex(value ? characters.length : -1);
4188
4674
  }, [
4189
4675
  changeActiveIndex,
4190
4676
  config
4191
4677
  ]);
4192
- const handlePaste = (0,react__WEBPACK_IMPORTED_MODULE_2__.useCallback)((event)=>{
4678
+ const handlePaste = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4193
4679
  const index = activeIndexRef.current;
4194
4680
  if (typeof index === "undefined") {
4195
4681
  return;
4196
4682
  }
4197
4683
  event.preventDefault();
4198
4684
  const value = event.clipboardData.getData("text/plain").toLocaleLowerCase();
4199
- 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) : [];
4200
4686
  changeActiveIndex(value ? characters.length : -1);
4201
- 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({
4202
4688
  characters,
4203
4689
  index
4204
4690
  }));
@@ -4207,8 +4693,20 @@ const Rack = ({ className , tileSize })=>{
4207
4693
  config,
4208
4694
  dispatch
4209
4695
  ]);
4210
- const handleKeyDown = (0,react__WEBPACK_IMPORTED_MODULE_2__.useMemo)(()=>{
4211
- 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)({
4212
4710
  onArrowLeft: (event)=>{
4213
4711
  event.preventDefault();
4214
4712
  changeActiveIndex(direction === "ltr" ? -1 : 1);
@@ -4227,7 +4725,7 @@ const Rack = ({ className , tileSize })=>{
4227
4725
  return;
4228
4726
  }
4229
4727
  event.preventDefault();
4230
- 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({
4231
4729
  characters: [
4232
4730
  null
4233
4731
  ],
@@ -4236,7 +4734,7 @@ const Rack = ({ className , tileSize })=>{
4236
4734
  changeActiveIndex(1);
4237
4735
  },
4238
4736
  onKeyDown: (event)=>{
4239
- if ((0,lib__WEBPACK_IMPORTED_MODULE_5__/* .isCtrl */ .yl)(event) && config.isTwoCharacterTilePrefix(event.key)) {
4737
+ if ((0,lib__WEBPACK_IMPORTED_MODULE_8__/* .isCtrl */ .yl)(event) && config.isTwoCharacterTilePrefix(event.key)) {
4240
4738
  changeActiveIndex(1);
4241
4739
  } else if (event.currentTarget.value === event.key) {
4242
4740
  // change event did not fire because the same character was typed over the current one
@@ -4248,40 +4746,180 @@ const Rack = ({ className , tileSize })=>{
4248
4746
  }
4249
4747
  });
4250
4748
  }, [
4251
- 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
+ }, [
4252
4859
  config,
4253
- direction
4860
+ value,
4861
+ onSubmit
4254
4862
  ]);
4255
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
4256
- 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,
4257
4874
  style: {
4258
- fontSize: tileFontSize
4875
+ width: rackWidth,
4876
+ height: rackHeight,
4877
+ ...style
4259
4878
  },
4260
- onPaste: handlePaste,
4261
- children: tiles.map(({ character , tile }, index)=>/*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_RackTile__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
4262
- activeIndexRef: activeIndexRef,
4263
- character: character,
4264
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()({
4265
- [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().sharpLeft)]: index !== 0,
4266
- [(_Rack_module_scss__WEBPACK_IMPORTED_MODULE_8___default().sharpRight)]: index !== tiles.length - 1
4267
- }),
4268
- index: index,
4269
- inputRef: tilesRefs[index],
4270
- size: tileSize,
4271
- tile: tile,
4272
- onChange: handleChange,
4273
- onKeyDown: handleKeyDown
4274
- }, 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
+ })
4275
4893
  });
4276
- };
4277
- /* 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
+
4278
4916
 
4279
4917
  __webpack_async_result__();
4280
4918
  } catch(e) { __webpack_async_result__(e); } });
4281
4919
 
4282
4920
  /***/ }),
4283
4921
 
4284
- /***/ 92810:
4922
+ /***/ 78749:
4285
4923
  /***/ ((module, __webpack_exports__, __webpack_require__) => {
4286
4924
 
4287
4925
  "use strict";
@@ -4298,11 +4936,11 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4298
4936
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
4299
4937
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6022);
4300
4938
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_4__);
4301
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20208);
4939
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
4302
4940
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83067);
4303
4941
  /* harmony import */ var _Tile__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(96815);
4304
- /* harmony import */ var _Rack_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(52404);
4305
- /* 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__);
4306
4944
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__]);
4307
4945
  ([state__WEBPACK_IMPORTED_MODULE_6__, _Tile__WEBPACK_IMPORTED_MODULE_7__] = __webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__);
4308
4946
 
@@ -4314,17 +4952,26 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([stat
4314
4952
 
4315
4953
 
4316
4954
 
4317
- const RackTile = ({ activeIndexRef , character , className , index , inputRef , size , tile , onChange , onKeyDown })=>{
4955
+ const RackTile = ({ activeIndexRef , character , className , index , inputRef , size , tile , onChange , onKeyDown , onFocus })=>{
4318
4956
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_4__.useDispatch)();
4319
4957
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTranslate */ .qM)();
4320
4958
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_6__/* .selectLocale */ .fN);
4321
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);
4322
4961
  const points = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterPoints */ .Or)(state, character));
4323
4962
  const isValid = (0,state__WEBPACK_IMPORTED_MODULE_6__/* .useTypedSelector */ .ix)((state)=>(0,state__WEBPACK_IMPORTED_MODULE_6__/* .selectCharacterIsValid */ .AN)(state, character));
4324
- 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
+ }
4325
4969
  activeIndexRef.current = index;
4326
4970
  }, [
4327
- index
4971
+ activeIndexRef,
4972
+ index,
4973
+ inputMode,
4974
+ onFocus
4328
4975
  ]);
4329
4976
  const handleChange = (0,react__WEBPACK_IMPORTED_MODULE_3__.useCallback)((event)=>{
4330
4977
  event.preventDefault();
@@ -4370,12 +5017,30 @@ const RackTile = ({ activeIndexRef , character , className , index , inputRef ,
4370
5017
  index,
4371
5018
  onKeyDown
4372
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
+ ]);
4373
5038
  return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Tile__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
4374
5039
  "aria-label": translate("rack.tile.location", {
4375
5040
  index: (index + 1).toLocaleString(locale)
4376
5041
  }),
4377
- autoFocus: index === 0,
4378
- 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),
4379
5044
  character: character === null ? undefined : character,
4380
5045
  highlighted: tile !== null,
4381
5046
  inputRef: inputRef,
@@ -4388,11 +5053,52 @@ const RackTile = ({ activeIndexRef , character , className , index , inputRef ,
4388
5053
  tabIndex: index === 0 ? undefined : -1,
4389
5054
  onChange: handleChange,
4390
5055
  onFocus: handleFocus,
4391
- onKeyDown: handleKeyDown
5056
+ onKeyDown: handleKeyDown,
5057
+ onMouseDown: handleMouseDown,
5058
+ onTouchStart: handleTouchStart
4392
5059
  }, index);
4393
5060
  };
4394
5061
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (RackTile);
4395
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
+
4396
5102
  __webpack_async_result__();
4397
5103
  } catch(e) { __webpack_async_result__(e); } });
4398
5104
 
@@ -4526,7 +5232,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4526
5232
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4527
5233
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
4528
5234
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
4529
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
5235
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(3186);
4530
5236
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
4531
5237
  /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1966);
4532
5238
  /* harmony import */ var _Tooltip__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(59004);
@@ -4603,7 +5309,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4603
5309
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
4604
5310
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
4605
5311
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(36743);
4606
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20208);
5312
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
4607
5313
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
4608
5314
  /* harmony import */ var types__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(1966);
4609
5315
  /* harmony import */ var _Cell__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(29287);
@@ -4885,7 +5591,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
4885
5591
  /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
4886
5592
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6022);
4887
5593
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_1__);
4888
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(58966);
5594
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3186);
4889
5595
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(83067);
4890
5596
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83900);
4891
5597
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_3__, _Button__WEBPACK_IMPORTED_MODULE_4__]);
@@ -5077,7 +5783,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5077
5783
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
5078
5784
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(6022);
5079
5785
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_3__);
5080
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20208);
5786
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
5081
5787
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5082
5788
  /* harmony import */ var _ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(60066);
5083
5789
  /* harmony import */ var _ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_ResultsInput_module_scss__WEBPACK_IMPORTED_MODULE_6__);
@@ -5222,7 +5928,7 @@ const Solver = ({ className , onShowResults })=>{
5222
5928
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_3__.useDispatch)();
5223
5929
  const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5224
5930
  const isTouchDevice = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useIsTouchDevice */ .YQ)();
5225
- 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)();
5226
5932
  const error = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectSolveError */ .Rn);
5227
5933
  const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5228
5934
  const resultCandidate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectResultCandidate */ .Xk);
@@ -5345,7 +6051,7 @@ const Solver = ({ className , onShowResults })=>{
5345
6051
  maxWidth: maxControlsWidth
5346
6052
  },
5347
6053
  children: [
5348
- /*#__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, {
5349
6055
  onResultClick: onShowResults
5350
6056
  }),
5351
6057
  error && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Alert__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
@@ -5362,95 +6068,12 @@ const Solver = ({ className , onShowResults })=>{
5362
6068
  })
5363
6069
  ]
5364
6070
  })
5365
- }),
5366
- showFloatingSolveButton && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_components__WEBPACK_IMPORTED_MODULE_12__/* .FloatingSolveButton */ .DY, {
5367
- className: (_Solver_module_scss__WEBPACK_IMPORTED_MODULE_13___default().solve),
5368
- onClick: handleSubmit
5369
6071
  })
5370
6072
  ]
5371
6073
  });
5372
6074
  };
5373
6075
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_2__.memo)(Solver));
5374
6076
 
5375
- __webpack_async_result__();
5376
- } catch(e) { __webpack_async_result__(e); } });
5377
-
5378
- /***/ }),
5379
-
5380
- /***/ 90919:
5381
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5382
-
5383
- "use strict";
5384
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5385
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5386
- /* harmony export */ "Z": () => (__WEBPACK_DEFAULT_EXPORT__)
5387
- /* harmony export */ });
5388
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(20997);
5389
- /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__);
5390
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(59003);
5391
- /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5392
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5393
- /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5394
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
5395
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20208);
5396
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5397
- /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83900);
5398
- /* harmony import */ var _Spinner__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33538);
5399
- /* harmony import */ var _FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(10857);
5400
- /* harmony import */ var _FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(_FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8__);
5401
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([state__WEBPACK_IMPORTED_MODULE_5__, _Button__WEBPACK_IMPORTED_MODULE_6__, _Spinner__WEBPACK_IMPORTED_MODULE_7__]);
5402
- ([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__);
5403
-
5404
-
5405
-
5406
-
5407
-
5408
-
5409
-
5410
-
5411
-
5412
- const FloatingSolveButton = ({ className , onClick =lib__WEBPACK_IMPORTED_MODULE_4__/* .noop */ .ZT })=>{
5413
- const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
5414
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5415
- const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectIsLoading */ .xU);
5416
- const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5417
- const rack = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectRack */ .QB);
5418
- const hasTiles = rack.some((tile)=>tile !== null);
5419
- const handleClick = (event)=>{
5420
- dispatch(state__WEBPACK_IMPORTED_MODULE_5__/* .solveSlice.actions.submit */ .TP.actions.submit());
5421
- onClick(event);
5422
- };
5423
- return /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Button__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, {
5424
- "aria-label": translate("results.solve"),
5425
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_FloatingSolveButton_module_scss__WEBPACK_IMPORTED_MODULE_8___default().floatingSolveButton), className),
5426
- disabled: isLoading || !isOutdated || !hasTiles,
5427
- Icon: isLoading ? _Spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z : icons__WEBPACK_IMPORTED_MODULE_3__/* .Search */ .HN,
5428
- tooltip: translate("results.solve"),
5429
- type: "submit",
5430
- variant: "primary",
5431
- onClick: handleClick
5432
- });
5433
- };
5434
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (FloatingSolveButton);
5435
-
5436
- __webpack_async_result__();
5437
- } catch(e) { __webpack_async_result__(e); } });
5438
-
5439
- /***/ }),
5440
-
5441
- /***/ 71832:
5442
- /***/ ((module, __webpack_exports__, __webpack_require__) => {
5443
-
5444
- "use strict";
5445
- __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5446
- /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5447
- /* harmony export */ "Z": () => (/* reexport safe */ _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__.Z)
5448
- /* harmony export */ });
5449
- /* harmony import */ var _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(90919);
5450
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__]);
5451
- _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = (__webpack_async_dependencies__.then ? (await __webpack_async_dependencies__)() : __webpack_async_dependencies__)[0];
5452
-
5453
-
5454
6077
  __webpack_async_result__();
5455
6078
  } catch(e) { __webpack_async_result__(e); } });
5456
6079
 
@@ -5470,7 +6093,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5470
6093
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5471
6094
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5472
6095
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5473
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
6096
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
5474
6097
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(83067);
5475
6098
  /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83900);
5476
6099
  /* harmony import */ var _InsertButton_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(21481);
@@ -5544,17 +6167,15 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5544
6167
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5545
6168
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6022);
5546
6169
  /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_2__);
5547
- /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(75704);
5548
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(58966);
5549
- /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(83067);
5550
- /* harmony import */ var _Button__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(83900);
5551
- /* harmony import */ var _Spinner__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(33538);
5552
- /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(33776);
5553
- /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(72760);
5554
- /* harmony import */ var _ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9__);
5555
- 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__]);
5556
- ([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__);
5557
-
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__);
5558
6179
 
5559
6180
 
5560
6181
 
@@ -5566,58 +6187,57 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([hook
5566
6187
 
5567
6188
  const ResultCandidatePicker = ({ className , onResultClick , ...props })=>{
5568
6189
  const dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_2__.useDispatch)();
5569
- const translate = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTranslate */ .qM)();
5570
- const locale = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectLocale */ .fN);
5571
- const isLoading = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectIsLoading */ .xU);
5572
- const isOutdated = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectAreResultsOutdated */ .Mj);
5573
- const results = (0,state__WEBPACK_IMPORTED_MODULE_5__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_5__/* .selectResults */ .x5);
5574
- 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);
5575
6196
  const index = resultCandidate && results ? results.findIndex((result)=>result.id === resultCandidate.id) : -1;
5576
6197
  const disabled = isOutdated || !resultCandidate;
5577
6198
  const isPreviousDisabled = !results || index <= 0 || disabled;
5578
6199
  const isNextDisabled = !results || index >= results.length - 1 || disabled;
5579
6200
  const bothEnabled = !isPreviousDisabled && !isNextDisabled;
5580
- const { showFloatingSolveButton } = (0,hooks__WEBPACK_IMPORTED_MODULE_3__/* .useAppLayout */ .Ft)();
5581
6201
  const handleNextClick = ()=>{
5582
6202
  if (!isNextDisabled) {
5583
6203
  const nextResult = results[index + 1];
5584
- 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));
5585
6205
  }
5586
6206
  };
5587
6207
  const handlePreviousClick = ()=>{
5588
6208
  if (!isPreviousDisabled) {
5589
6209
  const previousResult = results[index - 1];
5590
- 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));
5591
6211
  }
5592
6212
  };
5593
6213
  return /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5594
- 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),
5595
6215
  ...props,
5596
6216
  children: [
5597
6217
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5598
- className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().buttons), {
5599
- [(_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
5600
6220
  }),
5601
6221
  children: [
5602
- /*#__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, {
5603
6223
  "aria-label": translate("common.previous"),
5604
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().button),
6224
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
5605
6225
  disabled: isPreviousDisabled,
5606
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronLeft */ .s$,
6226
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .ChevronLeft */ .s$,
5607
6227
  onClick: handlePreviousClick
5608
6228
  }),
5609
- /*#__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, {
5610
6230
  "aria-label": translate("common.next"),
5611
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().button),
6231
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().button),
5612
6232
  disabled: isNextDisabled,
5613
- Icon: icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronRight */ ._Q,
6233
+ Icon: icons__WEBPACK_IMPORTED_MODULE_3__/* .ChevronRight */ ._Q,
5614
6234
  onClick: handleNextClick
5615
6235
  })
5616
6236
  ]
5617
6237
  }),
5618
6238
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("button", {
5619
6239
  "aria-label": translate("results"),
5620
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().resultCandidate),
6240
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().resultCandidate),
5621
6241
  disabled: disabled,
5622
6242
  type: "button",
5623
6243
  onClick: onResultClick,
@@ -5625,41 +6245,34 @@ const ResultCandidatePicker = ({ className , onResultClick , ...props })=>{
5625
6245
  resultCandidate && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
5626
6246
  children: [
5627
6247
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5628
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().points),
6248
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().points),
5629
6249
  children: resultCandidate.points.toLocaleString(locale)
5630
6250
  }),
5631
6251
  /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5632
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().word),
6252
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().word),
5633
6253
  children: resultCandidate.word
5634
6254
  })
5635
6255
  ]
5636
6256
  }),
5637
6257
  !resultCandidate && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("div", {
5638
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().word),
6258
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().word),
5639
6259
  children: " "
5640
6260
  }),
5641
6261
  /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", {
5642
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().iconContainer),
6262
+ className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_8___default().iconContainer),
5643
6263
  children: [
5644
- showFloatingSolveButton && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronDown */ ._M, {
5645
- 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)
5646
6266
  }),
5647
- !showFloatingSolveButton && /*#__PURE__*/ (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, {
5648
- children: [
5649
- isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_Spinner__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
5650
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().loading)
5651
- }),
5652
- !isLoading && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(icons__WEBPACK_IMPORTED_MODULE_4__/* .ChevronDown */ ._M, {
5653
- className: (_ResultCandidatePicker_module_scss__WEBPACK_IMPORTED_MODULE_9___default().icon)
5654
- })
5655
- ]
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)
5656
6269
  })
5657
6270
  ]
5658
6271
  })
5659
6272
  ]
5660
6273
  }),
5661
- /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx(_InsertButton__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
5662
- 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)
5663
6276
  })
5664
6277
  ]
5665
6278
  });
@@ -5695,15 +6308,12 @@ __webpack_async_result__();
5695
6308
  "use strict";
5696
6309
  __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __webpack_async_result__) => { try {
5697
6310
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5698
- /* harmony export */ "DY": () => (/* reexport safe */ _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__.Z),
5699
- /* harmony export */ "WI": () => (/* reexport safe */ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__.Z)
6311
+ /* harmony export */ "W": () => (/* reexport safe */ _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_1__.Z)
5700
6312
  /* harmony export */ });
5701
- /* harmony import */ var _FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(71832);
5702
- /* harmony import */ var _InsertButton__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(33776);
5703
- /* harmony import */ var _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(45100);
5704
- var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_FloatingSolveButton__WEBPACK_IMPORTED_MODULE_0__, _InsertButton__WEBPACK_IMPORTED_MODULE_1__, _ResultCandidatePicker__WEBPACK_IMPORTED_MODULE_2__]);
5705
- ([_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__);
5706
-
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__);
5707
6317
 
5708
6318
 
5709
6319
 
@@ -5800,7 +6410,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
5800
6410
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
5801
6411
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
5802
6412
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
5803
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20208);
6413
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
5804
6414
  /* harmony import */ var parameters__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(64534);
5805
6415
  /* harmony import */ var state__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(83067);
5806
6416
  /* harmony import */ var _TilePure__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(83147);
@@ -5815,7 +6425,7 @@ var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_flo
5815
6425
 
5816
6426
 
5817
6427
 
5818
- 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 })=>{
5819
6429
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_7__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_7__/* .selectLocale */ .fN);
5820
6430
  const { animateTile , showTilePoints } = (0,hooks__WEBPACK_IMPORTED_MODULE_4__/* .useAppLayout */ .Ft)();
5821
6431
  const { pointsFontSize , tileSize } = (0,lib__WEBPACK_IMPORTED_MODULE_5__/* .getTileSizes */ .vc)(size);
@@ -5846,14 +6456,6 @@ const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character =""
5846
6456
  }, [
5847
6457
  onKeyDown
5848
6458
  ]);
5849
- (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(()=>{
5850
- if (autoFocus && ref.current) {
5851
- ref.current.focus();
5852
- }
5853
- }, [
5854
- autoFocus,
5855
- ref
5856
- ]);
5857
6459
  (0,react__WEBPACK_IMPORTED_MODULE_3__.useEffect)(()=>{
5858
6460
  if (!ref.current?.parentElement || !character || !animateTile) {
5859
6461
  return;
@@ -5887,7 +6489,9 @@ const Tile = ({ "aria-label": ariaLabel , autoFocus , className , character =""
5887
6489
  tabIndex: tabIndex,
5888
6490
  onChange: onChange,
5889
6491
  onFocus: onFocus,
5890
- onKeyDown: handleKeyDown
6492
+ onKeyDown: handleKeyDown,
6493
+ onMouseDown: onMouseDown,
6494
+ onTouchStart: onTouchStart
5891
6495
  });
5892
6496
  };
5893
6497
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Tile);
@@ -5910,7 +6514,7 @@ __webpack_async_result__();
5910
6514
  /* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
5911
6515
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(16689);
5912
6516
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
5913
- /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58966);
6517
+ /* harmony import */ var icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(3186);
5914
6518
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(10312);
5915
6519
  /* harmony import */ var _Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4__);
5916
6520
 
@@ -5918,7 +6522,7 @@ __webpack_async_result__();
5918
6522
 
5919
6523
 
5920
6524
 
5921
- 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", {
5922
6526
  className: classnames__WEBPACK_IMPORTED_MODULE_1___default()((_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().tile), className, {
5923
6527
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().blank)]: isBlank,
5924
6528
  [(_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().empty)]: !character,
@@ -5948,7 +6552,9 @@ const TilePure = ({ "aria-label": ariaLabel , autoFocus , canShowPoints , charac
5948
6552
  value: character || "",
5949
6553
  onChange: onChange,
5950
6554
  onFocus: onFocus,
5951
- onKeyDown: onKeyDown
6555
+ onKeyDown: onKeyDown,
6556
+ onMouseDown: onMouseDown,
6557
+ onTouchStart: onTouchStart
5952
6558
  }),
5953
6559
  canShowPoints && /*#__PURE__*/ react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx("span", {
5954
6560
  className: (_Tile_module_scss__WEBPACK_IMPORTED_MODULE_4___default().points),
@@ -6017,7 +6623,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
6017
6623
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(16689);
6018
6624
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);
6019
6625
  /* harmony import */ var hooks__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(75704);
6020
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20208);
6626
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
6021
6627
  /* harmony import */ var _Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(53229);
6022
6628
  /* harmony import */ var _Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_Tooltip_module_scss__WEBPACK_IMPORTED_MODULE_6__);
6023
6629
  var __webpack_async_dependencies__ = __webpack_handle_async_dependencies__([_floating_ui_react__WEBPACK_IMPORTED_MODULE_1__, hooks__WEBPACK_IMPORTED_MODULE_4__]);
@@ -6314,6 +6920,7 @@ const useAppLayout = ()=>{
6314
6920
  const dictionaryHeight = showResultsInModal ? parameters__WEBPACK_IMPORTED_MODULE_0__/* .DICTIONARY_HEIGHT_MOBILE */ .Rh : parameters__WEBPACK_IMPORTED_MODULE_0__/* .DICTIONARY_HEIGHT */ .n6;
6315
6921
  const modalWidth = isLessThanS ? viewportWidth : parameters__WEBPACK_IMPORTED_MODULE_0__/* .MODAL_WIDTH */ .iF;
6316
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;
6317
6924
  return {
6318
6925
  actionsWidth: 2 * parameters__WEBPACK_IMPORTED_MODULE_0__/* .BUTTON_HEIGHT */ .FZ - parameters__WEBPACK_IMPORTED_MODULE_0__/* .BORDER_WIDTH */ .YF,
6319
6926
  animateTile: !isLessThanXs,
@@ -6324,10 +6931,11 @@ const useAppLayout = ()=>{
6324
6931
  logoHeight,
6325
6932
  logoWidth: logoHeight * parameters__WEBPACK_IMPORTED_MODULE_0__/* .LOGO_ASPECT_RATIO */ .pc,
6326
6933
  maxControlsWidth,
6934
+ rackHeight: tileSize,
6935
+ rackWidth,
6327
6936
  resultsHeight,
6328
6937
  resultsWidth: isLessThanL ? modalWidth - 2 * componentsSpacing : parameters__WEBPACK_IMPORTED_MODULE_0__/* .SOLVER_COLUMN_WIDTH */ .pt,
6329
6938
  showCompactControls: !showColumn,
6330
- showFloatingSolveButton: isTouchDevice,
6331
6939
  showKeyMap: !isTouchDevice,
6332
6940
  showResultsInModal,
6333
6941
  showShortNav: isLessThanS,
@@ -6351,7 +6959,7 @@ __webpack_async_result__();
6351
6959
  /* harmony export */ });
6352
6960
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
6353
6961
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6354
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20208);
6962
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18954);
6355
6963
 
6356
6964
 
6357
6965
  const useDirection = (direction)=>{
@@ -6416,7 +7024,7 @@ const useIsTouchDevice = ()=>{
6416
7024
  /* harmony export */ });
6417
7025
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(16689);
6418
7026
  /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
6419
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(20208);
7027
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(18954);
6420
7028
 
6421
7029
 
6422
7030
  const useLanguage = (language)=>{
@@ -6478,6 +7086,7 @@ const useLocalStorage = ()=>{
6478
7086
  const autoGroupTiles = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectAutoGroupTiles */ .uz);
6479
7087
  const board = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectBoard */ .ZO);
6480
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);
6481
7090
  const locale = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectLocale */ .fN);
6482
7091
  const rack = (0,state__WEBPACK_IMPORTED_MODULE_1__/* .useTypedSelector */ .ix)(state__WEBPACK_IMPORTED_MODULE_1__/* .selectRack */ .QB);
6483
7092
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
@@ -6501,6 +7110,13 @@ const useLocalStorage = ()=>{
6501
7110
  }, [
6502
7111
  configId
6503
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
+ ]);
6504
7120
  (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(()=>{
6505
7121
  if (locale) {
6506
7122
  state__WEBPACK_IMPORTED_MODULE_1__/* .localStorage.setLocale */ .Xb.setLocale(locale);
@@ -6655,7 +7271,7 @@ const useOnWindowResize = (onResize)=>{
6655
7271
  /* harmony import */ var react_dom_client__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_dom_client__WEBPACK_IMPORTED_MODULE_2__);
6656
7272
  /* harmony import */ var react_portal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(63938);
6657
7273
  /* harmony import */ var react_portal__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_portal__WEBPACK_IMPORTED_MODULE_3__);
6658
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(20208);
7274
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(18954);
6659
7275
 
6660
7276
 
6661
7277
 
@@ -6749,8 +7365,8 @@ __webpack_require__.d(__webpack_exports__, {
6749
7365
  var build = __webpack_require__(7618);
6750
7366
  // EXTERNAL MODULE: ../types/build/index.js
6751
7367
  var types_build = __webpack_require__(34046);
6752
- // EXTERNAL MODULE: ./src/icons/index.ts + 41 modules
6753
- var icons = __webpack_require__(58966);
7368
+ // EXTERNAL MODULE: ./src/icons/index.ts + 42 modules
7369
+ var icons = __webpack_require__(3186);
6754
7370
  // EXTERNAL MODULE: ./src/i18n/i18n.module.scss
6755
7371
  var i18n_module = __webpack_require__(43070);
6756
7372
  var i18n_module_default = /*#__PURE__*/__webpack_require__.n(i18n_module);
@@ -6863,17 +7479,17 @@ const LOCALE_FLAGS = {
6863
7479
  };
6864
7480
 
6865
7481
  ;// CONCATENATED MODULE: ./src/i18n/de.json
6866
- 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"}');
6867
7483
  ;// CONCATENATED MODULE: ./src/i18n/en.json
6868
- 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"}');
6869
7485
  ;// CONCATENATED MODULE: ./src/i18n/es.json
6870
- 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"}');
6871
7487
  ;// CONCATENATED MODULE: ./src/i18n/fa.json
6872
- 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":"معتبر"}');
6873
7489
  ;// CONCATENATED MODULE: ./src/i18n/fr.json
6874
- 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"}');
6875
7491
  ;// CONCATENATED MODULE: ./src/i18n/pl.json
6876
- 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"}');
6877
7493
  ;// CONCATENATED MODULE: ./src/i18n/i18n.ts
6878
7494
 
6879
7495
 
@@ -6900,7 +7516,7 @@ const i18n = {
6900
7516
 
6901
7517
  /***/ }),
6902
7518
 
6903
- /***/ 58966:
7519
+ /***/ 3186:
6904
7520
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
6905
7521
 
6906
7522
  "use strict";
@@ -6938,6 +7554,7 @@ __webpack_require__.d(__webpack_exports__, {
6938
7554
  "Ey": () => (/* reexport */ Github),
6939
7555
  "UT": () => (/* reexport */ InfoCircleFill),
6940
7556
  "N1": () => (/* reexport */ Keyboard),
7557
+ "KD": () => (/* reexport */ KeyboardFill),
6941
7558
  "aV": () => (/* reexport */ List),
6942
7559
  "xy": () => (/* reexport */ Sack),
6943
7560
  "HN": () => (/* reexport */ Search),
@@ -6958,11 +7575,11 @@ function _extends() { _extends = Object.assign ? Object.assign.bind() : function
6958
7575
 
6959
7576
  var SvgArrowDown = function SvgArrowDown(props) {
6960
7577
  return /*#__PURE__*/external_react_.createElement("svg", _extends({
6961
- viewBox: "0 0 16 16",
6962
- xmlns: "http://www.w3.org/2000/svg"
7578
+ xmlns: "http://www.w3.org/2000/svg",
7579
+ viewBox: "0 0 16 16"
6963
7580
  }, props), _path || (_path = /*#__PURE__*/external_react_.createElement("path", {
6964
- 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",
6965
- 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"
6966
7583
  })));
6967
7584
  };
6968
7585
  /* harmony default export */ const ArrowDown = (SvgArrowDown);
@@ -6972,11 +7589,11 @@ function ArrowLeft_extends() { ArrowLeft_extends = Object.assign ? Object.assign
6972
7589
 
6973
7590
  var SvgArrowLeft = function SvgArrowLeft(props) {
6974
7591
  return /*#__PURE__*/external_react_.createElement("svg", ArrowLeft_extends({
6975
- viewBox: "0 0 16 16",
6976
- xmlns: "http://www.w3.org/2000/svg"
7592
+ xmlns: "http://www.w3.org/2000/svg",
7593
+ viewBox: "0 0 16 16"
6977
7594
  }, props), ArrowLeft_path || (ArrowLeft_path = /*#__PURE__*/external_react_.createElement("path", {
6978
- 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",
6979
- 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"
6980
7597
  })));
6981
7598
  };
6982
7599
  /* harmony default export */ const ArrowLeft = (SvgArrowLeft);
@@ -6986,11 +7603,11 @@ function ArrowRight_extends() { ArrowRight_extends = Object.assign ? Object.assi
6986
7603
 
6987
7604
  var SvgArrowRight = function SvgArrowRight(props) {
6988
7605
  return /*#__PURE__*/external_react_.createElement("svg", ArrowRight_extends({
6989
- viewBox: "0 0 16 16",
6990
- xmlns: "http://www.w3.org/2000/svg"
7606
+ xmlns: "http://www.w3.org/2000/svg",
7607
+ viewBox: "0 0 16 16"
6991
7608
  }, props), ArrowRight_path || (ArrowRight_path = /*#__PURE__*/external_react_.createElement("path", {
6992
- 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",
6993
- 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"
6994
7611
  })));
6995
7612
  };
6996
7613
  /* harmony default export */ const ArrowRight = (SvgArrowRight);
@@ -7000,11 +7617,11 @@ function ArrowUp_extends() { ArrowUp_extends = Object.assign ? Object.assign.bin
7000
7617
 
7001
7618
  var SvgArrowUp = function SvgArrowUp(props) {
7002
7619
  return /*#__PURE__*/external_react_.createElement("svg", ArrowUp_extends({
7003
- viewBox: "0 0 16 16",
7004
- xmlns: "http://www.w3.org/2000/svg"
7620
+ xmlns: "http://www.w3.org/2000/svg",
7621
+ viewBox: "0 0 16 16"
7005
7622
  }, props), ArrowUp_path || (ArrowUp_path = /*#__PURE__*/external_react_.createElement("path", {
7006
- 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",
7007
- 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"
7008
7625
  })));
7009
7626
  };
7010
7627
  /* harmony default export */ const ArrowUp = (SvgArrowUp);
@@ -7014,11 +7631,11 @@ function BookHalf_extends() { BookHalf_extends = Object.assign ? Object.assign.b
7014
7631
 
7015
7632
  var SvgBookHalf = function SvgBookHalf(props) {
7016
7633
  return /*#__PURE__*/external_react_.createElement("svg", BookHalf_extends({
7017
- viewBox: "0 0 16 16",
7018
- xmlns: "http://www.w3.org/2000/svg"
7634
+ xmlns: "http://www.w3.org/2000/svg",
7635
+ viewBox: "0 0 16 16"
7019
7636
  }, props), BookHalf_path || (BookHalf_path = /*#__PURE__*/external_react_.createElement("path", {
7020
- 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",
7021
- 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"
7022
7639
  })));
7023
7640
  };
7024
7641
  /* harmony default export */ const BookHalf = (SvgBookHalf);
@@ -7028,14 +7645,14 @@ function CardChecklist_extends() { CardChecklist_extends = Object.assign ? Objec
7028
7645
 
7029
7646
  var SvgCardChecklist = function SvgCardChecklist(props) {
7030
7647
  return /*#__PURE__*/external_react_.createElement("svg", CardChecklist_extends({
7031
- viewBox: "0 0 16 16",
7032
- xmlns: "http://www.w3.org/2000/svg"
7648
+ xmlns: "http://www.w3.org/2000/svg",
7649
+ viewBox: "0 0 16 16"
7033
7650
  }, props), CardChecklist_path || (CardChecklist_path = /*#__PURE__*/external_react_.createElement("path", {
7034
- 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",
7035
- 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"
7036
7653
  })), _path2 || (_path2 = /*#__PURE__*/external_react_.createElement("path", {
7037
- 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",
7038
- 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"
7039
7656
  })));
7040
7657
  };
7041
7658
  /* harmony default export */ const CardChecklist = (SvgCardChecklist);
@@ -7045,11 +7662,11 @@ function Check_extends() { Check_extends = Object.assign ? Object.assign.bind()
7045
7662
 
7046
7663
  var SvgCheck = function SvgCheck(props) {
7047
7664
  return /*#__PURE__*/external_react_.createElement("svg", Check_extends({
7048
- viewBox: "0 0 16 16",
7049
- xmlns: "http://www.w3.org/2000/svg"
7665
+ xmlns: "http://www.w3.org/2000/svg",
7666
+ viewBox: "0 0 16 16"
7050
7667
  }, props), Check_path || (Check_path = /*#__PURE__*/external_react_.createElement("path", {
7051
- 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",
7052
- 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"
7053
7670
  })));
7054
7671
  };
7055
7672
  /* harmony default export */ const Check = (SvgCheck);
@@ -7059,11 +7676,11 @@ function CheckboxChecked_extends() { CheckboxChecked_extends = Object.assign ? O
7059
7676
 
7060
7677
  var SvgCheckboxChecked = function SvgCheckboxChecked(props) {
7061
7678
  return /*#__PURE__*/React.createElement("svg", CheckboxChecked_extends({
7062
- viewBox: "0 0 16 16",
7063
- xmlns: "http://www.w3.org/2000/svg"
7679
+ xmlns: "http://www.w3.org/2000/svg",
7680
+ viewBox: "0 0 16 16"
7064
7681
  }, props), CheckboxChecked_path || (CheckboxChecked_path = /*#__PURE__*/React.createElement("path", {
7065
- 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",
7066
- 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"
7067
7684
  })));
7068
7685
  };
7069
7686
  /* harmony default export */ const CheckboxChecked = ((/* unused pure expression or super */ null && (SvgCheckboxChecked)));
@@ -7073,11 +7690,11 @@ function CheckboxEmpty_extends() { CheckboxEmpty_extends = Object.assign ? Objec
7073
7690
 
7074
7691
  var SvgCheckboxEmpty = function SvgCheckboxEmpty(props) {
7075
7692
  return /*#__PURE__*/React.createElement("svg", CheckboxEmpty_extends({
7076
- viewBox: "0 0 16 16",
7077
- xmlns: "http://www.w3.org/2000/svg"
7693
+ xmlns: "http://www.w3.org/2000/svg",
7694
+ viewBox: "0 0 16 16"
7078
7695
  }, props), CheckboxEmpty_path || (CheckboxEmpty_path = /*#__PURE__*/React.createElement("path", {
7079
- 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",
7080
- 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"
7081
7698
  })));
7082
7699
  };
7083
7700
  /* harmony default export */ const CheckboxEmpty = ((/* unused pure expression or super */ null && (SvgCheckboxEmpty)));
@@ -7087,11 +7704,11 @@ function ChevronDown_extends() { ChevronDown_extends = Object.assign ? Object.as
7087
7704
 
7088
7705
  var SvgChevronDown = function SvgChevronDown(props) {
7089
7706
  return /*#__PURE__*/external_react_.createElement("svg", ChevronDown_extends({
7090
- viewBox: "0 0 16 16",
7091
- xmlns: "http://www.w3.org/2000/svg"
7707
+ xmlns: "http://www.w3.org/2000/svg",
7708
+ viewBox: "0 0 16 16"
7092
7709
  }, props), ChevronDown_path || (ChevronDown_path = /*#__PURE__*/external_react_.createElement("path", {
7093
- 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",
7094
- 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"
7095
7712
  })));
7096
7713
  };
7097
7714
  /* harmony default export */ const ChevronDown = (SvgChevronDown);
@@ -7101,11 +7718,11 @@ function ChevronLeft_extends() { ChevronLeft_extends = Object.assign ? Object.as
7101
7718
 
7102
7719
  var SvgChevronLeft = function SvgChevronLeft(props) {
7103
7720
  return /*#__PURE__*/external_react_.createElement("svg", ChevronLeft_extends({
7104
- viewBox: "0 0 16 16",
7105
- xmlns: "http://www.w3.org/2000/svg"
7721
+ xmlns: "http://www.w3.org/2000/svg",
7722
+ viewBox: "0 0 16 16"
7106
7723
  }, props), ChevronLeft_path || (ChevronLeft_path = /*#__PURE__*/external_react_.createElement("path", {
7107
- 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",
7108
- 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"
7109
7726
  })));
7110
7727
  };
7111
7728
  /* harmony default export */ const ChevronLeft = (SvgChevronLeft);
@@ -7115,11 +7732,11 @@ function ChevronRight_extends() { ChevronRight_extends = Object.assign ? Object.
7115
7732
 
7116
7733
  var SvgChevronRight = function SvgChevronRight(props) {
7117
7734
  return /*#__PURE__*/external_react_.createElement("svg", ChevronRight_extends({
7118
- viewBox: "0 0 16 16",
7119
- xmlns: "http://www.w3.org/2000/svg"
7735
+ xmlns: "http://www.w3.org/2000/svg",
7736
+ viewBox: "0 0 16 16"
7120
7737
  }, props), ChevronRight_path || (ChevronRight_path = /*#__PURE__*/external_react_.createElement("path", {
7121
- 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",
7122
- 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"
7123
7740
  })));
7124
7741
  };
7125
7742
  /* harmony default export */ const ChevronRight = (SvgChevronRight);
@@ -7129,11 +7746,11 @@ function Cog_extends() { Cog_extends = Object.assign ? Object.assign.bind() : fu
7129
7746
 
7130
7747
  var SvgCog = function SvgCog(props) {
7131
7748
  return /*#__PURE__*/external_react_.createElement("svg", Cog_extends({
7132
- viewBox: "0 0 16 16",
7133
- xmlns: "http://www.w3.org/2000/svg"
7749
+ xmlns: "http://www.w3.org/2000/svg",
7750
+ viewBox: "0 0 16 16"
7134
7751
  }, props), Cog_path || (Cog_path = /*#__PURE__*/external_react_.createElement("path", {
7135
- 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",
7136
- 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"
7137
7754
  })));
7138
7755
  };
7139
7756
  /* harmony default export */ const Cog = (SvgCog);
@@ -7143,11 +7760,11 @@ function Cross_extends() { Cross_extends = Object.assign ? Object.assign.bind()
7143
7760
 
7144
7761
  var SvgCross = function SvgCross(props) {
7145
7762
  return /*#__PURE__*/external_react_.createElement("svg", Cross_extends({
7146
- viewBox: "0 0 16 16",
7147
- xmlns: "http://www.w3.org/2000/svg"
7763
+ xmlns: "http://www.w3.org/2000/svg",
7764
+ viewBox: "0 0 16 16"
7148
7765
  }, props), Cross_path || (Cross_path = /*#__PURE__*/external_react_.createElement("path", {
7149
- 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",
7150
- 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"
7151
7768
  })));
7152
7769
  };
7153
7770
  /* harmony default export */ const Cross = (SvgCross);
@@ -7157,11 +7774,11 @@ function CrossCircleFill_extends() { CrossCircleFill_extends = Object.assign ? O
7157
7774
 
7158
7775
  var SvgCrossCircleFill = function SvgCrossCircleFill(props) {
7159
7776
  return /*#__PURE__*/external_react_.createElement("svg", CrossCircleFill_extends({
7160
- viewBox: "0 0 16 16",
7161
- xmlns: "http://www.w3.org/2000/svg"
7777
+ xmlns: "http://www.w3.org/2000/svg",
7778
+ viewBox: "0 0 16 16"
7162
7779
  }, props), CrossCircleFill_path || (CrossCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7163
- 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",
7164
- 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"
7165
7782
  })));
7166
7783
  };
7167
7784
  /* harmony default export */ const CrossCircleFill = (SvgCrossCircleFill);
@@ -7171,11 +7788,11 @@ function CrossSquareFill_extends() { CrossSquareFill_extends = Object.assign ? O
7171
7788
 
7172
7789
  var SvgCrossSquareFill = function SvgCrossSquareFill(props) {
7173
7790
  return /*#__PURE__*/external_react_.createElement("svg", CrossSquareFill_extends({
7174
- viewBox: "0 0 16 16",
7175
- xmlns: "http://www.w3.org/2000/svg"
7791
+ xmlns: "http://www.w3.org/2000/svg",
7792
+ viewBox: "0 0 16 16"
7176
7793
  }, props), CrossSquareFill_path || (CrossSquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7177
- 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",
7178
- 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"
7179
7796
  })));
7180
7797
  };
7181
7798
  /* harmony default export */ const CrossSquareFill = (SvgCrossSquareFill);
@@ -7185,11 +7802,11 @@ function DashCircleFill_extends() { DashCircleFill_extends = Object.assign ? Obj
7185
7802
 
7186
7803
  var SvgDashCircleFill = function SvgDashCircleFill(props) {
7187
7804
  return /*#__PURE__*/external_react_.createElement("svg", DashCircleFill_extends({
7188
- viewBox: "0 0 16 16",
7189
- xmlns: "http://www.w3.org/2000/svg"
7805
+ xmlns: "http://www.w3.org/2000/svg",
7806
+ viewBox: "0 0 16 16"
7190
7807
  }, props), DashCircleFill_path || (DashCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7191
- 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",
7192
- 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"
7193
7810
  })));
7194
7811
  };
7195
7812
  /* harmony default export */ const DashCircleFill = (SvgDashCircleFill);
@@ -7199,11 +7816,11 @@ function Eraser_extends() { Eraser_extends = Object.assign ? Object.assign.bind(
7199
7816
 
7200
7817
  var SvgEraser = function SvgEraser(props) {
7201
7818
  return /*#__PURE__*/external_react_.createElement("svg", Eraser_extends({
7202
- viewBox: "0 0 16 16",
7203
- xmlns: "http://www.w3.org/2000/svg"
7819
+ xmlns: "http://www.w3.org/2000/svg",
7820
+ viewBox: "0 0 16 16"
7204
7821
  }, props), Eraser_path || (Eraser_path = /*#__PURE__*/external_react_.createElement("path", {
7205
- 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",
7206
- 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"
7207
7824
  })));
7208
7825
  };
7209
7826
  /* harmony default export */ const Eraser = (SvgEraser);
@@ -7213,11 +7830,11 @@ function ExclamationSquareFill_extends() { ExclamationSquareFill_extends = Objec
7213
7830
 
7214
7831
  var SvgExclamationSquareFill = function SvgExclamationSquareFill(props) {
7215
7832
  return /*#__PURE__*/external_react_.createElement("svg", ExclamationSquareFill_extends({
7216
- viewBox: "0 0 16 16",
7217
- xmlns: "http://www.w3.org/2000/svg"
7833
+ xmlns: "http://www.w3.org/2000/svg",
7834
+ viewBox: "0 0 16 16"
7218
7835
  }, props), ExclamationSquareFill_path || (ExclamationSquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7219
- 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",
7220
- 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"
7221
7838
  })));
7222
7839
  };
7223
7840
  /* harmony default export */ const ExclamationSquareFill = (SvgExclamationSquareFill);
@@ -7227,11 +7844,11 @@ function ExclamationTriangleFill_extends() { ExclamationTriangleFill_extends = O
7227
7844
 
7228
7845
  var SvgExclamationTriangleFill = function SvgExclamationTriangleFill(props) {
7229
7846
  return /*#__PURE__*/external_react_.createElement("svg", ExclamationTriangleFill_extends({
7230
- viewBox: "0 0 16 16",
7231
- xmlns: "http://www.w3.org/2000/svg"
7847
+ xmlns: "http://www.w3.org/2000/svg",
7848
+ viewBox: "0 0 16 16"
7232
7849
  }, props), ExclamationTriangleFill_path || (ExclamationTriangleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7233
- 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",
7234
- 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"
7235
7852
  })));
7236
7853
  };
7237
7854
  /* harmony default export */ const ExclamationTriangleFill = (SvgExclamationTriangleFill);
@@ -7241,14 +7858,14 @@ function EyeFill_extends() { EyeFill_extends = Object.assign ? Object.assign.bin
7241
7858
 
7242
7859
  var SvgEyeFill = function SvgEyeFill(props) {
7243
7860
  return /*#__PURE__*/external_react_.createElement("svg", EyeFill_extends({
7244
- viewBox: "0 0 16 16",
7245
- xmlns: "http://www.w3.org/2000/svg"
7861
+ xmlns: "http://www.w3.org/2000/svg",
7862
+ viewBox: "0 0 16 16"
7246
7863
  }, props), EyeFill_path || (EyeFill_path = /*#__PURE__*/external_react_.createElement("path", {
7247
- d: "M10.5 8a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0z",
7248
- 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"
7249
7866
  })), EyeFill_path2 || (EyeFill_path2 = /*#__PURE__*/external_react_.createElement("path", {
7250
- 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",
7251
- 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"
7252
7869
  })));
7253
7870
  };
7254
7871
  /* harmony default export */ const EyeFill = (SvgEyeFill);
@@ -7258,11 +7875,11 @@ function Flag_extends() { Flag_extends = Object.assign ? Object.assign.bind() :
7258
7875
 
7259
7876
  var SvgFlag = function SvgFlag(props) {
7260
7877
  return /*#__PURE__*/external_react_.createElement("svg", Flag_extends({
7261
- viewBox: "0 0 16 16",
7262
- xmlns: "http://www.w3.org/2000/svg"
7878
+ xmlns: "http://www.w3.org/2000/svg",
7879
+ viewBox: "0 0 16 16"
7263
7880
  }, props), Flag_path || (Flag_path = /*#__PURE__*/external_react_.createElement("path", {
7264
- 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",
7265
- 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"
7266
7883
  })));
7267
7884
  };
7268
7885
  /* harmony default export */ const Flag = (SvgFlag);
@@ -7272,8 +7889,8 @@ function FlagDe_extends() { FlagDe_extends = Object.assign ? Object.assign.bind(
7272
7889
 
7273
7890
  var SvgFlagDe = function SvgFlagDe(props) {
7274
7891
  return /*#__PURE__*/external_react_.createElement("svg", FlagDe_extends({
7275
- viewBox: "0 0 20 12",
7276
- xmlns: "http://www.w3.org/2000/svg"
7892
+ xmlns: "http://www.w3.org/2000/svg",
7893
+ viewBox: "0 0 20 12"
7277
7894
  }, props), FlagDe_path || (FlagDe_path = /*#__PURE__*/external_react_.createElement("path", {
7278
7895
  d: "M0 0h20v4H0z"
7279
7896
  })), FlagDe_path2 || (FlagDe_path2 = /*#__PURE__*/external_react_.createElement("path", {
@@ -7311,30 +7928,30 @@ var SvgFlagFa = function SvgFlagFa(props) {
7311
7928
  xmlns: "http://www.w3.org/2000/svg",
7312
7929
  viewBox: "0 0 630 360"
7313
7930
  }, props), /*#__PURE__*/external_react_.createElement("path", {
7931
+ d: "M0 0h630v360H0Z",
7314
7932
  style: {
7315
7933
  fill: "#da0000"
7316
- },
7317
- d: "M0 0h630v360H0Z"
7934
+ }
7318
7935
  }), /*#__PURE__*/external_react_.createElement("path", {
7936
+ d: "M0 0h630v240H0Z",
7319
7937
  style: {
7320
7938
  fill: "#fff"
7321
- },
7322
- d: "M0 0h630v240H0Z"
7939
+ }
7323
7940
  }), /*#__PURE__*/external_react_.createElement("path", {
7941
+ d: "M0 0h630v120H0Z",
7324
7942
  style: {
7325
7943
  fill: "#239f40"
7326
- },
7327
- d: "M0 0h630v120H0Z"
7944
+ }
7328
7945
  }), /*#__PURE__*/external_react_.createElement("g", {
7329
7946
  fill: "none",
7330
7947
  stroke: "#fff",
7331
7948
  strokeWidth: 2
7332
7949
  }, FlagFa_path || (FlagFa_path = /*#__PURE__*/external_react_.createElement("path", {
7333
- 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",
7334
- 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"
7335
7952
  })), FlagFa_path2 || (FlagFa_path2 = /*#__PURE__*/external_react_.createElement("path", {
7336
- d: "M8.4 120h25.2m2.8 0h25.2",
7337
- strokeWidth: 5.6
7953
+ strokeWidth: 5.6,
7954
+ d: "M8.4 120h25.2m2.8 0h25.2"
7338
7955
  })), /*#__PURE__*/external_react_.createElement("path", {
7339
7956
  d: "M0 139.6h25.2m2.8 0h25.2",
7340
7957
  style: {
@@ -7348,11 +7965,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7348
7965
  },
7349
7966
  transform: "translate(8.4 100.4)"
7350
7967
  }), FlagFa_path3 || (FlagFa_path3 = /*#__PURE__*/external_react_.createElement("path", {
7351
- 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",
7352
- 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"
7353
7970
  })), _path4 || (_path4 = /*#__PURE__*/external_react_.createElement("path", {
7354
- d: "M64.4 120h25.2m2.8 0h25.2",
7355
- strokeWidth: 5.6
7971
+ strokeWidth: 5.6,
7972
+ d: "M64.4 120h25.2m2.8 0h25.2"
7356
7973
  })), /*#__PURE__*/external_react_.createElement("path", {
7357
7974
  d: "M0 139.6h25.2m2.8 0h25.2",
7358
7975
  style: {
@@ -7366,11 +7983,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7366
7983
  },
7367
7984
  transform: "translate(64.4 100.4)"
7368
7985
  }), _path5 || (_path5 = /*#__PURE__*/external_react_.createElement("path", {
7369
- 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",
7370
- 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"
7371
7988
  })), _path6 || (_path6 = /*#__PURE__*/external_react_.createElement("path", {
7372
- d: "M120.4 120h25.2m2.8 0h25.2",
7373
- strokeWidth: 5.6
7989
+ strokeWidth: 5.6,
7990
+ d: "M120.4 120h25.2m2.8 0h25.2"
7374
7991
  })), /*#__PURE__*/external_react_.createElement("path", {
7375
7992
  d: "M0 139.6h25.2m2.8 0h25.2",
7376
7993
  style: {
@@ -7384,11 +8001,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7384
8001
  },
7385
8002
  transform: "translate(120.4 100.4)"
7386
8003
  }), _path7 || (_path7 = /*#__PURE__*/external_react_.createElement("path", {
7387
- 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",
7388
- 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"
7389
8006
  })), _path8 || (_path8 = /*#__PURE__*/external_react_.createElement("path", {
7390
- d: "M176.4 120h25.2m2.8 0h25.2",
7391
- strokeWidth: 5.6
8007
+ strokeWidth: 5.6,
8008
+ d: "M176.4 120h25.2m2.8 0h25.2"
7392
8009
  })), /*#__PURE__*/external_react_.createElement("path", {
7393
8010
  d: "M0 139.6h25.2m2.8 0h25.2",
7394
8011
  style: {
@@ -7402,11 +8019,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7402
8019
  },
7403
8020
  transform: "translate(176.4 100.4)"
7404
8021
  }), _path9 || (_path9 = /*#__PURE__*/external_react_.createElement("path", {
7405
- 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",
7406
- 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"
7407
8024
  })), _path10 || (_path10 = /*#__PURE__*/external_react_.createElement("path", {
7408
- d: "M232.4 120h25.2m2.8 0h25.2",
7409
- strokeWidth: 5.6
8025
+ strokeWidth: 5.6,
8026
+ d: "M232.4 120h25.2m2.8 0h25.2"
7410
8027
  })), /*#__PURE__*/external_react_.createElement("path", {
7411
8028
  d: "M0 139.6h25.2m2.8 0h25.2",
7412
8029
  style: {
@@ -7420,11 +8037,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7420
8037
  },
7421
8038
  transform: "translate(232.4 100.4)"
7422
8039
  }), _path11 || (_path11 = /*#__PURE__*/external_react_.createElement("path", {
7423
- 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",
7424
- 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"
7425
8042
  })), _path12 || (_path12 = /*#__PURE__*/external_react_.createElement("path", {
7426
- d: "M288.4 120h25.2m2.8 0h25.2",
7427
- strokeWidth: 5.6
8043
+ strokeWidth: 5.6,
8044
+ d: "M288.4 120h25.2m2.8 0h25.2"
7428
8045
  })), /*#__PURE__*/external_react_.createElement("path", {
7429
8046
  d: "M0 139.6h25.2m2.8 0h25.2",
7430
8047
  style: {
@@ -7438,11 +8055,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7438
8055
  },
7439
8056
  transform: "translate(288.4 100.4)"
7440
8057
  }), _path13 || (_path13 = /*#__PURE__*/external_react_.createElement("path", {
7441
- 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",
7442
- 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"
7443
8060
  })), _path14 || (_path14 = /*#__PURE__*/external_react_.createElement("path", {
7444
- d: "M344.4 120h25.2m2.8 0h25.2",
7445
- strokeWidth: 5.6
8061
+ strokeWidth: 5.6,
8062
+ d: "M344.4 120h25.2m2.8 0h25.2"
7446
8063
  })), /*#__PURE__*/external_react_.createElement("path", {
7447
8064
  d: "M0 139.6h25.2m2.8 0h25.2",
7448
8065
  style: {
@@ -7456,11 +8073,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7456
8073
  },
7457
8074
  transform: "translate(344.4 100.4)"
7458
8075
  }), _path15 || (_path15 = /*#__PURE__*/external_react_.createElement("path", {
7459
- 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",
7460
- 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"
7461
8078
  })), _path16 || (_path16 = /*#__PURE__*/external_react_.createElement("path", {
7462
- d: "M400.4 120h25.2m2.8 0h25.2",
7463
- strokeWidth: 5.6
8079
+ strokeWidth: 5.6,
8080
+ d: "M400.4 120h25.2m2.8 0h25.2"
7464
8081
  })), /*#__PURE__*/external_react_.createElement("path", {
7465
8082
  d: "M0 139.6h25.2m2.8 0h25.2",
7466
8083
  style: {
@@ -7474,11 +8091,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7474
8091
  },
7475
8092
  transform: "translate(400.4 100.4)"
7476
8093
  }), _path17 || (_path17 = /*#__PURE__*/external_react_.createElement("path", {
7477
- 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",
7478
- 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"
7479
8096
  })), _path18 || (_path18 = /*#__PURE__*/external_react_.createElement("path", {
7480
- d: "M456.4 120h25.2m2.8 0h25.2",
7481
- strokeWidth: 5.6
8097
+ strokeWidth: 5.6,
8098
+ d: "M456.4 120h25.2m2.8 0h25.2"
7482
8099
  })), /*#__PURE__*/external_react_.createElement("path", {
7483
8100
  d: "M0 139.6h25.2m2.8 0h25.2",
7484
8101
  style: {
@@ -7492,11 +8109,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7492
8109
  },
7493
8110
  transform: "translate(456.4 100.4)"
7494
8111
  }), _path19 || (_path19 = /*#__PURE__*/external_react_.createElement("path", {
7495
- 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",
7496
- 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"
7497
8114
  })), _path20 || (_path20 = /*#__PURE__*/external_react_.createElement("path", {
7498
- d: "M512.4 120h25.2m2.8 0h25.2",
7499
- strokeWidth: 5.6
8115
+ strokeWidth: 5.6,
8116
+ d: "M512.4 120h25.2m2.8 0h25.2"
7500
8117
  })), /*#__PURE__*/external_react_.createElement("path", {
7501
8118
  d: "M0 139.6h25.2m2.8 0h25.2",
7502
8119
  style: {
@@ -7510,11 +8127,11 @@ var SvgFlagFa = function SvgFlagFa(props) {
7510
8127
  },
7511
8128
  transform: "translate(512.4 100.4)"
7512
8129
  }), _path21 || (_path21 = /*#__PURE__*/external_react_.createElement("path", {
7513
- 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",
7514
- 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"
7515
8132
  })), _path22 || (_path22 = /*#__PURE__*/external_react_.createElement("path", {
7516
- d: "M568.4 120h25.2m2.8 0h25.2",
7517
- strokeWidth: 5.6
8133
+ strokeWidth: 5.6,
8134
+ d: "M568.4 120h25.2m2.8 0h25.2"
7518
8135
  })), /*#__PURE__*/external_react_.createElement("path", {
7519
8136
  d: "M0 139.6h25.2m2.8 0h25.2",
7520
8137
  style: {
@@ -7546,11 +8163,11 @@ function FlagFill_extends() { FlagFill_extends = Object.assign ? Object.assign.b
7546
8163
 
7547
8164
  var SvgFlagFill = function SvgFlagFill(props) {
7548
8165
  return /*#__PURE__*/external_react_.createElement("svg", FlagFill_extends({
7549
- viewBox: "0 0 16 16",
7550
- xmlns: "http://www.w3.org/2000/svg"
8166
+ xmlns: "http://www.w3.org/2000/svg",
8167
+ viewBox: "0 0 16 16"
7551
8168
  }, props), FlagFill_path || (FlagFill_path = /*#__PURE__*/external_react_.createElement("path", {
7552
- 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",
7553
- 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"
7554
8171
  })));
7555
8172
  };
7556
8173
  /* harmony default export */ const FlagFill = (SvgFlagFill);
@@ -7560,8 +8177,8 @@ function FlagFr_extends() { FlagFr_extends = Object.assign ? Object.assign.bind(
7560
8177
 
7561
8178
  var SvgFlagFr = function SvgFlagFr(props) {
7562
8179
  return /*#__PURE__*/external_react_.createElement("svg", FlagFr_extends({
7563
- viewBox: "0 0 24 15",
7564
- xmlns: "http://www.w3.org/2000/svg"
8180
+ xmlns: "http://www.w3.org/2000/svg",
8181
+ viewBox: "0 0 24 15"
7565
8182
  }, props), FlagFr_path || (FlagFr_path = /*#__PURE__*/external_react_.createElement("path", {
7566
8183
  fill: "#002395",
7567
8184
  d: "M0 0h8v15H0z"
@@ -7580,27 +8197,27 @@ function FlagGb_extends() { FlagGb_extends = Object.assign ? Object.assign.bind(
7580
8197
 
7581
8198
  var SvgFlagGb = function SvgFlagGb(props) {
7582
8199
  return /*#__PURE__*/external_react_.createElement("svg", FlagGb_extends({
7583
- viewBox: "0 0 60 30",
7584
- xmlns: "http://www.w3.org/2000/svg"
8200
+ xmlns: "http://www.w3.org/2000/svg",
8201
+ viewBox: "0 0 60 30"
7585
8202
  }, props), FlagGb_path || (FlagGb_path = /*#__PURE__*/external_react_.createElement("path", {
7586
- d: "M0 0v30h60V0z",
7587
- fill: "#00247d"
8203
+ fill: "#00247d",
8204
+ d: "M0 0v30h60V0z"
7588
8205
  })), FlagGb_path2 || (FlagGb_path2 = /*#__PURE__*/external_react_.createElement("path", {
7589
- d: "m0 0 60 30m0-30L0 30",
7590
8206
  stroke: "#fff",
7591
- strokeWidth: 6
8207
+ strokeWidth: 6,
8208
+ d: "m0 0 60 30m0-30L0 30"
7592
8209
  })), FlagGb_path3 || (FlagGb_path3 = /*#__PURE__*/external_react_.createElement("path", {
7593
- d: "m0 0 60 30m0-30L0 30",
7594
8210
  stroke: "#cf142b",
7595
- strokeWidth: 4
8211
+ strokeWidth: 4,
8212
+ d: "m0 0 60 30m0-30L0 30"
7596
8213
  })), FlagGb_path4 || (FlagGb_path4 = /*#__PURE__*/external_react_.createElement("path", {
7597
- d: "M30 0v30M0 15h60",
7598
8214
  stroke: "#fff",
7599
- strokeWidth: 10
8215
+ strokeWidth: 10,
8216
+ d: "M30 0v30M0 15h60"
7600
8217
  })), FlagGb_path5 || (FlagGb_path5 = /*#__PURE__*/external_react_.createElement("path", {
7601
- d: "M30 0v30M0 15h60",
7602
8218
  stroke: "#cf142b",
7603
- strokeWidth: 6
8219
+ strokeWidth: 6,
8220
+ d: "M30 0v30M0 15h60"
7604
8221
  })));
7605
8222
  };
7606
8223
  /* harmony default export */ const FlagGb = (SvgFlagGb);
@@ -7610,8 +8227,8 @@ function FlagPl_extends() { FlagPl_extends = Object.assign ? Object.assign.bind(
7610
8227
 
7611
8228
  var SvgFlagPl = function SvgFlagPl(props) {
7612
8229
  return /*#__PURE__*/external_react_.createElement("svg", FlagPl_extends({
7613
- viewBox: "0 0 16 10",
7614
- xmlns: "http://www.w3.org/2000/svg"
8230
+ xmlns: "http://www.w3.org/2000/svg",
8231
+ viewBox: "0 0 16 10"
7615
8232
  }, props), FlagPl_path || (FlagPl_path = /*#__PURE__*/external_react_.createElement("path", {
7616
8233
  fill: "#fff",
7617
8234
  d: "M0 0h16v10H0z"
@@ -7627,15 +8244,15 @@ function FlagUs_extends() { FlagUs_extends = Object.assign ? Object.assign.bind(
7627
8244
 
7628
8245
  var SvgFlagUs = function SvgFlagUs(props) {
7629
8246
  return /*#__PURE__*/external_react_.createElement("svg", FlagUs_extends({
7630
- viewBox: "0 0 7410 3900",
7631
- xmlns: "http://www.w3.org/2000/svg"
8247
+ xmlns: "http://www.w3.org/2000/svg",
8248
+ viewBox: "0 0 7410 3900"
7632
8249
  }, props), FlagUs_path || (FlagUs_path = /*#__PURE__*/external_react_.createElement("path", {
7633
8250
  fill: "#b22234",
7634
8251
  d: "M0 0h7410v3900H0z"
7635
8252
  })), FlagUs_path2 || (FlagUs_path2 = /*#__PURE__*/external_react_.createElement("path", {
7636
- d: "M0 450h7410m0 600H0m0 600h7410m0 600H0m0 600h7410m0 600H0",
7637
8253
  stroke: "#fff",
7638
- strokeWidth: 300
8254
+ strokeWidth: 300,
8255
+ d: "M0 450h7410m0 600H0m0 600h7410m0 600H0m0 600h7410m0 600H0"
7639
8256
  })), FlagUs_path3 || (FlagUs_path3 = /*#__PURE__*/external_react_.createElement("path", {
7640
8257
  fill: "#3c3b6e",
7641
8258
  d: "M0 0h2964v2100H0z"
@@ -7653,52 +8270,52 @@ var SvgFlagUs = function SvgFlagUs(props) {
7653
8270
  id: "FlagUs_svg__a",
7654
8271
  d: "m247 90 70.534 217.082-184.66-134.164h228.253L176.466 307.082z"
7655
8272
  }), /*#__PURE__*/external_react_.createElement("use", {
7656
- href: "#FlagUs_svg__a",
7657
- y: 420
8273
+ y: 420,
8274
+ href: "#FlagUs_svg__a"
7658
8275
  }), /*#__PURE__*/external_react_.createElement("use", {
7659
- href: "#FlagUs_svg__a",
7660
- y: 840
8276
+ y: 840,
8277
+ href: "#FlagUs_svg__a"
7661
8278
  }), /*#__PURE__*/external_react_.createElement("use", {
7662
- href: "#FlagUs_svg__a",
7663
- y: 1260
8279
+ y: 1260,
8280
+ href: "#FlagUs_svg__a"
7664
8281
  })), /*#__PURE__*/external_react_.createElement("use", {
7665
- href: "#FlagUs_svg__a",
7666
- y: 1680
8282
+ y: 1680,
8283
+ href: "#FlagUs_svg__a"
7667
8284
  })), /*#__PURE__*/external_react_.createElement("use", {
7668
- href: "#FlagUs_svg__b",
7669
8285
  x: 247,
7670
- y: 210
8286
+ y: 210,
8287
+ href: "#FlagUs_svg__b"
7671
8288
  })), /*#__PURE__*/external_react_.createElement("use", {
7672
- href: "#FlagUs_svg__c",
7673
- x: 494
8289
+ x: 494,
8290
+ href: "#FlagUs_svg__c"
7674
8291
  })), /*#__PURE__*/external_react_.createElement("use", {
7675
- href: "#FlagUs_svg__d",
7676
- x: 988
8292
+ x: 988,
8293
+ href: "#FlagUs_svg__d"
7677
8294
  }), /*#__PURE__*/external_react_.createElement("use", {
7678
- href: "#FlagUs_svg__c",
7679
- x: 1976
8295
+ x: 1976,
8296
+ href: "#FlagUs_svg__c"
7680
8297
  }), /*#__PURE__*/external_react_.createElement("use", {
7681
- href: "#FlagUs_svg__e",
7682
- x: 2470
8298
+ x: 2470,
8299
+ href: "#FlagUs_svg__e"
7683
8300
  }))), FlagUs_path4 || (FlagUs_path4 = /*#__PURE__*/external_react_.createElement("path", {
7684
- d: "M0 0v30h60V0z",
7685
- fill: "#00247d"
8301
+ fill: "#00247d",
8302
+ d: "M0 0v30h60V0z"
7686
8303
  })), FlagUs_path5 || (FlagUs_path5 = /*#__PURE__*/external_react_.createElement("path", {
7687
- d: "m0 0 60 30m0-30L0 30",
7688
8304
  stroke: "#fff",
7689
- strokeWidth: 6
8305
+ strokeWidth: 6,
8306
+ d: "m0 0 60 30m0-30L0 30"
7690
8307
  })), FlagUs_path6 || (FlagUs_path6 = /*#__PURE__*/external_react_.createElement("path", {
7691
- d: "m0 0 60 30m0-30L0 30",
7692
8308
  stroke: "#cf142b",
7693
- strokeWidth: 4
8309
+ strokeWidth: 4,
8310
+ d: "m0 0 60 30m0-30L0 30"
7694
8311
  })), FlagUs_path7 || (FlagUs_path7 = /*#__PURE__*/external_react_.createElement("path", {
7695
- d: "M30 0v30M0 15h60",
7696
8312
  stroke: "#fff",
7697
- strokeWidth: 10
8313
+ strokeWidth: 10,
8314
+ d: "M30 0v30M0 15h60"
7698
8315
  })), FlagUs_path8 || (FlagUs_path8 = /*#__PURE__*/external_react_.createElement("path", {
7699
- d: "M30 0v30M0 15h60",
7700
8316
  stroke: "#cf142b",
7701
- strokeWidth: 6
8317
+ strokeWidth: 6,
8318
+ d: "M30 0v30M0 15h60"
7702
8319
  })));
7703
8320
  };
7704
8321
  /* harmony default export */ const FlagUs = (SvgFlagUs);
@@ -7708,11 +8325,11 @@ function Github_extends() { Github_extends = Object.assign ? Object.assign.bind(
7708
8325
 
7709
8326
  var SvgGithub = function SvgGithub(props) {
7710
8327
  return /*#__PURE__*/external_react_.createElement("svg", Github_extends({
7711
- viewBox: "0 0 16 16",
7712
- xmlns: "http://www.w3.org/2000/svg"
8328
+ xmlns: "http://www.w3.org/2000/svg",
8329
+ viewBox: "0 0 16 16"
7713
8330
  }, props), Github_path || (Github_path = /*#__PURE__*/external_react_.createElement("path", {
7714
- 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",
7715
- 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"
7716
8333
  })));
7717
8334
  };
7718
8335
  /* harmony default export */ const Github = (SvgGithub);
@@ -7722,39 +8339,55 @@ function InfoCircleFill_extends() { InfoCircleFill_extends = Object.assign ? Obj
7722
8339
 
7723
8340
  var SvgInfoCircleFill = function SvgInfoCircleFill(props) {
7724
8341
  return /*#__PURE__*/external_react_.createElement("svg", InfoCircleFill_extends({
7725
- viewBox: "0 0 16 16",
7726
- xmlns: "http://www.w3.org/2000/svg"
8342
+ xmlns: "http://www.w3.org/2000/svg",
8343
+ viewBox: "0 0 16 16"
7727
8344
  }, props), InfoCircleFill_path || (InfoCircleFill_path = /*#__PURE__*/external_react_.createElement("path", {
7728
- 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",
7729
- 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"
7730
8347
  })));
7731
8348
  };
7732
8349
  /* harmony default export */ const InfoCircleFill = (SvgInfoCircleFill);
7733
8350
  ;// CONCATENATED MODULE: ./src/icons/Keyboard.svg
7734
- var Keyboard_path;
8351
+ var Keyboard_path, Keyboard_path2;
7735
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); }
7736
8353
 
7737
8354
  var SvgKeyboard = function SvgKeyboard(props) {
7738
8355
  return /*#__PURE__*/external_react_.createElement("svg", Keyboard_extends({
7739
- viewBox: "0 0 16 16",
7740
- xmlns: "http://www.w3.org/2000/svg"
8356
+ xmlns: "http://www.w3.org/2000/svg",
8357
+ fill: "currentColor",
8358
+ viewBox: "0 0 16 16"
7741
8359
  }, props), Keyboard_path || (Keyboard_path = /*#__PURE__*/external_react_.createElement("path", {
7742
- 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",
7743
- 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"
7744
8363
  })));
7745
8364
  };
7746
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);
7747
8380
  ;// CONCATENATED MODULE: ./src/icons/List.svg
7748
8381
  var List_path;
7749
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); }
7750
8383
 
7751
8384
  var SvgList = function SvgList(props) {
7752
8385
  return /*#__PURE__*/external_react_.createElement("svg", List_extends({
7753
- viewBox: "0 0 16 16",
7754
- xmlns: "http://www.w3.org/2000/svg"
8386
+ xmlns: "http://www.w3.org/2000/svg",
8387
+ viewBox: "0 0 16 16"
7755
8388
  }, props), List_path || (List_path = /*#__PURE__*/external_react_.createElement("path", {
7756
- 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",
7757
- 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"
7758
8391
  })));
7759
8392
  };
7760
8393
  /* harmony default export */ const List = (SvgList);
@@ -7764,11 +8397,11 @@ function Sack_extends() { Sack_extends = Object.assign ? Object.assign.bind() :
7764
8397
 
7765
8398
  var SvgSack = function SvgSack(props) {
7766
8399
  return /*#__PURE__*/external_react_.createElement("svg", Sack_extends({
7767
- viewBox: "0 0 24 24",
7768
- xmlns: "http://www.w3.org/2000/svg"
8400
+ xmlns: "http://www.w3.org/2000/svg",
8401
+ viewBox: "0 0 24 24"
7769
8402
  }, props), Sack_path || (Sack_path = /*#__PURE__*/external_react_.createElement("path", {
7770
- 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",
7771
- 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"
7772
8405
  })));
7773
8406
  };
7774
8407
  /* harmony default export */ const Sack = (SvgSack);
@@ -7778,11 +8411,11 @@ function Search_extends() { Search_extends = Object.assign ? Object.assign.bind(
7778
8411
 
7779
8412
  var SvgSearch = function SvgSearch(props) {
7780
8413
  return /*#__PURE__*/external_react_.createElement("svg", Search_extends({
7781
- viewBox: "0 0 16 16",
7782
- xmlns: "http://www.w3.org/2000/svg"
8414
+ xmlns: "http://www.w3.org/2000/svg",
8415
+ viewBox: "0 0 16 16"
7783
8416
  }, props), Search_path || (Search_path = /*#__PURE__*/external_react_.createElement("path", {
7784
- 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",
7785
- 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"
7786
8419
  })));
7787
8420
  };
7788
8421
  /* harmony default export */ const Search = (SvgSearch);
@@ -7792,11 +8425,11 @@ function SortDown_extends() { SortDown_extends = Object.assign ? Object.assign.b
7792
8425
 
7793
8426
  var SvgSortDown = function SvgSortDown(props) {
7794
8427
  return /*#__PURE__*/external_react_.createElement("svg", SortDown_extends({
7795
- viewBox: "0 0 16 16",
7796
- xmlns: "http://www.w3.org/2000/svg"
8428
+ xmlns: "http://www.w3.org/2000/svg",
8429
+ viewBox: "0 0 16 16"
7797
8430
  }, props), SortDown_path || (SortDown_path = /*#__PURE__*/external_react_.createElement("path", {
7798
- 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",
7799
- 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"
7800
8433
  })));
7801
8434
  };
7802
8435
  /* harmony default export */ const SortDown = (SvgSortDown);
@@ -7806,11 +8439,11 @@ function SortUp_extends() { SortUp_extends = Object.assign ? Object.assign.bind(
7806
8439
 
7807
8440
  var SvgSortUp = function SvgSortUp(props) {
7808
8441
  return /*#__PURE__*/external_react_.createElement("svg", SortUp_extends({
7809
- viewBox: "0 0 16 16",
7810
- xmlns: "http://www.w3.org/2000/svg"
8442
+ xmlns: "http://www.w3.org/2000/svg",
8443
+ viewBox: "0 0 16 16"
7811
8444
  }, props), SortUp_path || (SortUp_path = /*#__PURE__*/external_react_.createElement("path", {
7812
- 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",
7813
- 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"
7814
8447
  })));
7815
8448
  };
7816
8449
  /* harmony default export */ const SortUp = (SvgSortUp);
@@ -7820,11 +8453,11 @@ function Square_extends() { Square_extends = Object.assign ? Object.assign.bind(
7820
8453
 
7821
8454
  var SvgSquare = function SvgSquare(props) {
7822
8455
  return /*#__PURE__*/external_react_.createElement("svg", Square_extends({
7823
- viewBox: "0 0 16 16",
7824
- xmlns: "http://www.w3.org/2000/svg"
8456
+ xmlns: "http://www.w3.org/2000/svg",
8457
+ viewBox: "0 0 16 16"
7825
8458
  }, props), Square_path || (Square_path = /*#__PURE__*/external_react_.createElement("path", {
7826
- 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",
7827
- 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"
7828
8461
  })));
7829
8462
  };
7830
8463
  /* harmony default export */ const Square = (SvgSquare);
@@ -7834,11 +8467,11 @@ function SquareFill_extends() { SquareFill_extends = Object.assign ? Object.assi
7834
8467
 
7835
8468
  var SvgSquareFill = function SvgSquareFill(props) {
7836
8469
  return /*#__PURE__*/external_react_.createElement("svg", SquareFill_extends({
7837
- viewBox: "0 0 16 16",
7838
- xmlns: "http://www.w3.org/2000/svg"
8470
+ xmlns: "http://www.w3.org/2000/svg",
8471
+ viewBox: "0 0 16 16"
7839
8472
  }, props), SquareFill_path || (SquareFill_path = /*#__PURE__*/external_react_.createElement("path", {
7840
- 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",
7841
- 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"
7842
8475
  })));
7843
8476
  };
7844
8477
  /* harmony default export */ const SquareFill = (SvgSquareFill);
@@ -7848,11 +8481,11 @@ function Star_extends() { Star_extends = Object.assign ? Object.assign.bind() :
7848
8481
 
7849
8482
  var SvgStar = function SvgStar(props) {
7850
8483
  return /*#__PURE__*/external_react_.createElement("svg", Star_extends({
7851
- viewBox: "0 0 16 16",
7852
- xmlns: "http://www.w3.org/2000/svg"
8484
+ xmlns: "http://www.w3.org/2000/svg",
8485
+ viewBox: "0 0 16 16"
7853
8486
  }, props), Star_path || (Star_path = /*#__PURE__*/external_react_.createElement("path", {
7854
- 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",
7855
- 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"
7856
8489
  })));
7857
8490
  };
7858
8491
  /* harmony default export */ const Star = (SvgStar);
@@ -7898,11 +8531,12 @@ var SvgStar = function SvgStar(props) {
7898
8531
 
7899
8532
 
7900
8533
 
8534
+
7901
8535
 
7902
8536
 
7903
8537
  /***/ }),
7904
8538
 
7905
- /***/ 20208:
8539
+ /***/ 18954:
7906
8540
  /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
7907
8541
 
7908
8542
  "use strict";
@@ -7918,6 +8552,7 @@ __webpack_require__.d(__webpack_exports__, {
7918
8552
  "GF": () => (/* reexport */ lib_createRegExp),
7919
8553
  "kD": () => (/* reexport */ lib_dataUrlToBlob),
7920
8554
  "nK": () => (/* reexport */ lib_extractCharacters),
8555
+ "p$": () => (/* reexport */ lib_extractCharactersByCase),
7921
8556
  "WM": () => (/* reexport */ lib_extractInputValue),
7922
8557
  "Jp": () => (/* reexport */ lib_findCell),
7923
8558
  "ZM": () => (/* reexport */ lib_getRemainingTiles),
@@ -7936,7 +8571,7 @@ __webpack_require__.d(__webpack_exports__, {
7936
8571
  "gV": () => (/* reexport */ lib_zipCharactersAndTiles)
7937
8572
  });
7938
8573
 
7939
- // 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
7940
8575
 
7941
8576
  ;// CONCATENATED MODULE: ./src/lib/arrayEquals.ts
7942
8577
  const arrayEquals = (array1, array2)=>{
@@ -8068,23 +8703,58 @@ var constants_build = __webpack_require__(7618);
8068
8703
  ;// CONCATENATED MODULE: ./src/lib/extractCharacters.ts
8069
8704
 
8070
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)=>{
8071
8737
  let index = 0;
8072
8738
  const characters = [];
8073
8739
  while(index < value.length){
8074
8740
  const character = value[index];
8741
+ const characterLowercase = value[index].toLocaleLowerCase(config.locale);
8075
8742
  const nextCharacter = value[index + 1];
8076
- const twoCharacterTileCandidate = `${character}${nextCharacter}`;
8077
- if (config.twoCharacterTiles.includes(twoCharacterTileCandidate)) {
8078
- 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 {
8079
8752
  ++index;
8080
- } else if (config.hasCharacter(character) || character === constants_build.BLANK) {
8081
- characters.push(character);
8082
8753
  }
8083
- ++index;
8084
8754
  }
8085
8755
  return characters;
8086
8756
  };
8087
- /* harmony default export */ const lib_extractCharacters = (extractCharacters);
8757
+ /* harmony default export */ const lib_extractCharactersByCase = (extractCharactersByCase);
8088
8758
 
8089
8759
  ;// CONCATENATED MODULE: ./src/lib/extractInputValue.ts
8090
8760
  const extractInputValue = (input)=>{
@@ -8515,6 +9185,8 @@ const zipCharactersAndTiles = (characters, tiles)=>{
8515
9185
 
8516
9186
 
8517
9187
 
9188
+
9189
+
8518
9190
 
8519
9191
 
8520
9192
 
@@ -8737,6 +9409,7 @@ __webpack_require__.a(module, async (__webpack_handle_async_dependencies__, __we
8737
9409
  /* harmony export */ "R": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.R),
8738
9410
  /* harmony export */ "Rn": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Rn),
8739
9411
  /* harmony export */ "TP": () => (/* reexport safe */ _slices__WEBPACK_IMPORTED_MODULE_3__.TP),
9412
+ /* harmony export */ "Ub": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Ub),
8740
9413
  /* harmony export */ "Xb": () => (/* reexport safe */ _localStorage__WEBPACK_IMPORTED_MODULE_1__.Z),
8741
9414
  /* harmony export */ "Xk": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Xk),
8742
9415
  /* harmony export */ "Yj": () => (/* reexport safe */ _selectors__WEBPACK_IMPORTED_MODULE_2__.Yj),
@@ -8803,6 +9476,7 @@ __webpack_async_result__();
8803
9476
  const AUTO_GROUP_TILES = "auto-group-tiles";
8804
9477
  const BOARD = "board";
8805
9478
  const CONFIG_ID = "config-id";
9479
+ const INPUT_MODE = "input-mode";
8806
9480
  const LOCALE = "locale";
8807
9481
  const RACK = "rack";
8808
9482
  const store = store2__WEBPACK_IMPORTED_MODULE_1___default().namespace("scrabble-solver");
@@ -8827,6 +9501,12 @@ const localStorage = {
8827
9501
  setConfigId (configId) {
8828
9502
  store.set(CONFIG_ID, configId, true);
8829
9503
  },
9504
+ getInputMode () {
9505
+ return store.get(INPUT_MODE);
9506
+ },
9507
+ setInputMode (inputMode) {
9508
+ store.set(INPUT_MODE, inputMode, true);
9509
+ },
8830
9510
  getLocale () {
8831
9511
  return store.get(LOCALE);
8832
9512
  },
@@ -8859,8 +9539,8 @@ __webpack_require__.d(__webpack_exports__, {
8859
9539
  var effects_ = __webpack_require__(56477);
8860
9540
  // EXTERNAL MODULE: ./src/i18n/index.ts + 8 modules
8861
9541
  var i18n = __webpack_require__(36743);
8862
- // EXTERNAL MODULE: ./src/lib/index.ts + 34 modules
8863
- var lib = __webpack_require__(20208);
9542
+ // EXTERNAL MODULE: ./src/lib/index.ts + 36 modules
9543
+ var lib = __webpack_require__(18954);
8864
9544
  // EXTERNAL MODULE: ../types/build/index.js
8865
9545
  var build = __webpack_require__(34046);
8866
9546
  ;// CONCATENATED MODULE: ./src/sdk/fetch.ts
@@ -9157,6 +9837,7 @@ function* ensureProperTilesCount() {
9157
9837
  /* harmony export */ "QL": () => (/* binding */ selectResultsQuery),
9158
9838
  /* harmony export */ "R": () => (/* binding */ selectResultsSort),
9159
9839
  /* harmony export */ "Rn": () => (/* binding */ selectSolveError),
9840
+ /* harmony export */ "Ub": () => (/* binding */ selectInputMode),
9160
9841
  /* harmony export */ "Xk": () => (/* binding */ selectResultCandidate),
9161
9842
  /* harmony export */ "Yj": () => (/* binding */ selectRemainingTilesGroups),
9162
9843
  /* harmony export */ "ZA": () => (/* binding */ selectRowsWithCandidate),
@@ -9187,7 +9868,7 @@ function* ensureProperTilesCount() {
9187
9868
  /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(34046);
9188
9869
  /* harmony import */ var _scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_scrabble_solver_types__WEBPACK_IMPORTED_MODULE_3__);
9189
9870
  /* harmony import */ var i18n__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(36743);
9190
- /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(20208);
9871
+ /* harmony import */ var lib__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(18954);
9191
9872
  /* eslint-disable max-lines */
9192
9873
 
9193
9874
 
@@ -9229,6 +9910,9 @@ const selectLocaleAutoGroupTiles = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_
9229
9910
  return settings.autoGroupTiles === "left" ? "right" : "left";
9230
9911
  });
9231
9912
  const selectBoard = selectBoardRoot;
9913
+ const selectInputMode = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
9914
+ selectSettingsRoot
9915
+ ], (settings)=>settings.inputMode);
9232
9916
  const selectConfigId = (0,_reduxjs_toolkit__WEBPACK_IMPORTED_MODULE_0__.createSelector)([
9233
9917
  selectSettingsRoot
9234
9918
  ], (settings)=>settings.configId);
@@ -9431,16 +10115,18 @@ var build = __webpack_require__(89418);
9431
10115
  var types_build = __webpack_require__(34046);
9432
10116
  // EXTERNAL MODULE: ./src/state/localStorage.ts
9433
10117
  var localStorage = __webpack_require__(79579);
9434
- // EXTERNAL MODULE: ./src/lib/index.ts + 34 modules
9435
- var lib = __webpack_require__(20208);
10118
+ // EXTERNAL MODULE: ./src/lib/index.ts + 36 modules
10119
+ var lib = __webpack_require__(18954);
9436
10120
  ;// CONCATENATED MODULE: ./src/state/slices/settingsInitialState.ts
9437
10121
 
9438
10122
 
9439
10123
 
9440
10124
  const localStorageAutoGroupTiles = localStorage/* default.getAutoGroupTiles */.Z.getAutoGroupTiles();
10125
+ const isTouchScreen = typeof globalThis.matchMedia !== "undefined" && globalThis.matchMedia("(hover: none)").matches;
9441
10126
  const settingsInitialState = {
9442
10127
  autoGroupTiles: typeof localStorageAutoGroupTiles === "undefined" ? "left" : localStorageAutoGroupTiles,
9443
10128
  configId: localStorage/* default.getConfigId */.Z.getConfigId() || build.scrabble.id,
10129
+ inputMode: localStorage/* default.getInputMode */.Z.getInputMode() || (isTouchScreen ? "touchscreen" : "keyboard"),
9444
10130
  locale: localStorage/* default.getLocale */.Z.getLocale() || (0,lib/* guessLocale */.sf)()
9445
10131
  };
9446
10132
  /* harmony default export */ const slices_settingsInitialState = (settingsInitialState);
@@ -9789,6 +10475,13 @@ const settingsSlice = (0,toolkit_.createSlice)({
9789
10475
  configId
9790
10476
  };
9791
10477
  },
10478
+ changeInputMode: (state, action)=>{
10479
+ const inputMode = action.payload;
10480
+ return {
10481
+ ...state,
10482
+ inputMode
10483
+ };
10484
+ },
9792
10485
  changeLocale: (state, action)=>{
9793
10486
  const locale = action.payload;
9794
10487
  return {
@@ -10395,6 +11088,9 @@ class Config {
10395
11088
  get boardWidth() {
10396
11089
  return this.config.boardWidth;
10397
11090
  }
11091
+ get locale() {
11092
+ return this.config.locale;
11093
+ }
10398
11094
  get twoCharacterTiles() {
10399
11095
  return this.config.tiles.filter((tile) => tile.character.length === 2).map((tile) => tile.character);
10400
11096
  }